浏览代码

电子病历查看自己的质控,以及删除没用的类

xiaochan 2 年之前
父节点
当前提交
b133c3f078

+ 7 - 1
src/main/java/thyyxxk/webserver/controller/zhuyuanyizheng/EmrControlRuleController.java

@@ -44,10 +44,16 @@ public class EmrControlRuleController {
     @GetMapping("/specifyAdmissionQualityControl")
     public ResultVo<JSONObject> specifyAdmissionQualityControl(@RequestParam("start") String start,
                                                                @RequestParam("end") String end) {
-//        return server.specifyAdmissionQualityControl(start, end);
         return serverv2.specifyAdmissionQualityControl(start, end);
     }
 
+
+    @GetMapping("/myPatientQualityControl")
+    public ResultVo<Object> myPatientQualityControl() {
+        return serverv2.myPatientQualityControl();
+    }
+
+
     @GetMapping("/getRuleList")
     public ResultVo<List<EmrRule>> getRuleList() {
         return ResultVoUtil.success(server.getRuleList());

+ 0 - 1
src/main/java/thyyxxk/webserver/dao/his/reports/KeShiShouRuDao.java

@@ -7,7 +7,6 @@ import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
 import thyyxxk.webserver.entity.datamodify.GetDropdownBox;
 import thyyxxk.webserver.entity.querydata.KeShiFeiiYongTongJi;
-import thyyxxk.webserver.entity.xc.XcPageHelp;
 
 import java.util.List;
 import java.util.Set;

+ 16 - 0
src/main/java/thyyxxk/webserver/dao/his/zhuyuanyisheng/EmrControlDaoV2.java

@@ -23,6 +23,17 @@ public interface EmrControlDaoV2 {
     List<QualityControlAnalysisOfMedicalRecords> selectedPatientsAdmittedAtTheSpecifiedTime(String start, String end);
 
 
+    @Select("select rtrim(inpatient_no)                                                  as inpatient_no, " +
+            "       admiss_times, " +
+            "       (select rtrim(name) from zd_unit_code where code = zk_ward)          as deptName, " +
+            "       (select rtrim(name) from a_employee_mi where code = refer_physician) as tubeBedDoctorName, " +
+            "       admiss_date," +
+            "       rtrim(name) as name " +
+            "from zy_actpatient " +
+            "where refer_physician = #{userCode}  and inpatient_no not like 'JT%' ")
+    List<QualityControlAnalysisOfMedicalRecords> myPatients(String userCode);
+
+
     @Select("select id, rule_data, type from emr_rule ")
     List<EmrRuleData> selectEmrRule();
 
@@ -32,6 +43,11 @@ public interface EmrControlDaoV2 {
     @Select("${sql}")
     List<Date> executeSqlDateList(String sql);
 
+    @Select("${sql}")
+    JSONObject executeSql(String sql);
+
+    @Select("${sql}")
+    List<JSONObject> executeSqlList(String sql);
 
     @Select("select id, " +
             "       document_id, " +

+ 16 - 4
src/main/java/thyyxxk/webserver/entity/excel/ToolExcel.java

@@ -5,6 +5,8 @@ import cn.hutool.poi.excel.BigExcelWriter;
 import cn.hutool.poi.excel.StyleSet;
 import lombok.Data;
 import org.apache.poi.ss.usermodel.DataFormat;
+import org.apache.poi.ss.usermodel.HorizontalAlignment;
+import org.apache.poi.ss.usermodel.VerticalAlignment;
 
 import javax.servlet.ServletOutputStream;
 import javax.servlet.http.HttpServletResponse;
@@ -39,24 +41,34 @@ public class ToolExcel {
         return this;
     }
 
-    public void exportExcel(Iterable<?> data, HttpServletResponse response) {
-
+    private void setCellDateFormat() {
         DataFormat dataFormat = writer.getWorkbook().createDataFormat();
         short format = dataFormat.getFormat(this.format);
         StyleSet styleSet = writer.getStyleSet();
         styleSet.getCellStyleForDate()
                 .setDataFormat(format);
+    }
 
+    private void setCellWeight() {
         for (int i = 0; i < widthIndex.size(); i++) {
             Integer width = widthIndex.get(i);
             if (width != null) {
                 writer.setColumnWidth(i, width);
             }
         }
+    }
+
+    public void exportExcel(Iterable<?> data, HttpServletResponse response) {
+
+        setCellDateFormat();
+        setCellWeight();
 
         writer.setOnlyAlias(true);
         writer.write(data, true);
-        ServletOutputStream out = null;
+
+        writer.getStyleSet().setAlign(HorizontalAlignment.CENTER, VerticalAlignment.CENTER);
+
+        ServletOutputStream out;
         try {
             response.setContentType("application/vnd.ms-excel;charset=utf-8");
             response.setHeader("Content-Disposition", "attachment;filename=test.xls");
@@ -70,8 +82,8 @@ public class ToolExcel {
         } finally {
             //关闭流
             writer.close();
-            IoUtil.close(out);
         }
+        IoUtil.close(out);
     }
 
 }

+ 0 - 1
src/main/java/thyyxxk/webserver/entity/querydata/KeShiFeiiYongTongJi.java

@@ -70,5 +70,4 @@ public class KeShiFeiiYongTongJi {
 
     private List<KeShiFeiiYongTongJi> data;
 
-
 }

+ 0 - 30
src/main/java/thyyxxk/webserver/entity/xc/XcPageHelp.java

@@ -1,30 +0,0 @@
-package thyyxxk.webserver.entity.xc;
-
-import lombok.Data;
-
-import java.util.List;
-
-@Data
-public class XcPageHelp<T> {
-
-    private long total;
-    private int pageSize;
-    private int currentPage;
-    private boolean whetherToPagicate = true;
-    private List<?> data;
-
-    public XcPageHelp(int currentPage, int pageSize) {
-        this.currentPage = currentPage;
-        this.pageSize = pageSize;
-    }
-
-    public XcPageHelp() {
-
-    }
-
-    public XcPageHelp(int currentPage, int pageSize, boolean whetherToPagicate) {
-        this.currentPage = currentPage;
-        this.pageSize = pageSize;
-        this.whetherToPagicate = whetherToPagicate;
-    }
-}

+ 0 - 7
src/main/java/thyyxxk/webserver/service/reports/KeShiShouRuServer.java

@@ -15,18 +15,11 @@ import thyyxxk.webserver.entity.datamodify.GetDropdownBox;
 import thyyxxk.webserver.entity.excel.ToolExcel;
 import thyyxxk.webserver.entity.querydata.KeShiFeiiYongTongJi;
 import thyyxxk.webserver.entity.querydata.QueryDrugsAndProjects;
-import thyyxxk.webserver.entity.xc.XcPageHelp;
 import thyyxxk.webserver.service.PublicServer;
 import thyyxxk.webserver.utils.*;
 
-import javax.servlet.ServletOutputStream;
 import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
-import java.io.UnsupportedEncodingException;
-import java.net.URLEncoder;
-import java.nio.charset.StandardCharsets;
 import java.util.*;
-import java.util.stream.Collectors;
 
 /**
  * <p>

+ 17 - 13
src/main/java/thyyxxk/webserver/service/zhuyuanyisheng/emr/EmrControlRuleSeverV2.java

@@ -1,6 +1,5 @@
 package thyyxxk.webserver.service.zhuyuanyisheng.emr;
 
-import cn.hutool.extra.spring.SpringUtil;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
@@ -15,14 +14,8 @@ import thyyxxk.webserver.entity.zhuyuanyisheng.emr.ProblemQualityControl;
 import thyyxxk.webserver.entity.zhuyuanyisheng.emrcontrolrule.EmrRuleV2;
 import thyyxxk.webserver.entity.zhuyuanyisheng.emrcontrolrule.QualityControlAnalysisOfMedicalRecords;
 import thyyxxk.webserver.service.externalhttp.emr.EmrEditor;
-import thyyxxk.webserver.utils.DateUtil;
-import thyyxxk.webserver.utils.ListUtil;
-import thyyxxk.webserver.utils.ResultVoUtil;
-import thyyxxk.webserver.utils.StringUtil;
-
-import javax.annotation.PostConstruct;
-import javax.script.ScriptEngine;
-import javax.script.ScriptEngineManager;
+import thyyxxk.webserver.utils.*;
+
 import javax.script.ScriptException;
 import java.util.*;
 
@@ -45,6 +38,20 @@ public class EmrControlRuleSeverV2 {
             return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "没有查询到患者信息。");
         }
 
+        return ResultVoUtil.success(qualityControlOfMedicalRecords(patInfo));
+    }
+
+    public ResultVo<Object> myPatientQualityControl() {
+        List<QualityControlAnalysisOfMedicalRecords> patInfo = dao.myPatients(TokenUtil.getTokenUserId());
+
+        if (ListUtil.isBlank(patInfo)) {
+            return ResultVoUtil.fail(ExceptionEnum.SLIGHTLY_ERROR);
+        }
+
+        return ResultVoUtil.success(qualityControlOfMedicalRecords(patInfo));
+    }
+
+    public JSONObject qualityControlOfMedicalRecords(List<QualityControlAnalysisOfMedicalRecords> patInfo) {
         List<EmrRuleData> ruleData = dao.selectEmrRule();
         ProblemQualityControl error = new ProblemQualityControl();
 
@@ -68,13 +75,11 @@ public class EmrControlRuleSeverV2 {
             }
             error.setName("病程间隔");
             intervalBetweenEpisodesOfTheCourseOfIllness(p, error);
-
             病程记录结果回报(p, error);
-
         });
 
         log.info("ruleData:{}", JSON.toJSONString(error.returnsData()));
-        return ResultVoUtil.success(error.returnsData());
+        return error.returnsData();
     }
 
 
@@ -340,7 +345,6 @@ public class EmrControlRuleSeverV2 {
     }
 
 
-    @PostConstruct
     public void test() throws ScriptException {
         List<QualityControlAnalysisOfMedicalRecords> list = new ArrayList<>();
 

+ 4 - 3
src/main/java/thyyxxk/webserver/service/zhuyuanyisheng/emr/EmrServer.java

@@ -259,8 +259,9 @@ public class EmrServer {
             param.setReferPhysician(patInfo.getReferPhysician())
                     .setConsultPhysician(patInfo.getConsultPhysician())
                     .setDeptDirector(patInfo.getDeptDirector());
-
-            param.setParent(GROUP_MAP.get(param.getEmrCategoryCode()));
+            if (StringUtil.isBlank(param.getParent())) {
+                param.setParent(GROUP_MAP.get(param.getEmrCategoryCode()));
+            }
             dao.emrInsertForTheFirstTime(param);
             insertAFragmentOfTheCourseOfTheDisease(param.getId(), param.getFragment());
         }
@@ -376,7 +377,7 @@ public class EmrServer {
         String userCode = TokenUtil.getTokenUserId();
         int count = dao.updateAuditByDocumentId(documentId, userCode);
         if (count > 0) {
-            return ResultVoUtil.success(ExceptionEnum.SUCCESS_AND_NOTIFICATION,"审核成功");
+            return ResultVoUtil.success(ExceptionEnum.SUCCESS_AND_NOTIFICATION, "审核成功");
         }
         return ResultVoUtil.success(ExceptionEnum.NO_DATA_EXIST, "操作失败,可能原因,已经审核完成或还未保存。");
     }

+ 35 - 0
src/main/java/thyyxxk/webserver/service/zhuyuanyisheng/emr/LinkQualityControl.java

@@ -0,0 +1,35 @@
+package thyyxxk.webserver.service.zhuyuanyisheng.emr;
+
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+import thyyxxk.webserver.dao.his.zhuyuanyisheng.EmrControlDaoV2;
+import thyyxxk.webserver.entity.zhuyuanyisheng.emrcontrolrule.QualityControlAnalysisOfMedicalRecords;
+import thyyxxk.webserver.service.externalhttp.emr.EmrEditor;
+
+import javax.annotation.PostConstruct;
+import java.util.List;
+
+@Service
+@Slf4j
+public class LinkQualityControl {
+
+    private final EmrControlDaoV2 dao;
+    private final EmrEditor editor;
+
+    public LinkQualityControl(EmrControlDaoV2 dao, EmrEditor editor) {
+        this.dao = dao;
+        this.editor = editor;
+    }
+
+    @PostConstruct
+    public void link() {
+       List<QualityControlAnalysisOfMedicalRecords> list =  dao.selectedPatientsAdmittedAtTheSpecifiedTime("2023-05-05 00:00:00","2023-05-06 23:59:59");
+
+
+
+
+
+    }
+
+
+}