From 36af870240a4c5d154b197244832e8385be2db31 Mon Sep 17 00:00:00 2001 From: wyb <1977763549@qq.com> Date: Tue, 4 Nov 2025 17:11:22 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=A2=85=E5=B7=9E=E4=B8=89=E9=99=A2?= =?UTF-8?q?=E5=90=8C=E6=AD=A5=E7=A7=91=E5=AE=A4=EF=BC=8Cnacos=E4=BE=9D?= =?UTF-8?q?=E8=B5=96=E5=8E=BB=E9=99=A4=EF=BC=8C=E9=85=8D=E7=BD=AE=E6=9A=82?= =?UTF-8?q?=E7=95=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 32 +----------- .../com/docus/server/AppRunBootstrap.java | 2 - .../server/archive/entity/TBasicZkInfo.java | 49 +++++++++++++++++++ .../server/archive/mapper/TBasicMapper.java | 4 ++ .../impl/MzsyPatientInfoSyncServiceImpl.java | 37 ++++++++++++-- .../mapper/MzsyPatientInfoViewMapper.java | 3 +- src/main/resources/bootstrap.yml | 6 ++- .../mapper/MzsyPatientInfoViewMapper.xml | 10 ++++ src/main/resources/mapper/TBasicMapper.xml | 13 +++++ 9 files changed, 117 insertions(+), 39 deletions(-) create mode 100644 src/main/java/com/docus/server/archive/entity/TBasicZkInfo.java diff --git a/pom.xml b/pom.xml index e854c6e..abea428 100644 --- a/pom.xml +++ b/pom.xml @@ -23,21 +23,7 @@ 2.5.1 - - - com.alibaba.cloud - spring-cloud-starter-alibaba-nacos-config - - - checker-qual - org.checkerframework - - - error_prone_annotations - com.google.errorprone - - - + org.springframework.boot spring-boot-starter-web @@ -53,21 +39,7 @@ dynamic-datasource-spring-boot-starter 3.4.0 - - - com.alibaba.cloud - spring-cloud-starter-alibaba-nacos-discovery - - - HdrHistogram - org.hdrhistogram - - - jsr305 - com.google.code.findbugs - - - + mysql mysql-connector-java diff --git a/src/main/java/com/docus/server/AppRunBootstrap.java b/src/main/java/com/docus/server/AppRunBootstrap.java index 432cef6..4fd9cd3 100644 --- a/src/main/java/com/docus/server/AppRunBootstrap.java +++ b/src/main/java/com/docus/server/AppRunBootstrap.java @@ -5,7 +5,6 @@ import lombok.extern.slf4j.Slf4j; import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.cloud.openfeign.EnableFeignClients; import java.util.Properties; @@ -16,7 +15,6 @@ import java.util.Properties; @Slf4j @SpringBootApplication(scanBasePackages ={"com.docus"}) @MapperScan("com.docus.server.**.mapper") -@EnableFeignClients(basePackages = {"com.docus"}) public class AppRunBootstrap { public static void main(String[] args) { Properties props = System.getProperties(); diff --git a/src/main/java/com/docus/server/archive/entity/TBasicZkInfo.java b/src/main/java/com/docus/server/archive/entity/TBasicZkInfo.java new file mode 100644 index 0000000..03fad9f --- /dev/null +++ b/src/main/java/com/docus/server/archive/entity/TBasicZkInfo.java @@ -0,0 +1,49 @@ +package com.docus.server.archive.entity; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import lombok.Data; + +import java.util.Date; + +/** + * 转科信息 + * + * @author YongBin Wen + * @date 2024/4/9 13:53 + */ +@Data +@JsonIgnoreProperties(ignoreUnknown = true) +public class TBasicZkInfo { + /** + * 主键 + **/ + private Long id; + /** + * 病案主键 + **/ + private String patientId; + /** + * 转出科室编号 + **/ + private String outDeptCode; + /** + * 转出科室名称 + **/ + private String outDeptName; + /** + * 转出日期 + **/ + private Date outDate; + /** + * 转入科室编号 + **/ + private String inDeptCode; + /** + * 转入科室名称 + **/ + private String inDeptName; + /** + * 数据创建时间 + **/ + private Date createTime; +} diff --git a/src/main/java/com/docus/server/archive/mapper/TBasicMapper.java b/src/main/java/com/docus/server/archive/mapper/TBasicMapper.java index 2a4aa8a..ddb8069 100644 --- a/src/main/java/com/docus/server/archive/mapper/TBasicMapper.java +++ b/src/main/java/com/docus/server/archive/mapper/TBasicMapper.java @@ -2,6 +2,7 @@ package com.docus.server.archive.mapper; import com.docus.server.archive.entity.TBasic; +import com.docus.server.archive.entity.TBasicZkInfo; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -24,4 +25,7 @@ public interface TBasicMapper { int updateExtend(@Param("basicList") List basicList); + int delZkInfo(@Param("patientId") String patientId); + + int addZkInfo(@Param("basicZkList") List tBasicZkInfoList); } diff --git a/src/main/java/com/docus/server/archive/service/impl/MzsyPatientInfoSyncServiceImpl.java b/src/main/java/com/docus/server/archive/service/impl/MzsyPatientInfoSyncServiceImpl.java index ea8a04a..23b49fd 100644 --- a/src/main/java/com/docus/server/archive/service/impl/MzsyPatientInfoSyncServiceImpl.java +++ b/src/main/java/com/docus/server/archive/service/impl/MzsyPatientInfoSyncServiceImpl.java @@ -7,6 +7,7 @@ import com.docus.server.archive.constans.SyncConstant; import com.docus.server.archive.converter.MzsyPatientInfoConverter; import com.docus.server.archive.entity.PowerUser; import com.docus.server.archive.entity.TBasic; +import com.docus.server.archive.entity.TBasicZkInfo; import com.docus.server.archive.mapper.PowerUserMapper; import com.docus.server.archive.mapper.TBasicMapper; import com.docus.server.archive.service.PatientInfoSyncService; @@ -53,7 +54,7 @@ public class MzsyPatientInfoSyncServiceImpl implements PatientInfoSyncService { public void syncByModifyTimeAndCyrq(String cyrqStart, String startTime) { int size = 1000; int pageNumber = 1; - log.info("参数"+cyrqStart+startTime); + log.info("参数" + cyrqStart + startTime); while (true) { List patientInfoViews = mzsyPatientInfoViewMapper.pageByViwe(cyrqStart, startTime, pageNumber, size); if (Func.isNotEmpty(patientInfoViews)) { @@ -62,11 +63,11 @@ public class MzsyPatientInfoSyncServiceImpl implements PatientInfoSyncService { .collect(Collectors.toList()); List collect = basicList.stream().map(TBasic::getAttending).collect(Collectors.toList()); List byUserNames = powerUserMapper.findByUserNames(collect); - if(ObjectUtil.isNotEmpty(byUserNames)){ + if (ObjectUtil.isNotEmpty(byUserNames)) { Map map = byUserNames.stream().collect(Collectors.toMap(PowerUser::getUserName, PowerUser::getName)); for (TBasic tBasic : basicList) { String attending = tBasic.getAttending(); - if(ObjectUtil.isNotEmpty(attending)) { + if (ObjectUtil.isNotEmpty(attending)) { tBasic.setAttendingName(map.get(attending)); } } @@ -125,7 +126,7 @@ public class MzsyPatientInfoSyncServiceImpl implements PatientInfoSyncService { tBasic.setFileSource(iuBasic.getFileSource()); tBasic.setUpdateTime(nowDate); updateBasicList.add(tBasic); - if(ObjectUtil.isNotEmpty(iuBasic.getLeaveMethod())){ + if (ObjectUtil.isNotEmpty(iuBasic.getLeaveMethod())) { tBasic.setLeaveMethod(iuBasic.getLeaveMethod()); leaveMethodList.add(tBasic); } @@ -135,7 +136,7 @@ public class MzsyPatientInfoSyncServiceImpl implements PatientInfoSyncService { iuBasic.setCreateTime(nowDate); iuBasic.setUpdateTime(nowDate); iuBasic.setIsArchive(0); - if(ObjectUtil.isNotEmpty(iuBasic.getLeaveMethod())){ + if (ObjectUtil.isNotEmpty(iuBasic.getLeaveMethod())) { leaveMethodList.add(iuBasic); } insertBasicList.add(iuBasic); @@ -143,12 +144,38 @@ public class MzsyPatientInfoSyncServiceImpl implements PatientInfoSyncService { if (Func.isNotEmpty(insertBasicList)) { tBasicMapper.insertBatch(insertBasicList); + syncZkInfo(insertBasicList); } if (Func.isNotEmpty(updateBasicList)) { tBasicMapper.updateBatch(updateBasicList); + syncZkInfo(updateBasicList); } if (Func.isNotEmpty(leaveMethodList)) { tBasicMapper.updateExtend(leaveMethodList); } } + + /** + * 同步转科信息 + */ + private void syncZkInfo(List tBasicList) { + try { + for (TBasic tBasic : tBasicList) { + List tBasicZkInfoList = mzsyPatientInfoViewMapper.listZkInfo(tBasic.getJzh()); + if (Func.isNotEmpty(tBasicZkInfoList)) { + tBasicMapper.delZkInfo(tBasic.getPatientId()); + for (TBasicZkInfo tBasicZkInfo : tBasicZkInfoList) { + tBasicZkInfo.setId(idService.getDateSeq()); + tBasicZkInfo.setPatientId(tBasic.getPatientId()); + tBasicZkInfo.setCreateTime(new Date()); + } + tBasicMapper.addZkInfo(tBasicZkInfoList); + } + } + } catch (Exception e) { + log.error("添加转科信息出错了:" + e.getMessage(), e); + } + + } + } diff --git a/src/main/java/com/docus/server/mzsy/mapper/MzsyPatientInfoViewMapper.java b/src/main/java/com/docus/server/mzsy/mapper/MzsyPatientInfoViewMapper.java index c5723fb..2595747 100644 --- a/src/main/java/com/docus/server/mzsy/mapper/MzsyPatientInfoViewMapper.java +++ b/src/main/java/com/docus/server/mzsy/mapper/MzsyPatientInfoViewMapper.java @@ -1,6 +1,7 @@ package com.docus.server.mzsy.mapper; import com.baomidou.dynamic.datasource.annotation.DS; +import com.docus.server.archive.entity.TBasicZkInfo; import com.docus.server.mzsy.entity.MzsyPatientInfoView; import org.apache.ibatis.annotations.Param; @@ -17,5 +18,5 @@ public interface MzsyPatientInfoViewMapper { List pageByViwe(@Param("cyrqStart") String cyrqStart,@Param("startTime") String startTime,@Param("pageNum") Integer pageNum, @Param("pageSize") Integer pageSize); - + List listZkInfo(@Param("jzh") String jzh); } diff --git a/src/main/resources/bootstrap.yml b/src/main/resources/bootstrap.yml index 617fa81..6635db2 100644 --- a/src/main/resources/bootstrap.yml +++ b/src/main/resources/bootstrap.yml @@ -133,11 +133,15 @@ spring: cloud: nacos: discovery: - server-addr: nacos.docus.cn + server-addr: nacos.docus.cn:8848 namespace: 34acdf7a-9fc6-4bbd-8aea-9a47c8007ad5 + username: nacos + password: docus@702docus@702 config: server-addr: ${spring.cloud.nacos.discovery.server-addr} namespace: 34acdf7a-9fc6-4bbd-8aea-9a47c8007ad5 + username: nacos + password: docus@702docus@702 file-extension: yml shared-configs: - comm.${spring.cloud.nacos.config.file-extension} diff --git a/src/main/resources/mapper/MzsyPatientInfoViewMapper.xml b/src/main/resources/mapper/MzsyPatientInfoViewMapper.xml index 40b4885..de7ca09 100644 --- a/src/main/resources/mapper/MzsyPatientInfoViewMapper.xml +++ b/src/main/resources/mapper/MzsyPatientInfoViewMapper.xml @@ -13,4 +13,14 @@ WHERE v.ROWNUMBER BETWEEN ${(pageNum-1)*pageSize+1} AND ${pageNum*pageSize} + diff --git a/src/main/resources/mapper/TBasicMapper.xml b/src/main/resources/mapper/TBasicMapper.xml index ab9806b..850931c 100644 --- a/src/main/resources/mapper/TBasicMapper.xml +++ b/src/main/resources/mapper/TBasicMapper.xml @@ -26,6 +26,16 @@ ) + + INSERT INTO docus_medicalrecord.t_basic_zk_info + (id, patient_id, out_dept_code, out_dept_name, out_date, in_dept_code, in_dept_name, create_time) + VALUES + + ( + #{zk.id},#{zk.patientId},#{zk.outDeptCode},#{zk.outDeptName},#{zk.outDate},#{zk.inDeptCode},#{zk.inDeptName},#{zk.createTime} + ) + + UPDATE `docus_medicalrecord`.`t_basic` @@ -51,6 +61,9 @@ leave_method=#{basic.leaveMethod}; + + delete from docus_medicalrecord.t_basic_zk_info where patient_id = #{patientId} +