Forráskód Böngészése

优化查看病人详情 以及 查看检验检查

xiaochan 4 éve
szülő
commit
d528038077

+ 1 - 1
pom.xml

@@ -10,7 +10,7 @@
     </parent>
     <groupId>thyyxxk</groupId>
     <artifactId>web-server</artifactId>
-    <version>9.9.0</version>
+    <version>9.9.1</version>
     <name>web-server</name>
     <description>server for yibao-web</description>
     <properties>

+ 7 - 0
src/main/java/thyyxxk/webserver/controller/querydata/QueryDrugsAndProjectsController.java

@@ -7,6 +7,8 @@ import org.springframework.web.bind.annotation.*;
 import thyyxxk.webserver.entity.ResultVo;
 import thyyxxk.webserver.entity.datamodify.GetDropdownBox;
 import thyyxxk.webserver.entity.querydata.QueryDrugsAndProjects;
+import thyyxxk.webserver.entity.reports.illegalchargesanalysis.IllegalChargeData;
+import thyyxxk.webserver.entity.reports.illegalchargesanalysis.IllegalChargeTemplate;
 import thyyxxk.webserver.service.querydata.QueryDrugsAndProjectsService;
 
 import javax.servlet.http.HttpServletResponse;
@@ -68,4 +70,9 @@ public class QueryDrugsAndProjectsController {
         return service.yaoPinHuoXiangMuCode(pyCode, flag);
     }
 
+    @PostMapping("/chaXunJianYanJianCha")
+    public ResultVo<List<IllegalChargeData>> chaXunJianYanJianCha(@RequestBody IllegalChargeTemplate param) {
+        return service.chaXunJianYanJianCha(param);
+    }
+
 }

+ 2 - 1
src/main/java/thyyxxk/webserver/dao/his/querydata/QueryDrugsAndProjectsDao.java

@@ -224,7 +224,8 @@ public interface QueryDrugsAndProjectsDao {
 
 
     @Select("<script>" +
-            "select rtrim(b.inpatient_no) inpatient_no,rtrim(a.name) name,a.responce_type,b.admiss_times,sum(b.charge4+b.charge6+b.charge8+b.charge9+b.charge11+b.charge18) jianChaFei," +
+            "select rtrim(b.inpatient_no) inpatient_no,rtrim(a.name) name,a.responce_type,b.admiss_times," +
+            "sum(b.charge4+b.charge6+b.charge8+b.charge9+b.charge11+b.charge18) jianChaFei," +
             "sum(b.charge13) jianYanFei,sum(b.total_charge) zongFeiYong, " +
             "       (sum(b.charge4+b.charge6+b.charge8+b.charge9+b.charge11+b.charge18)+sum(b.charge13))/sum(b.total_charge) jcjyfzb, " +
             "       a.admiss_date,a.dis_date, (select name from zd_unit_code where code=a.small_dept) deptName " +

+ 9 - 0
src/main/java/thyyxxk/webserver/entity/reports/illegalchargesanalysis/IllegalChargeData.java

@@ -2,6 +2,7 @@ package thyyxxk.webserver.entity.reports.illegalchargesanalysis;
 
 import lombok.Data;
 
+import java.math.BigDecimal;
 import java.util.Date;
 
 /**
@@ -43,6 +44,14 @@ public class IllegalChargeData {
 
     private long differDate;
 
+    private BigDecimal jianChaFei;
+
+    private BigDecimal zongFeiYong;
+
+    private BigDecimal jcjyfzb;
+
+    private BigDecimal jianYanFei;
+
     public String getResponceTypeName() {
         switch (responceType) {
             case "02":

+ 12 - 7
src/main/java/thyyxxk/webserver/service/querydata/QueryDrugsAndProjectsService.java

@@ -89,8 +89,9 @@ public class QueryDrugsAndProjectsService {
         List<QueryDrugsAndProjects> zhenDuanList = new ArrayList<>();
 
         // 因为在 sql 中的 in 最长只能是有 2100 个 所以我需要 拆分来查询
-        for (QueryDrugsAndProjects projects : xiangMuList) {
-            if (xiangMuList.size() > 2100) {
+
+        if (xiangMuList.size() > 2100) {
+            for (QueryDrugsAndProjects projects : xiangMuList) {
                 if (patientList.size() < 2000) {
                     if (!patientList.contains(projects.getPatient())) {
                         patientList.add(projects.getPatient());
@@ -99,15 +100,19 @@ public class QueryDrugsAndProjectsService {
                     zhenDuanList.addAll(dao.queryZhenDuan(patientList));
                     patientList.clear();
                 }
-            } else {
-                patientList.add(projects.getPatient());
             }
-        }
-
-        if (patientList.size() < 2100) {
+        } else {
+            // 如果 没有大于 2100 就这样
+            for (QueryDrugsAndProjects projects : xiangMuList) {
+                // 一处重复的元素
+                if (!patientList.contains(projects.getPatient())) {
+                    patientList.add(projects.getPatient());
+                }
+            }
             zhenDuanList.addAll(dao.queryZhenDuan(patientList));
         }
 
+
         for (QueryDrugsAndProjects xiangMu : xiangMuList) {
             StringBuilder pjZhenDuan = new StringBuilder();
             for (QueryDrugsAndProjects zhenDuan : zhenDuanList) {