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}
+