无纸化归档系统功能修改

master
xuhaoxiang 4 years ago
parent d14a21908d
commit adcb077b75

@ -8,6 +8,7 @@ package com.emr.controller;
import com.emr.entity.*;
import com.emr.service.*;
import com.emr.util.IDHelper;
import com.emr.util.ThreadExcelUtils;
import org.apache.cxf.endpoint.Client;
import org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory;
@ -43,6 +44,9 @@ public class beHospitaledController {
@Autowired
private Emr_Staff_RemarkService emrStaffRemarkService;
@Autowired
private Sign_ListService signListService;
@Autowired(required = false)
private Archive_Master_FollowingService archive_master_followingService;
@ -51,6 +55,12 @@ public class beHospitaledController {
@Value("${HomepageMethod}")
private String HomepageMethod;
@Value("${powerTokenUrl}")
private String powerTokenUrl;
@Autowired
private com.emr.webservice.MedicalRecordSSO.HomepageDictionary homepageDictionary;
@RequestMapping(value = "/beHosps")
public String inHospitals(Model model) {
//return "beHospitaledDir/beHospListNow";
@ -119,68 +129,83 @@ public class beHospitaledController {
SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String nowTime = format1.format(new Date());
String result = "";
try {
String endpoint = HomepageDictionary;
//String endpoint = "http://localhost:8080/ca3/services/caSynrochnized?wsdl";
String method = HomepageMethod;
JaxWsDynamicClientFactory factory = JaxWsDynamicClientFactory.newInstance();
Client client = factory.createClient(endpoint);
String temp = emrFaultDetail.getArchiveDetailId();
Object[] res = null;
res = client.invoke(method, temp);
result = (String) res[0];
//给方法传递参数,并且调用方法
//System.out.println("result is " + result);
} catch (Exception e) {
System.err.println(e.toString());
return "连接不到完整性接口!";
Emr_Fault_Detail entityFault=new Emr_Fault_Detail();
entityFault.setArchiveDetailId(emrFaultDetail.getArchiveDetailId());
List<Emr_Fault_Detail> faultList=emrFaultDetailService.selectByArchiveId(entityFault);
int flagNum=0;
if(faultList!=null && faultList.size()>0){
//获取未处理缺陷数量
for (int k = 0; k < faultList.size(); k++) {
if ("1".equals(faultList.get(k).getBackFlag()) || "5".equals(faultList.get(k).getBackFlag())) {
flagNum+=1;
}
}
}
if(result.equals("完整")) {
//修改病案归档状态
Archive_Master archiveMaster = new Archive_Master();
archiveMaster.setId(emrFaultDetail.getArchiveDetailId());
archiveMaster.setArchivestate(emrFaultDetail.getState());
archiveMaster.setLockinfo(result);
archiveMaster.setCmtDoctor(1);
archiveMaster.setCmtNurse(1);
int bol = archiveMasterService.updateByClo(archiveMaster);
//添加初审内容
if (bol == 1) {
//参数输入
archiveMaster.setFirstInstance(username);
if(flagNum==0) {
try {
String endpoint = HomepageDictionary;
//String endpoint = "http://localhost:8080/ca3/services/caSynrochnized?wsdl";
String method = HomepageMethod;
JaxWsDynamicClientFactory factory = JaxWsDynamicClientFactory.newInstance();
Client client = factory.createClient(endpoint);
String temp = emrFaultDetail.getArchiveDetailId();
Object[] res = null;
res = client.invoke(method, temp);
result = (String) res[0];
//给方法传递参数,并且调用方法
//System.out.println("result is " + result);
} catch (Exception e) {
System.err.println(e.toString());
return "连接不到完整性接口!";
}
if (result.equals("完整")) {
//修改病案归档状态
Archive_Master archiveMaster = new Archive_Master();
archiveMaster.setId(emrFaultDetail.getArchiveDetailId());
archiveMaster.setArchivestate(emrFaultDetail.getState());
archiveMaster.setLockinfo(result);
archiveMaster.setCmtDoctor(1);
archiveMaster.setCmtNurse(1);
int bol = archiveMasterService.updateByClo(archiveMaster);
//添加初审内容
if (bol == 1) {
//参数输入
archiveMaster.setFirstInstance(username);
emrFaultDetail.setCreater(username);
emrFaultDetail.setCreateTime(nowTime);
emrFaultDetail.setState("未召回");
bol = emrFaultDetailService.insertSel(emrFaultDetail);
//初审成功日志
Power_User user = (Power_User) request.getSession().getAttribute("CURRENT_USER");
String handleName = user.getUserPosition();//姓名
Archive_Master_Following archive_master_following = new Archive_Master_Following();
archive_master_following.setMasterId(emrFaultDetail.getArchiveDetailId());
//following表中添加科主任审核操作记录
archive_master_following.setFollowingType("5");
archive_master_following.setFollowingContent("科主任审核");
archive_master_following.setHandleTime(nowTime);
archive_master_following.setHandleId(username);
archive_master_following.setHandleName(handleName);
archive_master_followingService.insertSelective(archive_master_following);
}
} else {
//修改病案归档完整内容Lockinfo
Archive_Master archiveMaster = new Archive_Master();
emrFaultDetail.setCreater(username);
emrFaultDetail.setCreateTime(nowTime);
emrFaultDetail.setState("未召回");
bol = emrFaultDetailService.insertSel(emrFaultDetail);
//初审成功日志
Power_User user = (Power_User) request.getSession().getAttribute("CURRENT_USER");
String handleName = user.getUserPosition();//姓名
Archive_Master_Following archive_master_following = new Archive_Master_Following();
archive_master_following.setMasterId(emrFaultDetail.getArchiveDetailId());
//following表中添加科主任审核操作记录
archive_master_following.setFollowingType("5");
archive_master_following.setFollowingContent("科主任审核");
archive_master_following.setHandleTime(nowTime);
archive_master_following.setHandleId(username);
archive_master_following.setHandleName(handleName);
archive_master_followingService.insertSelective(archive_master_following);
archiveMaster.setFirstInstance(username);
//archiveMaster.setArchivestate(emrFaultDetail.getState());
archiveMaster.setId(emrFaultDetail.getArchiveDetailId());
archiveMaster.setLockinfo("强制提交," + result);
archiveMaster.setCmtDoctor(1);
archiveMaster.setCmtNurse(1);
archiveMasterService.updateByClo(archiveMaster);
}
}else{
//修改病案归档完整内容Lockinfo
Archive_Master archiveMaster = new Archive_Master();
emrFaultDetail.setCreater(username);
emrFaultDetail.setCreateTime(nowTime);
archiveMaster.setFirstInstance(username);
//archiveMaster.setArchivestate(emrFaultDetail.getState());
archiveMaster.setId(emrFaultDetail.getArchiveDetailId());
archiveMaster.setLockinfo("强制提交,"+result);
archiveMaster.setCmtDoctor(1);
archiveMaster.setCmtNurse(1);
archiveMasterService.updateByClo(archiveMaster);
result = "提交失败,存在缺陷未处理!";
}
return result;
}
@ -246,7 +271,7 @@ public class beHospitaledController {
@Transactional
@ResponseBody
@RequestMapping(value = "/cmtDoctorOrNurs")
public String cmtDoctorOrNurs(HttpServletRequest request, HttpServletResponse response, Archive_Master_Vo archiveMasterVo) {
public String cmtDoctorOrNurs(HttpServletRequest request, HttpServletResponse response, Archive_Master_Vo archiveMasterVo) throws Exception {
response.setCharacterEncoding("utf-8");
// 从session获取用户名
Subject currentUser = SecurityUtils.getSubject();
@ -330,6 +355,7 @@ public class beHospitaledController {
archive_master_following.setHandleId(username);
archive_master_following.setHandleName(handleName);
bol = archive_master_followingService.insertSelective(archive_master_following);
addArchiveOther(archiveMasterVo);
}else{
result = "医生提交失败,存在缺陷未处理!";
}
@ -482,6 +508,8 @@ public class beHospitaledController {
result="归档护士撤回成功!";
}
archiveMaster.setIsscaned(archiveMasterVo.getIsscaned());
//撤回后状态改为0
archiveMaster.setIsscaned("0");
bol=archiveMasterService.updateByClo(archiveMaster);
if (bol!=1){
if (archiveMasterVo.getCmtDoctor()==0){
@ -499,6 +527,30 @@ public class beHospitaledController {
}
return result;
}
public void addArchiveOther(Archive_Master_Vo archiveMasterVo) throws Exception {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
List<Archive_Master> master = archiveMasterService.selectByCol(archiveMasterVo);
Sign_List signList = new Sign_List();
if (master != null && master.size() > 0) {
signList.setSysFlag(1);
signList.setMasterID(master.get(0).getId());
signList.setPid(master.get(0).getPatientId());
Subject currentUser = SecurityUtils.getSubject();
Session session = currentUser.getSession();
signList.setC1((String) session.getAttribute("userSession"));
signList.setC5("1");
List<Sign_List> returnList = signListService.selectSignListWith(signList);
signList.setId(IDHelper.NewID());
/*signList.setC2(master.get(0).getSigner());
signList.setC3(master.get(0).getDeptName());*/
signList.setCreatedtime(sdf.format(new Date()));
signList.setdTime(sdf.format(new Date()));
signList.setT1(sdf.format(new Date()));
signListService.insertSignList(signList);
}
}
}

@ -6,6 +6,8 @@
*/
package com.emr.controller;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.emr.dao.Archive_MasterMapper;
import com.emr.entity.*;
import com.emr.service.*;
@ -59,6 +61,9 @@ public class signListController {
@Autowired
private Emr_Fault_TypeService emrFaultTypeService;
@Autowired
private PowerUserService powerUserService;
@Autowired
private Emr_Fault_DetailService emrFaultDetailService;
@ -88,82 +93,6 @@ public class signListController {
return result;
}
/*@ResponseBody
@RequestMapping(value = "/lastVerifyList")
public String lastVerifyList(HttpServletRequest request, HttpServletResponse response, Sign_List signList) throws UnsupportedEncodingException {
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
//点击签收生成一条数据
String result="";
int isSign=signList.getIsSign();
List<Archive_Master> list = archiveMasterService.selByCol(archiveMaster);
if(list.size()>0){
//修改
archiveMaster=list.get(0);
if(archiveMaster.getIsSign()!=isSign) {
// 从session获取用户名
Subject currentUser = SecurityUtils.getSubject();
Session session = currentUser.getSession();
String username = (String) session.getAttribute("userSession");//获取前面登录的用户名
//参数输入
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String nowTime = format.format(new Date());
archiveMaster.setIsSign(isSign);
if (isSign == 0) {
archiveMaster.setSigner("");
archiveMaster.setSignTime("");
} else if (isSign == 1) {
System.out.println((archiveMaster.getIsscaned().equals("1"))+"===="+archiveMaster.getIsscaned()!="1");
if(archiveMaster.getIsscaned().equals("0")) {
result = "无纸质,无需签收!";
return result;
}else {
archiveMaster.setSigner(username);
archiveMaster.setSignTime(nowTime);
}
}
int bol = archiveMasterService.updateByClo(archiveMaster);
if (bol == 1) {
String followingContent="";
String followingType="";
if(isSign == 1) {
result = "该份病案签收成功!";
followingContent="病案签收成功";
followingType="13";
}else{
result = "该份病案取消签收成功!";
followingContent="病案取消签收成功";
followingType="14";
}
//2021-05-13 following表中添加签收操作记录
Power_User user = (Power_User) request.getSession().getAttribute("CURRENT_USER");
String handleName = user.getUserPosition();//姓名
Archive_Master_Following archive_master_following = new Archive_Master_Following();
archive_master_following.setMasterId(archiveMaster.getId());
archive_master_following.setFollowingType(followingType);
archive_master_following.setFollowingContent(followingContent);
archive_master_following.setHandleTime(nowTime);
archive_master_following.setHandleId(username);
archive_master_following.setHandleName(handleName);
archive_master_followingService.insertSelective(archive_master_following);
} else {
result = "该份病案签收失败!";
}
}else{
if(isSign==1) {
result = "该份病案已经签收!";
}else if(isSign==0){
result = "该份病案已经取消签收!";
}
}
}else{
result="该份病案并不存在!";
}
return result;
}*/
@ResponseBody
@ -175,10 +104,23 @@ public class signListController {
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
List<Archive_Master> master=archiveMasterService.selectByCol(archiveMasterVo);
Sign_List signList=new Sign_List();
if(master!=null&&master.size()>0){
if(master!=null&&master.size()>0&&"1".equals(master.get(0).getIsscaned())){
//判断master表里纸质病历已经提交且有医生提交记录则取医生数据作为提交人否则护士为提交人
signList.setC2("".equals(master.get(0).getDoctorName())&&master.get(0).getDoctorName()!=null?master.get(0).getDoctorName():master.get(0).getNurseName());
//送纸质病历者所在科室
JSONArray powerUsers = powerUserService.getPowerUserList("1");
List<JSONObject> powerUserList= JSONArray.parseArray(powerUsers.toJSONString(), JSONObject.class);
ln:for (JSONObject jsonObjectNew : powerUserList) {
if(jsonObjectNew.getString("userName").equals(signList.getC2())){
signList.setC3(jsonObjectNew.getString("deptId"));
break ln;
}
}
//signList.setC3()
signList.setSysFlag(1);
signList.setMasterID(master.get(0).getId());
signList.setPid(master.get(0).getPatientId());
Subject currentUser = SecurityUtils.getSubject();
Session session = currentUser.getSession();
signList.setC1((String)session.getAttribute("userSession"));
@ -193,6 +135,8 @@ public class signListController {
signList.setT1(sdf.format(new Date()));
int z=signListService.insertSignList(signList);
result="签收成功";
}else{
result="医生或护士未在系统操作提交纸质病历";
}
//OffsetLimitPage result = archiveMasterService.selectByLast(archiveMasterVo);
return result;

@ -92,6 +92,16 @@ public class Emr_Fault_Vo {
private BigDecimal minusPoint;
private String backTime;
public String getBackTime() {
return backTime;
}
public void setBackTime(String backTime) {
this.backTime = backTime;
}
public BigDecimal getMinusPoint() {
return minusPoint;
}

@ -33,6 +33,81 @@ public class V_Count {
private String endDate;
private String overdueDays;
//2021-06-028新增
private String overdue;//超期天数
//迟交合计
private Integer timeOutNum;
//出院合计
private Integer isOutNum ;
//及时合计
private Integer inTime;
//迟交率
private String timeOutRate ;
//及时率合计
private String inTimeRate;
public Integer getIsOutNum() {
return isOutNum;
}
public void setIsOutNum(Integer isOutNum) {
this.isOutNum = isOutNum;
}
public Integer getInTime() {
return inTime;
}
public void setInTime(Integer inTime) {
this.inTime = inTime;
}
public String getTimeOutRate() {
return timeOutRate;
}
public void setTimeOutRate(String timeOutRate) {
this.timeOutRate = timeOutRate;
}
public String getInTimeRate() {
return inTimeRate;
}
public void setInTimeRate(String inTimeRate) {
this.inTimeRate = inTimeRate;
}
public Integer getTimeOutNum() {
return timeOutNum;
}
public void setTimeOutNum(Integer timeOutNum) {
this.timeOutNum = timeOutNum;
}
public String getOverdue() {
return overdue;
}
public void setOverdue(String overdue) {
this.overdue = overdue;
}
public String getOverdueDays() {
return overdueDays;
}
public void setOverdueDays(String overdueDays) {
this.overdueDays = overdueDays;
}
public String getDeptCode() {
return deptCode;

@ -1,23 +1,33 @@
package com.emr.service.ipml;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.emr.dao.Emr_LogMapper;
import com.emr.entity.Emr_Log;
import com.emr.entity.Emr_Log_Vo;
import com.emr.entity.OffsetLimitPage;
import com.emr.service.LogService;
import com.emr.service.PowerUserService;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import com.google.common.base.Function;
import com.google.common.collect.Maps;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Map;
@Service
@Transactional
public class LogServiceImpl implements LogService {
@Autowired
private Emr_LogMapper logMapper;
@Autowired
private PowerUserService powerUserService;
@Override
public int insert(Emr_Log log) {
return logMapper.insert(log);
@ -37,6 +47,27 @@ public class LogServiceImpl implements LogService {
public OffsetLimitPage selectByCol(Emr_Log_Vo emr_log_vo, Integer offset, Integer limit) {
PageHelper.offsetPage(offset, limit);
List<Emr_Log_Vo> newsInfoList = logMapper.selectByCol(emr_log_vo);
JSONArray powerUsers = powerUserService.getPowerUserList("1");
List<JSONObject> powerUserList = JSONArray.parseArray(powerUsers.toJSONString(), JSONObject.class);
if (powerUserList != null){
Map<String,JSONObject> mappedMovies = Maps.uniqueIndex(powerUserList, new Function<JSONObject,String>() {
@Override
public String apply(JSONObject temp) {
return temp.getString("userName");
}});
for (Emr_Log_Vo emrLogVo : newsInfoList) {
JSONObject userInfo = mappedMovies.get(emrLogVo.getCreater());
if (userInfo==null){
emrLogVo.setCreater(emrLogVo.getCreater());
}else {
emrLogVo.setCreater(userInfo.getString("name"));
}
}
}
return new OffsetLimitPage((Page) newsInfoList);
}

@ -164,6 +164,8 @@ public class test {
System.out.println(p2);*/
}
public void test() {
}
}

@ -52,11 +52,12 @@
select sum(s.pageNum) pageNum from
(select count(*) pageNum from
archive_detail
where MasterID in (select id from archive_master where inp_no like(
where MasterID in (select id from archive_master where inp_no LIKE '%'+(
select inp_no from archive_master where 1=1
<if test="patientId != null and patientId != ''">
and id=#{patientId,jdbcType=VARCHAR}
</if>)
</if>)+'%'
and patindex('%B%',inp_no) != 0
and id!=#{patientId,jdbcType=VARCHAR}
)
<if test="assortId != null and assortId != ''">
@ -73,11 +74,12 @@
<include refid="Base_Column_List"/>
from
archive_detail
where MasterID in (select id from archive_master where inp_no like(
where MasterID in (select id from archive_master where inp_no like '%'+(
select inp_no from archive_master where 1=1
<if test="patientId != null and patientId != ''">
and id=#{patientId,jdbcType=VARCHAR}
</if>)
</if>)+'%'
and patindex('%B%',inp_no) != 0
and id!=#{patientId,jdbcType=VARCHAR}
)
<if test="flag != null">
@ -159,22 +161,28 @@
on m.archive_detail_id=f.id
where 1=1 and m.back_flag= 3
<if test="patientId != null">
and f.id in (select id from archive_master where inp_no like(
and f.id in (select id from archive_master where inp_no like '%'+(
select inp_no from archive_master where 1=1
<if test="patientId != null and patientId != ''">
and id=#{patientId,jdbcType=VARCHAR}
</if>)
</if>)+'%'
and patindex('%B%',inp_no) != 0
union
select id from archive_master where id=#{patientId,jdbcType=VARCHAR}
)
</if>
) s
on s.id=t.MasterID
where 1=1
<if test="patientId != null">
and t.MasterID in (select id from archive_master where inp_no like(
and t.MasterID in (select id from archive_master where inp_no like '%'+(
select inp_no from archive_master where 1=1
<if test="patientId != null and patientId != ''">
and id=#{patientId,jdbcType=VARCHAR}
</if>)
</if>)+'%'
and patindex('%B%',inp_no) != 0
union
select id from archive_master where id=#{patientId,jdbcType=VARCHAR}
)
</if>
<if test="source != null and source != '' and source!='-1'">

@ -150,7 +150,7 @@
<select id="selectByCol" parameterType="com.emr.entity.Archive_Master_Vo" resultMap="BaseResultMap">
select distinct m.id,m.patient_id,m.inp_no,m.visit_id,m.name,m.sex,f.name
dept_name,CONVERT(varchar(10),m.discharge_date_time, 120) discharge_date_time,m.ArchiveState,CONVERT(varchar(10),m.admission_date_time, 120) admission_date_time,d.name dept_admission_to
,m.check_doctor,m.checked_datetime,m.checked_doctor,m.LockInfo,m.DOCTOR_IN_CHARGE,m.ID_NO,m.DISCHARGE_DISPOSITION,m.dept_code_lend,m.isscaned,m.is_scanning,bed_number
,m.check_doctor,m.doctor_name,m.nurse_name,m.checked_datetime,m.checked_doctor,m.LockInfo,m.DOCTOR_IN_CHARGE,m.ID_NO,m.DISCHARGE_DISPOSITION,m.dept_code_lend,m.isscaned,m.is_scanning,bed_number
from archive_master m
LEFT JOIN (select code,name from emr_dictionary where parent_id=(select id from emr_dictionary where
typeCode='dept_code' )) d
@ -266,7 +266,7 @@
LEFT JOIN (select code,name from emr_dictionary where parent_id=(select id from emr_dictionary where
typeCode='dept_code' )) f
on m.dept_name=f.code
LEFT JOIN(select archive_detail_id,count(*) numb from emr_fault_detail where 1=1 and content!='' and content is not null and back_flag is not null GROUP BY archive_detail_id) s
LEFT JOIN(select archive_detail_id,count(*) numb from emr_fault_detail where 1=1 and back_flag is not null GROUP BY archive_detail_id) s
on m.id=s.archive_detail_id
where 1=1 and ArchiveState in('归档中','提交','主任退回')
and patindex('%B%',m.inp_no) = 0
@ -380,7 +380,7 @@
on m.dept_name=f.code
left join Archive_Master_Following amf
on m.id=amf.master_id and amf.following_type=9
LEFT JOIN(select archive_detail_id,count(*) numb from emr_fault_detail where 1=1 and content!='' and content is not null and back_flag is not null GROUP BY archive_detail_id) s
LEFT JOIN(select archive_detail_id,count(*) numb from emr_fault_detail where 1=1 and back_flag is not null GROUP BY archive_detail_id) s
on m.id=s.archive_detail_id
where 1=1 and ArchiveState in('初审')
and patindex('%B%',m.inp_no) = 0
@ -510,7 +510,7 @@
LEFT JOIN (select code,name from emr_dictionary where parent_id=(select id from emr_dictionary where
typeCode='dept_code' )) f
on m.dept_name=f.code
LEFT JOIN(select archive_detail_id,count(*) numb from emr_fault_detail where 1=1 and content!='' and content is not null and back_flag is not null GROUP BY archive_detail_id) s
LEFT JOIN(select archive_detail_id,count(*) numb from emr_fault_detail where 1=1 and back_flag is not null GROUP BY archive_detail_id) s
on m.id=s.archive_detail_id
where 1=1
and m.ArchiveState not in('作废','已封存')
@ -633,7 +633,7 @@
LEFT JOIN (select code,name from emr_dictionary where parent_id=(select id from emr_dictionary where
typeCode='dept_code' )) f
on m.dept_name=f.code
LEFT JOIN(select archive_detail_id,count(*) numb from emr_fault_detail where 1=1 and content!='' and content is not null and back_flag is not null GROUP BY archive_detail_id) s
LEFT JOIN(select archive_detail_id,count(*) numb from emr_fault_detail where 1=1 and back_flag is not null GROUP BY archive_detail_id) s
on m.id=s.archive_detail_id
where 1=1
and patindex('%B%',m.inp_no) = 0
@ -756,7 +756,7 @@
LEFT JOIN (select code,name from emr_dictionary where parent_id=(select id from emr_dictionary where
typeCode='dept_code' )) f
on m.dept_name=f.code
LEFT JOIN(select archive_detail_id,count(*) numb from emr_fault_detail where 1=1 and content!='' and content is not null and back_flag is not null GROUP BY archive_detail_id) s
LEFT JOIN(select archive_detail_id,count(*) numb from emr_fault_detail where 1=1 and back_flag is not null GROUP BY archive_detail_id) s
on m.id=s.archive_detail_id
where 1=1 and ArchiveState in('提交','主任退回','归档中','复审退回')
and patindex('%B%',m.inp_no) = 0
@ -1316,10 +1316,10 @@
ORDER BY f.handle_time desc
</select>
<select id="selectOverdue" parameterType="com.emr.entity.Archive_Master_Vo" resultMap="BaseResultMap2">
select m.id,m.patient_id, m.inp_no,m.visit_id,m.name,CONVERT(varchar(10),m.discharge_date_time, 120)discharge_date_time
select m.id,m.patient_id, m.inp_no,m.visit_id,m.name,m.discharge_date_time
,CONVERT(varchar(10),m.admission_date_time, 120)admission_date_time,t.name dept_admission_to,g.name dept_name,m.DOCTOR_IN_CHARGE,m.death_flag,
d.*,[dbo].[getWorkday](m.discharge_date_time,d.create_time) overdue from archive_master m
LEFT JOIN(select master_id archive_detail_id,handle_time,CONVERT(varchar(10),create_time, 120) create_time,handle_name first_instance from (
LEFT JOIN(select master_id archive_detail_id,handle_time create_time,handle_name first_instance from (
select ROW_NUMBER() over(partition by master_id order by handle_time asc) RowNum
,Archive_Master_Following.*
from Archive_Master_Following where 1=1 and following_type ='5' ) as t1 where 1=1 and RowNum = 1

@ -572,7 +572,7 @@
and m.discharge_date_time = #{dischargeDateTime,jdbcType=NVARCHAR}
</if>
<if test="creater != null and creater != ''">
and m.creater like '%'+#{creater,jdbcType=NCHAR}+'%'
and e.creater like '%'+#{creater,jdbcType=NCHAR}+'%'
</if>
<if test="doctorInCharge != null and doctorInCharge != ''">

@ -16,6 +16,15 @@
<result column="day7Rate" jdbcType="NVARCHAR" property="day7Rate"/>
<result column="startDate" jdbcType="NVARCHAR" property="startDate"/>
<result column="endDate" jdbcType="NVARCHAR" property="endDate"/>
<result column="overdue" jdbcType="NVARCHAR" property="overdue"/>
<result column="timeOutNum" jdbcType="INTEGER" property="timeOutNum"/>
<result column="inTime" jdbcType="INTEGER" property="inTime"/>
<result column="isOutNum" jdbcType="INTEGER" property="isOutNum"/>
<result column="timeOutRate" jdbcType="NVARCHAR" property="timeOutRate"/>
<result column="inTimeRate" jdbcType="NVARCHAR" property="inTimeRate"/>
</resultMap>
<resultMap id="BaseResultMap2" type="com.emr.entity.V_Count2">
<result column="deptCode" jdbcType="NVARCHAR" property="deptCode"/>
@ -33,7 +42,188 @@
deptCode, deptName, inNum, outNum, fileNum, unfileNum, deathNum, fileRate,
day2Rate, day3Rate, day7Rate
</sql>
<select id="selectByCol" parameterType="com.emr.entity.V_Count" resultMap="BaseResultMap">
<![CDATA[
SELECT deptCode, deptName,ISNULL(timeOutNum,0)timeOutNum,ISNULL(isOutNum,0)isOutNum,ISNULL(inTime,0) inTime,ISNULL(timeOutRate,'0') timeOutRate,ISNULL(inTimeRate,'0') inTimeRate FROM (select DISTINCT c.dept_name as deptCode,t8.Name as deptName,t1.isOutNum ,n1.timeOutNum,
CONVERT(decimal(8,2),n1.timeOutNum*1./t1.isOutNum) as timeOutRate,(t1.isOutNum-n1.timeOutNum) as inTime,CONVERT(decimal(8,2),(t1.isOutNum-n1.timeOutNum)*1./t1.isOutNum) as inTimeRate
from archive_master as c
]]>
left join (select dept_name,COUNT(*) AS inNum from archive_master as s where s.ArchiveState in('在院')
and not (datepart(weekday,discharge_date_time)=1 or datepart(weekday,discharge_date_time)=7)
<choose>
<when test="startDate != null and startDate != '' and endDate != null and endDate != ''">
and discharge_date_time between CONVERT(VARCHAR(10),#{startDate,jdbcType=NCHAR},120) and
#{endDate,jdbcType=NCHAR}+ ' 23:59:59'
</when>
<when test="startDate != null and startDate != ''">
and discharge_date_time >= CONVERT(VARCHAR(10),#{startDate,jdbcType=NCHAR},120)
</when>
<when test="endDate != null and endDate != ''">
and discharge_date_time &lt;= #{endDate,jdbcType=NCHAR}+ ' 23:59:59'
</when>
</choose>
group by dept_name) as t on c.dept_name= t.dept_name
left join (select dept_name,COUNT(*) AS isOutNum from archive_master as s where s.ArchiveState!='在院'
and not (datepart(weekday,discharge_date_time)=1 or datepart(weekday,discharge_date_time)=7)
<choose>
<when test="startDate != null and startDate != '' and endDate != null and endDate != ''">
and discharge_date_time between CONVERT(VARCHAR(10),#{startDate,jdbcType=NCHAR},120) and
#{endDate,jdbcType=NCHAR}+ ' 23:59:59'
</when>
<when test="startDate != null and startDate != ''">
and discharge_date_time >= CONVERT(VARCHAR(10),#{startDate,jdbcType=NCHAR},120)
</when>
<when test="endDate != null and endDate != ''">
and discharge_date_time &lt;= #{endDate,jdbcType=NCHAR}+ ' 23:59:59'
</when>
</choose>
group by dept_name) as t1 on c.dept_name= t1.dept_name
left join (
SELECT a.dept_name,ISNULL(timeOutNum, 0) timeOutNum FROM archive_master AS a LEFT JOIN (
select s.dept_name as dept_name,COUNT(*) AS timeOutNum from archive_master as s
LEFT JOIN(select master_id archive_detail_id,handle_time create_time,handle_name first_instance from (
select ROW_NUMBER() over(partition by master_id order by handle_time asc) RowNum
,Archive_Master_Following.*
from Archive_Master_Following where 1=1 and following_type ='5' ) as t1 where 1=1 and RowNum = 1
) d
on s.id=d.archive_detail_id
where s.ArchiveState!='在院'
<if test="overdueDays != null and overdueDays != ''">
and convert(int,[dbo].[getWorkday](s.discharge_date_time,d.create_time))-convert(int,#{overdueDays,jdbcType=INTEGER})>0
</if>
and not (datepart(weekday,discharge_date_time)=1 or datepart(weekday,discharge_date_time)=7) group by dept_name
) x ON a.dept_name = x.dept_name
<choose>
<when test="startDate != null and startDate != '' and endDate != null and endDate != ''">
and discharge_date_time between CONVERT(VARCHAR(10),#{startDate,jdbcType=NCHAR},120) and
#{endDate,jdbcType=NCHAR}+ ' 23:59:59'
</when>
<when test="startDate != null and startDate != ''">
and discharge_date_time >= CONVERT(VARCHAR(10),#{startDate,jdbcType=NCHAR},120)
</when>
<when test="endDate != null and endDate != ''">
and discharge_date_time &lt;= #{endDate,jdbcType=NCHAR}+ ' 23:59:59'
</when>
</choose>
) as n1 on c.dept_name= n1.dept_name
left join (select dept_name,COUNT(*) AS fileNum from archive_master as s where s.ArchiveState in('已归档','已认证')
and not (datepart(weekday,discharge_date_time)=1 or datepart(weekday,discharge_date_time)=7)
<choose>
<when test="startDate != null and startDate != '' and endDate != null and endDate != ''">
and discharge_date_time between CONVERT(VARCHAR(10),#{startDate,jdbcType=NCHAR},120) and
#{endDate,jdbcType=NCHAR}+ ' 23:59:59'
</when>
<when test="startDate != null and startDate != ''">
and discharge_date_time >= CONVERT(VARCHAR(10),#{startDate,jdbcType=NCHAR},120)
</when>
<when test="endDate != null and endDate != ''">
and discharge_date_time &lt;= #{endDate,jdbcType=NCHAR}+ ' 23:59:59'
</when>
</choose>
group by dept_name) as t2 on c.dept_name= t2.dept_name
left join (select dept_name,COUNT(*) AS unfileNum from archive_master as s where s.ArchiveState not in('已归档','已认证')
and not (datepart(weekday,discharge_date_time)=1 or datepart(weekday,discharge_date_time)=7)
<choose>
<when test="startDate != null and startDate != '' and endDate != null and endDate != ''">
and discharge_date_time between CONVERT(VARCHAR(10),#{startDate,jdbcType=NCHAR},120) and
#{endDate,jdbcType=NCHAR}+ ' 23:59:59'
</when>
<when test="startDate != null and startDate != ''">
and discharge_date_time >= CONVERT(VARCHAR(10),#{startDate,jdbcType=NCHAR},120)
</when>
<when test="endDate != null and endDate != ''">
and discharge_date_time &lt;= #{endDate,jdbcType=NCHAR}+ ' 23:59:59'
</when>
</choose>
group by dept_name) as t3 on c.dept_name= t3.dept_name
left join (select dept_name,COUNT(*) AS deathNum from archive_master as s where s.DISCHARGE_DISPOSITION=5
and not (datepart(weekday,discharge_date_time)=1 or datepart(weekday,discharge_date_time)=7)
<choose>
<when test="startDate != null and startDate != '' and endDate != null and endDate != ''">
and discharge_date_time between CONVERT(VARCHAR(10),#{startDate,jdbcType=NCHAR},120) and
#{endDate,jdbcType=NCHAR}+ ' 23:59:59'
</when>
<when test="startDate != null and startDate != ''">
and discharge_date_time >= CONVERT(VARCHAR(10),#{startDate,jdbcType=NCHAR},120)
</when>
<when test="endDate != null and endDate != ''">
and discharge_date_time &lt;= #{endDate,jdbcType=NCHAR}+ ' 23:59:59'
</when>
</choose>
group by dept_name) as t4 on c.dept_name= t4.dept_name
left join (select dept_name,COUNT(*) AS Num from archive_master as s where s.ArchiveState in('已归档','已认证') and datediff(d,discharge_date_time,getdate())&lt;=2
and not (datepart(weekday,discharge_date_time)=1 or datepart(weekday,discharge_date_time)=7)
<choose>
<when test="startDate != null and startDate != '' and endDate != null and endDate != ''">
and discharge_date_time between CONVERT(VARCHAR(10),#{startDate,jdbcType=NCHAR},120) and
#{endDate,jdbcType=NCHAR}+ ' 23:59:59'
</when>
<when test="startDate != null and startDate != ''">
and discharge_date_time >= CONVERT(VARCHAR(10),#{startDate,jdbcType=NCHAR},120)
</when>
<when test="endDate != null and endDate != ''">
and discharge_date_time &lt;= #{endDate,jdbcType=NCHAR}+ ' 23:59:59'
</when>
</choose>
group by dept_name) as t5 on c.dept_name= t5.dept_name
left join (select dept_name,COUNT(*) AS Num from archive_master as s where s.ArchiveState in('已归档','已认证') and datediff(d,discharge_date_time,getdate())&lt;=3
and not (datepart(weekday,discharge_date_time)=1 or datepart(weekday,discharge_date_time)=7)
<choose>
<when test="startDate != null and startDate != '' and endDate != null and endDate != ''">
and discharge_date_time between CONVERT(VARCHAR(10),#{startDate,jdbcType=NCHAR},120) and
#{endDate,jdbcType=NCHAR}+ ' 23:59:59'
</when>
<when test="startDate != null and startDate != ''">
and discharge_date_time >= CONVERT(VARCHAR(10),#{startDate,jdbcType=NCHAR},120)
</when>
<when test="endDate != null and endDate != ''">
and discharge_date_time &lt;= #{endDate,jdbcType=NCHAR}+ ' 23:59:59'
</when>
</choose>
group by dept_name) as t6 on c.dept_name= t6.dept_name
left join (select dept_name,COUNT(*) AS Num from archive_master as s where s.ArchiveState in('已归档','已认证') and datediff(d,discharge_date_time,getdate())&lt;=7
and not (datepart(weekday,discharge_date_time)=1 or datepart(weekday,discharge_date_time)=7)
<choose>
<when test="startDate != null and startDate != '' and endDate != null and endDate != ''">
and discharge_date_time between CONVERT(VARCHAR(10),#{startDate,jdbcType=NCHAR},120) and
#{endDate,jdbcType=NCHAR}+ ' 23:59:59'
</when>
<when test="startDate != null and startDate != ''">
and discharge_date_time >= CONVERT(VARCHAR(10),#{startDate,jdbcType=NCHAR},120)
</when>
<when test="endDate != null and endDate != ''">
and discharge_date_time &lt;= #{endDate,jdbcType=NCHAR}+ ' 23:59:59'
</when>
</choose>
group by dept_name) as t7 on c.dept_name= t7.dept_name
left join (SELECT code,Name FROM emr_dictionary ) as t8 on c.dept_name=t8.code
) v_count where 1=1
<!--<if test="deptCode != null and deptCode!=''">-->
<!--and deptCode = #{deptCode,jdbcType=NVARCHAR}-->
<!--</if>-->
<if test="deptCode != null and deptCode!=''">
and deptCode in
<foreach item="item" collection="deptCode.split(',')" open="(" separator="," close=")">
#{item}
</foreach>
</if>
<if test="deptName != null and deptName!=''">
and deptName in
<foreach item="item" collection="deptName.split(',')" open="(" separator="," close=")">
#{item}
</foreach>
and deptName is not null
</if>
<!--<if test="deptName != null and deptName!=''">-->
<!--and deptName = #{deptName,jdbcType=NVARCHAR}-->
<!--</if>-->
</select>
<!--<select id="selectByCol" parameterType="com.emr.entity.V_Count" resultMap="BaseResultMap">
<![CDATA[
SELECT deptCode, deptName, ISNULL(inNum, 0) inNum, ISNULL(outNum, 0) outNum, ISNULL(fileNum, 0) fileNum, ISNULL(unfileNum, 0) unfileNum, ISNULL(deathNum, 0) deathNum, ISNULL(fileRate, '0') fileRate, ISNULL(day2Rate, '0') day2Rate, ISNULL(day3Rate, '0') day3Rate, ISNULL(day7Rate, '0') day7Rate FROM (select DISTINCT c.dept_name as deptCode,t8.Name as deptName, t.inNum ,t1.outNum ,t2.fileNum , t3.unfileNum ,t4.deathNum,
(t2.fileNum/t1.outNum) as fileRate,(t5.Num-t4.deathNum)/(t2.fileNum-t4.deathNum) as day2Rate, (t6.Num-t4.deathNum)/(t2.fileNum-t4.deathNum) as day3Rate, (t7.Num)/(t2.fileNum) as day7Rate
@ -161,9 +351,9 @@
group by dept_name) as t7 on c.dept_name= t7.dept_name
left join (SELECT code,Name FROM emr_dictionary ) as t8 on c.dept_name=t8.code
) v_count where 1=1
<!--<if test="deptCode != null and deptCode!=''">-->
<!--and deptCode = #{deptCode,jdbcType=NVARCHAR}-->
<!--</if>-->
&lt;!&ndash;<if test="deptCode != null and deptCode!=''">&ndash;&gt;
&lt;!&ndash;and deptCode = #{deptCode,jdbcType=NVARCHAR}&ndash;&gt;
&lt;!&ndash;</if>&ndash;&gt;
<if test="deptCode != null and deptCode!=''">
and deptCode in
<foreach item="item" collection="deptCode.split(',')" open="(" separator="," close=")">
@ -178,10 +368,10 @@
</foreach>
and deptName is not null
</if>
<!--<if test="deptName != null and deptName!=''">-->
<!--and deptName = #{deptName,jdbcType=NVARCHAR}-->
<!--</if>-->
</select>
&lt;!&ndash;<if test="deptName != null and deptName!=''">&ndash;&gt;
&lt;!&ndash;and deptName = #{deptName,jdbcType=NVARCHAR}&ndash;&gt;
&lt;!&ndash;</if>&ndash;&gt;
</select>-->
<select id="selByDept" parameterType="com.emr.entity.V_Count2" resultMap="BaseResultMap2">
select c.deptName,c.Name,count(*) total,sum(c.dayNum) dayNum,sum(c.Saleable)expired,sum(c.expiredDay) expiredDay
from view_count c

@ -1161,6 +1161,7 @@
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
<input id="isScanned" hidden/>
<h4 class="modal-title">是否强制提交</h4>
</div>
<div class="modal-body">
@ -1341,7 +1342,7 @@
<div class="modal-body">
<form>
<div class="form-group "><input id="flagStaff" hidden/>
<input id="isScanned2" hidden/>
<div style="color:black" id="WzRsult2"></div>
</div>
</form>
@ -2627,7 +2628,7 @@
});
//医生提交
$("#doctorBtn").on('click', function () {
$("#doctorBtn").on('click', function (row) {
//审核信息保存
var doctorFlag = 1;
var id = $("#archiveId").val();
@ -2638,8 +2639,15 @@
var lockinfo = $("#wzxText").val();
var content = $("#doctorText").val();
var isScanedChk = "0";
var flag1 =$("#isScanned").val();
if($('.isScanedChk1').is(':checked')){
var checkFlag =1;
}
if (lockinfo == "完整") {
if ($('.isScanedChk1').is(':checked')) {
l:if(flag1==1){
isScanedChk = "1";
break l;
}else if ($('.isScanedChk1').is(':checked')) {
isScanedChk = "1";
} else if ($('.isScanedChk2').is(':checked')) {
isScanedChk = "0";
@ -2650,7 +2658,7 @@
$.ajax({
url: "${path}/beHosp/cmtDoctorOrNurs",
type: "POST",
data: {cmtDoctor: doctorFlag, id: id, lockinfo: lockinfo, content: content, isscaned: isScanedChk},
data: {cmtDoctor: doctorFlag, id: id, lockinfo: lockinfo, content: content, isscaned: isScanedChk,checkFlag:checkFlag},
success: function (result) {
$("#doctorModal").modal('hide');
if (result.indexOf("成功")!=-1) {
@ -2670,6 +2678,7 @@
$("#flagStaff").val(0);
//弹窗提示是否强制性
$("#WzRsult2").html(lockinfo);
$("#isScanned").val(row.isscaned);
$('#WZModal2').modal({
backdrop: 'static',//backdrop 为 static 时,点击模态对话框的外部区域不会将其关闭。
keyboard: false,//keyboard 为 false 时,按下 Esc 键不会关闭 Modal。
@ -2681,7 +2690,7 @@
});
//护士提交
$("#nursBtn").on('click', function () {
$("#nursBtn").on('click', function (row) {
//审核信息保存
var nursFlag = 1;
var id = $("#archiveId").val();
@ -2692,8 +2701,12 @@
var lockinfo = $("#wzx2Text").val();
var content = $("#nures2Text").val();
var isScanedChk2 = "0";
var flag1 =$("#isScanned2").val();
if (lockinfo == "完整") {
if ($('.isScanedChk3').is(':checked')) {
l:if(flag1==1){
isScanedChk2 = "1";
break l;
}else if ($('.isScanedChk3').is(':checked')) {
isScanedChk2 = "1";
} else if ($('.isScanedChk4').is(':checked')) {
isScanedChk2 = "0";
@ -2737,6 +2750,7 @@
var isScanedChk = 0;
if (flag == 0) {
//医生
var flag1 =$("#isScanned").val();
entity.cmtDoctor = 1;
entity.lockinfo = $("#wzxText").val();
entity.content = $("#doctorText").val();
@ -2745,6 +2759,7 @@
}
entity.isscaned = isScanedChk;
} else if (flag == 1) {
var flag1 =$("#isScanned2").val();
entity.cmtNurse = 1;
entity.lockinfo = $("#wzx2Text").val();
entity.content = $("#nures2Text").val();
@ -2753,6 +2768,9 @@
}
entity.isscaned = isScanedChk;
}
if(flag1==1){
entity.isscaned = "1";
}
$.ajax({
url: "${path}/beHosp/cmtDoctorOrNurs",
type: "POST",
@ -3570,7 +3588,11 @@
title: '处理时间',
//width: 80
}, {
}, /*{
field: 'backTime',
title: '病案室退回时间',
//width: 150
},*/{
field: 'content',
title: '内容',
//width: 200
@ -3802,6 +3824,7 @@
keyboard: false,//keyboard 为 false 时,按下 Esc 键不会关闭 Modal。
show: true//弹出对话框
});
$("#isScanned2").val(row.isscaned);
$("#archiveId").val(row.id);
} else {
if (row.id != null && row.id != "") {
@ -3813,6 +3836,7 @@
if (result != null) {
if (result.id != null) {
if (result.isscaned == "1") {
$("#isScanned").val(row.isscaned);
$("#isScanedChk").attr("checked", true);
} else {
$("#isScanedChk").attr("checked", false);
@ -3870,6 +3894,7 @@
show: true//弹出对话框
});
$("#archiveId").val(row.id);
$("#isScanned2").val(row.isscaned);
} else {
if (row.id != null && row.id != "") {
$.ajax({
@ -3880,6 +3905,7 @@
if (result != null) {
if (result.id != null) {
if (result.isscaned == "1") {
$("#isScanned2").val(row.isscaned);
$("#isScanedChk2").attr("checked", true);
} else {
$("#isScanedChk2").attr("checked", false);

@ -1061,6 +1061,7 @@
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default btn-sm" data-dismiss="modal">返回</button>
<button type="button" class="btn btn-warning btn-sm" id="selQXDoctorBtn">查看缺陷</button>
<button type="button" class="btn btn-primary btn-sm" id="verifyBtn">通过</button>
</div>
</div>
@ -2245,7 +2246,9 @@
if (result == "完整") {
$("#table").bootstrapTable("refresh");
toastr.success("初审操作成功!");
} else {
} else if(result == "提交失败,存在缺陷未处理!"){
toastr.warning(result);
}else {
$("#WzRsult").html(result);
$('#WZModal').modal({
backdrop: 'static',//backdrop 为 static 时,点击模态对话框的外部区域不会将其关闭。
@ -2965,7 +2968,11 @@
title: '处理时间',
//width: 80
}, {
},/*{
field: 'backTime',
title: '病案室退回时间',
//width: 150
}, */{
field: 'content',
title: '内容',
//width: 200
@ -4969,6 +4976,18 @@
}
});
$("#selQXDoctorBtn").click(function () {
var id = $("#archiveId").val();
backFlagVal=3;
$("#archIdQX").val(id);
$('#tableQX').bootstrapTable('refresh');
$('#QXInfoModal').modal({
backdrop: 'static',//backdrop 为 static 时,点击模态对话框的外部区域不会将其关闭。
keyboard: true,//keyboard 为 false 时,按下 Esc 键不会关闭 Modal。
show: true//弹出对话框
});
});
//展开
function expandAll() {
var treeObj = $.fn.zTree.getZTreeObj("ztree");

@ -104,10 +104,18 @@
</div>
<div class="form-group divCss8">
<label for="name">主管医生:</label>
<input type="text" class="input-sm form-control" id="doctorInCharge" placeholder="请输入主管医生">
<select class="selectpicker bla bla bli" multiple data-live-search="true" name="doctorInCharge" id="doctorInCharge" title="请输入主管医生"
data-actions-box="true" data-deselect-all-text="取消全选" data-select-all-text="全选" data-none-results-text="没找到相应记录{0}">
<option value="--">全部</option>
</select>
<%-- <input type="text" class="input-sm form-control" id="doctorInCharge" placeholder="请输入主管医生">--%>
</div>
<div class="form-group divCss8">
<label for="name">创建人:</label>
<%--<select class="selectpicker bla bla bli" multiple data-live-search="true" name="creater" id="creater" title="请输入创建人"
data-actions-box="true" data-deselect-all-text="取消全选" data-select-all-text="全选" data-none-results-text="没找到相应记录{0}">
<option value="--">全部</option>
</select>--%>
<input type="text" class="input-sm form-control" id="creater" placeholder="请输入创建人">
</div>
<label class="form-group">缺陷选项:</label>
@ -595,6 +603,26 @@
function getHeight() {
return $(window).height() - 100;
}
function getUserList() {
//获取role为病案室、病案室管理的用户
$.ajax({
url:"${path}/getPowerUserList",
type:"GET",
data:{"type":1},
success:function (data) {
if (data != null) {
for (var i = 0; i < data.length; i++) {
$("#doctorInCharge").append("<option value=" + data[i].userName + ">" + data[i].name + "</option>");
// $("#creater").append("<option value=" + data[i].userName + ">" + data[i].name + "</option>");
}
}
$(".selectpicker").selectpicker('refresh');
}
})
}
getUserList()
$(function () {
//日期控件

@ -480,19 +480,6 @@
<option value="0">否</option>
</select>
</div>
<div class="form-group divCss8">
<label for="name">签收人:</label>
<input type="text" class="input-sm form-control" id="signer" placeholder="请输入签收人">
</div>
<div class="form-group divCss8" >
<label>签收日期:</label>
<div class="input-daterange input-group" id="datepickerSign">
<input type="text" class="input-sm form-control" name="start" id="startSignDate"/>
<span class="input-group-addon">-</span>
<input type="text" class="input-sm form-control" name="end" id="endSignDate"/>
</div>
</div>
<div class="form-group divCss8" style="margin-top: 10px">
<label>是否签收:</label>
<select class="selectpicker bla bla bli" data-live-search="true" name="isSign" id="isSign" title="是否签收">
@ -514,7 +501,7 @@
<%--</div>--%>
<button type="button" class="btn btn-primary btn-sm divCss" id="searchBtn">查询</button>
<button type="button" class="btn btn-info btn-sm divCss" id="excelBtn">条件导出</button>
<button type="button" class="btn btn-success btn-sm divCss" id="signBtn">签收</button>
<button type="button" class="btn btn-success btn-sm divCss" id="signBtn" style="visibility:hidden">签收</button>
</div>
</form>
<!--数据表格-->
@ -567,6 +554,7 @@
<div class="col-sm-5" hidden>
病案号:<label id="idLab" class="labCss"></label><label id="assortId" hidden></label>
</div>
<label id="patientId" hidden></label>
<div class="col-sm-5" hidden>
来源:<label id="idsource" class="labCss"></label><label id="source" hidden></label>
</div>
@ -653,6 +641,7 @@
<input type="checkbox" id="flag" value="1">只显示作废</input>
</div>
<div class="col-sm-9 btnGroupCss">
<button type="button" class="btn btn-primary btn-sm" id="viewBtn">患者统一视图</button>
<button type="button" class="btn btn-danger btn-sm" id="addPdfBtn">添加pdf</button>
<button type="button" class="btn btn-default btn-sm" id="uploadBtn">上传文件</button>
<button type="button" class="btn btn-info btn-sm" id="pdfBtn">查看分段PDF</button>
@ -2902,7 +2891,11 @@
title: '处理时间',
//width: 80
}, {
},/*{
field: 'backTime',
title: '病案室退回时间',
//width: 150
}, */{
field: 'content',
title: '内容',
//width: 200
@ -3062,7 +3055,7 @@
isscaned: $("#isscaned").val(),
isScanning: $("#isScanning").val(),
signer: "" + $("#signer").val(),
/*signer: "" + $("#signer").val(),*/
startSignDate: $("#startSignDate").val(),
endSignDate: $("#endSignDate").val(),
isSign: $("#isSign").val()
@ -3592,9 +3585,9 @@
if (index.indexOf("signFlg") != -1) {
if(row.isSign==0 && row.isscaned==1){
//签收显示取消签收
html += '<button type="button" class="btn btn-sm btn-warning signInfo">签收</button>';
html += '<button type="button" class="btn btn-sm btn-warning signInfo" style="visibility: hidden;">签收</button>';
}else if(row.isSign==1 && row.isscaned==1){
html += '<button type="button" class="btn btn-sm btn-warning signCancelInfo">取消签收</button>';
html += '<button type="button" class="btn btn-sm btn-warning signCancelInfo" style="visibility: hidden;">取消签收</button>';
}
}
@ -3734,6 +3727,7 @@
$("#deptToLab").html(row.deptAdmissionTo);
$("#outHospLab").html(row.dischargeDisposition);
$("#inLab").html(row.inpNo);
$("#patientId").html(row.patientId);
$("#inTimeLab").html(row.visitId);
//$("#wzContent").html(row.lockinfo);
@ -4384,6 +4378,12 @@
}
});
//点击跳转至平台统一视图
$("#viewBtn").click(function () {
debugger;
var patientId=$("#patientId").html() ;
window.location.href="http://10.6.0.158:8089/hdrciv/civ/jsp/categoryView/categoryView.jsp/rpc?username=00000&patient_id="+patientId;
});
//获取table的高度
function getHeight() {
@ -4434,7 +4434,7 @@
var isScanning= $("#isScanning").val();
var isSign = $("#isSign").val();
var isscaned = $("#isscaned").val();
var signer = $("#signer").val();
//var signer = $("#signer").val();
var startSignDate = $("#startSignDate").val();
var endSignDate = $("#endSignDate").val();
window.location.href = "${path}/lastVerify/exportExcel?inpNo=" + inpNo + "&visitId=" + visitId +

@ -1882,7 +1882,7 @@
formatter: function (value, row, index) {
var result = "";
if (value != null && value != "") {
result = value.substring(0, 10);
result = value.substring(0, 19);
}
return result;
}
@ -1895,7 +1895,7 @@
formatter: function (value, row, index) {
var result = "";
if (value != null && value != "") {
result = value.substring(0, 10);
result = value.substring(0, 19);
}
return result;
}

@ -1179,7 +1179,9 @@
if (result == "完整") {
$("#table").bootstrapTable("refresh");
toastr.success("初审操作成功!");
} else {
} else if(result == "提交失败,存在缺陷未处理!"){
toastr.warning(result);
}else {
$("#WzRsult").html(result);
$('#WZModal').modal({
backdrop: 'static',//backdrop 为 static 时,点击模态对话框的外部区域不会将其关闭。

@ -285,10 +285,27 @@
<input id="scoreLast" type="number" class="input-sm "/> 分
</div>
<div class="row divCss2">
<span style="vertical-align:top;">内容:</span>
<textarea id="backContentLast" rows="9" style="width:85%;"></textarea>
</div>
<span style="vertical-align:top;">内容:</span>
<textarea id="backContentLast" rows="9" style="width:85%;"></textarea>
</div>
<%-- <div class="row divCss2">
<span style="vertical-align:bottom; display:inline-block;">请选择电子病历可修改部分:</span>
<div class="row form-inline" style="vertical-align:top; display:inline-block;">
<div class="checkbox" >
<label >
<input type="checkbox" name="box" style="vertical-align:text-top;" value="1">仅病案首页</label>
</div>
<div class="checkbox">
<label>
<input type="checkbox" name="box" value="2">医生文书</label>
</div>
<div class="checkbox">
<label>
<input type="checkbox" value="3">护士文书</label>
</div>
</div>
</div>--%>
</div>
</form>
</div>
@ -1167,6 +1184,12 @@
data.backContent = $("#backContentLast").val();
data.state = "复审退回";
data.backFlag = 4;
// data.checkID = [];//定义一个空数组
// $("input[name='box']:checked").each(function(i){//把所有被选中的复选框的值存入数组
// data.checkID[i] =$(this).val();
// console.log(data.checkID);
// })
// debugger
//根据病案号保存缺陷信息
$.ajax({
url: "${path}/lastVerify/updateDetailByArchivId",

@ -2839,7 +2839,11 @@
title: '处理时间',
//width: 80
}, {
},/*{
field: 'backTime',
title: '病案室退回时间',
//width: 150
},*/ {
field: 'content',
title: '内容',
//width: 200

@ -2731,7 +2731,11 @@
title: '处理时间',
//width: 80
}, {
}, /*{
field: 'backTime',
title: '病案室退回时间',
//width: 150
},*/{
field: 'content',
title: '内容',
//width: 200

@ -98,7 +98,11 @@
<input type="text" class="input-sm form-control" name="end" id="endDate"/>
</div>
</div>
<div class="form-group divCss8">
<label>迟交天数为:</label>
<input type="text" class="input-sm form-control" id="overdueDays" placeholder="请输入迟交天数">
<label>天</label>
</div>
<button type="button" class="btn btn-primary btn-sm divCss" id="searchBtn">查询</button>
<button type="button" class="btn btn-info btn-sm divCss" id="excelBtn">条件导出</button>
<button type="button" class="btn btn-danger btn-sm divCss" id="excelBtn2">未归档导出</button>
@ -821,7 +825,7 @@
undefinedText: '--', //当数据为 undefined 时显示的字符
singleSelect: false,//设置True 将禁止多选
clickToSelect: true,//设置true 将在点击行时自动选择rediobox 和 checkbox
height: 560, //定义表格的高度。
//height: 560, //定义表格的高度。
searchTimeOut: 500,// 默认500 设置搜索超时时间。
toolbarAlign: 'right',// 指定 toolbar 水平方向的位置。'left' 或 'right'
paginationDetailHAlign: 'left',//指定 分页详细信息 在水平方向的位置。'left' 或 'right'。
@ -870,6 +874,7 @@
deptCode: deptName.toString(),
startDate: $("#startDate").val(),
endDate: $("#endDate").val(),
overdueDays: $("#overdueDays").val()
};
return temp;
@ -882,7 +887,7 @@
checkbox: true,
width: 25,
align: 'center',
valign: 'middle',
valign: 'middle'
},
{
@ -915,85 +920,51 @@
// valign: 'middle',
// },
{
title: '出院人数',
field: 'outNum',
title: '出院合计',
field: 'isOutNum',
align: 'center',
valign: 'middle',
},
{
title: '已归档',
field: 'fileNum',
title: '迟交合计',
field: 'timeOutNum',
align: 'center',
valign: 'middle',
},
{
title: '未归档',
field: 'unfileNum',
align: 'center',
valign: 'middle',
},
{
title: '死亡人数',
field: 'deathNum',
align: 'center',
valign: 'middle',
},
{
title: '归档率%',
field: 'fileRate',
title: '迟交率',
field: 'timeOutRate',
align: 'center',
valign: 'middle',
formatter: function (value, row, index) {
var val;
if (row.fileRate != null && row.fileRate != '') {
val = (row.fileRate * 100) + "%";
if (row.timeOutRate != null && row.timeOutRate != '') {
val = (row.timeOutRate * 100) + "%";
}
return val;
}
},
{
title: '2日归档率%',
field: 'day2Rate',
title: '及时合计',
field: 'inTime',
align: 'center',
valign: 'middle',
formatter: function (value, row, index) {
var val;
if (row.day2Rate != null && row.day2Rate != '') {
val = (row.day2Rate * 100) + "%";
}
return val;
}
},
{
title: '3日归档率%',
field: 'day3Rate',
title: '及时率',
field: 'inTimeRate',
align: 'center',
valign: 'middle',
formatter: function (value, row, index) {
var val;
if (row.day3Rate != null && row.day3Rate != '') {
val = (row.day3Rate * 100) + "%";
if (row.inTimeRate != null && row.inTimeRate != '') {
val = (row.inTimeRate * 100) + "%";
}
return val;
}
},
{
title: '7日归档率%',
field: 'day7Rate',
align: 'center',
valign: 'middle',
formatter: function (value, row, index) {
var val;
if (row.day7Rate != null && row.day7Rate != '') {
val = (row.fileRate * 100) + "%";
}
return val;
}
}
],
onLoadSuccess: function (result) { //加载成功时执行
//console.info("加载成功");

Loading…
Cancel
Save