Pārlūkot izejas kodu

Merge branch 'dev/20210120_2.0.1删除' into innerDevelop

# Conflicts:
#	src/main/java/com/diagbot/config/ResourceServerConfigurer.java
#	src/main/java/com/diagbot/config/security/UrlAccessDecisionManager.java
#	src/main/java/com/diagbot/web/ADataStrController.java
chengyao 4 gadi atpakaļ
vecāks
revīzija
80ead0e03c
100 mainītis faili ar 3898 papildinājumiem un 4383 dzēšanām
  1. 36 0
      doc/030.20201224v2.0.1/qc_initv2.0.1.sql
  2. 1 0
      src/main/java/com/diagbot/config/ResourceServerConfigurer.java
  3. 1 0
      src/main/java/com/diagbot/config/security/UrlAccessDecisionManager.java
  4. 40 0
      src/main/java/com/diagbot/dto/CaseScoreDTO.java
  5. 185 0
      src/main/java/com/diagbot/dto/QualityControlDTO.java
  6. 188 0
      src/main/java/com/diagbot/dto/QualityControlDeptDTO.java
  7. 139 0
      src/main/java/com/diagbot/dto/QualityControlNullDTO.java
  8. 7 7
      src/main/java/com/diagbot/entity/MedLisInfo.java
  9. 7 7
      src/main/java/com/diagbot/entity/MedPacsInfo.java
  10. 59 16
      src/main/java/com/diagbot/entity/QcType.java
  11. 1 5
      src/main/java/com/diagbot/facade/BasDoctorInfoFacade.java
  12. 1 0
      src/main/java/com/diagbot/facade/BehospitalInfoFacade.java
  13. 60 4
      src/main/java/com/diagbot/facade/ConsoleByDeptExportFacade.java
  14. 387 0
      src/main/java/com/diagbot/facade/ConsoleByDeptFacade.java
  15. 65 9
      src/main/java/com/diagbot/facade/ConsoleExportFacade.java
  16. 440 0
      src/main/java/com/diagbot/facade/ConsoleFacade.java
  17. 48 40
      src/main/java/com/diagbot/facade/data/ABasDeptInfoFacade.java
  18. 46 39
      src/main/java/com/diagbot/facade/data/ABasDoctorInfoFacade.java
  19. 89 86
      src/main/java/com/diagbot/facade/data/ABehospitalInfoFacade.java
  20. 63 57
      src/main/java/com/diagbot/facade/data/ADoctorAdviceFacade.java
  21. 45 39
      src/main/java/com/diagbot/facade/data/AHomeDiagnoseInfoFacade.java
  22. 53 42
      src/main/java/com/diagbot/facade/data/AHomeOperationInfoFacade.java
  23. 4 0
      src/main/java/com/diagbot/facade/data/AHomePageFacade.java
  24. 38 25
      src/main/java/com/diagbot/facade/data/AMedCrisisFacade.java
  25. 122 0
      src/main/java/com/diagbot/facade/data/AMedLisInfoFacade.java
  26. 34 34
      src/main/java/com/diagbot/facade/data/AMedLisResultFacade.java
  27. 124 0
      src/main/java/com/diagbot/facade/data/AMedPacsInfoFacade.java
  28. 33 33
      src/main/java/com/diagbot/facade/data/AMedPacsResultFacade.java
  29. 3 0
      src/main/java/com/diagbot/facade/data/AMedicalRecordContentFacade.java
  30. 13 6
      src/main/java/com/diagbot/facade/data/AMedicalRecordFacade.java
  31. 134 48
      src/main/java/com/diagbot/facade/data/ColumnFacade.java
  32. 0 152
      src/main/java/com/diagbot/facade/str/AStrAdmissionNoteFacade.java
  33. 0 162
      src/main/java/com/diagbot/facade/str/AStrBloodResultFacade.java
  34. 0 158
      src/main/java/com/diagbot/facade/str/AStrBloodTransfusionFacade.java
  35. 0 154
      src/main/java/com/diagbot/facade/str/AStrConsultationApplyFacade.java
  36. 0 155
      src/main/java/com/diagbot/facade/str/AStrConsultationNoteFacade.java
  37. 0 153
      src/main/java/com/diagbot/facade/str/AStrConsultationRecordFacade.java
  38. 0 159
      src/main/java/com/diagbot/facade/str/AStrConsultationResultFacade.java
  39. 0 150
      src/main/java/com/diagbot/facade/str/AStrCrisisNoteFacade.java
  40. 0 152
      src/main/java/com/diagbot/facade/str/AStrDeathDiscussionFacade.java
  41. 0 153
      src/main/java/com/diagbot/facade/str/AStrDeathNoteFacade.java
  42. 0 150
      src/main/java/com/diagbot/facade/str/AStrDifficultCaseFacade.java
  43. 0 150
      src/main/java/com/diagbot/facade/str/AStrFirstRecordFacade.java
  44. 0 149
      src/main/java/com/diagbot/facade/str/AStrIllCriticallyFacade.java
  45. 0 149
      src/main/java/com/diagbot/facade/str/AStrIllSeriouslFacade.java
  46. 0 153
      src/main/java/com/diagbot/facade/str/AStrLeaveHospitalFacade.java
  47. 0 154
      src/main/java/com/diagbot/facade/str/AStrOperativeFirstRecord.java
  48. 0 154
      src/main/java/com/diagbot/facade/str/AStrOperativeNoteFacade.java
  49. 0 151
      src/main/java/com/diagbot/facade/str/AStrPeriodConclusionFacade.java
  50. 0 152
      src/main/java/com/diagbot/facade/str/AStrPreoperativeDiscussionFacade.java
  51. 0 152
      src/main/java/com/diagbot/facade/str/AStrRescueNoteFacade.java
  52. 0 151
      src/main/java/com/diagbot/facade/str/AStrTransferInNoteFacade.java
  53. 0 149
      src/main/java/com/diagbot/facade/str/AStrTransferOutNoteFacade.java
  54. 0 152
      src/main/java/com/diagbot/facade/str/AStrWardRecordFacade.java
  55. 51 28
      src/main/java/com/diagbot/facade/str/BStrAdmissionNoteFacade.java
  56. 31 0
      src/main/java/com/diagbot/facade/str/BStrBloodResultFacade.java
  57. 33 2
      src/main/java/com/diagbot/facade/str/BStrBloodTransfusionFacade.java
  58. 31 1
      src/main/java/com/diagbot/facade/str/BStrConsultationApplyFacade.java
  59. 31 1
      src/main/java/com/diagbot/facade/str/BStrConsultationNoteFacade.java
  60. 31 1
      src/main/java/com/diagbot/facade/str/BStrConsultationRecordFacade.java
  61. 31 1
      src/main/java/com/diagbot/facade/str/BStrConsultationResultFacade.java
  62. 64 0
      src/main/java/com/diagbot/facade/str/BStrContentFacade.java
  63. 31 0
      src/main/java/com/diagbot/facade/str/BStrCrisisNoteFacade.java
  64. 31 1
      src/main/java/com/diagbot/facade/str/BStrDeathDiscussionFacade.java
  65. 31 1
      src/main/java/com/diagbot/facade/str/BStrDeathNoteFacade.java
  66. 31 0
      src/main/java/com/diagbot/facade/str/BStrDifficultCaseFacade.java
  67. 31 0
      src/main/java/com/diagbot/facade/str/BStrFirstRecordFacade.java
  68. 31 0
      src/main/java/com/diagbot/facade/str/BStrIllCriticallyFacade.java
  69. 34 3
      src/main/java/com/diagbot/facade/str/BStrIllSeriouslFacade.java
  70. 31 0
      src/main/java/com/diagbot/facade/str/BStrInformedConsentFacade.java
  71. 31 1
      src/main/java/com/diagbot/facade/str/BStrLeaveHospitalFacade.java
  72. 31 1
      src/main/java/com/diagbot/facade/str/BStrOperativeFirstRecordFacade.java
  73. 31 1
      src/main/java/com/diagbot/facade/str/BStrOperativeNoteFacade.java
  74. 31 0
      src/main/java/com/diagbot/facade/str/BStrPeriodConclusionFacade.java
  75. 31 1
      src/main/java/com/diagbot/facade/str/BStrPreoperativeDiscussionFacade.java
  76. 31 0
      src/main/java/com/diagbot/facade/str/BStrRescueNoteFacade.java
  77. 31 0
      src/main/java/com/diagbot/facade/str/BStrTalkInformFacade.java
  78. 31 0
      src/main/java/com/diagbot/facade/str/BStrTransferInNoteFacade.java
  79. 31 0
      src/main/java/com/diagbot/facade/str/BStrTransferOutNoteFacade.java
  80. 31 1
      src/main/java/com/diagbot/facade/str/BStrWardRecordFacade.java
  81. 59 0
      src/main/java/com/diagbot/mapper/BehospitalInfoMapper.java
  82. 2 0
      src/main/java/com/diagbot/mapper/MedLisInfoMapper.java
  83. 1 3
      src/main/java/com/diagbot/mapper/MedPacsInfoMapper.java
  84. 61 0
      src/main/java/com/diagbot/service/BehospitalInfoService.java
  85. 78 0
      src/main/java/com/diagbot/service/impl/BehospitalInfoServiceImpl.java
  86. 0 6
      src/main/java/com/diagbot/service/impl/MedLisInfoServiceImpl.java
  87. 0 1
      src/main/java/com/diagbot/service/impl/MedPacsInfoServiceImpl.java
  88. 49 50
      src/main/java/com/diagbot/util/ColumnCacheUtil.java
  89. 4 0
      src/main/java/com/diagbot/util/ExcelUtils.java
  90. 112 0
      src/main/java/com/diagbot/vo/CaseScoreVO.java
  91. 4 6
      src/main/java/com/diagbot/vo/data/ADeleteFlagVO.java
  92. 71 0
      src/main/java/com/diagbot/vo/data/AMedLisInfoVO.java
  93. 86 0
      src/main/java/com/diagbot/vo/data/AMedPacsInfoVO.java
  94. 0 1
      src/main/java/com/diagbot/vo/data/BasDoctorInfoVO.java
  95. 36 0
      src/main/java/com/diagbot/vo/str/StrContentVO.java
  96. 3 2
      src/main/java/com/diagbot/vo/str/StrInformedConsentVO.java
  97. 2 1
      src/main/java/com/diagbot/vo/str/StrTalkInformVO.java
  98. 0 255
      src/main/java/com/diagbot/web/ADataStrController.java
  99. 0 3
      src/main/java/com/diagbot/web/BasDoctorInfoController.java
  100. 0 0
      src/main/java/com/diagbot/web/ConsoleByDeptController.java

+ 36 - 0
doc/030.20201224v2.0.1/qc_initv2.0.1.sql

@@ -0,0 +1,36 @@
+use `qc`;
+/**
+注意:
+1、中间表的新增或修改需要按照实际的唯一字段来进行操作
+例如:新增sys_role_menu中数据需要sys_menu中指定的id、menu_id,否则可能会失效!!!
+2、按照顺序执行
+ */
+ --全院
+INSERT INTO `sys_menu` ( `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `name`, `parent_id`, `code`, `show_status`, `maintain_status`, `order_no`, `remark`) VALUES ( 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '病历质控报表', '17', 'YH-ZKK-BLZK_XQ', '1', '1', '18', '用户-质控科-病历质控报表');
+--开放菜单
+INSERT INTO `sys_role_menu` ( `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `role_id`, `menu_id`, `remark`) VALUES ( 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '-1', '50', NULL);
+INSERT INTO `sys_role_menu` ( `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `role_id`, `menu_id`, `remark`) VALUES ( 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '50', NULL);
+
+--开添加权限
+INSERT INTO `sys_permission` ( `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `name`, `code`, `permissionUrl`, `method`, `descritpion`, `remark`) VALUES ( 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '病历质控报表', '', '/console/qualityControl', 'ALL', '病历质控报表', NULL);
+INSERT INTO `sys_role_permission` ( `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `role_id`, `permission_id`, `remark`) VALUES ( 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '-1', '125', NULL);
+INSERT INTO `sys_role_permission` ( `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `role_id`, `permission_id`, `remark`) VALUES ( 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '1', '125', NULL);
+
+--开放权限报表
+INSERT INTO `sys_menu_permission` ( `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `menu_id`, `permission_id`, `order_nu`, `remark`) VALUES ( 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '50', '125', NULL, '病历质控报表');
+
+--科室
+INSERT INTO `sys_menu` ( `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `name`, `parent_id`, `code`, `show_status`, `maintain_status`, `order_no`, `remark`) VALUES ( 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '病历质控报表', '18', 'YH-KSZR-BLZK_XQ', '1', '1', '13', '用户-科室主任-病历质控报表-详情');
+--开放菜单
+INSERT INTO .`sys_role_menu` ( `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `role_id`, `menu_id`, `remark`) VALUES ( 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '-1', '53', NULL);
+INSERT INTO .`sys_role_menu` (, `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `role_id`, `menu_id`, `remark`) VALUES ( 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '53', NULL);
+
+--开添加权限
+INSERT INTO .`sys_permission` ( `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `name`, `code`, `permissionUrl`, `method`, `descritpion`, `remark`) VALUES ( 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '病历质控报表', '', '/consoleByDept/qualityControlByDept', 'ALL', '病历质控报表(科室)', NULL);
+INSERT INTO `sys_role_permission` ( `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `role_id`, `permission_id`, `remark`) VALUES ( 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '-1', '126', NULL);
+INSERT INTO `sys_role_permission` ( `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `role_id`, `permission_id`, `remark`) VALUES ( 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '2', '126', NULL);
+
+--开放权限报表
+INSERT INTO `sys_menu_permission` ( `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `menu_id`, `permission_id`, `order_nu`, `remark`) VALUES ( 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '53', '126', NULL, '病历质控报表-科室');
+
+

+ 1 - 0
src/main/java/com/diagbot/config/ResourceServerConfigurer.java

@@ -189,6 +189,7 @@ public class ResourceServerConfigurer extends ResourceServerConfigurerAdapter {
                 .antMatchers("/qc/data_str/sendPreoperativeDiscussion").permitAll()
                 .antMatchers("/qc/data_str/sendTalkInform").permitAll()
                 .antMatchers("/qc/data_str/sendInformedConsent").permitAll()
+                .antMatchers("/qc/data_str/sendContent").permitAll()
                 .antMatchers("/qc/doctoradvice/getPage").permitAll()
                 .antMatchers("/qc/medPacsInfo/getCheckPage").permitAll()
                 .antMatchers("/qc/medLisInfo/getExaminePage").permitAll()

+ 1 - 0
src/main/java/com/diagbot/config/security/UrlAccessDecisionManager.java

@@ -233,6 +233,7 @@ public class UrlAccessDecisionManager implements AccessDecisionManager {
                 || matchers("/qc/data_str/sendPreoperativeDiscussion", request)
                 || matchers("/qc/data_str/sendTalkInform", request)
                 || matchers("/qc/data_str/sendInformedConsent", request)
+                || matchers("/qc/data_str/sendContent", request)
                 || matchers("/qc/doctoradvice/getPage", request)
                 || matchers("/qc/medPacsInfo/getCheckPage", request)
                 || matchers("/qc/medLisInfo/getExaminePage", request)

+ 40 - 0
src/main/java/com/diagbot/dto/CaseScoreDTO.java

@@ -0,0 +1,40 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * @Description:
+ * @author: zhoutg
+ * @time: 2020/4/14 13:07
+ */
+@Getter
+@Setter
+public class CaseScoreDTO {
+
+    //得分
+    private Double score;
+    //提示信息
+    private String msg;
+    //提示信息
+    private String info;
+    //单项否决
+    private String isReject;
+    //模块名称
+    private String modelName;
+    //模块id
+    private String modelId;
+    private String behospitalCode;
+    //模块ID
+    private Long casesId;
+    //模块分数
+    private Double casesScore;
+    // 条目ID
+    private Long casesEntryId;
+
+}

+ 185 - 0
src/main/java/com/diagbot/dto/QualityControlDTO.java

@@ -0,0 +1,185 @@
+package com.diagbot.dto;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * @Description:病历质控报表返回结构
+ * @Author:cy
+ * @time: 2021/1/20 13:32
+ */
+@Getter
+@Setter
+public class QualityControlDTO {
+
+    /**
+     * 姓名
+     */
+    @Excel(name = "病人姓名", width = 12, orderNum = "1")
+    private String name;
+
+    /**
+     * 病人住院ID
+     */
+    @Excel(name = "住院号", width = 16, orderNum = "2")
+    private String behospitalCode;
+
+    /**
+     * 主管医生id
+     */
+    private String doctorId;
+
+    /**
+     * 年龄
+     */
+    private String age;
+
+    /**
+     * 医生姓名
+     */
+    @Excel(name = "主治医生", width = 12, orderNum = "3")
+    private String doctorName;
+
+    /**
+     * 科室id(科室编码)
+     */
+    private String deptId;
+    /**
+     * 科室名称
+     */
+    @Excel(name = "科室名称", width = 16, orderNum = "4")
+    private String deptName;
+
+    /**
+     * 入院时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private Date behospitalDate;
+
+    /**
+     * 出院时间
+     */
+    @Excel(name = "出院时间", width = 25, orderNum = "5", exportFormat = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private Date leaveHospitalDate;
+
+    /**
+     * 病案首页--
+     */
+    @Excel(name = "病案首页", width = 30, orderNum = "6")
+    private String medHomePage = "无缺陷";
+    /**
+     * 病案首页扣分
+     */
+    @Excel(name = "扣分",width = 12, orderNum = "7")
+    private Double medHomePageScore= 0d;
+
+    /**
+     * 入院记录--
+     */
+    @Excel(name = "入院记录",width = 30, orderNum = "8")
+    private String admissionNote = "无缺陷";
+
+    /**
+     * 入院记录扣分
+     */
+    @Excel(name = "扣分",width = 12, orderNum = "9")
+    private Double admissionNoteScore= 0d;
+
+    /**
+     * 首次病程录--
+     */
+    @Excel(name = "首次病程录",width = 30, orderNum = "10")
+    private String firstCourseNote = "无缺陷";
+
+    /**
+     * 首次病程录扣分
+     */
+    @Excel(name = "扣分",width = 12, orderNum = "11")
+    private Double firstCourseNoteScore= 0d;
+
+    /**
+     * 病程记录--
+     */
+    @Excel(name = "病程记录",width = 30, orderNum = "12")
+    private String courseRecord = "无缺陷";
+
+    /**
+     * 病程记录扣分
+     */
+    @Excel(name = "扣分", width = 12,orderNum = "13")
+    private Double courseRecordScore= 0d;
+
+    /**
+     * 手术信息--
+     */
+    @Excel(name = "手术信息",width = 30, orderNum = "14")
+    private String  operationInfo = "无缺陷";
+
+    /**
+     * 手术信息扣分
+     */
+    @Excel(name = "扣分",width = 12, orderNum = "15")
+    private Double operationInfoScore= 0d;
+
+    /**
+     * 出院记录--
+     */
+    @Excel(name = "出院记录",width = 30, orderNum = "16")
+    private String  dischargeNote = "无缺陷";
+    /**
+     * 出院记录扣分
+     */
+    @Excel(name = "扣分",width = 12, orderNum = "17")
+    private Double  dischargeNoteScore= 0d;
+
+    /**
+     * 医嘱单--
+     */
+    @Excel(name = "医嘱单",width = 30, orderNum = "18")
+    private String  docAdviceNote = "无缺陷";
+    /**
+     * 医嘱单扣分
+     */
+    @Excel(name = "扣分",width = 12, orderNum = "19")
+    private Double docAdviceNoteScore= 0d;
+
+    /**
+     * 其他
+     */
+    @Excel(name = "其他",width = 30, orderNum = "20")
+    private String  otherCase = "无缺陷";
+    /**
+     * 其他扣分
+     */
+    @Excel(name = "扣分",width = 12, orderNum = "21")
+    private Double otherCaseScore= 0d;
+
+    /**
+     * 总分
+     */
+    @Excel(name = "总分",width = 12, orderNum = "22")
+    private Double  totalScore= 0d;
+    /**
+     * 病历等级
+     */
+    @Excel(name = "病历等级",width = 12, orderNum = "23")
+    private String level;
+
+    /**
+     * 病案首页核查人
+     */
+    @Excel(name = "首页检查者", width = 12,orderNum = "24")
+    private String  mrName;
+    /**
+     * 病历核查人
+     */
+    @Excel(name = "病历检查者",width = 12, orderNum = "25")
+    private String chName;
+
+}

+ 188 - 0
src/main/java/com/diagbot/dto/QualityControlDeptDTO.java

@@ -0,0 +1,188 @@
+package com.diagbot.dto;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.Date;
+
+/**
+ * @Description:病历质控报表返回结构
+ * @Author:cy
+ * @time: 2021/1/20 13:32
+ */
+@Getter
+@Setter
+public class QualityControlDeptDTO {
+
+    /**
+     * 姓名
+     */
+    @Excel(name = "病人姓名", width = 12, orderNum = "1")
+    private String name;
+
+    /**
+     * 病人住院ID
+     */
+    @Excel(name = "住院号", width = 16, orderNum = "2")
+    private String behospitalCode;
+
+    /**
+     * 主管医生id
+     */
+    private String doctorId;
+
+    /**
+     * 年龄
+     */
+    private String age;
+
+    /**
+     * 医生姓名
+     */
+    @Excel(name = "主治医生", width = 12, orderNum = "3")
+    private String doctorName;
+
+    /**
+     * 科室id(科室编码)
+     */
+    private String deptId;
+    /**
+     * 科室名称
+     */
+    @Excel(name = "科室名称", width = 16, orderNum = "4")
+    private String deptName;
+
+    /**
+     * 入院时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private Date behospitalDate;
+
+    /**
+     * 出院时间
+     */
+    @Excel(name = "出院时间", width = 25, orderNum = "5", exportFormat = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private Date leaveHospitalDate;
+
+    /**
+     * 病案首页--
+     */
+    @Excel(name = "病案首页", width = 30, orderNum = "6")
+    private String medHomePage = "无缺陷";
+    /**
+     * 病案首页扣分
+     */
+    @Excel(name = "扣分",width = 12, orderNum = "7")
+    private Double medHomePageScore= 0d;
+
+    /**
+     * 入院记录--
+     */
+    @Excel(name = "入院记录",width = 30, orderNum = "8")
+    private String admissionNote = "无缺陷";
+
+    /**
+     * 入院记录扣分
+     */
+    @Excel(name = "扣分",width = 12, orderNum = "9")
+    private Double admissionNoteScore= 0d;
+
+
+    /**
+     * 首次病程录--
+     */
+    @Excel(name = "首次病程录",width = 30, orderNum = "10")
+    private String firstCourseNote = "无缺陷";
+
+    /**
+     * 首次病程录扣分
+     */
+    @Excel(name = "扣分",width = 12, orderNum = "11")
+    private Double firstCourseNoteScore= 0d;
+
+    /**
+     * 病程记录--
+     */
+    @Excel(name = "病程记录",width = 30, orderNum = "12")
+    private String courseRecord = "无缺陷";
+
+    /**
+     * 病程记录扣分
+     */
+    @Excel(name = "扣分", width = 12,orderNum = "13")
+    private Double courseRecordScore= 0d;
+
+    /**
+     * 手术信息--
+     */
+    @Excel(name = "手术信息",width = 30, orderNum = "14")
+    private String  operationInfo = "无缺陷";
+
+    /**
+     * 手术信息扣分
+     */
+    @Excel(name = "扣分",width = 12, orderNum = "15")
+    private Double operationInfoScore= 0d;
+
+    /**
+     * 出院记录--
+     */
+    @Excel(name = "出院记录",width = 30, orderNum = "16")
+    private String  dischargeNote = "无缺陷";
+    /**
+     * 出院记录扣分
+     */
+    @Excel(name = "扣分",width = 12, orderNum = "17")
+    private Double  dischargeNoteScore= 0d;
+
+    /**
+     * 医嘱单--
+     */
+    @Excel(name = "医嘱单",width = 30, orderNum = "18")
+    private String  docAdviceNote = "无缺陷";
+    /**
+     * 医嘱单扣分
+     */
+    @Excel(name = "扣分",width = 12, orderNum = "19")
+    private Double docAdviceNoteScore= 0d;
+
+    /**
+     * 其他
+     */
+    @Excel(name = "其他",width = 30, orderNum = "20")
+    private String  otherCase = "无缺陷";
+    /**
+     * 其他扣分
+     */
+    @Excel(name = "扣分",width = 12, orderNum = "21")
+    private Double otherCaseScore= 0d;
+
+    /**
+     * 总分
+     */
+    @Excel(name = "总分",width = 12, orderNum = "22")
+    private Double  totalScore= 0d;
+    /**
+     * 病历等级
+     */
+    @Excel(name = "病历等级",width = 12, orderNum = "23")
+    private String level;
+
+    /**
+     * 病案首页核查人
+     */
+    @Excel(name = "首页检查者", width = 12,orderNum = "24")
+    private String  mrName;
+    /**
+     * 病历核查人
+     */
+    @Excel(name = "病历检查者",width = 12, orderNum = "25")
+    private String chName;
+
+
+
+
+}

+ 139 - 0
src/main/java/com/diagbot/dto/QualityControlNullDTO.java

@@ -0,0 +1,139 @@
+package com.diagbot.dto;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * @Description:病历质控报表返回结构
+ * @Author:cy
+ * @time: 2021/1/20 13:32
+ */
+@Getter
+@Setter
+public class QualityControlNullDTO {
+
+
+
+    /**
+     * 病案首页--
+     */
+
+    private String medHomePage;
+
+    /**
+     * 入院记录--
+     */
+
+    private String admissionNote;
+
+
+
+    /**
+     * 首次病程录--
+     */
+
+    private String firstCourseNote;
+
+
+    /**
+     * 病程记录--
+     */
+
+    private String courseRecord;
+
+
+    /**
+     * 手术信息--
+     */
+
+    private String  operationInfo;
+
+
+    /**
+     * 出院记录--
+     */
+
+    private String  dischargeNote;
+
+    /**
+     * 医嘱单--
+     */
+
+    private String  docAdviceNote;
+
+    /**
+     * 其他
+     */
+
+    private String  otherCase;
+
+    /**
+     * 病案首页扣分
+     */
+    @Excel(name = "扣分",width = 12, orderNum = "7")
+    private Double medHomePageScore;
+
+
+    /**
+     * 入院记录扣分
+     */
+    @Excel(name = "扣分",width = 12, orderNum = "9")
+    private Double admissionNoteScore;
+
+
+
+    /**
+     * 首次病程录扣分
+     */
+    @Excel(name = "扣分",width = 12, orderNum = "11")
+    private Double firstCourseNoteScore;
+
+
+    /**
+     * 病程记录扣分
+     */
+    @Excel(name = "扣分", width = 12,orderNum = "13")
+    private Double courseRecordScore;
+
+
+    /**
+     * 手术信息扣分
+     */
+    @Excel(name = "扣分",width = 12, orderNum = "15")
+    private Double operationInfoScore;
+
+
+    /**
+     * 出院记录扣分
+     */
+    @Excel(name = "扣分",width = 12, orderNum = "17")
+    private Double  dischargeNoteScore;
+
+
+    /**
+     * 医嘱单扣分
+     */
+    @Excel(name = "扣分",width = 12, orderNum = "19")
+    private Double docAdviceNoteScore;
+
+
+    /**
+     * 其他扣分
+     */
+    @Excel(name = "扣分",width = 12, orderNum = "21")
+    private Double otherCaseScore;
+
+    /**
+     * 总分
+     */
+    @Excel(name = "总分",width = 12, orderNum = "22")
+    private Double  totalScore;
+
+
+
+}

+ 7 - 7
src/main/java/com/diagbot/entity/MedLisInfo.java

@@ -1,7 +1,7 @@
 package com.diagbot.entity;
 
-import java.time.LocalDateTime;
 import java.io.Serializable;
+import java.util.Date;
 
 /**
  * <p>
@@ -88,12 +88,12 @@ public class MedLisInfo implements Serializable {
     /**
      * 记录创建时间
      */
-    private LocalDateTime gmtCreate;
+    private Date gmtCreate;
 
     /**
      * 记录修改时间,如果时间是1970年则表示纪录未修改
      */
-    private LocalDateTime gmtModified;
+    private Date gmtModified;
 
     /**
      * 创建人,0表示无创建人值
@@ -203,18 +203,18 @@ public class MedLisInfo implements Serializable {
     public void setIsDeleted(String isDeleted) {
         this.isDeleted = isDeleted;
     }
-    public LocalDateTime getGmtCreate() {
+    public Date getGmtCreate() {
         return gmtCreate;
     }
 
-    public void setGmtCreate(LocalDateTime gmtCreate) {
+    public void setGmtCreate(Date gmtCreate) {
         this.gmtCreate = gmtCreate;
     }
-    public LocalDateTime getGmtModified() {
+    public Date getGmtModified() {
         return gmtModified;
     }
 
-    public void setGmtModified(LocalDateTime gmtModified) {
+    public void setGmtModified(Date gmtModified) {
         this.gmtModified = gmtModified;
     }
     public String getCreator() {

+ 7 - 7
src/main/java/com/diagbot/entity/MedPacsInfo.java

@@ -1,7 +1,7 @@
 package com.diagbot.entity;
 
-import java.time.LocalDateTime;
 import java.io.Serializable;
+import java.util.Date;
 
 /**
  * <p>
@@ -103,12 +103,12 @@ public class MedPacsInfo implements Serializable {
     /**
      * 记录创建时间
      */
-    private LocalDateTime gmtCreate;
+    private Date gmtCreate;
 
     /**
      * 记录修改时间,如果时间是1970年则表示纪录未修改
      */
-    private LocalDateTime gmtModified;
+    private Date gmtModified;
 
     /**
      * 创建人,0表示无创建人值
@@ -239,18 +239,18 @@ public class MedPacsInfo implements Serializable {
     public void setIsDeleted(String isDeleted) {
         this.isDeleted = isDeleted;
     }
-    public LocalDateTime getGmtCreate() {
+    public Date getGmtCreate() {
         return gmtCreate;
     }
 
-    public void setGmtCreate(LocalDateTime gmtCreate) {
+    public void setGmtCreate(Date gmtCreate) {
         this.gmtCreate = gmtCreate;
     }
-    public LocalDateTime getGmtModified() {
+    public Date getGmtModified() {
         return gmtModified;
     }
 
-    public void setGmtModified(LocalDateTime gmtModified) {
+    public void setGmtModified(Date gmtModified) {
         this.gmtModified = gmtModified;
     }
     public String getCreator() {

+ 59 - 16
src/main/java/com/diagbot/entity/QcType.java

@@ -37,7 +37,27 @@ public class QcType implements Serializable {
     /**
      * 默认模版是否开启(0-否 1-是)
      */
-    private Long defaultModule;
+    private Integer defaultModule;
+
+    /**
+     * 父类质控id
+     */
+    private String parentTypeId;
+
+    /**
+     * 性别
+     */
+    private String sex;
+
+    /**
+     * 科室ID
+     */
+    private String behDeptId;
+
+    /**
+     * 科室名称
+     */
+    private String behDeptName;
 
     /**
      * 备注
@@ -76,7 +96,6 @@ public class QcType implements Serializable {
     public void setId(Long id) {
         this.id = id;
     }
-
     public Long getHospitalId() {
         return hospitalId;
     }
@@ -84,7 +103,6 @@ public class QcType implements Serializable {
     public void setHospitalId(Long hospitalId) {
         this.hospitalId = hospitalId;
     }
-
     public String getName() {
         return name;
     }
@@ -92,7 +110,41 @@ public class QcType implements Serializable {
     public void setName(String name) {
         this.name = name;
     }
+    public Integer getDefaultModule() {
+        return defaultModule;
+    }
 
+    public void setDefaultModule(Integer defaultModule) {
+        this.defaultModule = defaultModule;
+    }
+    public String getParentTypeId() {
+        return parentTypeId;
+    }
+
+    public void setParentTypeId(String parentTypeId) {
+        this.parentTypeId = parentTypeId;
+    }
+    public String getSex() {
+        return sex;
+    }
+
+    public void setSex(String sex) {
+        this.sex = sex;
+    }
+    public String getBehDeptId() {
+        return behDeptId;
+    }
+
+    public void setBehDeptId(String behDeptId) {
+        this.behDeptId = behDeptId;
+    }
+    public String getBehDeptName() {
+        return behDeptName;
+    }
+
+    public void setBehDeptName(String behDeptName) {
+        this.behDeptName = behDeptName;
+    }
     public String getRemark() {
         return remark;
     }
@@ -100,7 +152,6 @@ public class QcType implements Serializable {
     public void setRemark(String remark) {
         this.remark = remark;
     }
-
     public String getIsDeleted() {
         return isDeleted;
     }
@@ -108,7 +159,6 @@ public class QcType implements Serializable {
     public void setIsDeleted(String isDeleted) {
         this.isDeleted = isDeleted;
     }
-
     public Date getGmtCreate() {
         return gmtCreate;
     }
@@ -116,7 +166,6 @@ public class QcType implements Serializable {
     public void setGmtCreate(Date gmtCreate) {
         this.gmtCreate = gmtCreate;
     }
-
     public Date getGmtModified() {
         return gmtModified;
     }
@@ -124,7 +173,6 @@ public class QcType implements Serializable {
     public void setGmtModified(Date gmtModified) {
         this.gmtModified = gmtModified;
     }
-
     public String getCreator() {
         return creator;
     }
@@ -132,7 +180,6 @@ public class QcType implements Serializable {
     public void setCreator(String creator) {
         this.creator = creator;
     }
-
     public String getModifier() {
         return modifier;
     }
@@ -141,14 +188,6 @@ public class QcType implements Serializable {
         this.modifier = modifier;
     }
 
-    public Long getDefaultModule() {
-        return defaultModule;
-    }
-
-    public void setDefaultModule(Long defaultModule) {
-        this.defaultModule = defaultModule;
-    }
-
     @Override
     public String toString() {
         return "QcType{" +
@@ -156,6 +195,10 @@ public class QcType implements Serializable {
                 ", hospitalId=" + hospitalId +
                 ", name=" + name +
                 ", defaultModule=" + defaultModule +
+                ", parentTypeId=" + parentTypeId +
+                ", sex=" + sex +
+                ", behDeptId=" + behDeptId +
+                ", behDeptName=" + behDeptName +
                 ", remark=" + remark +
                 ", isDeleted=" + isDeleted +
                 ", gmtCreate=" + gmtCreate +

+ 1 - 5
src/main/java/com/diagbot/facade/BasDoctorInfoFacade.java

@@ -1,16 +1,12 @@
 package com.diagbot.facade;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.diagbot.dto.BasDeptInfoDTO;
 import com.diagbot.entity.*;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.service.impl.BasDoctorInfoServiceImpl;
-import com.diagbot.util.BeanUtil;
 import com.diagbot.util.ListUtil;
 import com.diagbot.util.SysUserUtils;
-import com.diagbot.vo.BasDeptInfoVO;
 import com.diagbot.vo.data.BasDoctorInfoVO;
-import io.swagger.models.auth.In;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
@@ -70,7 +66,7 @@ public class BasDoctorInfoFacade extends BasDoctorInfoServiceImpl {
                 QueryWrapper<BehospitalInfo> QueryWrapper = new QueryWrapper<>();
                 QueryWrapper.eq("hospital_id",basDoctorInfoVO.getHospitalId());
                 QueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey());
-                QueryWrapper.eq("is_placefile", basDoctorInfoVO.getIsPlacefile());
+                //QueryWrapper.eq("is_placefile", basDoctorInfoVO.getIsPlacefile());
                 QueryWrapper.in("beh_dept_id",deptSetInfo);
 
                 if(StringUtils.isNotEmpty(basDoctorInfoVO.getInputStr())){

+ 1 - 0
src/main/java/com/diagbot/facade/BehospitalInfoFacade.java

@@ -1603,6 +1603,7 @@ public class BehospitalInfoFacade extends BehospitalInfoServiceImpl {
                 = sysHospitalSetFacade.getOne(new QueryWrapper<SysHospitalSet>()
                         .eq("is_deleted", IsDeleteEnum.N.getKey())
                         .eq("hospital_id", analyzeRunVO.getHospitalId())
+                        .eq("code", "score_type")
                 , false);
         if (null != sysHospitalSet && sysHospitalSet.getValue().equals("1")) {
             //百分制

+ 60 - 4
src/main/java/com/diagbot/facade/ConsoleByDeptExportFacade.java

@@ -3,12 +3,14 @@ package com.diagbot.facade;
 import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.metadata.OrderItem;
 import com.diagbot.dto.*;
 import com.diagbot.entity.SysHospitalSet;
 import com.diagbot.exception.CommonErrorCode;
 import com.diagbot.exception.CommonException;
 import com.diagbot.util.*;
 import com.diagbot.vo.*;
+import com.fasterxml.jackson.databind.ObjectMapper;
 import com.google.common.collect.Lists;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -16,10 +18,7 @@ import org.springframework.stereotype.Component;
 
 import javax.servlet.http.HttpServletResponse;
 import java.math.BigDecimal;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Date;
-import java.util.List;
+import java.util.*;
 
 /**
  * @Description: 报表导出装饰层
@@ -377,6 +376,63 @@ public class ConsoleByDeptExportFacade {
         ExcelUtils.exportExcel(records, null, "sheet1", MedicalDeptDTO.class, fileName, response, 15.8f);
     }
 
+    /**
+     * 病历质控报表-科室-导出
+     *
+     * @param behospitalPageVO
+     * @return
+     */
+    public void qualityControlExportByDept(HttpServletResponse response, BehospitalPageVO behospitalPageVO) {
+        behospitalPageVO.setCurrent(1L);
+        behospitalPageVO.setSize(Long.MAX_VALUE);
+        behospitalPageVO.setSearchCount(false);
+        Date startDate = behospitalPageVO.getLeaveHosDateStart();
+        Date endDate = behospitalPageVO.getLeaveHosDateEnd();
+      //  orderMethod(behospitalPageVO);
+        //时间间隔30天
+        long interval = 30 * 24l * 60l * 60l * 1000l;
+        if (endDate.getTime() < startDate.getTime()) {
+            throw new CommonException(CommonErrorCode.PARAM_ERROR, "截止时间不能小于起始时间");
+        }
+        if (endDate.getTime() - startDate.getTime() > interval) {
+            throw new CommonException(CommonErrorCode.PARAM_ERROR, "统计区间不能大于30天");
+        }
+        String  fileName = "病历质控报表.xls";
+        IPage<QualityControlDeptDTO> records = consoleByDeptFacade.qualityControlByDept(behospitalPageVO);
+        ExcelUtils.exportExcel(records.getRecords(), "病历质控报表", "sheet1", QualityControlDeptDTO.class, fileName, response, 26.8f);
+    }
+
+    static void orderMethod(BehospitalPageVO behospitalPageVO){
+        List orders = behospitalPageVO.getOrders();
+        Boolean flag = false;
+        List<OrderItem> itemList = new ArrayList<>();
+        List<OrderItem> targetItemList = new ArrayList<>();
+        for (Object order : orders) {
+            ObjectMapper objectMapper = new ObjectMapper();
+            OrderItem orderName = objectMapper.convertValue(order, OrderItem.class);
+            itemList.add(orderName);
+            if(!(orderName.getColumn().equals("deptName")||orderName.getColumn().equals("doctorName"))){
+                flag = true;
+            }
+        }
+        //科室、医生作为第一升序排列,传入排序随后 配合excel注解属性mergeVertical处理科室合并
+            OrderItem orderDept = new OrderItem();
+            orderDept.setAsc(true);
+            orderDept.setColumn("deptName");
+            targetItemList.add(orderDept);
+            OrderItem orderDoctor = new OrderItem();
+            orderDoctor.setAsc(true);
+            orderDoctor.setColumn("doctorName");
+            targetItemList.add(orderDoctor);
+        if(flag){
+            if(itemList.size()==1){
+                targetItemList.add(itemList.get(0));
+            }
+        }
+        behospitalPageVO.setOrders(targetItemList);
+
+    };
+
 
 
     /**

+ 387 - 0
src/main/java/com/diagbot/facade/ConsoleByDeptFacade.java

@@ -6,9 +6,12 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.diagbot.dto.*;
 import com.diagbot.entity.QcCasesEntry;
 import com.diagbot.entity.SysHospitalSet;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
 import com.diagbot.util.*;
 import com.diagbot.vo.*;
 import com.google.common.collect.Lists;
+import org.apache.commons.lang3.StringUtils;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
@@ -1052,6 +1055,51 @@ public class ConsoleByDeptFacade {
         return medicalCheck;
     }
 
+    /**
+     * 病历质控报表-科室
+     *
+     * @param behospitalPageVO
+     * @return
+     */
+    public IPage<QualityControlDeptDTO> qualityControlByDept(@Param("filterVO")  BehospitalPageVO behospitalPageVO) {
+        behospitalPageSet(behospitalPageVO);
+        IPage<QualityControlDeptDTO> records = behospitalInfoFacade.qualityControlByDept(behospitalPageVO);
+        List<QualityControlDeptDTO> qualityControlDTOs = records.getRecords();
+        CaseScoreVO caseScoreVO = new CaseScoreVO();
+        BeanUtil.copyProperties(behospitalPageVO,caseScoreVO);
+        List<CaseScoreDTO>caseScoreDTOS= behospitalInfoFacade.getQualityCaseSorce(caseScoreVO);
+        if(ListUtil.isNotEmpty(qualityControlDTOs)){
+            qualityControlDTOs.forEach(qualityControlDTO->{
+                if(ListUtil.isNotEmpty(caseScoreDTOS)){
+                    AlgorithmVO algorithmVO = new AlgorithmVO();
+                    BeanUtil.copyProperties(behospitalPageVO,algorithmVO);
+                    algorithmVO.setType(0);
+                    List<QcResultAlgVO> qcResultAlgVOList = new ArrayList<QcResultAlgVO>();
+                    for (CaseScoreDTO caseScoreDTO : caseScoreDTOS) {
+                        if (StringUtils.isNotEmpty(qualityControlDTO.getBehospitalCode())&&
+                                StringUtils.isNotEmpty(caseScoreDTO.getBehospitalCode())&&
+                                qualityControlDTO.getBehospitalCode().equals(caseScoreDTO.getBehospitalCode())) {
+                            QcResultAlgVO qcResultAlgVO = new QcResultAlgVO();
+                            BeanUtil.copyProperties(caseScoreDTO,qcResultAlgVO);
+                            qcResultAlgVO.setIsReject(Integer.valueOf(caseScoreDTO.getIsReject()));
+                            qcResultAlgVO.setScore(new BigDecimal(caseScoreDTO.getScore()));
+                            qcResultAlgVO.setCasesScore(new BigDecimal(caseScoreDTO.getCasesScore()));
+                            qcResultAlgVOList.add(qcResultAlgVO);
+                        }
+                    }
+                    algorithmVO.setType(0);
+                    algorithmVO.setQcResultAlgVOList(qcResultAlgVOList);
+                    getScoreForCx(algorithmVO,qualityControlDTO);
+                }
+                if(qualityControlDTO.getLevel().equals("未评分")){
+                    QualityControlNullDTO qualityControlNullDTO = new QualityControlNullDTO();
+                    BeanUtil.copyProperties(qualityControlNullDTO,qualityControlDTO);
+                }
+            });
+        };
+        return records;
+    }
+
 
     /**
      * 未整改病历统计-科室
@@ -1282,6 +1330,345 @@ public class ConsoleByDeptFacade {
         return unModifyMRDTO;
     }
 
+    private void behospitalPageSet(BehospitalPageVO behospitalPageVO) {
+        //入参验证
+        //入院时间
+        if (null != behospitalPageVO && null != behospitalPageVO.getBehosDateStart()) {
+            behospitalPageVO.setBehosDateStart(DateUtil.getFirstTimeOfDay(behospitalPageVO.getBehosDateStart()));
+        }
+        if (null != behospitalPageVO && null != behospitalPageVO.getBehosDateEnd()) {
+            behospitalPageVO.setBehosDateEnd(DateUtil.getFirstTimeOfDay(DateUtil.addDay(behospitalPageVO.getBehosDateEnd(), 1)));
+        }
+        if (null != behospitalPageVO && null != behospitalPageVO.getBehosDateStart() && null != behospitalPageVO.getBehosDateEnd()) {
+            if (DateUtil.after(behospitalPageVO.getBehosDateStart(), behospitalPageVO.getBehosDateEnd())) {
+                throw new CommonException(CommonErrorCode.PARAM_IS_ERROR, "入院时间的开始时间必须小于结束时间!");
+            }
+        }
+        //出院时间
+        if (null != behospitalPageVO && null != behospitalPageVO.getLeaveHosDateStart()) {
+            behospitalPageVO.setLeaveHosDateStart(DateUtil.getFirstTimeOfDay(behospitalPageVO.getLeaveHosDateStart()));
+        }
+        if (null != behospitalPageVO && null != behospitalPageVO.getLeaveHosDateEnd()) {
+            behospitalPageVO.setLeaveHosDateEnd(DateUtil.getFirstTimeOfDay(DateUtil.addDay(behospitalPageVO.getLeaveHosDateEnd(), 1)));
+        }
+        if (null != behospitalPageVO && null != behospitalPageVO.getLeaveHosDateStart() && null != behospitalPageVO.getLeaveHosDateEnd()) {
+            if (DateUtil.after(behospitalPageVO.getLeaveHosDateStart(), behospitalPageVO.getLeaveHosDateEnd())) {
+                throw new CommonException(CommonErrorCode.PARAM_IS_ERROR, "出院时间的开始时间必须小于结束时间!");
+            }
+        }
+        behospitalPageVO.setHospitalId(Long.parseLong(SysUserUtils.getCurrentHospitalID()));
+        behospitalPageVO.setUserId(Long.valueOf(SysUserUtils.getCurrentPrincipleID()));
+    }
+
+    /**
+     * 评结果分数(长兴)
+     *
+     * @param algorithmVO 操作条目的所有信息
+     * @return 评结果分数
+     */
+    private void getScoreForCx(AlgorithmVO algorithmVO,QualityControlDeptDTO qualityControlDTO) {
+        List<QcResultAlgVO> qcResultAlgHomePage = new ArrayList<>();
+        List<QcResultAlgVO> qcResultAlgHomePageExt = new ArrayList<>();
+        for (QcResultAlgVO qcResultAlgVO : algorithmVO.getQcResultAlgVOList()) {
+            //首页的情况
+            if (qcResultAlgVO.getCasesId().equals(243L)) {
+                qcResultAlgHomePage.add(qcResultAlgVO);
+            } else {
+                //非首页
+                qcResultAlgHomePageExt.add(qcResultAlgVO);
+            }
+        }
+
+        //病案首页
+        AlgorithmVO homePage = new AlgorithmVO();
+        BeanUtil.copyProperties(algorithmVO, homePage);
+        homePage.setQcResultAlgVOList(qcResultAlgHomePage);
+        homePage.setIsHomePage(true);
+        cal(homePage, qualityControlDTO);
+
+        //病案首页以外
+        AlgorithmVO homePageExt = new AlgorithmVO();
+        BeanUtil.copyProperties(algorithmVO, homePageExt);
+        homePageExt.setQcResultAlgVOList(qcResultAlgHomePageExt);
+        cal(homePageExt,qualityControlDTO);
+    }
+
+    /**
+     * 计算分数
+     *
+     * @param algorithmVO 操作条目的所有信息
+     * @return 评分分数
+     */
+    private void cal(AlgorithmVO algorithmVO ,QualityControlDeptDTO qualityControlDTO) {
+
+        //模块总分
+        Map<Long, BigDecimal> casesMap = new HashMap<>();
+        //单票否决计分
+        Map<Long, BigDecimal> rejectScoreMap = new HashMap<>();
+        //模块计分
+        Map<Long, BigDecimal> casesScoreMap = new HashMap<>();
+        //模块缺陷统计
+        Map<Long, String> casesNameMap = new HashMap<>();
+        //扣分统计
+        Map<Long, BigDecimal> scoreMap = new HashMap<>();
+
+        List<QcResultAlgVO> qcResultAlgVOList = algorithmVO.getQcResultAlgVOList();
+        if (ListUtil.isNotEmpty(qcResultAlgVOList)) {
+            for (QcResultAlgVO qcResultAlgVO : qcResultAlgVOList) {
+                if (!casesMap.containsKey(qcResultAlgVO.getCasesId())) {
+                    //模块总分
+                    casesMap.put(qcResultAlgVO.getCasesId(), qcResultAlgVO.getCasesScore());
+                }
+                if (!casesScoreMap.containsKey(qcResultAlgVO.getCasesId())) {
+                    casesScoreMap.put(qcResultAlgVO.getCasesId(), BigDecimal.ZERO);
+                    rejectScoreMap.put(qcResultAlgVO.getCasesId(), BigDecimal.ZERO);
+                    casesNameMap.put(qcResultAlgVO.getCasesId(),"");
+                }
+                //单票否决计分
+                if (qcResultAlgVO.getIsReject().equals(1)) {
+                    if (rejectScoreMap.containsKey(qcResultAlgVO.getCasesId())) {
+                        BigDecimal casesScore = rejectScoreMap.get(qcResultAlgVO.getCasesId());
+                        casesScore = casesScore.add(qcResultAlgVO.getScore());
+                        rejectScoreMap.put(qcResultAlgVO.getCasesId(), casesScore);
+                    }
+                } else {
+                    //非单票否决计分
+                    if (casesScoreMap.containsKey(qcResultAlgVO.getCasesId())) {
+                        BigDecimal casesScore = casesScoreMap.get(qcResultAlgVO.getCasesId());
+                        casesScore = casesScore.add(qcResultAlgVO.getScore());
+                        casesScoreMap.put(qcResultAlgVO.getCasesId(), casesScore);
+                    }
+                }
+                String casesName = casesNameMap.get(qcResultAlgVO.getCasesId());
+                if(StringUtils.isEmpty(casesName)){
+                    casesName =  casesName + qcResultAlgVO.getMsg();
+                }else{
+                    casesName =  casesName + ";" + qcResultAlgVO.getMsg();
+                }
+                casesNameMap.put(qcResultAlgVO.getCasesId(),casesName);
+            }
+
+
+            //模块计分
+            for (Map.Entry<Long, BigDecimal> casesScore : casesScoreMap.entrySet()) {
+                BigDecimal allSccore = casesMap.get(casesScore.getKey());
+                if (BigDecimalUtil.le(allSccore, casesScore.getValue())) {
+                    //模块标准分小于等于模块减分总和就用模块标准分
+                    allSccore = allSccore.add(rejectScoreMap.get(casesScore.getKey()));
+                } else {
+                    //模块标准分大于模块减分总和就用模块减分总和
+                    allSccore =casesScore.getValue().add(rejectScoreMap.get(casesScore.getKey()));
+
+                }
+                if (BigDecimalUtil.lt(allSccore, BigDecimal.ZERO)) {
+                    allSccore = BigDecimal.ZERO;
+                }
+                scoreMap.put(casesScore.getKey(),allSccore);
+            }
+
+
+            DecimalFormat df=new DecimalFormat("0.0");
+
+            if(StringUtils.isNotEmpty(casesNameMap.get(237L))){
+                qualityControlDTO.setAdmissionNote(casesNameMap.get(237L));
+            }
+            if( scoreMap.get(237L) != null){
+                qualityControlDTO.setAdmissionNoteScore( Double.valueOf(df.format(scoreMap.get(237L))));
+            }
+
+
+
+            if(StringUtils.isNotEmpty(casesNameMap.get(238L))){
+                qualityControlDTO.setFirstCourseNote(casesNameMap.get(238L));
+            }
+            if( scoreMap.get(238L) != null){
+                qualityControlDTO.setFirstCourseNoteScore( Double.valueOf(df.format(scoreMap.get(238L))));
+            }
+
+
+
+            if(StringUtils.isNotEmpty(casesNameMap.get(242L))){
+                qualityControlDTO.setDischargeNote(casesNameMap.get(242L));
+            }
+            if( scoreMap.get(242L) != null){
+                qualityControlDTO.setDischargeNoteScore( Double.valueOf(df.format(scoreMap.get(242L))));
+            }
+
+
+
+            if(StringUtils.isNotEmpty(casesNameMap.get(243L))){
+                qualityControlDTO.setMedHomePage(casesNameMap.get(243L));
+            }
+            if( scoreMap.get(243L) != null){
+                qualityControlDTO.setMedHomePageScore( Double.valueOf(df.format(scoreMap.get(243L))));
+            }
+
+
+
+            if(StringUtils.isNotEmpty(casesNameMap.get(280L))){
+                qualityControlDTO.setDocAdviceNote(casesNameMap.get(280L));
+            }
+            if( scoreMap.get(280L) != null){
+                qualityControlDTO.setDocAdviceNoteScore( Double.valueOf(df.format(scoreMap.get(280L))));
+            }
+
+
+            String operationInfo = "";
+            if(StringUtils.isNotEmpty(casesNameMap.get(248L))){
+                operationInfo = "围手术期病历讨论:"+casesNameMap.get(248L);
+            }
+            if(StringUtils.isNotEmpty(casesNameMap.get(249L))){
+                operationInfo = operationInfo+";"+"术前讨论制度:"+casesNameMap.get(249L);
+            }
+            if(operationInfo.contains(";")){
+                String[] split = operationInfo.split(";");
+                if(StringUtils.isEmpty(split[0])){
+                    operationInfo = operationInfo.substring(operationInfo.indexOf(split[1]));
+                }
+            }
+
+            qualityControlDTO.setOperationInfo(StringUtils.isEmpty(operationInfo)==true?"无缺陷":operationInfo);
+
+            Double score_248 = 0d;
+            Double score_11 = 0d;
+            Double score_249 = 0d;
+            if( scoreMap.get(248L) != null){
+                score_248 = Double.valueOf(df.format(scoreMap.get(248L)));
+            }
+            if( scoreMap.get(11L) != null){
+                score_11 =  Double.valueOf(df.format(scoreMap.get(11L)));
+            }
+            if( scoreMap.get(249L) != null){
+                score_249 = Double.valueOf(df.format(scoreMap.get(249L)));
+            }
+            qualityControlDTO.setOperationInfoScore(score_248+score_11+score_249);
+        }
+
+        String courseRecord = "";
+        if(StringUtils.isNotEmpty(casesNameMap.get(239L))){
+            courseRecord = "死亡病例讨论制度:"+casesNameMap.get(239L);
+        }
+        if(StringUtils.isNotEmpty(casesNameMap.get(240L))){
+            courseRecord = courseRecord+";"+"疑难病例讨论制度:"+casesNameMap.get(240L);
+        }
+        if(StringUtils.isNotEmpty(casesNameMap.get(241L))){
+            courseRecord =courseRecord+";"+ "三级查房制度:"+casesNameMap.get(241L);
+        }
+        if(StringUtils.isNotEmpty(casesNameMap.get(244L))){
+            courseRecord =courseRecord+";"+ "会诊制度:"+casesNameMap.get(244L);
+        }
+        if(StringUtils.isNotEmpty(casesNameMap.get(245L))){
+            courseRecord =courseRecord+";"+ "分级护理制度:"+casesNameMap.get(245L);
+        }
+        if(StringUtils.isNotEmpty(casesNameMap.get(246L))){
+            courseRecord = courseRecord+";"+"值班及交接班制度:"+casesNameMap.get(246L);
+        }
+        if(StringUtils.isNotEmpty(casesNameMap.get(247L))){
+            courseRecord = courseRecord+";"+"临床用血审核制度:"+casesNameMap.get(247L);
+        }
+        if(StringUtils.isNotEmpty(casesNameMap.get(250L))){
+            courseRecord =courseRecord+";"+ "死亡记录:"+casesNameMap.get(250L);
+        }
+        if(courseRecord.contains(";")) {
+            String[] courseRecordSplit = courseRecord.split(";");
+            if (StringUtils.isEmpty(courseRecordSplit[0])) {
+                courseRecord = courseRecord.substring(courseRecord.indexOf(courseRecordSplit[1]));
+            }
+        }
+        qualityControlDTO.setCourseRecord(StringUtils.isEmpty(courseRecord)==true?"无缺陷":courseRecord);
+
+
+        Double score_239 = 0d;
+        Double score_240 = 0d;
+        Double score_241 = 0d;
+        Double score_244 = 0d;
+        Double score_245 = 0d;
+        Double score_246 = 0d;
+        Double score_247 = 0d;
+        Double score_250 = 0d;
+        DecimalFormat df=new DecimalFormat("0.0");
+        if( scoreMap.get(239L) != null){
+            score_239 =  Double.valueOf(df.format(scoreMap.get(239L)));
+        }
+        if( scoreMap.get(240L) != null){
+            score_240 =  Double.valueOf(df.format(scoreMap.get(240L)));
+        }
+        if( scoreMap.get(241L) != null){
+            score_241 =  Double.valueOf(df.format(scoreMap.get(241L)));
+        }
+        if( scoreMap.get(244L) != null){
+            score_244 =  Double.valueOf(df.format(scoreMap.get(244L)));
+        }
+        if( scoreMap.get(245L) != null){
+            score_245 =  Double.valueOf(df.format(scoreMap.get(245L)));
+        }
+        if( scoreMap.get(246L) != null){
+            score_246 =  Double.valueOf(df.format(scoreMap.get(246L)));
+        }
+        if( scoreMap.get(247L) != null){
+            score_247 =  Double.valueOf(df.format(scoreMap.get(247L)));
+        }
+        if( scoreMap.get(250L) != null){
+            score_250 =  Double.valueOf(df.format(scoreMap.get(250L)));
+
+        }
+        qualityControlDTO.setCourseRecordScore(score_239+score_240+score_241+score_244+score_245+score_246+score_247+score_250);
+                  /*  qualityControlDTO.setCourseRecord(name_239+";"+name_240
+                                    +";"+name_241+";"+name_244+";"+name_245
+                                    +";"+name_246+";"+name_247+";"+name_250);
+                    qualityControlDTO.setCourseRecordScore(score_239+score_240+score_241+score_244+score_245+score_246
+                            +score_247+score_250);*/
+
+
 
 
+        Double score_262 = 0d;
+        Double score_281 = 0d;
+        Double score_282 = 0d;
+        Double score_283 = 0d;
+        Double score_284 = 0d;
+        if( scoreMap.get(262L) != null){
+            score_262 =  Double.valueOf(df.format(scoreMap.get(262L)));
+        }
+        if( scoreMap.get(281L) != null){
+            score_281 =  Double.valueOf(df.format(scoreMap.get(281L)));
+        }
+        if( scoreMap.get(282L) != null){
+            score_282 =  Double.valueOf(df.format(scoreMap.get(282L)));
+        }
+        if( scoreMap.get(283L) != null){
+            score_283 =  Double.valueOf(df.format(scoreMap.get(283L)));
+        }
+        if( scoreMap.get(284L) != null){
+            score_284 =  Double.valueOf(df.format(scoreMap.get(284L)));
+
+        }
+
+        String otherCase = "";
+        if(StringUtils.isNotEmpty(casesNameMap.get(262L))){
+            otherCase = "危急值报告制度:"+casesNameMap.get(262L);
+        }
+        if(StringUtils.isNotEmpty(casesNameMap.get(281L))){
+            otherCase = otherCase +";"+"危急值报告制度:"+casesNameMap.get(281L);
+        }
+        if(StringUtils.isNotEmpty(casesNameMap.get(282L))){
+            otherCase = otherCase +";"+ "危急值报告制度:"+casesNameMap.get(282L);
+        }
+        if(StringUtils.isNotEmpty(casesNameMap.get(283L))){
+            otherCase = otherCase +";"+ "危急值报告制度:"+casesNameMap.get(283L);
+        }
+        if(StringUtils.isNotEmpty(casesNameMap.get(284L))){
+            otherCase = otherCase +";"+ "危急值报告制度:"+casesNameMap.get(284L);
+        }
+        if(otherCase.contains(";")) {
+            String[] otherCaseSplit = otherCase.split(";");
+            if(StringUtils.isEmpty(otherCaseSplit[0])){
+                otherCase = otherCase.substring(otherCase.indexOf(otherCaseSplit[1]));
+            }
+        }
+        qualityControlDTO.setOtherCase(StringUtils.isEmpty(otherCase)==true?"无缺陷":otherCase);
+        qualityControlDTO.setOtherCaseScore(score_262+score_281+score_282+score_283+score_284);
+
+    }
+
 }

+ 65 - 9
src/main/java/com/diagbot/facade/ConsoleExportFacade.java

@@ -1,27 +1,25 @@
 package com.diagbot.facade;
 
 import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.metadata.OrderItem;
 import com.diagbot.dto.*;
 import com.diagbot.entity.SysHospitalSet;
 import com.diagbot.exception.CommonErrorCode;
 import com.diagbot.exception.CommonException;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.ExcelUtils;
-import com.diagbot.util.ListUtil;
-import com.diagbot.util.StringUtil;
-import com.diagbot.util.SysUserUtils;
+import com.diagbot.util.*;
 import com.diagbot.vo.*;
+import com.fasterxml.jackson.databind.ObjectMapper;
 import com.google.common.collect.Lists;
+import com.google.gson.JsonObject;
+import org.apache.commons.lang3.ObjectUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
 import javax.servlet.http.HttpServletResponse;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Date;
-import java.util.List;
+import java.util.*;
 
 /**
  * @Description: 报表导出装饰层
@@ -597,4 +595,62 @@ public class ConsoleExportFacade {
             ExcelUtils.exportExcelUser(resWide, null, "sheet1", ExportWideExcelDTO.class, fileName, response);
         }
     }
+
+
+    /**
+     * 病历质控报表分页导出
+     *
+     * @param behospitalPageVO
+     * @return
+     */
+    public void qualityControlExport(HttpServletResponse response, BehospitalPageVO behospitalPageVO) {
+        String hospitalId = SysUserUtils.getCurrentHospitalID();
+        behospitalPageVO.setHospitalId(Long.valueOf(hospitalId));
+
+    Date startDate = behospitalPageVO.getLeaveHosDateStart();
+    Date endDate = behospitalPageVO.getLeaveHosDateEnd();
+    //时间间隔30天
+    long interval = 30 * 24l * 60l * 60l * 1000l;
+        if (endDate.getTime() < startDate.getTime()) {
+        throw new CommonException(CommonErrorCode.PARAM_ERROR, "截止时间不能小于起始时间");
+    }
+        if (endDate.getTime() - startDate.getTime() > interval) {
+        throw new CommonException(CommonErrorCode.PARAM_ERROR, "统计区间不能大于30天");
+    }
+
+        behospitalPageVO.setCurrent(1L);
+        behospitalPageVO.setSize(Long.MAX_VALUE);
+        behospitalPageVO.setSearchCount(false);
+      //  orderMethod(behospitalPageVO);
+
+        IPage<QualityControlDTO> page = consoleFacade.getQualityControlExport(behospitalPageVO);
+        List<QualityControlDTO> records = page.getRecords();
+
+        String fileName = "病历质控报表详情页.xls";
+        ExcelUtils.exportExcel(records, "病历质控报表", "sheet1", QualityControlDTO.class, fileName, response, 26.8f);
+    }
+
+   static void orderMethod(BehospitalPageVO behospitalPageVO){
+       List orders = behospitalPageVO.getOrders();
+       Boolean flag= false;
+       List<OrderItem> itemList = new ArrayList<>();
+       for (Object order : orders) {
+           ObjectMapper objectMapper = new ObjectMapper();
+           OrderItem orderName = objectMapper.convertValue(order, OrderItem.class);
+           itemList.add(orderName);
+           if(!orderName.getColumn().equals("deptName")){
+               flag = true;
+           }
+       }
+       //科室作为第一升序排列,传入排序随后 配合excel注解属性mergeVertical处理科室合并
+       if(flag){
+           OrderItem orderItem = new OrderItem();
+           orderItem.setAsc(true);
+           orderItem.setColumn("deptName");
+           itemList.add(orderItem);
+           Collections.reverse(itemList);
+           behospitalPageVO.setOrders(itemList);
+       }
+
+   };
 }

+ 440 - 0
src/main/java/com/diagbot/facade/ConsoleFacade.java

@@ -9,12 +9,14 @@ import com.diagbot.aggregate.ResultStatisticsAggregate;
 import com.diagbot.dto.*;
 import com.diagbot.entity.QcCasesEntry;
 import com.diagbot.entity.SysHospitalSet;
+import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.exception.CommonErrorCode;
 import com.diagbot.exception.CommonException;
 import com.diagbot.util.*;
 import com.diagbot.vo.*;
 import com.google.common.collect.Lists;
 import io.github.lvyahui8.spring.aggregate.facade.DataBeanAggregateQueryFacade;
+import org.apache.commons.lang3.StringUtils;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
@@ -1245,6 +1247,133 @@ public class ConsoleFacade {
         return records;
     }
 
+    /**
+     * 病历质控报表
+     *
+     * @param behospitalPageVO
+     * @return
+     */
+    public IPage<QualityControlDTO> getQualityControl(BehospitalPageVO behospitalPageVO) {
+        behospitalPageSet(behospitalPageVO);
+        IPage<QualityControlDTO> records = behospitalInfoFacade.getQualityControl(behospitalPageVO);
+        List<QualityControlDTO> qualityControlDTOs = records.getRecords();
+        CaseScoreVO caseScoreVO = new CaseScoreVO();
+        BeanUtil.copyProperties(behospitalPageVO,caseScoreVO);
+        List<CaseScoreDTO>caseScoreDTOS= behospitalInfoFacade.getQualityCaseSorce(caseScoreVO);
+        if(ListUtil.isNotEmpty(qualityControlDTOs)){
+        qualityControlDTOs.forEach(qualityControlDTO->{
+            if(ListUtil.isNotEmpty(caseScoreDTOS)){
+                AlgorithmVO algorithmVO = new AlgorithmVO();
+              BeanUtil.copyProperties(behospitalPageVO,algorithmVO);
+                algorithmVO.setType(0);
+                List<QcResultAlgVO> qcResultAlgVOList = new ArrayList<QcResultAlgVO>();
+            for (CaseScoreDTO caseScoreDTO : caseScoreDTOS) {
+                        if (StringUtils.isNotEmpty(qualityControlDTO.getBehospitalCode())&&
+                                StringUtils.isNotEmpty(caseScoreDTO.getBehospitalCode())&&
+                                qualityControlDTO.getBehospitalCode().equals(caseScoreDTO.getBehospitalCode())) {
+                            QcResultAlgVO qcResultAlgVO = new QcResultAlgVO();
+                            BeanUtil.copyProperties(caseScoreDTO,qcResultAlgVO);
+                            qcResultAlgVO.setIsReject(Integer.valueOf(caseScoreDTO.getIsReject()));
+                            qcResultAlgVO.setScore(new BigDecimal(caseScoreDTO.getScore()));
+                            qcResultAlgVO.setCasesScore(new BigDecimal(caseScoreDTO.getCasesScore()));
+                            qcResultAlgVOList.add(qcResultAlgVO);
+                        }
+            }
+                algorithmVO.setType(0);
+                algorithmVO.setQcResultAlgVOList(qcResultAlgVOList);
+                 getScoreForCx(algorithmVO,qualityControlDTO);
+            }
+            if(qualityControlDTO.getLevel().equals("未评分")){
+                QualityControlNullDTO qualityControlNullDTO = new QualityControlNullDTO();
+                BeanUtil.copyProperties(qualityControlNullDTO,qualityControlDTO);
+            }
+        });
+        };
+        return records;
+    }
+
+    /**
+     * 病历质控报表-科室
+     *
+     * @param behospitalPageVO
+     * @return
+     */
+    public IPage<QualityControlDTO> getQualityControlExport(BehospitalPageVO behospitalPageVO) {
+        behospitalPageSet(behospitalPageVO);
+        IPage<QualityControlDTO> records = behospitalInfoFacade.getQualityControl(behospitalPageVO);
+        List<QualityControlDTO> qualityControlDTOs = records.getRecords();
+        CaseScoreVO caseScoreVO = new CaseScoreVO();
+        BeanUtil.copyProperties(behospitalPageVO,caseScoreVO);
+        List<CaseScoreDTO>caseScoreDTOS= behospitalInfoFacade.getQualityCaseSorce(caseScoreVO);
+        if(ListUtil.isNotEmpty(qualityControlDTOs)){
+            qualityControlDTOs.forEach(qualityControlDTO->{
+                if(ListUtil.isNotEmpty(caseScoreDTOS)){
+                    AlgorithmVO algorithmVO = new AlgorithmVO();
+                    BeanUtil.copyProperties(behospitalPageVO,algorithmVO);
+                    algorithmVO.setType(0);
+                    List<QcResultAlgVO> qcResultAlgVOList = new ArrayList<QcResultAlgVO>();
+                    for (CaseScoreDTO caseScoreDTO : caseScoreDTOS) {
+                        if (StringUtils.isNotEmpty(qualityControlDTO.getBehospitalCode())&&
+                                StringUtils.isNotEmpty(caseScoreDTO.getBehospitalCode())&&
+                                qualityControlDTO.getBehospitalCode().equals(caseScoreDTO.getBehospitalCode())) {
+                            QcResultAlgVO qcResultAlgVO = new QcResultAlgVO();
+                            BeanUtil.copyProperties(caseScoreDTO,qcResultAlgVO);
+                            qcResultAlgVO.setIsReject(Integer.valueOf(caseScoreDTO.getIsReject()));
+                            qcResultAlgVO.setScore(new BigDecimal(caseScoreDTO.getScore()));
+                            qcResultAlgVO.setCasesScore(new BigDecimal(caseScoreDTO.getCasesScore()));
+                            qcResultAlgVOList.add(qcResultAlgVO);
+                        }
+                    }
+                    algorithmVO.setType(0);
+                    algorithmVO.setQcResultAlgVOList(qcResultAlgVOList);
+                    getScoreForCx(algorithmVO,qualityControlDTO);
+                }
+                if(qualityControlDTO.getLevel().equals("未评分")){
+                    QualityControlNullDTO qualityControlNullDTO = new QualityControlNullDTO();
+                    BeanUtil.copyProperties(qualityControlNullDTO,qualityControlDTO);
+                }
+            });
+        };
+        return records;
+    }
+    private void behospitalPageSet(BehospitalPageVO behospitalPageVO) {
+        //入参验证
+        //入院时间
+        if (null != behospitalPageVO && null != behospitalPageVO.getBehosDateStart()) {
+            behospitalPageVO.setBehosDateStart(DateUtil.getFirstTimeOfDay(behospitalPageVO.getBehosDateStart()));
+        }
+        if (null != behospitalPageVO && null != behospitalPageVO.getBehosDateEnd()) {
+            behospitalPageVO.setBehosDateEnd(DateUtil.getFirstTimeOfDay(DateUtil.addDay(behospitalPageVO.getBehosDateEnd(), 1)));
+        }
+        if (null != behospitalPageVO && null != behospitalPageVO.getBehosDateStart() && null != behospitalPageVO.getBehosDateEnd()) {
+            if (DateUtil.after(behospitalPageVO.getBehosDateStart(), behospitalPageVO.getBehosDateEnd())) {
+                throw new CommonException(CommonErrorCode.PARAM_IS_ERROR, "入院时间的开始时间必须小于结束时间!");
+            }
+        }
+        //出院时间
+        if (null != behospitalPageVO && null != behospitalPageVO.getLeaveHosDateStart()) {
+            behospitalPageVO.setLeaveHosDateStart(DateUtil.getFirstTimeOfDay(behospitalPageVO.getLeaveHosDateStart()));
+        }
+        if (null != behospitalPageVO && null != behospitalPageVO.getLeaveHosDateEnd()) {
+            behospitalPageVO.setLeaveHosDateEnd(DateUtil.getFirstTimeOfDay(DateUtil.addDay(behospitalPageVO.getLeaveHosDateEnd(), 1)));
+        }
+        if (null != behospitalPageVO && null != behospitalPageVO.getLeaveHosDateStart() && null != behospitalPageVO.getLeaveHosDateEnd()) {
+            if (DateUtil.after(behospitalPageVO.getLeaveHosDateStart(), behospitalPageVO.getLeaveHosDateEnd())) {
+                throw new CommonException(CommonErrorCode.PARAM_IS_ERROR, "出院时间的开始时间必须小于结束时间!");
+            }
+        }
+        behospitalPageVO.setHospitalId(Long.parseLong(SysUserUtils.getCurrentHospitalID()));
+//        behospitalPageVO.setIsPlacefile("1");
+//        if (null != behospitalPageVO.getStatisticsType()
+//                && null == behospitalPageVO.getLeaveHosDateStart()
+//                && null == behospitalPageVO.getLeaveHosDateEnd()) {
+//            String startDate = filterFacade.getStartDateStr(behospitalPageVO.getStatisticsType(), null);
+//            String endDate = filterFacade.getEndDateStr(behospitalPageVO.getStatisticsType(), null);
+//            behospitalPageVO.setLeaveHosDateStart(DateUtil.parseDate(startDate));
+//            behospitalPageVO.setLeaveHosDateEnd(DateUtil.parseDate(endDate));
+//        }
+    }
+
     /**
      * 病案首页合格率占比
      *
@@ -2175,5 +2304,316 @@ public class ConsoleFacade {
 
         return columns;
     }
+
+    /**
+     * 评结果分数(长兴)
+     *
+     * @param algorithmVO 操作条目的所有信息
+     * @return 评结果分数
+     */
+    private void getScoreForCx(AlgorithmVO algorithmVO,QualityControlDTO qualityControlDTO) {
+        List<QcResultAlgVO> qcResultAlgHomePage = new ArrayList<>();
+        List<QcResultAlgVO> qcResultAlgHomePageExt = new ArrayList<>();
+        for (QcResultAlgVO qcResultAlgVO : algorithmVO.getQcResultAlgVOList()) {
+            //首页的情况
+            if (qcResultAlgVO.getCasesId().equals(243L)) {
+                qcResultAlgHomePage.add(qcResultAlgVO);
+            } else {
+                //非首页
+                qcResultAlgHomePageExt.add(qcResultAlgVO);
+            }
+        }
+
+        //病案首页
+        AlgorithmVO homePage = new AlgorithmVO();
+        BeanUtil.copyProperties(algorithmVO, homePage);
+        homePage.setQcResultAlgVOList(qcResultAlgHomePage);
+        homePage.setIsHomePage(true);
+        cal(homePage, qualityControlDTO);
+
+        //病案首页以外
+        AlgorithmVO homePageExt = new AlgorithmVO();
+        BeanUtil.copyProperties(algorithmVO, homePageExt);
+        homePageExt.setQcResultAlgVOList(qcResultAlgHomePageExt);
+        cal(homePageExt,qualityControlDTO);
+    }
+
+    /**
+     * 计算分数
+     *
+     * @param algorithmVO 操作条目的所有信息
+     * @return 评分分数
+     */
+    private void cal(AlgorithmVO algorithmVO ,QualityControlDTO qualityControlDTO) {
+
+        //模块总分
+        Map<Long, BigDecimal> casesMap = new HashMap<>();
+        //单票否决计分
+        Map<Long, BigDecimal> rejectScoreMap = new HashMap<>();
+        //模块计分
+        Map<Long, BigDecimal> casesScoreMap = new HashMap<>();
+        //模块缺陷统计
+        Map<Long, String> casesNameMap = new HashMap<>();
+        //扣分统计
+        Map<Long, BigDecimal> scoreMap = new HashMap<>();
+
+        List<QcResultAlgVO> qcResultAlgVOList = algorithmVO.getQcResultAlgVOList();
+        if (ListUtil.isNotEmpty(qcResultAlgVOList)) {
+            for (QcResultAlgVO qcResultAlgVO : qcResultAlgVOList) {
+                if (!casesMap.containsKey(qcResultAlgVO.getCasesId())) {
+                    //模块总分
+                    casesMap.put(qcResultAlgVO.getCasesId(), qcResultAlgVO.getCasesScore());
+                }
+                if (!casesScoreMap.containsKey(qcResultAlgVO.getCasesId())) {
+                    casesScoreMap.put(qcResultAlgVO.getCasesId(), BigDecimal.ZERO);
+                    rejectScoreMap.put(qcResultAlgVO.getCasesId(), BigDecimal.ZERO);
+                    casesNameMap.put(qcResultAlgVO.getCasesId(),"");
+                }
+                //单票否决计分
+                if (qcResultAlgVO.getIsReject().equals(1)) {
+                    if (rejectScoreMap.containsKey(qcResultAlgVO.getCasesId())) {
+                        BigDecimal casesScore = rejectScoreMap.get(qcResultAlgVO.getCasesId());
+                        casesScore = casesScore.add(qcResultAlgVO.getScore());
+                        rejectScoreMap.put(qcResultAlgVO.getCasesId(), casesScore);
+                    }
+                } else {
+                    //非单票否决计分
+                    if (casesScoreMap.containsKey(qcResultAlgVO.getCasesId())) {
+                        BigDecimal casesScore = casesScoreMap.get(qcResultAlgVO.getCasesId());
+                        casesScore = casesScore.add(qcResultAlgVO.getScore());
+                        casesScoreMap.put(qcResultAlgVO.getCasesId(), casesScore);
+                    }
+                }
+                String casesName = casesNameMap.get(qcResultAlgVO.getCasesId());
+                if(StringUtils.isEmpty(casesName)){
+                    casesName =  casesName + qcResultAlgVO.getMsg();
+                }else{
+                    casesName =  casesName + ";" + qcResultAlgVO.getMsg();
+                }
+                casesNameMap.put(qcResultAlgVO.getCasesId(),casesName);
+            }
+
+
+                //模块计分
+                for (Map.Entry<Long, BigDecimal> casesScore : casesScoreMap.entrySet()) {
+                    BigDecimal allSccore = casesMap.get(casesScore.getKey());
+                    if (BigDecimalUtil.le(allSccore, casesScore.getValue())) {
+                        //模块标准分小于等于模块减分总和就用模块标准分
+                        allSccore = allSccore.add(rejectScoreMap.get(casesScore.getKey()));
+                    } else {
+                        //模块标准分大于模块减分总和就用模块减分总和
+                        allSccore =casesScore.getValue().add(rejectScoreMap.get(casesScore.getKey()));
+
+                    }
+                    if (BigDecimalUtil.lt(allSccore, BigDecimal.ZERO)) {
+                        allSccore = BigDecimal.ZERO;
+                    }
+                    scoreMap.put(casesScore.getKey(),allSccore);
+                }
+
+
+            DecimalFormat df=new DecimalFormat("0.0");
+
+                if(StringUtils.isNotEmpty(casesNameMap.get(237L))){
+                    qualityControlDTO.setAdmissionNote(casesNameMap.get(237L));
+                }
+                if( scoreMap.get(237L) != null){
+                qualityControlDTO.setAdmissionNoteScore( Double.valueOf(df.format(scoreMap.get(237L))));
+            }
+
+
+
+                if(StringUtils.isNotEmpty(casesNameMap.get(238L))){
+                    qualityControlDTO.setFirstCourseNote(casesNameMap.get(238L));
+            }
+            if( scoreMap.get(238L) != null){
+                qualityControlDTO.setFirstCourseNoteScore( Double.valueOf(df.format(scoreMap.get(238L))));
+            }
+
+
+
+                if(StringUtils.isNotEmpty(casesNameMap.get(242L))){
+                    qualityControlDTO.setDischargeNote(casesNameMap.get(242L));
+                }
+            if( scoreMap.get(242L) != null){
+                qualityControlDTO.setDischargeNoteScore( Double.valueOf(df.format(scoreMap.get(242L))));
+            }
+
+
+
+                if(StringUtils.isNotEmpty(casesNameMap.get(243L))){
+                    qualityControlDTO.setMedHomePage(casesNameMap.get(243L));
+                }
+            if( scoreMap.get(243L) != null){
+                qualityControlDTO.setMedHomePageScore( Double.valueOf(df.format(scoreMap.get(243L))));
+            }
+
+
+
+                if(StringUtils.isNotEmpty(casesNameMap.get(280L))){
+                    qualityControlDTO.setDocAdviceNote(casesNameMap.get(280L));
+                }
+            if( scoreMap.get(280L) != null){
+                qualityControlDTO.setDocAdviceNoteScore( Double.valueOf(df.format(scoreMap.get(280L))));
+            }
+
+
+            String operationInfo = "";
+                if(StringUtils.isNotEmpty(casesNameMap.get(248L))){
+                    operationInfo = "围手术期病历讨论:"+casesNameMap.get(248L);
+                }
+                if(StringUtils.isNotEmpty(casesNameMap.get(249L))){
+                    operationInfo = operationInfo+";"+"术前讨论制度:"+casesNameMap.get(249L);
+                }
+                if(operationInfo.contains(";")){
+                    String[] split = operationInfo.split(";");
+                    if(StringUtils.isEmpty(split[0])){
+                        operationInfo = operationInfo.substring(operationInfo.indexOf(split[1]));
+                    }
+                }
+
+                qualityControlDTO.setOperationInfo(StringUtils.isEmpty(operationInfo)==true?"无缺陷":operationInfo);
+
+                Double score_248 = 0d;
+                Double score_11 = 0d;
+                Double score_249 = 0d;
+            if( scoreMap.get(248L) != null){
+                score_248 = Double.valueOf(df.format(scoreMap.get(248L)));
+            }
+            if( scoreMap.get(11L) != null){
+                score_11 =  Double.valueOf(df.format(scoreMap.get(11L)));
+            }
+            if( scoreMap.get(249L) != null){
+                score_249 = Double.valueOf(df.format(scoreMap.get(249L)));
+            }
+                qualityControlDTO.setOperationInfoScore(score_248+score_11+score_249);
+            }
+
+       String courseRecord = "";
+        if(StringUtils.isNotEmpty(casesNameMap.get(239L))){
+            courseRecord = "死亡病例讨论制度:"+casesNameMap.get(239L);
+        }
+        if(StringUtils.isNotEmpty(casesNameMap.get(240L))){
+            courseRecord = courseRecord+";"+"疑难病例讨论制度:"+casesNameMap.get(240L);
+        }
+        if(StringUtils.isNotEmpty(casesNameMap.get(241L))){
+            courseRecord =courseRecord+";"+ "三级查房制度:"+casesNameMap.get(241L);
+        }
+        if(StringUtils.isNotEmpty(casesNameMap.get(244L))){
+            courseRecord =courseRecord+";"+ "会诊制度:"+casesNameMap.get(244L);
+        }
+        if(StringUtils.isNotEmpty(casesNameMap.get(245L))){
+            courseRecord =courseRecord+";"+ "分级护理制度:"+casesNameMap.get(245L);
+        }
+        if(StringUtils.isNotEmpty(casesNameMap.get(246L))){
+            courseRecord = courseRecord+";"+"值班及交接班制度:"+casesNameMap.get(246L);
+        }
+        if(StringUtils.isNotEmpty(casesNameMap.get(247L))){
+            courseRecord = courseRecord+";"+"临床用血审核制度:"+casesNameMap.get(247L);
+        }
+        if(StringUtils.isNotEmpty(casesNameMap.get(250L))){
+            courseRecord =courseRecord+";"+ "死亡记录:"+casesNameMap.get(250L);
+        }
+        if(courseRecord.contains(";")) {
+            String[] courseRecordSplit = courseRecord.split(";");
+            if (StringUtils.isEmpty(courseRecordSplit[0])) {
+                courseRecord = courseRecord.substring(courseRecord.indexOf(courseRecordSplit[1]));
+            }
+        }
+        qualityControlDTO.setCourseRecord(StringUtils.isEmpty(courseRecord)==true?"无缺陷":courseRecord);
+
+
+        Double score_239 = 0d;
+        Double score_240 = 0d;
+        Double score_241 = 0d;
+        Double score_244 = 0d;
+        Double score_245 = 0d;
+        Double score_246 = 0d;
+        Double score_247 = 0d;
+        Double score_250 = 0d;
+        DecimalFormat df=new DecimalFormat("0.0");
+        if( scoreMap.get(239L) != null){
+            score_239 =  Double.valueOf(df.format(scoreMap.get(239L)));
+        }
+        if( scoreMap.get(240L) != null){
+            score_240 =  Double.valueOf(df.format(scoreMap.get(240L)));
+        }
+        if( scoreMap.get(241L) != null){
+            score_241 =  Double.valueOf(df.format(scoreMap.get(241L)));
+        }
+        if( scoreMap.get(244L) != null){
+            score_244 =  Double.valueOf(df.format(scoreMap.get(244L)));
+        }
+        if( scoreMap.get(245L) != null){
+            score_245 =  Double.valueOf(df.format(scoreMap.get(245L)));
+        }
+        if( scoreMap.get(246L) != null){
+            score_246 =  Double.valueOf(df.format(scoreMap.get(246L)));
+        }
+        if( scoreMap.get(247L) != null){
+            score_247 =  Double.valueOf(df.format(scoreMap.get(247L)));
+        }
+        if( scoreMap.get(250L) != null){
+            score_250 =  Double.valueOf(df.format(scoreMap.get(250L)));
+
+        }
+        qualityControlDTO.setCourseRecordScore(score_239+score_240+score_241+score_244+score_245+score_246+score_247+score_250);
+                  /*  qualityControlDTO.setCourseRecord(name_239+";"+name_240
+                                    +";"+name_241+";"+name_244+";"+name_245
+                                    +";"+name_246+";"+name_247+";"+name_250);
+                    qualityControlDTO.setCourseRecordScore(score_239+score_240+score_241+score_244+score_245+score_246
+                            +score_247+score_250);*/
+
+
+
+
+        Double score_262 = 0d;
+        Double score_281 = 0d;
+        Double score_282 = 0d;
+        Double score_283 = 0d;
+        Double score_284 = 0d;
+        if( scoreMap.get(262L) != null){
+            score_262 =  Double.valueOf(df.format(scoreMap.get(262L)));
+        }
+        if( scoreMap.get(281L) != null){
+            score_281 =  Double.valueOf(df.format(scoreMap.get(281L)));
+        }
+        if( scoreMap.get(282L) != null){
+            score_282 =  Double.valueOf(df.format(scoreMap.get(282L)));
+        }
+        if( scoreMap.get(283L) != null){
+            score_283 =  Double.valueOf(df.format(scoreMap.get(283L)));
+        }
+        if( scoreMap.get(284L) != null){
+            score_284 =  Double.valueOf(df.format(scoreMap.get(284L)));
+
+        }
+
+        String otherCase = "";
+        if(StringUtils.isNotEmpty(casesNameMap.get(262L))){
+            otherCase = "危急值报告制度:"+casesNameMap.get(262L);
+        }
+        if(StringUtils.isNotEmpty(casesNameMap.get(281L))){
+            otherCase = otherCase +";"+"危急值报告制度:"+casesNameMap.get(281L);
+        }
+        if(StringUtils.isNotEmpty(casesNameMap.get(282L))){
+            otherCase = otherCase +";"+ "危急值报告制度:"+casesNameMap.get(282L);
+        }
+        if(StringUtils.isNotEmpty(casesNameMap.get(283L))){
+            otherCase = otherCase +";"+ "危急值报告制度:"+casesNameMap.get(283L);
+        }
+        if(StringUtils.isNotEmpty(casesNameMap.get(284L))){
+            otherCase = otherCase +";"+ "危急值报告制度:"+casesNameMap.get(284L);
+        }
+        if(otherCase.contains(";")) {
+        String[] otherCaseSplit = otherCase.split(";");
+        if(StringUtils.isEmpty(otherCaseSplit[0])){
+            otherCase = otherCase.substring(otherCase.indexOf(otherCaseSplit[1]));
+        }
+        }
+            qualityControlDTO.setOtherCase(StringUtils.isEmpty(otherCase)==true?"无缺陷":otherCase);
+            qualityControlDTO.setOtherCaseScore(score_262+score_281+score_282+score_283+score_284);
+
+    }
 }
 

+ 48 - 40
src/main/java/com/diagbot/facade/data/ABasDeptInfoFacade.java

@@ -12,6 +12,7 @@ import com.diagbot.vo.data.ABasDeptInfoVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
 
 import java.util.Date;
@@ -25,6 +26,8 @@ public class ABasDeptInfoFacade extends BasDeptInfoServiceImpl{
     private BasDeptInfoServiceImpl basDeptInfoService;
     @Autowired
     private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
+    @Value("${log_switch.enable}")
+    private boolean logSwitch;
 
     private TZDBConn tzDBConn = new TZDBConn();
 
@@ -52,54 +55,59 @@ public class ABasDeptInfoFacade extends BasDeptInfoServiceImpl{
      * @return
      */
     public RespDTO<List<ABasDeptInfoDTO>> executeDept(List<ABasDeptInfoVO> list) {
-        if(list!=null && list.size()>0){
-            List<BasDeptInfo> basDeptInfoList=Lists.newArrayList();
-            List<ABasDeptInfoDTO> basDeptInfoDtoList=Lists.newArrayList();
-            basDeptInfoList=BeanUtil.listCopyTo(list,BasDeptInfo.class);
-            basDeptInfoDtoList=BeanUtil.listCopyTo(list,ABasDeptInfoDTO.class);
+        try{
+            if(list!=null && list.size()>0){
+                List<BasDeptInfo> basDeptInfoList=Lists.newArrayList();
+                basDeptInfoList=BeanUtil.listCopyTo(list,BasDeptInfo.class);
+
+                //循环验证数据有效性
+                for (BasDeptInfo basDeptInfo:basDeptInfoList) {
+                    if("".equals(basDeptInfo.getDeptId())) {
+                        return RespDTO.onError("请输入科室编码!");
+                    }else if(basDeptInfo.getHospitalId()==null){
+                        return RespDTO.onError("请输入医院编码!");
+                    }else if("".equals(basDeptInfo.getDeptName())){
+                        return RespDTO.onError("请输入科室名称!");
+                    }
+                }
+                execute(basDeptInfoList);
 
-            //循环验证数据有效性
-            for (BasDeptInfo basDeptInfo:basDeptInfoList) {
-                if("".equals(basDeptInfo.getDeptId())) {
-                    return RespDTO.onError("请输入科室编码!");
-                }else if(basDeptInfo.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(basDeptInfo.getDeptName())){
-                    return RespDTO.onError("请输入科室名称!");
+                if(logSwitch){
+                    basDeptInfoList.forEach(s->{
+                        aMedAbnormalInfoFacade.saveAbnormalInfo("科室信息-正常","", JSON.toJSONString(list),"","");
+                    });
                 }
+                return RespDTO.onSuc("操作正常!");
+            }else {
+                return RespDTO.onError("未接收到数据!");
             }
-            execute(basDeptInfoList);
-            return RespDTO.onSuc(basDeptInfoDtoList);
-        }else {
-            return RespDTO.onError("未接收到数据!");
+        }catch (Exception e){
+            log.error(e.getMessage(),e);
+            aMedAbnormalInfoFacade.saveAbnormalInfo("科室信息-异常","", JSON.toJSONString(list),"",e.getMessage());
+            return RespDTO.onError("数据处理异常,详情查看日志表");
         }
     }
 
     public void execute(List<BasDeptInfo> basDeptInfoList){
-        try{
-            List<BasDeptInfo> addE=Lists.newArrayList();
-            List<BasDeptInfo> updateE=Lists.newArrayList();
-            basDeptInfoList.stream().forEach(s -> {
-                BasDeptInfo basDeptInfo =this.getOne(new QueryWrapper<BasDeptInfo>()
-                        .eq("dept_id", s.getDeptId())
-                        .eq("hospital_id", s.getHospitalId()), false);
-                if (basDeptInfo != null) {
-                    s.setGmtModified(new Date());
-                    updateE.add(s);
-                } else {
-                    s.setGmtCreate(new Date());
-                    addE.add(s);
-                }
-            });
-            if(updateE.size()>0){
-                basDeptInfoService.updateBatchByKey(updateE);
-            }
-            if(addE.size()>0){
-                basDeptInfoService.saveBatch(addE);
+        List<BasDeptInfo> addE=Lists.newArrayList();
+        List<BasDeptInfo> updateE=Lists.newArrayList();
+        basDeptInfoList.stream().forEach(s -> {
+            BasDeptInfo basDeptInfo =this.getOne(new QueryWrapper<BasDeptInfo>()
+                    .eq("dept_id", s.getDeptId())
+                    .eq("hospital_id", s.getHospitalId()), false);
+            if (basDeptInfo != null) {
+                s.setGmtModified(new Date());
+                updateE.add(s);
+            } else {
+                s.setGmtCreate(new Date());
+                addE.add(s);
             }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("科室信息","", JSON.toJSONString(basDeptInfoList),"",e.getMessage());
+        });
+        if(updateE.size()>0){
+            basDeptInfoService.updateBatchByKey(updateE);
+        }
+        if(addE.size()>0){
+            basDeptInfoService.saveBatch(addE);
         }
     }
 }

+ 46 - 39
src/main/java/com/diagbot/facade/data/ABasDoctorInfoFacade.java

@@ -12,6 +12,7 @@ import com.diagbot.vo.data.ABasDoctorInfoVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
 
 import java.util.Date;
@@ -24,7 +25,8 @@ public class ABasDoctorInfoFacade extends BasDoctorInfoServiceImpl {
     private BasDoctorInfoServiceImpl basDoctorInfoService;
     @Autowired
     private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
+    @Value("${log_switch.enable}")
+    private boolean logSwitch;
     private TZDBConn tzDBConn = new TZDBConn();
 
     /**
@@ -50,51 +52,56 @@ public class ABasDoctorInfoFacade extends BasDoctorInfoServiceImpl {
      * @return
      */
     public RespDTO<List<ABasDoctorInfoDTO>> executeDoctor(List<ABasDoctorInfoVO> list) {
-        if(list!=null && list.size()>0){
-            List<BasDoctorInfo> basDoctorInfoList=Lists.newArrayList();
-            List<ABasDoctorInfoDTO> basDoctorDtoList=Lists.newArrayList();
-            basDoctorInfoList=BeanUtil.listCopyTo(list,BasDoctorInfo.class);
-            basDoctorDtoList=BeanUtil.listCopyTo(list,ABasDoctorInfoDTO.class);
-            //循环验证数据有效性
-            for (BasDoctorInfo basDoctorInfo:basDoctorInfoList) {
-                if("".equals(basDoctorInfo.getDoctorId())) {
-                    return RespDTO.onError("请输入医生编码!");
-                }else if(basDoctorInfo.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
+        try {
+            if(list!=null && list.size()>0){
+                List<BasDoctorInfo> basDoctorInfoList=Lists.newArrayList();
+                basDoctorInfoList=BeanUtil.listCopyTo(list,BasDoctorInfo.class);
+                //循环验证数据有效性
+                for (BasDoctorInfo basDoctorInfo:basDoctorInfoList) {
+                    if("".equals(basDoctorInfo.getDoctorId())) {
+                        return RespDTO.onError("请输入医生编码!");
+                    }else if(basDoctorInfo.getHospitalId()==null){
+                        return RespDTO.onError("请输入医院编码!");
+                    }
+                }
+                execute(basDoctorInfoList);
+
+                if(logSwitch){
+                    basDoctorInfoList.forEach(s->{
+                        aMedAbnormalInfoFacade.saveAbnormalInfo("医生信息-正常","", JSON.toJSONString(list),"","");
+                    });
                 }
+                return RespDTO.onSuc("操作正常!");
+            }else{
+                return RespDTO.onError("未接收到数据!");
             }
-            execute(basDoctorInfoList);
-            return RespDTO.onSuc(basDoctorDtoList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
+        }catch (Exception e){
+            log.error(e.getMessage(),e);
+            aMedAbnormalInfoFacade.saveAbnormalInfo("医生信息-异常","", JSON.toJSONString(list),"",e.getMessage());
+            return RespDTO.onError("数据处理异常,详情查看日志表");
         }
     }
 
     public void execute(List<BasDoctorInfo> basDoctorInfoList){
-        try {
-            List<BasDoctorInfo> addE=Lists.newArrayList();
-            List<BasDoctorInfo> updateE=Lists.newArrayList();
-            basDoctorInfoList.stream().forEach(s -> {
-                BasDoctorInfo basDoctorInfo =this.baseMapper.selectOne(new QueryWrapper<BasDoctorInfo>()
-                        .eq("doctor_id", s.getDoctorId())
-                        .eq("hospital_id", s.getHospitalId()));
-                if (basDoctorInfo != null) {
-                    s.setGmtModified(new Date());
-                    updateE.add(s);
-                } else {
-                    s.setGmtCreate(new Date());
-                    addE.add(s);
-                }
-            });
-            if(updateE.size()>0){
-                basDoctorInfoService.updateBatchByKey(updateE);
-            }
-            if(addE.size()>0){
-                basDoctorInfoService.saveBatch(addE);
+        List<BasDoctorInfo> addE=Lists.newArrayList();
+        List<BasDoctorInfo> updateE=Lists.newArrayList();
+        basDoctorInfoList.stream().forEach(s -> {
+            BasDoctorInfo basDoctorInfo =this.baseMapper.selectOne(new QueryWrapper<BasDoctorInfo>()
+                    .eq("doctor_id", s.getDoctorId())
+                    .eq("hospital_id", s.getHospitalId()));
+            if (basDoctorInfo != null) {
+                s.setGmtModified(new Date());
+                updateE.add(s);
+            } else {
+                s.setGmtCreate(new Date());
+                addE.add(s);
             }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("医生信息","", JSON.toJSONString(basDoctorInfoList),"",e.getMessage());
+        });
+        if(updateE.size()>0){
+            basDoctorInfoService.updateBatchByKey(updateE);
+        }
+        if(addE.size()>0){
+            basDoctorInfoService.saveBatch(addE);
         }
     }
 }

+ 89 - 86
src/main/java/com/diagbot/facade/data/ABehospitalInfoFacade.java

@@ -22,6 +22,7 @@ import com.diagbot.vo.data.APlaceFileVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
 
 import java.util.Date;
@@ -35,11 +36,9 @@ public class ABehospitalInfoFacade extends BehospitalInfoServiceImpl {
     @Autowired
     private QcTypeFacade qcTypeFacade;
     @Autowired
-    private AMedicalRecordFacade aMedicalRecordFacade;
-    @Autowired
     private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-    @Autowired
-    private QcAbnormalFacade qcAbnormalFacade;
+    @Value("${log_switch.enable}")
+    private boolean logSwitch;
 
     private TZDBConn tzDBConn = new TZDBConn();
 
@@ -69,76 +68,80 @@ public class ABehospitalInfoFacade extends BehospitalInfoServiceImpl {
      * @return
      */
     public RespDTO<List<ABehospitalInfoDTO>> executeBehospital(List<ABehospitalInfoVO> list) {
-        if(list!=null && list.size()>0) {
-            List<BehospitalInfo> behospitalInfoList = Lists.newArrayList();
-            List<ABehospitalInfoDTO> behospitalInfoDtoList = Lists.newArrayList();
-            list.stream().forEach(s->{
-                BehospitalInfo behospitalInfo=new BehospitalInfo();
-                BeanUtil.copyProperties(s,behospitalInfo);
-                if(StringUtil.isNotBlank(s.getBirthday())) {
-                    behospitalInfo.setBirthday(DateUtil.parseDate(s.getBirthday()));
-                }
-                if(StringUtil.isNotBlank(s.getLeaveHospitalDate())) {
-                    behospitalInfo.setLeaveHospitalDate(DateUtil.parseDateTime(s.getLeaveHospitalDate()));
-                }
-                if(StringUtil.isNotBlank(s.getBehospitalDate())){
-                    behospitalInfo.setBehospitalDate(DateUtil.parseDateTime(s.getBehospitalDate()));
-                }
-                if(StringUtil.isNotBlank(s.getPlacefileDate())){
-                    behospitalInfo.setPlacefileDate(DateUtil.parseDateTime(s.getPlacefileDate()));
+        try {
+            if(list!=null && list.size()>0) {
+                List<BehospitalInfo> behospitalInfoList = Lists.newArrayList();
+                list.stream().forEach(s->{
+                    BehospitalInfo behospitalInfo=new BehospitalInfo();
+                    BeanUtil.copyProperties(s,behospitalInfo);
+                    if(StringUtil.isNotBlank(s.getBirthday())) {
+                        behospitalInfo.setBirthday(DateUtil.parseDate(s.getBirthday()));
+                    }
+                    if(StringUtil.isNotBlank(s.getLeaveHospitalDate())) {
+                        behospitalInfo.setLeaveHospitalDate(DateUtil.parseDateTime(s.getLeaveHospitalDate()));
+                    }
+                    if(StringUtil.isNotBlank(s.getBehospitalDate())){
+                        behospitalInfo.setBehospitalDate(DateUtil.parseDateTime(s.getBehospitalDate()));
+                    }
+                    if(StringUtil.isNotBlank(s.getPlacefileDate())){
+                        behospitalInfo.setPlacefileDate(DateUtil.parseDateTime(s.getPlacefileDate()));
+                    }
+                    behospitalInfoList.add(behospitalInfo);
+
+                });
+
+                //循环验证数据有效性
+                for (BehospitalInfo behospitalInfo:behospitalInfoList) {
+                    if("".equals(behospitalInfo.getBehospitalCode())) {
+                        return RespDTO.onError("请输入病人住院编码!");
+                    }else if(behospitalInfo.getHospitalId()==null){
+                        return RespDTO.onError("请输入医院编码!");
+                    }else if("".equals(behospitalInfo.getBehDeptId())){
+                        return RespDTO.onError("请输入住院科室编码!");
+                    }else if("".equals(behospitalInfo.getBehDeptName())){
+                        return RespDTO.onError("请输入住院科室名称!");
+                    }
                 }
-                behospitalInfoList.add(behospitalInfo);
-
-            });
-
-            //循环验证数据有效性
-            for (BehospitalInfo behospitalInfo:behospitalInfoList) {
-                if("".equals(behospitalInfo.getBehospitalCode())) {
-                    return RespDTO.onError("请输入病人住院编码!");
-                }else if(behospitalInfo.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(behospitalInfo.getBehDeptId())){
-                    return RespDTO.onError("请输入住院科室编码!");
-                }else if("".equals(behospitalInfo.getBehDeptName())){
-                    return RespDTO.onError("请输入住院科室名称!");
+                execute(behospitalInfoList);
+                if(logSwitch){
+                    behospitalInfoList.forEach(s->{
+                        aMedAbnormalInfoFacade.saveAbnormalInfo("病人住院登记-正常","", JSON.toJSONString(list),"","");
+                    });
                 }
+                return RespDTO.onSuc("操作正常!");
+            }else{
+                return RespDTO.onError("未接收到数据!");
             }
-            execute(behospitalInfoList);
-            behospitalInfoDtoList = BeanUtil.listCopyTo(list, ABehospitalInfoDTO.class);
-            return RespDTO.onSuc(behospitalInfoDtoList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
+        }catch (Exception e){
+            log.error(e.getMessage(),e);
+            aMedAbnormalInfoFacade.saveAbnormalInfo("病人住院登记-异常","", JSON.toJSONString(list),"",e.getMessage());
+            return RespDTO.onError("数据处理异常,详情查看日志表");
         }
     }
 
     public void execute(List<BehospitalInfo> behospitalInfoList){
-        try {
-            List<BehospitalInfo> addE = Lists.newLinkedList();
-            List<BehospitalInfo> updateE = Lists.newLinkedList();
-            behospitalInfoList.stream().forEach(s -> {
-                BehospitalInfo behospitalInfo = this.getOne(new QueryWrapper<BehospitalInfo>()
-                        .eq("behospital_code", s.getBehospitalCode())
-                        .eq("hospital_id", s.getHospitalId())
-                        .eq("is_deleted",IsDeleteEnum.N), false);
-                if (behospitalInfo != null) {
-                    s.setGmtModified(new Date());
-                    s.setQcTypeId(initQcTypeId(s));
-                    updateE.add(s);
-                } else {
-                    s.setGmtCreate(new Date());
-                    s.setQcTypeId(initQcTypeId(s));
-                    addE.add(s);
-                }
-            });
-            if(addE.size()>0){
-                behospitalInfoService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                behospitalInfoService.updateBatchByKey(updateE);
+        List<BehospitalInfo> addE = Lists.newLinkedList();
+        List<BehospitalInfo> updateE = Lists.newLinkedList();
+        behospitalInfoList.stream().forEach(s -> {
+            BehospitalInfo behospitalInfo = this.getOne(new QueryWrapper<BehospitalInfo>()
+                    .eq("behospital_code", s.getBehospitalCode())
+                    .eq("hospital_id", s.getHospitalId())
+                    .eq("is_deleted",IsDeleteEnum.N), false);
+            if (behospitalInfo != null) {
+                s.setGmtModified(new Date());
+                s.setQcTypeId(initQcTypeId(s));
+                updateE.add(s);
+            } else {
+                s.setGmtCreate(new Date());
+                s.setQcTypeId(initQcTypeId(s));
+                addE.add(s);
             }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("病人住院登记","", JSON.toJSONString(behospitalInfoList),"",e.getMessage());
+        });
+        if(addE.size()>0){
+            behospitalInfoService.saveBatch(addE);
+        }
+        if(updateE.size()>0){
+            behospitalInfoService.updateBatchByKey(updateE);
         }
     }
 
@@ -147,27 +150,27 @@ public class ABehospitalInfoFacade extends BehospitalInfoServiceImpl {
      * @param s
      * @return
      */
-    private Long initQcTypeId(BehospitalInfo s){
-        Long qcTypeId=Long.valueOf("0");
-        MedicalRecord medicalRecord = aMedicalRecordFacade.getOne(new QueryWrapper<MedicalRecord>()
-                .eq("behospital_code", s.getBehospitalCode())
+    private Long initQcTypeId(BehospitalInfo s) {
+        Long qcTypeId = Long.valueOf("0");
+        //根据科室查找对应质控类型
+        List<QcType> qcTypeList = qcTypeFacade.list(new QueryWrapper<QcType>()
+                .eq("beh_dept_id", s.getBehDeptId())
                 .eq("hospital_id", s.getHospitalId())
-                .eq("mode_id", Long.valueOf("1"))
-                .eq("is_deleted",IsDeleteEnum.N), false);
-        if(medicalRecord!=null){
-            QcType qcType=qcTypeFacade.getOne(new QueryWrapper<QcType>()
-                    .eq("name", medicalRecord.getRecTitle())
-                    .eq("hospital_id", medicalRecord.getHospitalId())
-                    .eq("is_deleted",IsDeleteEnum.N));
-            if(qcType!=null && qcType.getDefaultModule()==0){
-                qcTypeId=qcType.getId();
-            }else{
-                QcType qcTypeStand=qcTypeFacade.getOne(new QueryWrapper<QcType>()
-                        .eq("default_module", 1)
-                        .eq("hospital_id", medicalRecord.getHospitalId())
-                        .eq("is_deleted",IsDeleteEnum.N));
-                if(qcTypeStand!=null){
-                    qcTypeId=qcTypeStand.getId();
+                .eq("is_deleted", IsDeleteEnum.N));
+        if(qcTypeList == null || qcTypeList.size() == 0){
+            //无质控类型时,新增后初始化
+            QcType qcType = qcTypeFacade.getOne(new QueryWrapper<QcType>()
+                    .eq("default_module", 1)
+                    .eq("hospital_id", s.getHospitalId())
+                    .eq("is_deleted", IsDeleteEnum.N));
+            qcTypeId = qcType.getId();
+        } else if (qcTypeList.size() == 1) {
+            qcTypeId = qcTypeList.get(0).getId();
+        }else {
+            //查找是否有性别区分质控类型
+            for (QcType qcType:qcTypeList) {
+                if (qcType.getSex().equals(s.getSex())) {
+                    qcTypeId = qcType.getId();
                 }
             }
         }

+ 63 - 57
src/main/java/com/diagbot/facade/data/ADoctorAdviceFacade.java

@@ -4,7 +4,6 @@ import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ADoctorAdviceDTO;
 import com.diagbot.entity.DoctorAdvice;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.service.impl.DoctorAdviceServiceImpl;
@@ -17,6 +16,7 @@ import com.diagbot.vo.data.ADoctorAdviceVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
 
 import java.util.Date;
@@ -30,6 +30,8 @@ public class ADoctorAdviceFacade extends DoctorAdviceServiceImpl{
     private DoctorAdviceServiceImpl doctorAdviceService;
     @Autowired
     private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
+    @Value("${log_switch.enable}")
+    private boolean logSwitch;
 
     private TZDBConn tzDBConn = new TZDBConn();
 
@@ -53,68 +55,72 @@ public class ADoctorAdviceFacade extends DoctorAdviceServiceImpl{
      * @param list
      * @return
      */
-    public RespDTO<List<ADoctorAdviceDTO>> executeDoctorAdvice(List<ADoctorAdviceVO> list) {
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (ADoctorAdviceVO doctorAdvice:list) {
-                if("".equals(doctorAdvice.getDoctorAdviceId())) {
-                    return RespDTO.onError("请输入病人医嘱编码!");
-                }else if(doctorAdvice.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(doctorAdvice.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<DoctorAdvice> doctorAdviceList=Lists.newArrayList();
-            List<ADoctorAdviceDTO> doctorAdviceDtoList=Lists.newArrayList();
-            list.stream().forEach(s->{
-                DoctorAdvice doctorAdvice=new DoctorAdvice();
-                BeanUtil.copyProperties(s,doctorAdvice);
-                if(StringUtil.isNotBlank(s.getDaStartDate())){
-                    doctorAdvice.setDaStartDate(DateUtil.parseDateTime(s.getDaStartDate()));
-                }
-                if(StringUtil.isNotBlank(s.getDaStopDate())){
-                    doctorAdvice.setDaStopDate(DateUtil.parseDateTime(s.getDaStopDate()));
-                }
-                doctorAdviceList.add(doctorAdvice);
-            });
-            execute(doctorAdviceList);
-            doctorAdviceDtoList=BeanUtil.listCopyTo(list,ADoctorAdviceDTO.class);
-            return RespDTO.onSuc(doctorAdviceDtoList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<DoctorAdvice> doctorAdviceList){
+    public RespDTO executeDoctorAdvice(List<ADoctorAdviceVO> list) {
         try {
-            List<DoctorAdvice> addE = Lists.newLinkedList();
-            List<DoctorAdvice> updateE = Lists.newLinkedList();
-            if (doctorAdviceList != null && doctorAdviceList.size() > 0) {
-                doctorAdviceList.stream().forEach(s -> {
-                    DoctorAdvice doctorAdvice = this.getOne(new QueryWrapper<DoctorAdvice>()
-                            .eq("doctor_advice_id", s.getDoctorAdviceId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (doctorAdvice != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
+            if(list!=null && list.size()>0){
+                //循环验证数据有效性
+                for (ADoctorAdviceVO doctorAdvice:list) {
+                    if("".equals(doctorAdvice.getDoctorAdviceId())) {
+                        return RespDTO.onError("请输入病人医嘱编码!");
+                    }else if(doctorAdvice.getHospitalId()==null){
+                        return RespDTO.onError("请输入医院编码!");
+                    }else if("".equals(doctorAdvice.getBehospitalCode())){
+                        return RespDTO.onError("请输入病人住院编码!");
+                    }
+                }
+                //初始、格式化数据
+                List<DoctorAdvice> doctorAdviceList=Lists.newArrayList();
+                list.stream().forEach(s->{
+                    DoctorAdvice doctorAdvice=new DoctorAdvice();
+                    BeanUtil.copyProperties(s,doctorAdvice);
+                    if(StringUtil.isNotBlank(s.getDaStartDate())){
+                        doctorAdvice.setDaStartDate(DateUtil.parseDateTime(s.getDaStartDate()));
+                    }
+                    if(StringUtil.isNotBlank(s.getDaStopDate())){
+                        doctorAdvice.setDaStopDate(DateUtil.parseDateTime(s.getDaStopDate()));
                     }
+                    doctorAdviceList.add(doctorAdvice);
                 });
-            }
-            if(addE.size()>0){
-                doctorAdviceService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                doctorAdviceService.updateBatchByKey(updateE);
+                execute(doctorAdviceList);
+                if(logSwitch){
+                    doctorAdviceList.forEach(s->{
+                        aMedAbnormalInfoFacade.saveAbnormalInfo("病人住院医嘱-正常","", JSON.toJSONString(list),"","");
+                    });
+                }
+                return RespDTO.onSuc("操作正常!");
+            }else{
+                return RespDTO.onError("未接收到数据!");
             }
         }catch (Exception e){
             log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("医嘱信息","", JSON.toJSONString(doctorAdviceList),"",e.getMessage());
+            aMedAbnormalInfoFacade.saveAbnormalInfo("病人住院医嘱-异常","", JSON.toJSONString(list),"",e.getMessage());
+            return RespDTO.onError("数据处理异常,详情查看日志表");
+        }
+    }
+
+    public void execute(List<DoctorAdvice> doctorAdviceList){
+        List<DoctorAdvice> addE = Lists.newLinkedList();
+        List<DoctorAdvice> updateE = Lists.newLinkedList();
+        if (doctorAdviceList != null && doctorAdviceList.size() > 0) {
+            doctorAdviceList.stream().forEach(s -> {
+                DoctorAdvice doctorAdvice = this.getOne(new QueryWrapper<DoctorAdvice>()
+                        .eq("doctor_advice_id", s.getDoctorAdviceId())
+                        .eq("hospital_id", s.getHospitalId())
+                        .eq("behospital_code",s.getBehospitalCode()), false);
+                if (doctorAdvice != null) {
+                    s.setGmtModified(new Date());
+                    updateE.add(s);
+                } else {
+                    s.setGmtCreate(new Date());
+                    addE.add(s);
+                }
+            });
+        }
+        if(addE.size()>0){
+            doctorAdviceService.saveBatch(addE);
+        }
+        if(updateE.size()>0){
+            doctorAdviceService.updateBatchByKey(updateE);
         }
     }
 

+ 45 - 39
src/main/java/com/diagbot/facade/data/AHomeDiagnoseInfoFacade.java

@@ -17,6 +17,7 @@ import com.diagbot.vo.data.AHomeDiagnoseVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
 
 import java.util.Date;
@@ -28,9 +29,10 @@ public class AHomeDiagnoseInfoFacade extends HomeDiagnoseInfoServiceImpl{
     @Autowired
     @Qualifier("homeDiagnoseInfoServiceImpl")
     private HomeDiagnoseInfoServiceImpl homeDiagnoseInfoService;
-
     @Autowired
     private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
+    @Value("${log_switch.enable}")
+    private boolean logSwitch;
 
     private TZDBConn tzDBConn = new TZDBConn();
 
@@ -51,49 +53,53 @@ public class AHomeDiagnoseInfoFacade extends HomeDiagnoseInfoServiceImpl{
      * @return
      */
     public RespDTO<List<AHomeDiagnoseDTO>> executeHomeDiagnose(List<AHomeDiagnoseVO> list) {
-        if(list!=null && list.size()>0){
-            List<HomeDiagnoseInfo> homeDiagnoseList=Lists.newArrayList();
-            List<AHomeDiagnoseDTO> homeDiagnoseDtoList=Lists.newArrayList();
-
-            homeDiagnoseList=BeanUtil.listCopyTo(list,HomeDiagnoseInfo.class);
-            homeDiagnoseDtoList=BeanUtil.listCopyTo(list,AHomeDiagnoseDTO.class);
-            execute(homeDiagnoseList);
-            return RespDTO.onSuc(homeDiagnoseDtoList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
+        try{
+            if(list!=null && list.size()>0){
+                List<HomeDiagnoseInfo> homeDiagnoseList=Lists.newArrayList();
+                homeDiagnoseList=BeanUtil.listCopyTo(list,HomeDiagnoseInfo.class);
+                execute(homeDiagnoseList);
+                if(logSwitch){
+                    homeDiagnoseList.forEach(s->{
+                        aMedAbnormalInfoFacade.saveAbnormalInfo("病案首页医嘱-正常","", JSON.toJSONString(list),"","");
+                    });
+                }
+                return RespDTO.onSuc("操作正常!");
+            }else{
+                return RespDTO.onError("未接收到数据!");
+            }
+        }catch (Exception e){
+            log.error(e.getMessage(),e);
+            aMedAbnormalInfoFacade.saveAbnormalInfo("病案首页医嘱-异常","", JSON.toJSONString(list),"",e.getMessage());
+            return RespDTO.onError("数据处理异常,详情查看日志表");
         }
+
     }
 
     public void execute(List<HomeDiagnoseInfo> homeDiagnoseList){
-        try{
-            List<HomeDiagnoseInfo> addE = Lists.newLinkedList();
-            List<HomeDiagnoseInfo> updateE = Lists.newLinkedList();
-            if (homeDiagnoseList != null && homeDiagnoseList.size() > 0) {
-                homeDiagnoseList.stream().forEach(s -> {
-                    if(s.getHomePageId()!=null && !"".equals(s.getDiagnoseOrderNo())){
-                        HomeDiagnoseInfo diagnoseInfo = this.getOne(new QueryWrapper<HomeDiagnoseInfo>()
-                                .eq("home_page_id", s.getHomePageId())
-                                .eq("hospital_id", s.getHospitalId())
-                                .eq("diagnose_order_no", s.getDiagnoseOrderNo()), false);
-                        if (diagnoseInfo != null) {
-                            s.setGmtModified(new Date());
-                            updateE.add(s);
-                        } else {
-                            s.setGmtCreate(new Date());
-                            addE.add(s);
-                        }
+        List<HomeDiagnoseInfo> addE = Lists.newLinkedList();
+        List<HomeDiagnoseInfo> updateE = Lists.newLinkedList();
+        if (homeDiagnoseList != null && homeDiagnoseList.size() > 0) {
+            homeDiagnoseList.stream().forEach(s -> {
+                if(s.getHomePageId()!=null && !"".equals(s.getDiagnoseOrderNo())){
+                    HomeDiagnoseInfo diagnoseInfo = this.getOne(new QueryWrapper<HomeDiagnoseInfo>()
+                            .eq("home_page_id", s.getHomePageId())
+                            .eq("hospital_id", s.getHospitalId())
+                            .eq("diagnose_order_no", s.getDiagnoseOrderNo()), false);
+                    if (diagnoseInfo != null) {
+                        s.setGmtModified(new Date());
+                        updateE.add(s);
+                    } else {
+                        s.setGmtCreate(new Date());
+                        addE.add(s);
                     }
-                });
-            }
-            if(addE.size()>0){
-                homeDiagnoseInfoService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                homeDiagnoseInfoService.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("病案首页-医嘱","", JSON.toJSONString(homeDiagnoseList),"",e.getMessage());
+                }
+            });
+        }
+        if(addE.size()>0){
+            homeDiagnoseInfoService.saveBatch(addE);
+        }
+        if(updateE.size()>0){
+            homeDiagnoseInfoService.updateBatchByKey(updateE);
         }
     }
 

+ 53 - 42
src/main/java/com/diagbot/facade/data/AHomeOperationInfoFacade.java

@@ -17,6 +17,7 @@ import com.diagbot.vo.data.AHomeOperationVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
 
 import java.util.Date;
@@ -30,6 +31,8 @@ public class AHomeOperationInfoFacade extends HomeOperationInfoServiceImpl{
     private HomeOperationInfoServiceImpl homeOperationInfoService;
     @Autowired
     private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
+    @Value("${log_switch.enable}")
+    private boolean logSwitch;
 
     private TZDBConn tzDBConn = new TZDBConn();
 
@@ -49,53 +52,61 @@ public class AHomeOperationInfoFacade extends HomeOperationInfoServiceImpl{
      * @param list
      * @return
      */
-    public List<AHomeOperationDTO> executeHomeOperation(List<AHomeOperationVO> list) {
-        List<HomeOperationInfo> homeOperationList=Lists.newArrayList();
-        List<AHomeOperationDTO> homeOperationDtoList=Lists.newArrayList();
-        if(list!=null && list.size()>0){
-            list.stream().forEach(s->{
-                HomeOperationInfo homeOperationInfo=new HomeOperationInfo();
-                BeanUtil.copyProperties(s,homeOperationInfo);
-                homeOperationInfo.setOperationDate(DateUtil.parseDateTime(s.getOperationDate()));
-                homeOperationList.add(homeOperationInfo);
-            });
-            homeOperationDtoList=BeanUtil.listCopyTo(list,AHomeOperationDTO.class);
-            execute(homeOperationList);
-        }
-        return homeOperationDtoList;
-    }
-
-    public void execute(List<HomeOperationInfo> homeOperationList){
+    public RespDTO executeHomeOperation(List<AHomeOperationVO> list) {
         try {
-            List<HomeOperationInfo> addE = Lists.newLinkedList();
-            List<HomeOperationInfo> updateE = Lists.newLinkedList();
-            if (homeOperationList != null && homeOperationList.size() > 0) {
-                homeOperationList.stream().forEach(s -> {
-                    if(s.getHomePageId()!=null && !"".equals(s.getOperationOrderNo())) {
-                        QueryWrapper<HomeOperationInfo> queryWrapper = new QueryWrapper<>();
-                        queryWrapper.eq("home_page_id", s.getHomePageId());
-                        queryWrapper.eq("hospital_id", s.getHospitalId());
-                        queryWrapper.eq("operation_order_no", s.getOperationOrderNo());
-                        HomeOperationInfo operationInfo = this.getOne(queryWrapper, false);
-                        if (operationInfo != null) {
-                            s.setGmtModified(new Date());
-                            updateE.add(s);
-                        } else {
-                            s.setGmtCreate(new Date());
-                            addE.add(s);
-                        }
-                    }
+            List<HomeOperationInfo> homeOperationList=Lists.newArrayList();
+            List<AHomeOperationDTO> homeOperationDtoList=Lists.newArrayList();
+            if(list!=null && list.size()>0){
+                list.stream().forEach(s->{
+                    HomeOperationInfo homeOperationInfo=new HomeOperationInfo();
+                    BeanUtil.copyProperties(s,homeOperationInfo);
+                    homeOperationInfo.setOperationDate(DateUtil.parseDateTime(s.getOperationDate()));
+                    homeOperationList.add(homeOperationInfo);
                 });
-            }
-            if(addE.size()>0){
-                homeOperationInfoService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                homeOperationInfoService.updateBatchByKey(updateE);
+                homeOperationDtoList=BeanUtil.listCopyTo(list,AHomeOperationDTO.class);
+                execute(homeOperationList);
+                if(logSwitch){
+                    homeOperationList.forEach(s->{
+                        aMedAbnormalInfoFacade.saveAbnormalInfo("病案首页手术-正常","", JSON.toJSONString(list),"","");
+                    });
+                }
+                return RespDTO.onSuc("操作正常!");
+            }else{
+                return RespDTO.onError("未接收到数据!");
             }
         }catch (Exception e){
             log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("病案首页-手术","",JSON.toJSONString(homeOperationList),"",e.getMessage());
+            aMedAbnormalInfoFacade.saveAbnormalInfo("病案首页手术-异常","",JSON.toJSONString(list),"",e.getMessage());
+            return RespDTO.onError("数据处理异常,详情查看日志表");
+        }
+    }
+
+    public void execute(List<HomeOperationInfo> homeOperationList){
+        List<HomeOperationInfo> addE = Lists.newLinkedList();
+        List<HomeOperationInfo> updateE = Lists.newLinkedList();
+        if (homeOperationList != null && homeOperationList.size() > 0) {
+            homeOperationList.stream().forEach(s -> {
+                if(s.getHomePageId()!=null && !"".equals(s.getOperationOrderNo())) {
+                    QueryWrapper<HomeOperationInfo> queryWrapper = new QueryWrapper<>();
+                    queryWrapper.eq("home_page_id", s.getHomePageId());
+                    queryWrapper.eq("hospital_id", s.getHospitalId());
+                    queryWrapper.eq("operation_order_no", s.getOperationOrderNo());
+                    HomeOperationInfo operationInfo = this.getOne(queryWrapper, false);
+                    if (operationInfo != null) {
+                        s.setGmtModified(new Date());
+                        updateE.add(s);
+                    } else {
+                        s.setGmtCreate(new Date());
+                        addE.add(s);
+                    }
+                }
+            });
+        }
+        if(addE.size()>0){
+            homeOperationInfoService.saveBatch(addE);
+        }
+        if(updateE.size()>0){
+            homeOperationInfoService.updateBatchByKey(updateE);
         }
     }
 

+ 4 - 0
src/main/java/com/diagbot/facade/data/AHomePageFacade.java

@@ -16,6 +16,7 @@ import com.diagbot.vo.data.*;
 import com.google.common.collect.Lists;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
 
 import java.util.Date;
@@ -45,6 +46,9 @@ public class AHomePageFacade extends HomePageServiceImpl{
     @Autowired
     private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
 
+    @Value("${log_switch.enable}")
+    private boolean logSwitch;
+
     private TZDBConn tzDBConn = new TZDBConn();
 
     /**

+ 38 - 25
src/main/java/com/diagbot/facade/data/AMedCrisisFacade.java

@@ -12,6 +12,7 @@ import com.diagbot.vo.data.AMedCrisisVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
 
 import java.util.Date;
@@ -25,36 +26,48 @@ public class AMedCrisisFacade extends MedCrisisInfoServiceImpl {
     private MedCrisisInfoServiceImpl medCrisisInfoService;
     @Autowired
     private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
+    @Value("${log_switch.enable}")
+    private boolean logSwitch;
 
     public RespDTO<List<AMedCrisisDTO>> executeMedCrisis(List<AMedCrisisVO> list) {
-        if (list != null && list.size() > 0) {
-            //循环验证数据有效性
-            for (AMedCrisisVO aMedCrisisVO : list) {
-                if ("".equals(aMedCrisisVO.getRecId())) {
-                    return RespDTO.onError("请输入文书编码!");
-                } else if ("".equals(aMedCrisisVO.getBehospitalCode())) {
-                    return RespDTO.onError("请输入病人住院编码!");
-                } else if (aMedCrisisVO.getHospitalId() == null) {
-                    return RespDTO.onError("请输入医院编码!");
-                } else if ("".equals(aMedCrisisVO.getRecType())) {
-                    return RespDTO.onError("请输入危急值类型!");
+        try{
+            if (list != null && list.size() > 0) {
+                //循环验证数据有效性
+                for (AMedCrisisVO aMedCrisisVO : list) {
+                    if ("".equals(aMedCrisisVO.getRecId())) {
+                        return RespDTO.onError("请输入文书编码!");
+                    } else if ("".equals(aMedCrisisVO.getBehospitalCode())) {
+                        return RespDTO.onError("请输入病人住院编码!");
+                    } else if (aMedCrisisVO.getHospitalId() == null) {
+                        return RespDTO.onError("请输入医院编码!");
+                    } else if ("".equals(aMedCrisisVO.getRecType())) {
+                        return RespDTO.onError("请输入危急值类型!");
+                    }
                 }
-            }
 
-            List<MedCrisisInfo> medCrisisList = Lists.newArrayList();
-            list.stream().forEach(s -> {
-                MedCrisisInfo medCrisisInfo = new MedCrisisInfo();
-                BeanUtil.copyProperties(s, medCrisisInfo);
-                medCrisisInfo.setRepDate(DateUtil.parseDateTime(s.getRepDate()));
-                medCrisisInfo.setSendDate(DateUtil.parseDateTime(s.getSendDate()));
-                medCrisisList.add(medCrisisInfo);
-            });
-            execute(medCrisisList);
+                List<MedCrisisInfo> medCrisisList = Lists.newArrayList();
+                list.stream().forEach(s -> {
+                    MedCrisisInfo medCrisisInfo = new MedCrisisInfo();
+                    BeanUtil.copyProperties(s, medCrisisInfo);
+                    medCrisisInfo.setRepDate(DateUtil.parseDateTime(s.getRepDate()));
+                    medCrisisInfo.setSendDate(DateUtil.parseDateTime(s.getSendDate()));
+                    medCrisisList.add(medCrisisInfo);
+                });
+                execute(medCrisisList);
 
-            List<AMedCrisisDTO> medCrisisDtoList = BeanUtil.listCopyTo(list, AMedCrisisDTO.class);
-            return RespDTO.onSuc(medCrisisDtoList);
-        } else {
-            return RespDTO.onError("未接收到数据!");
+                if(logSwitch){
+                    medCrisisList.forEach(s->{
+                        aMedAbnormalInfoFacade.saveAbnormalInfo("危急值信息-正常","", JSON.toJSONString(list),"","");
+                    });
+                }
+                return RespDTO.onSuc("操作正常!");
+            } else {
+                return RespDTO.onError("未接收到数据!");
+            }
+        }catch (Exception e){
+            log.error(e.getMessage(),e);
+            aMedAbnormalInfoFacade.saveAbnormalInfo("危急值信息-异常","", JSON.toJSONString(list),"",e.getMessage());
+            return RespDTO.onError("数据处理异常,详情查看日志表");
         }
     }
 

+ 122 - 0
src/main/java/com/diagbot/facade/data/AMedLisInfoFacade.java

@@ -0,0 +1,122 @@
+package com.diagbot.facade.data;
+
+import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.entity.MedLisInfo;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.service.impl.MedLisInfoServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.DateUtil;
+import com.diagbot.util.StringUtil;
+import com.diagbot.util.TZDBConn;
+import com.diagbot.vo.data.ADeleteFlagVO;
+import com.diagbot.vo.data.AMedLisInfoVO;
+import com.google.common.collect.Lists;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Component;
+
+import java.util.Date;
+import java.util.List;
+
+@Component
+public class AMedLisInfoFacade extends MedLisInfoServiceImpl {
+
+    private TZDBConn tzDBConn = new TZDBConn();
+    @Autowired
+    @Qualifier("medLisInfoServiceImpl")
+    private MedLisInfoServiceImpl medLisInfoServiceImpl;
+    @Autowired
+    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
+    @Value("${log_switch.enable}")
+    private boolean logSwitch;
+
+    public RespDTO  dealData(List<AMedLisInfoVO> list) {
+        try {
+            if(list!=null && list.size()>0){
+                //循环验证数据有效性
+                for (AMedLisInfoVO aMedLisInfoVO:list) {
+                    if(StringUtil.isEmpty(aMedLisInfoVO.getRepNo())){
+                        return RespDTO.onError("请输入报告单号!");
+                    }else if(aMedLisInfoVO.getHospitalId()==null){
+                        return RespDTO.onError("请输入医院编码!");
+                    }else if(StringUtil.isEmpty(aMedLisInfoVO.getBehospitalCode())) {
+                        return RespDTO.onError("请输入病人住院编码!");
+                    }
+                }
+
+                List<MedLisInfo> medLisInfoList=Lists.newArrayList();
+                list.stream().forEach(s->{
+                    MedLisInfo medLisInfo=new MedLisInfo();
+                    BeanUtil.copyProperties(s,medLisInfo);
+                    medLisInfoList.add(medLisInfo);
+                });
+                execute(medLisInfoList);
+                if(logSwitch){
+                    medLisInfoList.forEach(s->{
+                        aMedAbnormalInfoFacade.saveAbnormalInfo("检验信息-正常","", JSON.toJSONString(list),"","");
+                    });
+                }
+                return RespDTO.onSuc("操作正常!");
+            }else{
+                return RespDTO.onError("未接收到数据!");
+            }
+        }catch (Exception e){
+            aMedAbnormalInfoFacade.saveAbnormalInfo("检验信息-异常","",JSON.toJSONString(list),"",e.getMessage());
+            return RespDTO.onError(e.getMessage());
+        }
+    }
+    
+    public void execute(List<MedLisInfo> medLisInfoList){
+        List<MedLisInfo> addE = Lists.newLinkedList();
+        List<MedLisInfo> updateE = Lists.newLinkedList();
+        if (medLisInfoList != null && medLisInfoList.size() > 0) {
+            medLisInfoList.stream().forEach(s -> {
+                MedLisInfo medLisInfo = this.getOne(new QueryWrapper<MedLisInfo>()
+                        .eq("rep_no", s.getRepNo())
+                        .eq("hospital_id", s.getHospitalId()), false);
+                if (medLisInfo != null) {
+                    s.setGmtModified(new Date());
+                    updateE.add(s);
+                } else {
+                    s.setGmtCreate(new Date());
+                    addE.add(s);
+                }
+            });
+        }
+        if(addE.size()>0){
+            medLisInfoServiceImpl.saveBatch(addE);
+        }
+        if(updateE.size()>0){
+            this.baseMapper.updateBatchByKey(updateE);
+        }
+    }
+
+    public RespDTO deleteFlag(ADeleteFlagVO aDeleteFlagVO){
+        try {
+            //验证数据是否存在
+            if(StringUtil.isEmpty(aDeleteFlagVO.getRepNo())){
+                return RespDTO.onError("请输入报告单号!");
+            }else if(aDeleteFlagVO.getHospitalId()==null){
+                return RespDTO.onError("请输入医院编码!");
+            }else {
+                UpdateWrapper<MedLisInfo> updateWrapper=new UpdateWrapper<>();
+                updateWrapper.eq("rep_no", aDeleteFlagVO.getRepNo())
+                        .eq("hospital_id", aDeleteFlagVO.getHospitalId())
+                        .eq("is_deleted", IsDeleteEnum.N)
+                        .set("is_deleted",IsDeleteEnum.Y)
+                        .set("gmt_modified", DateUtil.now());
+
+                Boolean flag=update(new MedLisInfo(),updateWrapper);
+                //aMedAbnormalInfoFacade.saveAbnormalInfo("检查-删除",JSON.toJSONString(aDeleteFlagVO),JSON.toJSONString(RespDTO.onSuc(flag)),"操作成功!");
+                return RespDTO.onSuc(flag);
+            }
+        }catch (Exception e){
+            aMedAbnormalInfoFacade.saveAbnormalInfo("检查信息-删除异常",aDeleteFlagVO.getRecId(), JSON.toJSONString(aDeleteFlagVO),"",e.getMessage());
+            return RespDTO.onError(e.getMessage());
+        }
+    }
+}

+ 34 - 34
src/main/java/com/diagbot/facade/data/AMedLisResultFacade.java

@@ -15,6 +15,7 @@ import com.diagbot.vo.data.ADeleteFlagVO;
 import com.diagbot.vo.data.AMedLisResultVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
 
 import java.util.Date;
@@ -24,7 +25,8 @@ import java.util.List;
 public class AMedLisResultFacade extends MedLisResultServiceImpl {
     @Autowired
     private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
+    @Value("${log_switch.enable}")
+    private boolean logSwitch;
     private TZDBConn tzDBConn = new TZDBConn();
 
     /**
@@ -38,7 +40,7 @@ public class AMedLisResultFacade extends MedLisResultServiceImpl {
         execute(medLisResultList);
     }
 
-    public RespDTO<List<AMedLisResultVO>> executeMedLisResult(List<AMedLisResultVO> list) {
+    public RespDTO executeMedLisResult(List<AMedLisResultVO> list) {
         try {
             if(list!=null && list.size()>0){
                 //循环验证数据有效性
@@ -59,58 +61,56 @@ public class AMedLisResultFacade extends MedLisResultServiceImpl {
                     medLisResultList.add(medLisResult);
                 });
                 execute(medLisResultList);
-
-                return RespDTO.onSuc(list);
+                if(logSwitch){
+                    medLisResultList.forEach(s->{
+                        aMedAbnormalInfoFacade.saveAbnormalInfo("检验结果-正常","", JSON.toJSONString(list),"","");
+                    });
+                }
+                return RespDTO.onSuc("操作正常!");
             }else{
-                aMedAbnormalInfoFacade.saveAbnormalInfo("检验","",JSON.toJSONString(list),"","未接收到数据!");
                 return RespDTO.onError("未接收到数据!");
             }
         }catch (Exception e){
-            aMedAbnormalInfoFacade.saveAbnormalInfo("检验","",JSON.toJSONString(list),"",e.getMessage());
+            aMedAbnormalInfoFacade.saveAbnormalInfo("检验结果-异常","",JSON.toJSONString(list),"",e.getMessage());
             return RespDTO.onError(e.getMessage());
         }
     }
 
     public void execute(List<MedLisResult> medLisResultList){
-        try {
-            List<MedLisResult> addE = Lists.newLinkedList();
-            List<MedLisResult> updateE = Lists.newLinkedList();
-            if (medLisResultList != null && medLisResultList.size() > 0) {
-                medLisResultList.stream().forEach(s -> {
-                    MedLisResult medLisResult = this.getOne(new QueryWrapper<MedLisResult>()
-                            .eq("rep_no", s.getRepNo())
-                            .eq("hospital_id", s.getHospitalId()), false);
-                    if (medLisResult != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                this.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-            //aMedAbnormalInfoFacade.saveAbnormalInfo("检验",JSON.toJSONString(medLisResultList),"","操作成功!");
-        }catch (Exception e){
-            aMedAbnormalInfoFacade.saveAbnormalInfo("检验","",JSON.toJSONString(medLisResultList),"",e.getMessage());
+        List<MedLisResult> addE = Lists.newLinkedList();
+        List<MedLisResult> updateE = Lists.newLinkedList();
+        if (medLisResultList != null && medLisResultList.size() > 0) {
+            medLisResultList.stream().forEach(s -> {
+                MedLisResult medLisResult = this.getOne(new QueryWrapper<MedLisResult>()
+                        .eq("rep_no", s.getRepNo())
+                        .eq("hospital_id", s.getHospitalId()), false);
+                if (medLisResult != null) {
+                    s.setGmtModified(new Date());
+                    updateE.add(s);
+                } else {
+                    s.setGmtCreate(new Date());
+                    addE.add(s);
+                }
+            });
+        }
+        if(addE.size()>0){
+            this.saveBatch(addE);
+        }
+        if(updateE.size()>0){
+            this.baseMapper.updateBatchByKey(updateE);
         }
     }
 
     public RespDTO deleteFlag(ADeleteFlagVO aDeleteFlagVO){
         try {
             //验证数据是否存在
-            if(StringUtil.isEmpty(aDeleteFlagVO.getReptNo())){
+            if(StringUtil.isEmpty(aDeleteFlagVO.getRepNo())){
                 return RespDTO.onError("请输入报告单号!");
             }else if(aDeleteFlagVO.getHospitalId()==null){
                 return RespDTO.onError("请输入医院编码!");
             }else {
                 UpdateWrapper<MedLisResult> updateWrapper=new UpdateWrapper<>();
-                updateWrapper.eq("rep_no", aDeleteFlagVO.getReptNo())
+                updateWrapper.eq("rep_no", aDeleteFlagVO.getRepNo())
                         .eq("hospital_id", aDeleteFlagVO.getHospitalId())
                         .eq("is_deleted",IsDeleteEnum.N)
                         .set("is_deleted",IsDeleteEnum.Y)

+ 124 - 0
src/main/java/com/diagbot/facade/data/AMedPacsInfoFacade.java

@@ -0,0 +1,124 @@
+package com.diagbot.facade.data;
+
+import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.entity.MedPacsInfo;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.service.impl.MedPacsInfoServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.DateUtil;
+import com.diagbot.util.StringUtil;
+import com.diagbot.util.TZDBConn;
+import com.diagbot.vo.data.ADeleteFlagVO;
+import com.diagbot.vo.data.AMedPacsInfoVO;
+import com.google.common.collect.Lists;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Component;
+
+import java.util.Date;
+import java.util.List;
+
+@Component
+public class AMedPacsInfoFacade extends MedPacsInfoServiceImpl {
+    private TZDBConn tzDBConn = new TZDBConn();
+
+    @Autowired
+    @Qualifier("medPacsInfoServiceImpl")
+    private MedPacsInfoServiceImpl medPacsInfoServiceImpl;
+    @Autowired
+    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
+    @Value("${log_switch.enable}")
+    private boolean logSwitch;
+
+    
+    public RespDTO dealData(List<AMedPacsInfoVO> list) {
+        try {
+            if(list!=null && list.size()>0){
+                //循环验证数据有效性
+                for (AMedPacsInfoVO aMedPacsInfoVO:list) {
+                    if(StringUtil.isEmpty(aMedPacsInfoVO.getRepNo())){
+                        return RespDTO.onError("请输入报告单号!");
+                    }else if(aMedPacsInfoVO.getHospitalId()==null){
+                        return RespDTO.onError("请输入医院编码!");
+                    }else if(StringUtil.isEmpty(aMedPacsInfoVO.getBehospitalCode())) {
+                        return RespDTO.onError("请输入病人住院编码!");
+                    }
+                }
+
+                List<MedPacsInfo> medPacsInfoList=Lists.newArrayList();
+                list.stream().forEach(s->{
+                    MedPacsInfo medPacsInfo=new MedPacsInfo();
+                    BeanUtil.copyProperties(s,medPacsInfo);
+                    medPacsInfoList.add(medPacsInfo);
+                });
+                execute(medPacsInfoList);
+
+                if(logSwitch){
+                    medPacsInfoList.forEach(s->{
+                        aMedAbnormalInfoFacade.saveAbnormalInfo("检查信息-正常","", JSON.toJSONString(list),"","");
+                    });
+                }
+                return RespDTO.onSuc("操作正常!");
+            }else{
+                return RespDTO.onError("未接收到数据!");
+            }
+        }catch (Exception e){
+            aMedAbnormalInfoFacade.saveAbnormalInfo("检查信息-异常","",JSON.toJSONString(list),"",e.getMessage());
+            return RespDTO.onError(e.getMessage());
+        }
+    }
+    
+    public void execute(List<MedPacsInfo> medPacsInfoList){
+        List<MedPacsInfo> addE = Lists.newLinkedList();
+        List<MedPacsInfo> updateE = Lists.newLinkedList();
+        if (medPacsInfoList != null && medPacsInfoList.size() > 0) {
+            medPacsInfoList.stream().forEach(s -> {
+                MedPacsInfo medPacsInfo = this.getOne(new QueryWrapper<MedPacsInfo>()
+                        .eq("rep_no", s.getRepNo())
+                        .eq("hospital_id", s.getHospitalId()), false);
+                if (medPacsInfo != null) {
+                    s.setGmtModified(new Date());
+                    updateE.add(s);
+                } else {
+                    s.setGmtCreate(new Date());
+                    addE.add(s);
+                }
+            });
+        }
+        if(addE.size()>0){
+            medPacsInfoServiceImpl.saveBatch(addE);
+        }
+        if(updateE.size()>0){
+            this.baseMapper.updateBatchByKey(updateE);
+        }
+    }
+
+    public RespDTO deleteFlag(ADeleteFlagVO aDeleteFlagVO){
+        try {
+            //验证数据是否存在
+            if(StringUtil.isEmpty(aDeleteFlagVO.getRepNo())){
+                return RespDTO.onError("请输入报告单号!");
+            }else if(aDeleteFlagVO.getHospitalId()==null){
+                return RespDTO.onError("请输入医院编码!");
+            }else {
+                UpdateWrapper<MedPacsInfo> updateWrapper=new UpdateWrapper<>();
+                updateWrapper.eq("rep_no", aDeleteFlagVO.getRepNo())
+                        .eq("hospital_id", aDeleteFlagVO.getHospitalId())
+                        .eq("is_deleted", IsDeleteEnum.N)
+                        .set("is_deleted",IsDeleteEnum.Y)
+                        .set("gmt_modified", DateUtil.now());
+
+                Boolean flag=update(new MedPacsInfo(),updateWrapper);
+                //aMedAbnormalInfoFacade.saveAbnormalInfo("检查-删除",JSON.toJSONString(aDeleteFlagVO),JSON.toJSONString(RespDTO.onSuc(flag)),"操作成功!");
+                return RespDTO.onSuc(flag);
+            }
+        }catch (Exception e){
+            aMedAbnormalInfoFacade.saveAbnormalInfo("检查信息-删除异常",aDeleteFlagVO.getRecId(), JSON.toJSONString(aDeleteFlagVO),"",e.getMessage());
+            return RespDTO.onError(e.getMessage());
+        }
+    }
+}

+ 33 - 33
src/main/java/com/diagbot/facade/data/AMedPacsResultFacade.java

@@ -15,6 +15,7 @@ import com.diagbot.vo.data.ADeleteFlagVO;
 import com.diagbot.vo.data.AMedPacsResultVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
 
 import java.util.Date;
@@ -24,6 +25,8 @@ import java.util.List;
 public class AMedPacsResultFacade extends MedPacsResultServiceImpl {
     @Autowired
     private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
+    @Value("${log_switch.enable}")
+    private boolean logSwitch;
 
     private TZDBConn tzDBConn = new TZDBConn();
 
@@ -59,65 +62,62 @@ public class AMedPacsResultFacade extends MedPacsResultServiceImpl {
                     medPacsResultList.add(medPacsResult);
                 });
                 execute(medPacsResultList);
-
-                return RespDTO.onSuc(list);
+                if(logSwitch){
+                    medPacsResultList.forEach(s->{
+                        aMedAbnormalInfoFacade.saveAbnormalInfo("检查结果-正常","", JSON.toJSONString(list),"","");
+                    });
+                }
+                return RespDTO.onSuc("操作正常!");
             }else{
-                aMedAbnormalInfoFacade.saveAbnormalInfo("检查","",JSON.toJSONString(list),"","未接收到数据!");
                 return RespDTO.onError("未接收到数据!");
             }
         }catch (Exception e){
-            aMedAbnormalInfoFacade.saveAbnormalInfo("检查","",JSON.toJSONString(list),"",e.getMessage());
+            aMedAbnormalInfoFacade.saveAbnormalInfo("检查结果-异常","",JSON.toJSONString(list),"",e.getMessage());
             return RespDTO.onError(e.getMessage());
         }
     }
 
     public void execute(List<MedPacsResult> medPacsResultList){
-        try {
-            List<MedPacsResult> addE = Lists.newLinkedList();
-            List<MedPacsResult> updateE = Lists.newLinkedList();
-            if (medPacsResultList != null && medPacsResultList.size() > 0) {
-                medPacsResultList.stream().forEach(s -> {
-                    MedPacsResult medPacsResult = this.getOne(new QueryWrapper<MedPacsResult>()
-                            .eq("rep_no", s.getRepNo())
-                            .eq("hospital_id", s.getHospitalId()), false);
-                    if (medPacsResult != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                this.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-            //aMedAbnormalInfoFacade.saveAbnormalInfo("检查",JSON.toJSONString(medPacsResultList),"","操作成功!");
-        }catch (Exception e){
-            aMedAbnormalInfoFacade.saveAbnormalInfo("检查","",JSON.toJSONString(medPacsResultList),"",e.getMessage());
+        List<MedPacsResult> addE = Lists.newLinkedList();
+        List<MedPacsResult> updateE = Lists.newLinkedList();
+        if (medPacsResultList != null && medPacsResultList.size() > 0) {
+            medPacsResultList.stream().forEach(s -> {
+                MedPacsResult medPacsResult = this.getOne(new QueryWrapper<MedPacsResult>()
+                        .eq("rep_no", s.getRepNo())
+                        .eq("hospital_id", s.getHospitalId()), false);
+                if (medPacsResult != null) {
+                    s.setGmtModified(new Date());
+                    updateE.add(s);
+                } else {
+                    s.setGmtCreate(new Date());
+                    addE.add(s);
+                }
+            });
+        }
+        if(addE.size()>0){
+            this.saveBatch(addE);
+        }
+        if(updateE.size()>0){
+            this.baseMapper.updateBatchByKey(updateE);
         }
     }
 
     public RespDTO deleteFlag(ADeleteFlagVO aDeleteFlagVO){
         try {
             //验证数据是否存在
-            if(StringUtil.isEmpty(aDeleteFlagVO.getReptNo())){
+            if(StringUtil.isEmpty(aDeleteFlagVO.getRepNo())){
                 return RespDTO.onError("请输入报告单号!");
             }else if(aDeleteFlagVO.getHospitalId()==null){
                 return RespDTO.onError("请输入医院编码!");
             }else {
                 UpdateWrapper<MedPacsResult> updateWrapper=new UpdateWrapper<>();
-                updateWrapper.eq("rep_no", aDeleteFlagVO.getReptNo())
+                updateWrapper.eq("rep_no", aDeleteFlagVO.getRepNo())
                         .eq("hospital_id", aDeleteFlagVO.getHospitalId())
                         .eq("is_deleted",IsDeleteEnum.N)
                         .set("is_deleted",IsDeleteEnum.Y)
                         .set("gmt_modified", DateUtil.now());
 
                 Boolean flag=update(new MedPacsResult(),updateWrapper);
-                //aMedAbnormalInfoFacade.saveAbnormalInfo("检查-删除",JSON.toJSONString(aDeleteFlagVO),JSON.toJSONString(RespDTO.onSuc(flag)),"操作成功!");
                 return RespDTO.onSuc(flag);
             }
         }catch (Exception e){

+ 3 - 0
src/main/java/com/diagbot/facade/data/AMedicalRecordContentFacade.java

@@ -17,6 +17,7 @@ import com.diagbot.vo.data.AMedicalRecordContentVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
 
 import java.util.Date;
@@ -30,6 +31,8 @@ public class AMedicalRecordContentFacade extends MedicalRecordContentServiceImpl
     private MedicalRecordContentServiceImpl medicalRecordContentService;
     @Autowired
     private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
+    @Value("${log_switch.enable}")
+    private boolean logSwitch;
 
     private TZDBConn tzDBConn = new TZDBConn();
 

+ 13 - 6
src/main/java/com/diagbot/facade/data/AMedicalRecordFacade.java

@@ -1,7 +1,6 @@
 package com.diagbot.facade.data;
 
 import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.TypeReference;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.diagbot.dto.AnalyzeRunDTO;
@@ -16,10 +15,11 @@ import com.diagbot.facade.*;
 import com.diagbot.service.impl.MedicalRecordServiceImpl;
 import com.diagbot.service.impl.QcAbnormalServiceImpl;
 import com.diagbot.util.*;
-import com.diagbot.vo.*;
+import com.diagbot.vo.AnalyzeRunVO;
+import com.diagbot.vo.MedrecVo;
+import com.diagbot.vo.QueryVo;
 import com.diagbot.vo.data.*;
 import com.google.common.collect.Lists;
-import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.beans.factory.annotation.Value;
@@ -68,6 +68,12 @@ public class AMedicalRecordFacade extends MedicalRecordServiceImpl {
     @Value("${encrypt.enable}")
     Boolean encryptFlag;
 
+    @Value("${xml_analyse.enable}")
+    Boolean xmlAnalyseFlag;
+
+    @Value("${log_switch.enable}")
+    private boolean logSwitch;
+
     private TZDBConn tzDBConn = new TZDBConn();
 
     /**
@@ -281,9 +287,10 @@ public class AMedicalRecordFacade extends MedicalRecordServiceImpl {
                 aMedicalRecordContentFacade.executeMrRecordContent(s.getContents());
             });
 
-            //数据解析
-            splicingParam(aMrContentVO);
-
+            //数据解析,评分规则等还未完整时不解析
+            if(xmlAnalyseFlag){
+                splicingParam(aMrContentVO);
+            }
             //评分后返回结构体
             return mrIng(aMrContentVO);
 

+ 134 - 48
src/main/java/com/diagbot/facade/data/ColumnFacade.java

@@ -2,12 +2,15 @@ package com.diagbot.facade.data;
 
 import com.alibaba.fastjson.JSON;
 import com.diagbot.dto.OutputInfo;
+import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.Response;
 import com.diagbot.enums.CacheKeyEnum;
+import com.diagbot.enums.ModeIdEnum;
 import com.diagbot.facade.QcClientFacade;
 import com.diagbot.facade.str.*;
 import com.diagbot.service.impl.ColumnServiceImpl;
 import com.diagbot.vo.QueryVo;
+import com.diagbot.vo.str.StrContentVO;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
@@ -28,7 +31,7 @@ public class ColumnFacade extends ColumnServiceImpl {
      * 解析
      * @param queryVo
      */
-    public void analyseRec(QueryVo queryVo){
+    public void analyseRec(QueryVo queryVo) {
         try {
             Response<OutputInfo> resp=qcClientFacade.analyseField(queryVo);
             if(resp.getData()!=null && resp.getData().getPageData()!=null){
@@ -54,6 +57,89 @@ public class ColumnFacade extends ColumnServiceImpl {
 
     }
 
+    /**
+     * @Description:解析his传输过来的wholeData
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void analyseWholeData(StrContentVO strContentVO) throws Exception{
+        //调用解析接口
+        Response<OutputInfo> resp=null;
+        //qcClientFacade.analyseField(queryVo);
+        if(resp.getData()!=null && resp.getData().getPageData()!=null){
+            Map<String, Object> pageData=resp.getData().getPageData();
+            pageData.forEach((key,value)->{
+                List<Map<String, Object>> listMap=(List<Map<String,Object>>)resp.getData().getPageData().get(key);
+                Map<String, String> columnMap=this.getColumn(CacheKeyEnum.getName(key));
+
+                Map<String, Object> entityMap=new HashMap<String, Object>();
+                listMap.forEach(s->{
+                    columnMap.forEach((k, v) -> {
+                        entityMap.put(v,s.get(k));
+                    });
+                    //数据解析
+                    analysisData(ModeIdEnum.getName(Integer.parseInt(strContentVO.getModelId())),entityMap,strContentVO.getHospitalId(),JSON.toJSONString(s));
+                });
+            });
+        }
+    }
+
+    /**
+     * @Description: 不解析时,先入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void addWholeData(StrContentVO strContentVO){
+        String modelName=ModeIdEnum.getName(Integer.parseInt(strContentVO.getModelId()));
+        if("入院记录".equals(modelName)){
+            bStrAdmissionNoteFacade.dealData(strContentVO);
+        }else if("首次病程录".equals(modelName)){
+            bStrFirstRecordFacade.dealData(strContentVO);
+        }else if("输血后效果评价".equals(modelName)){
+            bStrBloodResultFacade.dealData(strContentVO);
+        }else if("输血/血制品病程记录".equals(modelName)){
+            bStrBloodTransfusionFacade.dealData(strContentVO);
+        }else if("转入记录".equals(modelName)){
+            bStrTransferInNoteFacade.dealData(strContentVO);
+        }else if("转出记录".equals(modelName)){
+            bStrTransferOutNoteFacade.dealData(strContentVO);
+        }else if("病危通知书".equals(modelName)){
+            bStrIllCriticallyFacade.dealData(strContentVO);
+        }else if("病重通知书".equals(modelName)){
+            bStrIllSeriouslFacade.dealData(strContentVO);
+        }else if("疑难病例讨论记录".equals(modelName)){
+            bStrDifficultCaseFacade.dealData(strContentVO);
+        }else if("死亡记录".equals(modelName)){
+            bStrDeathNoteFacade.dealData(strContentVO);
+        }else if("死亡病例讨论记录".equals(modelName)){
+            bStrDeathDiscussionFacade.dealData(strContentVO);
+        }else if("查房记录".equals(modelName)){
+            bStrWardRecordFacade.dealData(strContentVO);
+        }else if("术后首次病程及谈话记录".equals(modelName)){
+            bStrOperativeFirstRecordFacade.dealData(strContentVO);
+        }else if("术前讨论、术前小结".equals(modelName)){
+            bStrPreoperativeDiscussionFacade.dealData(strContentVO);
+        }else if("手术记录".equals(modelName)){
+            bStrOperativeNoteFacade.dealData(strContentVO);
+        }else if("抢救记录".equals(modelName)){
+            bStrRescueNoteFacade.dealData(strContentVO);
+        }else if("危急值记录".equals(modelName)){
+            bStrCrisisNoteFacade.dealData(strContentVO);
+        }else if("出院小结".equals(modelName)){
+            bStrLeaveHospitalFacade.dealData(strContentVO);
+        }else if("会诊申请单".equals(modelName)){
+            bStrConsultationApplyFacade.dealData(strContentVO);
+        }else if("会诊结果单".equals(modelName)){
+            bStrConsultationResultFacade.dealData(strContentVO);
+        }else if("会诊单".equals(modelName)){
+            bStrConsultationNoteFacade.dealData(strContentVO);
+        }else if ("会诊记录".equals(modelName)){
+            bStrConsultationRecordFacade.dealData(strContentVO);
+        } else if("阶段小结".equals(modelName)){
+            bStrPeriodConclusionFacade.dealData(strContentVO);
+        }
+    }
+
     /**
      * 数据解析
      * @param modelName
@@ -61,53 +147,53 @@ public class ColumnFacade extends ColumnServiceImpl {
      * @param hospitalId
      */
     private void analysisData(String modelName,Map<String, Object> entityMap,Long hospitalId,String columnMap){
-        try {
+        try{
             if("入院记录".equals(modelName)){
-                aStrAdmissionNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrAdmissionNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             }else if("首次病程录".equals(modelName)){
-                aStrFirstRecordFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrFirstRecordFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             }else if("输血后效果评价".equals(modelName)){
-                aStrBloodResultFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrBloodResultFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             }else if("输血/血制品病程记录".equals(modelName)){
-                aStrBloodTransfusionFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrBloodTransfusionFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             }else if("转入记录".equals(modelName)){
-                aStrTransferInNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrTransferInNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             }else if("转出记录".equals(modelName)){
-                aStrTransferOutNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrTransferOutNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             }else if("病危通知书".equals(modelName)){
-                aStrIllCriticallyFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrIllCriticallyFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             }else if("病重通知书".equals(modelName)){
-                aStrIllSeriouslFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrIllSeriouslFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             }else if("疑难病例讨论记录".equals(modelName)){
-                aStrDifficultCaseFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrDifficultCaseFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             }else if("死亡记录".equals(modelName)){
-                aStrDeathNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrDeathNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             }else if("死亡病例讨论记录".equals(modelName)){
-                aStrDeathDiscussionFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrDeathDiscussionFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             }else if("查房记录".equals(modelName)){
-                aStrWardRecordFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrWardRecordFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             }else if("术后首次病程及谈话记录".equals(modelName)){
-                aStrOperativeFirstRecord.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrOperativeFirstRecordFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             }else if("术前讨论、术前小结".equals(modelName)){
-                aStrPreoperativeDiscussionFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrPreoperativeDiscussionFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             }else if("手术记录".equals(modelName)){
-                aStrOperativeNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrOperativeNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             }else if("抢救记录".equals(modelName)){
-                aStrRescueNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrRescueNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             }else if("危急值记录".equals(modelName)){
-                aStrCrisisNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrCrisisNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             }else if("出院小结".equals(modelName)){
-                aStrLeaveHospitalFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrLeaveHospitalFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             }else if("会诊申请单".equals(modelName)){
-                aStrConsultationApplyFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrConsultationApplyFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             }else if("会诊结果单".equals(modelName)){
-                aStrConsultationResultFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrConsultationResultFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             }else if("会诊单".equals(modelName)){
-                aStrConsultationNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrConsultationNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             }else if ("会诊记录".equals(modelName)){
-                aStrConsultationRecordFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrConsultationRecordFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             } else if("阶段小结".equals(modelName)){
-                aStrPeriodConclusionFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
+                bStrPeriodConclusionFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
             }
             log.info(modelName+"---- 解析完成!");
         }catch (Exception e){
@@ -117,49 +203,49 @@ public class ColumnFacade extends ColumnServiceImpl {
     }
 
     @Autowired
-    private AStrAdmissionNoteFacade aStrAdmissionNoteFacade;
+    private BStrAdmissionNoteFacade bStrAdmissionNoteFacade;
     @Autowired
-    private AStrFirstRecordFacade aStrFirstRecordFacade;
+    private BStrFirstRecordFacade bStrFirstRecordFacade;
     @Autowired
-    private AStrPeriodConclusionFacade aStrPeriodConclusionFacade;
+    private BStrPeriodConclusionFacade bStrPeriodConclusionFacade;
     @Autowired
-    private AStrBloodResultFacade aStrBloodResultFacade;
+    private BStrBloodResultFacade bStrBloodResultFacade;
     @Autowired
-    private AStrBloodTransfusionFacade aStrBloodTransfusionFacade;
+    private BStrBloodTransfusionFacade bStrBloodTransfusionFacade;
     @Autowired
-    private AStrTransferInNoteFacade aStrTransferInNoteFacade;
+    private BStrTransferInNoteFacade bStrTransferInNoteFacade;
     @Autowired
-    private AStrTransferOutNoteFacade aStrTransferOutNoteFacade;
+    private BStrTransferOutNoteFacade bStrTransferOutNoteFacade;
     @Autowired
-    private AStrIllSeriouslFacade aStrIllSeriouslFacade;
+    private BStrIllSeriouslFacade bStrIllSeriouslFacade;
     @Autowired
-    private AStrIllCriticallyFacade aStrIllCriticallyFacade;
+    private BStrIllCriticallyFacade bStrIllCriticallyFacade;
     @Autowired
-    private AStrDifficultCaseFacade aStrDifficultCaseFacade;
+    private BStrDifficultCaseFacade bStrDifficultCaseFacade;
     @Autowired
-    private AStrDeathNoteFacade aStrDeathNoteFacade;
+    private BStrDeathNoteFacade bStrDeathNoteFacade;
     @Autowired
-    private AStrDeathDiscussionFacade aStrDeathDiscussionFacade;
+    private BStrDeathDiscussionFacade bStrDeathDiscussionFacade;
     @Autowired
-    private AStrWardRecordFacade aStrWardRecordFacade;
+    private BStrWardRecordFacade bStrWardRecordFacade;
     @Autowired
-    private AStrOperativeFirstRecord aStrOperativeFirstRecord;
+    private BStrOperativeFirstRecordFacade bStrOperativeFirstRecordFacade;
     @Autowired
-    private AStrPreoperativeDiscussionFacade aStrPreoperativeDiscussionFacade;
+    private BStrPreoperativeDiscussionFacade bStrPreoperativeDiscussionFacade;
     @Autowired
-    private AStrOperativeNoteFacade aStrOperativeNoteFacade;
+    private BStrOperativeNoteFacade bStrOperativeNoteFacade;
     @Autowired
-    private AStrRescueNoteFacade aStrRescueNoteFacade;
+    private BStrRescueNoteFacade bStrRescueNoteFacade;
     @Autowired
-    private AStrCrisisNoteFacade aStrCrisisNoteFacade;
+    private BStrCrisisNoteFacade bStrCrisisNoteFacade;
     @Autowired
-    private AStrLeaveHospitalFacade aStrLeaveHospitalFacade;
+    private BStrLeaveHospitalFacade bStrLeaveHospitalFacade;
     @Autowired
-    private AStrConsultationApplyFacade aStrConsultationApplyFacade;
+    private BStrConsultationApplyFacade bStrConsultationApplyFacade;
     @Autowired
-    private AStrConsultationResultFacade aStrConsultationResultFacade;
+    private BStrConsultationResultFacade bStrConsultationResultFacade;
     @Autowired
-    private AStrConsultationNoteFacade aStrConsultationNoteFacade;
+    private BStrConsultationNoteFacade bStrConsultationNoteFacade;
     @Autowired
-    private AStrConsultationRecordFacade aStrConsultationRecordFacade;
+    private BStrConsultationRecordFacade bStrConsultationRecordFacade;
 }

+ 0 - 152
src/main/java/com/diagbot/facade/str/AStrAdmissionNoteFacade.java

@@ -1,152 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrAdmissionNote;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrAdmissionNoteServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.data.AStrAdmissionNoteVO;
-import com.diagbot.vo.str.StrAdmissionNoteVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-@Component
-public class AStrAdmissionNoteFacade extends StrAdmissionNoteServiceImpl {
-
-    @Autowired
-    @Qualifier("strAdmissionNoteServiceImpl")
-    private StrAdmissionNoteServiceImpl strAdmissionNoteService;
-    @Autowired
-    private ColumnFacade columnFacade;
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh() {
-        List<ColumnZhAndChDTO> list = this.baseMapper.getColumnZhAndCh();
-        list.forEach(s -> {
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-
-        Map<String, String> columnMap = EntityUtil.makeMapWithKeyValue(list, "ch", "en");
-        Boolean flag = columnFacade.createColumn(columnMap, "strAdmissionNote");
-
-        //Map<String, String> map=columnFacade.getColumn("strAdmissionNote");
-        if (!flag) {
-            return;
-        }
-    }
-
-    //入院记录
-    public void dealData(String columnMap, Map<String, Object> entityMap, Long hospitalId) {
-        StrAdmissionNote strAdmissionNote = new StrAdmissionNote();
-        try {
-            AStrAdmissionNoteVO strAdmissionNoteVO = (AStrAdmissionNoteVO) MapUtil.mapToObject(entityMap, AStrAdmissionNoteVO.class);
-            BeanUtils.copyProperties(strAdmissionNoteVO, strAdmissionNote);
-            strAdmissionNote.setHospitalId(hospitalId);//医院编码
-
-            strAdmissionNote.setAuditDate(DateUtil.parseDateTime(strAdmissionNoteVO.getAuditDate()));//审核时间
-            strAdmissionNote.setRecDate(DateUtil.parseDateTime(strAdmissionNoteVO.getRecDate()));//记录时间
-            strAdmissionNote.setBehospitalDate(DateUtil.parseDateTime(strAdmissionNoteVO.getBehospitalDate()));//入院日期
-            strAdmissionNote.setBirthday(DateUtil.parseDate(strAdmissionNoteVO.getBirthday()));//出生日期
-            strAdmissionNote.setRecordDate(DateUtil.parseDateTime(strAdmissionNoteVO.getRecordDate()));//病历日期
-
-            strAdmissionNote.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if (isExist(strAdmissionNote)) {
-                strAdmissionNote.setGmtCreate(new Date());//记录创建时间
-                this.save(strAdmissionNote);
-            } else {
-                strAdmissionNote.setGmtModified(new Date());//记录修改时间
-                this.update(strAdmissionNote, new QueryWrapper<StrAdmissionNote>()
-                        .eq("rec_id", strAdmissionNote.getRecId())
-                        .eq("hospital_id", strAdmissionNote.getHospitalId())
-                        .eq("behospital_code", strAdmissionNote.getBehospitalCode()));
-            }
-        } catch (Exception e) {
-            log.error(e.getMessage(), e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("入院记录", strAdmissionNote.getRecId(), JSON.toJSONString(entityMap), "", e.getMessage());
-        }
-    }
-
-    public Boolean isExist(StrAdmissionNote strAdmissionNote) {
-        Boolean flag = true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrAdmissionNote>()
-                .eq("rec_id", strAdmissionNote.getRecId())
-                .eq("hospital_id", strAdmissionNote.getHospitalId())
-                .eq("behospital_code", strAdmissionNote.getBehospitalCode()));
-        if (count > 0) {
-            flag = false;
-        }
-        return flag;
-    }
-
-    public RespDTO execDealData(List<StrAdmissionNoteVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrAdmissionNoteVO strAdmissionNoteVO:list) {
-                if("".equals(strAdmissionNoteVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strAdmissionNoteVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strAdmissionNoteVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrAdmissionNote> strAdmissionNoteList=Lists.newArrayList();
-            strAdmissionNoteList=BeanUtil.listCopyTo(list,StrAdmissionNote.class);
-            execute(strAdmissionNoteList);
-
-            return RespDTO.onSuc(strAdmissionNoteList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrAdmissionNote> list){
-        try {
-            List<StrAdmissionNote> addE = Lists.newLinkedList();
-            List<StrAdmissionNote> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrAdmissionNote strAdmissionNote = this.getOne(new QueryWrapper<StrAdmissionNote>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strAdmissionNote != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strAdmissionNoteService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-入院记录","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-
-}

+ 0 - 162
src/main/java/com/diagbot/facade/str/AStrBloodResultFacade.java

@@ -1,162 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrBloodResult;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrBloodResultServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.data.AStrBloodResultVO;
-import com.diagbot.vo.str.StrBloodResultVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-/**
- * @Description:输血后效果评价-业务类
- * @Author:liuqq
- * @time: ${DATE} ${TIME}
- **/
-@Component
-public class AStrBloodResultFacade extends StrBloodResultServiceImpl {
-
-    @Autowired
-    @Qualifier("strBloodResultServiceImpl")
-    private StrBloodResultServiceImpl strBloodResultService;
-    @Autowired
-    private ColumnFacade columnFacade;
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh(){
-        List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
-        list.forEach(s->{
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
-        Boolean flag=columnFacade.createColumn(columnMap,"strBloodResult");
-        if(!flag){
-            return;
-        }
-        //Map<String, String> map=columnFacade.getColumn("strBloodResult");
-    }
-
-    public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
-        StrBloodResult strBloodResult=new StrBloodResult();
-        try {
-            AStrBloodResultVO strBloodResultVO=(AStrBloodResultVO) MapUtil.mapToObject(entityMap, AStrBloodResultVO.class);
-            BeanUtils.copyProperties(strBloodResultVO,strBloodResult);
-            strBloodResult.setHospitalId(hospitalId);//医院编码
-            strBloodResult.setAuditDate(DateUtil.parseDateTime(strBloodResultVO.getAuditDate()));//审核时间
-            strBloodResult.setRecDate(DateUtil.parseDateTime(strBloodResultVO.getRecDate()));//记录时间
-            strBloodResult.setRecordDate(DateUtil.parseDateTime(strBloodResultVO.getRecordDate()));//病历日期
-
-            strBloodResult.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if(isExist(strBloodResult)){
-                strBloodResult.setGmtCreate(new Date());//记录创建时间
-                this.save(strBloodResult);
-            }else{
-                strBloodResult.setGmtModified(new Date());//记录修改时间
-                this.update(strBloodResult,new QueryWrapper<StrBloodResult>()
-                        .eq("rec_id", strBloodResult.getRecId())
-                        .eq("hospital_id", strBloodResult.getHospitalId())
-                        .eq("behospital_code", strBloodResult.getBehospitalCode()));
-            }
-
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("输血效果评价",strBloodResult.getRecId(), JSON.toJSONString(entityMap),"",e.getMessage());
-        }
-
-    }
-
-    /**
-     * @Description: 是否存在
-     * @Author:liuqq
-     * @time: ${DATE} ${TIME}
-     **/
-    public Boolean isExist(StrBloodResult strBloodResult){
-        Boolean flag=true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrBloodResult>()
-                .eq("rec_id", strBloodResult.getRecId())
-                .eq("hospital_id", strBloodResult.getHospitalId())
-                .eq("behospital_code", strBloodResult.getBehospitalCode()));
-        if(count>0){
-            flag=false;
-        }
-        return flag;
-    }
-
-    /**
-     * @Description:数据处理
-     * @Author:liuqq
-     * @time: ${DATE} ${TIME}
-     **/
-    public RespDTO execDealData(List<StrBloodResultVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrBloodResultVO strBloodResultVO:list) {
-                if("".equals(strBloodResultVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strBloodResultVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strBloodResultVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrBloodResult> strBloodResultList= Lists.newArrayList();
-            strBloodResultList= BeanUtil.listCopyTo(list,StrBloodResult.class);
-            execute(strBloodResultList);
-
-            return RespDTO.onSuc(strBloodResultList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrBloodResult> list){
-        try {
-            List<StrBloodResult> addE = Lists.newLinkedList();
-            List<StrBloodResult> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrBloodResult strBloodResult = this.getOne(new QueryWrapper<StrBloodResult>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strBloodResult != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strBloodResultService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-输血后效果评价","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-}

+ 0 - 158
src/main/java/com/diagbot/facade/str/AStrBloodTransfusionFacade.java

@@ -1,158 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrBloodTransfusion;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrBloodTransfusionServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.data.AStrBloodTransfusionVO;
-import com.diagbot.vo.str.StrBloodTransfusionVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-/**
- * @Description:输血/血制品病程记录-业务类
- * @Author:liuqq
- * @time: ${DATE} ${TIME}
- **/
-@Component
-public class AStrBloodTransfusionFacade extends StrBloodTransfusionServiceImpl {
-
-    @Autowired
-    @Qualifier("strBloodTransfusionServiceImpl")
-    private StrBloodTransfusionServiceImpl strBloodTransfusionService;
-    @Autowired
-    private ColumnFacade columnFacade;
-
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh(){
-        List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
-        list.forEach(s->{
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-
-        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
-        Boolean flag=columnFacade.createColumn(columnMap,"strBloodTransfusion");
-
-        //Map<String, String> map=columnFacade.getColumn("strConsultationNote");
-        if(!flag){
-            return;
-        }
-    }
-
-    public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
-        StrBloodTransfusion strBloodTransfusion=new StrBloodTransfusion();
-        try {
-            AStrBloodTransfusionVO strBloodTransfusionVO=(AStrBloodTransfusionVO) MapUtil.mapToObject(entityMap, AStrBloodTransfusionVO.class);
-            BeanUtils.copyProperties(strBloodTransfusionVO,strBloodTransfusion);
-            strBloodTransfusion.setHospitalId(hospitalId);//医院编码
-            strBloodTransfusion.setStartTime(DateUtil.parseDateTime(strBloodTransfusionVO.getStartTime()));
-            strBloodTransfusion.setEndTime(DateUtil.parseDateTime(strBloodTransfusionVO.getEndTime()));
-            strBloodTransfusion.setAuditDate(DateUtil.parseDateTime(strBloodTransfusionVO.getAuditDate()));//审核时间
-            strBloodTransfusion.setRecDate(DateUtil.parseDateTime(strBloodTransfusionVO.getRecDate()));//记录时间
-            strBloodTransfusion.setRecordDate(DateUtil.parseDateTime(strBloodTransfusionVO.getRecordDate()));//病历日期
-
-            strBloodTransfusion.setWholeData(columnMap);
-
-            //判断数据库中是否存在,不存在insert
-            if(isExist(strBloodTransfusion)){
-                strBloodTransfusion.setGmtCreate(new Date());//记录创建时间
-                this.save(strBloodTransfusion);
-            }else{
-                strBloodTransfusion.setGmtModified(new Date());//记录修改时间
-                this.update(strBloodTransfusion,new QueryWrapper<StrBloodTransfusion>()
-                        .eq("rec_id", strBloodTransfusion.getRecId())
-                        .eq("hospital_id", strBloodTransfusion.getHospitalId())
-                        .eq("behospital_code", strBloodTransfusion.getBehospitalCode()));
-            }
-
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("输血记录", strBloodTransfusion.getRecId(),JSON.toJSONString(entityMap),"",e.getMessage());
-        }
-
-    }
-
-    public Boolean isExist(StrBloodTransfusion strBloodTransfusion){
-        Boolean flag=true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrBloodTransfusion>()
-                .eq("rec_id", strBloodTransfusion.getRecId())
-                .eq("hospital_id", strBloodTransfusion.getHospitalId())
-                .eq("behospital_code", strBloodTransfusion.getBehospitalCode()));
-        if(count>0){
-            flag=false;
-        }
-        return flag;
-    }
-
-    public RespDTO execDealData(List<StrBloodTransfusionVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrBloodTransfusionVO strBloodTransfusionVO:list) {
-                if("".equals(strBloodTransfusionVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strBloodTransfusionVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strBloodTransfusionVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrBloodTransfusion> strBloodTransfusionList= Lists.newArrayList();
-            strBloodTransfusionList= BeanUtil.listCopyTo(list,StrBloodTransfusion.class);
-            execute(strBloodTransfusionList);
-
-            return RespDTO.onSuc(strBloodTransfusionList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrBloodTransfusion> list){
-        try {
-            List<StrBloodTransfusion> addE = Lists.newLinkedList();
-            List<StrBloodTransfusion> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrBloodTransfusion strBloodTransfusion = this.getOne(new QueryWrapper<StrBloodTransfusion>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strBloodTransfusion != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strBloodTransfusionService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-入院记录","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-}

+ 0 - 154
src/main/java/com/diagbot/facade/str/AStrConsultationApplyFacade.java

@@ -1,154 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrConsultationApply;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrConsultationApplyServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.data.AStrConsultationApplyVO;
-import com.diagbot.vo.str.StrConsultationApplyVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-@Component
-public class AStrConsultationApplyFacade extends StrConsultationApplyServiceImpl {
-
-    @Autowired
-    @Qualifier("strConsultationApplyServiceImpl")
-    private StrConsultationApplyServiceImpl strConsultationApplyService;
-    @Autowired
-    private ColumnFacade columnFacade;
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh(){
-        List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
-        list.forEach(s->{
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-
-        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
-        Boolean flag=columnFacade.createColumn(columnMap,"strConsultationApply");
-
-        //Map<String, String> map=columnFacade.getColumn("strConsultationNote");
-        if(!flag){
-            return;
-        }
-    }
-
-    //会诊申请单
-    public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
-        StrConsultationApply strConsultationApply=new StrConsultationApply();
-        try {
-            AStrConsultationApplyVO strConsultationApplyVO=(AStrConsultationApplyVO) MapUtil.mapToObject(entityMap, AStrConsultationApplyVO.class);
-            BeanUtils.copyProperties(strConsultationApplyVO,strConsultationApply);
-            strConsultationApply.setHospitalId(hospitalId);//医院编码
-
-            strConsultationApply.setAuditDate(DateUtil.parseDateTime(strConsultationApplyVO.getAuditDate()));//审核时间
-            strConsultationApply.setRecDate(DateUtil.parseDateTime(strConsultationApplyVO.getRecDate()));//记录时间
-            strConsultationApply.setBehospitalDate(DateUtil.parseDateTime(strConsultationApplyVO.getBehospitalDate()));//入院日期
-            strConsultationApply.setRecordDate(DateUtil.parseDateTime(strConsultationApplyVO.getRecordDate()));//病历日期
-            strConsultationApply.setApplyDate(DateUtil.parseDateTime(strConsultationApplyVO.getApplyDate()));//申请日期
-            strConsultationApply.setConsultationDate(DateUtil.parseDateTime(strConsultationApplyVO.getConsultationDate()));//会诊时间
-            strConsultationApply.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if(isExist(strConsultationApply)){
-                strConsultationApply.setGmtCreate(new Date());//记录创建时间
-                this.save(strConsultationApply);
-            }else{
-                strConsultationApply.setGmtModified(new Date());//记录修改时间
-                this.update(strConsultationApply,new QueryWrapper<StrConsultationApply>()
-                        .eq("rec_id", strConsultationApply.getRecId())
-                        .eq("hospital_id", strConsultationApply.getHospitalId())
-                        .eq("behospital_code", strConsultationApply.getBehospitalCode()));
-            }
-
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("会诊申请单",strConsultationApply.getRecId(), JSON.toJSONString(entityMap),"",e.getMessage());
-        }
-
-    }
-
-    public Boolean isExist(StrConsultationApply strConsultationApply){
-        Boolean flag=true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrConsultationApply>()
-                .eq("rec_id", strConsultationApply.getRecId())
-                .eq("hospital_id", strConsultationApply.getHospitalId())
-                .eq("behospital_code", strConsultationApply.getBehospitalCode()));
-        if(count>0){
-            flag=false;
-        }
-        return flag;
-    }
-
-    public RespDTO execDealData(List<StrConsultationApplyVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrConsultationApplyVO strConsultationApplyVO:list) {
-                if("".equals(strConsultationApplyVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strConsultationApplyVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strConsultationApplyVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrConsultationApply> strConsultationApplyList= Lists.newArrayList();
-            strConsultationApplyList= BeanUtil.listCopyTo(list,StrConsultationApply.class);
-            execute(strConsultationApplyList);
-
-            return RespDTO.onSuc(strConsultationApplyList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrConsultationApply> list){
-        try {
-            List<StrConsultationApply> addE = Lists.newLinkedList();
-            List<StrConsultationApply> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrConsultationApply strConsultationApply = this.getOne(new QueryWrapper<StrConsultationApply>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strConsultationApply != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strConsultationApplyService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-会诊申请单","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-
-}

+ 0 - 155
src/main/java/com/diagbot/facade/str/AStrConsultationNoteFacade.java

@@ -1,155 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrConsultationNote;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrConsultationNoteServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.data.AStrConsultationNoteVO;
-import com.diagbot.vo.str.StrConsultationNoteVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-@Component
-public class AStrConsultationNoteFacade extends StrConsultationNoteServiceImpl {
-
-    @Autowired
-    @Qualifier("strConsultationNoteServiceImpl")
-    private StrConsultationNoteServiceImpl strConsultationNoteService;
-    @Autowired
-    private ColumnFacade columnFacade;
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh(){
-        List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
-        list.forEach(s->{
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-
-        Map<String, String> columnMap=EntityUtil.makeMapWithKeyValue(list,"ch","en");
-        Boolean flag=columnFacade.createColumn(columnMap,"strConsultationNote");
-
-        //Map<String, String> map=columnFacade.getColumn("strConsultationNote");
-        if(!flag){
-            return;
-        }
-    }
-
-    //会诊单(申请和结果)
-    public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
-        StrConsultationNote strConsultationNote=new StrConsultationNote();
-        try {
-            AStrConsultationNoteVO strConsultationNoteVO=(AStrConsultationNoteVO) MapUtil.mapToObject(entityMap, AStrConsultationNoteVO.class);
-            BeanUtils.copyProperties(strConsultationNoteVO,strConsultationNote);
-            strConsultationNote.setHospitalId(hospitalId);//医院编码
-
-            strConsultationNote.setAuditDate(DateUtil.parseDateTime(strConsultationNoteVO.getAuditDate()));//审核时间
-            strConsultationNote.setRecDate(DateUtil.parseDateTime(strConsultationNoteVO.getRecDate()));//记录时间
-            strConsultationNote.setBehospitalDate(DateUtil.parseDateTime(strConsultationNoteVO.getBehospitalDate()));//入院日期
-            strConsultationNote.setApplyDate(DateUtil.parseDate(strConsultationNoteVO.getApplyDate()));//申请日期
-            strConsultationNote.setRecordDate(DateUtil.parseDateTime(strConsultationNoteVO.getRecordDate()));//病历日期
-            strConsultationNote.setConsultationDate(DateUtil.parseDateTime(strConsultationNoteVO.getConsultationDate()));//会诊时间
-
-            strConsultationNote.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if(isExist(strConsultationNote)){
-                strConsultationNote.setGmtCreate(new Date());//记录创建时间
-                this.save(strConsultationNote);
-            }else{
-                strConsultationNote.setGmtModified(new Date());//记录修改时间
-                this.update(strConsultationNote,new QueryWrapper<StrConsultationNote>()
-                        .eq("rec_id", strConsultationNote.getRecId())
-                        .eq("hospital_id", strConsultationNote.getHospitalId())
-                        .eq("behospital_code", strConsultationNote.getBehospitalCode()));
-            }
-
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("会诊单(申请和结果)",strConsultationNote.getRecId(), JSON.toJSONString(entityMap),"",e.getMessage());
-        }
-
-    }
-
-    public Boolean isExist(StrConsultationNote strConsultationNote){
-        Boolean flag=true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrConsultationNote>()
-                .eq("rec_id", strConsultationNote.getRecId())
-                .eq("hospital_id", strConsultationNote.getHospitalId())
-                .eq("behospital_code", strConsultationNote.getBehospitalCode()));
-        if(count>0){
-            flag=false;
-        }
-        return flag;
-    }
-
-    public RespDTO execDealData(List<StrConsultationNoteVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrConsultationNoteVO strConsultationNoteVO:list) {
-                if("".equals(strConsultationNoteVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strConsultationNoteVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strConsultationNoteVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrConsultationNote> strConsultationNoteList= Lists.newArrayList();
-            strConsultationNoteList= BeanUtil.listCopyTo(list,StrConsultationNote.class);
-            execute(strConsultationNoteList);
-
-            return RespDTO.onSuc(strConsultationNoteList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrConsultationNote> list){
-        try {
-            List<StrConsultationNote> addE = Lists.newLinkedList();
-            List<StrConsultationNote> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrConsultationNote strConsultationNote = this.getOne(new QueryWrapper<StrConsultationNote>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strConsultationNote != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strConsultationNoteService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-会诊申请单","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-
-}

+ 0 - 153
src/main/java/com/diagbot/facade/str/AStrConsultationRecordFacade.java

@@ -1,153 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrConsultationRecord;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrConsultationRecordServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.AStrConsultationRecordVO;
-import com.diagbot.vo.str.StrConsultationRecordVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-@Component
-public class AStrConsultationRecordFacade extends StrConsultationRecordServiceImpl {
-
-    @Autowired
-    @Qualifier("strConsultationRecordServiceImpl")
-    private StrConsultationRecordServiceImpl strConsultationRecordService;
-    @Autowired
-    private ColumnFacade columnFacade;
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh(){
-        List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
-        list.forEach(s->{
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-
-        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
-        Boolean flag=columnFacade.createColumn(columnMap,"strConsultationRecord");
-
-        //Map<String, String> map=columnFacade.getColumn("strConsultationRecord");
-        if(!flag){
-            return;
-        }
-    }
-
-    //会诊记录
-    public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
-        StrConsultationRecord strConsultationRecord=new StrConsultationRecord();
-        try {
-            AStrConsultationRecordVO AStrConsultationRecordVO=(AStrConsultationRecordVO) MapUtil.mapToObject(entityMap, AStrConsultationRecordVO.class);
-            BeanUtils.copyProperties(AStrConsultationRecordVO,strConsultationRecord);
-            strConsultationRecord.setHospitalId(hospitalId);//医院编码
-
-            strConsultationRecord.setRecordDate(DateUtil.parseDateTime(AStrConsultationRecordVO.getRecordDate()));//病历日期recordDate
-            strConsultationRecord.setBehospitalDate(DateUtil.parseDateTime(AStrConsultationRecordVO.getBehospitalDate()));//入院日期behospital_date
-            strConsultationRecord.setApplyDate(DateUtil.parseDateTime(AStrConsultationRecordVO.getApplyDate()));//申请日期apply_date
-            strConsultationRecord.setConsultationDate(DateUtil.parseDate(AStrConsultationRecordVO.getConsultationArriveDate()));//会诊时间consultation_date
-            strConsultationRecord.setRecDate(DateUtil.parseDateTime(AStrConsultationRecordVO.getRecDate()));//记录时间rec_date
-            strConsultationRecord.setAuditDate(DateUtil.parseDateTime(AStrConsultationRecordVO.getAuditDate()));//审核时间audit_date
-
-            strConsultationRecord.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if(isExist(strConsultationRecord)){
-                strConsultationRecord.setGmtCreate(new Date());//记录创建时间
-                this.save(strConsultationRecord);
-            }else{
-                strConsultationRecord.setGmtModified(new Date());//记录修改时间
-                this.update(strConsultationRecord,new QueryWrapper<StrConsultationRecord>()
-                        .eq("rec_id", strConsultationRecord.getRecId())
-                        .eq("hospital_id", strConsultationRecord.getHospitalId())
-                        .eq("behospital_code", strConsultationRecord.getBehospitalCode()));
-            }
-
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("会诊记录)",strConsultationRecord.getRecId(), JSON.toJSONString(entityMap),"",e.getMessage());
-        }
-
-    }
-
-    public Boolean isExist(StrConsultationRecord strConsultationRecord){
-        Boolean flag=true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrConsultationRecord>()
-                .eq("rec_id", strConsultationRecord.getRecId())
-                .eq("hospital_id", strConsultationRecord.getHospitalId())
-                .eq("behospital_code", strConsultationRecord.getBehospitalCode()));
-        if(count>0){
-            flag=false;
-        }
-        return flag;
-    }
-
-    public RespDTO execDealData(List<StrConsultationRecordVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrConsultationRecordVO strConsultationRecordVO:list) {
-                if("".equals(strConsultationRecordVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strConsultationRecordVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strConsultationRecordVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrConsultationRecord> strConsultationRecordList= Lists.newArrayList();
-            strConsultationRecordList= BeanUtil.listCopyTo(list,StrConsultationRecord.class);
-            execute(strConsultationRecordList);
-
-            return RespDTO.onSuc(strConsultationRecordList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrConsultationRecord> list){
-        try {
-            List<StrConsultationRecord> addE = Lists.newLinkedList();
-            List<StrConsultationRecord> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrConsultationRecord strConsultationRecord = this.getOne(new QueryWrapper<StrConsultationRecord>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strConsultationRecord != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strConsultationRecordService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-会诊记录","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-}

+ 0 - 159
src/main/java/com/diagbot/facade/str/AStrConsultationResultFacade.java

@@ -1,159 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrConsultationResult;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrConsultationResultServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.data.AStrConsultationResultVO;
-import com.diagbot.vo.str.StrConsultationResultVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-/**
- * @Description:会诊结果单-业务类
- * @Author:liuqq
- * @time: ${DATE} ${TIME}
- **/
-@Component
-public class AStrConsultationResultFacade extends StrConsultationResultServiceImpl {
-
-    @Autowired
-    @Qualifier("strConsultationResultServiceImpl")
-    private StrConsultationResultServiceImpl strConsultationResultService;
-    @Autowired
-    private ColumnFacade columnFacade;
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh(){
-        List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
-        list.forEach(s->{
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-
-        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
-        Boolean flag=columnFacade.createColumn(columnMap,"strConsultationResult");
-
-        //Map<String, String> map=columnFacade.getColumn("strConsultationNote");
-        if(!flag){
-            return;
-        }
-    }
-
-    //会诊结果单
-    public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
-        StrConsultationResult strConsultationResult=new StrConsultationResult();
-        try {
-            AStrConsultationResultVO strConsultationResultVO=(AStrConsultationResultVO) MapUtil.mapToObject(entityMap, AStrConsultationResultVO.class);
-            BeanUtils.copyProperties(strConsultationResultVO,strConsultationResult);
-            strConsultationResult.setHospitalId(hospitalId);//医院编码
-
-            strConsultationResult.setAuditDate(DateUtil.parseDateTime(strConsultationResultVO.getAuditDate()));//审核时间
-            strConsultationResult.setRecDate(DateUtil.parseDateTime(strConsultationResultVO.getRecDate()));//记录时间
-            strConsultationResult.setBehospitalDate(DateUtil.parseDateTime(strConsultationResultVO.getBehospitalDate()));//入院日期
-            strConsultationResult.setApplyDate(DateUtil.parseDate(strConsultationResultVO.getApplyDate()));//申请时间
-            strConsultationResult.setRecordDate(DateUtil.parseDateTime(strConsultationResultVO.getRecordDate()));//病历日期
-            strConsultationResult.setConsultationArriveDate(DateUtil.parseDateTime(strConsultationResultVO.getConsultationArriveDate()));//会诊到达时间
-
-            strConsultationResult.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if(isExist(strConsultationResult)){
-                strConsultationResult.setGmtCreate(new Date());//记录创建时间
-                this.save(strConsultationResult);
-            }else{
-                strConsultationResult.setGmtModified(new Date());//记录修改时间
-                this.update(strConsultationResult,new QueryWrapper<StrConsultationResult>()
-                        .eq("rec_id", strConsultationResult.getRecId())
-                        .eq("hospital_id", strConsultationResult.getHospitalId())
-                        .eq("behospital_code", strConsultationResult.getBehospitalCode()));
-            }
-
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("会诊结果单",strConsultationResult.getRecId(), JSON.toJSONString(entityMap),"",e.getMessage());
-        }
-
-    }
-
-    public Boolean isExist(StrConsultationResult strConsultationResult){
-        Boolean flag=true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrConsultationResult>()
-                .eq("rec_id", strConsultationResult.getRecId())
-                .eq("hospital_id", strConsultationResult.getHospitalId())
-                .eq("behospital_code", strConsultationResult.getBehospitalCode()));
-        if(count>0){
-            flag=false;
-        }
-        return flag;
-    }
-
-    public RespDTO execDealData(List<StrConsultationResultVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrConsultationResultVO strConsultationResultVO:list) {
-                if("".equals(strConsultationResultVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strConsultationResultVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strConsultationResultVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrConsultationResult> strConsultationResultList= Lists.newArrayList();
-            strConsultationResultList= BeanUtil.listCopyTo(list,StrConsultationResult.class);
-            execute(strConsultationResultList);
-
-            return RespDTO.onSuc(strConsultationResultList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrConsultationResult> list){
-        try {
-            List<StrConsultationResult> addE = Lists.newLinkedList();
-            List<StrConsultationResult> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrConsultationResult strConsultationResult = this.getOne(new QueryWrapper<StrConsultationResult>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strConsultationResult != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strConsultationResultService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-会诊结果单","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-}

+ 0 - 150
src/main/java/com/diagbot/facade/str/AStrCrisisNoteFacade.java

@@ -1,150 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrCrisisNote;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrCrisisNoteServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.data.AStrCrisisNoteVO;
-import com.diagbot.vo.str.StrCrisisNoteVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-@Component
-public class AStrCrisisNoteFacade extends StrCrisisNoteServiceImpl {
-
-    @Autowired
-    @Qualifier("strCrisisNoteServiceImpl")
-    private StrCrisisNoteServiceImpl strCrisisNoteService;
-    @Autowired
-    private ColumnFacade columnFacade;
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh(){
-        List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
-        list.forEach(s->{
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-
-        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
-        Boolean flag=columnFacade.createColumn(columnMap,"strCrisisNote");
-        if(!flag){
-            return;
-        }
-    }
-
-    public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
-        StrCrisisNote strCrisisNote=new StrCrisisNote();
-        try {
-            AStrCrisisNoteVO strCrisisNoteVO=(AStrCrisisNoteVO) MapUtil.mapToObject(entityMap, AStrCrisisNoteVO.class);
-            BeanUtils.copyProperties(strCrisisNoteVO,strCrisisNote);
-            strCrisisNote.setHospitalId(hospitalId);//医院编码
-
-            strCrisisNote.setAuditDate(DateUtil.parseDateTime(strCrisisNoteVO.getAuditDate()));//审核时间
-            strCrisisNote.setRecDate(DateUtil.parseDateTime(strCrisisNoteVO.getRecDate()));//记录时间
-            strCrisisNote.setRecieveDate(DateUtil.parseDateTime(strCrisisNoteVO.getRecieveDate()));//开始时间
-            strCrisisNote.setAuditDate(DateUtil.parseDate(strCrisisNoteVO.getAuditDate()));//结束时间
-            strCrisisNote.setRecordDate(DateUtil.parseDateTime(strCrisisNoteVO.getRecordDate()));//病历日期
-
-            strCrisisNote.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if(isExist(strCrisisNote)){
-                strCrisisNote.setGmtCreate(new Date());//记录创建时间
-                this.save(strCrisisNote);
-            }else{
-                strCrisisNote.setGmtModified(new Date());//记录修改时间
-                this.update(strCrisisNote,new QueryWrapper<StrCrisisNote>()
-                        .eq("rec_id", strCrisisNote.getRecId())
-                        .eq("hospital_id", strCrisisNote.getHospitalId())
-                        .eq("behospital_code", strCrisisNote.getBehospitalCode()));
-            }
-
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("危急值记录",strCrisisNote.getRecId(), JSON.toJSONString(entityMap),"",e.getMessage());
-        }
-
-    }
-
-    public Boolean isExist(StrCrisisNote strCrisisNote){
-        Boolean flag=true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrCrisisNote>()
-                .eq("rec_id", strCrisisNote.getRecId())
-                .eq("hospital_id", strCrisisNote.getHospitalId())
-                .eq("behospital_code", strCrisisNote.getBehospitalCode()));
-        if(count>0){
-            flag=false;
-        }
-        return flag;
-    }
-
-    public RespDTO execDealData(List<StrCrisisNoteVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrCrisisNoteVO strCrisisNoteVO:list) {
-                if("".equals(strCrisisNoteVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strCrisisNoteVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strCrisisNoteVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrCrisisNote> strCrisisNoteList= Lists.newArrayList();
-            strCrisisNoteList= BeanUtil.listCopyTo(list,StrCrisisNote.class);
-            execute(strCrisisNoteList);
-
-            return RespDTO.onSuc(strCrisisNoteList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrCrisisNote> list){
-        try {
-            List<StrCrisisNote> addE = Lists.newLinkedList();
-            List<StrCrisisNote> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrCrisisNote strCrisisNote = this.getOne(new QueryWrapper<StrCrisisNote>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strCrisisNote != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strCrisisNoteService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-危急值记录","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-}

+ 0 - 152
src/main/java/com/diagbot/facade/str/AStrDeathDiscussionFacade.java

@@ -1,152 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrDeathDiscussion;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrDeathDiscussionServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.data.AStrDeathDiscussionVO;
-import com.diagbot.vo.str.StrDeathDiscussionVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-@Component
-public class AStrDeathDiscussionFacade extends StrDeathDiscussionServiceImpl {
-    @Autowired
-    @Qualifier("strDeathDiscussionServiceImpl")
-    private StrDeathDiscussionServiceImpl strDeathDiscussionService;
-    @Autowired
-    private ColumnFacade columnFacade;
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh(){
-        List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
-        list.forEach(s->{
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-
-        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
-        Boolean flag=columnFacade.createColumn(columnMap,"strDeathDiscussion");
-
-        //Map<String, String> map=columnFacade.getColumn("strConsultationNote");
-        if(!flag){
-            return;
-        }
-    }
-
-    //死亡病例讨论记录
-    public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
-        StrDeathDiscussion strDeathDiscussion=new StrDeathDiscussion();
-        try {
-            AStrDeathDiscussionVO strDeathDiscussionVO=(AStrDeathDiscussionVO) MapUtil.mapToObject(entityMap, AStrDeathDiscussionVO.class);
-            BeanUtils.copyProperties(strDeathDiscussionVO,strDeathDiscussion);
-            strDeathDiscussion.setHospitalId(hospitalId);//医院编码
-
-            strDeathDiscussion.setAuditDate(DateUtil.parseDateTime(strDeathDiscussionVO.getAuditDate()));//审核时间
-            strDeathDiscussion.setRecDate(DateUtil.parseDateTime(strDeathDiscussionVO.getRecDate()));//记录时间
-            strDeathDiscussion.setDeathDate(DateUtil.parseDateTime(strDeathDiscussionVO.getDeathDate()));//死亡时间
-            strDeathDiscussion.setDiscussDate(DateUtil.parseDate(strDeathDiscussionVO.getDiscussDate()));//讨论时间
-            strDeathDiscussion.setRecordDate(DateUtil.parseDateTime(strDeathDiscussionVO.getRecordDate()));//病历日期
-
-            strDeathDiscussion.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if(isExist(strDeathDiscussion)){
-                strDeathDiscussion.setGmtCreate(new Date());//记录创建时间
-                this.save(strDeathDiscussion);
-            }else{
-                strDeathDiscussion.setGmtModified(new Date());//记录修改时间
-                this.update(strDeathDiscussion,new QueryWrapper<StrDeathDiscussion>()
-                        .eq("rec_id", strDeathDiscussion.getRecId())
-                        .eq("hospital_id", strDeathDiscussion.getHospitalId())
-                        .eq("behospital_code", strDeathDiscussion.getBehospitalCode()));
-            }
-
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("死亡病例讨论记录",strDeathDiscussion.getRecId(), JSON.toJSONString(entityMap),"",e.getMessage());
-        }
-
-    }
-
-    public Boolean isExist(StrDeathDiscussion strDeathDiscussion){
-        Boolean flag=true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrDeathDiscussion>()
-                .eq("rec_id", strDeathDiscussion.getRecId())
-                .eq("hospital_id", strDeathDiscussion.getHospitalId())
-                .eq("behospital_code", strDeathDiscussion.getBehospitalCode()));
-        if(count>0){
-            flag=false;
-        }
-        return flag;
-    }
-
-    public RespDTO execDealData(List<StrDeathDiscussionVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrDeathDiscussionVO strDeathDiscussionVO:list) {
-                if("".equals(strDeathDiscussionVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strDeathDiscussionVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strDeathDiscussionVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrDeathDiscussion> strDeathDiscussionList= Lists.newArrayList();
-            strDeathDiscussionList= BeanUtil.listCopyTo(list,StrDeathDiscussion.class);
-            execute(strDeathDiscussionList);
-
-            return RespDTO.onSuc(strDeathDiscussionList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrDeathDiscussion> list){
-        try {
-            List<StrDeathDiscussion> addE = Lists.newLinkedList();
-            List<StrDeathDiscussion> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrDeathDiscussion strDeathDiscussion = this.getOne(new QueryWrapper<StrDeathDiscussion>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strDeathDiscussion != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strDeathDiscussionService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-死亡病例讨论记录","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-}

+ 0 - 153
src/main/java/com/diagbot/facade/str/AStrDeathNoteFacade.java

@@ -1,153 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrDeathNote;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrDeathNoteServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.data.AStrDeathNoteVO;
-import com.diagbot.vo.str.StrDeathNoteVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-@Component
-public class AStrDeathNoteFacade extends StrDeathNoteServiceImpl {
-
-    @Autowired
-    @Qualifier("strDeathNoteServiceImpl")
-    private StrDeathNoteServiceImpl strDeathNoteService;
-    @Autowired
-    private ColumnFacade columnFacade;
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh(){
-        List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
-        list.forEach(s->{
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-
-        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
-        Boolean flag=columnFacade.createColumn(columnMap,"strDeathNote");
-
-        //Map<String, String> map=columnFacade.getColumn("strConsultationNote");
-        if(!flag){
-            return;
-        }
-    }
-
-    //死亡记录
-    public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
-        StrDeathNote strDeathNote=new StrDeathNote();
-        try {
-            AStrDeathNoteVO strDeathNoteVO=(AStrDeathNoteVO) MapUtil.mapToObject(entityMap, AStrDeathNoteVO.class);
-            BeanUtils.copyProperties(strDeathNoteVO,strDeathNote);
-            strDeathNote.setHospitalId(hospitalId);//医院编码
-
-            strDeathNote.setAuditDate(DateUtil.parseDateTime(strDeathNoteVO.getAuditDate()));//审核时间
-            strDeathNote.setRecDate(DateUtil.parseDateTime(strDeathNoteVO.getRecDate()));//记录时间
-            strDeathNote.setBehospitalDate(DateUtil.parseDateTime(strDeathNoteVO.getBehospitalDate()));//入院日期
-            strDeathNote.setDeathDate(DateUtil.parseDate(strDeathNoteVO.getDeathDate()));//死亡日期
-            strDeathNote.setRecordDate(DateUtil.parseDateTime(strDeathNoteVO.getRecordDate()));//病历日期
-
-            strDeathNote.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if(isExist(strDeathNote)){
-                strDeathNote.setGmtCreate(new Date());//记录创建时间
-                this.save(strDeathNote);
-            }else{
-                strDeathNote.setGmtModified(new Date());//记录修改时间
-                this.update(strDeathNote,new QueryWrapper<StrDeathNote>()
-                        .eq("rec_id", strDeathNote.getRecId())
-                        .eq("hospital_id", strDeathNote.getHospitalId())
-                        .eq("behospital_code", strDeathNote.getBehospitalCode()));
-            }
-
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("死亡记录", strDeathNote.getRecId(),JSON.toJSONString(entityMap),"",e.getMessage());
-        }
-
-    }
-
-    public Boolean isExist(StrDeathNote strDeathNote){
-        Boolean flag=true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrDeathNote>()
-                .eq("rec_id", strDeathNote.getRecId())
-                .eq("hospital_id", strDeathNote.getHospitalId())
-                .eq("behospital_code", strDeathNote.getBehospitalCode()));
-        if(count>0){
-            flag=false;
-        }
-        return flag;
-    }
-
-    public RespDTO execDealData(List<StrDeathNoteVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrDeathNoteVO strDeathNoteVO:list) {
-                if("".equals(strDeathNoteVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strDeathNoteVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strDeathNoteVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrDeathNote> strDeathNoteList= Lists.newArrayList();
-            strDeathNoteList= BeanUtil.listCopyTo(list,StrDeathNote.class);
-            execute(strDeathNoteList);
-
-            return RespDTO.onSuc(strDeathNoteList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrDeathNote> list){
-        try {
-            List<StrDeathNote> addE = Lists.newLinkedList();
-            List<StrDeathNote> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrDeathNote strDeathNote = this.getOne(new QueryWrapper<StrDeathNote>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strDeathNote != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strDeathNoteService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-死亡记录","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-}

+ 0 - 150
src/main/java/com/diagbot/facade/str/AStrDifficultCaseFacade.java

@@ -1,150 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrDifficultCase;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrDifficultCaseServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.data.AStrDifficultCaseVO;
-import com.diagbot.vo.str.StrDifficultCaseVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-@Component
-public class AStrDifficultCaseFacade extends StrDifficultCaseServiceImpl{
-
-    @Autowired
-    @Qualifier("strDifficultCaseServiceImpl")
-    private StrDifficultCaseServiceImpl strDifficultCaseService;
-    @Autowired
-    private ColumnFacade columnFacade;
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh(){
-        List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
-        list.forEach(s->{
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-
-        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
-        Boolean flag=columnFacade.createColumn(columnMap,"strDifficultCase");
-
-        //Map<String, String> map=columnFacade.getColumn("strConsultationNote");
-        if(!flag){
-            return;
-        }
-    }
-
-    public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
-        StrDifficultCase medDifficult=new StrDifficultCase();
-        try {
-            AStrDifficultCaseVO medDifficultVO=(AStrDifficultCaseVO) MapUtil.mapToObject(entityMap, AStrDifficultCaseVO.class);
-            BeanUtils.copyProperties(medDifficultVO,medDifficult);
-            medDifficult.setHospitalId(hospitalId);//医院编码
-            medDifficult.setRecDate(DateUtil.parseDateTime(medDifficultVO.getRecDate()));
-            medDifficult.setAuditDate(DateUtil.parseDateTime(medDifficultVO.getAuditDate()));
-            medDifficult.setDiscussDate(DateUtil.parseDateTime(medDifficultVO.getDiscussDate()));
-            medDifficult.setRecordDate(DateUtil.parseDateTime(medDifficultVO.getRecordDate()));//病历日期
-
-            medDifficult.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if(isExist(medDifficult)){
-                medDifficult.setGmtCreate(new Date());//记录创建时间
-                this.save(medDifficult);
-            }else{
-                medDifficult.setGmtModified(new Date());//记录修改时间
-                this.update(medDifficult,new QueryWrapper<StrDifficultCase>()
-                        .eq("rec_id", medDifficult.getRecId())
-                        .eq("hospital_id", medDifficult.getHospitalId())
-                        .eq("behospital_code", medDifficult.getBehospitalCode()));
-            }
-
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("疑难病例讨论记录",medDifficult.getRecId(), JSON.toJSONString(entityMap),"",e.getMessage());
-        }
-
-    }
-
-    public Boolean isExist(StrDifficultCase medDifficult){
-        Boolean flag=true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrDifficultCase>()
-                .eq("rec_id", medDifficult.getRecId())
-                .eq("hospital_id", medDifficult.getHospitalId())
-                .eq("behospital_code", medDifficult.getBehospitalCode()));
-        if(count>0){
-            flag=false;
-        }
-        return flag;
-    }
-
-    public RespDTO execDealData(List<StrDifficultCaseVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrDifficultCaseVO strDifficultCaseVO:list) {
-                if("".equals(strDifficultCaseVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strDifficultCaseVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strDifficultCaseVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrDifficultCase> strDifficultCaseList= Lists.newArrayList();
-            strDifficultCaseList= BeanUtil.listCopyTo(list,StrDifficultCase.class);
-            execute(strDifficultCaseList);
-
-            return RespDTO.onSuc(strDifficultCaseList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrDifficultCase> list){
-        try {
-            List<StrDifficultCase> addE = Lists.newLinkedList();
-            List<StrDifficultCase> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrDifficultCase strDifficultCase = this.getOne(new QueryWrapper<StrDifficultCase>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strDifficultCase != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strDifficultCaseService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-死亡记录","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-}

+ 0 - 150
src/main/java/com/diagbot/facade/str/AStrFirstRecordFacade.java

@@ -1,150 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrFirstRecord;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrFirstRecordServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.data.AStrFirstRecordVO;
-import com.diagbot.vo.str.StrFirstRecordVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-@Component
-public class AStrFirstRecordFacade extends StrFirstRecordServiceImpl {
-
-    @Autowired
-    @Qualifier("strFirstRecordServiceImpl")
-    private StrFirstRecordServiceImpl strFirstRecordService;
-    @Autowired
-    private ColumnFacade columnFacade;
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh(){
-        List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
-        list.forEach(s->{
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-
-        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
-        Boolean flag=columnFacade.createColumn(columnMap,"strFirstRecord");
-
-        //Map<String, String> map=columnFacade.getColumn("strConsultationNote");
-        if(!flag){
-            return;
-        }
-    }
-
-    public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
-        StrFirstRecord strFirstRecord=new StrFirstRecord();
-        try {
-            AStrFirstRecordVO strFirstRecordVO=(AStrFirstRecordVO) MapUtil.mapToObject(entityMap, AStrFirstRecordVO.class);
-            BeanUtils.copyProperties(strFirstRecordVO,strFirstRecord);
-            strFirstRecord.setHospitalId(hospitalId);//医院编码
-
-            strFirstRecord.setAuditDate(DateUtil.parseDateTime(strFirstRecordVO.getAuditDate()));//审核时间
-            strFirstRecord.setRecDate(DateUtil.parseDateTime(strFirstRecordVO.getRecDate()));//记录时间
-            strFirstRecord.setRecordDate(DateUtil.parseDateTime(strFirstRecordVO.getRecordDate()));//病历日期
-
-            strFirstRecord.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if(isExist(strFirstRecord)){
-                strFirstRecord.setGmtCreate(new Date());//记录创建时间
-                this.save(strFirstRecord);
-            }else{
-                strFirstRecord.setGmtModified(new Date());//记录修改时间
-                this.update(strFirstRecord,new QueryWrapper<StrFirstRecord>()
-                        .eq("rec_id", strFirstRecord.getRecId())
-                        .eq("hospital_id", strFirstRecord.getHospitalId())
-                        .eq("behospital_code", strFirstRecord.getBehospitalCode()));
-            }
-
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("首次病程录", strFirstRecord.getRecId(),JSON.toJSONString(entityMap),"",e.getMessage());
-        }
-
-    }
-
-    public Boolean isExist(StrFirstRecord strFirstRecord){
-        Boolean flag=true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrFirstRecord>()
-                .eq("rec_id", strFirstRecord.getRecId())
-                .eq("hospital_id", strFirstRecord.getHospitalId())
-                .eq("behospital_code", strFirstRecord.getBehospitalCode()));
-        if(count>0){
-            flag=false;
-        }
-        return flag;
-    }
-
-    public RespDTO execDealData(List<StrFirstRecordVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrFirstRecordVO strFirstRecordVO:list) {
-                if("".equals(strFirstRecordVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strFirstRecordVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strFirstRecordVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrFirstRecord> strFirstRecordList= Lists.newArrayList();
-            strFirstRecordList= BeanUtil.listCopyTo(list,StrFirstRecord.class);
-            execute(strFirstRecordList);
-
-            return RespDTO.onSuc(strFirstRecordList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrFirstRecord> list){
-        try {
-            List<StrFirstRecord> addE = Lists.newLinkedList();
-            List<StrFirstRecord> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrFirstRecord strFirstRecord = this.getOne(new QueryWrapper<StrFirstRecord>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strFirstRecord != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strFirstRecordService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-首次病程录","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-}

+ 0 - 149
src/main/java/com/diagbot/facade/str/AStrIllCriticallyFacade.java

@@ -1,149 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrIllCritically;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrIllCriticallyServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.data.AStrIllCriticallyVO;
-import com.diagbot.vo.str.StrIllCriticallyVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-@Component
-public class AStrIllCriticallyFacade extends StrIllCriticallyServiceImpl {
-
-    @Autowired
-    @Qualifier("strIllCriticallyServiceImpl")
-    private StrIllCriticallyServiceImpl strIllCriticallyService;
-    @Autowired
-    private ColumnFacade columnFacade;
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh(){
-        List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
-        list.forEach(s->{
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-
-        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
-        Boolean flag=columnFacade.createColumn(columnMap,"strIllCritically");
-
-        //Map<String, String> map=columnFacade.getColumn("strConsultationNote");
-        if(!flag){
-            return;
-        }
-    }
-
-    public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
-        StrIllCritically strIllCritically=new StrIllCritically();
-        try {
-            AStrIllCriticallyVO strIllCriticallyVO=(AStrIllCriticallyVO) MapUtil.mapToObject(entityMap, AStrIllCriticallyVO.class);
-            BeanUtils.copyProperties(strIllCriticallyVO,strIllCritically);
-            strIllCritically.setHospitalId(hospitalId);//医院编码
-            strIllCritically.setPatientSignDate(DateUtil.parseDateTime(strIllCriticallyVO.getPatientSignDate()));
-            strIllCritically.setDoctorSignDate(DateUtil.parseDateTime(strIllCriticallyVO.getDoctorSignDate()));//审核时间
-            strIllCritically.setRecordDate(DateUtil.parseDateTime(strIllCriticallyVO.getRecordDate()));//病历日期
-
-            strIllCritically.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if(isExist(strIllCritically)){
-                strIllCritically.setGmtCreate(new Date());//记录创建时间
-                this.save(strIllCritically);
-            }else{
-                strIllCritically.setGmtModified(new Date());//记录修改时间
-                this.update(strIllCritically,new QueryWrapper<StrIllCritically>()
-                        .eq("rec_id", strIllCritically.getRecId())
-                        .eq("hospital_id", strIllCritically.getHospitalId())
-                        .eq("behospital_code", strIllCritically.getBehospitalCode()));
-            }
-
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("病危通知单",strIllCritically.getRecId(), JSON.toJSONString(entityMap),"",e.getMessage());
-        }
-
-    }
-
-    public Boolean isExist(StrIllCritically strIllCritically){
-        Boolean flag=true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrIllCritically>()
-                .eq("rec_id", strIllCritically.getRecId())
-                .eq("hospital_id", strIllCritically.getHospitalId())
-                .eq("behospital_code", strIllCritically.getBehospitalCode()));
-        if(count>0){
-            flag=false;
-        }
-        return flag;
-    }
-
-    public RespDTO execDealData(List<StrIllCriticallyVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrIllCriticallyVO strIllCriticallyVO:list) {
-                if("".equals(strIllCriticallyVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strIllCriticallyVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strIllCriticallyVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrIllCritically> strIllCriticallyList= Lists.newArrayList();
-            strIllCriticallyList= BeanUtil.listCopyTo(list,StrIllCritically.class);
-            execute(strIllCriticallyList);
-
-            return RespDTO.onSuc(strIllCriticallyList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrIllCritically> list){
-        try {
-            List<StrIllCritically> addE = Lists.newLinkedList();
-            List<StrIllCritically> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrIllCritically strIllCritically = this.getOne(new QueryWrapper<StrIllCritically>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strIllCritically != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strIllCriticallyService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-病危通知单","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-}

+ 0 - 149
src/main/java/com/diagbot/facade/str/AStrIllSeriouslFacade.java

@@ -1,149 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrIllSeriousl;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrIllSeriouslServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.data.AStrIllSeriouslVO;
-import com.diagbot.vo.str.StrIllSeriouslVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-@Component
-public class AStrIllSeriouslFacade extends StrIllSeriouslServiceImpl {
-
-    @Autowired
-    @Qualifier("strIllSeriouslServiceImpl")
-    private StrIllSeriouslServiceImpl strIllSeriouslService;
-    @Autowired
-    private ColumnFacade columnFacade;
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh(){
-        List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
-        list.forEach(s->{
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-
-        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
-        Boolean flag=columnFacade.createColumn(columnMap,"strIllSeriousl");
-
-        //Map<String, String> map=columnFacade.getColumn("strConsultationNote");
-        if(!flag){
-            return;
-        }
-    }
-
-    public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
-        StrIllSeriousl strIllSeriousl=new StrIllSeriousl();
-        try {
-            AStrIllSeriouslVO strIllSeriouslVO=(AStrIllSeriouslVO) MapUtil.mapToObject(entityMap, AStrIllSeriouslVO.class);
-            BeanUtils.copyProperties(strIllSeriouslVO,strIllSeriousl);
-            strIllSeriousl.setHospitalId(hospitalId);//医院编码
-            strIllSeriousl.setPatientSignDate(DateUtil.parseDateTime(strIllSeriouslVO.getPatientSignDate()));
-            strIllSeriousl.setDoctorSignDate(DateUtil.parseDateTime(strIllSeriouslVO.getDoctorSignDate()));//审核时间
-            strIllSeriousl.setRecordDate(DateUtil.parseDateTime(strIllSeriouslVO.getRecordDate()));//病历日期
-
-            strIllSeriousl.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if(isExist(strIllSeriousl)){
-                strIllSeriousl.setGmtCreate(new Date());//记录创建时间
-                this.save(strIllSeriousl);
-            }else{
-                strIllSeriousl.setGmtModified(new Date());//记录修改时间
-                this.update(strIllSeriousl,new QueryWrapper<StrIllSeriousl>()
-                        .eq("rec_id", strIllSeriousl.getRecId())
-                        .eq("hospital_id", strIllSeriousl.getHospitalId())
-                        .eq("behospital_code", strIllSeriousl.getBehospitalCode()));
-            }
-
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("病重通知单", strIllSeriousl.getRecId(),JSON.toJSONString(entityMap),"",e.getMessage());
-        }
-
-    }
-
-    public Boolean isExist(StrIllSeriousl strIllSeriousl){
-        Boolean flag=true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrIllSeriousl>()
-                .eq("rec_id", strIllSeriousl.getRecId())
-                .eq("hospital_id", strIllSeriousl.getHospitalId())
-                .eq("behospital_code", strIllSeriousl.getBehospitalCode()));
-        if(count>0){
-            flag=false;
-        }
-        return flag;
-    }
-
-    public RespDTO execDealData(List<StrIllSeriouslVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrIllSeriouslVO strIllSeriouslVO:list) {
-                if("".equals(strIllSeriouslVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strIllSeriouslVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strIllSeriouslVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrIllSeriousl> strIllSeriouslList= Lists.newArrayList();
-            strIllSeriouslList= BeanUtil.listCopyTo(list,StrIllSeriousl.class);
-            execute(strIllSeriouslList);
-
-            return RespDTO.onSuc(strIllSeriouslList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrIllSeriousl> list){
-        try {
-            List<StrIllSeriousl> addE = Lists.newLinkedList();
-            List<StrIllSeriousl> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrIllSeriousl strIllSeriousl = this.getOne(new QueryWrapper<StrIllSeriousl>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strIllSeriousl != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strIllSeriouslService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-病重通知单","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-}

+ 0 - 153
src/main/java/com/diagbot/facade/str/AStrLeaveHospitalFacade.java

@@ -1,153 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrLeaveHospital;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrLeaveHospitalServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.data.AStrLeaveHospitalVO;
-import com.diagbot.vo.str.StrLeaveHospitalVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-@Component
-public class AStrLeaveHospitalFacade extends StrLeaveHospitalServiceImpl {
-
-    @Autowired
-    @Qualifier("strLeaveHospitalServiceImpl")
-    private StrLeaveHospitalServiceImpl strLeaveHospitalService;
-    @Autowired
-    private ColumnFacade columnFacade;
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh(){
-        List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
-        list.forEach(s->{
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-
-        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
-        Boolean flag=columnFacade.createColumn(columnMap,"strLeaveHospital");
-
-        //Map<String, String> map=columnFacade.getColumn("strConsultationNote");
-        if(!flag){
-            return;
-        }
-    }
-
-    //危急值记录
-    public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
-        StrLeaveHospital strLeaveHospital=new StrLeaveHospital();
-        try {
-            AStrLeaveHospitalVO strLeaveHospitalVO=(AStrLeaveHospitalVO) MapUtil.mapToObject(entityMap, AStrLeaveHospitalVO.class);
-            BeanUtils.copyProperties(strLeaveHospitalVO,strLeaveHospital);
-            strLeaveHospital.setHospitalId(hospitalId);//医院编码
-
-            strLeaveHospital.setAuditDate(DateUtil.parseDateTime(strLeaveHospitalVO.getAuditDate()));//审核时间
-            strLeaveHospital.setRecDate(DateUtil.parseDateTime(strLeaveHospitalVO.getRecDate()));//记录时间
-            strLeaveHospital.setBehospitalDate(DateUtil.parseDateTime(strLeaveHospitalVO.getBehospitalDate()));//入院日期
-            strLeaveHospital.setLeaveHospitalDate(DateUtil.parseDateTime(strLeaveHospitalVO.getLeaveHospitalDate()));//出院时间
-            strLeaveHospital.setRecordDate(DateUtil.parseDateTime(strLeaveHospitalVO.getRecordDate()));//病历日期
-
-            strLeaveHospital.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if(isExist(strLeaveHospital)){
-                strLeaveHospital.setGmtCreate(new Date());//记录创建时间
-                this.save(strLeaveHospital);
-            }else{
-                strLeaveHospital.setGmtModified(new Date());//记录修改时间
-                this.update(strLeaveHospital,new QueryWrapper<StrLeaveHospital>()
-                        .eq("rec_id", strLeaveHospital.getRecId())
-                        .eq("hospital_id", strLeaveHospital.getHospitalId())
-                        .eq("behospital_code", strLeaveHospital.getBehospitalCode()));
-            }
-
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("出院小结",strLeaveHospital.getRecId(), JSON.toJSONString(entityMap),"",e.getMessage());
-        }
-
-    }
-
-    public Boolean isExist(StrLeaveHospital strLeaveHospital){
-        Boolean flag=true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrLeaveHospital>()
-                .eq("rec_id", strLeaveHospital.getRecId())
-                .eq("hospital_id", strLeaveHospital.getHospitalId())
-                .eq("behospital_code", strLeaveHospital.getBehospitalCode()));
-        if(count>0){
-            flag=false;
-        }
-        return flag;
-    }
-
-    public RespDTO execDealData(List<StrLeaveHospitalVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrLeaveHospitalVO strLeaveHospitalVO:list) {
-                if("".equals(strLeaveHospitalVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strLeaveHospitalVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strLeaveHospitalVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrLeaveHospital> strLeaveHospitalList= Lists.newArrayList();
-            strLeaveHospitalList= BeanUtil.listCopyTo(list,StrLeaveHospital.class);
-            execute(strLeaveHospitalList);
-
-            return RespDTO.onSuc(strLeaveHospitalList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrLeaveHospital> list){
-        try {
-            List<StrLeaveHospital> addE = Lists.newLinkedList();
-            List<StrLeaveHospital> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrLeaveHospital strLeaveHospital = this.getOne(new QueryWrapper<StrLeaveHospital>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strLeaveHospital != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strLeaveHospitalService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-出院小结","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-}

+ 0 - 154
src/main/java/com/diagbot/facade/str/AStrOperativeFirstRecord.java

@@ -1,154 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrOperativeFirstRecord;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrOperativeFirstRecordServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.data.AStrOperativeFirstRecordVO;
-import com.diagbot.vo.str.StrOperativeFirstRecordVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-@Component
-public class AStrOperativeFirstRecord extends StrOperativeFirstRecordServiceImpl {
-
-    @Autowired
-    @Qualifier("strOperativeFirstRecordServiceImpl")
-    private StrOperativeFirstRecordServiceImpl strOperativeFirstRecordService;
-    @Autowired
-    private ColumnFacade columnFacade;
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh(){
-        List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
-        list.forEach(s->{
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-
-        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
-        Boolean flag=columnFacade.createColumn(columnMap,"strOperativeFirstRecord");
-
-        //Map<String, String> map=columnFacade.getColumn("strConsultationNote");
-        if(!flag){
-            return;
-        }
-    }
-
-    //术后首程
-    public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
-        StrOperativeFirstRecord strOperativeFirstRecord=new StrOperativeFirstRecord();
-        try {
-            AStrOperativeFirstRecordVO strOperativeFirstRecordVO=(AStrOperativeFirstRecordVO) MapUtil.mapToObject(entityMap, AStrOperativeFirstRecordVO.class);
-            BeanUtils.copyProperties(strOperativeFirstRecordVO,strOperativeFirstRecord);
-            strOperativeFirstRecord.setHospitalId(hospitalId);//医院编码
-
-            strOperativeFirstRecord.setAuditDate(DateUtil.parseDateTime(strOperativeFirstRecordVO.getAuditDate()));//审核时间
-            strOperativeFirstRecord.setRecDate(DateUtil.parseDateTime(strOperativeFirstRecordVO.getRecDate()));//记录时间
-            strOperativeFirstRecord.setOperationDate(DateUtil.parseDateTime(strOperativeFirstRecordVO.getOperationDate()));//手术日期
-            strOperativeFirstRecord.setStartTime(DateUtil.parseDate(strOperativeFirstRecordVO.getStartTime()));//开始时间
-            strOperativeFirstRecord.setEndTime(DateUtil.parseDate(strOperativeFirstRecordVO.getEndTime()));//结束时间
-            strOperativeFirstRecord.setRecordDate(DateUtil.parseDateTime(strOperativeFirstRecordVO.getRecordDate()));//病历日期
-
-            strOperativeFirstRecord.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if(isExist(strOperativeFirstRecord)){
-                strOperativeFirstRecord.setGmtCreate(new Date());//记录创建时间
-                this.save(strOperativeFirstRecord);
-            }else{
-                strOperativeFirstRecord.setGmtModified(new Date());//记录修改时间
-                this.update(strOperativeFirstRecord,new QueryWrapper<StrOperativeFirstRecord>()
-                        .eq("rec_id", strOperativeFirstRecord.getRecId())
-                        .eq("hospital_id", strOperativeFirstRecord.getHospitalId())
-                        .eq("behospital_code", strOperativeFirstRecord.getBehospitalCode()));
-            }
-
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("术后首程",strOperativeFirstRecord.getRecId(), JSON.toJSONString(entityMap),"",e.getMessage());
-        }
-
-    }
-
-    public Boolean isExist(StrOperativeFirstRecord strOperativeFirstRecord){
-        Boolean flag=true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrOperativeFirstRecord>()
-                .eq("rec_id", strOperativeFirstRecord.getRecId())
-                .eq("hospital_id", strOperativeFirstRecord.getHospitalId())
-                .eq("behospital_code", strOperativeFirstRecord.getBehospitalCode()));
-        if(count>0){
-            flag=false;
-        }
-        return flag;
-    }
-
-    public RespDTO execDealData(List<StrOperativeFirstRecordVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrOperativeFirstRecordVO strOperativeFirstRecordVO:list) {
-                if("".equals(strOperativeFirstRecordVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strOperativeFirstRecordVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strOperativeFirstRecordVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrOperativeFirstRecord> strOperativeFirstRecordList= Lists.newArrayList();
-            strOperativeFirstRecordList= BeanUtil.listCopyTo(list,StrOperativeFirstRecord.class);
-            execute(strOperativeFirstRecordList);
-
-            return RespDTO.onSuc(strOperativeFirstRecordList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrOperativeFirstRecord> list){
-        try {
-            List<StrOperativeFirstRecord> addE = Lists.newLinkedList();
-            List<StrOperativeFirstRecord> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrOperativeFirstRecord strOperativeFirstRecord = this.getOne(new QueryWrapper<StrOperativeFirstRecord>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strOperativeFirstRecord != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strOperativeFirstRecordService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-术后首程","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-}

+ 0 - 154
src/main/java/com/diagbot/facade/str/AStrOperativeNoteFacade.java

@@ -1,154 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrOperativeNote;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrOperativeNoteServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.data.AStrOperativeNoteVO;
-import com.diagbot.vo.str.StrOperativeNoteVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-@Component
-public class AStrOperativeNoteFacade extends StrOperativeNoteServiceImpl {
-
-    @Autowired
-    @Qualifier("strOperativeNoteServiceImpl")
-    private StrOperativeNoteServiceImpl strOperativeNoteService;
-    @Autowired
-    private ColumnFacade columnFacade;
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh(){
-        List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
-        list.forEach(s->{
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-
-        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
-        Boolean flag=columnFacade.createColumn(columnMap,"strOperativeNote");
-
-        //Map<String, String> map=columnFacade.getColumn("strConsultationNote");
-        if(!flag){
-            return;
-        }
-    }
-
-    //手术记录
-    public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
-        StrOperativeNote strOperativeNote=new StrOperativeNote();
-        try {
-            AStrOperativeNoteVO strOperativeNoteVO=(AStrOperativeNoteVO) MapUtil.mapToObject(entityMap, AStrOperativeNoteVO.class);
-            BeanUtils.copyProperties(strOperativeNoteVO,strOperativeNote);
-            strOperativeNote.setHospitalId(hospitalId);//医院编码
-
-            strOperativeNote.setAuditDate(DateUtil.parseDateTime(strOperativeNoteVO.getAuditDate()));//审核时间
-            strOperativeNote.setRecDate(DateUtil.parseDateTime(strOperativeNoteVO.getRecDate()));//记录时间
-            strOperativeNote.setOperationDate(DateUtil.parseDateTime(strOperativeNoteVO.getOperationDate()));//手术日期
-            strOperativeNote.setStartTime(DateUtil.parseDate(strOperativeNoteVO.getStartTime()));//开始时间
-            strOperativeNote.setEndTime(DateUtil.parseDate(strOperativeNoteVO.getEndTime()));//结束时间
-            strOperativeNote.setRecordDate(DateUtil.parseDateTime(strOperativeNoteVO.getRecordDate()));//病历日期
-
-            strOperativeNote.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if(isExist(strOperativeNote)){
-                strOperativeNote.setGmtCreate(new Date());//记录创建时间
-                this.save(strOperativeNote);
-            }else{
-                strOperativeNote.setGmtModified(new Date());//记录修改时间
-                this.update(strOperativeNote,new QueryWrapper<StrOperativeNote>()
-                        .eq("rec_id", strOperativeNote.getRecId())
-                        .eq("hospital_id", strOperativeNote.getHospitalId())
-                        .eq("behospital_code", strOperativeNote.getBehospitalCode()));
-            }
-
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("手术记录", strOperativeNote.getRecId(),JSON.toJSONString(entityMap),"",e.getMessage());
-        }
-
-    }
-
-    public Boolean isExist(StrOperativeNote strOperativeNote){
-        Boolean flag=true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrOperativeNote>()
-                .eq("rec_id", strOperativeNote.getRecId())
-                .eq("hospital_id", strOperativeNote.getHospitalId())
-                .eq("behospital_code", strOperativeNote.getBehospitalCode()));
-        if(count>0){
-            flag=false;
-        }
-        return flag;
-    }
-
-    public RespDTO execDealData(List<StrOperativeNoteVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrOperativeNoteVO strOperativeNoteVO:list) {
-                if("".equals(strOperativeNoteVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strOperativeNoteVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strOperativeNoteVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrOperativeNote> strOperativeNoteList= Lists.newArrayList();
-            strOperativeNoteList= BeanUtil.listCopyTo(list,StrOperativeNote.class);
-            execute(strOperativeNoteList);
-
-            return RespDTO.onSuc(strOperativeNoteList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrOperativeNote> list){
-        try {
-            List<StrOperativeNote> addE = Lists.newLinkedList();
-            List<StrOperativeNote> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrOperativeNote strOperativeNote = this.getOne(new QueryWrapper<StrOperativeNote>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strOperativeNote != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strOperativeNoteService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-手术记录","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-}

+ 0 - 151
src/main/java/com/diagbot/facade/str/AStrPeriodConclusionFacade.java

@@ -1,151 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrPeriodConclusion;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrPeriodConclusionServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.data.AStrPeriodConclusionVO;
-import com.diagbot.vo.str.StrPeriodConclusionVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-@Component
-public class AStrPeriodConclusionFacade extends StrPeriodConclusionServiceImpl {
-
-    @Autowired
-    @Qualifier("strPeriodConclusionServiceImpl")
-    private StrPeriodConclusionServiceImpl strPeriodConclusionService;
-    @Autowired
-    private ColumnFacade columnFacade;
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh(){
-        List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
-        list.forEach(s->{
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-
-        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
-        Boolean flag=columnFacade.createColumn(columnMap,"strPeriodConclusion");
-
-        //Map<String, String> map=columnFacade.getColumn("strConsultationNote");
-        if(!flag){
-            return;
-        }
-    }
-
-    public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
-        StrPeriodConclusion strPeriodConclusion=new StrPeriodConclusion();
-        try {
-            AStrPeriodConclusionVO strPeriodConclusionVO=(AStrPeriodConclusionVO) MapUtil.mapToObject(entityMap, AStrPeriodConclusionVO.class);
-            BeanUtils.copyProperties(strPeriodConclusionVO,strPeriodConclusion);
-            strPeriodConclusion.setHospitalId(hospitalId);//医院编码
-
-            strPeriodConclusion.setAuditDate(DateUtil.parseDateTime(strPeriodConclusionVO.getAuditDate()));//审核时间
-            strPeriodConclusion.setRecDate(DateUtil.parseDateTime(strPeriodConclusionVO.getRecDate()));//记录时间
-            strPeriodConclusion.setRecordDate(DateUtil.parseDateTime(strPeriodConclusionVO.getRecordDate()));//病历日期
-
-            strPeriodConclusion.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if(isExist(strPeriodConclusion)){
-                strPeriodConclusion.setGmtCreate(new Date());//记录创建时间
-                this.save(strPeriodConclusion);
-            }else{
-                strPeriodConclusion.setGmtModified(new Date());//记录修改时间
-                this.update(strPeriodConclusion,new QueryWrapper<StrPeriodConclusion>()
-                        .eq("rec_id", strPeriodConclusion.getRecId())
-                        .eq("hospital_id", strPeriodConclusion.getHospitalId())
-                        .eq("behospital_code", strPeriodConclusion.getBehospitalCode()));
-            }
-
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("阶段小结",strPeriodConclusion.getRecId(),JSON.toJSONString(entityMap),"",e.getMessage());
-        }
-
-    }
-
-    public Boolean isExist(StrPeriodConclusion strPeriodConclusion){
-        Boolean flag=true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrPeriodConclusion>()
-                .eq("rec_id", strPeriodConclusion.getRecId())
-                .eq("hospital_id", strPeriodConclusion.getHospitalId())
-                .eq("behospital_code", strPeriodConclusion.getBehospitalCode()));
-        if(count>0){
-            flag=false;
-        }
-        return flag;
-    }
-
-    public RespDTO execDealData(List<StrPeriodConclusionVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrPeriodConclusionVO strPeriodConclusionVO:list) {
-                if("".equals(strPeriodConclusionVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strPeriodConclusionVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strPeriodConclusionVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrPeriodConclusion> strPeriodConclusionList= Lists.newArrayList();
-            strPeriodConclusionList= BeanUtil.listCopyTo(list,StrPeriodConclusion.class);
-            execute(strPeriodConclusionList);
-
-            return RespDTO.onSuc(strPeriodConclusionList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrPeriodConclusion> list){
-        try {
-            List<StrPeriodConclusion> addE = Lists.newLinkedList();
-            List<StrPeriodConclusion> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrPeriodConclusion strPeriodConclusion = this.getOne(new QueryWrapper<StrPeriodConclusion>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strPeriodConclusion != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strPeriodConclusionService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-阶段小结","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-
-}

+ 0 - 152
src/main/java/com/diagbot/facade/str/AStrPreoperativeDiscussionFacade.java

@@ -1,152 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrPreoperativeDiscussion;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrPreoperativeDiscussionServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.data.AStrPreoperativeDiscussionVO;
-import com.diagbot.vo.str.StrPreoperativeDiscussionVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-@Component
-public class AStrPreoperativeDiscussionFacade extends StrPreoperativeDiscussionServiceImpl {
-
-    @Autowired
-    @Qualifier("strPreoperativeDiscussionServiceImpl")
-    private StrPreoperativeDiscussionServiceImpl strPreoperativeDiscussionService;
-    @Autowired
-    private ColumnFacade columnFacade;
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh(){
-        List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
-        list.forEach(s->{
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-
-        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
-        Boolean flag=columnFacade.createColumn(columnMap,"strPreoperativeDiscussion");
-
-        //Map<String, String> map=columnFacade.getColumn("strConsultationNote");
-        if(!flag){
-            return;
-        }
-    }
-
-    //入院记录
-    public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
-        StrPreoperativeDiscussion strPreoperativeDiscussion=new StrPreoperativeDiscussion();
-        try {
-            AStrPreoperativeDiscussionVO strPreoperativeDiscussionVO=(AStrPreoperativeDiscussionVO) MapUtil.mapToObject(entityMap, AStrPreoperativeDiscussionVO.class);
-            BeanUtils.copyProperties(strPreoperativeDiscussionVO,strPreoperativeDiscussion);
-            strPreoperativeDiscussion.setHospitalId(hospitalId);//医院编码
-
-            strPreoperativeDiscussion.setAuditDate(DateUtil.parseDateTime(strPreoperativeDiscussionVO.getAuditDate()));//审核时间
-            strPreoperativeDiscussion.setRecDate(DateUtil.parseDateTime(strPreoperativeDiscussionVO.getRecDate()));//记录时间
-            strPreoperativeDiscussion.setDiscussTime(DateUtil.parseDateTime(strPreoperativeDiscussionVO.getDiscussTime()));//讨论时间
-            strPreoperativeDiscussion.setRecordDate(DateUtil.parseDateTime(strPreoperativeDiscussionVO.getRecordDate()));//病历日期
-
-            strPreoperativeDiscussion.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if(isExist(strPreoperativeDiscussion)){
-                strPreoperativeDiscussion.setGmtCreate(new Date());//记录创建时间
-                this.save(strPreoperativeDiscussion);
-            }else{
-                strPreoperativeDiscussion.setGmtModified(new Date());//记录修改时间
-                this.update(strPreoperativeDiscussion,new QueryWrapper<StrPreoperativeDiscussion>()
-                        .eq("rec_id", strPreoperativeDiscussion.getRecId())
-                        .eq("hospital_id", strPreoperativeDiscussion.getHospitalId())
-                        .eq("behospital_code", strPreoperativeDiscussion.getBehospitalCode()));
-            }
-
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("术前讨论小结",strPreoperativeDiscussion.getRecId(), JSON.toJSONString(entityMap),"",e.getMessage());
-        }
-
-    }
-
-    public Boolean isExist(StrPreoperativeDiscussion strPreoperativeDiscussion){
-        Boolean flag=true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrPreoperativeDiscussion>()
-                .eq("rec_id", strPreoperativeDiscussion.getRecId())
-                .eq("hospital_id", strPreoperativeDiscussion.getHospitalId())
-                .eq("behospital_code", strPreoperativeDiscussion.getBehospitalCode()));
-        if(count>0){
-            flag=false;
-        }
-        return flag;
-    }
-
-    public RespDTO execDealData(List<StrPreoperativeDiscussionVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrPreoperativeDiscussionVO strPreoperativeDiscussionVO:list) {
-                if("".equals(strPreoperativeDiscussionVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strPreoperativeDiscussionVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strPreoperativeDiscussionVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrPreoperativeDiscussion> strPreoperativeDiscussionList= Lists.newArrayList();
-            strPreoperativeDiscussionList= BeanUtil.listCopyTo(list,StrPreoperativeDiscussion.class);
-            execute(strPreoperativeDiscussionList);
-
-            return RespDTO.onSuc(strPreoperativeDiscussionList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrPreoperativeDiscussion> list){
-        try {
-            List<StrPreoperativeDiscussion> addE = Lists.newLinkedList();
-            List<StrPreoperativeDiscussion> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrPreoperativeDiscussion strPreoperativeDiscussion = this.getOne(new QueryWrapper<StrPreoperativeDiscussion>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strPreoperativeDiscussion != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strPreoperativeDiscussionService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-术前讨论小结","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-}

+ 0 - 152
src/main/java/com/diagbot/facade/str/AStrRescueNoteFacade.java

@@ -1,152 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrRescueNote;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrRescueNoteServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.data.AStrRescueNoteVO;
-import com.diagbot.vo.str.StrRescueNoteVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-@Component
-public class AStrRescueNoteFacade extends StrRescueNoteServiceImpl {
-
-    @Autowired
-    @Qualifier("strRescueNoteServiceImpl")
-    private StrRescueNoteServiceImpl strRescueNoteService;
-    @Autowired
-    private ColumnFacade columnFacade;
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh(){
-        List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
-        list.forEach(s->{
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-
-        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
-        Boolean flag=columnFacade.createColumn(columnMap,"strRescueNote");
-
-        //Map<String, String> map=columnFacade.getColumn("strConsultationNote");
-        if(!flag){
-            return;
-        }
-    }
-
-    public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
-        StrRescueNote strRescueNote=new StrRescueNote();
-        try {
-            AStrRescueNoteVO strRescueNoteVO=(AStrRescueNoteVO) MapUtil.mapToObject(entityMap, AStrRescueNoteVO.class);
-            BeanUtils.copyProperties(strRescueNoteVO,strRescueNote);
-            strRescueNote.setHospitalId(hospitalId);//医院编码
-
-            strRescueNote.setAuditDate(DateUtil.parseDateTime(strRescueNoteVO.getAuditDate()));//审核时间
-            strRescueNote.setRecDate(DateUtil.parseDateTime(strRescueNoteVO.getRecDate()));//记录时间
-            strRescueNote.setStartTime(DateUtil.parseDateTime(strRescueNoteVO.getStartTime()));//开始时间
-            strRescueNote.setEndTime(DateUtil.parseDate(strRescueNoteVO.getEndTime()));//结束时间
-            strRescueNote.setRecordDate(DateUtil.parseDateTime(strRescueNoteVO.getRecordDate()));//病历日期
-
-            strRescueNote.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if(isExist(strRescueNote)){
-                strRescueNote.setGmtCreate(new Date());//记录创建时间
-                this.save(strRescueNote);
-            }else{
-                strRescueNote.setGmtModified(new Date());//记录修改时间
-                this.update(strRescueNote,new QueryWrapper<StrRescueNote>()
-                        .eq("rec_id", strRescueNote.getRecId())
-                        .eq("hospital_id", strRescueNote.getHospitalId())
-                        .eq("behospital_code", strRescueNote.getBehospitalCode()));
-            }
-
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("抢救记录", strRescueNote.getRecId(),JSON.toJSONString(entityMap),"",e.getMessage());
-        }
-
-    }
-
-    public Boolean isExist(StrRescueNote strRescueNote){
-        Boolean flag=true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrRescueNote>()
-                .eq("rec_id", strRescueNote.getRecId())
-                .eq("hospital_id", strRescueNote.getHospitalId())
-                .eq("behospital_code", strRescueNote.getBehospitalCode()));
-        if(count>0){
-            flag=false;
-        }
-        return flag;
-    }
-
-    public RespDTO execDealData(List<StrRescueNoteVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrRescueNoteVO strRescueNoteVO:list) {
-                if("".equals(strRescueNoteVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strRescueNoteVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strRescueNoteVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrRescueNote> strRescueNoteList= Lists.newArrayList();
-            strRescueNoteList= BeanUtil.listCopyTo(list,StrRescueNote.class);
-            execute(strRescueNoteList);
-
-            return RespDTO.onSuc(strRescueNoteList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrRescueNote> list){
-        try {
-            List<StrRescueNote> addE = Lists.newLinkedList();
-            List<StrRescueNote> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrRescueNote strRescueNote = this.getOne(new QueryWrapper<StrRescueNote>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strRescueNote != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strRescueNoteService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-抢救记录","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-}

+ 0 - 151
src/main/java/com/diagbot/facade/str/AStrTransferInNoteFacade.java

@@ -1,151 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrTransferInNote;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrTransferInNoteServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.data.AStrTransferInNoteVO;
-import com.diagbot.vo.str.StrTransferInNoteVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-@Component
-public class AStrTransferInNoteFacade extends StrTransferInNoteServiceImpl {
-
-    @Autowired
-    @Qualifier("strTransferInNoteServiceImpl")
-    private StrTransferInNoteServiceImpl strTransferInNoteService;
-    @Autowired
-    private ColumnFacade columnFacade;
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh(){
-        List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
-        list.forEach(s->{
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-
-        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
-        Boolean flag=columnFacade.createColumn(columnMap,"strTransferInNote");
-
-        //Map<String, String> map=columnFacade.getColumn("strConsultationNote");
-        if(!flag){
-            return;
-        }
-    }
-
-    public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
-        StrTransferInNote strTransferInNote=new StrTransferInNote();
-        try {
-            AStrTransferInNoteVO strTransferInNoteVO=(AStrTransferInNoteVO) MapUtil.mapToObject(entityMap, AStrTransferInNoteVO.class);
-            BeanUtils.copyProperties(strTransferInNoteVO,strTransferInNote);
-            strTransferInNote.setHospitalId(hospitalId);//医院编码
-            strTransferInNote.setTransferInDate(DateUtil.parseDateTime(strTransferInNoteVO.getTransferInDate()));
-            strTransferInNote.setAuditDate(DateUtil.parseDateTime(strTransferInNoteVO.getAuditDate()));//审核时间
-            strTransferInNote.setRecDate(DateUtil.parseDateTime(strTransferInNoteVO.getRecDate()));//记录时间
-            strTransferInNote.setRecordDate(DateUtil.parseDateTime(strTransferInNoteVO.getRecordDate()));//病历日期
-
-            strTransferInNote.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if(isExist(strTransferInNote)){
-                strTransferInNote.setGmtCreate(new Date());//记录创建时间
-                this.save(strTransferInNote);
-            }else{
-                strTransferInNote.setGmtModified(new Date());//记录修改时间
-                this.update(strTransferInNote,new QueryWrapper<StrTransferInNote>()
-                        .eq("rec_id", strTransferInNote.getRecId())
-                        .eq("hospital_id", strTransferInNote.getHospitalId())
-                        .eq("behospital_code", strTransferInNote.getBehospitalCode()));
-            }
-
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("转入记录",strTransferInNote.getRecId(), JSON.toJSONString(entityMap),"",e.getMessage());
-        }
-
-    }
-
-    public Boolean isExist(StrTransferInNote strTransferInNote){
-        Boolean flag=true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrTransferInNote>()
-                .eq("rec_id", strTransferInNote.getRecId())
-                .eq("hospital_id", strTransferInNote.getHospitalId())
-                .eq("behospital_code", strTransferInNote.getBehospitalCode()));
-        if(count>0){
-            flag=false;
-        }
-        return flag;
-    }
-
-    public RespDTO execDealData(List<StrTransferInNoteVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrTransferInNoteVO strTransferInNoteVO:list) {
-                if("".equals(strTransferInNoteVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strTransferInNoteVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strTransferInNoteVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrTransferInNote> strTransferInNoteList= Lists.newArrayList();
-            strTransferInNoteList= BeanUtil.listCopyTo(list,StrTransferInNote.class);
-            execute(strTransferInNoteList);
-
-            return RespDTO.onSuc(strTransferInNoteList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrTransferInNote> list){
-        try {
-            List<StrTransferInNote> addE = Lists.newLinkedList();
-            List<StrTransferInNote> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrTransferInNote strTransferInNote = this.getOne(new QueryWrapper<StrTransferInNote>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strTransferInNote != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strTransferInNoteService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-转入记录","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-
-}

+ 0 - 149
src/main/java/com/diagbot/facade/str/AStrTransferOutNoteFacade.java

@@ -1,149 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrTransferOutNote;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrTransferOutNoteServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.data.AStrTransferOutNoteVO;
-import com.diagbot.vo.str.StrTransferOutNoteVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-@Component
-public class AStrTransferOutNoteFacade extends StrTransferOutNoteServiceImpl {
-
-    @Autowired
-    @Qualifier("strTransferOutNoteServiceImpl")
-    private StrTransferOutNoteServiceImpl strTransferOutNoteService;
-    @Autowired
-    private ColumnFacade columnFacade;
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh(){
-        List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
-        list.forEach(s->{
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-
-        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
-        Boolean flag=columnFacade.createColumn(columnMap,"strTransferOutNote");
-
-        //Map<String, String> map=columnFacade.getColumn("strConsultationNote");
-        if(!flag){
-            return;
-        }
-    }
-
-    public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
-        StrTransferOutNote strTransferOutNote=new StrTransferOutNote();
-        try {
-            AStrTransferOutNoteVO strTransferOutNoteVO=(AStrTransferOutNoteVO) MapUtil.mapToObject(entityMap, AStrTransferOutNoteVO.class);
-            BeanUtils.copyProperties(strTransferOutNoteVO,strTransferOutNote);
-            strTransferOutNote.setHospitalId(hospitalId);//医院编码
-            strTransferOutNote.setTransferInDate(DateUtil.parseDateTime(strTransferOutNoteVO.getTransferInDate()));
-            strTransferOutNote.setAuditDate(DateUtil.parseDateTime(strTransferOutNoteVO.getAuditDate()));//审核时间
-            strTransferOutNote.setRecDate(DateUtil.parseDateTime(strTransferOutNoteVO.getRecDate()));//记录时间
-            strTransferOutNote.setRecordDate(DateUtil.parseDateTime(strTransferOutNoteVO.getRecordDate()));//病历日期
-
-            strTransferOutNote.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if(isExist(strTransferOutNote)){
-                strTransferOutNote.setGmtCreate(new Date());//记录创建时间
-                this.save(strTransferOutNote);
-            }else{
-                strTransferOutNote.setGmtModified(new Date());//记录修改时间
-                this.update(strTransferOutNote,new QueryWrapper<StrTransferOutNote>()
-                        .eq("rec_id", strTransferOutNote.getRecId())
-                        .eq("hospital_id", strTransferOutNote.getHospitalId())
-                        .eq("behospital_code", strTransferOutNote.getBehospitalCode()));
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("转出记录",strTransferOutNote.getRecId(), JSON.toJSONString(entityMap),"",e.getMessage());
-        }
-
-    }
-
-    public Boolean isExist(StrTransferOutNote strTransferOutNote){
-        Boolean flag=true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrTransferOutNote>()
-                .eq("rec_id", strTransferOutNote.getRecId())
-                .eq("hospital_id", strTransferOutNote.getHospitalId())
-                .eq("behospital_code", strTransferOutNote.getBehospitalCode()));
-        if(count>0){
-            flag=false;
-        }
-        return flag;
-    }
-
-    public RespDTO execDealData(List<StrTransferOutNoteVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrTransferOutNoteVO strTransferOutNoteVO:list) {
-                if("".equals(strTransferOutNoteVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strTransferOutNoteVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strTransferOutNoteVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrTransferOutNote> strTransferOutNoteList= Lists.newArrayList();
-            strTransferOutNoteList= BeanUtil.listCopyTo(list,StrTransferOutNote.class);
-            execute(strTransferOutNoteList);
-
-            return RespDTO.onSuc(strTransferOutNoteList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrTransferOutNote> list){
-        try {
-            List<StrTransferOutNote> addE = Lists.newLinkedList();
-            List<StrTransferOutNote> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrTransferOutNote strTransferOutNote = this.getOne(new QueryWrapper<StrTransferOutNote>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strTransferOutNote != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strTransferOutNoteService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-转出记录","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-}

+ 0 - 152
src/main/java/com/diagbot/facade/str/AStrWardRecordFacade.java

@@ -1,152 +0,0 @@
-package com.diagbot.facade.str;
-
-import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.dto.data.ColumnZhAndChDTO;
-import com.diagbot.entity.StrWardRecord;
-import com.diagbot.facade.data.AMedAbnormalInfoFacade;
-import com.diagbot.facade.data.ColumnFacade;
-import com.diagbot.service.impl.StrWardRecordServiceImpl;
-import com.diagbot.util.BeanUtil;
-import com.diagbot.util.DateUtil;
-import com.diagbot.util.EntityUtil;
-import com.diagbot.util.MapUtil;
-import com.diagbot.vo.data.AStrWardRecordVO;
-import com.diagbot.vo.str.StrWardRecordVO;
-import com.google.common.collect.Lists;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.stereotype.Component;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-@Component
-public class AStrWardRecordFacade extends StrWardRecordServiceImpl {
-
-    @Autowired
-    @Qualifier("strWardRecordServiceImpl")
-    private StrWardRecordServiceImpl strWardRecordService;
-    @Autowired
-    private ColumnFacade columnFacade;
-    @Autowired
-    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
-
-    public void getColumnZhAndCh(){
-        List<ColumnZhAndChDTO> list=this.baseMapper.getColumnZhAndCh();
-        list.forEach(s->{
-            s.setEn(NamingStrategy.underlineToCamel(s.getEn()));
-        });
-
-        Map<String, String> columnMap= EntityUtil.makeMapWithKeyValue(list,"ch","en");
-        Boolean flag=columnFacade.createColumn(columnMap,"strWardRecord");
-
-        //Map<String, String> map=columnFacade.getColumn("strConsultationNote");
-        if(!flag){
-            return;
-        }
-    }
-
-    //查房记录
-    public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
-        StrWardRecord strWardRecord=new StrWardRecord();
-        try {
-            AStrWardRecordVO strWardRecordVO=(AStrWardRecordVO) MapUtil.mapToObject(entityMap, AStrWardRecordVO.class);
-            BeanUtils.copyProperties(strWardRecordVO,strWardRecord);
-            strWardRecord.setHospitalId(hospitalId);//医院编码
-
-            strWardRecord.setAuditDate(DateUtil.parseDateTime(strWardRecordVO.getAuditDate()));//审核时间
-            strWardRecord.setRecDate(DateUtil.parseDateTime(strWardRecordVO.getRecDate()));//记录时间
-            strWardRecord.setWardDate(DateUtil.parseDateTime(strWardRecordVO.getWardDate()));//查房日期
-            strWardRecord.setRecordDate(DateUtil.parseDateTime(strWardRecordVO.getRecordDate()));//病历日期
-
-            strWardRecord.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if(isExist(strWardRecord)){
-                strWardRecord.setGmtCreate(new Date());//记录创建时间
-                this.save(strWardRecord);
-            }else{
-                strWardRecord.setGmtModified(new Date());//记录修改时间
-                this.update(strWardRecord,new QueryWrapper<StrWardRecord>()
-                        .eq("rec_id", strWardRecord.getRecId())
-                        .eq("hospital_id", strWardRecord.getHospitalId())
-                        .eq("behospital_code", strWardRecord.getBehospitalCode()));
-            }
-
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("查房记录", strWardRecord.getRecId(),JSON.toJSONString(entityMap),"",e.getMessage());
-        }
-
-    }
-
-    public Boolean isExist(StrWardRecord strWardRecord){
-        Boolean flag=true;
-        int count = this.baseMapper.selectCount(new QueryWrapper<StrWardRecord>()
-                .eq("rec_id", strWardRecord.getRecId())
-                .eq("hospital_id", strWardRecord.getHospitalId())
-                .eq("behospital_code", strWardRecord.getBehospitalCode()));
-        if(count>0){
-            flag=false;
-        }
-        return flag;
-    }
-
-    public RespDTO execDealData(List<StrWardRecordVO> list){
-        if(list!=null && list.size()>0){
-            //循环验证数据有效性
-            for (StrWardRecordVO strWardRecordVO:list) {
-                if("".equals(strWardRecordVO.getRecId())) {
-                    return RespDTO.onError("请输入记录编号!");
-                }else if(strWardRecordVO.getHospitalId()==null){
-                    return RespDTO.onError("请输入医院编码!");
-                }else if("".equals(strWardRecordVO.getBehospitalCode())){
-                    return RespDTO.onError("请输入病人住院编码!");
-                }
-            }
-            //初始、格式化数据
-            List<StrWardRecord> strWardRecordList= Lists.newArrayList();
-            strWardRecordList= BeanUtil.listCopyTo(list,StrWardRecord.class);
-            execute(strWardRecordList);
-
-            return RespDTO.onSuc(strWardRecordList);
-        }else{
-            return RespDTO.onError("未接收到数据!");
-        }
-    }
-
-    public void execute(List<StrWardRecord> list){
-        try {
-            List<StrWardRecord> addE = Lists.newLinkedList();
-            List<StrWardRecord> updateE = Lists.newLinkedList();
-            if (list != null && list.size() > 0) {
-                list.stream().forEach(s -> {
-                    StrWardRecord strWardRecord = this.getOne(new QueryWrapper<StrWardRecord>()
-                            .eq("rec_id", s.getRecId())
-                            .eq("hospital_id", s.getHospitalId())
-                            .eq("behospital_code",s.getBehospitalCode()), false);
-                    if (strWardRecord != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        addE.add(s);
-                    }
-                });
-            }
-            if(addE.size()>0){
-                strWardRecordService.saveBatch(addE);
-            }
-            if(updateE.size()>0){
-                this.baseMapper.updateBatchByKey(updateE);
-            }
-        }catch (Exception e){
-            log.error(e.getMessage(),e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-查房记录","", JSON.toJSONString(list),"",e.getMessage());
-        }
-    }
-}

+ 51 - 28
src/main/java/com/diagbot/facade/str/BStrAdmissionNoteFacade.java

@@ -17,6 +17,7 @@ import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.data.AStrAdmissionNoteVO;
 import com.diagbot.vo.str.StrAdmissionNoteVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -56,36 +57,58 @@ public class BStrAdmissionNoteFacade extends StrAdmissionNoteServiceImpl {
             return;
         }
     }
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrAdmissionNote strAdmissionNote = new StrAdmissionNote();
+        strAdmissionNote.setRecId(strContentVO.getRecId());
+        strAdmissionNote.setBehospitalCode(strContentVO.getBehospitalCode());
+        strAdmissionNote.setHospitalId(strContentVO.getHospitalId());
+        strAdmissionNote.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strAdmissionNote)) {
+            strAdmissionNote.setGmtCreate(new Date());//记录创建时间
+            this.save(strAdmissionNote);
+        } else {
+            strAdmissionNote.setGmtModified(new Date());//记录修改时间
+            this.update(strAdmissionNote, new QueryWrapper<StrAdmissionNote>()
+                    .eq("rec_id", strAdmissionNote.getRecId())
+                    .eq("hospital_id", strAdmissionNote.getHospitalId())
+                    .eq("behospital_code", strAdmissionNote.getBehospitalCode()));
+        }
+    }
 
-    //入院记录
-    public void dealData(String columnMap, Map<String, Object> entityMap, Long hospitalId) {
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(String columnMap, Map<String, Object> entityMap, Long hospitalId) throws Exception {
         StrAdmissionNote strAdmissionNote = new StrAdmissionNote();
-        try {
-            AStrAdmissionNoteVO strAdmissionNoteVO = (AStrAdmissionNoteVO) MapUtil.mapToObject(entityMap, AStrAdmissionNoteVO.class);
-            BeanUtils.copyProperties(strAdmissionNoteVO, strAdmissionNote);
-            strAdmissionNote.setHospitalId(hospitalId);//医院编码
-
-            strAdmissionNote.setAuditDate(DateUtil.parseDateTime(strAdmissionNoteVO.getAuditDate()));//审核时间
-            strAdmissionNote.setRecDate(DateUtil.parseDateTime(strAdmissionNoteVO.getRecDate()));//记录时间
-            strAdmissionNote.setBehospitalDate(DateUtil.parseDateTime(strAdmissionNoteVO.getBehospitalDate()));//入院日期
-            strAdmissionNote.setBirthday(DateUtil.parseDate(strAdmissionNoteVO.getBirthday()));//出生日期
-            strAdmissionNote.setRecordDate(DateUtil.parseDateTime(strAdmissionNoteVO.getRecordDate()));//病历日期
-
-            strAdmissionNote.setWholeData(columnMap);
-            //判断数据库中是否存在,不存在insert
-            if (isExist(strAdmissionNote)) {
-                strAdmissionNote.setGmtCreate(new Date());//记录创建时间
-                this.save(strAdmissionNote);
-            } else {
-                strAdmissionNote.setGmtModified(new Date());//记录修改时间
-                this.update(strAdmissionNote, new QueryWrapper<StrAdmissionNote>()
-                        .eq("rec_id", strAdmissionNote.getRecId())
-                        .eq("hospital_id", strAdmissionNote.getHospitalId())
-                        .eq("behospital_code", strAdmissionNote.getBehospitalCode()));
-            }
-        } catch (Exception e) {
-            log.error(e.getMessage(), e);
-            aMedAbnormalInfoFacade.saveAbnormalInfo("入院记录", strAdmissionNote.getRecId(), JSON.toJSONString(entityMap), "", e.getMessage());
+        AStrAdmissionNoteVO strAdmissionNoteVO = (AStrAdmissionNoteVO) MapUtil.mapToObject(entityMap, AStrAdmissionNoteVO.class);
+        BeanUtils.copyProperties(strAdmissionNoteVO, strAdmissionNote);
+        strAdmissionNote.setHospitalId(hospitalId);//医院编码
+
+        strAdmissionNote.setAuditDate(DateUtil.parseDateTime(strAdmissionNoteVO.getAuditDate()));//审核时间
+        strAdmissionNote.setRecDate(DateUtil.parseDateTime(strAdmissionNoteVO.getRecDate()));//记录时间
+        strAdmissionNote.setBehospitalDate(DateUtil.parseDateTime(strAdmissionNoteVO.getBehospitalDate()));//入院日期
+        strAdmissionNote.setBirthday(DateUtil.parseDate(strAdmissionNoteVO.getBirthday()));//出生日期
+        strAdmissionNote.setRecordDate(DateUtil.parseDateTime(strAdmissionNoteVO.getRecordDate()));//病历日期
+
+        strAdmissionNote.setWholeData(columnMap);
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strAdmissionNote)) {
+            strAdmissionNote.setGmtCreate(new Date());//记录创建时间
+            this.save(strAdmissionNote);
+        } else {
+            strAdmissionNote.setGmtModified(new Date());//记录修改时间
+            this.update(strAdmissionNote, new QueryWrapper<StrAdmissionNote>()
+                    .eq("rec_id", strAdmissionNote.getRecId())
+                    .eq("hospital_id", strAdmissionNote.getHospitalId())
+                    .eq("behospital_code", strAdmissionNote.getBehospitalCode()));
         }
     }
 

+ 31 - 0
src/main/java/com/diagbot/facade/str/BStrBloodResultFacade.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
+import com.diagbot.entity.StrAdmissionNote;
 import com.diagbot.entity.StrBloodResult;
 import com.diagbot.enums.CacheKeyEnum;
 import com.diagbot.enums.IsDeleteEnum;
@@ -17,6 +18,7 @@ import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.data.AStrBloodResultVO;
 import com.diagbot.vo.str.StrBloodResultVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -59,6 +61,35 @@ public class BStrBloodResultFacade extends StrBloodResultServiceImpl {
         //Map<String, String> map=columnFacade.getColumn("strBloodResult");
     }
 
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrBloodResult strBloodResult=new StrBloodResult();
+        strBloodResult.setRecId(strContentVO.getRecId());
+        strBloodResult.setBehospitalCode(strContentVO.getBehospitalCode());
+        strBloodResult.setHospitalId(strContentVO.getHospitalId());
+        strBloodResult.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strBloodResult)) {
+            strBloodResult.setGmtCreate(new Date());//记录创建时间
+            this.save(strBloodResult);
+        } else {
+            strBloodResult.setGmtModified(new Date());//记录修改时间
+            this.update(strBloodResult, new QueryWrapper<StrBloodResult>()
+                    .eq("rec_id", strBloodResult.getRecId())
+                    .eq("hospital_id", strBloodResult.getHospitalId())
+                    .eq("behospital_code", strBloodResult.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrBloodResult strBloodResult=new StrBloodResult();
         try {

+ 33 - 2
src/main/java/com/diagbot/facade/str/BStrBloodTransfusionFacade.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrBloodTransfusion;
+import com.diagbot.entity.StrBloodTransfusion;
 import com.diagbot.enums.CacheKeyEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
@@ -17,6 +18,7 @@ import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.data.AStrBloodTransfusionVO;
 import com.diagbot.vo.str.StrBloodTransfusionVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -61,6 +63,35 @@ public class BStrBloodTransfusionFacade extends StrBloodTransfusionServiceImpl {
         }
     }
 
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrBloodTransfusion strBloodTransfusion=new StrBloodTransfusion();
+        strBloodTransfusion.setRecId(strContentVO.getRecId());
+        strBloodTransfusion.setBehospitalCode(strContentVO.getBehospitalCode());
+        strBloodTransfusion.setHospitalId(strContentVO.getHospitalId());
+        strBloodTransfusion.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strBloodTransfusion)) {
+            strBloodTransfusion.setGmtCreate(new Date());//记录创建时间
+            this.save(strBloodTransfusion);
+        } else {
+            strBloodTransfusion.setGmtModified(new Date());//记录修改时间
+            this.update(strBloodTransfusion, new QueryWrapper<StrBloodTransfusion>()
+                    .eq("rec_id", strBloodTransfusion.getRecId())
+                    .eq("hospital_id", strBloodTransfusion.getHospitalId())
+                    .eq("behospital_code", strBloodTransfusion.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrBloodTransfusion strBloodTransfusion=new StrBloodTransfusion();
         try {
@@ -130,7 +161,7 @@ public class BStrBloodTransfusionFacade extends StrBloodTransfusionServiceImpl {
 
                 if(logSwitch){
                     strBloodTransfusionList.forEach(s->{
-                        aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-输血后效果评价-正常", s.getRecId(), JSON.toJSONString(s), "", "");
+                        aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-输血/血制品病程记录-正常", s.getRecId(), JSON.toJSONString(s), "", "");
                     });
                 }
                 return RespDTO.onSuc("操作正常!");
@@ -141,7 +172,7 @@ public class BStrBloodTransfusionFacade extends StrBloodTransfusionServiceImpl {
             log.error(e.getMessage(),e);
             if(list!=null && list.size()>0) {
                 list.forEach(s->{
-                    aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-输血后效果评价-异常", s.getRecId(), JSON.toJSONString(list), "", e.getMessage());
+                    aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-输血/血制品病程记录-异常", s.getRecId(), JSON.toJSONString(list), "", e.getMessage());
                 });
             }
             return RespDTO.onError("数据处理异常,详情查看日志表");

+ 31 - 1
src/main/java/com/diagbot/facade/str/BStrConsultationApplyFacade.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrConsultationApply;
+import com.diagbot.entity.StrConsultationApply;
 import com.diagbot.enums.CacheKeyEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
@@ -17,6 +18,7 @@ import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.data.AStrConsultationApplyVO;
 import com.diagbot.vo.str.StrConsultationApplyVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -56,7 +58,35 @@ public class BStrConsultationApplyFacade extends StrConsultationApplyServiceImpl
         }
     }
 
-    //会诊申请单
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrConsultationApply strConsultationApply=new StrConsultationApply();
+        strConsultationApply.setRecId(strContentVO.getRecId());
+        strConsultationApply.setBehospitalCode(strContentVO.getBehospitalCode());
+        strConsultationApply.setHospitalId(strContentVO.getHospitalId());
+        strConsultationApply.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strConsultationApply)) {
+            strConsultationApply.setGmtCreate(new Date());//记录创建时间
+            this.save(strConsultationApply);
+        } else {
+            strConsultationApply.setGmtModified(new Date());//记录修改时间
+            this.update(strConsultationApply, new QueryWrapper<StrConsultationApply>()
+                    .eq("rec_id", strConsultationApply.getRecId())
+                    .eq("hospital_id", strConsultationApply.getHospitalId())
+                    .eq("behospital_code", strConsultationApply.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrConsultationApply strConsultationApply=new StrConsultationApply();
         try {

+ 31 - 1
src/main/java/com/diagbot/facade/str/BStrConsultationNoteFacade.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrConsultationNote;
+import com.diagbot.entity.StrConsultationNote;
 import com.diagbot.enums.CacheKeyEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
@@ -17,6 +18,7 @@ import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.data.AStrConsultationNoteVO;
 import com.diagbot.vo.str.StrConsultationNoteVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -56,7 +58,35 @@ public class BStrConsultationNoteFacade extends StrConsultationNoteServiceImpl {
         }
     }
 
-    //会诊单(申请和结果)
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrConsultationNote strConsultationNote=new StrConsultationNote();
+        strConsultationNote.setRecId(strContentVO.getRecId());
+        strConsultationNote.setBehospitalCode(strContentVO.getBehospitalCode());
+        strConsultationNote.setHospitalId(strContentVO.getHospitalId());
+        strConsultationNote.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strConsultationNote)) {
+            strConsultationNote.setGmtCreate(new Date());//记录创建时间
+            this.save(strConsultationNote);
+        } else {
+            strConsultationNote.setGmtModified(new Date());//记录修改时间
+            this.update(strConsultationNote, new QueryWrapper<StrConsultationNote>()
+                    .eq("rec_id", strConsultationNote.getRecId())
+                    .eq("hospital_id", strConsultationNote.getHospitalId())
+                    .eq("behospital_code", strConsultationNote.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrConsultationNote strConsultationNote=new StrConsultationNote();
         try {

+ 31 - 1
src/main/java/com/diagbot/facade/str/BStrConsultationRecordFacade.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrConsultationRecord;
+import com.diagbot.entity.StrConsultationRecord;
 import com.diagbot.enums.CacheKeyEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
@@ -17,6 +18,7 @@ import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.AStrConsultationRecordVO;
 import com.diagbot.vo.str.StrConsultationRecordVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -55,7 +57,35 @@ public class BStrConsultationRecordFacade extends StrConsultationRecordServiceIm
         }
     }
 
-    //会诊记录
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrConsultationRecord strConsultationRecord=new StrConsultationRecord();
+        strConsultationRecord.setRecId(strContentVO.getRecId());
+        strConsultationRecord.setBehospitalCode(strContentVO.getBehospitalCode());
+        strConsultationRecord.setHospitalId(strContentVO.getHospitalId());
+        strConsultationRecord.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strConsultationRecord)) {
+            strConsultationRecord.setGmtCreate(new Date());//记录创建时间
+            this.save(strConsultationRecord);
+        } else {
+            strConsultationRecord.setGmtModified(new Date());//记录修改时间
+            this.update(strConsultationRecord, new QueryWrapper<StrConsultationRecord>()
+                    .eq("rec_id", strConsultationRecord.getRecId())
+                    .eq("hospital_id", strConsultationRecord.getHospitalId())
+                    .eq("behospital_code", strConsultationRecord.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrConsultationRecord strConsultationRecord=new StrConsultationRecord();
         try {

+ 31 - 1
src/main/java/com/diagbot/facade/str/BStrConsultationResultFacade.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrConsultationResult;
+import com.diagbot.entity.StrConsultationResult;
 import com.diagbot.enums.CacheKeyEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
@@ -17,6 +18,7 @@ import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.data.AStrConsultationResultVO;
 import com.diagbot.vo.str.StrConsultationResultVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -61,7 +63,35 @@ public class BStrConsultationResultFacade extends StrConsultationResultServiceIm
         }
     }
 
-    //会诊结果单
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrConsultationResult strConsultationResult=new StrConsultationResult();
+        strConsultationResult.setRecId(strContentVO.getRecId());
+        strConsultationResult.setBehospitalCode(strContentVO.getBehospitalCode());
+        strConsultationResult.setHospitalId(strContentVO.getHospitalId());
+        strConsultationResult.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strConsultationResult)) {
+            strConsultationResult.setGmtCreate(new Date());//记录创建时间
+            this.save(strConsultationResult);
+        } else {
+            strConsultationResult.setGmtModified(new Date());//记录修改时间
+            this.update(strConsultationResult, new QueryWrapper<StrConsultationResult>()
+                    .eq("rec_id", strConsultationResult.getRecId())
+                    .eq("hospital_id", strConsultationResult.getHospitalId())
+                    .eq("behospital_code", strConsultationResult.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrConsultationResult strConsultationResult=new StrConsultationResult();
         try {

+ 64 - 0
src/main/java/com/diagbot/facade/str/BStrContentFacade.java

@@ -0,0 +1,64 @@
+package com.diagbot.facade.str;
+
+/**
+ * @Description:文书核心业务处理类
+ * @Author:liuqq
+ * @time: ${DATE} ${TIME}
+ **/
+
+import com.alibaba.fastjson.JSON;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.enums.ModeIdEnum;
+import com.diagbot.facade.data.AMedAbnormalInfoFacade;
+import com.diagbot.facade.data.ColumnFacade;
+import com.diagbot.vo.str.StrContentVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Component;
+
+@Component
+public class BStrContentFacade {
+
+    @Autowired
+    private AMedAbnormalInfoFacade aMedAbnormalInfoFacade;
+
+    @Autowired
+    private ColumnFacade columnFacade;
+
+    @Value("${log_switch.enable}")
+    private boolean logSwitch;
+
+    @Value("${xml_analyse.enable}")
+    private boolean xmlAnalyse;
+
+    public RespDTO execDealData(StrContentVO strContentVO){
+        try{
+            if("".equals(strContentVO.getModelId())){
+                return RespDTO.onError("请输入模板类型ID!");
+            }else if("".equals(strContentVO.getRecId())) {
+                return RespDTO.onError("请输入记录编号!");
+            }else if(strContentVO.getHospitalId()==null){
+                return RespDTO.onError("请输入医院编码!");
+            }else if("".equals(strContentVO.getBehospitalCode())){
+                return RespDTO.onError("请输入病人住院编码!");
+            }else{
+                //是否进行xml、html、json解析为标准结构化
+                if(xmlAnalyse){
+                    //解析时,调用解析接口
+                    columnFacade.analyseWholeData(strContentVO);
+                }else{
+                    //不解析时,只存储入库
+                    columnFacade.addWholeData(strContentVO);
+                }
+
+                if(logSwitch){
+                    aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-文书-正常", strContentVO.getRecId(), JSON.toJSONString(strContentVO), "", ModeIdEnum.getName(Integer.parseInt(strContentVO.getModelId())));
+                }
+                return RespDTO.onSuc("操作正常!");
+            }
+        }catch (Exception e){
+            aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-文书-异常", ModeIdEnum.getName(Integer.parseInt(strContentVO.getModelId())), JSON.toJSONString(strContentVO), "", e.getMessage());
+            return RespDTO.onError("数据处理异常,详情查看日志表");
+        }
+    }
+}

+ 31 - 0
src/main/java/com/diagbot/facade/str/BStrCrisisNoteFacade.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrCrisisNote;
+import com.diagbot.entity.StrCrisisNote;
 import com.diagbot.enums.CacheKeyEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
@@ -16,6 +17,7 @@ import com.diagbot.util.EntityUtil;
 import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.data.AStrCrisisNoteVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.diagbot.vo.str.StrCrisisNoteVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
@@ -55,6 +57,35 @@ public class BStrCrisisNoteFacade extends StrCrisisNoteServiceImpl {
         }
     }
 
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrCrisisNote strCrisisNote=new StrCrisisNote();
+        strCrisisNote.setRecId(strContentVO.getRecId());
+        strCrisisNote.setBehospitalCode(strContentVO.getBehospitalCode());
+        strCrisisNote.setHospitalId(strContentVO.getHospitalId());
+        strCrisisNote.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strCrisisNote)) {
+            strCrisisNote.setGmtCreate(new Date());//记录创建时间
+            this.save(strCrisisNote);
+        } else {
+            strCrisisNote.setGmtModified(new Date());//记录修改时间
+            this.update(strCrisisNote, new QueryWrapper<StrCrisisNote>()
+                    .eq("rec_id", strCrisisNote.getRecId())
+                    .eq("hospital_id", strCrisisNote.getHospitalId())
+                    .eq("behospital_code", strCrisisNote.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrCrisisNote strCrisisNote=new StrCrisisNote();
         try {

+ 31 - 1
src/main/java/com/diagbot/facade/str/BStrDeathDiscussionFacade.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrDeathDiscussion;
+import com.diagbot.entity.StrDeathDiscussion;
 import com.diagbot.enums.CacheKeyEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
@@ -16,6 +17,7 @@ import com.diagbot.util.EntityUtil;
 import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.data.AStrDeathDiscussionVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.diagbot.vo.str.StrDeathDiscussionVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
@@ -55,7 +57,35 @@ public class BStrDeathDiscussionFacade extends StrDeathDiscussionServiceImpl {
         }
     }
 
-    //死亡病例讨论记录
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrDeathDiscussion strDeathDiscussion=new StrDeathDiscussion();
+        strDeathDiscussion.setRecId(strContentVO.getRecId());
+        strDeathDiscussion.setBehospitalCode(strContentVO.getBehospitalCode());
+        strDeathDiscussion.setHospitalId(strContentVO.getHospitalId());
+        strDeathDiscussion.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strDeathDiscussion)) {
+            strDeathDiscussion.setGmtCreate(new Date());//记录创建时间
+            this.save(strDeathDiscussion);
+        } else {
+            strDeathDiscussion.setGmtModified(new Date());//记录修改时间
+            this.update(strDeathDiscussion, new QueryWrapper<StrDeathDiscussion>()
+                    .eq("rec_id", strDeathDiscussion.getRecId())
+                    .eq("hospital_id", strDeathDiscussion.getHospitalId())
+                    .eq("behospital_code", strDeathDiscussion.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrDeathDiscussion strDeathDiscussion=new StrDeathDiscussion();
         try {

+ 31 - 1
src/main/java/com/diagbot/facade/str/BStrDeathNoteFacade.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrDeathNote;
+import com.diagbot.entity.StrDeathNote;
 import com.diagbot.enums.CacheKeyEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
@@ -16,6 +17,7 @@ import com.diagbot.util.EntityUtil;
 import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.data.AStrDeathNoteVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.diagbot.vo.str.StrDeathNoteVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
@@ -56,7 +58,35 @@ public class BStrDeathNoteFacade extends StrDeathNoteServiceImpl {
         }
     }
 
-    //死亡记录
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrDeathNote strDeathNote=new StrDeathNote();
+        strDeathNote.setRecId(strContentVO.getRecId());
+        strDeathNote.setBehospitalCode(strContentVO.getBehospitalCode());
+        strDeathNote.setHospitalId(strContentVO.getHospitalId());
+        strDeathNote.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strDeathNote)) {
+            strDeathNote.setGmtCreate(new Date());//记录创建时间
+            this.save(strDeathNote);
+        } else {
+            strDeathNote.setGmtModified(new Date());//记录修改时间
+            this.update(strDeathNote, new QueryWrapper<StrDeathNote>()
+                    .eq("rec_id", strDeathNote.getRecId())
+                    .eq("hospital_id", strDeathNote.getHospitalId())
+                    .eq("behospital_code", strDeathNote.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrDeathNote strDeathNote=new StrDeathNote();
         try {

+ 31 - 0
src/main/java/com/diagbot/facade/str/BStrDifficultCaseFacade.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrDifficultCase;
+import com.diagbot.entity.StrDifficultCase;
 import com.diagbot.enums.CacheKeyEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
@@ -16,6 +17,7 @@ import com.diagbot.util.EntityUtil;
 import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.data.AStrDifficultCaseVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.diagbot.vo.str.StrDifficultCaseVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
@@ -56,6 +58,35 @@ public class BStrDifficultCaseFacade extends StrDifficultCaseServiceImpl{
         }
     }
 
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrDifficultCase medDifficult=new StrDifficultCase();
+        medDifficult.setRecId(strContentVO.getRecId());
+        medDifficult.setBehospitalCode(strContentVO.getBehospitalCode());
+        medDifficult.setHospitalId(strContentVO.getHospitalId());
+        medDifficult.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(medDifficult)) {
+            medDifficult.setGmtCreate(new Date());//记录创建时间
+            this.save(medDifficult);
+        } else {
+            medDifficult.setGmtModified(new Date());//记录修改时间
+            this.update(medDifficult, new QueryWrapper<StrDifficultCase>()
+                    .eq("rec_id", medDifficult.getRecId())
+                    .eq("hospital_id", medDifficult.getHospitalId())
+                    .eq("behospital_code", medDifficult.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrDifficultCase medDifficult=new StrDifficultCase();
         try {

+ 31 - 0
src/main/java/com/diagbot/facade/str/BStrFirstRecordFacade.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrFirstRecord;
+import com.diagbot.entity.StrFirstRecord;
 import com.diagbot.enums.CacheKeyEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
@@ -16,6 +17,7 @@ import com.diagbot.util.EntityUtil;
 import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.data.AStrFirstRecordVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.diagbot.vo.str.StrFirstRecordVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
@@ -56,6 +58,35 @@ public class BStrFirstRecordFacade extends StrFirstRecordServiceImpl {
         }
     }
 
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrFirstRecord medDifficult=new StrFirstRecord();
+        medDifficult.setRecId(strContentVO.getRecId());
+        medDifficult.setBehospitalCode(strContentVO.getBehospitalCode());
+        medDifficult.setHospitalId(strContentVO.getHospitalId());
+        medDifficult.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(medDifficult)) {
+            medDifficult.setGmtCreate(new Date());//记录创建时间
+            this.save(medDifficult);
+        } else {
+            medDifficult.setGmtModified(new Date());//记录修改时间
+            this.update(medDifficult, new QueryWrapper<StrFirstRecord>()
+                    .eq("rec_id", medDifficult.getRecId())
+                    .eq("hospital_id", medDifficult.getHospitalId())
+                    .eq("behospital_code", medDifficult.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrFirstRecord strFirstRecord=new StrFirstRecord();
         try {

+ 31 - 0
src/main/java/com/diagbot/facade/str/BStrIllCriticallyFacade.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrIllCritically;
+import com.diagbot.entity.StrIllCritically;
 import com.diagbot.enums.CacheKeyEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
@@ -16,6 +17,7 @@ import com.diagbot.util.EntityUtil;
 import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.data.AStrIllCriticallyVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.diagbot.vo.str.StrIllCriticallyVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
@@ -56,6 +58,35 @@ public class BStrIllCriticallyFacade extends StrIllCriticallyServiceImpl {
         }
     }
 
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrIllCritically strIllCritically=new StrIllCritically();
+        strIllCritically.setRecId(strContentVO.getRecId());
+        strIllCritically.setBehospitalCode(strContentVO.getBehospitalCode());
+        strIllCritically.setHospitalId(strContentVO.getHospitalId());
+        strIllCritically.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strIllCritically)) {
+            strIllCritically.setGmtCreate(new Date());//记录创建时间
+            this.save(strIllCritically);
+        } else {
+            strIllCritically.setGmtModified(new Date());//记录修改时间
+            this.update(strIllCritically, new QueryWrapper<StrIllCritically>()
+                    .eq("rec_id", strIllCritically.getRecId())
+                    .eq("hospital_id", strIllCritically.getHospitalId())
+                    .eq("behospital_code", strIllCritically.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrIllCritically strIllCritically=new StrIllCritically();
         try {

+ 34 - 3
src/main/java/com/diagbot/facade/str/BStrIllSeriouslFacade.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrIllSeriousl;
+import com.diagbot.entity.StrIllSeriousl;
 import com.diagbot.enums.CacheKeyEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
@@ -16,6 +17,7 @@ import com.diagbot.util.EntityUtil;
 import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.data.AStrIllSeriouslVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.diagbot.vo.str.StrIllSeriouslVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
@@ -56,6 +58,35 @@ public class BStrIllSeriouslFacade extends StrIllSeriouslServiceImpl {
         }
     }
 
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrIllSeriousl strIllSeriousl=new StrIllSeriousl();
+        strIllSeriousl.setRecId(strContentVO.getRecId());
+        strIllSeriousl.setBehospitalCode(strContentVO.getBehospitalCode());
+        strIllSeriousl.setHospitalId(strContentVO.getHospitalId());
+        strIllSeriousl.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strIllSeriousl)) {
+            strIllSeriousl.setGmtCreate(new Date());//记录创建时间
+            this.save(strIllSeriousl);
+        } else {
+            strIllSeriousl.setGmtModified(new Date());//记录修改时间
+            this.update(strIllSeriousl, new QueryWrapper<StrIllSeriousl>()
+                    .eq("rec_id", strIllSeriousl.getRecId())
+                    .eq("hospital_id", strIllSeriousl.getHospitalId())
+                    .eq("behospital_code", strIllSeriousl.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrIllSeriousl strIllSeriousl=new StrIllSeriousl();
         try {
@@ -99,7 +130,7 @@ public class BStrIllSeriouslFacade extends StrIllSeriouslServiceImpl {
     }
 
     /**
-     * @Description:病通知单-结构化-独立入口
+     * @Description:病通知单-结构化-独立入口
      * @Author:liuqq
      * @time: ${DATE} ${TIME}
      **/
@@ -122,7 +153,7 @@ public class BStrIllSeriouslFacade extends StrIllSeriouslServiceImpl {
 
                 if(logSwitch){
                     strIllSeriouslList.forEach(s->{
-                        aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-病通知单-正常", s.getRecId(), JSON.toJSONString(s), "", "");
+                        aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-病通知单-正常", s.getRecId(), JSON.toJSONString(s), "", "");
                     });
                 }
                 return RespDTO.onSuc("操作正常!");
@@ -133,7 +164,7 @@ public class BStrIllSeriouslFacade extends StrIllSeriouslServiceImpl {
             log.error(e.getMessage(),e);
             if(list!=null && list.size()>0) {
                 list.forEach(s->{
-                    aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-病通知单-异常", s.getRecId(), JSON.toJSONString(list), "", e.getMessage());
+                    aMedAbnormalInfoFacade.saveAbnormalInfo("结构化-病通知单-异常", s.getRecId(), JSON.toJSONString(list), "", e.getMessage());
                 });
             }
             return RespDTO.onError("数据处理异常,详情查看日志表");

+ 31 - 0
src/main/java/com/diagbot/facade/str/BStrInformedConsentFacade.java

@@ -6,12 +6,14 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrInformedConsent;
+import com.diagbot.entity.StrInformedConsent;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
 import com.diagbot.facade.data.ColumnFacade;
 import com.diagbot.service.impl.StrInformedConsentServiceImpl;
 import com.diagbot.util.EntityUtil;
 import com.diagbot.util.MapUtil;
+import com.diagbot.vo.str.StrContentVO;
 import com.diagbot.vo.str.StrInformedConsentVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
@@ -49,6 +51,35 @@ public class BStrInformedConsentFacade extends StrInformedConsentServiceImpl {
         }
     }
 
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrInformedConsent strInformedConsent=new StrInformedConsent();
+        strInformedConsent.setRecId(strContentVO.getRecId());
+        strInformedConsent.setBehospitalCode(strContentVO.getBehospitalCode());
+        strInformedConsent.setHospitalId(strContentVO.getHospitalId());
+        //strInformedConsent.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strInformedConsent)) {
+            strInformedConsent.setGmtCreate(new Date());//记录创建时间
+            this.save(strInformedConsent);
+        } else {
+            strInformedConsent.setGmtModified(new Date());//记录修改时间
+            this.update(strInformedConsent, new QueryWrapper<StrInformedConsent>()
+                    .eq("rec_id", strInformedConsent.getRecId())
+                    .eq("hospital_id", strInformedConsent.getHospitalId())
+                    .eq("behospital_code", strInformedConsent.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrInformedConsent strInformedConsent=new StrInformedConsent();
         try {

+ 31 - 1
src/main/java/com/diagbot/facade/str/BStrLeaveHospitalFacade.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrLeaveHospital;
+import com.diagbot.entity.StrLeaveHospital;
 import com.diagbot.enums.CacheKeyEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
@@ -16,6 +17,7 @@ import com.diagbot.util.EntityUtil;
 import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.data.AStrLeaveHospitalVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.diagbot.vo.str.StrLeaveHospitalVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
@@ -56,7 +58,35 @@ public class BStrLeaveHospitalFacade extends StrLeaveHospitalServiceImpl {
         }
     }
 
-    //危急值记录
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrLeaveHospital strLeaveHospital=new StrLeaveHospital();
+        strLeaveHospital.setRecId(strContentVO.getRecId());
+        strLeaveHospital.setBehospitalCode(strContentVO.getBehospitalCode());
+        strLeaveHospital.setHospitalId(strContentVO.getHospitalId());
+        strLeaveHospital.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strLeaveHospital)) {
+            strLeaveHospital.setGmtCreate(new Date());//记录创建时间
+            this.save(strLeaveHospital);
+        } else {
+            strLeaveHospital.setGmtModified(new Date());//记录修改时间
+            this.update(strLeaveHospital, new QueryWrapper<StrLeaveHospital>()
+                    .eq("rec_id", strLeaveHospital.getRecId())
+                    .eq("hospital_id", strLeaveHospital.getHospitalId())
+                    .eq("behospital_code", strLeaveHospital.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrLeaveHospital strLeaveHospital=new StrLeaveHospital();
         try {

+ 31 - 1
src/main/java/com/diagbot/facade/str/BStrOperativeFirstRecordFacade.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrOperativeFirstRecord;
+import com.diagbot.entity.StrOperativeFirstRecord;
 import com.diagbot.enums.CacheKeyEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
@@ -16,6 +17,7 @@ import com.diagbot.util.EntityUtil;
 import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.data.AStrOperativeFirstRecordVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.diagbot.vo.str.StrOperativeFirstRecordVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
@@ -55,7 +57,35 @@ public class BStrOperativeFirstRecordFacade extends StrOperativeFirstRecordServi
         }
     }
 
-    //术后首程
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrOperativeFirstRecord strOperativeFirstRecord=new StrOperativeFirstRecord();
+        strOperativeFirstRecord.setRecId(strContentVO.getRecId());
+        strOperativeFirstRecord.setBehospitalCode(strContentVO.getBehospitalCode());
+        strOperativeFirstRecord.setHospitalId(strContentVO.getHospitalId());
+        strOperativeFirstRecord.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strOperativeFirstRecord)) {
+            strOperativeFirstRecord.setGmtCreate(new Date());//记录创建时间
+            this.save(strOperativeFirstRecord);
+        } else {
+            strOperativeFirstRecord.setGmtModified(new Date());//记录修改时间
+            this.update(strOperativeFirstRecord, new QueryWrapper<StrOperativeFirstRecord>()
+                    .eq("rec_id", strOperativeFirstRecord.getRecId())
+                    .eq("hospital_id", strOperativeFirstRecord.getHospitalId())
+                    .eq("behospital_code", strOperativeFirstRecord.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrOperativeFirstRecord strOperativeFirstRecord=new StrOperativeFirstRecord();
         try {

+ 31 - 1
src/main/java/com/diagbot/facade/str/BStrOperativeNoteFacade.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrOperativeNote;
+import com.diagbot.entity.StrOperativeNote;
 import com.diagbot.enums.CacheKeyEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
@@ -16,6 +17,7 @@ import com.diagbot.util.EntityUtil;
 import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.data.AStrOperativeNoteVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.diagbot.vo.str.StrOperativeNoteVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
@@ -56,7 +58,35 @@ public class BStrOperativeNoteFacade extends StrOperativeNoteServiceImpl {
         }
     }
 
-    //手术记录
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrOperativeNote strOperativeNote=new StrOperativeNote();
+        strOperativeNote.setRecId(strContentVO.getRecId());
+        strOperativeNote.setBehospitalCode(strContentVO.getBehospitalCode());
+        strOperativeNote.setHospitalId(strContentVO.getHospitalId());
+        strOperativeNote.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strOperativeNote)) {
+            strOperativeNote.setGmtCreate(new Date());//记录创建时间
+            this.save(strOperativeNote);
+        } else {
+            strOperativeNote.setGmtModified(new Date());//记录修改时间
+            this.update(strOperativeNote, new QueryWrapper<StrOperativeNote>()
+                    .eq("rec_id", strOperativeNote.getRecId())
+                    .eq("hospital_id", strOperativeNote.getHospitalId())
+                    .eq("behospital_code", strOperativeNote.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrOperativeNote strOperativeNote=new StrOperativeNote();
         try {

+ 31 - 0
src/main/java/com/diagbot/facade/str/BStrPeriodConclusionFacade.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrPeriodConclusion;
+import com.diagbot.entity.StrPeriodConclusion;
 import com.diagbot.enums.CacheKeyEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
@@ -16,6 +17,7 @@ import com.diagbot.util.EntityUtil;
 import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.data.AStrPeriodConclusionVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.diagbot.vo.str.StrPeriodConclusionVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
@@ -56,6 +58,35 @@ public class BStrPeriodConclusionFacade extends StrPeriodConclusionServiceImpl {
         }
     }
 
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrPeriodConclusion strPeriodConclusion=new StrPeriodConclusion();
+        strPeriodConclusion.setRecId(strContentVO.getRecId());
+        strPeriodConclusion.setBehospitalCode(strContentVO.getBehospitalCode());
+        strPeriodConclusion.setHospitalId(strContentVO.getHospitalId());
+        strPeriodConclusion.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strPeriodConclusion)) {
+            strPeriodConclusion.setGmtCreate(new Date());//记录创建时间
+            this.save(strPeriodConclusion);
+        } else {
+            strPeriodConclusion.setGmtModified(new Date());//记录修改时间
+            this.update(strPeriodConclusion, new QueryWrapper<StrPeriodConclusion>()
+                    .eq("rec_id", strPeriodConclusion.getRecId())
+                    .eq("hospital_id", strPeriodConclusion.getHospitalId())
+                    .eq("behospital_code", strPeriodConclusion.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrPeriodConclusion strPeriodConclusion=new StrPeriodConclusion();
         try {

+ 31 - 1
src/main/java/com/diagbot/facade/str/BStrPreoperativeDiscussionFacade.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrPreoperativeDiscussion;
+import com.diagbot.entity.StrPreoperativeDiscussion;
 import com.diagbot.enums.CacheKeyEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
@@ -16,6 +17,7 @@ import com.diagbot.util.EntityUtil;
 import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.data.AStrPreoperativeDiscussionVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.diagbot.vo.str.StrPreoperativeDiscussionVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
@@ -56,7 +58,35 @@ public class BStrPreoperativeDiscussionFacade extends StrPreoperativeDiscussionS
         }
     }
 
-    //入院记录
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrPreoperativeDiscussion strPreoperativeDiscussion=new StrPreoperativeDiscussion();
+        strPreoperativeDiscussion.setRecId(strContentVO.getRecId());
+        strPreoperativeDiscussion.setBehospitalCode(strContentVO.getBehospitalCode());
+        strPreoperativeDiscussion.setHospitalId(strContentVO.getHospitalId());
+        strPreoperativeDiscussion.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strPreoperativeDiscussion)) {
+            strPreoperativeDiscussion.setGmtCreate(new Date());//记录创建时间
+            this.save(strPreoperativeDiscussion);
+        } else {
+            strPreoperativeDiscussion.setGmtModified(new Date());//记录修改时间
+            this.update(strPreoperativeDiscussion, new QueryWrapper<StrPreoperativeDiscussion>()
+                    .eq("rec_id", strPreoperativeDiscussion.getRecId())
+                    .eq("hospital_id", strPreoperativeDiscussion.getHospitalId())
+                    .eq("behospital_code", strPreoperativeDiscussion.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrPreoperativeDiscussion strPreoperativeDiscussion=new StrPreoperativeDiscussion();
         try {

+ 31 - 0
src/main/java/com/diagbot/facade/str/BStrRescueNoteFacade.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrRescueNote;
+import com.diagbot.entity.StrRescueNote;
 import com.diagbot.enums.CacheKeyEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
@@ -16,6 +17,7 @@ import com.diagbot.util.EntityUtil;
 import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.data.AStrRescueNoteVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.diagbot.vo.str.StrRescueNoteVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
@@ -56,6 +58,35 @@ public class BStrRescueNoteFacade extends StrRescueNoteServiceImpl {
         }
     }
 
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrRescueNote strRescueNote=new StrRescueNote();
+        strRescueNote.setRecId(strContentVO.getRecId());
+        strRescueNote.setBehospitalCode(strContentVO.getBehospitalCode());
+        strRescueNote.setHospitalId(strContentVO.getHospitalId());
+        strRescueNote.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strRescueNote)) {
+            strRescueNote.setGmtCreate(new Date());//记录创建时间
+            this.save(strRescueNote);
+        } else {
+            strRescueNote.setGmtModified(new Date());//记录修改时间
+            this.update(strRescueNote, new QueryWrapper<StrRescueNote>()
+                    .eq("rec_id", strRescueNote.getRecId())
+                    .eq("hospital_id", strRescueNote.getHospitalId())
+                    .eq("behospital_code", strRescueNote.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrRescueNote strRescueNote=new StrRescueNote();
         try {

+ 31 - 0
src/main/java/com/diagbot/facade/str/BStrTalkInformFacade.java

@@ -6,12 +6,14 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrTalkInform;
+import com.diagbot.entity.StrTalkInform;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
 import com.diagbot.facade.data.ColumnFacade;
 import com.diagbot.service.impl.StrTalkInformServiceImpl;
 import com.diagbot.util.EntityUtil;
 import com.diagbot.util.MapUtil;
+import com.diagbot.vo.str.StrContentVO;
 import com.diagbot.vo.str.StrTalkInformVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
@@ -49,6 +51,35 @@ public class BStrTalkInformFacade extends StrTalkInformServiceImpl {
         }
     }
 
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrTalkInform strTalkInform=new StrTalkInform();
+        strTalkInform.setRecId(strContentVO.getRecId());
+        strTalkInform.setBehospitalCode(strContentVO.getBehospitalCode());
+        strTalkInform.setHospitalId(strContentVO.getHospitalId());
+        //strTalkInform.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strTalkInform)) {
+            strTalkInform.setGmtCreate(new Date());//记录创建时间
+            this.save(strTalkInform);
+        } else {
+            strTalkInform.setGmtModified(new Date());//记录修改时间
+            this.update(strTalkInform, new QueryWrapper<StrTalkInform>()
+                    .eq("rec_id", strTalkInform.getRecId())
+                    .eq("hospital_id", strTalkInform.getHospitalId())
+                    .eq("behospital_code", strTalkInform.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrTalkInform strTalkInform=new StrTalkInform();
         try {

+ 31 - 0
src/main/java/com/diagbot/facade/str/BStrTransferInNoteFacade.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrTransferInNote;
+import com.diagbot.entity.StrTransferInNote;
 import com.diagbot.enums.CacheKeyEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
@@ -16,6 +17,7 @@ import com.diagbot.util.EntityUtil;
 import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.data.AStrTransferInNoteVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.diagbot.vo.str.StrTransferInNoteVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
@@ -56,6 +58,35 @@ public class BStrTransferInNoteFacade extends StrTransferInNoteServiceImpl {
         }
     }
 
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrTransferInNote strTransferInNote=new StrTransferInNote();
+        strTransferInNote.setRecId(strContentVO.getRecId());
+        strTransferInNote.setBehospitalCode(strContentVO.getBehospitalCode());
+        strTransferInNote.setHospitalId(strContentVO.getHospitalId());
+        strTransferInNote.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strTransferInNote)) {
+            strTransferInNote.setGmtCreate(new Date());//记录创建时间
+            this.save(strTransferInNote);
+        } else {
+            strTransferInNote.setGmtModified(new Date());//记录修改时间
+            this.update(strTransferInNote, new QueryWrapper<StrTransferInNote>()
+                    .eq("rec_id", strTransferInNote.getRecId())
+                    .eq("hospital_id", strTransferInNote.getHospitalId())
+                    .eq("behospital_code", strTransferInNote.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrTransferInNote strTransferInNote=new StrTransferInNote();
         try {

+ 31 - 0
src/main/java/com/diagbot/facade/str/BStrTransferOutNoteFacade.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrTransferOutNote;
+import com.diagbot.entity.StrTransferOutNote;
 import com.diagbot.enums.CacheKeyEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
@@ -16,6 +17,7 @@ import com.diagbot.util.EntityUtil;
 import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.data.AStrTransferOutNoteVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.diagbot.vo.str.StrTransferOutNoteVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
@@ -56,6 +58,35 @@ public class BStrTransferOutNoteFacade extends StrTransferOutNoteServiceImpl {
         }
     }
 
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrTransferOutNote strTransferOutNote=new StrTransferOutNote();
+        strTransferOutNote.setRecId(strContentVO.getRecId());
+        strTransferOutNote.setBehospitalCode(strContentVO.getBehospitalCode());
+        strTransferOutNote.setHospitalId(strContentVO.getHospitalId());
+        strTransferOutNote.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strTransferOutNote)) {
+            strTransferOutNote.setGmtCreate(new Date());//记录创建时间
+            this.save(strTransferOutNote);
+        } else {
+            strTransferOutNote.setGmtModified(new Date());//记录修改时间
+            this.update(strTransferOutNote, new QueryWrapper<StrTransferOutNote>()
+                    .eq("rec_id", strTransferOutNote.getRecId())
+                    .eq("hospital_id", strTransferOutNote.getHospitalId())
+                    .eq("behospital_code", strTransferOutNote.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrTransferOutNote strTransferOutNote=new StrTransferOutNote();
         try {

+ 31 - 1
src/main/java/com/diagbot/facade/str/BStrWardRecordFacade.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ColumnZhAndChDTO;
 import com.diagbot.entity.StrWardRecord;
+import com.diagbot.entity.StrWardRecord;
 import com.diagbot.enums.CacheKeyEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.data.AMedAbnormalInfoFacade;
@@ -16,6 +17,7 @@ import com.diagbot.util.EntityUtil;
 import com.diagbot.util.MapUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.vo.data.AStrWardRecordVO;
+import com.diagbot.vo.str.StrContentVO;
 import com.diagbot.vo.str.StrWardRecordVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.BeanUtils;
@@ -56,7 +58,35 @@ public class BStrWardRecordFacade extends StrWardRecordServiceImpl {
         }
     }
 
-    //查房记录
+    /**
+     * @Description:不解析时入库
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public void dealData(StrContentVO strContentVO){
+        StrWardRecord strWardRecord=new StrWardRecord();
+        strWardRecord.setRecId(strContentVO.getRecId());
+        strWardRecord.setBehospitalCode(strContentVO.getBehospitalCode());
+        strWardRecord.setHospitalId(strContentVO.getHospitalId());
+        strWardRecord.setWholeData(strContentVO.getWholeData());
+        //判断数据库中是否存在,不存在insert
+        if (isExist(strWardRecord)) {
+            strWardRecord.setGmtCreate(new Date());//记录创建时间
+            this.save(strWardRecord);
+        } else {
+            strWardRecord.setGmtModified(new Date());//记录修改时间
+            this.update(strWardRecord, new QueryWrapper<StrWardRecord>()
+                    .eq("rec_id", strWardRecord.getRecId())
+                    .eq("hospital_id", strWardRecord.getHospitalId())
+                    .eq("behospital_code", strWardRecord.getBehospitalCode()));
+        }
+    }
+
+    /**
+     * @Description:解析后存储数据
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
     public void dealData(String columnMap,Map<String, Object> entityMap,Long hospitalId){
         StrWardRecord strWardRecord=new StrWardRecord();
         try {

+ 59 - 0
src/main/java/com/diagbot/mapper/BehospitalInfoMapper.java

@@ -147,6 +147,56 @@ public interface BehospitalInfoMapper extends BaseMapper<BehospitalInfo> {
      */
     public List<HomePageNumDTO> homePageLevelStatistics(FilterOrderVO filterOrderVO);
 
+    /**
+     * 病历质控报表--扣分项
+     *
+     * @param caseScoreVO
+     * @return
+     */
+    public List<QualityControlDTO> getQualityCase(CaseScoreVO caseScoreVO);
+
+    /**
+     * 病历质控报表-扣分
+     *
+     * @param caseScoreVO
+     * @return
+     */
+    public List<QualityControlDTO> getQualitySorce(CaseScoreVO caseScoreVO);
+
+    /**
+     * 病历质控报表-扣分数据
+     *
+     * @param caseScoreVO
+     * @return
+     */
+    public List<CaseScoreDTO> getQualityCaseSorce(CaseScoreVO caseScoreVO);
+
+    /**
+     * 病历质控报表科室-扣分数据
+     *
+     * @param caseScoreVO
+     * @return
+     */
+    public List<CaseScoreDTO> getQualityCaseSorceByDept(CaseScoreVO caseScoreVO);
+
+
+    /**
+     * 病历质控报表
+     *
+     * @param behospitalPageVO
+     * @return
+     */
+    public IPage<QualityControlDTO> getQualityControl(BehospitalPageVO behospitalPageVO);
+
+    /**
+     * 病历质控报表-科室
+     *
+     * @param behospitalPageVO
+     * @return
+     */
+    public IPage<QualityControlDTO> getQualityControlExport(BehospitalPageVO behospitalPageVO);
+
+
     /**
      * 各科室缺陷占比(主任医生)
      *
@@ -400,6 +450,15 @@ public interface BehospitalInfoMapper extends BaseMapper<BehospitalInfo> {
      */
     public List<UnModifyMRDetailDTO> unModifyMRSByDept(FilterUnModifyMRVO filterUnModifyMRVO);
 
+    /**
+     * 病历质控报表-科室
+     *
+     * @param behospitalPageVO
+     * @return
+     */
+    public IPage<QualityControlDeptDTO> qualityControlByDept(BehospitalPageVO behospitalPageVO);
+
+
 
     /**
      * 病历稽查表

+ 2 - 0
src/main/java/com/diagbot/mapper/MedLisInfoMapper.java

@@ -33,4 +33,6 @@ public interface MedLisInfoMapper extends BaseMapper<MedLisInfo> {
     List<String> getInfo(@Param("hospitalId") Long hospitalId, @Param("behospitalCode") String behospitalCode);
 
     IPage<ExamineSonInfoDTO> getExamineSonInfo(@Param("examineSonInfoVO") ExamineSonInfoVO examineSonInfoVO, @Param("infos") Set<String> infos);
+
+    void updateBatchByKey(List<MedLisInfo> list);
 }

+ 1 - 3
src/main/java/com/diagbot/mapper/MedPacsInfoMapper.java

@@ -2,12 +2,9 @@ package com.diagbot.mapper;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.dto.CheckInfoDTO;
-import com.diagbot.dto.DoctorAdviceDTO;
-import com.diagbot.entity.DoctorAdvice;
 import com.diagbot.entity.MedPacsInfo;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.diagbot.vo.CheckInfoVO;
-import com.diagbot.vo.DoctorAdviceVO;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -31,4 +28,5 @@ public interface MedPacsInfoMapper extends BaseMapper<MedPacsInfo> {
 
     List<String> getInfo(@Param("hospitalId") Long hospitalId, @Param("behospitalCode") String behospitalCode);
 
+    void updateBatchByKey(List<MedPacsInfo> list);
 }

+ 61 - 0
src/main/java/com/diagbot/service/BehospitalInfoService.java

@@ -90,6 +90,14 @@ public interface BehospitalInfoService extends IService<BehospitalInfo> {
      */
     public List<NumDTO> leaveHosCountByDept(FilterVO filterVO);
 
+    /**
+     * 病历质控报表-科室
+     *
+     * @param behospitalPageVO
+     * @return
+     */
+    public IPage<QualityControlDeptDTO> qualityControlByDept(BehospitalPageVO behospitalPageVO);
+
     /**
      * 入院总人数统计-科室-首页
      *
@@ -147,6 +155,59 @@ public interface BehospitalInfoService extends IService<BehospitalInfo> {
      */
     public List<HomePageNumDTO> homePageLevelStatistics(FilterOrderVO filterOrderVO);
 
+
+
+    /**
+     * 病历质控报表-扣分项
+     *
+     * @param caseScoreVO
+     * @return
+     */
+    public List<QualityControlDTO> getQualityCase(CaseScoreVO caseScoreVO);
+
+    /**
+     * 病历质控报表-扣分
+     *
+     * @param caseScoreVO
+     * @return
+     */
+    public List<QualityControlDTO> getQualitySorce(CaseScoreVO caseScoreVO);
+
+    /**
+     * 病历质控报表
+     *
+     * @param caseScoreVO
+     * @return
+     */
+    public List<CaseScoreDTO> getQualityCaseSorce(CaseScoreVO caseScoreVO);
+
+    /**
+     * 病历质控报表-科室
+     *
+     * @param caseScoreVO
+     * @return
+     */
+    public List<CaseScoreDTO> getQualityCaseSorceByDept(CaseScoreVO caseScoreVO);
+
+
+
+
+    /**
+     * 病历质控报表
+     *
+     * @param behospitalPageVO
+     * @return
+     */
+    public IPage<QualityControlDTO> getQualityControl(BehospitalPageVO behospitalPageVO);
+
+    /**
+     * 病历质控报表-科室
+     *
+     * @param behospitalPageVO
+     * @return
+     */
+    public IPage<QualityControlDTO> getQualityControlExport(BehospitalPageVO behospitalPageVO);
+
     /**
      * 各科室缺陷占比(主任医生)
      *

+ 78 - 0
src/main/java/com/diagbot/service/impl/BehospitalInfoServiceImpl.java

@@ -213,6 +213,72 @@ public class BehospitalInfoServiceImpl extends ServiceImpl<BehospitalInfoMapper,
         return baseMapper.homePageLevelStatistics(filterOrderVO);
     }
 
+    /**
+     * 病历质控报表-扣分项
+     *
+     * @param caseScoreVO
+     * @return
+     */
+    @Override
+    public List<QualityControlDTO> getQualityCase(CaseScoreVO caseScoreVO) {
+        return baseMapper.getQualityCase(caseScoreVO);
+    }
+
+    /**
+     * 病历质控报表-扣分
+     *
+     * @param caseScoreVO
+     * @return
+     */
+    @Override
+    public List<QualityControlDTO> getQualitySorce(CaseScoreVO caseScoreVO) {
+        return baseMapper.getQualitySorce(caseScoreVO);
+    }
+    /**
+     * 病历质控报表-扣分数据
+     *
+     * @param caseScoreVO
+     * @return
+     */
+    @Override
+    public List<CaseScoreDTO> getQualityCaseSorce(CaseScoreVO caseScoreVO) {
+        return baseMapper.getQualityCaseSorce(caseScoreVO);
+    }
+
+    /**
+     * 病历质控报表科室-扣分数据
+     *
+     * @param caseScoreVO
+     * @return
+     */
+    @Override
+    public List<CaseScoreDTO> getQualityCaseSorceByDept(CaseScoreVO caseScoreVO) {
+        return baseMapper.getQualityCaseSorceByDept(caseScoreVO);
+    }
+
+    /**
+     * 病历质控报表
+     *
+     * @param behospitalPageVO
+     * @return
+     */
+    @Override
+    public IPage<QualityControlDTO> getQualityControl(BehospitalPageVO behospitalPageVO) {
+        return baseMapper.getQualityControl(behospitalPageVO);
+    }
+
+    /**
+     * 病历质控报表-科室
+     *
+     * @param behospitalPageVO
+     * @return
+     */
+    @Override
+    public IPage<QualityControlDTO> getQualityControlExport(BehospitalPageVO behospitalPageVO) {
+        return baseMapper.getQualityControlExport(behospitalPageVO);
+    }
+
+
     /**
      * 各科室缺陷占比(主任医生)
      *
@@ -540,6 +606,18 @@ public class BehospitalInfoServiceImpl extends ServiceImpl<BehospitalInfoMapper,
         return baseMapper.unModifyMRSByDept(filterUnModifyMRVO);
     }
 
+    /**
+     * 病历质控报表-科室
+     *
+     * @param behospitalPageVO
+     * @return
+     */
+    @Override
+    public IPage<QualityControlDeptDTO> qualityControlByDept(BehospitalPageVO behospitalPageVO) {
+        return baseMapper.qualityControlByDept(behospitalPageVO);
+    }
+
+
     /**
      * 病历稽查表
      *

+ 0 - 6
src/main/java/com/diagbot/service/impl/MedLisInfoServiceImpl.java

@@ -1,23 +1,17 @@
 package com.diagbot.service.impl;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.diagbot.dto.CheckInfoDTO;
-import com.diagbot.dto.DoctorAdviceDTO;
 import com.diagbot.dto.ExamineInfoDTO;
 import com.diagbot.dto.ExamineSonInfoDTO;
 import com.diagbot.entity.MedLisInfo;
 import com.diagbot.mapper.MedLisInfoMapper;
 import com.diagbot.service.MedLisInfoService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.diagbot.vo.CheckInfoVO;
-import com.diagbot.vo.DoctorAdviceVO;
 import com.diagbot.vo.ExamineInfoVO;
 import com.diagbot.vo.ExamineSonInfoVO;
 import org.apache.commons.lang3.ObjectUtils;
 import org.springframework.stereotype.Service;
 
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
 import java.util.*;
 
 /**

+ 0 - 1
src/main/java/com/diagbot/service/impl/MedPacsInfoServiceImpl.java

@@ -10,7 +10,6 @@ import com.diagbot.vo.CheckInfoVO;
 import org.apache.commons.lang3.ObjectUtils;
 import org.springframework.stereotype.Service;
 
-import javax.validation.constraints.NotBlank;
 import java.util.*;
 
 /**

+ 49 - 50
src/main/java/com/diagbot/util/ColumnCacheUtil.java

@@ -1,5 +1,6 @@
 package com.diagbot.util;
 
+import com.diagbot.facade.data.*;
 import com.diagbot.facade.str.*;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -7,90 +8,88 @@ import org.springframework.boot.ApplicationArguments;
 import org.springframework.boot.ApplicationRunner;
 import org.springframework.stereotype.Component;
 
-@Slf4j
-@Component
 /**
  * 启动时执行缓存,将字段名和注释存储到MAP类型的缓存中
  */
+@Slf4j
+@Component
 public class ColumnCacheUtil implements ApplicationRunner {
 
     @Override
     public void run(ApplicationArguments args) throws Exception {
         try {
-            aStrBloodResultFacade.getColumnZhAndCh();
-            aStrBloodTransfusionFacade.getColumnZhAndCh();
-            aStrAdmissionNoteFacade.getColumnZhAndCh();//入院记录
-            aStrFirstRecordFacade.getColumnZhAndCh();
-            aStrPeriodConclusionFacade.getColumnZhAndCh();
-            aStrTransferInNoteFacade.getColumnZhAndCh();
-            aStrTransferOutNoteFacade.getColumnZhAndCh();
-            aStrIllSeriouslFacade.getColumnZhAndCh();
-            aStrIllCriticallyFacade.getColumnZhAndCh();
-            aStrDifficultCaseFacade.getColumnZhAndCh();
-            aStrDeathNoteFacade.getColumnZhAndCh();
-            aStrDeathDiscussionFacade.getColumnZhAndCh();
-            aStrWardRecordFacade.getColumnZhAndCh();
-            aStrOperativeFirstRecord.getColumnZhAndCh();
-            aStrPreoperativeDiscussionFacade.getColumnZhAndCh();
-            aStrOperativeNoteFacade.getColumnZhAndCh();
-            aStrRescueNoteFacade.getColumnZhAndCh();
-            aStrCrisisNoteFacade.getColumnZhAndCh();
-            aStrLeaveHospitalFacade.getColumnZhAndCh();
-            aStrConsultationApplyFacade.getColumnZhAndCh();
-            aStrConsultationResultFacade.getColumnZhAndCh();
-            aStrConsultationNoteFacade.getColumnZhAndCh();
-            aStrConsultationRecordFacade.getColumnZhAndCh();
-
-
+            bStrBloodResultFacade.getColumnZhAndCh();
+            bStrBloodTransfusionFacade.getColumnZhAndCh();
+            bStrAdmissionNoteFacade.getColumnZhAndCh();//入院记录
+            bStrFirstRecordFacade.getColumnZhAndCh();
+            bStrPeriodConclusionFacade.getColumnZhAndCh();
+            bStrTransferInNoteFacade.getColumnZhAndCh();
+            bStrTransferOutNoteFacade.getColumnZhAndCh();
+            bStrIllSeriouslFacade.getColumnZhAndCh();
+            bStrIllCriticallyFacade.getColumnZhAndCh();
+            bStrDifficultCaseFacade.getColumnZhAndCh();
+            bStrDeathNoteFacade.getColumnZhAndCh();
+            bStrDeathDiscussionFacade.getColumnZhAndCh();
+            bStrWardRecordFacade.getColumnZhAndCh();
+            bStrOperativeFirstRecordFacade.getColumnZhAndCh();
+            bStrPreoperativeDiscussionFacade.getColumnZhAndCh();
+            bStrOperativeNoteFacade.getColumnZhAndCh();
+            bStrRescueNoteFacade.getColumnZhAndCh();
+            bStrCrisisNoteFacade.getColumnZhAndCh();
+            bStrLeaveHospitalFacade.getColumnZhAndCh();
+            bStrConsultationApplyFacade.getColumnZhAndCh();
+            bStrConsultationResultFacade.getColumnZhAndCh();
+            bStrConsultationNoteFacade.getColumnZhAndCh();
+            bStrConsultationRecordFacade.getColumnZhAndCh();
             log.info("列名和注释缓存初始化完成!");
         }catch (Exception e){
             log.error(e.getMessage(),e);
         }
     }
     @Autowired
-    private AStrAdmissionNoteFacade aStrAdmissionNoteFacade;
+    private BStrAdmissionNoteFacade bStrAdmissionNoteFacade;
     @Autowired
-    private AStrFirstRecordFacade aStrFirstRecordFacade;
+    private BStrFirstRecordFacade bStrFirstRecordFacade;
     @Autowired
-    private AStrPeriodConclusionFacade aStrPeriodConclusionFacade;
+    private BStrPeriodConclusionFacade bStrPeriodConclusionFacade;
     @Autowired
-    private AStrBloodResultFacade aStrBloodResultFacade;
+    private BStrBloodResultFacade bStrBloodResultFacade;
     @Autowired
-    private AStrBloodTransfusionFacade aStrBloodTransfusionFacade;
+    private BStrBloodTransfusionFacade bStrBloodTransfusionFacade;
     @Autowired
-    private AStrTransferInNoteFacade aStrTransferInNoteFacade;
+    private BStrTransferInNoteFacade bStrTransferInNoteFacade;
     @Autowired
-    private AStrTransferOutNoteFacade aStrTransferOutNoteFacade;
+    private BStrTransferOutNoteFacade bStrTransferOutNoteFacade;
     @Autowired
-    private AStrIllSeriouslFacade aStrIllSeriouslFacade;
+    private BStrIllSeriouslFacade bStrIllSeriouslFacade;
     @Autowired
-    private AStrIllCriticallyFacade aStrIllCriticallyFacade;
+    private BStrIllCriticallyFacade bStrIllCriticallyFacade;
     @Autowired
-    private AStrDifficultCaseFacade aStrDifficultCaseFacade;
+    private BStrDifficultCaseFacade bStrDifficultCaseFacade;
     @Autowired
-    private AStrDeathNoteFacade aStrDeathNoteFacade;
+    private BStrDeathNoteFacade bStrDeathNoteFacade;
     @Autowired
-    private AStrDeathDiscussionFacade aStrDeathDiscussionFacade;
+    private BStrDeathDiscussionFacade bStrDeathDiscussionFacade;
     @Autowired
-    private AStrWardRecordFacade aStrWardRecordFacade;
+    private BStrWardRecordFacade bStrWardRecordFacade;
     @Autowired
-    private AStrOperativeFirstRecord aStrOperativeFirstRecord;
+    private BStrOperativeFirstRecordFacade bStrOperativeFirstRecordFacade;
     @Autowired
-    private AStrPreoperativeDiscussionFacade aStrPreoperativeDiscussionFacade;
+    private BStrPreoperativeDiscussionFacade bStrPreoperativeDiscussionFacade;
     @Autowired
-    private AStrOperativeNoteFacade aStrOperativeNoteFacade;
+    private BStrOperativeNoteFacade bStrOperativeNoteFacade;
     @Autowired
-    private AStrRescueNoteFacade aStrRescueNoteFacade;
+    private BStrRescueNoteFacade bStrRescueNoteFacade;
     @Autowired
-    private AStrCrisisNoteFacade aStrCrisisNoteFacade;
+    private BStrCrisisNoteFacade bStrCrisisNoteFacade;
     @Autowired
-    private AStrLeaveHospitalFacade aStrLeaveHospitalFacade;
+    private BStrLeaveHospitalFacade bStrLeaveHospitalFacade;
     @Autowired
-    private AStrConsultationApplyFacade aStrConsultationApplyFacade;
+    private BStrConsultationApplyFacade bStrConsultationApplyFacade;
     @Autowired
-    private AStrConsultationResultFacade aStrConsultationResultFacade;
+    private BStrConsultationResultFacade bStrConsultationResultFacade;
     @Autowired
-    private AStrConsultationNoteFacade aStrConsultationNoteFacade;
+    private BStrConsultationNoteFacade bStrConsultationNoteFacade;
     @Autowired
-    private AStrConsultationRecordFacade aStrConsultationRecordFacade;
+    private BStrConsultationRecordFacade bStrConsultationRecordFacade;
 }

+ 4 - 0
src/main/java/com/diagbot/util/ExcelUtils.java

@@ -7,6 +7,7 @@ import cn.afterturn.easypoi.excel.entity.ExportParams;
 import cn.afterturn.easypoi.excel.entity.ImportParams;
 import cn.afterturn.easypoi.excel.entity.enmus.ExcelType;
 import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity;
+import cn.afterturn.easypoi.excel.export.styler.ExcelExportStylerDefaultImpl;
 import com.diagbot.exception.CommonErrorCode;
 import com.diagbot.exception.CommonException;
 import com.diagbot.service.impl.ExcelExportStylerUserImpl;
@@ -114,6 +115,9 @@ public class ExcelUtils {
 
     private static void userExport2(List<?> list, Class<?> pojoClass, String fileName, HttpServletResponse response,
                                     ExportParams exportParams, float height, Boolean havTitle) {
+        if(exportParams.getTitle().equals("病历质控报表")){
+            exportParams.setTitleHeight(Short.valueOf("20"));
+        };
         Workbook workbook = ExcelExportUtil.exportExcel(exportParams, pojoClass, list);
         if (workbook != null) {
             Sheet sheet = workbook.getSheetAt(0);

+ 112 - 0
src/main/java/com/diagbot/vo/CaseScoreVO.java

@@ -0,0 +1,112 @@
+package com.diagbot.vo;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 病历质控
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-13
+ */
+@Data
+public class CaseScoreVO  implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 医院ID
+     */
+    @ApiModelProperty(hidden = true)
+    private Long hospitalId;
+
+    /**
+     * 病人住院ID
+     */
+    private String behospitalCode;
+
+    /**
+     * 姓名
+     */
+    private String name;
+
+    /**
+     * 档案号
+     */
+    private String fileCode;
+
+    /**
+     * 入院时间开始时间
+     */
+    private Date behosDateStart;
+
+    /**
+     * 入院时间结束时间
+     */
+    private Date behosDateEnd;
+
+    /**
+     * 出院时间开始时间
+     */
+    private Date leaveHosDateStart;
+
+    /**
+     * 出院时间结束时间
+     */
+    private Date leaveHosDateEnd;
+
+    /**
+     * 等级
+     */
+    private String level;
+
+    /**
+     * 住院科室名称
+     */
+    private String deptName;
+
+    /**
+     * 主诊断
+     */
+    private String diagnose;
+
+    /**
+     * 医生姓名
+     */
+    private String doctorName;
+
+    @ApiModelProperty(hidden = true)
+    private Long userId;
+
+    /**
+     * 医生工号
+     */
+    private String doctorCode;
+
+    /**
+     * 统计维度 1-本月,2-本年
+     */
+    private Integer statisticsType;
+
+    /**
+     * 是否归档(0:未归档,1:已归档)
+     */
+//    @ApiModelProperty(hidden = true)
+    private String isPlacefile = "1";
+
+    private Integer checkStatus;
+    private Integer mrStatus;
+    private String chName;
+    private String mrName;
+    private Date chTimeStart;
+    private Date chTimeEnd;
+    private Date mrTimeStart;
+    private Date mrTimeEnd;
+
+}

+ 4 - 6
src/main/java/com/diagbot/vo/data/ADeleteFlagVO.java

@@ -1,10 +1,8 @@
 package com.diagbot.vo.data;
 
-import lombok.Getter;
-import lombok.Setter;
+import lombok.Data;
 
-@Getter
-@Setter
+@Data
 public class ADeleteFlagVO {
 
     private String modeType;
@@ -27,6 +25,6 @@ public class ADeleteFlagVO {
 
     private String recId;
 
-    private String reptNo;
+    private String repNo;
 
-}
+}

+ 71 - 0
src/main/java/com/diagbot/vo/data/AMedLisInfoVO.java

@@ -0,0 +1,71 @@
+package com.diagbot.vo.data;
+
+import lombok.Data;
+
+@Data
+public class AMedLisInfoVO {
+    /**
+     * 报告单号
+     */
+    private String repNo;
+
+    /**
+     * 医院ID
+     */
+    private String hospitalId;
+
+    /**
+     * 住院病人ID
+     */
+    private String behospitalCode;
+
+    /**
+     * 报告类型代码
+     */
+    private String repType;
+
+    /**
+     * 报告名称
+     */
+    private String repName;
+
+    /**
+     * 检查类型名称
+     */
+    private String repTypeName;
+
+    /**
+     * 标本名称
+     */
+    private String slideType;
+
+    /**
+     * 发布时间
+     */
+    private String repDate;
+
+    /**
+     * 报告检查时间
+     */
+    private String checkDate;
+
+    /**
+     * 申请医生
+     */
+    private String applyDoctor;
+
+    /**
+     * 开单科室代码
+     */
+    private String deptId;
+
+    /**
+     * 开单科室名称
+     */
+    private String deptName;
+
+    /**
+     * 报告单状态
+     */
+    private String registerFlag;
+}

+ 86 - 0
src/main/java/com/diagbot/vo/data/AMedPacsInfoVO.java

@@ -0,0 +1,86 @@
+package com.diagbot.vo.data;
+
+import lombok.Data;
+
+@Data
+public class AMedPacsInfoVO {
+    /**
+     * 报告单号
+     */
+    private String repNo;
+
+    /**
+     * 医院ID
+     */
+    private String hospitalId;
+
+    /**
+     * 住院病人ID
+     */
+    private String behospitalCode;
+
+    /**
+     * 报告名称
+     */
+    private String repName;
+
+    /**
+     * 报告类型代码
+     */
+    private String repType;
+
+    /**
+     * 检查类型名称
+     */
+    private String repTypeName;
+
+    /**
+     * 检查部位
+     */
+    private String part;
+
+    /**
+     * 发布时间
+     */
+    private String repDate;
+
+    /**
+     * 报告检查时间
+     */
+    private String checkDate;
+
+    /**
+     * 申请医生
+     */
+    private String applyDoctor;
+
+    /**
+     * 开单科室代码
+     */
+    private String deptId;
+
+    /**
+     * 开单科室名称
+     */
+    private String deptName;
+
+    /**
+     * 报告单状态
+     */
+    private String registerFlag;
+
+    /**
+     * 报告医生
+     */
+    private String reportDoctor;
+
+    /**
+     * 报告审核医生
+     */
+    private String checker;
+
+    /**
+     * 云胶片地址
+     */
+    private String yjpdz;
+}

+ 0 - 1
src/main/java/com/diagbot/vo/data/BasDoctorInfoVO.java

@@ -16,7 +16,6 @@ public class BasDoctorInfoVO {
      * 搜索参数
      */
     private String inputStr;
-    private String isPlacefile;
     private String deptName;
     @ApiModelProperty(hidden = true)
     private String deptId;

+ 36 - 0
src/main/java/com/diagbot/vo/str/StrContentVO.java

@@ -0,0 +1,36 @@
+package com.diagbot.vo.str;
+
+import lombok.Data;
+
+/**
+ * @Description:
+ * @Author:liuqq
+ * @time: ${DATE} ${TIME}
+ **/
+@Data
+public class StrContentVO {
+    /**
+     * 记录编号
+     */
+    private String recId;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 病历号
+     */
+    private String behospitalCode;
+    /**
+     * 结构化数据
+     */
+    private String wholeData;
+
+    /**
+     * 模板类型ID
+     */
+    private String modelId;
+
+}

+ 3 - 2
src/main/java/com/diagbot/vo/str/StrInformedConsentVO.java

@@ -3,7 +3,8 @@ package com.diagbot.vo.str;
 import lombok.Data;
 
 @Data
-public class StrInformedConsentVO {
+public class StrInformedConsentVO  {
+
     /**
      * 病历ID
      */
@@ -33,4 +34,4 @@ public class StrInformedConsentVO {
      * 文书类别
      */
     private String recType;
-}
+}

+ 2 - 1
src/main/java/com/diagbot/vo/str/StrTalkInformVO.java

@@ -4,6 +4,7 @@ import lombok.Data;
 
 @Data
 public class StrTalkInformVO {
+
     /**
      * 病历ID
      */
@@ -33,4 +34,4 @@ public class StrTalkInformVO {
      * 文书类别
      */
     private String recType;
-}
+}

+ 0 - 255
src/main/java/com/diagbot/web/ADataStrController.java

@@ -1,255 +0,0 @@
-/*
-package com.diagbot.web;
-
-import com.diagbot.annotation.SysLogger;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.facade.str.*;
-import com.diagbot.vo.str.*;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import java.util.List;
-
-@RestController
-@RequestMapping("/qc/data_str")
-@Api(value = "对接接口API-结构化", tags = { "对接接口API-结构化" })
-public class ADataStrController {
-
-    @Autowired
-    private AStrAdmissionNoteFacade aStrAdmissionNoteFacade;
-
-    @Autowired
-    private AStrBloodResultFacade aStrBloodResultFacade;
-
-    @Autowired
-    private AStrBloodTransfusionFacade aStrBloodTransfusionFacade;
-
-    @Autowired
-    private AStrConsultationApplyFacade aStrConsultationApplyFacade;
-
-    @Autowired
-    private AStrCrisisNoteFacade aStrCrisisNoteFacade;
-
-    @Autowired
-    private AStrConsultationRecordFacade aStrConsultationRecordFacade;
-
-    @Autowired
-    private AStrConsultationResultFacade aStrConsultationResultFacade;
-
-    @Autowired
-    private AStrConsultationNoteFacade aStrConsultationNoteFacade;
-
-    @Autowired
-    private AStrFirstRecordFacade aStrFirstRecordFacade;
-
-    @Autowired
-    private AStrDifficultCaseFacade aStrDifficultCaseFacade;
-
-    @Autowired
-    private AStrDeathDiscussionFacade aStrDeathDiscussionFacade;
-
-    @Autowired
-    private AStrDeathNoteFacade aStrDeathNoteFacade;
-
-    @Autowired
-    private AStrOperativeFirstRecord aStrOperativeFirstRecordFacade;
-
-    @Autowired
-    private AStrLeaveHospitalFacade aStrLeaveHospitalFacade;
-
-    @Autowired
-    private AStrIllCriticallyFacade aStrIllCriticallyFacade;
-
-    @Autowired
-    private AStrIllSeriouslFacade aStrIllSeriouslFacade;
-
-
-    @Autowired
-    private AStrPreoperativeDiscussionFacade aStrPreoperativeDiscussionFacade;
-
-    @Autowired
-    private AStrPeriodConclusionFacade aStrPeriodConclusionFacade;
-
-    @Autowired
-    private AStrRescueNoteFacade aStrRescueNoteFacade;
-
-    @Autowired
-    private AStrTransferInNoteFacade aStrTransferInNoteFacade;
-
-    @Autowired
-    private AStrTransferOutNoteFacade aStrTransferOutNoteFacade;
-
-    @Autowired
-    private AStrWardRecordFacade aStrWardRecordFacade;
-
-    @Autowired
-    private AStrOperativeNoteFacade aStrOperativeNoteFacade;
-
-    @ApiOperation(value = "入院记录")
-    @PostMapping("/sendAdmissionNote")
-    @SysLogger("sendAdmissionNote")
-    public RespDTO sendAdmissionNote(@RequestBody List<StrAdmissionNoteVO> list){
-        return aStrAdmissionNoteFacade.execDealData(list);
-    }
-
-    @ApiOperation(value = "输血后效果评价")
-    @PostMapping("/sendBloodResult")
-    @SysLogger("sendBloodResult")
-    public RespDTO sendBloodResult(@RequestBody List<StrBloodResultVO> list){
-        return aStrBloodResultFacade.execDealData(list);
-    }
-
-    @ApiOperation(value = "输血/血制品病程记录")
-    @PostMapping("/sendBloodTransfusion")
-    @SysLogger("sendBloodTransfusion")
-    public RespDTO sendBloodTransfusion(@RequestBody List<StrBloodTransfusionVO> list){
-        return aStrBloodTransfusionFacade.execDealData(list);
-    }
-
-    @ApiOperation(value = "会诊申请单")
-    @PostMapping("/sendConsultationApply")
-    @SysLogger("sendConsultationApply")
-    public RespDTO sendConsultationApply(@RequestBody List<StrConsultationApplyVO> list){
-        return aStrConsultationApplyFacade.execDealData(list);
-    }
-
-    @ApiOperation(value = "会诊单(申请和结果)")
-    @PostMapping("/sendConsultationNote")
-    @SysLogger("sendConsultationNote")
-    public RespDTO sendConsultationNote(@RequestBody List<StrConsultationNoteVO> list){
-        return aStrConsultationNoteFacade.execDealData(list);
-    }
-
-    @ApiOperation(value = "会诊记录")
-    @PostMapping("/sendConsultationRecord")
-    @SysLogger("sendConsultationRecord")
-    public RespDTO sendConsultationRecord(@RequestBody List<StrConsultationRecordVO> list){
-        return aStrConsultationRecordFacade.execDealData(list);
-    }
-
-    @ApiOperation(value = "会诊结果单")
-    @PostMapping("/sendConsultationResult")
-    @SysLogger("sendConsultationResult")
-    public RespDTO sendConsultationResult(@RequestBody List<StrConsultationResultVO> list){
-        return aStrConsultationResultFacade.execDealData(list);
-    }
-
-    @ApiOperation(value = "危急值记录")
-    @PostMapping("/sendCrisisNote")
-    @SysLogger("sendCrisisNote")
-    public RespDTO sendCrisisNote(@RequestBody List<StrCrisisNoteVO> list){
-        return aStrCrisisNoteFacade.execDealData(list);
-    }
-
-    @ApiOperation(value = "死亡病例讨论记录")
-    @PostMapping("/sendDeathDiscussion")
-    @SysLogger("sendDeathDiscussion")
-    public RespDTO sendDeathDiscussion(@RequestBody List<StrDeathDiscussionVO> list){
-        return aStrDeathDiscussionFacade.execDealData(list);
-    }
-
-    @ApiOperation(value = "死亡记录")
-    @PostMapping("/sendDeathNote")
-    @SysLogger("sendDeathNote")
-    public RespDTO sendDeathNote(@RequestBody List<StrDeathNoteVO> list){
-        return aStrDeathNoteFacade.execDealData(list);
-    }
-
-    @ApiOperation(value = "疑难病例讨论记录")
-    @PostMapping("/sendDifficultCase")
-    @SysLogger("sendDifficultCase")
-    public RespDTO sendDifficultCase(@RequestBody List<StrDifficultCaseVO> list){
-        return aStrDifficultCaseFacade.execDealData(list);
-    }
-
-    @ApiOperation(value = "首次病程录")
-    @PostMapping("/sendFirstRecord")
-    @SysLogger("sendFirstRecord")
-    public RespDTO sendFirstRecord(@RequestBody List<StrFirstRecordVO> list){
-        return aStrFirstRecordFacade.execDealData(list);
-    }
-
-    @ApiOperation(value = "病危通知单")
-    @PostMapping("/sendIllCritically")
-    @SysLogger("sendIllCritically")
-    public RespDTO sendIllCritically(@RequestBody List<StrIllCriticallyVO> list){
-        return aStrIllCriticallyFacade.execDealData(list);
-    }
-
-    @ApiOperation(value = "病重通知单")
-    @PostMapping("/sendIllSeriousl")
-    @SysLogger("sendIllSeriousl")
-    public RespDTO sendIllSeriousl(@RequestBody List<StrIllSeriouslVO> list){
-        return aStrIllSeriouslFacade.execDealData(list);
-    }
-
-    @ApiOperation(value = "出院小结")
-    @PostMapping("/sendLeaveHospital")
-    @SysLogger("sendLeaveHospital")
-    public RespDTO sendLeaveHospital(@RequestBody List<StrLeaveHospitalVO> list){
-        return aStrLeaveHospitalFacade.execDealData(list);
-    }
-
-    @ApiOperation(value = "术后首程")
-    @PostMapping("/sendOperativeFirstRecord")
-    @SysLogger("sendOperativeFirstRecord")
-    public RespDTO sendOperativeFirstRecord(@RequestBody List<StrOperativeFirstRecordVO> list){
-        return aStrOperativeFirstRecordFacade.execDealData(list);
-    }
-
-    @ApiOperation(value = "手术记录")
-    @PostMapping("/sendOperativeNote")
-    @SysLogger("sendOperativeNote")
-    public RespDTO sendOperativeNote(@RequestBody List<StrOperativeNoteVO> list){
-        return aStrOperativeNoteFacade.execDealData(list);
-    }
-
-    @ApiOperation(value = "查房记录")
-    @PostMapping("/sendWardRecord")
-    @SysLogger("sendWardRecord")
-    public RespDTO sendWardRecord(@RequestBody List<StrWardRecordVO> list){
-        return aStrWardRecordFacade.execDealData(list);
-    }
-
-    @ApiOperation(value = "转出记录")
-    @PostMapping("/sendTransferOutNote")
-    @SysLogger("sendTransferOutNote")
-    public RespDTO sendTransferOutNote(@RequestBody List<StrTransferOutNoteVO> list){
-        return aStrTransferOutNoteFacade.execDealData(list);
-    }
-
-    @ApiOperation(value = "转入记录")
-    @PostMapping("/sendTransferInNote")
-    @SysLogger("sendTransferInNote")
-    public RespDTO sendTransferInNote(@RequestBody List<StrTransferInNoteVO> list){
-        return aStrTransferInNoteFacade.execDealData(list);
-    }
-
-    @ApiOperation(value = "抢救记录")
-    @PostMapping("/sendRescueNote")
-    @SysLogger("sendRescueNote")
-    public RespDTO sendRescueNote(@RequestBody List<StrRescueNoteVO> list){
-        return aStrRescueNoteFacade.execDealData(list);
-    }
-
-    @ApiOperation(value = "阶段小结")
-    @PostMapping("/sendPeriodConclusion")
-    @SysLogger("sendPeriodConclusion")
-    public RespDTO sendPeriodConclusion(@RequestBody List<StrPeriodConclusionVO> list){
-        return aStrPeriodConclusionFacade.execDealData(list);
-    }
-
-    @ApiOperation(value = "术前讨论小结")
-    @PostMapping("/sendPreoperativeDiscussion")
-    @SysLogger("sendPreoperativeDiscussion")
-    public RespDTO sendPreoperativeDiscussion(@RequestBody List<StrPreoperativeDiscussionVO> list){
-        return aStrPreoperativeDiscussionFacade.execDealData(list);
-    }
-
-}
-*/

+ 0 - 3
src/main/java/com/diagbot/web/BasDoctorInfoController.java

@@ -2,12 +2,9 @@ package com.diagbot.web;
 
 
 import com.diagbot.annotation.SysLogger;
-import com.diagbot.dto.BasDeptInfoDTO;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.entity.BasDoctorInfo;
-import com.diagbot.entity.BasHospitalInfo;
 import com.diagbot.facade.BasDoctorInfoFacade;
-import com.diagbot.vo.BasDeptInfoVO;
 import com.diagbot.vo.data.BasDoctorInfoVO;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;

+ 0 - 0
src/main/java/com/diagbot/web/ConsoleByDeptController.java


Daži faili netika attēloti, jo izmaiņu fails ir pārāk liels