lantone hace 5 años
padre
commit
813bbb6a66
Se han modificado 44 ficheros con 2404 adiciones y 500 borrados
  1. 67 0
      src/main/java/com/diagbot/dto/data/ABasDeptInfoDTO.java
  2. 60 0
      src/main/java/com/diagbot/dto/data/ABasDoctorInfoDTO.java
  3. 6 4
      src/main/java/com/diagbot/dto/FBehospitalInfoDTO.java
  4. 131 0
      src/main/java/com/diagbot/dto/data/ADoctorAdviceDTO.java
  5. 2 2
      src/main/java/com/diagbot/dto/FHomeDiagnoseDTO.java
  6. 2 26
      src/main/java/com/diagbot/dto/FHomeOperationDTO.java
  7. 641 0
      src/main/java/com/diagbot/dto/data/AHomePageDTO.java
  8. 6 4
      src/main/java/com/diagbot/dto/FMedicalRecordContentDTO.java
  9. 6 4
      src/main/java/com/diagbot/dto/FMedicalRecordDTO.java
  10. 6 4
      src/main/java/com/diagbot/dto/FMedicalRecordTypeDTO.java
  11. 75 0
      src/main/java/com/diagbot/facade/ABasDeptInfoFacade.java
  12. 70 0
      src/main/java/com/diagbot/facade/ABasDoctorInfoFacade.java
  13. 115 0
      src/main/java/com/diagbot/facade/ABehospitalInfoFacade.java
  14. 77 0
      src/main/java/com/diagbot/facade/ADoctorAdviceFacade.java
  15. 77 0
      src/main/java/com/diagbot/facade/AHomeDiagnoseInfoFacade.java
  16. 77 0
      src/main/java/com/diagbot/facade/AHomeOperationInfoFacade.java
  17. 77 0
      src/main/java/com/diagbot/facade/AHomePageFacade.java
  18. 85 0
      src/main/java/com/diagbot/facade/AMedRecordTypeFacade.java
  19. 79 0
      src/main/java/com/diagbot/facade/AMedicalRecordContentFacade.java
  20. 175 0
      src/main/java/com/diagbot/facade/AMedicalRecordFacade.java
  21. 43 340
      src/main/java/com/diagbot/facade/DataFacade.java
  22. 3 4
      src/main/java/com/diagbot/task/BasDeptInfoTask.java
  23. 3 4
      src/main/java/com/diagbot/task/BasDoctorInfoTask.java
  24. 3 3
      src/main/java/com/diagbot/task/BehospitalInfoTask.java
  25. 3 4
      src/main/java/com/diagbot/task/DoctorAdviceTask.java
  26. 3 2
      src/main/java/com/diagbot/task/HomeDiagnoseInfoTask.java
  27. 3 6
      src/main/java/com/diagbot/task/HomeOperationInfoTask.java
  28. 3 2
      src/main/java/com/diagbot/task/HomePageTask.java
  29. 3 2
      src/main/java/com/diagbot/task/MedicalRecordContentTask.java
  30. 3 3
      src/main/java/com/diagbot/task/MedicalRecordTask.java
  31. 3 2
      src/main/java/com/diagbot/task/MedicalRecordTypeTask.java
  32. 24 56
      src/main/java/com/diagbot/util/TZDBConn.java
  33. 44 0
      src/main/java/com/diagbot/vo/data/ABasDeptInfoVO.java
  34. 34 0
      src/main/java/com/diagbot/vo/data/ABasDoctorInfoVO.java
  35. 134 0
      src/main/java/com/diagbot/vo/data/ABehospitalInfoVO.java
  36. 5 6
      src/main/java/com/diagbot/dto/FDoctorAdviceDTO.java
  37. 41 0
      src/main/java/com/diagbot/vo/data/AHomeDiagnoseVO.java
  38. 78 0
      src/main/java/com/diagbot/vo/data/AHomeOperationVO.java
  39. 5 10
      src/main/java/com/diagbot/dto/FHomePageDTO.java
  40. 2 2
      src/main/java/com/diagbot/vo/FMedicalRecordContentVO.java
  41. 2 2
      src/main/java/com/diagbot/vo/FMedicalRecordTypeVO.java
  42. 7 6
      src/main/java/com/diagbot/vo/FMedicalRecordVO.java
  43. 120 1
      src/main/java/com/diagbot/web/DataController.java
  44. 1 1
      src/main/resources/jdbc.properties

+ 67 - 0
src/main/java/com/diagbot/dto/data/ABasDeptInfoDTO.java

@@ -0,0 +1,67 @@
+package com.diagbot.dto.data;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.time.LocalDateTime;
+
+@Getter
+@Setter
+public class ABasDeptInfoDTO {
+    /**
+     * 科室编码(HIS导入)
+     */
+    private String deptId;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    private String parentDeptId;
+
+    /**
+     * 科室名称
+     */
+    private String deptName;
+
+    /**
+     * 科室类别
+     */
+    private String deptType;
+
+    /**
+     * 首字母拼音
+     */
+    private String spell;
+
+    /**
+     * 区域类别(门诊、工作站、住院等)
+     */
+    private String station;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private LocalDateTime gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private LocalDateTime gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+}

+ 60 - 0
src/main/java/com/diagbot/dto/data/ABasDoctorInfoDTO.java

@@ -0,0 +1,60 @@
+package com.diagbot.dto.data;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.time.LocalDateTime;
+
+@Getter
+@Setter
+public class ABasDoctorInfoDTO {
+    /**
+     * HIS导入的医生ID
+     */
+    private String doctorId;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 医院导入科室ID
+     */
+    private String deptId;
+
+    /**
+     * 姓名
+     */
+    private String name;
+
+    /**
+     * 职称
+     */
+    private String professor;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private LocalDateTime gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private LocalDateTime gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+}

+ 6 - 4
src/main/java/com/diagbot/dto/FBehospitalInfoDTO.java

@@ -1,11 +1,13 @@
-package com.diagbot.dto;
+package com.diagbot.dto.data;
 
 import java.util.Date;
 
-import lombok.Data;
+import lombok.Getter;
+import lombok.Setter;
 
-@Data
-public class FBehospitalInfoDTO{
+@Getter
+@Setter
+public class ABehospitalInfoDTO{
 
 	/**
      * 病人住院ID

+ 131 - 0
src/main/java/com/diagbot/dto/data/ADoctorAdviceDTO.java

@@ -0,0 +1,131 @@
+package com.diagbot.dto.data;
+
+import java.util.Date;
+
+import lombok.Getter;
+import lombok.Setter;
+
+@Getter
+@Setter
+public class ADoctorAdviceDTO {
+
+	/**
+     * 病人医嘱ID
+     */
+    private String doctorAdviceId;
+
+    /**
+     * 医院id
+     */
+    private Long hospitalId;
+
+    /**
+     * 病人ID
+     */
+    private String behospitalCode;
+
+    /**
+     * 医生开单判别
+     */
+    private String orderDoctorName;
+
+    /**
+     * 医嘱频率判别
+     */
+    private String frequency;
+
+    /**
+     * 父类医嘱ID
+     */
+    private String parentTypeId;
+
+    /**
+     * 医嘱类型判别(嘱托长嘱、长期医嘱等)
+     */
+    private String doctorAdviceType;
+
+    /**
+     * 一次使用数量
+     */
+    private String usageNum;
+
+    /**
+     * 一次用量单位
+     */
+    private String usageUnit;
+
+    /**
+     * 医嘱单次剂量
+     */
+    private String dose;
+
+    /**
+     * 单次剂量单位
+     */
+    private String doseUnit;
+
+    /**
+     * 给药方式
+     */
+    private String medModeType;
+
+    /**
+     * 医嘱频率
+     */
+    private String daFrequency;
+
+    /**
+     * 医嘱处理类型
+     */
+    private String daDealType;
+
+    /**
+     * 医嘱开始时间
+     */
+    private Date daStartDate;
+
+    /**
+     * 医嘱项目名称
+     */
+    private String daItemName;
+
+    /**
+     * 医嘱状态判别
+     */
+    private String daStatus;
+
+    /**
+     * 医嘱结束时间
+     */
+    private Date daStopDate;
+
+    /**
+     * 医嘱同组序号
+     */
+    private String daGroupNo;
+
+    /**
+     * 医嘱处方类型(检验、描述医嘱、膳食、西药、护理等)
+     */
+    private String daPrescriptionType;
+
+    /**
+     * 医嘱领药类型
+     */
+    private String daMedType;
+
+    /**
+     * 医生嘱托
+     */
+    private String doctorNotice;
+
+    /**
+     * 开单医生ID
+     */
+    private String doctorId;
+
+    /**
+     * 开单医生姓名
+     */
+    private String doctorName;
+}

+ 2 - 2
src/main/java/com/diagbot/dto/FHomeDiagnoseDTO.java

@@ -1,11 +1,11 @@
-package com.diagbot.dto;
+package com.diagbot.dto.data;
 
 import lombok.Getter;
 import lombok.Setter;
 
 @Setter
 @Getter
-public class FHomeDiagnoseDTO {
+public class AHomeDiagnoseDTO {
 	/**
      * 病案首页ID
      */

+ 2 - 26
src/main/java/com/diagbot/dto/FHomeOperationDTO.java

@@ -1,4 +1,4 @@
-package com.diagbot.dto;
+package com.diagbot.dto.data;
 
 import java.util.Date;
 
@@ -7,7 +7,7 @@ import lombok.Setter;
 
 @Setter
 @Getter
-public class FHomeOperationDTO {
+public class AHomeOperationDTO {
 	/**
      * 病案首页ID
      */
@@ -78,28 +78,4 @@ public class FHomeOperationDTO {
      */
     private String shamOperationName;
 
-    /**
-     * 是否删除,N:未删除,Y:删除
-     */
-    private String isDeleted;
-
-    /**
-     * 记录创建时间
-     */
-    private Date gmtCreate;
-
-    /**
-     * 记录修改时间,如果时间是1970年则表示纪录未修改
-     */
-    private Date gmtModified;
-
-    /**
-     * 创建人,0表示无创建人值
-     */
-    private String creator;
-
-    /**
-     * 修改人,如果为0则表示纪录未修改
-     */
-    private String modifier;
 }

+ 641 - 0
src/main/java/com/diagbot/dto/data/AHomePageDTO.java

@@ -0,0 +1,641 @@
+package com.diagbot.dto.data;
+
+import java.util.Date;
+
+import lombok.Getter;
+import lombok.Setter;
+
+@Getter
+@Setter
+public class AHomePageDTO {
+	/**
+     * 病案首页编号
+     */
+    private String homePageId;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 病人住院序号
+     */
+    private String behospitalCode;
+
+    /**
+     * 组织机构id
+     */
+    private String hospitalCode;
+
+    /**
+     * 医疗机构名称
+     */
+    private String hospitalName;
+
+    /**
+     * 医疗机构代码
+     */
+    private String orgCode;
+
+    /**
+     * 医疗付费方式
+     */
+    private String payType;
+
+    /**
+     * 健康卡号
+     */
+    private String healthCard;
+
+    /**
+     * 住院次数
+     */
+    private String behospitalNum;
+
+    /**
+     * 病案号
+     */
+    private String fileCode;
+
+    /**
+     * 姓名
+     */
+    private String name;
+
+    /**
+     * 性别
+     */
+    private String sex;
+
+    /**
+     * 出生日期
+     */
+    private Date birthday;
+
+    /**
+     * 年龄
+     */
+    private String age;
+
+    /**
+     * 年龄单位
+     */
+    private String ageUnit;
+
+    /**
+     * 国籍
+     */
+    private String nationality;
+
+    /**
+     * 新生儿出生月数
+     */
+    private String newbornMonth;
+
+    /**
+     * 新生儿出生天数
+     */
+    private String newbornDay;
+
+    /**
+     * 新生儿出生体重
+     */
+    private String newbornWeight;
+
+    /**
+     * 新生儿入院体重
+     */
+    private String newbornBehospitalWeight;
+
+    /**
+     * 出生地
+     */
+    private String bornAddress;
+
+    /**
+     * 籍贯
+     */
+    private String bornPlace;
+
+    /**
+     * 民族
+     */
+    private String nation;
+
+    /**
+     * 身份证号
+     */
+    private String identityCardNo;
+
+    /**
+     * 职业
+     */
+    private String jobType;
+
+    /**
+     * 婚姻
+     */
+    private String marriage;
+
+    /**
+     * 现住址
+     */
+    private String curAddress;
+
+    /**
+     * 现住址电话
+     */
+    private String curPhone;
+
+    /**
+     * 现住址邮编
+     */
+    private String curPostCode;
+
+    /**
+     * 户口地址
+     */
+    private String residenceAddress;
+
+    /**
+     * 户口地址邮编
+     */
+    private String residencePostCode;
+
+    /**
+     * 工作单位
+     */
+    private String workAddress;
+
+    /**
+     * 工作单位电话
+     */
+    private String workPhone;
+
+    /**
+     * 工作单位邮编
+     */
+    private String workPostCode;
+
+    /**
+     * 联系人姓名
+     */
+    private String contactName;
+
+    /**
+     * 联系人关系
+     */
+    private String contactRelation;
+
+    /**
+     * 联系人地址
+     */
+    private String contactAddress;
+
+    /**
+     * 联系人电话
+     */
+    private String contactPhone;
+
+    /**
+     * 入院途径
+     */
+    private String behospitalWay;
+
+    /**
+     * 入院时间
+     */
+    private Date behospitalDate;
+
+    /**
+     * 入院科别
+     */
+    private String behospitalDept;
+
+    /**
+     * 入院病房
+     */
+    private String behospitalWard;
+
+    /**
+     * 入院床位序号
+     */
+    private String behospitalBedId;
+
+    /**
+     * 入院床位号码
+     */
+    private String behospitalBedCode;
+
+    /**
+     * 转科科别
+     */
+    private String changeDept;
+
+    /**
+     * 出院时间
+     */
+    private Date leaveHospitalDate;
+
+    /**
+     * 出院科别
+     */
+    private String leaveHospitalDept;
+
+    /**
+     * 出院病房
+     */
+    private String leaveHospitalWard;
+
+    /**
+     * 出院床位序号
+     */
+    private String leaveHospitalBedId;
+
+    /**
+     * 出院床位号码
+     */
+    private String leaveHospitalBedCode;
+
+    /**
+     * 实际住院天数
+     */
+    private String behospitalDayNum;
+
+    /**
+     * 门急诊诊断
+     */
+    private String outpatientEmrDiagnose;
+
+    /**
+     * 门急诊诊断编码
+     */
+    private String outpatientEmrDiagnoseCode;
+
+    /**
+     * 损伤中毒因素
+     */
+    private String poisonFactor;
+
+    /**
+     * 损伤中毒因素编码
+     */
+    private String poisonFactorCode;
+
+    /**
+     * 病理诊断
+     */
+    private String pathologyDiagnose;
+
+    /**
+     * 病理诊断编码
+     */
+    private String pathologyDiagnoseCode;
+
+    /**
+     * 病理诊断编号
+     */
+    private String pathologyDiagnoseId;
+
+    /**
+     * 药物过敏
+     */
+    private String isMedAllergy;
+
+    /**
+     * 过敏药物
+     */
+    private String medAllergyName;
+
+    /**
+     * 死亡患者尸检
+     */
+    private String autopsy;
+
+    /**
+     * 血型
+     */
+    private String bloodType;
+
+    /**
+     * Rh
+     */
+    private String rh;
+
+    /**
+     * 科主任
+     */
+    private String deptDirector;
+
+    /**
+     * 主任医师
+     */
+    private String directorDoctor;
+
+    /**
+     * 主治医师
+     */
+    private String attendingDoctor;
+
+    /**
+     * 住院医师
+     */
+    private String behospitalDoctor;
+
+    /**
+     * 责任护士
+     */
+    private String responseNurse;
+
+    /**
+     * 进修医师
+     */
+    private String studyDoctor;
+
+    /**
+     * 实习医师
+     */
+    private String practiceDoctor;
+
+    /**
+     * 编码员
+     */
+    private String encodeMan;
+
+    /**
+     * 病案质量
+     */
+    private String homePageQuality;
+
+    /**
+     * 质控医师
+     */
+    private String qcDoctor;
+
+    /**
+     * 质控护士
+     */
+    private String qcNurse;
+
+    /**
+     * 质控日期
+     */
+    private Date qcDate;
+
+    /**
+     * 离院方式
+     */
+    private String leaveHospitalType;
+
+    /**
+     * 接收机构名称
+     */
+    private String acceptOrgCode;
+
+    /**
+     * 31天内再住院计划
+     */
+    private String againBehospitalPlan;
+
+    /**
+     * 再住院目的
+     */
+    private String againBehospitalGoal;
+
+    /**
+     * 颅脑损伤患者昏迷前天数
+     */
+    private String tbiBeforeDay;
+
+    /**
+     * 颅脑损伤患者昏迷前小时
+     */
+    private String tbiBeforeHour;
+
+    /**
+     * 颅脑损伤患者昏迷前分钟
+     */
+    private String tbiBeforeMinute;
+
+    /**
+     * 颅脑损伤患者昏迷后天数
+     */
+    private String tbiAfterDay;
+
+    /**
+     * 颅脑损伤患者昏迷后小时
+     */
+    private String tbiAfterHour;
+
+    /**
+     * 颅脑损伤患者昏迷后分钟
+     */
+    private String tbiAfterMinute;
+
+    /**
+     * 总费用
+     */
+    private String totalFee;
+
+    /**
+     * 自付金额
+     */
+    private String ownFee;
+
+    /**
+     * 一般医疗服务费
+     */
+    private String generalFee;
+
+    /**
+     * 一般治疗服务费
+     */
+    private String serviceFee;
+
+    /**
+     * 护理费
+     */
+    private String nurseFee;
+
+    /**
+     * 其他费用
+     */
+    private String otherFee;
+
+    /**
+     * 病理诊断费
+     */
+    private String pathologyFee;
+
+    /**
+     * 实验室诊断费
+     */
+    private String labFee;
+
+    /**
+     * 影像学诊断费
+     */
+    private String pacsFee;
+
+    /**
+     * 临床诊断项目费
+     */
+    private String clinicDiagnoseFee;
+
+    /**
+     * 非手术治疗项目费
+     */
+    private String notOperationFee;
+
+    /**
+     * 临床物理治疗费
+     */
+    private String clinicPhysicFee;
+
+    /**
+     * 手术治疗费
+     */
+    private String operationTreatFee;
+
+    /**
+     * 麻醉费
+     */
+    private String anaesthesiaFee;
+
+    /**
+     * 手术费
+     */
+    private String operationFee;
+
+    /**
+     * 康复类
+     */
+    private String healthTypeFee;
+
+    /**
+     * 中医治疗费
+     */
+    private String chnTreatFee;
+
+    /**
+     * 西药费
+     */
+    private String westernMedFee;
+
+    /**
+     * 抗菌药物费用
+     */
+    private String antibiosisFee;
+
+    /**
+     * 中成药费
+     */
+    private String chnMedFee;
+
+    /**
+     * 中草药费
+     */
+    private String chnHerbFee;
+
+    /**
+     * 血费
+     */
+    private String bloodFee;
+
+    /**
+     * 白蛋白类制品费
+     */
+    private String albumenFee;
+
+    /**
+     * 球蛋白类制品费
+     */
+    private String globulinFee;
+
+    /**
+     * 凝血因子类制品费
+     */
+    private String bloodFactorFee;
+
+    /**
+     * 细胞因子类制品费
+     */
+    private String cellFactorFee;
+
+    /**
+     * 检查用一次性医用材料费
+     */
+    private String checkMaterialFee;
+
+    /**
+     * 治疗用一次性医用材料费
+     */
+    private String treatMaterialFee;
+
+    /**
+     * 手术用一次性医用材料费
+     */
+    private String operationMaterialFee;
+
+    /**
+     * 其他类其他费
+     */
+    private String otherTypeFee;
+
+    /**
+     * 单病种管理
+     */
+    private String singleDiagManage;
+
+    /**
+     * 临床路径管理
+     */
+    private String clinicPathwayManage;
+
+    /**
+     * 门诊与住院
+     */
+    private String isOutpatientBehospital;
+
+    /**
+     * 入院与出院
+     */
+    private String isLeaveBehospital;
+
+    /**
+     * 术前与术后
+     */
+    private String isOperationBeforeAfter;
+
+    /**
+     * 临床与病理
+     */
+    private String isClinicPathology;
+
+    /**
+     * 放射与病理
+     */
+    private String isRadiatePathology;
+
+    /**
+     * 病人抢救次数
+     */
+    private String rescueNum;
+
+    /**
+     * 病人抢救成功次数
+     */
+    private String rescueSuccessNum;
+
+    /**
+     * 是否为自动出院
+     */
+    private String isAutoLeavehospital;
+
+    /**
+     * 转归情况
+     */
+    private String returnToType;
+
+}

+ 6 - 4
src/main/java/com/diagbot/dto/FMedicalRecordContentDTO.java

@@ -1,11 +1,13 @@
-package com.diagbot.dto;
+package com.diagbot.dto.data;
 
 import java.sql.Blob;
 
-import lombok.Data;
+import lombok.Getter;
+import lombok.Setter;
 
-@Data
-public class FMedicalRecordContentDTO {
+@Getter
+@Setter
+public class AMedicalRecordContentDTO {
 	/**
      * 病历ID
      */

+ 6 - 4
src/main/java/com/diagbot/dto/FMedicalRecordDTO.java

@@ -1,9 +1,11 @@
-package com.diagbot.dto;
+package com.diagbot.dto.data;
 
-import lombok.Data;
+import lombok.Getter;
+import lombok.Setter;
 
-@Data
-public class FMedicalRecordDTO {
+@Getter
+@Setter
+public class AMedicalRecordDTO {
 	private String recId;
 
     /**

+ 6 - 4
src/main/java/com/diagbot/dto/FMedicalRecordTypeDTO.java

@@ -1,9 +1,11 @@
-package com.diagbot.dto;
+package com.diagbot.dto.data;
 
-import lombok.Data;
+import lombok.Getter;
+import lombok.Setter;
 
-@Data
-public class FMedicalRecordTypeDTO {
+@Getter
+@Setter
+public class AMedicalRecordTypeDTO {
 	/**
      * 类别ID
      */

+ 75 - 0
src/main/java/com/diagbot/facade/ABasDeptInfoFacade.java

@@ -0,0 +1,75 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.dto.data.ABasDeptInfoDTO;
+import com.diagbot.entity.BasDeptInfo;
+import com.diagbot.service.impl.BasDeptInfoServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.TZDBConn;
+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.stereotype.Component;
+
+import java.util.List;
+
+@Component
+public class ABasDeptInfoFacade {
+    @Autowired
+    @Qualifier("basDeptInfoServiceImpl")
+    private BasDeptInfoServiceImpl basDeptInfoServiceImpl;
+
+    private TZDBConn tzDBConn = new TZDBConn();
+
+    /**
+     * 同步前一天科室的信息
+     */
+    public void executeDept() {
+        String sql="select * from hi_deptinfo where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
+        List<BasDeptInfo> basDeptInfoList = tzDBConn.getDeptInfo(sql);
+        execute(basDeptInfoList);
+    }
+
+    /**
+     * 同步历史数据
+     */
+    public void executeDeptPast(){
+        String sql="select * from hi_deptinfo where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
+        List<BasDeptInfo> basDeptInfoList = tzDBConn.getDeptInfo(sql);
+        execute(basDeptInfoList);
+    }
+
+    /**
+     * 通过接口同步数据
+     * @param list
+     * @return
+     */
+    public List<ABasDeptInfoDTO> executeDept(List<ABasDeptInfoVO> list) {
+        List<BasDeptInfo> basDeptInfoList=Lists.newArrayList();
+        List<ABasDeptInfoDTO> basDeptInfoDtoList=Lists.newArrayList();
+        if(list!=null && list.size()>0){
+            basDeptInfoList=BeanUtil.listCopyTo(list,BasDeptInfo.class);
+            basDeptInfoDtoList=BeanUtil.listCopyTo(list,ABasDeptInfoDTO.class);
+            execute(basDeptInfoList);
+        }
+        return basDeptInfoDtoList;
+    }
+
+    public void executeDeptPort(){
+
+    }
+
+    public void execute(List<BasDeptInfo> basDeptInfoList){
+        basDeptInfoList.stream().forEach(s -> {
+            QueryWrapper<BasDeptInfo> queryWrapper = new QueryWrapper<>();
+            queryWrapper.in("dept_id", s.getDeptId());
+            BasDeptInfo basDeptInfo = basDeptInfoServiceImpl.getOne(queryWrapper);
+            if (basDeptInfo != null) {
+                basDeptInfoServiceImpl.updateById(s);
+            } else {
+                basDeptInfoServiceImpl.save(s);
+            }
+        });
+    }
+}

+ 70 - 0
src/main/java/com/diagbot/facade/ABasDoctorInfoFacade.java

@@ -0,0 +1,70 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.dto.data.ABasDoctorInfoDTO;
+import com.diagbot.entity.BasDoctorInfo;
+import com.diagbot.service.impl.BasDoctorInfoServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.TZDBConn;
+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.stereotype.Component;
+
+import java.util.List;
+
+@Component
+public class ABasDoctorInfoFacade {
+    @Autowired
+    @Qualifier("basDoctorInfoServiceImpl")
+    private BasDoctorInfoServiceImpl basDoctorInfoServiceImpl;
+
+    private TZDBConn tzDBConn = new TZDBConn();
+
+    /**
+     * 同步历史数据
+     */
+    public void executeDoctorPast() {
+        String sql="select * from gi_userinfo";
+        List<BasDoctorInfo> basDeptInfoList = tzDBConn.getBasDoctorInfo(sql);
+        execute(basDeptInfoList);
+
+    }
+    /**
+     * 同步前一天医生信息
+     */
+    public void executeDoctor() {
+        String sql="select * from gi_userinfo";
+        List<BasDoctorInfo> basDeptInfoList = tzDBConn.getBasDoctorInfo(sql);
+        execute(basDeptInfoList);
+    }
+
+    public List<ABasDoctorInfoDTO> executeDoctor(List<ABasDoctorInfoVO> list) {
+        List<BasDoctorInfo> basDoctorInfoList=Lists.newArrayList();
+        List<ABasDoctorInfoDTO> basDoctorDtoList=Lists.newArrayList();
+        if(list!=null && list.size()>0){
+            basDoctorInfoList=BeanUtil.listCopyTo(list,BasDoctorInfo.class);
+            basDoctorDtoList=BeanUtil.listCopyTo(list,ABasDoctorInfoDTO.class);
+            execute(basDoctorInfoList);
+        }
+        return basDoctorDtoList;
+    }
+
+    public void executeDoctorPort(){
+
+    }
+
+    public void execute(List<BasDoctorInfo> basDoctorInfoList){
+        basDoctorInfoList.stream().forEach(s -> {
+            QueryWrapper<BasDoctorInfo> queryWrapper = new QueryWrapper<>();
+            queryWrapper.in("doctor_id", s.getDeptId());
+            BasDoctorInfo basDoctorInfo = basDoctorInfoServiceImpl.getOne(queryWrapper);
+            if (basDoctorInfo != null) {
+                basDoctorInfoServiceImpl.updateById(s);
+            } else {
+                basDoctorInfoServiceImpl.save(s);
+            }
+        });
+    }
+}

+ 115 - 0
src/main/java/com/diagbot/facade/ABehospitalInfoFacade.java

@@ -0,0 +1,115 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.dto.data.ABehospitalInfoDTO;
+import com.diagbot.entity.BehospitalInfo;
+import com.diagbot.entity.MedicalRecord;
+import com.diagbot.entity.QcType;
+import com.diagbot.service.impl.BehospitalInfoServiceImpl;
+import com.diagbot.service.impl.MedicalRecordServiceImpl;
+import com.diagbot.service.impl.QcTypeServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.TZDBConn;
+import com.diagbot.vo.data.ABehospitalInfoVO;
+import com.google.common.collect.Lists;
+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;
+
+@Component
+public class ABehospitalInfoFacade {
+    @Autowired
+    @Qualifier("behospitalInfoServiceImpl")
+    private BehospitalInfoServiceImpl behospitalInfoServiceImpl;
+
+    @Autowired
+    @Qualifier("qcTypeServiceImpl")
+    private QcTypeServiceImpl qcTypeServiceImpl;
+
+    @Autowired
+    @Qualifier("medicalRecordServiceImpl")
+    private MedicalRecordServiceImpl medicalRecordServiceImpl;
+
+    private TZDBConn tzDBConn = new TZDBConn();
+
+    /**
+     * 同步前一天的入院记录
+     */
+    public void executeBehospital() {
+        String sql="select * from br_inpatientinfo where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
+        List<BehospitalInfo> behospitalInfoList = tzDBConn.getBehospitalInfo(sql);
+        execute(behospitalInfoList);
+    }
+
+    /**
+     * 同步前一天的入院记录
+     */
+    public void executeBehospitalPast() {
+        String sql="select * from br_inpatientinfo where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
+        List<BehospitalInfo> behospitalInfoList = tzDBConn.getBehospitalInfo(sql);
+        execute(behospitalInfoList);
+    }
+
+    /**
+     * 通过接口更新病人住院记录信息
+     * @param list
+     * @return
+     */
+    public List<ABehospitalInfoDTO> executeBehospital(List<ABehospitalInfoVO> list) {
+        List<BehospitalInfo> behospitalInfoList=Lists.newArrayList();
+        List<ABehospitalInfoDTO> behospitalInfoDtoList=Lists.newArrayList();
+        if(list!=null && list.size()>0){
+            behospitalInfoList=BeanUtil.listCopyTo(list,BehospitalInfo.class);
+            behospitalInfoDtoList=BeanUtil.listCopyTo(list,ABehospitalInfoDTO.class);
+            execute(behospitalInfoList);
+        }
+        return behospitalInfoDtoList;
+    }
+
+    public void executeBehospitalPort(){
+
+    }
+
+    public void execute(List<BehospitalInfo> behospitalInfoList){
+        List<BehospitalInfo> add = Lists.newLinkedList();
+        List<BehospitalInfo> updateE = Lists.newLinkedList();
+        behospitalInfoList.stream().forEach(s -> {
+            QueryWrapper<MedicalRecord> wrapper = new QueryWrapper<>();
+            wrapper.eq("behospital_code", s.getBehospitalCode());
+            wrapper.eq("hospital_id", Long.valueOf("3"));
+            wrapper.eq("mode_id", Long.valueOf("1"));
+            MedicalRecord medicalRecord = medicalRecordServiceImpl.getOne(wrapper);
+            if(medicalRecord!=null){
+                QueryWrapper<QcType> qWrapper =new QueryWrapper<>();
+                qWrapper.eq("name",medicalRecord.getRecTitle());
+                QcType qcType=qcTypeServiceImpl.getOne(qWrapper);
+                if(qcType!=null){
+                    s.setQcTypeId(qcType.getId());
+                }else{
+                    s.setQcTypeId(Long.valueOf("0"));
+                }
+            }
+
+            QueryWrapper<BehospitalInfo> queryWrapper = new QueryWrapper<>();
+            queryWrapper.eq("behospital_code", s.getBehospitalCode());
+            queryWrapper.eq("hospital_id", tzDBConn.HOSPITAL_ID);
+            BehospitalInfo behospitalInfo = behospitalInfoServiceImpl.getOne(queryWrapper);
+            if (behospitalInfo != null) {
+                s.setGmtModified(new Date());
+                updateE.add(s);
+            } else {
+                s.setGmtCreate(new Date());
+                add.add(s);
+            }
+        });
+        if (add != null && add.size() != 0) {
+            behospitalInfoServiceImpl.saveBatch(add);
+        }
+        if (updateE != null && updateE.size() != 0) {
+            behospitalInfoServiceImpl.updateBatchById(updateE);
+        }
+    }
+}

+ 77 - 0
src/main/java/com/diagbot/facade/ADoctorAdviceFacade.java

@@ -0,0 +1,77 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.dto.data.ADoctorAdviceDTO;
+import com.diagbot.entity.DoctorAdvice;
+import com.diagbot.service.impl.DoctorAdviceServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.TZDBConn;
+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.stereotype.Component;
+
+import java.util.Date;
+import java.util.List;
+
+@Component
+public class ADoctorAdviceFacade {
+    @Autowired
+    @Qualifier("doctorAdviceServiceImpl")
+    private DoctorAdviceServiceImpl doctorAdviceServiceImpl;
+
+    private TZDBConn tzDBConn = new TZDBConn();
+
+    /**
+     * 同步前一天的入院病人医嘱信息
+     */
+    public void executeDoctorAdvice() {
+        String sql="select * from br_doctadvice where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
+        List<DoctorAdvice> doctorAdviceList = tzDBConn.getDoctorAdvice(sql);
+        execute(doctorAdviceList);
+    }
+
+    public void executeDoctorAdvicePast() {
+        String sql="select * from br_doctadvice where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
+        List<DoctorAdvice> doctorAdviceList = tzDBConn.getDoctorAdvice(sql);
+        execute(doctorAdviceList);
+    }
+
+    public void executeDoctorAdvicePort(){
+
+    }
+
+    /**
+     * 数据引擎-通过接口更新医生医嘱信息
+     * @param list
+     * @return
+     */
+    public List<ADoctorAdviceDTO> executeDoctorAdvice(List<ADoctorAdviceVO> list) {
+        List<DoctorAdvice> doctorAdviceList=Lists.newArrayList();
+        List<ADoctorAdviceDTO> doctorAdviceDtoList=Lists.newArrayList();
+        if(list!=null && list.size()>0){
+            doctorAdviceList=BeanUtil.listCopyTo(list,DoctorAdvice.class);
+            doctorAdviceDtoList=BeanUtil.listCopyTo(list,ADoctorAdviceDTO.class);
+            execute(doctorAdviceList);
+        }
+        return doctorAdviceDtoList;
+    }
+
+    public void execute(List<DoctorAdvice> doctorAdviceList){
+        if (doctorAdviceList != null && doctorAdviceList.size() > 0) {
+            doctorAdviceList.stream().forEach(s -> {
+                QueryWrapper<DoctorAdvice> queryWrapper = new QueryWrapper<>();
+                queryWrapper.eq("doctor_advice_id", s.getDoctorAdviceId());
+                DoctorAdvice doctorAdvice = doctorAdviceServiceImpl.getOne(queryWrapper);
+                if (doctorAdvice != null) {
+                    s.setGmtModified(new Date());
+                    doctorAdviceServiceImpl.save(s);
+                } else {
+                    s.setGmtCreate(new Date());
+                    doctorAdviceServiceImpl.updateById(s);
+                }
+            });
+        }
+    }
+}

+ 77 - 0
src/main/java/com/diagbot/facade/AHomeDiagnoseInfoFacade.java

@@ -0,0 +1,77 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.dto.data.AHomeDiagnoseDTO;
+import com.diagbot.entity.HomeDiagnoseInfo;
+import com.diagbot.service.impl.HomeDiagnoseInfoServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.TZDBConn;
+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.stereotype.Component;
+
+import java.util.Date;
+import java.util.List;
+
+@Component
+public class AHomeDiagnoseInfoFacade {
+    @Autowired
+    @Qualifier("homeDiagnoseInfoServiceImpl")
+    private HomeDiagnoseInfoServiceImpl homeDiagnoseInfoServiceImpl;
+
+    private TZDBConn tzDBConn = new TZDBConn();
+
+    public void executeHomeDiagnose() {
+        String sql="select * from br_recdiagnose where BASYID in (select BASYID from br_rechome where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate())";//今年的数据
+        List<HomeDiagnoseInfo> homeDiagnoseList = tzDBConn.getHomeDiagnose(sql);
+        execute(homeDiagnoseList);
+    }
+
+    public void executeHomeDiagnosePast() {
+        String sql="select * from br_recdiagnose where BASYID in (select BASYID from br_rechome where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate())";//今年的数据
+        List<HomeDiagnoseInfo> homeDiagnoseList = tzDBConn.getHomeDiagnose(sql);
+        execute(homeDiagnoseList);
+    }
+
+    public void executeHomeDiagnosePort(){
+
+    }
+
+    /**
+     * 数据引擎-通过接口更新病案首页诊断
+     * @param list
+     * @return
+     */
+    public List<AHomeDiagnoseDTO> executeHomeDiagnose(List<AHomeDiagnoseVO> list) {
+        List<HomeDiagnoseInfo> homeDiagnoseList=Lists.newArrayList();
+        List<AHomeDiagnoseDTO> homeDiagnoseDtoList=Lists.newArrayList();
+        if(list!=null && list.size()>0){
+            homeDiagnoseList=BeanUtil.listCopyTo(list,HomeDiagnoseInfo.class);
+            homeDiagnoseDtoList=BeanUtil.listCopyTo(list,AHomeDiagnoseDTO.class);
+            execute(homeDiagnoseList);
+        }
+        return homeDiagnoseDtoList;
+    }
+
+    public void execute(List<HomeDiagnoseInfo> homeDiagnoseList){
+        if (homeDiagnoseList != null && homeDiagnoseList.size() > 0) {
+            homeDiagnoseList.stream().forEach(s -> {
+                if(s.getHomePageId()!=null && !"".equals(s.getDiagnoseOrderNo())){
+                    QueryWrapper<HomeDiagnoseInfo> queryWrapper = new QueryWrapper<>();
+                    queryWrapper.eq("home_page_id", s.getHomePageId());
+                    queryWrapper.eq("diagnose_order_no", s.getDiagnoseOrderNo());
+                    HomeDiagnoseInfo diagnoseInfo = homeDiagnoseInfoServiceImpl.getOne(queryWrapper);
+                    if (diagnoseInfo != null) {
+                        s.setGmtModified(new Date());
+                        homeDiagnoseInfoServiceImpl.update(s,queryWrapper);
+                    } else {
+                        s.setGmtCreate(new Date());
+                        homeDiagnoseInfoServiceImpl.save(s);
+                    }
+                }
+            });
+        }
+    }
+}

+ 77 - 0
src/main/java/com/diagbot/facade/AHomeOperationInfoFacade.java

@@ -0,0 +1,77 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.dto.data.AHomeOperationDTO;
+import com.diagbot.entity.HomeOperationInfo;
+import com.diagbot.service.impl.HomeOperationInfoServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.TZDBConn;
+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.stereotype.Component;
+
+import java.util.Date;
+import java.util.List;
+
+@Component
+public class AHomeOperationInfoFacade {
+    @Autowired
+    @Qualifier("homeOperationInfoServiceImpl")
+    private HomeOperationInfoServiceImpl homeOperationInfoServiceImpl;
+
+    private TZDBConn tzDBConn = new TZDBConn();
+
+    public void executeHomeOperation() {
+        String sql="select * from br_recoperation where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
+        List<HomeOperationInfo> homeOperationList = tzDBConn.getHomeOperation(sql);
+        execute(homeOperationList);
+    }
+
+    public void executeHomeOperationPast() {
+        String sql="select * from br_recoperation where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
+        List<HomeOperationInfo> homeOperationList = tzDBConn.getHomeOperation(sql);
+        execute(homeOperationList);
+    }
+
+    public void executeHomeOperationPort(){
+
+    }
+
+    /**
+     * 数据引擎-通过接口更新病案首页手术
+     * @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){
+            homeOperationList=BeanUtil.listCopyTo(list,HomeOperationInfo.class);
+            homeOperationDtoList=BeanUtil.listCopyTo(list,AHomeOperationDTO.class);
+            execute(homeOperationList);
+        }
+        return homeOperationDtoList;
+    }
+
+    public void execute(List<HomeOperationInfo> homeOperationList){
+        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("operation_order_no", s.getOperationOrderNo());
+                    HomeOperationInfo operationInfo = homeOperationInfoServiceImpl.getOne(queryWrapper);
+                    if (operationInfo != null) {
+                        s.setGmtModified(new Date());
+                        homeOperationInfoServiceImpl.update(s,queryWrapper);
+                    } else {
+                        s.setGmtCreate(new Date());
+                        homeOperationInfoServiceImpl.save(s);
+                    }
+                }
+            });
+        }
+    }
+}

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

@@ -0,0 +1,77 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.dto.data.AHomePageDTO;
+import com.diagbot.entity.HomePage;
+import com.diagbot.service.impl.HomePageServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.TZDBConn;
+import com.diagbot.vo.data.AHomePageVO;
+import com.google.common.collect.Lists;
+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;
+
+@Component
+public class AHomePageFacade {
+    @Autowired
+    @Qualifier("homePageServiceImpl")
+    private HomePageServiceImpl homePageServiceImpl;
+
+    private TZDBConn tzDBConn = new TZDBConn();
+
+    /**
+     * 同步前一天病案首页
+     */
+    public void executeHomePage() {
+        String sql="select * from br_rechome where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
+        List<HomePage> homePageList = tzDBConn.getHomePage(sql);
+        execute(homePageList);
+    }
+
+    public void executeHomePagePast() {
+        String sql="select * from br_rechome where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
+        List<HomePage> homePageList = tzDBConn.getHomePage(sql);
+        execute(homePageList);
+    }
+
+    public void executeHomePagePort(){
+
+    }
+
+    /**
+     * 数据引擎-通过接口更新病案首页
+     * @param list
+     * @return
+     */
+    public List<AHomePageDTO> executeHomePage(List<AHomePageVO> list) {
+        List<HomePage> homePageList=Lists.newArrayList();
+        List<AHomePageDTO> homePageDtoList=Lists.newArrayList();
+        if(list!=null && list.size()>0){
+            homePageList=BeanUtil.listCopyTo(list,HomePage.class);
+            homePageDtoList=BeanUtil.listCopyTo(list,AHomePageDTO.class);
+            execute(homePageList);
+        }
+        return homePageDtoList;
+    }
+
+    public void execute(List<HomePage> homePageList){
+        if (homePageList != null && homePageList.size() > 0) {
+            homePageList.stream().forEach(s -> {
+                QueryWrapper<HomePage> queryWrapper = new QueryWrapper<>();
+                queryWrapper.eq("home_page_id", s.getHomePageId());
+                HomePage homePage = homePageServiceImpl.getOne(queryWrapper);
+                if (homePage != null) {
+                    s.setGmtModified(new Date());
+                    homePageServiceImpl.updateById(s);
+                } else {
+                    s.setGmtCreate(new Date());
+                    homePageServiceImpl.save(s);
+                }
+            });
+        }
+    }
+}

+ 85 - 0
src/main/java/com/diagbot/facade/AMedRecordTypeFacade.java

@@ -0,0 +1,85 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.dto.data.AMedicalRecordTypeDTO;
+import com.diagbot.entity.MedRecordType;
+import com.diagbot.service.impl.MedRecordTypeServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.TZDBConn;
+import com.diagbot.vo.data.AMedicalRecordTypeVO;
+import com.google.common.collect.Lists;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+@Component
+public class AMedRecordTypeFacade {
+    @Autowired
+    @Qualifier("medRecordTypeServiceImpl")
+    private MedRecordTypeServiceImpl medRecordTypeServiceImpl;
+
+    private TZDBConn tzDBConn = new TZDBConn();
+
+    /**
+     * 同步前一天变更的模板类型
+     */
+    public void executeMRType() {
+        String sql="select * from ar_medirecclass where SFZFPB='1' and cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
+        List<MedRecordType> medRecordTypeList = tzDBConn.getMedicalRecordType(sql);
+        execute(medRecordTypeList);
+    }
+
+    /**
+     * 同步前一天变更的模板类型
+     */
+    public void executeMRTypePast() {
+        String sql="select * from ar_medirecclass where SFZFPB='1' and cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
+        List<MedRecordType> medRecordTypeList = tzDBConn.getMedicalRecordType(sql);
+        execute(medRecordTypeList);
+    }
+
+    /**
+     * 数据引擎-通过接口更新病人住院记录信息
+     * @param list
+     * @return
+     */
+    public List<AMedicalRecordTypeDTO> executeMRType(List<AMedicalRecordTypeVO> list) {
+        List<MedRecordType> medRecordTypeList=Lists.newArrayList();
+        List<AMedicalRecordTypeDTO> medRecordTypeDtoList=Lists.newArrayList();
+        if(list!=null && list.size()>0){
+            medRecordTypeList=BeanUtil.listCopyTo(list,MedRecordType.class);
+            medRecordTypeDtoList=BeanUtil.listCopyTo(list,AMedicalRecordTypeDTO.class);
+            execute(medRecordTypeList);
+        }
+        return medRecordTypeDtoList;
+    }
+
+    public void executeMRTypePort(){
+
+    }
+
+    public void execute(List<MedRecordType> medRecordTypeList){
+        List<MedRecordType> add = Lists.newLinkedList();
+        List<MedRecordType> updateE = Lists.newLinkedList();
+        if (medRecordTypeList != null && medRecordTypeList.size() != 0) {
+            medRecordTypeList.stream().forEach(s -> {
+                QueryWrapper<MedRecordType> queryWrapper = new QueryWrapper<>();
+                queryWrapper.in("type_id", s.getTypeId());
+                MedRecordType mrType = medRecordTypeServiceImpl.getOne(queryWrapper);
+                if (mrType != null) {
+                    updateE.add(s);
+                } else {
+                    add.add(s);
+                }
+            });
+            if (add != null && add.size() != 0) {
+                medRecordTypeServiceImpl.saveBatch(add);
+            }
+            if (updateE != null && updateE.size() != 0) {
+                medRecordTypeServiceImpl.updateBatchById(updateE);
+            }
+        }
+    }
+}

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

@@ -0,0 +1,79 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.dto.data.AMedicalRecordContentDTO;
+import com.diagbot.entity.MedicalRecordContent;
+import com.diagbot.service.impl.MedicalRecordContentServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.TZDBConn;
+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.stereotype.Component;
+
+import java.util.*;
+
+@Component
+public class AMedicalRecordContentFacade {
+    @Autowired
+    @Qualifier("medicalRecordContentServiceImpl")
+    private MedicalRecordContentServiceImpl medicalRecordContentServiceImpl;
+
+    private TZDBConn tzDBConn = new TZDBConn();
+
+    /**
+     * 同步前一天的病历详细记录
+     */
+    public void executeMrRecordContent() {
+        String sql="select * from mr_mrcontent  where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
+        List<MedicalRecordContent> mrContentList = tzDBConn.getMedicalRecordContent(sql);
+        execute(mrContentList);
+    }
+
+    /**
+     * 同步前一天的病历详细记录
+     */
+    public void executeMrRecordContentPast() {
+        String sql="select * from mr_mrcontent  where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
+        List<MedicalRecordContent> mrContentList = tzDBConn.getMedicalRecordContent(sql);
+        execute(mrContentList);
+    }
+
+    public void executeMrRecordContentPort(){
+
+    }
+
+    /**
+     * 数据引擎-通过接口更新病历内容
+     * @param list
+     * @return
+     */
+    public List<AMedicalRecordContentDTO> executeMrRecordContent(List<AMedicalRecordContentVO> list) {
+        List<MedicalRecordContent> mrContentList=Lists.newArrayList();
+        List<AMedicalRecordContentDTO> mrContentDtoList=Lists.newArrayList();
+        if(list!=null && list.size()>0){
+            mrContentList=BeanUtil.listCopyTo(list,MedicalRecordContent.class);
+            mrContentDtoList=BeanUtil.listCopyTo(list,AMedicalRecordContentDTO.class);
+            execute(mrContentList);
+        }
+        return mrContentDtoList;
+    }
+
+    public void execute(List<MedicalRecordContent> mrContentList){
+        if (mrContentList != null && mrContentList.size() > 0) {
+            mrContentList.stream().forEach(s -> {
+                QueryWrapper<MedicalRecordContent> queryWrapper = new QueryWrapper<>();
+                queryWrapper.eq("rec_id", s.getRecId());
+                MedicalRecordContent mrContent = medicalRecordContentServiceImpl.getOne(queryWrapper);
+                if (mrContent != null) {
+                    s.setGmtModified(new Date());
+                    medicalRecordContentServiceImpl.updateById(s);
+                } else {
+                    s.setGmtCreate(new Date());
+                    medicalRecordContentServiceImpl.save(s);
+                }
+            });
+        }
+    }
+}

+ 175 - 0
src/main/java/com/diagbot/facade/AMedicalRecordFacade.java

@@ -0,0 +1,175 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.dto.data.AMedicalRecordDTO;
+import com.diagbot.entity.BehospitalInfo;
+import com.diagbot.entity.MedicalRecord;
+import com.diagbot.entity.MedicalRecordContent;
+import com.diagbot.entity.QcModelHospital;
+import com.diagbot.service.impl.BehospitalInfoServiceImpl;
+import com.diagbot.service.impl.MedicalRecordContentServiceImpl;
+import com.diagbot.service.impl.MedicalRecordServiceImpl;
+import com.diagbot.service.impl.QcModelHospitalServiceImpl;
+import com.diagbot.util.BeanUtil;
+import com.diagbot.util.TZDBConn;
+import com.diagbot.vo.data.AMedicalRecordVO;
+import com.google.common.collect.Lists;
+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.HashMap;
+import java.util.List;
+import java.util.Map;
+
+@Component
+public class AMedicalRecordFacade {
+
+    @Autowired
+    @Qualifier("medicalRecordServiceImpl")
+    private MedicalRecordServiceImpl medicalRecordServiceImpl;
+
+    @Autowired
+    @Qualifier("qcModelHospitalServiceImpl")
+    private QcModelHospitalServiceImpl qcModelHospitalServiceImpl;
+
+    @Autowired
+    @Qualifier("medicalRecordContentServiceImpl")
+    private MedicalRecordContentServiceImpl medicalRecordContentServiceImpl;
+
+    @Autowired
+    @Qualifier("behospitalInfoServiceImpl")
+    private BehospitalInfoServiceImpl behospitalInfoServiceImpl;
+
+    @Autowired
+    private AMedicalRecordContentFacade aMedicalRecordContentFacade;
+
+
+    private TZDBConn tzDBConn = new TZDBConn();
+
+    /**
+     * 同步前一天的病历记录
+     */
+    public void executeMrRecord() {
+        String sql="select * from mr_medicalrecords  where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
+        List<MedicalRecord> medicalRecordList = tzDBConn.getMedicalRecord(sql);
+        execute(medicalRecordList);
+    }
+
+    public void executeMrRecordPast() {
+        String sql="select * from mr_medicalrecords  where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
+        List<MedicalRecord> medicalRecordList = tzDBConn.getMedicalRecord(sql);
+        execute(medicalRecordList);
+    }
+
+    public void executeMrRecordPort(){
+
+    }
+
+    /**
+     * 数据引擎-通过接口更新病历记录
+     * @param list
+     * @return
+     */
+    public List<AMedicalRecordDTO> executeMrRecord(List<AMedicalRecordVO> list) {
+        List<MedicalRecord> medicalRecordList=Lists.newArrayList();
+        List<AMedicalRecordDTO> medicalRecordDtoList=Lists.newArrayList();
+        if(list!=null && list.size()>0){
+            medicalRecordList=BeanUtil.listCopyTo(list,MedicalRecord.class);
+            medicalRecordDtoList=BeanUtil.listCopyTo(list,AMedicalRecordDTO.class);
+            execute(medicalRecordList);
+        }
+        return medicalRecordDtoList;
+    }
+
+    public void execute(List<MedicalRecord> medicalRecordList){
+        if (medicalRecordList != null && medicalRecordList.size() > 0) {
+            medicalRecordList.stream().forEach(s -> {
+                //初始化mode_id
+                Long modeId=initModeId(s);
+                s.setModeId(modeId);
+                //新增或修改
+                saveOrUpdate(s);
+            });
+        }
+    }
+
+    /**
+     * 页面推送-通过接口更新病历记录
+     * @param list
+     * @return
+     */
+    public Map<String,Object> executeMrRecordView(List<AMedicalRecordVO> list) {
+        Map<String,Object> data=new HashMap<String,Object>();
+        Long hospitalId=tzDBConn.HOSPITAL_ID;
+        String behospitalCode=null;
+        Long modeId=null;
+        if (list != null && list.size() > 0){
+            AMedicalRecordVO medicalRecordVO=list.get(0);
+            MedicalRecord mrRecord=new MedicalRecord();
+            BeanUtil.copyProperties(medicalRecordVO,mrRecord);
+            //初始化mode_id
+            modeId=initModeId(mrRecord);
+            mrRecord.setModeId(modeId);
+
+            //新增或修改病历记录
+            saveOrUpdate(mrRecord);
+
+            //更新病历内容
+            if (medicalRecordVO.getContents() != null && medicalRecordVO.getContents().size() > 0) {
+                List<MedicalRecordContent> mrContentList=Lists.newArrayList();
+                mrContentList=BeanUtil.listCopyTo(medicalRecordVO.getContents(),MedicalRecordContent.class);
+                aMedicalRecordContentFacade.execute(mrContentList);
+            }
+
+            behospitalCode=mrRecord.getBehospitalCode();
+            hospitalId=mrRecord.getHospitalId();
+
+            //查看病人住院记录是否存在或质控类型是否正常匹配,非0或非空
+            QueryWrapper<BehospitalInfo> queryWrapper = new QueryWrapper<>();
+            queryWrapper.eq("behospital_code", behospitalCode);
+            queryWrapper.eq("hospital_id", hospitalId);
+            BehospitalInfo behospitalInfo = behospitalInfoServiceImpl.getOne(queryWrapper);
+            if (behospitalInfo == null || behospitalInfo.getQcTypeId()==null && behospitalInfo.getQcTypeId()==0) {
+                modeId=null;
+            }
+
+        }
+        String url="?behospitalCode="+behospitalCode+"&hospitalId="+hospitalId;
+        if(modeId ==null || modeId.equals("0")){
+            data.put("url",null);
+        }else{
+            url+="";
+            data.put("url",url);
+        }
+        return data;
+    }
+
+    private void saveOrUpdate(MedicalRecord medicalRecord){
+        QueryWrapper<MedicalRecord> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("rec_id", medicalRecord.getRecId());
+        MedicalRecord mRecord = medicalRecordServiceImpl.getOne(queryWrapper);
+        if (mRecord != null) {
+            medicalRecord.setGmtModified(new Date());
+            medicalRecordServiceImpl.updateById(medicalRecord);
+        } else {
+            medicalRecord.setGmtCreate(new Date());
+            medicalRecordServiceImpl.save(medicalRecord);
+        }
+    }
+
+    private Long initModeId(MedicalRecord medicalRecord){
+        Long modeId=Long.valueOf("0");
+        QueryWrapper<QcModelHospital> wrapper = new QueryWrapper<>();
+        wrapper.eq("hospital_id",tzDBConn.HOSPITAL_ID);
+        wrapper.eq("hospital_model_name",medicalRecord.getRecTitle());
+        QcModelHospital mode=qcModelHospitalServiceImpl.getOne(wrapper);
+        if(mode!=null){
+            modeId=mode.getStandModelId();
+        }else{
+            modeId=Long.valueOf("0");
+        }
+        return modeId;
+    }
+}

+ 43 - 340
src/main/java/com/diagbot/facade/DataFacade.java

@@ -1,380 +1,83 @@
 package com.diagbot.facade;
 
-import java.util.*;
-
-import com.diagbot.entity.*;
-import com.diagbot.service.impl.*;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.stereotype.Component;
 
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.diagbot.util.TZDBConn;
-import com.google.common.collect.Lists;
-
 @Component
 public class DataFacade {
-
     @Autowired
-    @Qualifier("homePageServiceImpl")
-    private HomePageServiceImpl homePageServiceImpl;
+    private ABasDeptInfoFacade aBasDeptInfoFacade;
 
     @Autowired
-    @Qualifier("behospitalInfoServiceImpl")
-    private BehospitalInfoServiceImpl behospitalInfoServiceImpl;
+    private ABasDoctorInfoFacade aBasDoctorInfoFacade;
 
     @Autowired
-    @Qualifier("doctorAdviceServiceImpl")
-    private DoctorAdviceServiceImpl doctorAdviceServiceImpl;
+    private AHomePageFacade aHomePageFacade;
 
     @Autowired
-    @Qualifier("medicalRecordServiceImpl")
-    private MedicalRecordServiceImpl medicalRecordServiceImpl;
+    private AHomeDiagnoseInfoFacade aHomeDiagnoseInfoFacade;
 
     @Autowired
-    @Qualifier("medicalRecordContentServiceImpl")
-    private MedicalRecordContentServiceImpl medicalRecordContentServiceImpl;
+    private AHomeOperationInfoFacade aHomeOperationInfoFacade;
 
     @Autowired
-    @Qualifier("medRecordTypeServiceImpl")
-    private MedRecordTypeServiceImpl medRecordTypeServiceImpl;
+    private AMedRecordTypeFacade aMedRecordTypeFacade;
 
     @Autowired
-    @Qualifier("homeDiagnoseInfoServiceImpl")
-    private HomeDiagnoseInfoServiceImpl homeDiagnoseInfoServiceImpl;
+    private AMedicalRecordFacade aMedicalRecordFacade;
 
     @Autowired
-    @Qualifier("homeOperationInfoServiceImpl")
-    private HomeOperationInfoServiceImpl homeOperationInfoServiceImpl;
+    private AMedicalRecordContentFacade aMedicalRecordContentFacade;
 
     @Autowired
-    @Qualifier("basDeptInfoServiceImpl")
-    private BasDeptInfoServiceImpl basDeptInfoServiceImpl;
+    private ABehospitalInfoFacade aBehospitalInfoFacade;
 
     @Autowired
-    @Qualifier("basDoctorInfoServiceImpl")
-    private BasDoctorInfoServiceImpl basDoctorInfoServiceImpl;
+    private ADoctorAdviceFacade aDoctorAdviceFacade;
 
-    @Autowired
-    @Qualifier("qcModelHospitalServiceImpl")
-    private QcModelHospitalServiceImpl qcModelHospitalServiceImpl;
 
-    @Autowired
-    @Qualifier("qcTypeServiceImpl")
-    private  QcTypeServiceImpl qcTypeServiceImpl;
-
-    private TZDBConn tzDBConn = new TZDBConn();
-
-    /**
-     * 同步前一天科室的信息
-     */
-    public void executeDept() {
-        List<BasDeptInfo> basDeptInfoList = tzDBConn.getDeptInfo();
-        List<BasDeptInfo> add = Lists.newLinkedList();
-        List<BasDeptInfo> updateE = Lists.newLinkedList();
-        basDeptInfoList.stream().forEach(s -> {
-            QueryWrapper<BasDeptInfo> queryWrapper = new QueryWrapper<>();
-            queryWrapper.in("dept_id", s.getDeptId());
-            BasDeptInfo basDeptInfo = basDeptInfoServiceImpl.getOne(queryWrapper);
-            if (basDeptInfo != null) {
-                updateE.add(s);
-            } else {
-                add.add(s);
-            }
-        });
-
-        if (add != null && add.size() != 0) {
-            basDeptInfoServiceImpl.saveBatch(add);
-        }
-        if (updateE != null && updateE.size() != 0) {
-            basDeptInfoServiceImpl.updateBatchById(updateE);
-        }
-    }
+    public void executeView(){
+        aBasDeptInfoFacade.executeDeptPast();//科室信息
 
-    /**
-     * 同步前一天医生信息
-     */
-    public void executeDoctor() {
-        List<BasDoctorInfo> basDeptInfoList = tzDBConn.getBasDoctorInfo();
-        List<BasDoctorInfo> add = Lists.newLinkedList();
-        List<BasDoctorInfo> updateE = Lists.newLinkedList();
-        basDeptInfoList.stream().forEach(s -> {
-            QueryWrapper<BasDoctorInfo> queryWrapper = new QueryWrapper<>();
-            queryWrapper.in("doctor_id", s.getDeptId());
-            BasDoctorInfo basDoctorInfo = basDoctorInfoServiceImpl.getOne(queryWrapper);
-            if (basDoctorInfo != null) {
-                updateE.add(s);
-            } else {
-                add.add(s);
-            }
-        });
-
-        if (add != null && add.size() != 0) {
-            basDoctorInfoServiceImpl.saveBatch(basDeptInfoList);
-        }
-        if (updateE != null && updateE.size() != 0) {
-            updateE.forEach((e) -> {
-                //e.setGmtModified(new Date());
-            });
-            basDoctorInfoServiceImpl.updateBatchById(updateE);
-        }
-    }
+        aBasDoctorInfoFacade.executeDoctorPast();//医生信息
 
-    /**
-     * 同步前一天的入院记录
-     */
-    public void executeBehospital() {
-        List<BehospitalInfo> behospitalInfoList = tzDBConn.getBehospitalInfo();
-        List<BehospitalInfo> add = Lists.newLinkedList();
-        List<BehospitalInfo> updateE = Lists.newLinkedList();
-        behospitalInfoList.stream().forEach(s -> {
-            QueryWrapper<MedicalRecord> wrapper = new QueryWrapper<>();
-            wrapper.eq("behospital_code", s.getBehospitalCode());
-            wrapper.eq("hospital_id", Long.valueOf("3"));
-            wrapper.eq("mode_id", Long.valueOf("1"));
-            MedicalRecord medicalRecord = medicalRecordServiceImpl.getOne(wrapper);
-            if(medicalRecord!=null){
-                QueryWrapper<QcType> qWrapper =new QueryWrapper<>();
-                qWrapper.eq("name",medicalRecord.getRecTitle());
-                QcType qcType=qcTypeServiceImpl.getOne(qWrapper);
-                if(qcType!=null){
-                    s.setQcTypeId(qcType.getId());
-                }else{
-                    s.setQcTypeId(Long.valueOf("0"));
-                }
-            }
-
-            QueryWrapper<BehospitalInfo> queryWrapper = new QueryWrapper<>();
-            queryWrapper.eq("behospital_code", s.getBehospitalCode());
-            queryWrapper.eq("hospital_id", Long.valueOf("3"));
-            BehospitalInfo behospitalInfo = behospitalInfoServiceImpl.getOne(queryWrapper);
-            if (behospitalInfo != null) {
-                s.setGmtModified(new Date());
-                updateE.add(s);
-            } else {
-                s.setGmtCreate(new Date());
-                add.add(s);
-            }
-        });
-        if (add != null && add.size() != 0) {
-            behospitalInfoServiceImpl.saveBatch(add);
-        }
-        if (updateE != null && updateE.size() != 0) {
-            behospitalInfoServiceImpl.updateBatchById(updateE);
-        }
-    }
+        aHomePageFacade.executeHomePagePast();//病案首页
 
-    /**
-     * 同步前一天的入院病人医嘱信息
-     */
-    public void executeDoctorAdvice() {
-        List<DoctorAdvice> doctorAdviceList = tzDBConn.getDoctorAdvice();
-        List<DoctorAdvice> add = Lists.newLinkedList();
-        List<DoctorAdvice> updateE = Lists.newLinkedList();
-        if (doctorAdviceList != null && doctorAdviceList.size() > 0) {
-            doctorAdviceList.stream().forEach(s -> {
-                QueryWrapper<DoctorAdvice> queryWrapper = new QueryWrapper<>();
-                queryWrapper.in("doctor_advice_id", s.getDoctorAdviceId());
-                DoctorAdvice doctorAdvice = doctorAdviceServiceImpl.getOne(queryWrapper);
-                if (doctorAdvice != null) {
-                    s.setGmtModified(new Date());
-                    updateE.add(s);
-                } else {
-                    s.setGmtCreate(new Date());
-                    add.add(s);
-                }
-            });
-            if (add != null && add.size() > 0) {
-                doctorAdviceServiceImpl.saveBatch(add);
-            }
-            if (updateE != null && updateE.size() > 0) {
-                doctorAdviceServiceImpl.updateBatchById(updateE);
-            }
-        }
-    }
+        aHomeDiagnoseInfoFacade.executeHomeDiagnosePast();//病案首页诊断
 
-    /**
-     * 同步前一天变更的模板类型
-     */
-    public void executeMRType() {
-        List<MedRecordType> medRecordTypeList = tzDBConn.getMedicalRecordType();
-        List<MedRecordType> add = Lists.newLinkedList();
-        List<MedRecordType> updateE = Lists.newLinkedList();
-        if (medRecordTypeList != null && medRecordTypeList.size() != 0) {
-            medRecordTypeList.stream().forEach(s -> {
-                QueryWrapper<MedRecordType> queryWrapper = new QueryWrapper<>();
-                queryWrapper.in("type_id", s.getTypeId());
-                MedRecordType mrType = medRecordTypeServiceImpl.getOne(queryWrapper);
-                if (mrType != null) {
-                    updateE.add(s);
-                } else {
-                    add.add(s);
-                }
-            });
-            if (add != null && add.size() != 0) {
-                medRecordTypeServiceImpl.saveBatch(add);
-            }
-            if (updateE != null && updateE.size() != 0) {
-                //updateE.forEach((e)->{e.setGmtModified(new Date());});
-                medRecordTypeServiceImpl.updateBatchById(updateE);
-            }
-        }
-    }
+        aHomeOperationInfoFacade.executeHomeOperationPast();//病案首页手术
 
-    /**
-     * 同步前一天的病历记录
-     */
-    public void executeMrRecord() {
-        List<MedicalRecord> medicalRecordList = tzDBConn.getMedicalRecord();
-        List<MedicalRecord> add = Lists.newLinkedList();
-        List<MedicalRecord> updateE = Lists.newLinkedList();
-        if (medicalRecordList != null && medicalRecordList.size() > 0) {
-            medicalRecordList.stream().forEach(s -> {
-                //初始化mode_id
-                QueryWrapper<QcModelHospital> wrapper = new QueryWrapper<>();
-                wrapper.eq("hospital_id", Long.valueOf("3"));
-                wrapper.eq("hospital_model_name",s.getRecTitle());
-                QcModelHospital mode=qcModelHospitalServiceImpl.getOne(wrapper);
-                if(mode!=null){
-                    s.setModeId(mode.getStandModelId());
-                }else{
-                    s.setModeId(Long.valueOf("0"));
-                }
-
-                //新增或修改
-                QueryWrapper<MedicalRecord> queryWrapper = new QueryWrapper<>();
-                queryWrapper.in("rec_id", s.getRecId());
-                MedicalRecord medicalRecord = medicalRecordServiceImpl.getOne(queryWrapper);
-                if (medicalRecord != null) {
-                    s.setGmtModified(new Date());
-                    updateE.add(s);
-                } else {
-                    s.setGmtCreate(new Date());
-                    add.add(s);
-                }
-            });
-            if (add != null && add.size() > 0) {
-                medicalRecordServiceImpl.saveBatch(add);
-            }
-            if (updateE != null && updateE.size() > 0) {
-                medicalRecordServiceImpl.updateBatchById(updateE);
-            }
-        }
-    }
+        aMedRecordTypeFacade.executeMRTypePast();//模板类型
 
-    /**
-     * 同步前一天的病历详细记录
-     */
-    public void executeMrRecordContent() {
-        List<MedicalRecordContent> mrContentList = tzDBConn.getMedicalRecordContent();
-        List<MedicalRecordContent> add = Lists.newLinkedList();
-        List<MedicalRecordContent> updateE = Lists.newLinkedList();
-        if (mrContentList != null && mrContentList.size() > 0) {
-            mrContentList.stream().forEach(s -> {
-                QueryWrapper<MedicalRecordContent> queryWrapper = new QueryWrapper<>();
-                queryWrapper.in("rec_id", s.getRecId());
-                MedicalRecordContent mrContent = medicalRecordContentServiceImpl.getOne(queryWrapper);
-                if (mrContent != null) {
-                    s.setGmtModified(new Date());
-                    updateE.add(s);
-                } else {
-                    s.setGmtCreate(new Date());
-                    add.add(s);
-                }
-            });
-            if (add != null && add.size() > 0) {
-                medicalRecordContentServiceImpl.saveBatch(add);
-            }
-            if (updateE != null && updateE.size() > 0) {
-                medicalRecordContentServiceImpl.updateBatchById(updateE);
-            }
-        }
-    }
+        aMedicalRecordFacade.executeMrRecordPast();//病历
 
-    /**
-     * 同步前一天病案首页
-     */
-    public void executeHomePage() {
-        List<HomePage> homePageList = tzDBConn.getHomePage();
-        List<HomePage> add = Lists.newLinkedList();
-        List<HomePage> updateE = Lists.newLinkedList();
-        if (homePageList != null && homePageList.size() > 0) {
-            homePageList.stream().forEach(s -> {
-                QueryWrapper<HomePage> queryWrapper = new QueryWrapper<>();
-                queryWrapper.eq("home_page_id", s.getHomePageId());
-                HomePage homePage = homePageServiceImpl.getOne(queryWrapper);
-                if (homePage != null) {
-                    s.setGmtModified(new Date());
-                    updateE.add(s);
-                } else {
-                    s.setGmtCreate(new Date());
-                    add.add(s);
-                }
-            });
-            if (add != null && add.size() > 0) {
-                homePageServiceImpl.saveBatch(add);
-            }
-            if (updateE != null && updateE.size() > 0) {
-                homePageServiceImpl.updateBatchById(updateE);
-            }
-        }
-    }
+        aMedicalRecordContentFacade.executeMrRecordContentPast();//病历内容
+
+        aBehospitalInfoFacade.executeBehospitalPast();//住院信息
 
-    public void executeHomeOperation() {
-        List<HomeOperationInfo> homeOperationList = tzDBConn.getHomeOperation();
-        List<HomeOperationInfo> add = 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("operation_order_no", s.getOperationOrderNo());
-                    HomeOperationInfo operationInfo = homeOperationInfoServiceImpl.getOne(queryWrapper);
-                    if (operationInfo != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        add.add(s);
-                    }
-                }
-            });
-            if (add != null && add.size() > 0) {
-                homeOperationInfoServiceImpl.saveBatch(add);
-            }
-            if (updateE != null && updateE.size() > 0) {
-                homeOperationInfoServiceImpl.updateBatchById(updateE);
-            }
-        }
+        aDoctorAdviceFacade.executeDoctorAdvicePast();//住院医嘱信息
     }
 
-    public void executeHomeDiagnose() {
-        List<HomeDiagnoseInfo> homeDiagnoseList = tzDBConn.getHomeDiagnose();
-        List<HomeDiagnoseInfo> add = Lists.newLinkedList();
-        List<HomeDiagnoseInfo> updateE = Lists.newLinkedList();
-        if (homeDiagnoseList != null && homeDiagnoseList.size() > 0) {
-            homeDiagnoseList.stream().forEach(s -> {
-                if(s.getHomePageId()!=null && !"".equals(s.getDiagnoseOrderNo())){
-                    QueryWrapper<HomeDiagnoseInfo> queryWrapper = new QueryWrapper<>();
-                    queryWrapper.eq("home_page_id", s.getHomePageId());
-                    queryWrapper.eq("diagnose_order_no", s.getDiagnoseOrderNo());
-                    HomeDiagnoseInfo diagnoseInfo = homeDiagnoseInfoServiceImpl.getOne(queryWrapper);
-                    if (diagnoseInfo != null) {
-                        s.setGmtModified(new Date());
-                        updateE.add(s);
-                    } else {
-                        s.setGmtCreate(new Date());
-                        add.add(s);
-                    }
-                }
-            });
-            if (add != null) {
-                homeDiagnoseInfoServiceImpl.saveBatch(add);
-            }
-            if (updateE != null) {
-                homeDiagnoseInfoServiceImpl.updateBatchById(updateE);
-            }
-        }
+
+    public void executePort(){
+        aBasDeptInfoFacade.executeDeptPort();//科室信息
+
+        aBasDoctorInfoFacade.executeDoctorPort();//医生信息
+
+        aHomePageFacade.executeHomePagePort();//病案首页
+
+        aHomeDiagnoseInfoFacade.executeHomeDiagnosePort();//病案首页诊断
+
+        aHomeOperationInfoFacade.executeHomeOperationPort();//病案首页手术
+
+        aMedRecordTypeFacade.executeMRTypePort();//模板类型
+
+        aMedicalRecordFacade.executeMrRecordPort();//病历
+
+        aMedicalRecordContentFacade.executeMrRecordContentPort();//病历内容
+
+        aBehospitalInfoFacade.executeBehospitalPort();//住院信息
+
+        aDoctorAdviceFacade.executeDoctorAdvicePort();//住院医嘱信息
     }
 }

+ 3 - 4
src/main/java/com/diagbot/task/BasDeptInfoTask.java

@@ -3,6 +3,7 @@ package com.diagbot.task;
 import java.time.LocalDateTime;
 import java.util.Date;
 
+import com.diagbot.facade.ABasDeptInfoFacade;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.scheduling.Trigger;
@@ -15,8 +16,6 @@ import org.springframework.scheduling.support.CronTrigger;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.diagbot.entity.SysTaskCron;
 import com.diagbot.enums.IsDeleteEnum;
-import com.diagbot.facade.BasDeptInfoFacade;
-import com.diagbot.facade.DataFacade;
 import com.diagbot.facade.SysTaskCronFacade;
 import com.diagbot.util.StringUtil;
 
@@ -33,7 +32,7 @@ public class BasDeptInfoTask implements SchedulingConfigurer{
     private SysTaskCron task001 = new SysTaskCron();
 
     @Autowired
-	private DataFacade dataFacade;
+	private ABasDeptInfoFacade aBasDeptInfoFacade;
     
     /**
      * 执行定时任务.
@@ -48,7 +47,7 @@ public class BasDeptInfoTask implements SchedulingConfigurer{
                         && task001.getIsDeleted().equals(IsDeleteEnum.N.getKey())
                         && task001.getIsUsed().equals(1)) {
                     log.info("执行动态定时任务: " + LocalDateTime.now().toLocalTime());
-                    dataFacade.executeDept();
+                    aBasDeptInfoFacade.executeDept();
                 }
             }
         }, new Trigger() {

+ 3 - 4
src/main/java/com/diagbot/task/BasDoctorInfoTask.java

@@ -3,6 +3,7 @@ package com.diagbot.task;
 import java.time.LocalDateTime;
 import java.util.Date;
 
+import com.diagbot.facade.ABasDoctorInfoFacade;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.scheduling.Trigger;
@@ -15,8 +16,6 @@ import org.springframework.scheduling.support.CronTrigger;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.diagbot.entity.SysTaskCron;
 import com.diagbot.enums.IsDeleteEnum;
-import com.diagbot.facade.BasDoctorInfoFacade;
-import com.diagbot.facade.DataFacade;
 import com.diagbot.facade.SysTaskCronFacade;
 import com.diagbot.util.StringUtil;
 
@@ -32,7 +31,7 @@ public class BasDoctorInfoTask implements SchedulingConfigurer{
     private SysTaskCron task001 = new SysTaskCron();
 
     @Autowired
-	private DataFacade dataFacade;
+	private ABasDoctorInfoFacade aBasDoctorInfoFacade;
     
     /**
      * 执行定时任务.
@@ -47,7 +46,7 @@ public class BasDoctorInfoTask implements SchedulingConfigurer{
                         && task001.getIsDeleted().equals(IsDeleteEnum.N.getKey())
                         && task001.getIsUsed().equals(1)) {
                     log.info("执行动态定时任务: " + LocalDateTime.now().toLocalTime());
-                    dataFacade.executeDoctor();
+                    aBasDoctorInfoFacade.executeDoctor();
                 }
             }
         }, new Trigger() {

+ 3 - 3
src/main/java/com/diagbot/task/BehospitalInfoTask.java

@@ -3,6 +3,7 @@ package com.diagbot.task;
 import java.time.LocalDateTime;
 import java.util.Date;
 
+import com.diagbot.facade.ABehospitalInfoFacade;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.scheduling.Trigger;
@@ -15,7 +16,6 @@ import org.springframework.scheduling.support.CronTrigger;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.diagbot.entity.SysTaskCron;
 import com.diagbot.enums.IsDeleteEnum;
-import com.diagbot.facade.DataFacade;
 import com.diagbot.facade.SysTaskCronFacade;
 import com.diagbot.util.StringUtil;
 
@@ -31,7 +31,7 @@ public class BehospitalInfoTask implements SchedulingConfigurer{
     private SysTaskCron task001 = new SysTaskCron();
 
     @Autowired
-	private DataFacade dataFacade;
+	private ABehospitalInfoFacade aBehospitalInfoFacade;
 
     /**
      * 执行定时任务.
@@ -46,7 +46,7 @@ public class BehospitalInfoTask implements SchedulingConfigurer{
                         && task001.getIsDeleted().equals(IsDeleteEnum.N.getKey())
                         && task001.getIsUsed().equals(1)) {
                     log.info("执行动态定时任务: " + LocalDateTime.now().toLocalTime());
-                    dataFacade.executeBehospital();
+                    aBehospitalInfoFacade.executeBehospital();
                 }
             }
         }, new Trigger() {

+ 3 - 4
src/main/java/com/diagbot/task/DoctorAdviceTask.java

@@ -3,6 +3,7 @@ package com.diagbot.task;
 import java.time.LocalDateTime;
 import java.util.Date;
 
+import com.diagbot.facade.ADoctorAdviceFacade;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.scheduling.Trigger;
@@ -15,8 +16,6 @@ import org.springframework.scheduling.support.CronTrigger;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.diagbot.entity.SysTaskCron;
 import com.diagbot.enums.IsDeleteEnum;
-import com.diagbot.facade.DataFacade;
-import com.diagbot.facade.DoctorAdviceFacade;
 import com.diagbot.facade.SysTaskCronFacade;
 import com.diagbot.util.StringUtil;
 
@@ -33,7 +32,7 @@ public class DoctorAdviceTask implements SchedulingConfigurer{
     private SysTaskCron task001 = new SysTaskCron();
 
     @Autowired
-	private DataFacade dataFacade;
+	private ADoctorAdviceFacade aDoctorAdviceFacade;
     
     /**
      * 执行定时任务.
@@ -48,7 +47,7 @@ public class DoctorAdviceTask implements SchedulingConfigurer{
                         && task001.getIsDeleted().equals(IsDeleteEnum.N.getKey())
                         && task001.getIsUsed().equals(1)) {
                     log.info("执行动态定时任务: " + LocalDateTime.now().toLocalTime());
-                    dataFacade.executeDoctorAdvice();
+                    aDoctorAdviceFacade.executeDoctorAdvice();
                 }
             }
         }, new Trigger() {

+ 3 - 2
src/main/java/com/diagbot/task/HomeDiagnoseInfoTask.java

@@ -3,6 +3,7 @@ package com.diagbot.task;
 import java.time.LocalDateTime;
 import java.util.Date;
 
+import com.diagbot.facade.AHomeDiagnoseInfoFacade;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.scheduling.Trigger;
@@ -32,7 +33,7 @@ public class HomeDiagnoseInfoTask implements SchedulingConfigurer{
     private SysTaskCron task001 = new SysTaskCron();
 
     @Autowired
-   	private DataFacade dataFacade;
+   	private AHomeDiagnoseInfoFacade aHomeDiagnoseInfoFacade;
     
     /**
      * 执行定时任务.
@@ -47,7 +48,7 @@ public class HomeDiagnoseInfoTask implements SchedulingConfigurer{
                         && task001.getIsDeleted().equals(IsDeleteEnum.N.getKey())
                         && task001.getIsUsed().equals(1)) {
                     log.info("执行动态定时任务: " + LocalDateTime.now().toLocalTime());
-                    dataFacade.executeHomeDiagnose();
+                    aHomeDiagnoseInfoFacade.executeHomeDiagnose();
                 }
             }
         }, new Trigger() {

+ 3 - 6
src/main/java/com/diagbot/task/HomeOperationInfoTask.java

@@ -3,6 +3,7 @@ package com.diagbot.task;
 import java.time.LocalDateTime;
 import java.util.Date;
 
+import com.diagbot.facade.*;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.scheduling.Trigger;
@@ -15,10 +16,6 @@ import org.springframework.scheduling.support.CronTrigger;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.diagbot.entity.SysTaskCron;
 import com.diagbot.enums.IsDeleteEnum;
-import com.diagbot.facade.DataFacade;
-import com.diagbot.facade.HomeDiagnoseInfoFacade;
-import com.diagbot.facade.HomeOperationInfoFacade;
-import com.diagbot.facade.SysTaskCronFacade;
 import com.diagbot.util.StringUtil;
 
 import lombok.extern.slf4j.Slf4j;
@@ -34,7 +31,7 @@ public class HomeOperationInfoTask implements SchedulingConfigurer{
     private SysTaskCron task001 = new SysTaskCron();
 
     @Autowired
-   	private DataFacade dataFacade;
+   	private AHomeOperationInfoFacade aHomeOperationInfoFacade;
     
     /**
      * 执行定时任务.
@@ -49,7 +46,7 @@ public class HomeOperationInfoTask implements SchedulingConfigurer{
                         && task001.getIsDeleted().equals(IsDeleteEnum.N.getKey())
                         && task001.getIsUsed().equals(1)) {
                     log.info("执行动态定时任务: " + LocalDateTime.now().toLocalTime());
-                    dataFacade.executeHomeOperation();
+                    aHomeOperationInfoFacade.executeHomeOperation();
                 }
             }
         }, new Trigger() {

+ 3 - 2
src/main/java/com/diagbot/task/HomePageTask.java

@@ -3,6 +3,7 @@ package com.diagbot.task;
 import java.time.LocalDateTime;
 import java.util.Date;
 
+import com.diagbot.facade.AHomePageFacade;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.scheduling.Trigger;
@@ -31,7 +32,7 @@ public class HomePageTask implements SchedulingConfigurer{
     private SysTaskCron task001 = new SysTaskCron();
 
     @Autowired
-   	private DataFacade dataFacade;
+   	private AHomePageFacade aHomePageFacade;
     
     /**
      * 执行定时任务.
@@ -46,7 +47,7 @@ public class HomePageTask implements SchedulingConfigurer{
                         && task001.getIsDeleted().equals(IsDeleteEnum.N.getKey())
                         && task001.getIsUsed().equals(1)) {
                     log.info("执行动态定时任务: " + LocalDateTime.now().toLocalTime());
-                    dataFacade.executeHomePage();
+                    aHomePageFacade.executeHomePage();
                 }
             }
         }, new Trigger() {

+ 3 - 2
src/main/java/com/diagbot/task/MedicalRecordContentTask.java

@@ -3,6 +3,7 @@ package com.diagbot.task;
 import java.time.LocalDateTime;
 import java.util.Date;
 
+import com.diagbot.facade.AMedicalRecordContentFacade;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.scheduling.Trigger;
@@ -32,7 +33,7 @@ public class MedicalRecordContentTask implements SchedulingConfigurer{
     private SysTaskCron task001 = new SysTaskCron();
 
     @Autowired
-   	private DataFacade dataFacade;
+   	private AMedicalRecordContentFacade aMedicalRecordContentFacade;
     
     /**
      * 执行定时任务.
@@ -47,7 +48,7 @@ public class MedicalRecordContentTask implements SchedulingConfigurer{
                         && task001.getIsDeleted().equals(IsDeleteEnum.N.getKey())
                         && task001.getIsUsed().equals(1)) {
                     log.info("执行动态定时任务: " + LocalDateTime.now().toLocalTime());
-                    dataFacade.executeMrRecordContent();
+                    aMedicalRecordContentFacade.executeMrRecordContent();
                 }
             }
         }, new Trigger() {

+ 3 - 3
src/main/java/com/diagbot/task/MedicalRecordTask.java

@@ -3,6 +3,7 @@ package com.diagbot.task;
 import java.time.LocalDateTime;
 import java.util.Date;
 
+import com.diagbot.facade.AMedicalRecordFacade;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.scheduling.Trigger;
@@ -15,7 +16,6 @@ import org.springframework.scheduling.support.CronTrigger;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.diagbot.entity.SysTaskCron;
 import com.diagbot.enums.IsDeleteEnum;
-import com.diagbot.facade.DataFacade;
 import com.diagbot.facade.SysTaskCronFacade;
 import com.diagbot.util.StringUtil;
 
@@ -32,7 +32,7 @@ public class MedicalRecordTask implements SchedulingConfigurer{
     private SysTaskCron task001 = new SysTaskCron();
 
     @Autowired
-   	private DataFacade dataFacade;
+   	private AMedicalRecordFacade aMedicalRecordFacade;
     
     /**
      * 执行定时任务.
@@ -47,7 +47,7 @@ public class MedicalRecordTask implements SchedulingConfigurer{
                         && task001.getIsDeleted().equals(IsDeleteEnum.N.getKey())
                         && task001.getIsUsed().equals(1)) {
                     log.info("执行动态定时任务: " + LocalDateTime.now().toLocalTime());
-                    dataFacade.executeMrRecord();
+                    aMedicalRecordFacade.executeMrRecord();
                 }
             }
         }, new Trigger() {

+ 3 - 2
src/main/java/com/diagbot/task/MedicalRecordTypeTask.java

@@ -3,6 +3,7 @@ package com.diagbot.task;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.diagbot.entity.SysTaskCron;
 import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.facade.AMedRecordTypeFacade;
 import com.diagbot.facade.DataFacade;
 import com.diagbot.facade.SysTaskCronFacade;
 import com.diagbot.util.StringUtil;
@@ -29,7 +30,7 @@ public class MedicalRecordTypeTask implements SchedulingConfigurer {
     private SysTaskCron task001 = new SysTaskCron();
 
     @Autowired
-    private DataFacade dataFacade;
+    private AMedRecordTypeFacade aMedRecordTypeFacade;
 
     /**
      * 执行定时任务.
@@ -44,7 +45,7 @@ public class MedicalRecordTypeTask implements SchedulingConfigurer {
                         && task001.getIsDeleted().equals(IsDeleteEnum.N.getKey())
                         && task001.getIsUsed().equals(1)) {
                     log.info("执行动态定时任务: " + LocalDateTime.now().toLocalTime());
-                    dataFacade.executeMRType();
+                    aMedRecordTypeFacade.executeMRType();
                 }
             }
         }, new Trigger() {

+ 24 - 56
src/main/java/com/diagbot/util/TZDBConn.java

@@ -28,6 +28,8 @@ public class TZDBConn {
     private static final String URL = getValue("jdbc.url");
     private static final String USERNAME = getValue("jdbc.username");
     private static final String PASSWORD = getValue("jdbc.password");
+
+	public static final Long HOSPITAL_ID=Long.valueOf("3");//1:长兴,2:邵逸夫,3:台州市立医院
     
     private static Connection connection = null;
     private static PreparedStatement sta = null;
@@ -85,6 +87,8 @@ public class TZDBConn {
 			rs=sta.executeQuery();
 		} catch (SQLException e) {
 			e.printStackTrace();
+		}finally {
+			close();
 		}
 		return rs;
 	}
@@ -122,16 +126,15 @@ public class TZDBConn {
 	 * 医生信息
 	 * @return
 	 */
-	public List<BasDoctorInfo> getBasDoctorInfo() {
+	public List<BasDoctorInfo> getBasDoctorInfo(String sql) {
 		List<BasDoctorInfo> basDoctorInfoList=Lists.newLinkedList();
 		TZDBConn dbconn=new TZDBConn();
 		try {
-			String sql="select * from gi_userinfo";
 			rs =dbconn.Query(sql, null);
 			while(rs.next()){
 				BasDoctorInfo basDoctorInfo=new BasDoctorInfo();
 				basDoctorInfo.setDoctorId(rs.getString("YHRYBH"));//医生ID
-				basDoctorInfo.setHospitalId(Long.valueOf("3"));//医院ID
+				basDoctorInfo.setHospitalId(HOSPITAL_ID);//医院ID
 				//basDoctorInfoVO.setDeptId(rs.getString("ZZKSID"));//科室ID
 				basDoctorInfo.setName(rs.getString("YHRYMC"));//医生姓名
 				basDoctorInfo.setProfessor(rs.getString("YHRYZC"));//职称
@@ -149,16 +152,15 @@ public class TZDBConn {
 	 * 从视图中获取医院科室数据,根据修改时间同步数据
 	 * @return
 	 */
-	public List<BasDeptInfo> getDeptInfo() {
+	public List<BasDeptInfo> getDeptInfo(String sql) {
 		List<BasDeptInfo> basDeptInfoList=Lists.newLinkedList();
 		try {
 			TZDBConn dbconn=new TZDBConn();
-			String sql="select * from hi_deptinfo where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
 			ResultSet rs =dbconn.Query(sql, null);
 			while(rs.next()){
 				BasDeptInfo basDeptInfo=new BasDeptInfo();
 				basDeptInfo.setDeptId(rs.getString("ZZKSDM"));//科室编码
-				basDeptInfo.setHospitalId(Long.valueOf("3"));//医院ID
+				basDeptInfo.setHospitalId(HOSPITAL_ID);//医院ID
 				basDeptInfo.setDeptName(rs.getString("ZZKSMC"));//科室名称
 				//basDeptInfoVO.setDeptType(rs.getString("ZZKSLB"));//科室类别
 				basDeptInfo.setSpell(rs.getString("HZSRM1"));//首字母拼音
@@ -176,17 +178,15 @@ public class TZDBConn {
 	 * 病案诊断
 	 * @return
 	 */
-	public List<HomeDiagnoseInfo> getHomeDiagnose(){
+	public List<HomeDiagnoseInfo> getHomeDiagnose(String sql){
 		List<HomeDiagnoseInfo> homeDiagnoseVOList=Lists.newLinkedList();
 		try {
 			TZDBConn dbconn=new TZDBConn();
-			//String sql="select * from br_recdiagnose where CJCXRQ BETWEEN TO_DATE('2020-02-01', 'yyyy-MM-dd') and TO_DATE('2020-04-30', 'yyyy-MM-dd')";
-			String sql="select * from br_recdiagnose where BASYID in (select BASYID from br_rechome where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate())";//今年的数据
 			ResultSet rs =dbconn.Query(sql, null);
 			while(rs.next()){
 				HomeDiagnoseInfo homeDiagnose=new HomeDiagnoseInfo();
 				homeDiagnose.setHomePageId(rs.getString("BASYID"));//病案首页ID
-				homeDiagnose.setHospitalId(Long.valueOf("3"));//医院ID
+				homeDiagnose.setHospitalId(HOSPITAL_ID);//医院ID
 				homeDiagnose.setDiagnoseOrderNo(rs.getString("BAZDXH"));//诊断序号
 				homeDiagnose.setDiagnoseName(rs.getString("ZDJBMC"));//诊断名称
 				homeDiagnose.setDiagnoseType(rs.getString("ZDLBDM"));//诊断类别
@@ -209,19 +209,15 @@ public class TZDBConn {
 	 * 病案手术
 	 * @return
 	 */
-	public List<HomeOperationInfo> getHomeOperation() {
+	public List<HomeOperationInfo> getHomeOperation(String sql) {
 		List<HomeOperationInfo> homeOperationVOList=Lists.newLinkedList();
 		try {
 			TZDBConn dbconn=new TZDBConn();
-			//String sql="select * from br_recoperation where CJCXRQ BETWEEN TO_DATE('2020-02-01', 'yyyy-MM-dd') and TO_DATE('2020-04-30', 'yyyy-MM-dd')";
-			//String sql="select * from br_recoperation where BASYID IN (select BASYID from br_rechome WHERE BRZYID IN (select BRZYID from br_inpatientinfo where ZYKSID IN('1020500','1009100','1030200')))";
-			String sql="select * from br_recoperation where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
-			//String sql="select * from br_recoperation where BASYID in (select BASYID from br_rechome where DateDiff(dd,CJCXRQ,getdate())=1)";
 			ResultSet rs =dbconn.Query(sql, null);
 			while(rs.next()){
 				HomeOperationInfo homeOperationVO=new HomeOperationInfo();
 				homeOperationVO.setHomePageId(rs.getString("BASYID"));//病案首页ID
-				homeOperationVO.setHospitalId(Long.valueOf("3"));//医院ID
+				homeOperationVO.setHospitalId(HOSPITAL_ID);//医院ID
 				homeOperationVO.setOperationOrderNo(rs.getString("BRSSXH"));//手术序号
 				homeOperationVO.setOperationDate(rs.getDate("BRSSRQ"));//手术日期
 				homeOperationVO.setOperationCode(rs.getString("SSDMID"));//手术编码
@@ -248,21 +244,15 @@ public class TZDBConn {
 	 * 从视图获取病案首页信息
 	 * 获取近几个月的数据
 	 */
-	public List<HomePage> getHomePage() {
+	public List<HomePage> getHomePage(String sql) {
 		List<HomePage> homePageList=Lists.newLinkedList();
 		try {
 			TZDBConn dbconn=new TZDBConn();
-			//String sql="select * from br_rechome WHERE DateDiff(dd,CJCXRQ,getdate())>120 AND DateDiff(dd,CJCXRQ,getdate())<=200 AND RYKSID IN('1040200','1050000') and BRZYID IN (select top 2000 BRZYID from br_inpatientinfo where ZYKSID IN('1040200','1050000') order by CJCXRQ desc) ORDER BY CJCXRQ DESC";
-			//String sql="select top 500 * from br_rechome WHERE RYKSID in ('1020500','1009100','1030200') and BRZYID is not NULL ORDER BY CJCXRQ DESC";
-			//String sql="select * from br_rechome WHERE RYKSID in ('1020500','1009100','1030200') and BRZYID is not NULL AND DATEDIFF([month],CJCXRQ,getdate())=6 ORDER BY CJCXRQ desc ";
-			//String sql="select * from br_rechome WHERE BRZYID is not NULL";
-			//String sql="select * from br_rechome where DateDiff(dd,CJCXRQ,getdate())=1";
-			String sql="select * from br_rechome where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
 			ResultSet rs =dbconn.Query(sql, null);
 			while(rs.next()){
 				HomePage homePageVO=new HomePage();
 				homePageVO.setHomePageId(rs.getString("BASYID"));//病案首页ID
-				homePageVO.setHospitalId(Long.valueOf("3"));//医院ID
+				homePageVO.setHospitalId(HOSPITAL_ID);//医院ID
 				homePageVO.setBehospitalCode(rs.getString("BRZYID"));//病人住院序号
 				homePageVO.setHospitalCode(rs.getString("ZZJGID"));//组织机构id
 				homePageVO.setHospitalName(rs.getString("ZZJGMC"));//医疗机构名称
@@ -531,20 +521,15 @@ public class TZDBConn {
 	 * 获取病历信息
 	 * @return
 	 */
-	public List<BehospitalInfo> getBehospitalInfo() {
+	public List<BehospitalInfo> getBehospitalInfo(String sql) {
 		List<BehospitalInfo> behospitalInfoList=Lists.newLinkedList();
 		try {
 			TZDBConn dbconn=new TZDBConn();
-			//String sql="select * from br_inpatientinfo where CJCXRQ BETWEEN TO_DATE('2020-01-01', 'yyyy-MM-dd') and TO_DATE('2020-01-20', 'yyyy-MM-dd')";
-			//String sql="select top 2000 * from br_inpatientinfo where ZYKSID IN('1040200','1050000') order by CJCXRQ desc";
-			String sql="select * from br_inpatientinfo where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
-			//String sql="select * from br_inpatientinfo where DateDiff(yy,CJCXRQ,getdate())=0 ORDER BY CJCXRQ desc ";
-
 			ResultSet rs =dbconn.Query(sql, null);
 			while(rs.next()){
 				BehospitalInfo behospitalInfo=new BehospitalInfo();
 				behospitalInfo.setBehospitalCode(rs.getString("BRZYID"));//病人住院ID
-				behospitalInfo.setHospitalId(Long.valueOf("3"));//医院ID
+				behospitalInfo.setHospitalId(HOSPITAL_ID);//医院ID
 				behospitalInfo.setName(rs.getString("BRDAXM"));//姓名
 				behospitalInfo.setSex(rs.getString("BRDAXB").equals("M")?"男":"女");//性别
 				behospitalInfo.setBirthday(rs.getDate("BRCSRQ"));//出生日期
@@ -577,19 +562,15 @@ public class TZDBConn {
 	 * 从视图中获取医嘱信息
 	 * @return
 	 */
-	public List<DoctorAdvice> getDoctorAdvice(){
+	public List<DoctorAdvice> getDoctorAdvice(String sql){
 		List<DoctorAdvice> doctorAdviceList=Lists.newLinkedList();
-		
 		try {
 			TZDBConn dbconn=new TZDBConn();
-			//String sql="select * from br_doctadvice where CJCXRQ BETWEEN TO_DATE('2020-03-01', 'yyyy-MM-dd') and TO_DATE('2020-03-30', 'yyyy-MM-dd')";
-			//String sql="select top 2000 * from br_doctadvice order by CJCXRQ desc";
-			String sql="select * from br_doctadvice where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
 			ResultSet rs =dbconn.Query(sql, null);
 			while(rs.next()){
 				DoctorAdvice doctorAdviceVO=new DoctorAdvice();
 				doctorAdviceVO.setDoctorAdviceId(rs.getString("BRYZID"));//病人医嘱ID
-				doctorAdviceVO.setHospitalId(Long.valueOf("3"));//医院ID
+				doctorAdviceVO.setHospitalId(HOSPITAL_ID);//医院ID
 				doctorAdviceVO.setBehospitalCode(rs.getString("BRZYID"));//病人ID
 				doctorAdviceVO.setOrderDoctorName(rs.getString("YSKDPB"));//医生开单判别
 				doctorAdviceVO.setFrequency(rs.getString("YZPLPB"));//医嘱频率判别
@@ -625,20 +606,15 @@ public class TZDBConn {
 	 * 从视图中获取病历记录
 	 * @return
 	 */
-	public List<MedicalRecord> getMedicalRecord(){
+	public List<MedicalRecord> getMedicalRecord(String sql){
 		List<MedicalRecord> medicalRecordList=Lists.newLinkedList();
 		try {
 			TZDBConn dbconn=new TZDBConn();
-			//String sql="select * from ar_medirecclass where CJCXRQ BETWEEN TO_DATE('2020-02-01', 'yyyy-MM-dd') and TO_DATE('2020-04-30', 'yyyy-MM-dd')";
-			//String sql="select * from mr_medicalrecords  where DateDiff(dd,CJCXRQ,getdate())=1";
-			String sql="select * from mr_medicalrecords  where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
-
-			//String sql="select * from mr_medicalrecords  where BRZYID IN (select top 2000 BRZYID from br_inpatientinfo where ZYKSID IN('1040200','1050000') order by CJCXRQ desc)";
 			ResultSet rs =dbconn.Query(sql, null);
 			while(rs.next()){
 				MedicalRecord medicalRecord=new MedicalRecord();
 				medicalRecord.setRecId(rs.getString("BLJLID"));
-				medicalRecord.setHospitalId(Long.valueOf("3"));//医院ID
+				medicalRecord.setHospitalId(HOSPITAL_ID);//医院ID
 				medicalRecord.setBehospitalCode(rs.getString("BRZYID"));//病人住院ID
 				medicalRecord.setOrgCode(rs.getString("ZZJGDM"));//组织机构代码
 				medicalRecord.setRecTypeId(rs.getString("BLMBID"));//对应his模板ID
@@ -659,20 +635,14 @@ public class TZDBConn {
 	 * 从视图中获取文书内容
 	 * @return
 	 */
-	public List<MedicalRecordContent> getMedicalRecordContent(){
+	public List<MedicalRecordContent> getMedicalRecordContent(String sql){
 		List<MedicalRecordContent> mrContentList=Lists.newLinkedList();
 		try {
 			TZDBConn dbconn=new TZDBConn();
-			//String sql="select * from mr_mrcontent where CJCXRQ BETWEEN TO_DATE('2020-02-01', 'yyyy-MM-dd') and TO_DATE('2020-02-20', 'yyyy-MM-dd')";
-			//String sql="select * from mr_mrcontent where DateDiff(dd,CJCXRQ,getdate())=0";
-			//String sql="select * from mr_mrcontent WHERE BLJLID in (select BLJLID from mr_medicalrecords  where BRZYID IN (select BRZYID from br_inpatientinfo where ZYKSID IN('1020500','1009100','1030200')))";
-			//String sql="select * from mr_mrcontent WHERE BLJLID in (select BLJLID from mr_medicalrecords  where BRZYID IN (select BRZYID from br_inpatientinfo where ZYKSID IN('1020500','1009100','1030200')))";
-			String sql="select * from mr_mrcontent  where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
-			//String sql="select * from mr_mrcontent b where b.BLJLID in (select a.BLJLID from mr_medicalrecords a where a.BRZYID in ('619479_2','602341_1','529248_2','324515_4','260869_24','643622_1','514423_4','10002707_4','638897_1','429701_3','583262_1','466126_2','640015_1'))";
 			ResultSet rs =dbconn.Query(sql, null);
 			while(rs.next()){
 				MedicalRecordContent mrContent=new MedicalRecordContent();
-				mrContent.setHospitalId(Long.valueOf("3"));
+				mrContent.setHospitalId(HOSPITAL_ID);
 				mrContent.setRecId(rs.getString("BLJLID"));
 				//mrContent.setHtmlText(rs.getString("HTMLSJ"));
 				mrContent.setXmlText(rs.getString("BLJLNR"));
@@ -689,17 +659,15 @@ public class TZDBConn {
 	 * 从视图中获取文书类型
 	 * @return
 	 */
-	public List<MedRecordType> getMedicalRecordType(){
+	public List<MedRecordType> getMedicalRecordType(String sql){
 		List<MedRecordType> mrTypeList=Lists.newLinkedList();
 		try {
 			TZDBConn dbconn=new TZDBConn();
-			//String sql="select * from ar_medirecclass where CJCXRQ BETWEEN TO_DATE('2020-02-01', 'yyyy-MM-dd') and TO_DATE('2020-02-20', 'yyyy-MM-dd')";
-			String sql="select * from ar_medirecclass where SFZFPB='1' and cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
 			ResultSet rs =dbconn.Query(sql, null);
 			while(rs.next()){
 				MedRecordType mrType=new MedRecordType();
 				mrType.setTypeId(rs.getString("BLLBID"));
-				mrType.setHospitalId(Long.valueOf("3"));
+				mrType.setHospitalId(HOSPITAL_ID);
 				mrType.setTypeName(rs.getString("BLLBMC"));
 				mrType.setParentTypeId(rs.getString("SJLBID"));
 				mrType.setObjName(rs.getString("BLLBFW"));

+ 44 - 0
src/main/java/com/diagbot/vo/data/ABasDeptInfoVO.java

@@ -0,0 +1,44 @@
+package com.diagbot.vo.data;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.time.LocalDateTime;
+
+@Getter
+@Setter
+public class ABasDeptInfoVO {
+    /**
+     * 科室编码(HIS导入)
+     */
+    private String deptId;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    private String parentDeptId;
+
+    /**
+     * 科室名称
+     */
+    private String deptName;
+
+    /**
+     * 科室类别
+     */
+    private String deptType;
+
+    /**
+     * 首字母拼音
+     */
+    private String spell;
+
+    /**
+     * 区域类别(门诊、工作站、住院等)
+     */
+    private String station;
+
+
+}

+ 34 - 0
src/main/java/com/diagbot/vo/data/ABasDoctorInfoVO.java

@@ -0,0 +1,34 @@
+package com.diagbot.vo.data;
+
+import lombok.Data;
+
+import java.time.LocalDateTime;
+
+@Data
+public class ABasDoctorInfoVO {
+    /**
+     * HIS导入的医生ID
+     */
+    private String doctorId;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 医院导入科室ID
+     */
+    private String deptId;
+
+    /**
+     * 姓名
+     */
+    private String name;
+
+    /**
+     * 职称
+     */
+    private String professor;
+
+}

+ 134 - 0
src/main/java/com/diagbot/vo/data/ABehospitalInfoVO.java

@@ -0,0 +1,134 @@
+package com.diagbot.vo.data;
+
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+public class ABehospitalInfoVO {
+    /**
+     * 病人住院ID
+     */
+    private String behospitalCode;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 姓名
+     */
+    private String name;
+
+    /**
+     * 性别(男,女)
+     */
+    private String sex;
+
+    /**
+     * 出生日期
+     */
+    private Date birthday;
+
+    /**
+     * 档案号
+     */
+    private String fileCode;
+
+    /**
+     * 质控类型
+     */
+    private Long qcTypeId;
+
+    /**
+     * 病区编码
+     */
+    private String wardCode;
+
+    /**
+     * 病区名称
+     */
+    private String wardName;
+
+    /**
+     * 住院科室ID
+     */
+    private String behDeptId;
+
+    /**
+     * 住院科室名称
+     */
+    private String behDeptName;
+
+    /**
+     * 床位号
+     */
+    private String bedCode;
+
+    /**
+     * 床位名称
+     */
+    private String bedName;
+
+    /**
+     * 医保类别
+     */
+    private String insuranceName;
+
+    /**
+     * 职业
+     */
+    private String jobType;
+
+    /**
+     * 入院时间
+     */
+    private Date behospitalDate;
+
+    /**
+     * 出院时间
+     */
+    private Date leaveHospitalDate;
+
+    /**
+     * 疾病ICD编码
+     */
+    private String diagnoseIcd;
+
+    /**
+     * 疾病名称
+     */
+    private String diagnose;
+
+    /**
+     * 住院医生ID
+     */
+    private String behDoctorId;
+
+    /**
+     * 住院医生姓名
+     */
+    private String behDoctorName;
+
+    /**
+     * 主治医生ID
+     */
+    private String doctorId;
+
+    /**
+     * 主治医生姓名
+     */
+    private String doctorName;
+
+    /**
+     * 主任医生ID
+     */
+    private String directorDoctorId;
+
+    /**
+     * 主任医生姓名
+     */
+    private String directorDoctorName;
+
+}

+ 5 - 6
src/main/java/com/diagbot/dto/FDoctorAdviceDTO.java

@@ -1,13 +1,12 @@
-package com.diagbot.dto;
-
-import java.util.Date;
+package com.diagbot.vo.data;
 
 import lombok.Data;
 
-@Data
-public class FDoctorAdviceDTO {
+import java.util.Date;
 
-	/**
+@Data
+public class ADoctorAdviceVO {
+    /**
      * 病人医嘱ID
      */
     private String doctorAdviceId;

+ 41 - 0
src/main/java/com/diagbot/vo/data/AHomeDiagnoseVO.java

@@ -0,0 +1,41 @@
+package com.diagbot.vo.data;
+
+import lombok.Data;
+
+@Data
+public class AHomeDiagnoseVO {
+    /**
+     * 病案首页ID
+     */
+    private String homePageId;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 诊断序号
+     */
+    private String diagnoseOrderNo;
+
+    /**
+     * 诊断类别(主要诊断、其他诊断)
+     */
+    private String diagnoseType;
+
+    /**
+     * 诊断判别(主、次)
+     */
+    private String diagnoseTypeShort;
+
+    private String diagnoseName;
+
+    private String behospitalType;
+
+    private String leaveHospitalType;
+
+    private String pathologyDiagnose;
+
+    private String icdCode;
+}

+ 78 - 0
src/main/java/com/diagbot/vo/data/AHomeOperationVO.java

@@ -0,0 +1,78 @@
+package com.diagbot.vo.data;
+
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+public class AHomeOperationVO {
+    /**
+     * 病案首页ID
+     */
+    private String homePageId;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 手术序号
+     */
+    private String operationOrderNo;
+
+    /**
+     * 手术日期
+     */
+    private Date operationDate;
+
+    /**
+     * 手术编码
+     */
+    private String operationCode;
+
+    /**
+     * 手术医生ID
+     */
+    private String operationDoctorId;
+
+    /**
+     * 一助医生ID
+     */
+    private String firstAssistantId;
+
+    /**
+     * 二助医生ID
+     */
+    private String secondAssistantId;
+
+    /**
+     * 切口等级
+     */
+    private String cutLevel;
+
+    /**
+     * 愈合等级
+     */
+    private String healingLevel;
+
+    /**
+     * 手术名称
+     */
+    private String operationName;
+
+    /**
+     * 手术级别
+     */
+    private String operationLevel;
+
+    /**
+     * 麻醉方式(全麻、局麻、静脉麻醉)
+     */
+    private String anaesthesiaName;
+
+    /**
+     * 拟手术名称
+     */
+    private String shamOperationName;
+}

+ 5 - 10
src/main/java/com/diagbot/dto/FHomePageDTO.java

@@ -1,12 +1,12 @@
-package com.diagbot.dto;
-
-import java.util.Date;
+package com.diagbot.vo.data;
 
 import lombok.Data;
 
+import java.util.Date;
+
 @Data
-public class FHomePageDTO {
-	/**
+public class AHomePageVO {
+    /**
      * 病案首页编号
      */
     private String homePageId;
@@ -635,9 +635,4 @@ public class FHomePageDTO {
      * 转归情况
      */
     private String returnToType;
-
-    /**
-     * 记录创建时间
-     */
-    private Date gmtCreate;
 }

+ 2 - 2
src/main/java/com/diagbot/vo/FMedicalRecordContentVO.java

@@ -1,4 +1,4 @@
-package com.diagbot.vo;
+package com.diagbot.vo.data;
 
 import java.sql.Blob;
 import java.util.Date;
@@ -6,7 +6,7 @@ import java.util.Date;
 import lombok.Data;
 
 @Data
-public class FMedicalRecordContentVO {
+public class AMedicalRecordContentVO {
 	/**
      * 病历ID
      */

+ 2 - 2
src/main/java/com/diagbot/vo/FMedicalRecordTypeVO.java

@@ -1,9 +1,9 @@
-package com.diagbot.vo;
+package com.diagbot.vo.data;
 
 import lombok.Data;
 
 @Data
-public class FMedicalRecordTypeVO {
+public class AMedicalRecordTypeVO {
 	/**
      * 类别ID
      */

+ 7 - 6
src/main/java/com/diagbot/vo/FMedicalRecordVO.java

@@ -1,11 +1,12 @@
-package com.diagbot.vo;
+package com.diagbot.vo.data;
 
-import java.util.Date;
+import java.util.List;
 
 import lombok.Data;
 
 @Data
-public class FMedicalRecordVO {
+public class AMedicalRecordVO {
+
 	private String recId;
 
     /**
@@ -37,9 +38,9 @@ public class FMedicalRecordVO {
      * 病历标题
      */
     private String recTitle;
-    
+
     /**
-     * 记录创建时间
+     * 病历内容
      */
-    private Date gmtCreate;
+    private List<AMedicalRecordContentVO> contents;
 }

+ 120 - 1
src/main/java/com/diagbot/web/DataController.java

@@ -1,13 +1,132 @@
 package com.diagbot.web;
+import com.diagbot.annotation.SysLogger;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.dto.data.*;
+import com.diagbot.facade.*;
+import com.diagbot.vo.data.*;
+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 io.swagger.annotations.Api;
 
+import java.util.List;
+import java.util.Map;
+
 @RestController
 @RequestMapping("/qc/data")
-@Api(value = "病案首页API", tags = { "病案首页API" })
+@Api(value = "对接接口API", tags = { "对接接口API" })
 public class DataController {
 
+    @Autowired
+    private ABasDoctorInfoFacade aBasDoctorInfoFacade;
+
+    @Autowired
+    private ABasDeptInfoFacade aBasDeptInfoFacade;
+
+    @Autowired
+    private AMedRecordTypeFacade aMedRecordTypeFacade;
+
+    @Autowired
+    private ABehospitalInfoFacade aBehospitalInfoFacade;
+
+    @Autowired
+    private ADoctorAdviceFacade aDoctorAdviceFacade;
+
+    @Autowired
+    private AHomePageFacade aHomePageFacade;
+
+    @Autowired
+    private AHomeDiagnoseInfoFacade aHomeDiagnoseInfoFacade;
+
+    @Autowired
+    private AHomeOperationInfoFacade aHomeOperationInfoFacade;
+
+    @Autowired
+    private AMedicalRecordFacade aMedicalRecordFacade;
+
+    @Autowired
+    private AMedicalRecordContentFacade aMedicalRecordContentFacade;
+
+    @ApiOperation(value = "数据引擎-获取医院所有在职医生的基本信息")
+    @PostMapping("/sendDoctorInfos")
+    @SysLogger("sendDoctorInfos")
+    public RespDTO<List<ABasDoctorInfoDTO>> sendDoctorInfos(@RequestBody List<ABasDoctorInfoVO> list){
+        return RespDTO.onSuc(aBasDoctorInfoFacade.executeDoctor(list));
+    }
+
+    @ApiOperation(value = "数据引擎-获取医院所有有效科室的基本信息")
+    @PostMapping("/sendDeptInfos")
+    @SysLogger("sendDeptInfos")
+    public RespDTO<List<ABasDeptInfoDTO>> sendDeptInfos(@RequestBody List<ABasDeptInfoVO> list){
+        return RespDTO.onSuc(aBasDeptInfoFacade.executeDept(list));
+    }
+
+    @ApiOperation(value = "数据引擎-获取医院所有文书模板基本信息")
+    @PostMapping("/sendRecordTypes")
+    @SysLogger("sendRecordTypes")
+    public RespDTO<List<AMedicalRecordTypeDTO>> sendRecordTypes(@RequestBody List<AMedicalRecordTypeVO> list){
+        return RespDTO.onSuc(aMedRecordTypeFacade.executeMRType(list));
+    }
+
+    @ApiOperation(value = "数据引擎-获取医院病人住院记录信息")
+    @PostMapping("/sendPatientInfo")
+    @SysLogger("sendPatientInfo")
+    public RespDTO<List<ABehospitalInfoDTO>> sendPatientInfo(@RequestBody List<ABehospitalInfoVO> list){
+        return RespDTO.onSuc(aBehospitalInfoFacade.executeBehospital(list));
+    }
+
+    @ApiOperation(value = "数据引擎-获取医院医生医嘱信息")
+    @PostMapping("/sendDoctorAdvice")
+    @SysLogger("sendDoctorAdvice")
+    public RespDTO<List<ADoctorAdviceDTO>> sendDoctorAdvice(@RequestBody List<ADoctorAdviceVO> list){
+        return RespDTO.onSuc(aDoctorAdviceFacade.executeDoctorAdvice(list));
+    }
+
+    @ApiOperation(value = "数据引擎-获取病案首页")
+    @PostMapping("/sendHomePage")
+    @SysLogger("sendHomePage")
+    public RespDTO<List<AHomePageDTO>> sendHomePage(@RequestBody List<AHomePageVO> list){
+        return RespDTO.onSuc(aHomePageFacade.executeHomePage(list));
+    }
+
+    @ApiOperation(value = "数据引擎-获取病案首页诊断")
+    @PostMapping("/sendHomeDiagnose")
+    @SysLogger("sendHomeDiagnose")
+    public RespDTO<List<AHomeDiagnoseDTO>> sendHomeDiagnose(@RequestBody List<AHomeDiagnoseVO> list){
+        return RespDTO.onSuc(aHomeDiagnoseInfoFacade.executeHomeDiagnose(list));
+    }
+
+    @ApiOperation(value = "数据引擎-获取病案首页手术")
+    @PostMapping("/sendHomeOperation")
+    @SysLogger("sendHomeOperation")
+    public RespDTO<List<AHomeOperationDTO>> sendHomeOperation(@RequestBody List<AHomeOperationVO> list){
+        return RespDTO.onSuc(aHomeOperationInfoFacade.executeHomeOperation(list));
+    }
+
+    @ApiOperation(value = "数据引擎-获取病历记录")
+    @PostMapping("/sendMedicalRecord")
+    @SysLogger("sendMedicalRecord")
+    public RespDTO<List<AMedicalRecordDTO>> sendMedicalRecord(@RequestBody List<AMedicalRecordVO> list){
+        return RespDTO.onSuc(aMedicalRecordFacade.executeMrRecord(list));
+    }
+
+    @ApiOperation(value = "数据引擎-获取病历内容")
+    @PostMapping("/sendMrContent")
+    @SysLogger("sendMrContent")
+    public RespDTO<List<AMedicalRecordContentDTO>> sendMrContent(@RequestBody List<AMedicalRecordContentVO> list){
+        return RespDTO.onSuc(aMedicalRecordContentFacade.executeMrRecordContent(list));
+    }
+
+    @ApiOperation(value = "页面推送-获取病历记录")
+    @PostMapping("/sendMrView")
+    @SysLogger("sendMrView")
+    public RespDTO<Map<String,Object>> sendMrView(@RequestBody List<AMedicalRecordVO> list){
+        return RespDTO.onSuc(aMedicalRecordFacade.executeMrRecordView(list));
+    }
+
 }

+ 1 - 1
src/main/resources/jdbc.properties

@@ -5,7 +5,7 @@
 #jdbc.password=root
 
 #jdbc.driverClassName=oracle.jdbc.OracleDriver
-#jdbc.url=jdbc:oracle:thin:@192.168.2.246:1521:ORCL
+#jdbc.url=jdbc:oracle:thin:@192.168.2.246:1521/ORCL
 #jdbc.username=ETRACKMRQC
 #jdbc.password=ETRACKMRQC