Sfoglia il codice sorgente

Merge branch 'his/tzmh' into his/common

# Conflicts:
#	src/main/java/com/diagbot/facade/data/ABasDeptInfoFacade.java
#	src/main/java/com/diagbot/facade/data/ABasDoctorInfoFacade.java
#	src/main/java/com/diagbot/facade/data/ABehospitalInfoFacade.java
#	src/main/java/com/diagbot/facade/data/ADoctorAdviceFacade.java
#	src/main/java/com/diagbot/facade/data/AHomeDiagnoseInfoFacade.java
#	src/main/java/com/diagbot/facade/data/AHomeOperationInfoFacade.java
#	src/main/java/com/diagbot/facade/data/AHomePageFacade.java
#	src/main/java/com/diagbot/facade/data/AMedRecordTypeFacade.java
#	src/main/java/com/diagbot/facade/data/AMedicalRecordContentFacade.java
#	src/main/java/com/diagbot/facade/data/AMedicalRecordFacade.java
#	src/main/java/com/diagbot/mapper/BasDoctorInfoMapper.java
#	src/main/java/com/diagbot/service/BasDoctorInfoService.java
#	src/main/java/com/diagbot/service/impl/BasDoctorInfoServiceImpl.java
#	src/main/java/com/diagbot/service/impl/HomeDiagnoseInfoServiceImpl.java
#	src/main/java/com/diagbot/service/impl/HomeOperationInfoServiceImpl.java
#	src/main/java/com/diagbot/service/impl/MedicalRecordContentServiceImpl.java
#	src/main/java/com/diagbot/util/TZDBConn.java
#	src/main/resources/application-local.yml
#	src/main/resources/jdbc.properties
#	src/main/resources/mapper/DoctorAdviceMapper.xml
#	src/main/resources/mapper/HomePageMapper.xml
lantone 5 anni fa
parent
commit
e3c3fd250f
54 ha cambiato i file con 1394 aggiunte e 117 eliminazioni
  1. 13 0
      pom.xml
  2. 14 0
      src/main/java/com/diagbot/config/ResourceServerConfigurer.java
  3. 13 0
      src/main/java/com/diagbot/config/security/UrlAccessDecisionManager.java
  4. 22 13
      src/main/java/com/diagbot/entity/MedCrisisInfo.java
  5. 21 0
      src/main/java/com/diagbot/facade/BasDoctorInfoFacade.java
  6. 41 0
      src/main/java/com/diagbot/facade/DataFacade.java
  7. 2 0
      src/main/java/com/diagbot/facade/DoctorAdviceFacade.java
  8. 3 0
      src/main/java/com/diagbot/facade/HomeDiagnoseInfoFacade.java
  9. 9 0
      src/main/java/com/diagbot/facade/HomeOperationInfoFacade.java
  10. 8 1
      src/main/java/com/diagbot/facade/HomePageFacade.java
  11. 13 0
      src/main/java/com/diagbot/facade/MedicalRecordContentFacade.java
  12. 1 0
      src/main/java/com/diagbot/facade/MedicalRecordFacade.java
  13. 9 0
      src/main/java/com/diagbot/facade/MedicalRecordTypeFacade.java
  14. 21 0
      src/main/java/com/diagbot/facade/data/ABasDeptInfoFacade.java
  15. 21 0
      src/main/java/com/diagbot/facade/data/ABasDoctorInfoFacade.java
  16. 23 0
      src/main/java/com/diagbot/facade/data/ABehospitalInfoFacade.java
  17. 19 0
      src/main/java/com/diagbot/facade/data/ADoctorAdviceFacade.java
  18. 15 0
      src/main/java/com/diagbot/facade/data/AHomeDiagnoseInfoFacade.java
  19. 14 0
      src/main/java/com/diagbot/facade/data/AHomeOperationInfoFacade.java
  20. 14 0
      src/main/java/com/diagbot/facade/data/AHomePageFacade.java
  21. 12 0
      src/main/java/com/diagbot/facade/data/AMedRecordTypeFacade.java
  22. 13 0
      src/main/java/com/diagbot/facade/data/AMedicalRecordContentFacade.java
  23. 63 2
      src/main/java/com/diagbot/facade/data/AMedicalRecordFacade.java
  24. 0 2
      src/main/java/com/diagbot/mapper/BasDoctorInfoMapper.java
  25. 6 0
      src/main/java/com/diagbot/mapper/BehospitalInfoMapper.java
  26. 4 2
      src/main/java/com/diagbot/mapper/MedCrisisInfoMapper.java
  27. 2 2
      src/main/java/com/diagbot/mapper/QcTypeMapper.java
  28. 1 3
      src/main/java/com/diagbot/service/BasDoctorInfoService.java
  29. 2 2
      src/main/java/com/diagbot/service/QcTypeService.java
  30. 0 1
      src/main/java/com/diagbot/service/impl/BasDoctorInfoServiceImpl.java
  31. 4 0
      src/main/java/com/diagbot/service/impl/BehospitalInfoServiceImpl.java
  32. 0 1
      src/main/java/com/diagbot/service/impl/HomeDiagnoseInfoServiceImpl.java
  33. 0 1
      src/main/java/com/diagbot/service/impl/HomeOperationInfoServiceImpl.java
  34. 6 2
      src/main/java/com/diagbot/service/impl/MedCrisisInfoServiceImpl.java
  35. 0 1
      src/main/java/com/diagbot/service/impl/MedicalRecordContentServiceImpl.java
  36. 10 0
      src/main/java/com/diagbot/service/impl/QcTypeServiceImpl.java
  37. 69 0
      src/main/java/com/diagbot/task/BasDeptInfoTask.java
  38. 68 0
      src/main/java/com/diagbot/task/BasDoctorInfoTask.java
  39. 68 0
      src/main/java/com/diagbot/task/BehospitalInfoTask.java
  40. 69 0
      src/main/java/com/diagbot/task/DoctorAdviceTask.java
  41. 68 0
      src/main/java/com/diagbot/task/HomeDiagnoseInfoTask.java
  42. 69 0
      src/main/java/com/diagbot/task/HomeOperationInfoTask.java
  43. 68 0
      src/main/java/com/diagbot/task/HomePageTask.java
  44. 66 0
      src/main/java/com/diagbot/task/MedCrisisTask.java
  45. 69 0
      src/main/java/com/diagbot/task/MedicalRecordContentTask.java
  46. 69 0
      src/main/java/com/diagbot/task/MedicalRecordTask.java
  47. 66 0
      src/main/java/com/diagbot/task/MedicalRecordTypeTask.java
  48. 9 4
      src/main/java/com/diagbot/util/TZDBConn.java
  49. 1 1
      src/main/resources/jdbc.properties
  50. 84 0
      src/main/resources/mapper/BehospitalInfoMapper.xml
  51. 75 75
      src/main/resources/mapper/DoctorAdviceMapper.xml
  52. 2 4
      src/main/resources/mapper/HomePageMapper.xml
  53. 54 0
      src/main/resources/mapper/MedCrisisInfoMapper.xml
  54. 1 0
      src/main/resources/mapper/MedicalRecordMapper.xml

+ 13 - 0
pom.xml

@@ -183,6 +183,19 @@
             <groupId>org.apache.commons</groupId>
             <artifactId>commons-pool2</artifactId>
         </dependency>
+       
+       <dependency>
+	      <groupId>com.oracle</groupId>
+	      <artifactId>ojdbc6</artifactId>
+	      <version>11.2.0.3</version>
+	    </dependency>
+    
+    	<dependency>
+			<groupId>com.microsoft.sqlserver</groupId>
+			<artifactId>mssql-jdbc</artifactId>
+			<version>6.2.0.jre8</version>
+			<scope>runtime</scope>
+		</dependency>
 
         <dependency>
             <groupId>io.github.lvyahui8</groupId>

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

@@ -44,6 +44,20 @@ public class ResourceServerConfigurer extends ResourceServerConfigurerAdapter {
                 .antMatchers("/oauth/token").permitAll()
                 .antMatchers("/oauth/check_token").permitAll()
                 .antMatchers("/cache/clear").permitAll()
+                .antMatchers("/qc/mode/getMenu").permitAll()
+                .antMatchers("/qc/data/sendDoctorInfos").permitAll()
+                .antMatchers("/qc/data/sendDeptInfos").permitAll()
+                .antMatchers("/qc/data/sendRecordTypes").permitAll()
+                .antMatchers("/qc/data/sendMrRecordIng").permitAll()
+                .antMatchers("/qc/data/sendMrContent").permitAll()
+                .antMatchers("/qc/data/sendMrRecord").permitAll()
+                .antMatchers("/qc/data/sendPatientInfo").permitAll()
+                .antMatchers("/qc/data/sendDoctorAdvice").permitAll()
+                .antMatchers("/qc/data/sendHomePageIng").permitAll()
+                .antMatchers("/qc/data/sendHomePage").permitAll()
+                .antMatchers("/qc/data/sendHomeDiagnose").permitAll()
+                .antMatchers("/qc/data/sendHomeOperation").permitAll()
+                .antMatchers("/qc/data/sendCrisis").permitAll()
                 .antMatchers("/qc/behospitalInfo/execule").permitAll()
                 .antMatchers("/qc/behospitalInfo/analyze_rpc").permitAll()
                 .antMatchers("/qc/behospitalInfo/analyze_api").permitAll()

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

@@ -113,6 +113,19 @@ public class UrlAccessDecisionManager implements AccessDecisionManager {
                 || matchers("/qc/dataimport/import", request)
                 || matchers("/qc/dataimport/dataimportPrepare", request)
                 || matchers("/qc/dataimport/test", request)
+                || matchers("/qc/data/sendDoctorInfos", request)
+                || matchers("/qc/data/sendDeptInfos", request)
+                || matchers("/qc/data/sendRecordTypes", request)
+                || matchers("/qc/data/sendMrRecordIng", request)
+                || matchers("/qc/data/sendMrContent", request)
+                || matchers("/qc/data/sendMrRecord", request)
+                || matchers("/qc/data/sendPatientInfo", request)
+                || matchers("/qc/data/sendDoctorAdvice", request)
+                || matchers("/qc/data/sendHomePageIng", request)
+                || matchers("/qc/data/sendHomePage", request)
+                || matchers("/qc/data/sendHomeDiagnose", request)
+                || matchers("/qc/data/sendHomeOperation", request)
+                || matchers("/qc/data/sendCrisis", request)
                 || matchers("/", request)) {
             return true;
         }

+ 22 - 13
src/main/java/com/diagbot/entity/MedCrisisInfo.java

@@ -1,8 +1,14 @@
 package com.diagbot.entity;
 
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
 import java.time.LocalDate;
 import java.time.LocalDateTime;
 import java.io.Serializable;
+import java.util.Date;
 
 /**
  * <p>
@@ -10,12 +16,15 @@ import java.io.Serializable;
  * </p>
  *
  * @author zhoutg
- * @since 2020-06-02
+ * @since 2020-05-28
  */
+@TableName("med_crisis_info")
+@Data
 public class MedCrisisInfo implements Serializable {
 
     private static final long serialVersionUID = 1L;
 
+    @TableId(value = "rec_id",type = IdType.INPUT)
     private String recId;
 
     /**
@@ -91,12 +100,12 @@ public class MedCrisisInfo implements Serializable {
     /**
      * 送检时间
      */
-    private LocalDate sendDate;
+    private Date sendDate;
 
     /**
      * 报告时间
      */
-    private LocalDate repDate;
+    private Date repDate;
 
     /**
      * 是否删除,N:未删除,Y:删除
@@ -106,12 +115,12 @@ public class MedCrisisInfo implements Serializable {
     /**
      * 记录创建时间
      */
-    private LocalDateTime gmtCreate;
+    private Date gmtCreate;
 
     /**
      * 记录修改时间,如果时间是1970年则表示纪录未修改
      */
-    private LocalDateTime gmtModified;
+    private Date gmtModified;
 
     /**
      * 创建人,0表示无创建人值
@@ -228,18 +237,18 @@ public class MedCrisisInfo implements Serializable {
     public void setCrisisLowerValue(String crisisLowerValue) {
         this.crisisLowerValue = crisisLowerValue;
     }
-    public LocalDate getSendDate() {
+    public Date getSendDate() {
         return sendDate;
     }
 
-    public void setSendDate(LocalDate sendDate) {
+    public void setSendDate(Date sendDate) {
         this.sendDate = sendDate;
     }
-    public LocalDate getRepDate() {
+    public Date getRepDate() {
         return repDate;
     }
 
-    public void setRepDate(LocalDate repDate) {
+    public void setRepDate(Date repDate) {
         this.repDate = repDate;
     }
     public String getIsDeleted() {
@@ -249,18 +258,18 @@ public class MedCrisisInfo implements Serializable {
     public void setIsDeleted(String isDeleted) {
         this.isDeleted = isDeleted;
     }
-    public LocalDateTime getGmtCreate() {
+    public Date getGmtCreate() {
         return gmtCreate;
     }
 
-    public void setGmtCreate(LocalDateTime gmtCreate) {
+    public void setGmtCreate(Date gmtCreate) {
         this.gmtCreate = gmtCreate;
     }
-    public LocalDateTime getGmtModified() {
+    public Date getGmtModified() {
         return gmtModified;
     }
 
-    public void setGmtModified(LocalDateTime gmtModified) {
+    public void setGmtModified(Date gmtModified) {
         this.gmtModified = gmtModified;
     }
     public String getCreator() {

+ 21 - 0
src/main/java/com/diagbot/facade/BasDoctorInfoFacade.java

@@ -0,0 +1,21 @@
+package com.diagbot.facade;
+
+import java.util.List;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import com.diagbot.entity.BasDoctorInfo;
+import com.diagbot.service.impl.BasDoctorInfoServiceImpl;
+
+@Component
+public class BasDoctorInfoFacade extends BasDoctorInfoServiceImpl {
+	
+	@Autowired
+	private BasDoctorInfoServiceImpl basDoctorInfoServiceImpl;
+	
+	@Autowired
+	private DataFacade dataFacade;
+	
+	
+}

+ 41 - 0
src/main/java/com/diagbot/facade/DataFacade.java

@@ -0,0 +1,41 @@
+package com.diagbot.facade;
+
+import com.diagbot.facade.data.*;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+@Component
+public class DataFacade {
+    @Autowired
+    private ABasDeptInfoFacade aBasDeptInfoFacade;
+
+    @Autowired
+    private ABasDoctorInfoFacade aBasDoctorInfoFacade;
+
+    @Autowired
+    private AHomePageFacade aHomePageFacade;
+
+    @Autowired
+    private AHomeDiagnoseInfoFacade aHomeDiagnoseInfoFacade;
+
+    @Autowired
+    private AHomeOperationInfoFacade aHomeOperationInfoFacade;
+
+    @Autowired
+    private AMedRecordTypeFacade aMedRecordTypeFacade;
+
+    @Autowired
+    private AMedicalRecordFacade aMedicalRecordFacade;
+
+    @Autowired
+    private AMedicalRecordContentFacade aMedicalRecordContentFacade;
+
+    @Autowired
+    private ABehospitalInfoFacade aBehospitalInfoFacade;
+
+    @Autowired
+    private ADoctorAdviceFacade aDoctorAdviceFacade;
+
+
+
+}

+ 2 - 0
src/main/java/com/diagbot/facade/DoctorAdviceFacade.java

@@ -1,6 +1,7 @@
 package com.diagbot.facade;
 
 import com.diagbot.service.impl.DoctorAdviceServiceImpl;
+
 import org.springframework.stereotype.Component;
 
 /**
@@ -10,4 +11,5 @@ import org.springframework.stereotype.Component;
  */
 @Component
 public class DoctorAdviceFacade extends DoctorAdviceServiceImpl {
+	
 }

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

@@ -1,6 +1,7 @@
 package com.diagbot.facade;
 
 import com.diagbot.service.impl.HomeDiagnoseInfoServiceImpl;
+
 import org.springframework.stereotype.Component;
 
 /**
@@ -10,4 +11,6 @@ import org.springframework.stereotype.Component;
  */
 @Component
 public class HomeDiagnoseInfoFacade extends HomeDiagnoseInfoServiceImpl {
+
+	
 }

+ 9 - 0
src/main/java/com/diagbot/facade/HomeOperationInfoFacade.java

@@ -1,6 +1,8 @@
 package com.diagbot.facade;
 
 import com.diagbot.service.impl.HomeOperationInfoServiceImpl;
+
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
 /**
@@ -10,4 +12,11 @@ import org.springframework.stereotype.Component;
  */
 @Component
 public class HomeOperationInfoFacade extends HomeOperationInfoServiceImpl {
+	@Autowired
+	private HomeOperationInfoServiceImpl homeOperationInfoServiceImpl;
+	
+	@Autowired
+	private DataFacade dataFacade;
+	
+	
 }

+ 8 - 1
src/main/java/com/diagbot/facade/HomePageFacade.java

@@ -1,8 +1,13 @@
 package com.diagbot.facade;
 
-import com.diagbot.service.impl.HomePageServiceImpl;
+import java.util.List;
+
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
+import com.diagbot.entity.HomePage;
+import com.diagbot.service.impl.HomePageServiceImpl;
+
 /**
  * @Description:
  * @author: zhoutg
@@ -10,4 +15,6 @@ import org.springframework.stereotype.Component;
  */
 @Component
 public class HomePageFacade extends HomePageServiceImpl {
+
+	
 }

+ 13 - 0
src/main/java/com/diagbot/facade/MedicalRecordContentFacade.java

@@ -0,0 +1,13 @@
+package com.diagbot.facade;
+
+import java.util.List;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import com.diagbot.entity.MedicalRecordContent;
+import com.diagbot.service.impl.MedicalRecordContentServiceImpl;
+
+@Component
+public class MedicalRecordContentFacade extends MedicalRecordContentServiceImpl {
+}

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

@@ -3,6 +3,7 @@ package com.diagbot.facade;
 import com.diagbot.dto.RecordContentDTO;
 import com.diagbot.service.impl.MedicalRecordServiceImpl;
 import com.diagbot.vo.RecordContentVO;
+
 import org.springframework.stereotype.Component;
 
 import java.util.List;

+ 9 - 0
src/main/java/com/diagbot/facade/MedicalRecordTypeFacade.java

@@ -0,0 +1,9 @@
+package com.diagbot.facade;
+
+import org.springframework.stereotype.Component;
+
+import com.diagbot.service.impl.MedRecordTypeServiceImpl;
+
+@Component
+public class MedicalRecordTypeFacade extends MedRecordTypeServiceImpl{
+}

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

@@ -5,6 +5,7 @@ import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.data.ABasDeptInfoDTO;
 import com.diagbot.entity.BasDeptInfo;
 import com.diagbot.service.impl.BasDeptInfoServiceImpl;
+import com.diagbot.util.TZDBConn;
 import com.diagbot.vo.data.ABasDeptInfoVO;
 import com.diagbot.util.BeanUtil;
 import com.google.common.collect.Lists;
@@ -22,6 +23,26 @@ public class ABasDeptInfoFacade extends BasDeptInfoServiceImpl{
     @Qualifier("basDeptInfoServiceImpl")
     private BasDeptInfoServiceImpl basDeptInfoService;
 
+    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,-1,getdate()) and cjcxrq<=getdate()";
+        List<BasDeptInfo> basDeptInfoList = tzDBConn.getDeptInfo(sql);
+        execute(basDeptInfoList);
+    }
+
     /**
      * 通过接口同步数据
      * @param list

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

@@ -7,6 +7,7 @@ import com.diagbot.entity.BasDoctorInfo;
 import com.diagbot.service.impl.BasDoctorInfoServiceImpl;
 import com.diagbot.service.impl.MedQcresultCasesServiceImpl;
 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;
@@ -21,6 +22,26 @@ public class ABasDoctorInfoFacade extends BasDoctorInfoServiceImpl {
     @Autowired
     @Qualifier("basDoctorInfoServiceImpl")
     private BasDoctorInfoServiceImpl basDoctorInfoService;
+
+    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);
+    }
     /**
      * 从接口接收医生信息
      * @param list

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

@@ -8,9 +8,11 @@ import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.facade.QcAbnormalFacade;
 import com.diagbot.facade.QcTypeFacade;
 import com.diagbot.service.impl.BehospitalInfoServiceImpl;
+import com.diagbot.service.impl.MedicalRecordServiceImpl;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.DateUtil;
 import com.diagbot.util.StringUtil;
+import com.diagbot.util.TZDBConn;
 import com.diagbot.vo.data.ABehospitalInfoVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -36,6 +38,27 @@ public class ABehospitalInfoFacade extends BehospitalInfoServiceImpl {
     @Autowired
     private QcAbnormalFacade qcAbnormalFacade;
 
+    private TZDBConn tzDBConn = new TZDBConn();
+
+    /**
+     * 终末质控-同步前一天的入院记录
+     */
+    public void executeBehospital() {
+        //String sql="select * from br_inpatientinfo where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
+        String sql="select * from br_inpatientinfo where cjcxrq>=(select CONVERT(varchar,GETDATE()-2,23)) and cjcxrq<(select CONVERT(varchar,GETDATE(),23)) ORDER BY cjcxrq DESC";
+        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);
+    }
+
 
     /**
      * 通过接口更新病人住院记录信息

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

@@ -8,6 +8,7 @@ import com.diagbot.service.impl.DoctorAdviceServiceImpl;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.DateUtil;
 import com.diagbot.util.StringUtil;
+import com.diagbot.util.TZDBConn;
 import com.diagbot.vo.data.ADoctorAdviceVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -23,6 +24,24 @@ public class ADoctorAdviceFacade extends DoctorAdviceServiceImpl{
     @Autowired
     @Qualifier("doctorAdviceServiceImpl")
     private DoctorAdviceServiceImpl doctorAdviceService;
+
+    private TZDBConn tzDBConn = new TZDBConn();
+
+    /**
+     * 终末质控-同步前一天的入院病人医嘱信息
+     */
+    public void executeDoctorAdvice() {
+        //String sql="select * from br_doctadvice where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
+        String sql="select * from br_doctadvice where BRZYID in (select BRZYID from br_inpatientinfo where cjcxrq>=(select CONVERT(varchar,GETDATE()-2,23)) and cjcxrq<(select CONVERT(varchar,GETDATE(),23)) and requestflag='1')";
+        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);
+    }
     /**
      * 数据引擎-通过接口更新医生医嘱信息
      * @param list

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

@@ -7,6 +7,7 @@ import com.diagbot.entity.HomeDiagnoseInfo;
 import com.diagbot.entity.MedRecordType;
 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;
@@ -22,6 +23,20 @@ public class AHomeDiagnoseInfoFacade extends HomeDiagnoseInfoServiceImpl{
     @Autowired
     @Qualifier("homeDiagnoseInfoServiceImpl")
     private HomeDiagnoseInfoServiceImpl homeDiagnoseInfoService;
+
+    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())";//今年的数据
+        //前一天的数据
+        String sql="select * from br_recdiagnose where BASYID in (select BASYID from br_rechome where cjcxrq>=(select CONVERT(varchar,GETDATE()-1,23)) and cjcxrq<(select CONVERT(varchar,GETDATE(),23)))";
+        List<HomeDiagnoseInfo> homeDiagnoseList = tzDBConn.getHomeDiagnose(sql);
+        execute(homeDiagnoseList);
+    }
+
     /**
      * 数据引擎-通过接口更新病案首页诊断
      * @param list

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

@@ -6,6 +6,7 @@ import com.diagbot.entity.HomeOperationInfo;
 import com.diagbot.service.impl.HomeOperationInfoServiceImpl;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.DateUtil;
+import com.diagbot.util.TZDBConn;
 import com.diagbot.vo.data.AHomeOperationVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -22,6 +23,19 @@ public class AHomeOperationInfoFacade extends HomeOperationInfoServiceImpl{
     @Qualifier("homeOperationInfoServiceImpl")
     private HomeOperationInfoServiceImpl homeOperationInfoService;
 
+    private TZDBConn tzDBConn = new TZDBConn();
+
+    /**
+     * 终末质控-同步前一天数据
+     */
+    public void executeHomeOperation() {
+        //String sql="select * from br_recoperation where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
+        //前一天数据
+        String sql="select * from br_recoperation where cjcxrq>=(select CONVERT(varchar,GETDATE()-2,23)) and cjcxrq<(select CONVERT(varchar,GETDATE(),23))";
+        List<HomeOperationInfo> homeOperationList = tzDBConn.getHomeOperation(sql);
+        execute(homeOperationList);
+    }
+
     /**
      * 终末质控-通过接口更新病案首页手术
      * @param list

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

@@ -11,6 +11,7 @@ import com.diagbot.service.impl.HomePageServiceImpl;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.DateUtil;
 import com.diagbot.util.ReadProperties;
+import com.diagbot.util.TZDBConn;
 import com.diagbot.vo.AnalyzeApiVO;
 import com.diagbot.vo.data.AHomeDiagnoseVO;
 import com.diagbot.vo.data.AHomeOperationVO;
@@ -45,6 +46,19 @@ public class AHomePageFacade extends HomePageServiceImpl{
     @Autowired
     private ReadProperties readProperties;
 
+    private TZDBConn tzDBConn = new TZDBConn();
+
+    /**
+     * 同步前一天病案首页
+     */
+    public void executeHomePage() {
+        //String sql="select * from br_rechome where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
+        //同步前一天的数据
+        String sql="select * from br_rechome where cjcxrq>=(select CONVERT(varchar,GETDATE()-2,23)) and cjcxrq<(select CONVERT(varchar,GETDATE(),23))";
+        List<HomePage> homePageList = tzDBConn.getHomePage(sql);
+        execute(homePageList);
+    }
+
     /**
      * 运行质控-验证数据有效性
      * @param aHomePageIngVO

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

@@ -23,6 +23,18 @@ public class AMedRecordTypeFacade extends MedRecordTypeServiceImpl {
     @Autowired
     @Qualifier("medRecordTypeServiceImpl")
     private MedRecordTypeServiceImpl medRecordTypeService;
+
+    private TZDBConn tzDBConn = new TZDBConn();
+
+    /**
+     * 终末质控-同步前一天变更的模板类型
+     */
+    public void executeMRType() {
+        //String sql="select * from ar_medirecclass where SFZFPB='1'";
+        String sql="select * from ar_medirecclass where SFZFPB='1' and cjcxrq>=(select CONVERT(varchar,GETDATE()-2,23)) and cjcxrq<(select CONVERT(varchar,GETDATE(),23))";
+        List<MedRecordType> medRecordTypeList = tzDBConn.getMedicalRecordType(sql);
+        execute(medRecordTypeList);
+    }
     /**
      * 数据引擎-通过接口更新病人住院记录信息
      * @param list

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

@@ -6,6 +6,7 @@ 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;
@@ -21,6 +22,18 @@ public class AMedicalRecordContentFacade extends MedicalRecordContentServiceImpl
     @Autowired
     private MedicalRecordContentServiceImpl medicalRecordContentService;
 
+    private TZDBConn tzDBConn = new TZDBConn();
+
+    /**
+     * 终末质控-同步前一天的病历详细记录
+     */
+    public void executeMrRecordContent() {
+        //String sql="select * from mr_mrcontent  where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
+        String sql="select BLJLID,BLJLNR from mr_mrcontent  where cjcxrq>=(select CONVERT(varchar,GETDATE()-2,23)) and cjcxrq<(select CONVERT(varchar,GETDATE(),23)) ORDER BY cjcxrq DESC";
+        List<MedicalRecordContent> mrContentList = tzDBConn.getMedicalRecordContent(sql);
+        execute(mrContentList);
+    }
+
     /**
      * 数据引擎-通过接口更新病历内容
      * @param list

+ 63 - 2
src/main/java/com/diagbot/facade/data/AMedicalRecordFacade.java

@@ -8,10 +8,13 @@ import com.diagbot.entity.*;
 import com.diagbot.facade.BehospitalInfoFacade;
 import com.diagbot.facade.ModelHospitalFacade;
 import com.diagbot.facade.QcAbnormalFacade;
+import com.diagbot.facade.QcTypeFacade;
 import com.diagbot.service.impl.MedicalRecordServiceImpl;
+import com.diagbot.service.impl.QcAbnormalServiceImpl;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.DateUtil;
 import com.diagbot.util.ReadProperties;
+import com.diagbot.util.TZDBConn;
 import com.diagbot.vo.AnalyzeApiVO;
 import com.diagbot.vo.data.AMedicalRecordVO;
 import com.diagbot.vo.data.AMrContentVO;
@@ -42,11 +45,27 @@ public class AMedicalRecordFacade extends MedicalRecordServiceImpl {
     private BehospitalInfoFacade behospitalInfoFacade;
 
     @Autowired
-    private QcAbnormalFacade qcAbnormalFacade;
+    @Qualifier("qcAbnormalServiceImpl")
+    private QcAbnormalServiceImpl qcAbnormalService;
+
+    @Autowired
+    private QcTypeFacade qcTypeFacade;
 
     @Autowired
     private ReadProperties readProperties;
 
+    private TZDBConn tzDBConn = new TZDBConn();
+
+    /**
+     * 终末质控-同步前一天的病历记录
+     */
+    public void executeMrRecord() {
+        //String sql="select * from mr_medicalrecords  where cjcxrq>=dateadd(day,-2,getdate()) and cjcxrq<=getdate()";
+        String sql="select * from mr_medicalrecords  where cjcxrq>=(select CONVERT(varchar,GETDATE()-2,23)) and cjcxrq<(select CONVERT(varchar,GETDATE(),23)) ORDER BY cjcxrq DESC";
+        List<MedicalRecord> medicalRecordList = tzDBConn.getMedicalRecord(sql);
+        execute(medicalRecordList);
+    }
+
     /**
      * 终末质控-通过接口更新病历记录
      * @param list
@@ -170,6 +189,8 @@ public class AMedicalRecordFacade extends MedicalRecordServiceImpl {
     public void execute(List<MedicalRecord> medicalRecordList){
         List<MedicalRecord> addE = Lists.newLinkedList();
         List<MedicalRecord> updateE = Lists.newLinkedList();
+        List<BehospitalInfo> behospitalInfoList=Lists.newLinkedList();
+        List<QcAbnormal> qcAbnormalList = Lists.newLinkedList();
         if (medicalRecordList != null && medicalRecordList.size() > 0) {
             medicalRecordList.stream().forEach(s -> {
                 //初始化mode_id
@@ -182,7 +203,41 @@ public class AMedicalRecordFacade extends MedicalRecordServiceImpl {
                     qcAbnormal.setType(1);
                     qcAbnormal.setDescription(s.getRecTitle());
                     qcAbnormal.setGmtCreate(new Date());
-                    qcAbnormalFacade.save(qcAbnormal);
+                    qcAbnormalList.add(qcAbnormal);
+                }else if(modeId==Long.valueOf("1")){
+
+                    BehospitalInfo behospitalInfo = behospitalInfoFacade.getOne(new QueryWrapper<BehospitalInfo>()
+                            .eq("behospital_code", s.getBehospitalCode())
+                            .eq("hospital_id", s.getHospitalId()));
+                    if(behospitalInfo!=null){
+                        //如果病人住院信息存在,更新对应的qc_type_id
+                        Long qcTypeId=Long.valueOf("0");
+                        QcType qcType=qcTypeFacade.getOne(new QueryWrapper<QcType>()
+                                .eq("name",s.getRecTitle())
+                                .eq("hospital_id", s.getHospitalId()));
+                        if(qcType!=null){
+                            behospitalInfo.setQcTypeId(qcType.getId());
+                        }else{
+                            //新增类型到qc_type表中
+                            QcType qctype=new QcType();
+                            qctype.setHospitalId(s.getHospitalId());
+                            qctype.setName(s.getRecTitle());
+                            qctype.setGmtCreate(new Date());
+
+                            Long id=qcTypeFacade.saveT(qctype);
+                            behospitalInfo.setQcTypeId(id);
+
+                            //新增类型到监测表中
+                            QcAbnormal qcAbnormal=new QcAbnormal();
+                            qcAbnormal.setHospitalId(s.getHospitalId());
+                            qcAbnormal.setBehospitalCode(s.getBehospitalCode());
+                            qcAbnormal.setType(2);
+                            qcAbnormal.setDescription(s.getRecTitle());
+                            qcAbnormal.setGmtCreate(new Date());
+                            qcAbnormalService.getBaseMapper().insert(qcAbnormal);
+                        }
+                        behospitalInfoList.add(behospitalInfo);
+                    }
                 }
                 s.setModeId(modeId);
                 //新增或修改
@@ -205,6 +260,12 @@ public class AMedicalRecordFacade extends MedicalRecordServiceImpl {
         if(updateE.size()>0){
             medicalRecordService.updateBatchByKey(updateE);
         }
+        if(qcAbnormalList.size()>0){
+            qcAbnormalService.saveBatch(qcAbnormalList);
+        }
+        if(behospitalInfoList.size()>0){
+            behospitalInfoFacade.updateBatchByKey(behospitalInfoList);
+        }
     }
 
 

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

@@ -14,7 +14,5 @@ import java.util.List;
  * @since 2020-04-17
  */
 public interface BasDoctorInfoMapper extends BaseMapper<BasDoctorInfo> {
-
     public void updateBatchByKey(List<BasDoctorInfo> list);
-
 }

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

@@ -208,4 +208,10 @@ public interface BehospitalInfoMapper extends BaseMapper<BehospitalInfo> {
      * @return
      */
     public List<ExportExcelDTO> exportQcresultByDept(ExportQcresultVO exportQcresultVO);
+
+    /**
+     * 根据两个主键-批量修改
+     * @param list
+     */
+    public void updateBatchByKey(List<BehospitalInfo> list);
 }

+ 4 - 2
src/main/java/com/diagbot/mapper/MedCrisisInfoMapper.java

@@ -3,14 +3,16 @@ package com.diagbot.mapper;
 import com.diagbot.entity.MedCrisisInfo;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 
+import java.util.List;
+
 /**
  * <p>
  * 危急值信息 Mapper 接口
  * </p>
  *
  * @author zhoutg
- * @since 2020-06-02
+ * @since 2020-05-28
  */
 public interface MedCrisisInfoMapper extends BaseMapper<MedCrisisInfo> {
-
+    public void updateBatchByKey(List<MedCrisisInfo> list);
 }

+ 2 - 2
src/main/java/com/diagbot/mapper/QcTypeMapper.java

@@ -11,8 +11,8 @@ import com.diagbot.vo.QcTypePageVO;
  * 质控类型标准 Mapper 接口
  * </p>
  *
- * @author gaodm
- * @since 2020-04-13
+ * @author zhoutg
+ * @since 2020-05-28
  */
 public interface QcTypeMapper extends BaseMapper<QcType> {
 

+ 1 - 3
src/main/java/com/diagbot/service/BasDoctorInfoService.java

@@ -3,8 +3,6 @@ package com.diagbot.service;
 import com.diagbot.entity.BasDoctorInfo;
 import com.baomidou.mybatisplus.extension.service.IService;
 
-import java.util.List;
-
 /**
  * <p>
  *  服务类
@@ -14,5 +12,5 @@ import java.util.List;
  * @since 2020-04-17
  */
 public interface BasDoctorInfoService extends IService<BasDoctorInfo> {
-    
+
 }

+ 2 - 2
src/main/java/com/diagbot/service/QcTypeService.java

@@ -11,8 +11,8 @@ import com.diagbot.vo.QcTypePageVO;
  * 质控类型标准 服务类
  * </p>
  *
- * @author gaodm
- * @since 2020-04-13
+ * @author zhoutg
+ * @since 2020-05-28
  */
 public interface QcTypeService extends IService<QcType> {
 

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

@@ -25,5 +25,4 @@ public class BasDoctorInfoServiceImpl extends ServiceImpl<BasDoctorInfoMapper, B
     public void updateBatchByKey(List<BasDoctorInfo> list){
         this.baseMapper.updateBatchByKey(list);
     }
-
 }

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

@@ -281,4 +281,8 @@ public class BehospitalInfoServiceImpl extends ServiceImpl<BehospitalInfoMapper,
     public List<ExportExcelDTO> exportQcresultByDept(ExportQcresultVO exportQcresultVO) {
         return baseMapper.exportQcresultByDept(exportQcresultVO);
     }
+
+    public void updateBatchByKey(List<BehospitalInfo> list){
+        this.baseMapper.updateBatchByKey(list);
+    }
 }

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

@@ -18,7 +18,6 @@ import java.util.List;
  */
 @Service
 public class HomeDiagnoseInfoServiceImpl extends ServiceImpl<HomeDiagnoseInfoMapper, HomeDiagnoseInfo> implements HomeDiagnoseInfoService {
-
     public void updateBatchByKey(List<HomeDiagnoseInfo> list){
         this.baseMapper.updateBatchByKey(list);
     }

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

@@ -18,7 +18,6 @@ import java.util.List;
  */
 @Service
 public class HomeOperationInfoServiceImpl extends ServiceImpl<HomeOperationInfoMapper, HomeOperationInfo> implements HomeOperationInfoService {
-
     /**
      * 根据病案首页编码、医院编码、手术序号批量更新
      * @param list

+ 6 - 2
src/main/java/com/diagbot/service/impl/MedCrisisInfoServiceImpl.java

@@ -6,15 +6,19 @@ import com.diagbot.service.MedCrisisInfoService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 
+import java.util.List;
+
 /**
  * <p>
  * 危急值信息 服务实现类
  * </p>
  *
  * @author zhoutg
- * @since 2020-06-02
+ * @since 2020-05-28
  */
 @Service
 public class MedCrisisInfoServiceImpl extends ServiceImpl<MedCrisisInfoMapper, MedCrisisInfo> implements MedCrisisInfoService {
-
+    public void updateBatchByKey(List<MedCrisisInfo> list){
+        this.baseMapper.updateBatchByKey(list);
+    }
 }

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

@@ -18,7 +18,6 @@ import java.util.List;
  */
 @Service
 public class MedicalRecordContentServiceImpl extends ServiceImpl<MedicalRecordContentMapper, MedicalRecordContent> implements MedicalRecordContentService {
-
     public void updateBatchByKey(List<MedicalRecordContent> list){
         this.baseMapper.updateBatchByKey(list);
     }

+ 10 - 0
src/main/java/com/diagbot/service/impl/QcTypeServiceImpl.java

@@ -1,5 +1,6 @@
 package com.diagbot.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.dto.QcTypePageDTO;
 import com.diagbot.entity.QcType;
@@ -23,4 +24,13 @@ public class QcTypeServiceImpl extends ServiceImpl<QcTypeMapper, QcType> impleme
     public IPage<QcTypePageDTO> getList(QcTypePageVO qcTypePageVO) {
         return baseMapper.getList(qcTypePageVO);
     }
+
+    public Long saveT(QcType qcType){
+        this.baseMapper.insert(qcType);
+        QueryWrapper<QcType> qWrapper =new QueryWrapper<>();
+        qWrapper.eq("name",qcType.getName());
+        qWrapper.eq("hospital_id", qcType.getHospitalId());
+        QcType entity=this.baseMapper.selectOne(qWrapper);
+        return entity.getId();
+    }
 }

+ 69 - 0
src/main/java/com/diagbot/task/BasDeptInfoTask.java

@@ -0,0 +1,69 @@
+package com.diagbot.task;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+
+import com.diagbot.facade.data.ABasDeptInfoFacade;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.scheduling.Trigger;
+import org.springframework.scheduling.TriggerContext;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import org.springframework.scheduling.annotation.SchedulingConfigurer;
+import org.springframework.scheduling.config.ScheduledTaskRegistrar;
+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.SysTaskCronFacade;
+import com.diagbot.util.StringUtil;
+
+import lombok.extern.slf4j.Slf4j;
+
+@Configuration      //1.主要用于标记配置类,兼备Component的效果。
+@EnableScheduling   // 2.开启定时任务
+@Slf4j
+public class BasDeptInfoTask implements SchedulingConfigurer{
+
+	@Autowired
+    private SysTaskCronFacade sysTaskCronFacade;
+
+    private SysTaskCron task001 = new SysTaskCron();
+
+    @Autowired
+	private ABasDeptInfoFacade aBasDeptInfoFacade;
+    
+    /**
+     * 执行定时任务.
+     */
+    @Override
+    public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
+        taskRegistrar.addTriggerTask(new Runnable() {
+            @Override
+            public void run() {
+                //1.添加任务内容(Runnable)
+                if (null != task001
+                        && task001.getIsDeleted().equals(IsDeleteEnum.N.getKey())
+                        && task001.getIsUsed().equals(1)) {
+                    log.info("执行动态定时任务: " + LocalDateTime.now().toLocalTime());
+                    aBasDeptInfoFacade.executeDept();
+                }
+            }
+        }, new Trigger() {
+            @Override
+            public Date nextExecutionTime(TriggerContext triggerContext) {
+                //2.1 从数据库获取执行周期
+                task001 = sysTaskCronFacade.getOne(new QueryWrapper<SysTaskCron>()
+                        .eq("cron_code", "TASK011"));
+                String cron = "0 0/1 * * * ?";
+                //2.2 合法性校验.
+                if (null != task001 && StringUtil.isNotBlank(task001.getCron())) {
+                    cron = task001.getCron();
+                }
+                CronTrigger trigger = new CronTrigger(cron);
+                return trigger.nextExecutionTime(triggerContext);
+            }
+        });
+    }
+}

+ 68 - 0
src/main/java/com/diagbot/task/BasDoctorInfoTask.java

@@ -0,0 +1,68 @@
+package com.diagbot.task;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+
+import com.diagbot.facade.data.ABasDoctorInfoFacade;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.scheduling.Trigger;
+import org.springframework.scheduling.TriggerContext;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import org.springframework.scheduling.annotation.SchedulingConfigurer;
+import org.springframework.scheduling.config.ScheduledTaskRegistrar;
+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.SysTaskCronFacade;
+import com.diagbot.util.StringUtil;
+
+import lombok.extern.slf4j.Slf4j;
+
+@Configuration      //1.主要用于标记配置类,兼备Component的效果。
+@EnableScheduling   // 2.开启定时任务
+@Slf4j
+public class BasDoctorInfoTask implements SchedulingConfigurer{
+	@Autowired
+    private SysTaskCronFacade sysTaskCronFacade;
+
+    private SysTaskCron task001 = new SysTaskCron();
+
+    @Autowired
+	private ABasDoctorInfoFacade aBasDoctorInfoFacade;
+    
+    /**
+     * 执行定时任务.
+     */
+    @Override
+    public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
+        taskRegistrar.addTriggerTask(new Runnable() {
+            @Override
+            public void run() {
+                //1.添加任务内容(Runnable)
+                if (null != task001
+                        && task001.getIsDeleted().equals(IsDeleteEnum.N.getKey())
+                        && task001.getIsUsed().equals(1)) {
+                    log.info("执行动态定时任务: " + LocalDateTime.now().toLocalTime());
+                    aBasDoctorInfoFacade.executeDoctor();
+                }
+            }
+        }, new Trigger() {
+            @Override
+            public Date nextExecutionTime(TriggerContext triggerContext) {
+                //2.1 从数据库获取执行周期
+                task001 = sysTaskCronFacade.getOne(new QueryWrapper<SysTaskCron>()
+                        .eq("cron_code", "TASK010"));
+                String cron = "0 0/1 * * * ?";
+                //2.2 合法性校验.
+                if (null != task001 && StringUtil.isNotBlank(task001.getCron())) {
+                    cron = task001.getCron();
+                }
+                CronTrigger trigger = new CronTrigger(cron);
+                return trigger.nextExecutionTime(triggerContext);
+            }
+        });
+    }
+}

+ 68 - 0
src/main/java/com/diagbot/task/BehospitalInfoTask.java

@@ -0,0 +1,68 @@
+package com.diagbot.task;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+
+import com.diagbot.facade.data.ABehospitalInfoFacade;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.scheduling.Trigger;
+import org.springframework.scheduling.TriggerContext;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import org.springframework.scheduling.annotation.SchedulingConfigurer;
+import org.springframework.scheduling.config.ScheduledTaskRegistrar;
+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.SysTaskCronFacade;
+import com.diagbot.util.StringUtil;
+
+import lombok.extern.slf4j.Slf4j;
+
+@Configuration      //1.主要用于标记配置类,兼备Component的效果。
+@EnableScheduling   // 2.开启定时任务
+@Slf4j
+public class BehospitalInfoTask implements SchedulingConfigurer{
+	@Autowired
+    private SysTaskCronFacade sysTaskCronFacade;
+
+    private SysTaskCron task001 = new SysTaskCron();
+
+    @Autowired
+	private ABehospitalInfoFacade aBehospitalInfoFacade;
+
+    /**
+     * 执行定时任务.
+     */
+    @Override
+    public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
+        taskRegistrar.addTriggerTask(new Runnable() {
+            @Override
+            public void run() {
+                //1.添加任务内容(Runnable)
+                if (null != task001
+                        && task001.getIsDeleted().equals(IsDeleteEnum.N.getKey())
+                        && task001.getIsUsed().equals(1)) {
+                    log.info("执行动态定时任务: " + LocalDateTime.now().toLocalTime());
+                    aBehospitalInfoFacade.executeBehospital();
+                }
+            }
+        }, new Trigger() {
+            @Override
+            public Date nextExecutionTime(TriggerContext triggerContext) {
+                //2.1 从数据库获取执行周期
+                task001 = sysTaskCronFacade.getOne(new QueryWrapper<SysTaskCron>()
+                        .eq("cron_code", "TASK008"));
+                String cron = "0 0/1 * * * ?";
+                //2.2 合法性校验.
+                if (null != task001 && StringUtil.isNotBlank(task001.getCron())) {
+                    cron = task001.getCron();
+                }
+                CronTrigger trigger = new CronTrigger(cron);
+                return trigger.nextExecutionTime(triggerContext);
+            }
+        });
+    }
+}

+ 69 - 0
src/main/java/com/diagbot/task/DoctorAdviceTask.java

@@ -0,0 +1,69 @@
+package com.diagbot.task;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+
+import com.diagbot.facade.data.ADoctorAdviceFacade;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.scheduling.Trigger;
+import org.springframework.scheduling.TriggerContext;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import org.springframework.scheduling.annotation.SchedulingConfigurer;
+import org.springframework.scheduling.config.ScheduledTaskRegistrar;
+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.SysTaskCronFacade;
+import com.diagbot.util.StringUtil;
+
+import lombok.extern.slf4j.Slf4j;
+
+@Configuration      //1.主要用于标记配置类,兼备Component的效果。
+@EnableScheduling   // 2.开启定时任务
+@Slf4j
+public class DoctorAdviceTask implements SchedulingConfigurer{
+
+	@Autowired
+    private SysTaskCronFacade sysTaskCronFacade;
+
+    private SysTaskCron task001 = new SysTaskCron();
+
+    @Autowired
+	private ADoctorAdviceFacade aDoctorAdviceFacade;
+    
+    /**
+     * 执行定时任务.
+     */
+    @Override
+    public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
+        taskRegistrar.addTriggerTask(new Runnable() {
+            @Override
+            public void run() {
+                //1.添加任务内容(Runnable)
+                if (null != task001
+                        && task001.getIsDeleted().equals(IsDeleteEnum.N.getKey())
+                        && task001.getIsUsed().equals(1)) {
+                    log.info("执行动态定时任务: " + LocalDateTime.now().toLocalTime());
+                    aDoctorAdviceFacade.executeDoctorAdvice();
+                }
+            }
+        }, new Trigger() {
+            @Override
+            public Date nextExecutionTime(TriggerContext triggerContext) {
+                //2.1 从数据库获取执行周期
+                task001 = sysTaskCronFacade.getOne(new QueryWrapper<SysTaskCron>()
+                        .eq("cron_code", "TASK009"));
+                String cron = "0 0/1 * * * ?";
+                //2.2 合法性校验.
+                if (null != task001 && StringUtil.isNotBlank(task001.getCron())) {
+                    cron = task001.getCron();
+                }
+                CronTrigger trigger = new CronTrigger(cron);
+                return trigger.nextExecutionTime(triggerContext);
+            }
+        });
+    }
+}

+ 68 - 0
src/main/java/com/diagbot/task/HomeDiagnoseInfoTask.java

@@ -0,0 +1,68 @@
+package com.diagbot.task;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+
+import com.diagbot.facade.data.AHomeDiagnoseInfoFacade;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.scheduling.Trigger;
+import org.springframework.scheduling.TriggerContext;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import org.springframework.scheduling.annotation.SchedulingConfigurer;
+import org.springframework.scheduling.config.ScheduledTaskRegistrar;
+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.SysTaskCronFacade;
+import com.diagbot.util.StringUtil;
+
+import lombok.extern.slf4j.Slf4j;
+
+@Configuration      //1.主要用于标记配置类,兼备Component的效果。
+@EnableScheduling   // 2.开启定时任务
+@Slf4j
+public class HomeDiagnoseInfoTask implements SchedulingConfigurer{
+	@Autowired
+    private SysTaskCronFacade sysTaskCronFacade;
+
+    private SysTaskCron task001 = new SysTaskCron();
+
+    @Autowired
+   	private AHomeDiagnoseInfoFacade aHomeDiagnoseInfoFacade;
+    
+    /**
+     * 执行定时任务.
+     */
+    @Override
+    public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
+        taskRegistrar.addTriggerTask(new Runnable() {
+            @Override
+            public void run() {
+                //1.添加任务内容(Runnable)
+                if (null != task001
+                        && task001.getIsDeleted().equals(IsDeleteEnum.N.getKey())
+                        && task001.getIsUsed().equals(1)) {
+                    log.info("执行动态定时任务: " + LocalDateTime.now().toLocalTime());
+                    aHomeDiagnoseInfoFacade.executeHomeDiagnose();
+                }
+            }
+        }, new Trigger() {
+            @Override
+            public Date nextExecutionTime(TriggerContext triggerContext) {
+                //2.1 从数据库获取执行周期
+                task001 = sysTaskCronFacade.getOne(new QueryWrapper<SysTaskCron>()
+                        .eq("cron_code", "TASK003"));
+                String cron = "0 0/1 * * * ?";
+                //2.2 合法性校验.
+                if (null != task001 && StringUtil.isNotBlank(task001.getCron())) {
+                    cron = task001.getCron();
+                }
+                CronTrigger trigger = new CronTrigger(cron);
+                return trigger.nextExecutionTime(triggerContext);
+            }
+        });
+    }
+}

+ 69 - 0
src/main/java/com/diagbot/task/HomeOperationInfoTask.java

@@ -0,0 +1,69 @@
+package com.diagbot.task;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+
+import com.diagbot.facade.*;
+import com.diagbot.facade.data.AHomeOperationInfoFacade;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.scheduling.Trigger;
+import org.springframework.scheduling.TriggerContext;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import org.springframework.scheduling.annotation.SchedulingConfigurer;
+import org.springframework.scheduling.config.ScheduledTaskRegistrar;
+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.util.StringUtil;
+
+import lombok.extern.slf4j.Slf4j;
+
+@Configuration      //1.主要用于标记配置类,兼备Component的效果。
+@EnableScheduling   // 2.开启定时任务
+@Slf4j
+public class HomeOperationInfoTask implements SchedulingConfigurer{
+
+	@Autowired
+    private SysTaskCronFacade sysTaskCronFacade;
+
+    private SysTaskCron task001 = new SysTaskCron();
+
+    @Autowired
+   	private AHomeOperationInfoFacade aHomeOperationInfoFacade;
+    
+    /**
+     * 执行定时任务.
+     */
+    @Override
+    public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
+        taskRegistrar.addTriggerTask(new Runnable() {
+            @Override
+            public void run() {
+                //1.添加任务内容(Runnable)
+                if (null != task001
+                        && task001.getIsDeleted().equals(IsDeleteEnum.N.getKey())
+                        && task001.getIsUsed().equals(1)) {
+                    log.info("执行动态定时任务: " + LocalDateTime.now().toLocalTime());
+                    aHomeOperationInfoFacade.executeHomeOperation();
+                }
+            }
+        }, new Trigger() {
+            @Override
+            public Date nextExecutionTime(TriggerContext triggerContext) {
+                //2.1 从数据库获取执行周期
+                task001 = sysTaskCronFacade.getOne(new QueryWrapper<SysTaskCron>()
+                        .eq("cron_code", "TASK004"));
+                String cron = "0 0/1 * * * ?";
+                //2.2 合法性校验.
+                if (null != task001 && StringUtil.isNotBlank(task001.getCron())) {
+                    cron = task001.getCron();
+                }
+                CronTrigger trigger = new CronTrigger(cron);
+                return trigger.nextExecutionTime(triggerContext);
+            }
+        });
+    }
+}

+ 68 - 0
src/main/java/com/diagbot/task/HomePageTask.java

@@ -0,0 +1,68 @@
+package com.diagbot.task;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+
+import com.diagbot.facade.data.AHomePageFacade;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.scheduling.Trigger;
+import org.springframework.scheduling.TriggerContext;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import org.springframework.scheduling.annotation.SchedulingConfigurer;
+import org.springframework.scheduling.config.ScheduledTaskRegistrar;
+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.SysTaskCronFacade;
+import com.diagbot.util.StringUtil;
+
+import lombok.extern.slf4j.Slf4j;
+
+@Configuration      //1.主要用于标记配置类,兼备Component的效果。
+@EnableScheduling   // 2.开启定时任务
+@Slf4j
+public class HomePageTask implements SchedulingConfigurer{
+	@Autowired
+    private SysTaskCronFacade sysTaskCronFacade;
+
+    private SysTaskCron task001 = new SysTaskCron();
+
+    @Autowired
+   	private AHomePageFacade aHomePageFacade;
+    
+    /**
+     * 执行定时任务.
+     */
+    @Override
+    public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
+        taskRegistrar.addTriggerTask(new Runnable() {
+            @Override
+            public void run() {
+                //1.添加任务内容(Runnable)
+                if (null != task001
+                        && task001.getIsDeleted().equals(IsDeleteEnum.N.getKey())
+                        && task001.getIsUsed().equals(1)) {
+                    log.info("执行动态定时任务: " + LocalDateTime.now().toLocalTime());
+                    aHomePageFacade.executeHomePage();
+                }
+            }
+        }, new Trigger() {
+            @Override
+            public Date nextExecutionTime(TriggerContext triggerContext) {
+                //2.1 从数据库获取执行周期
+                task001 = sysTaskCronFacade.getOne(new QueryWrapper<SysTaskCron>()
+                        .eq("cron_code", "TASK002"));
+                String cron = "0 0/1 * * * ?";
+                //2.2 合法性校验.
+                if (null != task001 && StringUtil.isNotBlank(task001.getCron())) {
+                    cron = task001.getCron();
+                }
+                CronTrigger trigger = new CronTrigger(cron);
+                return trigger.nextExecutionTime(triggerContext);
+            }
+        });
+    }
+}

+ 66 - 0
src/main/java/com/diagbot/task/MedCrisisTask.java

@@ -0,0 +1,66 @@
+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.SysTaskCronFacade;
+import com.diagbot.facade.data.AMedCrisisFacade;
+import com.diagbot.util.StringUtil;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.scheduling.Trigger;
+import org.springframework.scheduling.TriggerContext;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import org.springframework.scheduling.annotation.SchedulingConfigurer;
+import org.springframework.scheduling.config.ScheduledTaskRegistrar;
+import org.springframework.scheduling.support.CronTrigger;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+
+@Configuration      //1.主要用于标记配置类,兼备Component的效果。
+@EnableScheduling   // 2.开启定时任务
+@Slf4j
+public class MedCrisisTask implements SchedulingConfigurer {
+    @Autowired
+    private SysTaskCronFacade sysTaskCronFacade;
+
+    private SysTaskCron task001 = new SysTaskCron();
+
+    @Autowired
+    private AMedCrisisFacade aMedCrisisFacade;
+
+    /**
+     * 执行定时任务.
+     */
+    @Override
+    public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
+        taskRegistrar.addTriggerTask(new Runnable() {
+            @Override
+            public void run() {
+                //1.添加任务内容(Runnable)
+                if (null != task001
+                        && task001.getIsDeleted().equals(IsDeleteEnum.N.getKey())
+                        && task001.getIsUsed().equals(1)) {
+                    log.info("执行动态定时任务: " + LocalDateTime.now().toLocalTime());
+                    //aMedCrisisFacade.executeMedCrisis();
+                }
+            }
+        }, new Trigger() {
+            @Override
+            public Date nextExecutionTime(TriggerContext triggerContext) {
+                //2.1 从数据库获取执行周期
+                task001 = sysTaskCronFacade.getOne(new QueryWrapper<SysTaskCron>()
+                        .eq("cron_code", "TASK012"));
+                String cron = "0 0/1 * * * ?";
+                //2.2 合法性校验.
+                if (null != task001 && StringUtil.isNotBlank(task001.getCron())) {
+                    cron = task001.getCron();
+                }
+                CronTrigger trigger = new CronTrigger(cron);
+                return trigger.nextExecutionTime(triggerContext);
+            }
+        });
+    }
+}

+ 69 - 0
src/main/java/com/diagbot/task/MedicalRecordContentTask.java

@@ -0,0 +1,69 @@
+package com.diagbot.task;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+
+import com.diagbot.facade.data.AMedicalRecordContentFacade;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.scheduling.Trigger;
+import org.springframework.scheduling.TriggerContext;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import org.springframework.scheduling.annotation.SchedulingConfigurer;
+import org.springframework.scheduling.config.ScheduledTaskRegistrar;
+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.SysTaskCronFacade;
+import com.diagbot.util.StringUtil;
+
+import lombok.extern.slf4j.Slf4j;
+
+@Configuration      //1.主要用于标记配置类,兼备Component的效果。
+@EnableScheduling   // 2.开启定时任务
+@Slf4j
+public class MedicalRecordContentTask implements SchedulingConfigurer{
+
+	@Autowired
+    private SysTaskCronFacade sysTaskCronFacade;
+
+    private SysTaskCron task001 = new SysTaskCron();
+
+    @Autowired
+   	private AMedicalRecordContentFacade aMedicalRecordContentFacade;
+    
+    /**
+     * 执行定时任务.
+     */
+    @Override
+    public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
+        taskRegistrar.addTriggerTask(new Runnable() {
+            @Override
+            public void run() {
+                //1.添加任务内容(Runnable)
+                if (null != task001
+                        && task001.getIsDeleted().equals(IsDeleteEnum.N.getKey())
+                        && task001.getIsUsed().equals(1)) {
+                    log.info("执行动态定时任务: " + LocalDateTime.now().toLocalTime());
+                    aMedicalRecordContentFacade.executeMrRecordContent();
+                }
+            }
+        }, new Trigger() {
+            @Override
+            public Date nextExecutionTime(TriggerContext triggerContext) {
+                //2.1 从数据库获取执行周期
+                task001 = sysTaskCronFacade.getOne(new QueryWrapper<SysTaskCron>()
+                        .eq("cron_code", "TASK007"));
+                String cron = "0 0/1 * * * ?";
+                //2.2 合法性校验.
+                if (null != task001 && StringUtil.isNotBlank(task001.getCron())) {
+                    cron = task001.getCron();
+                }
+                CronTrigger trigger = new CronTrigger(cron);
+                return trigger.nextExecutionTime(triggerContext);
+            }
+        });
+    }
+}

+ 69 - 0
src/main/java/com/diagbot/task/MedicalRecordTask.java

@@ -0,0 +1,69 @@
+package com.diagbot.task;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+
+import com.diagbot.facade.data.AMedicalRecordFacade;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.scheduling.Trigger;
+import org.springframework.scheduling.TriggerContext;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import org.springframework.scheduling.annotation.SchedulingConfigurer;
+import org.springframework.scheduling.config.ScheduledTaskRegistrar;
+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.SysTaskCronFacade;
+import com.diagbot.util.StringUtil;
+
+import lombok.extern.slf4j.Slf4j;
+
+@Configuration      //1.主要用于标记配置类,兼备Component的效果。
+@EnableScheduling   // 2.开启定时任务
+@Slf4j
+public class MedicalRecordTask implements SchedulingConfigurer{
+
+	@Autowired
+    private SysTaskCronFacade sysTaskCronFacade;
+
+    private SysTaskCron task001 = new SysTaskCron();
+
+    @Autowired
+   	private AMedicalRecordFacade aMedicalRecordFacade;
+    
+    /**
+     * 执行定时任务.
+     */
+    @Override
+    public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
+        taskRegistrar.addTriggerTask(new Runnable() {
+            @Override
+            public void run() {
+                //1.添加任务内容(Runnable)
+                if (null != task001
+                        && task001.getIsDeleted().equals(IsDeleteEnum.N.getKey())
+                        && task001.getIsUsed().equals(1)) {
+                    log.info("执行动态定时任务: " + LocalDateTime.now().toLocalTime());
+                    aMedicalRecordFacade.executeMrRecord();
+                }
+            }
+        }, new Trigger() {
+            @Override
+            public Date nextExecutionTime(TriggerContext triggerContext) {
+                //2.1 从数据库获取执行周期
+                task001 = sysTaskCronFacade.getOne(new QueryWrapper<SysTaskCron>()
+                        .eq("cron_code", "TASK006"));
+                String cron = "0 0/1 * * * ?";
+                //2.2 合法性校验.
+                if (null != task001 && StringUtil.isNotBlank(task001.getCron())) {
+                    cron = task001.getCron();
+                }
+                CronTrigger trigger = new CronTrigger(cron);
+                return trigger.nextExecutionTime(triggerContext);
+            }
+        });
+    }
+}

+ 66 - 0
src/main/java/com/diagbot/task/MedicalRecordTypeTask.java

@@ -0,0 +1,66 @@
+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.data.AMedRecordTypeFacade;
+import com.diagbot.facade.SysTaskCronFacade;
+import com.diagbot.util.StringUtil;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.scheduling.Trigger;
+import org.springframework.scheduling.TriggerContext;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import org.springframework.scheduling.annotation.SchedulingConfigurer;
+import org.springframework.scheduling.config.ScheduledTaskRegistrar;
+import org.springframework.scheduling.support.CronTrigger;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+
+@Configuration      //1.主要用于标记配置类,兼备Component的效果。
+@EnableScheduling   // 2.开启定时任务
+@Slf4j
+public class MedicalRecordTypeTask implements SchedulingConfigurer {
+    @Autowired
+    private SysTaskCronFacade sysTaskCronFacade;
+
+    private SysTaskCron task001 = new SysTaskCron();
+
+    @Autowired
+    private AMedRecordTypeFacade aMedRecordTypeFacade;
+
+    /**
+     * 执行定时任务.
+     */
+    @Override
+    public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
+        taskRegistrar.addTriggerTask(new Runnable() {
+            @Override
+            public void run() {
+                //1.添加任务内容(Runnable)
+                if (null != task001
+                        && task001.getIsDeleted().equals(IsDeleteEnum.N.getKey())
+                        && task001.getIsUsed().equals(1)) {
+                    log.info("执行动态定时任务: " + LocalDateTime.now().toLocalTime());
+                    aMedRecordTypeFacade.executeMRType();
+                }
+            }
+        }, new Trigger() {
+            @Override
+            public Date nextExecutionTime(TriggerContext triggerContext) {
+                //2.1 从数据库获取执行周期
+                task001 = sysTaskCronFacade.getOne(new QueryWrapper<SysTaskCron>()
+                        .eq("cron_code", "TASK005"));
+                String cron = "0 0/1 * * * ?";
+                //2.2 合法性校验.
+                if (null != task001 && StringUtil.isNotBlank(task001.getCron())) {
+                    cron = task001.getCron();
+                }
+                CronTrigger trigger = new CronTrigger(cron);
+                return trigger.nextExecutionTime(triggerContext);
+            }
+        });
+    }
+}

+ 9 - 4
src/main/java/com/diagbot/util/TZDBConn.java

@@ -5,9 +5,12 @@ import java.sql.DriverManager;
 import java.sql.PreparedStatement;
 import java.sql.ResultSet;
 import java.sql.SQLException;
+import java.util.Date;
 import java.util.List;
 import java.util.ResourceBundle;
 
+import javax.print.DocFlavor.STRING;
+
 import com.diagbot.entity.BasDeptInfo;
 import com.diagbot.entity.BasDoctorInfo;
 import com.diagbot.entity.BehospitalInfo;
@@ -267,7 +270,9 @@ public class TZDBConn {
 				homePageVO.setName(rs.getString("BRBAXM"));//姓名
 				homePageVO.setSex(rs.getString("BRBAXB"));//性别
 				homePageVO.setBirthday(rs.getDate("BRCSRQ"));//出生日期
+				if(StringUtil.isNotBlank(rs.getString("BRDQNL"))){
 				homePageVO.setAge(rs.getString("BRDQNL").equals("-")?null:rs.getString("BRDQNL"));//病人年龄
+				}
 				homePageVO.setAgeUnit(rs.getString("BRNLDW"));//年龄单位
 				homePageVO.setNationality(rs.getString("BRBAGJ"));//国籍
 				homePageVO.setNewbornMonth(rs.getString("YENLYS"));//新生儿出生月数
@@ -553,7 +558,7 @@ public class TZDBConn {
 				behospitalInfo.setDiagnose(rs.getString("JBMSXX"));//疾病名称
 				behospitalInfo.setDoctorId(rs.getString("ZZYSID"));//医生ID
 				behospitalInfo.setDoctorName(rs.getString("ZZYSXM"));//医生姓名
-				
+				behospitalInfo.setIsPlacefile(rs.getString("requestflag"));
 				behospitalInfoList.add(behospitalInfo);
 			}
 		} catch (Exception e) {
@@ -654,10 +659,10 @@ public class TZDBConn {
 			ResultSet rs =dbconn.Query(sql, null);
 			while(rs.next()){
 				MedicalRecordContent mrContent=new MedicalRecordContent();
-				//mrContent.setHospitalId(HOSPITAL_ID);
-				//mrContent.setRecId(rs.getString("BLJLID"));
+				mrContent.setHospitalId(HOSPITAL_ID);
+				mrContent.setRecId(rs.getString("BLJLID"));
 				//mrContent.setHtmlText(rs.getString("HTMLSJ"));
-				//mrContent.setXmlText(rs.getString("BLJLNR"));
+				mrContent.setXmlText(rs.getString("BLJLNR"));
 
 				mrContentList.add(mrContent);
 			}

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

@@ -18,7 +18,7 @@ jdbc.password=zjlt@2020
 remote.address.ver=http://192.18.101.207:2030/index.html
 remote.address.hor=http://192.18.101.207:2030/indexHorizontal.html
 
-process.qc.url=http://192.168.2.132:1489/index.html
+process.qc.url=http://192.168.100.157:1489/index.html
 
 #his\u65b9\u60a3\u8005\u63a5\u53e3\u5730\u5740
 his.patient.url=

+ 84 - 0
src/main/resources/mapper/BehospitalInfoMapper.xml

@@ -2493,4 +2493,88 @@
         t1.behospitalCode,
         t1.casesName
     </select>
+
+    <update id="updateBatchByKey">
+        <foreach collection="list" item="item"  separator=";">
+            update med_behospital_info
+            <set>
+                <if test="item.name != null">
+                    name = #{item.name},
+                </if>
+                <if test="item.sex != null">
+                    sex = #{item.sex},
+                </if>
+                <if test="item.birthday != null">
+                    birthday = #{item.birthday},
+                </if>
+                <if test="item.fileCode != null">
+                    file_code = #{item.fileCode},
+                </if>
+                <if test="item.qcTypeId != null">
+                    qc_type_id = #{item.qcTypeId},
+                </if>
+                <if test="item.wardCode != null">
+                    ward_code = #{item.wardCode},
+                </if>
+                <if test="item.wardName != null">
+                    ward_name = #{item.wardName},
+                </if>
+                <if test="item.behDeptId != null">
+                    beh_dept_id = #{item.behDeptId},
+                </if>
+                <if test="item.behDeptName != null">
+                    beh_dept_name = #{item.behDeptName},
+                </if>
+                <if test="item.bedCode != null">
+                    bed_code = #{item.bedCode},
+                </if>
+                <if test="item.bedName != null">
+                    bed_name = #{item.bedName},
+                </if>
+                <if test="item.insuranceName != null">
+                    insurance_name = #{item.insuranceName},
+                </if>
+                <if test="item.jobType != null">
+                    job_type = #{item.jobType},
+                </if>
+                <if test="item.behospitalDate != null">
+                    behospital_date = #{item.behospitalDate},
+                </if>
+                <if test="item.leaveHospitalDate != null">
+                    leave_hospital_date = #{item.leaveHospitalDate},
+                </if>
+                <if test="item.diagnoseIcd != null">
+                    diagnose_icd = #{item.diagnoseIcd},
+                </if>
+                <if test="item.diagnose != null">
+                    diagnose = #{item.diagnose},
+                </if>
+                <if test="item.behDoctorId != null">
+                    beh_doctor_id = #{item.behDoctorId},
+                </if>
+                <if test="item.behDoctorName != null">
+                    beh_doctor_name = #{item.behDoctorName},
+                </if>
+                <if test="item.doctorId != null">
+                    doctor_id = #{item.doctorId},
+                </if>
+                <if test="item.doctorName != null">
+                    doctor_name = #{item.doctorName},
+                </if>
+                <if test="item.directorDoctorId != null">
+                    director_doctor_id = #{item.directorDoctorId},
+                </if>
+                <if test="item.directorDoctorName != null">
+                    director_doctor_name = #{item.directorDoctorName},
+                </if>
+                <if test="item.gmtModified != null">
+                    gmt_modified = #{item.gmtModified},
+                </if>
+                <if test="item.modifier != null">
+                    modifier = #{item.modifier},
+                </if>
+            </set>
+            where behospital_code = #{item.behospitalCode} and hospital_id = #{item.hospitalId}
+        </foreach>
+    </update>
 </mapper>

+ 75 - 75
src/main/resources/mapper/DoctorAdviceMapper.xml

@@ -36,80 +36,80 @@
     </resultMap>
 
     <update id="updateBatchByKey">
-        <foreach collection="list" item="item"  separator=";">
-            update med_doctor_advice
-            <set>
-                <if test="item.orderDoctorName != null">
-                    order_doctor_name = #{item.orderDoctorName},
-                </if>
-                <if test="item.frequency != null">
-                    frequency = #{item.frequency},
-                </if>
-                <if test="item.parentTypeId != null">
-                    parent_type_id = #{item.parentTypeId},
-                </if>
-                <if test="item.doctorAdviceType != null">
-                    doctor_advice_type = #{item.doctorAdviceType},
-                </if>
-                <if test="item.usageNum != null">
-                    usage_num = #{item.usageNum},
-                </if>
-                <if test="item.usageUnit != null">
-                    usage_unit = #{item.usageUnit},
-                </if>
-                <if test="item.dose != null">
-                    dose = #{item.dose},
-                </if>
-                <if test="item.doseUnit != null">
-                    dose_unit = #{item.doseUnit},
-                </if>
-                <if test="item.medModeType != null">
-                    med_mode_type = #{item.medModeType},
-                </if>
-                <if test="item.daFrequency != null">
-                    da_frequency = #{item.daFrequency},
-                </if>
-                <if test="item.daDealType != null">
-                    da_deal_type = #{item.daDealType},
-                </if>
-                <if test="item.daStartDate != null">
-                    da_start_date = #{item.daStartDate},
-                </if>
-                <if test="item.daItemName != null">
-                    da_item_name = #{item.daItemName},
-                </if>
-                <if test="item.daStatus != null">
-                    da_status = #{item.daStatus},
-                </if>
-                <if test="item.daStopDate != null">
-                    da_stop_date = #{item.daStopDate},
-                </if>
-                <if test="item.daGroupNo != null">
-                    da_group_no = #{item.daGroupNo},
-                </if>
-                <if test="item.daPrescriptionType != null">
-                    da_prescription_type = #{item.daPrescriptionType},
-                </if>
-                <if test="item.daMedType != null">
-                    da_med_type = #{item.daMedType},
-                </if>
-                <if test="item.doctorNotice != null">
-                    doctor_notice = #{item.doctorNotice},
-                </if>
-                <if test="item.doctorId != null">
-                    doctor_id = #{item.doctorId},
-                </if>
-                <if test="item.doctorName != null">
-                    doctor_name = #{item.doctorName},
-                </if>
-                <if test="item.gmtModified != null">
-                    gmt_modified = #{item.gmtModified},
-                </if>
-                <if test="item.modifier != null">
-                    modifier = #{item.modifier},
-                </if>
-            </set>
-            where doctor_advice_id = #{item.doctorAdviceId} and hospital_id = #{item.hospitalId} and behospital_code = #{item.behospitalCode}
-        </foreach>
+    <foreach collection="list" item="item"  separator=";">
+        update med_doctor_advice
+        <set>
+            <if test="item.orderDoctorName != null">
+                order_doctor_name = #{item.orderDoctorName},
+            </if>
+            <if test="item.frequency != null">
+                frequency = #{item.frequency},
+            </if>
+            <if test="item.parentTypeId != null">
+                parent_type_id = #{item.parentTypeId},
+            </if>
+            <if test="item.doctorAdviceType != null">
+                doctor_advice_type = #{item.doctorAdviceType},
+            </if>
+            <if test="item.usageNum != null">
+                usage_num = #{item.usageNum},
+            </if>
+            <if test="item.usageUnit != null">
+                usage_unit = #{item.usageUnit},
+            </if>
+            <if test="item.dose != null">
+                dose = #{item.dose},
+            </if>
+            <if test="item.doseUnit != null">
+                dose_unit = #{item.doseUnit},
+            </if>
+            <if test="item.medModeType != null">
+                med_mode_type = #{item.medModeType},
+            </if>
+            <if test="item.daFrequency != null">
+                da_frequency = #{item.daFrequency},
+            </if>
+            <if test="item.daDealType != null">
+                da_deal_type = #{item.daDealType},
+            </if>
+            <if test="item.daStartDate != null">
+                da_start_date = #{item.daStartDate},
+            </if>
+            <if test="item.daItemName != null">
+                da_item_name = #{item.daItemName},
+            </if>
+            <if test="item.daStatus != null">
+                da_status = #{item.daStatus},
+            </if>
+            <if test="item.daStopDate != null">
+                da_stop_date = #{item.daStopDate},
+            </if>
+            <if test="item.daGroupNo != null">
+                da_group_no = #{item.daGroupNo},
+            </if>
+            <if test="item.daPrescriptionType != null">
+                da_prescription_type = #{item.daPrescriptionType},
+            </if>
+            <if test="item.daMedType != null">
+                da_med_type = #{item.daMedType},
+            </if>
+            <if test="item.doctorNotice != null">
+                doctor_notice = #{item.doctorNotice},
+            </if>
+            <if test="item.doctorId != null">
+                doctor_id = #{item.doctorId},
+            </if>
+            <if test="item.doctorName != null">
+                doctor_name = #{item.doctorName},
+            </if>
+            <if test="item.gmtModified != null">
+                gmt_modified = #{item.gmtModified},
+            </if>
+            <if test="item.modifier != null">
+                modifier = #{item.modifier},
+            </if>
+        </set>
+        where doctor_advice_id = #{item.doctorAdviceId} and hospital_id = #{item.hospitalId} and behospital_code = #{item.behospitalCode}
+    </foreach>
     </update>
 </mapper>

+ 2 - 4
src/main/resources/mapper/HomePageMapper.xml

@@ -139,7 +139,7 @@
 
 
     <!-- 按科室统计平均住院天数 -->
-    <select id="getAverageDayNum" parameterType="com.diagbot.vo.FilterVO" resultType="com.diagbot.dto.AverageStatisticsDTO">
+    <select id="getAverageDayNum"  parameterType="com.diagbot.vo.FilterVO" resultType="com.diagbot.dto.AverageStatisticsDTO">
         SELECT
         a.beh_dept_id as id,
         a.beh_dept_name as name,
@@ -171,7 +171,7 @@
     </select>
 
     <!-- 按科室统计平均费用 -->
-    <select id="getAverageFee" parameterType="com.diagbot.vo.FilterVO" resultType="com.diagbot.dto.AverageStatisticsDTO">
+    <select id="getAverageFee"  parameterType="com.diagbot.vo.FilterVO"  resultType="com.diagbot.dto.AverageStatisticsDTO">
         SELECT
         a.beh_dept_id as id,
         a.beh_dept_name as name,
@@ -452,7 +452,6 @@
         t1
     </select>
 
-
     <update id="updateBatchByKey">
         <foreach collection="list" item="item"  separator=";">
             update med_home_page
@@ -837,5 +836,4 @@
             where home_page_id = #{item.homePageId} and hospital_id = #{item.hospitalId} and behospital_code = #{item.behospitalCode}
         </foreach>
     </update>
-
 </mapper>

+ 54 - 0
src/main/resources/mapper/MedCrisisInfoMapper.xml

@@ -28,4 +28,58 @@
         <result column="modifier" property="modifier" />
     </resultMap>
 
+    <update id="updateBatchByKey">
+        <foreach collection="list" item="item"  separator=";">
+            update med_crisis_info
+            <set>
+                <if test="item.crisisId != null">
+                    crisis_id = #{item.crisisId},
+                </if>
+                <if test="item.crisisName != null">
+                    crisis_name = #{item.crisisName},
+                </if>
+                <if test="item.deptId != null">
+                    dept_id = #{item.deptId},
+                </if>
+                <if test="item.deptName != null">
+                    dept_name = #{item.deptName},
+                </if>
+                <if test="item.doctorId != null">
+                    doctor_id = #{item.doctorId},
+                </if>
+                <if test="item.doctorName != null">
+                    doctor_name = #{item.doctorName},
+                </if>
+                <if test="item.crisisValue != null">
+                    crisis_value = #{item.crisisValue},
+                </if>
+                <if test="item.crisisDesc != null">
+                    crisis_desc = #{item.crisisDesc},
+                </if>
+                <if test="item.crisisStatus != null">
+                    crisis_status = #{item.crisisStatus},
+                </if>
+                <if test="item.crisisTopValue != null">
+                    crisis_top_value = #{item.crisisTopValue},
+                </if>
+                <if test="item.crisisLowerValue != null">
+                    crisis_lower_value = #{item.crisisLowerValue},
+                </if>
+                <if test="item.sendDate != null">
+                    send_date = #{item.sendDate},
+                </if>
+                <if test="item.repDate != null">
+                    rep_date = #{item.repDate},
+                </if>
+                <if test="item.gmtModified != null">
+                    gmt_modified = #{item.gmtModified},
+                </if>
+                <if test="item.modifier != null">
+                    modifier = #{item.modifier},
+                </if>
+            </set>
+            where rec_id = #{item.recId} and hospital_id = #{item.hospitalId} and behospital_code = #{item.behospitalCode} and rec_type = #{item.recType}
+        </foreach>
+    </update>
+
 </mapper>

+ 1 - 0
src/main/resources/mapper/MedicalRecordMapper.xml

@@ -9,6 +9,7 @@
         <result column="behospital_code" property="behospitalCode" />
         <result column="org_code" property="orgCode" />
         <result column="rec_type_id" property="recTypeId" />
+        <result column="mode_id" property="modeId" />
         <result column="rec_date" property="recDate" />
         <result column="rec_title" property="recTitle" />
         <result column="is_deleted" property="isDeleted" />