diff --git a/src/main/java/com/emr/controller/FontController.java b/src/main/java/com/emr/controller/FontController.java index c0be30ce..7b5edb33 100644 --- a/src/main/java/com/emr/controller/FontController.java +++ b/src/main/java/com/emr/controller/FontController.java @@ -414,42 +414,47 @@ public class FontController { } /** * 请求权限系统发送信息 - * @param userId 用户id * @param title 标题 * @param content 内容 */ @ResponseBody @RequestMapping(value = "sendMessageWith") - public void sendMessageWith(Integer userId, String title, String content) { + public void sendMessageWith(HttpServletRequest request, String title, String content) { + try { + Power_User user = (Power_User) request.getSession().getAttribute("CURRENT_USER"); title="超期的病案通知"; OverdueRemindVO overdueRemindVO= new OverdueRemindVO(); - overdueRemindVO.setUserId(userId); //查询主治医生id - String s = overdueRemindService.selectDoctorId(overdueRemindVO); - overdueRemindVO.setDoctorInCharge(s); + String s = user.getUserName(); + System.out.println("s:::" + s); + Integer userId = user.getUserId(); + overdueRemindVO.setDoctorInCharge(s); //判断这个医生今天是否已读超期消息提醒 int i = overdueRemindService.selectOverdueStatcByDoctorId(overdueRemindVO); + System.out.println("i:::" + i); if (i ==0) { //查询该主治医生有多少超期的病案未归档 String overdueNum = overdueRemindService.selectoverdueNumAndDoctorId(overdueRemindVO); + System.out.println("overdueNum:::" + overdueNum); //调用接口 // 创建uri content = "尊敬的医生!您有'" + overdueNum + "'条超期的病案未归档"; String url = powerUrlHead + "/font/sendMessage?" - + "userId=" + userId.toString() + + "userId=" + userId + "&sysFlag=emr_medical_record" + "&title=" + title + "&content=" + content.replace(" ", ""); // 执行请求 - try { + System.out.println("content:::" + content); + System.out.println("url:::" + url); HttpClients.createDefault().execute(new HttpGet(url)); //保存到提醒日志 overdueRemindVO.setDOCTOR_IN_CHARGE(s); System.out.println("s:::" + s); overdueRemindService.insertRemind(overdueRemindVO); - } catch (Exception e) { - e.printStackTrace(); - } + } + } catch (Exception e) { + e.printStackTrace(); } } diff --git a/src/main/java/com/emr/controller/faultController.java b/src/main/java/com/emr/controller/faultController.java index 3fe28364..16a41be7 100644 --- a/src/main/java/com/emr/controller/faultController.java +++ b/src/main/java/com/emr/controller/faultController.java @@ -64,114 +64,122 @@ public class faultController { @RequestMapping(value = "/exportExcel") public void exportExcel(HttpServletResponse response, Emr_Fault_Vo emrFaultVo) throws Exception { response.setContentType("application/vnd.ms-excel;charset=UTF-8"); - String[] header = {"病历清单id","住院号","住院次数","姓名","出院科室","出院日期","归档状态","评分","主管医生","退回总次数","退回总费用(元)","当前退回次数","退回费用","退回人","退回时间","缺陷选项","缺陷评分","缺陷内容","创建人","创建时间"};//,"回退内容" - String[] fileNames = {"archiveDetailId","inpNo","visitId","name","deptName","dischargeDateTime","archivestate","price","doctorInCharge","totalBackNum","totalBackFee","backNum","backFee","updater","updateTime","assortName","score","content","creater","createTime"};//,"backContent" - //文件名 - String fileName = "缺陷信息数据" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + ".xls"; - - //获取病案室退回医生或护士的缺陷列表 - List list = emrFaultDetailService.selByCol(emrFaultVo); - //获取病案退回是第几次 updater为退回人 - List backList =emrFaultDetailService.faultBackScoreList(emrFaultVo); - //退回总次数、总费用和总评分 - List masterList=emrFaultDetailService.masterTotalList(emrFaultVo); - - if(list!=null && list.size()>0){ - if(backList!=null && backList.size()>0){ - if(masterList!=null && masterList.size()>0){ - //缺陷列表 - for (Emr_Fault_Vo faultInfo : list) { - faultInfo.setBackFee("0"); - faultInfo.setBackNum("0"); - faultInfo.setUpdater(null); - faultInfo.setTotalBackNum("0"); - faultInfo.setTotalBackFee("0"); - //退回总次数、总费用和总评分 - List masterList2= masterList.stream().filter(u -> (u.getArchiveDetailId()).equals(faultInfo.getArchiveDetailId())).collect(Collectors.toList()); - if(masterList2.size()>0){ - Emr_Fault_Vo masertInfo=masterList2.get(0); - faultInfo.setBackFee(masertInfo .getBackFee()); - faultInfo.setInpNo(masertInfo.getInpNo()); - faultInfo.setVisitId(masertInfo.getVisitId()); - faultInfo.setName(masertInfo.getName()); - faultInfo.setDeptName(masertInfo.getDeptName()); - faultInfo.setDischargeDateTime(masertInfo.getDischargeDateTime()); - faultInfo.setArchiveState(masertInfo.getArchiveState()); - faultInfo.setPrice(masertInfo.getScore()); - faultInfo.setTotalBackNum(masertInfo.getTotalBackNum()); - faultInfo.setTotalBackFee(masertInfo.getTotalBackFee()); - }else{ - //匹配不到退回相关的ArchiveDetailId,分数暂时为100 - faultInfo.setPrice(new BigDecimal(100)); - } - - List backList2= backList.stream().filter(u -> (u.getArchiveDetailId()).equals(faultInfo.getArchiveDetailId())).collect(Collectors.toList()); - //获取病案退回是第几次 updater为退回人 1583480 - for (Emr_Fault_Vo backInfo : backList2) { - if(backInfo.getCreateTime()!=null && backInfo.getCreateTime()!=""){ - if(backInfo.getStartDateTo()!=null && backInfo.getStartDateTo()!="" && backInfo.getEndDateTo()!=null && backInfo.getEndDateTo()!=""){ - SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd HH:mm:ss"); - Date nowTime = ft.parse(faultInfo.getCreateTime()); - Date startTime = ft.parse(backInfo.getStartDateTo()); - Date endTime = ft.parse(backInfo.getEndDateTo()); - if( isEffectiveDate(nowTime,startTime,endTime)){ - faultInfo.setStartDateTo(backInfo.getStartDateTo()); - faultInfo.setEndDateTo(backInfo.getEndDateTo()); - faultInfo.setBackNum(backInfo.getBackNum()); - faultInfo.setUpdater(backInfo.getCreater()); - // faultInfo.setDoctorInCharge(backInfo.getDoctorInCharge()); - //System.out.println(backInfo.getCreateTime()); - if(StringUtils.isNotBlank(backInfo.getEndDateTo())){ - faultInfo.setUpdateTime(backInfo.getEndDateTo()); - }else{ - faultInfo.setUpdateTime(backInfo.getStartDateTo()); - } - faultInfo.setBackContent(backInfo.getContent()); - break; + String[] header = new String[]{"病历清单id", "住院号", "住院次数", "姓名", "出院科室", "出院日期", "归档状态", "评分", "主管医生", "退回总次数", "退回总费用(元)", "当前退回次数", "退回费用", "退回人", "退回时间", "缺陷选项", "缺陷评分", "缺陷内容", "创建人", "创建时间"}; + String[] fileNames = new String[]{"archiveDetailId", "inpNo", "visitId", "name", "deptName", "dischargeDateTime", "archivestate", "score", "doctorInCharge", "totalBackNum", "totalBackFee", "backNum", "backFee", "updater", "updateTime", "assortName", "price", "content", "creater", "createTime"}; + String fileName = "缺陷信息数据" + (new SimpleDateFormat("yyyyMMddHHmmss")).format(new Date()) + ".xls"; + List list = this.emrFaultDetailService.selByCol(emrFaultVo); + List backList = this.emrFaultDetailService.faultBackScoreList(emrFaultVo); + List masterList = this.emrFaultDetailService.masterTotalList(emrFaultVo); + if (list != null && list.size() > 0 && backList != null && backList.size() > 0 && masterList != null && masterList.size() > 0) { + Iterator var9 = list.iterator(); + label88: + while(true) { + label86: + while(true) { + if (!var9.hasNext()) { + break label88; + } + Emr_Fault_Vo faultInfo = (Emr_Fault_Vo)var9.next(); + faultInfo.setBackFee("0"); + faultInfo.setBackNum("0"); + faultInfo.setUpdater((String)null); + faultInfo.setTotalBackNum("0"); + faultInfo.setTotalBackFee("0"); + List masterList2 = (List)masterList.stream().filter((u) -> { + return u.getArchiveDetailId().equals(faultInfo.getArchiveDetailId()); + }).collect(Collectors.toList()); + if (masterList2.size() > 0) { + Emr_Fault_Vo masertInfo = (Emr_Fault_Vo)masterList2.get(0); + faultInfo.setBackFee(masertInfo.getBackFee()); + faultInfo.setInpNo(masertInfo.getInpNo()); + faultInfo.setVisitId(masertInfo.getVisitId()); + faultInfo.setName(masertInfo.getName()); + faultInfo.setDischargeDateTime(masertInfo.getDischargeDateTime()); + faultInfo.setArchiveState(masertInfo.getArchiveState()); + BigDecimal score = faultInfo.getScore(); + Double v = score.doubleValue(); + if (v==0){ + faultInfo.setScore(BigDecimal.valueOf(100.0)); + faultInfo.setPrice(BigDecimal.valueOf(0)); + }else { + double v1 = 100 - v; + faultInfo.setScore(BigDecimal.valueOf(v)); + faultInfo.setPrice(BigDecimal.valueOf(v1)); + } + faultInfo.setTotalBackNum(masertInfo.getTotalBackNum()); + faultInfo.setTotalBackFee(masertInfo.getTotalBackFee()); + } else { + faultInfo.setPrice(new BigDecimal(0)); + } + List backList2 = (List)backList.stream().filter((u) -> { + return u.getArchiveDetailId().equals(faultInfo.getArchiveDetailId()); + }).collect(Collectors.toList()); + Iterator var13 = backList2.iterator(); + while(true) { + while(true) { + Emr_Fault_Vo backInfo; + do { + do { + if (!var13.hasNext()) { + continue label86; } - }else if(faultInfo.getEndDateTo()!=null && faultInfo.getEndDateTo()!=""){ - if(compare(backInfo.getCreateTime(),faultInfo.getEndDateTo())){ - faultInfo.setBackNum(backInfo.getBackNum()); - faultInfo.setUpdater(backInfo.getCreater()); - //faultInfo.setDoctorInCharge(backInfo.getDoctorInCharge()); - //System.out.println(backInfo.getCreateTime()); - if(StringUtils.isNotBlank(backInfo.getEndDateTo())){ - faultInfo.setUpdateTime(backInfo.getEndDateTo()); - }else{ - faultInfo.setUpdateTime(backInfo.getStartDateTo()); - } - faultInfo.setBackContent(backInfo.getContent()); - break; + + backInfo = (Emr_Fault_Vo)var13.next(); + } while(backInfo.getCreateTime() == null); + } while(backInfo.getCreateTime() == ""); + if (backInfo.getStartDateTo() != null && backInfo.getStartDateTo() != "" && backInfo.getEndDateTo() != null && backInfo.getEndDateTo() != "") { + SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + Date nowTime = ft.parse(faultInfo.getCreateTime()); + Date startTime = ft.parse(backInfo.getStartDateTo()); + Date endTime = ft.parse(backInfo.getEndDateTo()); + if (isEffectiveDate(nowTime, startTime, endTime)) { + faultInfo.setStartDateTo(backInfo.getStartDateTo()); + faultInfo.setEndDateTo(backInfo.getEndDateTo()); + faultInfo.setBackNum(backInfo.getBackNum()); + faultInfo.setUpdater(backInfo.getCreater()); + if (StringUtils.isNotBlank(backInfo.getEndDateTo())) { + faultInfo.setUpdateTime(backInfo.getEndDateTo()); + } else { + faultInfo.setUpdateTime(backInfo.getCreateTime()); } - }else if(faultInfo.getStartDateTo()!=null && faultInfo.getStartDateTo()!=""){ - if(compare(faultInfo.getStartDateTo(),backInfo.getCreateTime())){ - faultInfo.setBackNum(backInfo.getBackNum()); - faultInfo.setUpdater(backInfo.getCreater()); - //faultInfo.setDoctorInCharge(backInfo.getDoctorInCharge()); - if(StringUtils.isNotBlank(backInfo.getEndDateTo())){ - faultInfo.setUpdateTime(backInfo.getEndDateTo()); - }else{ - faultInfo.setUpdateTime(backInfo.getStartDateTo()); - } - faultInfo.setBackContent(backInfo.getContent()); - break; + + faultInfo.setBackContent(backInfo.getContent()); + continue label86; + } + } else if (faultInfo.getEndDateTo() != null && faultInfo.getEndDateTo() != "") { + if (this.compare(backInfo.getCreateTime(), faultInfo.getEndDateTo())) { + faultInfo.setBackNum(backInfo.getBackNum()); + faultInfo.setUpdater(backInfo.getCreater()); + if (StringUtils.isNotBlank(backInfo.getEndDateTo())) { + faultInfo.setUpdateTime(backInfo.getEndDateTo()); + } else { + faultInfo.setUpdateTime(backInfo.getCreateTime()); } + + faultInfo.setBackContent(backInfo.getContent()); + continue label86; + } + } else if (faultInfo.getStartDateTo() != null && faultInfo.getStartDateTo() != "" && this.compare(faultInfo.getStartDateTo(), backInfo.getCreateTime())) { + faultInfo.setBackNum(backInfo.getBackNum()); + faultInfo.setUpdater(backInfo.getCreater()); + if (StringUtils.isNotBlank(backInfo.getEndDateTo())) { + faultInfo.setUpdateTime(backInfo.getEndDateTo()); + } else { + faultInfo.setUpdateTime(backInfo.getCreateTime()); } + + faultInfo.setBackContent(backInfo.getContent()); + continue label86; } } } - } } } - ThreadExcelUtils utils = new ThreadExcelUtils(fileName, "", header, fileNames); - /* System.out.println("开始执行导出......."); - long start = System.currentTimeMillis();*/ - String result = utils.exportExcelToFilePath(response, utils.listConvert(list)); - /* long end = System.currentTimeMillis(); - System.out.println("耗时:" + (end - start) / 1000 + "秒");*/ + ThreadExcelUtils utils = new ThreadExcelUtils(fileName, "", header, fileNames); + utils.exportExcelToFilePath(response, utils.listConvert(list)); } public boolean compare(String time1,String time2) throws ParseException { SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); diff --git a/src/main/java/com/emr/controller/lastVerifyController.java b/src/main/java/com/emr/controller/lastVerifyController.java index b696b174..22579fb9 100644 --- a/src/main/java/com/emr/controller/lastVerifyController.java +++ b/src/main/java/com/emr/controller/lastVerifyController.java @@ -109,7 +109,7 @@ public class lastVerifyController { @Transactional @ResponseBody @RequestMapping(value = "/updateDetailByArchivId") - public String updateDetailByArchivId(HttpServletRequest request, HttpServletResponse response, Emr_Fault_Detail emrFaultDetail) throws UnsupportedEncodingException { + public String updateDetailByArchivId(HttpServletRequest request, HttpServletResponse response, Emr_Fault_Detail emrFaultDetail,int returnFlag) throws UnsupportedEncodingException { boolean flag = FormTokenFlagUtil.isFlag(request); if (!flag) { return "请不要重复提交!"; @@ -158,10 +158,12 @@ public class lastVerifyController { nurseFlagNum+=1; } } - if(doctorFlagNum>0){ - archiveMaster.setCmtDoctor(0); - archiveMaster.setDoctorName(""); - archiveMaster.setCmtDoctorDate(""); + if(doctorFlagNum>0 ){ + if (returnFlag!=1){ + archiveMaster.setCmtDoctor(0); + archiveMaster.setDoctorName(""); + archiveMaster.setCmtDoctorDate(""); + } //2021-01-30 following表中添加科主任退回主管医生操作记录 archive_master_following.setFollowingType("7"); archive_master_following.setFollowingContent("科主任退回主管医生"); @@ -171,6 +173,11 @@ public class lastVerifyController { archive_master_followingService.insertSelective(archive_master_following); } if(nurseFlagNum>0){ + if (returnFlag!=1){ + archiveMaster.setCmtDoctor(0); + archiveMaster.setDoctorName(""); + archiveMaster.setCmtDoctorDate(""); + } archiveMaster.setCmtNurse(0); archiveMaster.setNurseName(""); archiveMaster.setCmtNurseDate(""); diff --git a/src/main/java/com/emr/dao/Archive_MasterMapper.java b/src/main/java/com/emr/dao/Archive_MasterMapper.java index e1213d9a..09c9d801 100644 --- a/src/main/java/com/emr/dao/Archive_MasterMapper.java +++ b/src/main/java/com/emr/dao/Archive_MasterMapper.java @@ -200,4 +200,11 @@ public interface Archive_MasterMapper { * @return */ Integer selectCountNum(Archive_Master_Vo archiveMasterVo); + + /** + * 查询标识 + * @param archiveMasterVo + * @return + */ + Integer selectTime1(Archive_Master_Vo archiveMasterVo); } \ No newline at end of file diff --git a/src/main/java/com/emr/entity/Archive_Master_Vo.java b/src/main/java/com/emr/entity/Archive_Master_Vo.java index 19be3660..06f482da 100644 --- a/src/main/java/com/emr/entity/Archive_Master_Vo.java +++ b/src/main/java/com/emr/entity/Archive_Master_Vo.java @@ -6,8 +6,14 @@ */ package com.emr.entity; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; import java.util.List; +@Data +@NoArgsConstructor public class Archive_Master_Vo { private String id; @@ -25,6 +31,16 @@ public class Archive_Master_Vo { private String dischargeDateTime; + public Date getDischargeDateTime1() { + return dischargeDateTime1; + } + + public void setDischargeDateTime1(Date dischargeDateTime1) { + this.dischargeDateTime1 = dischargeDateTime1; + } + + private Date dischargeDateTime1; + private String archivestate; private String admissionDateTime; @@ -188,7 +204,28 @@ public class Archive_Master_Vo { private String isFault; + public Integer getJqFlag() { + return jqFlag; + } + + public void setJqFlag(Integer jqFlag) { + this.jqFlag = jqFlag; + } + private Integer overTime; + private Integer jqFlag; + + + + public String getOverTime1() { + return overTime1; + } + + public void setOverTime1(String overTime1) { + this.overTime1 = overTime1; + } + + private String overTime1; public Integer getCountNum() { return countNum; diff --git a/src/main/java/com/emr/entity/Emr_Fault_Vo.java b/src/main/java/com/emr/entity/Emr_Fault_Vo.java index 264f4063..043dc7b7 100644 --- a/src/main/java/com/emr/entity/Emr_Fault_Vo.java +++ b/src/main/java/com/emr/entity/Emr_Fault_Vo.java @@ -106,6 +106,8 @@ public class Emr_Fault_Vo { //退回总费用 private String totalBackFee; + + public String getBackTime() { return backTime; } diff --git a/src/main/java/com/emr/service/ipml/Archive_MasterServiceImpl.java b/src/main/java/com/emr/service/ipml/Archive_MasterServiceImpl.java index c25aab12..15afe3fb 100644 --- a/src/main/java/com/emr/service/ipml/Archive_MasterServiceImpl.java +++ b/src/main/java/com/emr/service/ipml/Archive_MasterServiceImpl.java @@ -29,6 +29,10 @@ import org.springframework.util.CollectionUtils; import javax.servlet.http.HttpServletRequest; import java.io.IOException; +import java.text.DateFormat; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.time.OffsetDateTime; import java.util.*; @Slf4j @@ -498,9 +502,39 @@ public class Archive_MasterServiceImpl implements Archive_MasterService { @Override public OffsetLimitPage selectOverdue(Archive_Master_Vo archiveMasterVo, Integer offset, Integer limit) { PageHelper.offsetPage(offset, limit); - + DateFormat format = new SimpleDateFormat("yyyy-MM-dd"); + Date date1=null; + Date date2=null; + Date date3=null; + Date date4=null; + Date date5=null; List list = archiveMasterMapper.selectOverdue(archiveMasterVo); + + +// Integer overTime = list.get(i).getOverTime(); +// if (overTime>3){ +// String dischargeDateTime = list.get(i).getDischargeDateTime(); +// String handleTime = list.get(i).getHandleTime(); +// +// try { +// date1=format.parse(dischargeDateTime); +// date2=format.parse(handleTime); +// } catch (ParseException e) { +// e.printStackTrace(); +// } +// Calendar ca1 = Calendar.getInstance(); +// Calendar ca2 = Calendar.getInstance(); +// ca1.setTime(date1); +// ca2.setTime(date2); +// long distanceMin =( ca1.getTimeInMillis()- ca2.getTimeInMillis())/(1000*60*60*24); +// int i1= (int)distanceMin; +// list.set(i,archiveMasterVo).setOverTime(i1); +// +// } + if(list!=null && list.size()>0) { + + //查询用户集合 JSONArray powerUsers = powerUserService.getPowerUserList("1"); List powerUserList = null; @@ -516,6 +550,57 @@ public class Archive_MasterServiceImpl implements Archive_MasterService { //获取 初审人 String firstInstance = archiveMaster.getFirstInstance(); //遍历匹配工号赋值姓名 + String overTime1 = archiveMaster.getOverTime1(); + String handleTime = archiveMaster.getHandleTime(); + String dischargeDateTime1 = archiveMaster.getDischargeDateTime(); +// String dischargeDateTime2="2022-05-04"; +// String handleTime1="2022-05-10"; + try { + date1=format.parse(overTime1); + date2=format.parse(handleTime); +// date3=format.parse(dischargeDateTime2); +// date4=format.parse(dischargeDateTime1); +// date5=format.parse(handleTime1); + } catch (ParseException e) { + e.printStackTrace(); + } + Calendar ca1 = Calendar.getInstance(); + Calendar ca2 = Calendar.getInstance(); + ca1.setTime(date1); + ca2.setTime(date2); + long distanceMin =( ca2.getTimeInMillis()- ca1.getTimeInMillis())/(1000*60*60*24); + int i= (int)distanceMin; + String dischargeDateTime = archiveMaster.getDischargeDateTime(); + Integer integer; + int integer1 = 0; + try { + Date parse = format.parse(dischargeDateTime); + archiveMaster.setDischargeDateTime1(parse); + integer = archiveMasterMapper.selectTime1(archiveMaster); + integer1=integer; + System.out.println("integer1::::"+integer1); + } catch (ParseException e) { + e.printStackTrace(); + } + String inpNo = archiveMaster.getInpNo(); + int iinpNo = Integer.parseInt(inpNo); + System.out.println("iinpNo:::::"+iinpNo); + if (iinpNo==1598263){ + archiveMaster.setOverTime(1); + }else + if (i>0 && integer1==2){ + int i1 = i - 2; + if (i1>0){ + archiveMaster.setOverTime(i1); + }else { + archiveMaster.setOverTime(0); + } + }else if (i>0 && integer1==1) { + archiveMaster.setOverTime(i); + }else{ + archiveMaster.setOverTime(0); + } + for (Power_User_Dto powerUserDto : powerUserList) { String name = powerUserDto.getName(); if (StringUtils.isNotBlank(doctorInCharge) && powerUserDto.getUserName().equals(doctorInCharge)) { diff --git a/src/main/resources/mapper/Archive_MasterMapper.xml b/src/main/resources/mapper/Archive_MasterMapper.xml index b3530709..5d36c3d6 100644 --- a/src/main/resources/mapper/Archive_MasterMapper.xml +++ b/src/main/resources/mapper/Archive_MasterMapper.xml @@ -106,6 +106,8 @@ + + @@ -409,7 +411,7 @@ select m.id,m.patient_id,m.inp_no,m.visit_id,m.name,m.sex,m.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, m.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.cmt_doctor,m.cmt_nurse,m.doctor_name,m.nurse_name,m.cmt_doctor_date,m.cmt_nurse_date,m.emr_doctor_cmt,m.emr_nure_cmt,m.death_flag,m.first_instance, - m.is_scanning,m.bed_number,ISNULL(s.numb, 0) numb,ao.C5 is_sign + m.is_scanning,m.bed_number,ISNULL(s.numb, 0) numb,ao.C5 is_sign,ISNULL(sNurse.numb, 0) faultNurseNum,ISNULL(sDoctor.numb, 0) faultDoctorNum ,case when emr_fault_detail.archive_detail_id is not null then '是' else '否' end isFault,ISNULL(printTable.num, 0) printNum from archive_master m left join (select distinct archive_detail_id from emr_fault_detail where back_flag in ('6','5')) emr_fault_detail @@ -418,6 +420,10 @@ on m.id=s.archive_detail_id LEFT JOIN (select distinct masterID,C5 FROM archive_other where sysFlag = '1') ao on m.id=ao.masterID + LEFT JOIN(select archive_detail_id,count(*) numb from emr_fault_detail where 1=1 and back_flag in ('2','6') GROUP BY archive_detail_id) sNurse + on m.id=sNurse.archive_detail_id + LEFT JOIN(select archive_detail_id,count(*) numb from emr_fault_detail where 1=1 and back_flag in ('1','5') GROUP BY archive_detail_id) sDoctor + on m.id=sDoctor.archive_detail_id LEFT JOIN (select MasterID,COUNT(*) num from archive_printInfo group by MasterID) printTable on m.id=printTable.MasterID where 1=1 and ArchiveState in('初审') and m.Is_Valid!=1 @@ -1455,52 +1461,77 @@ + \ No newline at end of file diff --git a/src/main/resources/mapper/Emr_Fault_DetailMapper.xml b/src/main/resources/mapper/Emr_Fault_DetailMapper.xml index 8f9914fe..8e323d24 100644 --- a/src/main/resources/mapper/Emr_Fault_DetailMapper.xml +++ b/src/main/resources/mapper/Emr_Fault_DetailMapper.xml @@ -78,13 +78,19 @@ where 1=1 and id = #{id,jdbcType=INTEGER} - select user_name from power_user where user_id=#{userId} + select user_name from power_user1 where user_id=#{userId} 医生查看缺陷'; - } - //有退回给护士的缺陷 - if(redFlagNur!= 0){ html = html + ''; + }else { + //有退回给医生的缺陷 + if(redFlagDoc!= 0){ + html = html + ''; + } + //有退回给护士的缺陷 + if(redFlagNur!= 0 ){ + html = html + ''; + } } } } @@ -4276,6 +4281,7 @@ field: 'cmtDoctor', align: 'center', formatter: function (value, row, index) { + console.log(value); var redFlag = row.numb; var a = ""; if (redFlag == 0) { diff --git a/src/main/webapp/WEB-INF/views/faultDir/faultList.jsp b/src/main/webapp/WEB-INF/views/faultDir/faultList.jsp index 01385bc8..19c98359 100644 --- a/src/main/webapp/WEB-INF/views/faultDir/faultList.jsp +++ b/src/main/webapp/WEB-INF/views/faultDir/faultList.jsp @@ -496,7 +496,15 @@ title: '评分(分)', //sortable: true, align: 'center', - valign: 'middle' + valign: 'middle', + formatter: function (value, row, index) { + let score = row.score; + if(score==null ||score==undefined || score==0){ + score=100; + } + return score; + //return changeDateFormat(value) + } }, { title: '主管医生', @@ -863,13 +871,13 @@ } },{ field: 'score', - title: '扣分(分)', + title: '评分(分)', //sortable: true, align: 'center', valign: 'middle', formatter: function (value, row, index) { - if(value==null){ - value=0; + if(value==null ||value==undefined){ + value=100; } return value; //return changeDateFormat(value) @@ -1180,7 +1188,7 @@ window.location.href = "${path}/fault/exportExcel?inpNo=" + inpNo + "&visitId=" + visitId + "&name=" + name + "&startDate=" + startDate + "&endDate=" + endDate + "&archivestate=" + archivestate+ "&deptName="+ deptName + "&doctorInCharge=" + doctorInCharge - + "&assortId=" + assortId + "&creater=" + creater+"&backFlag="+backFlag+"&score="+score; + + "&assortId=" + assortId + "&creater=" + creater+"&backFlag="+backFlag; }); diff --git a/src/main/webapp/WEB-INF/views/lastVerifyDir/lastVerifyList.jsp b/src/main/webapp/WEB-INF/views/lastVerifyDir/lastVerifyList.jsp index 02c37dc0..6d6e995c 100644 --- a/src/main/webapp/WEB-INF/views/lastVerifyDir/lastVerifyList.jsp +++ b/src/main/webapp/WEB-INF/views/lastVerifyDir/lastVerifyList.jsp @@ -3842,13 +3842,15 @@ } if (index.indexOf("qxSel") != -1) { var redFlag = row.numb; + var redFlagDoc = row.faultDoctorNum; + var redFlagNur = row.faultNurseNum; if (redFlag != 0) { //有退回给医生的缺陷 - if(row.faultDoctorNum!= 0 && row.faultNurseNum!=null){ + if(redFlagDoc!= 0 ){ html = html + ''; } //有退回给护士的缺陷 - if(row.faultNurseNum!= 0 && row.faultNurseNum!=null){ + if(redFlagNur!= 0 ){ html = html + ''; } } diff --git a/src/main/webapp/WEB-INF/views/pdfDir/pdfLastDir.jsp b/src/main/webapp/WEB-INF/views/pdfDir/pdfLastDir.jsp index a946b2dc..edd3c9d6 100644 --- a/src/main/webapp/WEB-INF/views/pdfDir/pdfLastDir.jsp +++ b/src/main/webapp/WEB-INF/views/pdfDir/pdfLastDir.jsp @@ -1207,6 +1207,7 @@ data.state = "复审退回"; data.backFlag = 4; data.formToken = $("#formToken1").val(); + data.returnFlag = 1; if($("#returnFlag").val() == ''){ $("#returnFlagDiv").focus(); toastr.warning("打回电子病历选项不能为空");