From 1fb7fc160753c4283f7b84c14f931d87b6c922e4 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期四, 10 七月 2025 14:58:05 +0800
Subject: [PATCH] 代码提交
---
smartor/src/main/java/com/smartor/mapper/SysDept2Mapper.java | 13 +
smartor/src/main/java/com/smartor/mapper/Icd10Mapper.java | 3
.idea/modules.xml | 4
smartor/src/main/java/com/smartor/mapper/SysUser2Mapper.java | 8 +
smartor/src/main/java/com/smartor/mapper/PatMedOuthospMapper.java | 38 ++++++
smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java | 48 +++++++
smartor/src/main/resources/mapper/smartor/PatMedOuthospMapper.xml | 104 +++++++++++++++++
ruoyi-admin/src/main/resources/logback.xml | 2
smartor/src/main/resources/mapper/smartor/Icd10Mapper.xml | 40 ++++++
.idea/misc.xml | 3
smartor/src/main/resources/mapper/smartor/SysDeptMapper.xml | 54 ++++++++
smartor/src/main/resources/mapper/smartor/SysUserMapper.xml | 42 ++++++
12 files changed, 341 insertions(+), 18 deletions(-)
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 25daa30..00118d8 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
+ <component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="MavenProjectsManager">
<option name="originalFiles">
<list>
@@ -8,4 +9,4 @@
</option>
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK" />
-</project>
\ No newline at end of file
+</project>
diff --git a/.idea/modules.xml b/.idea/modules.xml
index b6443bd..8a75ce6 100644
--- a/.idea/modules.xml
+++ b/.idea/modules.xml
@@ -2,7 +2,6 @@
<project version="4">
<component name="ProjectModuleManager">
<modules>
- <module fileurl="file://$PROJECT_DIR$/ruoyi.iml" filepath="$PROJECT_DIR$/ruoyi.iml" />
<module fileurl="file://$PROJECT_DIR$/ruoyi-admin/ruoyi-admin.iml" filepath="$PROJECT_DIR$/ruoyi-admin/ruoyi-admin.iml" />
<module fileurl="file://$PROJECT_DIR$/ruoyi-common/ruoyi-common.iml" filepath="$PROJECT_DIR$/ruoyi-common/ruoyi-common.iml" />
<module fileurl="file://$PROJECT_DIR$/ruoyi-framework/ruoyi-framework.iml" filepath="$PROJECT_DIR$/ruoyi-framework/ruoyi-framework.iml" />
@@ -10,7 +9,6 @@
<module fileurl="file://$PROJECT_DIR$/ruoyi-quartz/ruoyi-quartz.iml" filepath="$PROJECT_DIR$/ruoyi-quartz/ruoyi-quartz.iml" />
<module fileurl="file://$PROJECT_DIR$/ruoyi-system/ruoyi-system.iml" filepath="$PROJECT_DIR$/ruoyi-system/ruoyi-system.iml" />
<module fileurl="file://$PROJECT_DIR$/smartor/smartor.iml" filepath="$PROJECT_DIR$/smartor/smartor.iml" />
- <module fileurl="file://$PROJECT_DIR$/ruoyi-admin/smartor-admin.iml" filepath="$PROJECT_DIR$/ruoyi-admin/smartor-admin.iml" />
</modules>
</component>
-</project>
\ No newline at end of file
+</project>
diff --git a/ruoyi-admin/src/main/resources/logback.xml b/ruoyi-admin/src/main/resources/logback.xml
index ab17872..96dd132 100644
--- a/ruoyi-admin/src/main/resources/logback.xml
+++ b/ruoyi-admin/src/main/resources/logback.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<!-- 鏃ュ織瀛樻斁璺緞 8095-->
- <property name="log.path" value="D:/health/logs"/>
+ <property name="log.path" value="E:/health/logs"/>
<!-- 鏃ュ織瀛樻斁璺緞 8096-->
<!-- <property name="log.path" value="D:/lihu/logs"/>-->
<!-- 涓芥按鏃ュ織瀛樻斁璺緞 -->
diff --git a/smartor/src/main/java/com/smartor/mapper/Icd10Mapper.java b/smartor/src/main/java/com/smartor/mapper/Icd10Mapper.java
index 0c040de..2354f6f 100644
--- a/smartor/src/main/java/com/smartor/mapper/Icd10Mapper.java
+++ b/smartor/src/main/java/com/smartor/mapper/Icd10Mapper.java
@@ -37,6 +37,9 @@
*/
public int insertIcd10(Icd10 icd10);
+ public int batchIcd10(List<Icd10> icd10s);
+
+
/**
* 淇敼鐤剧梾
*
diff --git a/smartor/src/main/java/com/smartor/mapper/PatMedOuthospMapper.java b/smartor/src/main/java/com/smartor/mapper/PatMedOuthospMapper.java
index ddd332c..8a00b1b 100644
--- a/smartor/src/main/java/com/smartor/mapper/PatMedOuthospMapper.java
+++ b/smartor/src/main/java/com/smartor/mapper/PatMedOuthospMapper.java
@@ -6,6 +6,7 @@
import com.smartor.domain.PatMedReq;
import com.smartor.domain.PatMedRes;
import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
/**
* 鎮h�呴棬璇婅褰昅apper鎺ュ彛
@@ -39,6 +40,8 @@
*/
public int insertPatMedOuthosp(PatMedOuthosp patMedOuthosp);
+ public int batchPatMedOuthosp(List<PatMedOuthosp> patMedOuthosps);
+
/**
* 淇敼鎮h�呴棬璇婅褰�
*
@@ -66,4 +69,39 @@
PatMedRes selectPatMedOuthospCount(PatMedReq patMedReq);
public List<PatMedRes> getDeptRanking(PatMedReq patMedReq);
+
+ /**
+ * 鑾峰彇琛ㄧ殑鏁伴噺
+ *
+ * @return
+ */
+ int countPatMedOuthosp();
+
+ /**
+ * 淇敼琛ㄥ悕
+ *
+ * @return
+ */
+ void renameTable(@Param("oldName") String oldName, @Param("newName") String newName);
+
+ /**
+ * 鍒涘缓鏂拌〃
+ *
+ * @param templateName
+ * @param newName
+ */
+ void createPatMedOuthosp(@Param("templateName") String templateName, @Param("newName") String newName);
+
+
+ void setAutoIncrement(@Param("tableName") String tableName, @Param("autoInc") long autoInc);
+
+ // 鏌ヨ鎵�鏈� pat_med_outhosp 寮�澶寸殑琛ㄥ悕
+ List<String> getAllOuthospTableNames();
+
+ // 鏌ヨ鎸囧畾琛ㄧ殑鏈�澶d
+ Long getMaxIdFromTable(@Param("tableName") String tableName);
+
+ void createOrReplaceView(@Param("viewSql") String viewSql);
}
+
+
diff --git a/smartor/src/main/java/com/smartor/mapper/SysDept2Mapper.java b/smartor/src/main/java/com/smartor/mapper/SysDept2Mapper.java
index c438dcc..95a5967 100644
--- a/smartor/src/main/java/com/smartor/mapper/SysDept2Mapper.java
+++ b/smartor/src/main/java/com/smartor/mapper/SysDept2Mapper.java
@@ -12,8 +12,7 @@
* @author ruoyi
*/
@Mapper
-public interface SysDept2Mapper
-{
+public interface SysDept2Mapper {
/**
* 鏌ヨ閮ㄩ棬绠$悊鏁版嵁
*
@@ -25,7 +24,7 @@
/**
* 鏍规嵁瑙掕壊ID鏌ヨ閮ㄩ棬鏍戜俊鎭�
*
- * @param roleId 瑙掕壊ID
+ * @param roleId 瑙掕壊ID
* @param deptCheckStrictly 閮ㄩ棬鏍戦�夋嫨椤规槸鍚﹀叧鑱旀樉绀�
* @return 閫変腑閮ㄩ棬鍒楄〃
*/
@@ -91,6 +90,14 @@
public int insertDept(SysDept dept);
/**
+ * 鎵归噺鏂板閮ㄩ棬淇℃伅
+ *
+ * @param depts 閮ㄩ棬淇℃伅
+ * @return 缁撴灉
+ */
+ public int batchDept(List<SysDept> depts);
+
+ /**
* 淇敼閮ㄩ棬淇℃伅
*
* @param dept 閮ㄩ棬淇℃伅
diff --git a/smartor/src/main/java/com/smartor/mapper/SysUser2Mapper.java b/smartor/src/main/java/com/smartor/mapper/SysUser2Mapper.java
index 884efaf..684c797 100644
--- a/smartor/src/main/java/com/smartor/mapper/SysUser2Mapper.java
+++ b/smartor/src/main/java/com/smartor/mapper/SysUser2Mapper.java
@@ -62,6 +62,14 @@
public int insertUser(SysUser user);
/**
+ * 鎵归噺鏂板鐢ㄦ埛淇℃伅
+ *
+ * @param user 鐢ㄦ埛淇℃伅
+ * @return 缁撴灉
+ */
+ public int batchUser(List<SysUser> users);
+
+ /**
* 淇敼鐢ㄦ埛淇℃伅
*
* @param user 鐢ㄦ埛淇℃伅
diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java
index 73f905f..c8e8bb5 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java
@@ -826,6 +826,9 @@
@Override
public Boolean addFinshJZInfo(Map dataMap) {
log.info("ServiceExternalServiceImpl---addFinshJZInfo鐨勬柊澧炵殑鍊间负锛歿}", dataMap);
+ //鍏堝琛ㄨ繘琛岀淮鎶�
+ tableMaintenance();
+
Map yeWuXX = (Map) dataMap.get("YeWuXX");
Map XiaoXiTou = (Map) dataMap.get("XiaoXiTou");
String FaSongJGID = ObjectUtils.isNotEmpty(XiaoXiTou.get("FaSongJGID")) ? XiaoXiTou.get("FaSongJGID").toString() : null;
@@ -908,10 +911,53 @@
if (i > 0) {
return true;
}
-
return false;
}
+
+ public void tableMaintenance() {
+ // 1. 鍒ゆ柇琛ㄦ暟鎹噺
+ int count = patMedOuthospMapper.countPatMedOuthosp();
+ if (count > 3000000) {
+ // 2. 鍐疯棌琛ㄥ苟鏂板缓
+ String timeSuffix = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date());
+ String oldName = "pat_med_outhosp";
+ String newName = oldName + "_" + timeSuffix;
+
+ // 鍐疯棌
+ patMedOuthospMapper.renameTable(oldName, newName);
+
+ // 3. 璁$畻鎵�鏈夎〃鐨勬渶澶d
+ List<String> tableNames = patMedOuthospMapper.getAllOuthospTableNames();
+ long maxId = 0;
+ for (String tableName : tableNames) {
+ Long tableMaxId = patMedOuthospMapper.getMaxIdFromTable(tableName);
+ if (tableMaxId != null && tableMaxId > maxId) {
+ maxId = tableMaxId;
+ }
+ }
+
+ // 4. 鏂板缓
+ patMedOuthospMapper.createPatMedOuthosp(oldName, newName);
+
+ // 5. 璁剧疆鏂拌〃鑷璧峰鍊�
+ patMedOuthospMapper.setAutoIncrement(oldName, maxId + 1);
+
+ // 6. 鏇存柊/鏂板缓瑙嗗浘
+ // 閲嶆柊鑾峰彇鎵�鏈夎〃鍚嶏紙鍖呭惈鍒氭柊寤虹殑涓昏〃锛�
+ List<String> allTables = patMedOuthospMapper.getAllOuthospTableNames();
+ StringBuilder sb = new StringBuilder();
+ sb.append("CREATE OR REPLACE VIEW v_pat_med_outhosp AS ");
+ for (int i = 0; i < allTables.size(); i++) {
+ sb.append("SELECT * FROM ").append(allTables.get(i));
+ if (i < allTables.size() - 1) {
+ sb.append(" UNION ALL ");
+ }
+ }
+ patMedOuthospMapper.createOrReplaceView(sb.toString());
+ }
+ }
+
@Override
public Boolean addDiseaseInfo(Map dataMap) {
log.info("ServiceExternalServiceImpl---addDiseaseInfo鐨勬柊澧炵殑鍊间负锛歿}", dataMap);
diff --git a/smartor/src/main/resources/mapper/smartor/Icd10Mapper.xml b/smartor/src/main/resources/mapper/smartor/Icd10Mapper.xml
index 527dc20..3447bc3 100644
--- a/smartor/src/main/resources/mapper/smartor/Icd10Mapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/Icd10Mapper.xml
@@ -103,6 +103,46 @@
</trim>
</insert>
+ <insert id="batchIcd10">
+ insert into icd10
+ (
+ icdcode,
+ icdname,
+ icdpym,
+ icdwbm,
+ orgid,
+ del_flag,
+ create_by,
+ create_time,
+ update_by,
+ update_time,
+ pid,
+ guid,
+ lastflag,
+ chimedflag,
+ his_icdid)
+ VALUES
+ <foreach collection="list" item="item" separator=",">
+ (
+ #{item.icdcode},
+ #{item.icdname},
+ #{item.icdpym},
+ #{item.icdwbm},
+ #{item.orgid},
+ #{item.delFlag},
+ #{item.createBy},
+ #{item. createTime},
+ #{item.updateBy},
+ #{item.updateTime},
+ #{item.pid},
+ #{item.guid},
+ #{item.lastflag},
+ #{item.chimedflag},
+ #{item. hisIcdid,}
+ )
+ </foreach>
+ </insert>
+
<update id="updateIcd10" parameterType="com.smartor.domain.Icd10">
update icd10
<trim prefix="SET" suffixOverrides=",">
diff --git a/smartor/src/main/resources/mapper/smartor/PatMedOuthospMapper.xml b/smartor/src/main/resources/mapper/smartor/PatMedOuthospMapper.xml
index 84fedd6..6822850 100644
--- a/smartor/src/main/resources/mapper/smartor/PatMedOuthospMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/PatMedOuthospMapper.xml
@@ -130,7 +130,6 @@
</if>
<if test="patid != null ">and pmo.patid = #{patid}</if>
<if test="patno != null ">and pmo.patno = #{patno}</if>
- <if test="orgid != null and orgid != ''">and pmo.orgid = #{orgid}</if>
<if test="outhospno != null and outhospno != ''">and pmo.outhospno = #{outhospno}</if>
<if test="diagcheckFlag != null and diagcheckFlag != ''">and pmo.diagcheck_flag = #{diagcheckFlag}</if>
</where>
@@ -210,6 +209,78 @@
<if test="remark != null">#{remark},</if>
</trim>
</insert>
+
+ <insert id="batchPatMedOuthosp">
+ insert into pat_med_outhosp
+ (
+ serialnum,
+ patid,
+ hospitalname,
+ hospitalcode,
+ icd10code,
+ diagname,
+ deptcode,
+ deptname,
+ drcode,
+ drname,
+ admitdate,
+ orgid,
+ del_flag,
+ update_by,
+ update_time,
+ create_by,
+ create_time,
+ isupload,
+ upload_time,
+ schemestatus,
+ deptid,
+ schemetime,
+ hpi,
+ mainsuit,
+ outhospno,
+ patname,
+ guid,
+ patno,
+ diagcheck_flag,
+ remark)
+ values
+ <foreach collection="list" item="item" separator=",">
+ (
+ #{item.serialnum},
+ #{item.patid},
+ #{item.hospitalname},
+ #{item.hospitalcode},
+ #{item.icd10code},
+ #{item.diagname},
+ #{item.deptcode},
+ #{item.deptname},
+ #{item.drcode},
+ #{item.drname},
+ #{item.admitdate},
+ #{item.orgid},
+ #{item.delFlag},
+ #{item.updateBy},
+ #{item.updateTime},
+ #{item.createBy},
+ #{item.createTime},
+ #{item.isupload},
+ #{item.uploadTime},
+ #{item.schemestatus},
+ #{item.deptid},
+ #{item.schemetime},
+ #{item.hpi},
+ #{item.hpi},
+ #{item.mainsuit},
+ #{item.outhospno},
+ #{item.patname},
+ #{item.guid},
+ #{item.patno},
+ #{item.diagcheckFlag},
+ #{item.remark}
+ )
+ </foreach>
+ </insert>
+
<update id="updatePatMedOuthosp" parameterType="com.smartor.domain.PatMedOuthosp">
update pat_med_outhosp
@@ -297,4 +368,35 @@
</if>
</where>
</select>
+
+ <!-- PatMedOuthospMapper.xml -->
+ <select id="countPatMedOuthosp" resultType="int">
+ SELECT COUNT(*) FROM pat_med_outhosp
+ </select>
+
+ <update id="renameTable">
+ RENAME TABLE ${oldName} TO ${newName}
+ </update>
+
+ <update id="createPatMedOuthosp">
+ CREATE TABLE ${newName} LIKE ${templateName}
+ </update>
+
+ <update id="setAutoIncrement">
+ ALTER TABLE ${tableName} AUTO_INCREMENT = #{autoInc}
+ </update>
+
+ <select id="getAllOuthospTableNames" resultType="String">
+ SELECT table_name FROM information_schema.tables
+ WHERE table_schema = DATABASE() AND table_name LIKE 'pat_med_outhosp%'
+ </select>
+
+ <select id="getMaxIdFromTable" resultType="Long">
+ SELECT IFNULL(MAX(id), 0) FROM ${tableName}
+ </select>
+
+ <update id="createOrReplaceView">
+ ${viewSql}
+ </update>
+
</mapper>
diff --git a/smartor/src/main/resources/mapper/smartor/SysDeptMapper.xml b/smartor/src/main/resources/mapper/smartor/SysDeptMapper.xml
index 13bd562..089aa5e 100644
--- a/smartor/src/main/resources/mapper/smartor/SysDeptMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/SysDeptMapper.xml
@@ -57,7 +57,8 @@
where d.del_flag = '0'
<if test="deptId != null and deptId != 0">
AND dept_id = #{deptId}
- </if> <if test="type != null">
+ </if>
+ <if test="type != null">
AND type = #{type}
</if>
<if test="parentId != null and parentId != 0">
@@ -112,7 +113,7 @@
d.orgid,
d.his_dept_id,
d.his_parent_id
- (select dept_name from sys_dept where dept_id = d.parent_id) parent_name
+ (select dept_name from sys_dept where dept_id = d.parent_id) parent_name
from sys_dept d
where d.dept_id = #{deptId}
</select>
@@ -132,7 +133,7 @@
d.orgid,
d.his_dept_id,
d.his_parent_id
- d.status
+ d.status
from sys_dept d
where del_flag = 0
and d.dept_code = #{deptCode}
@@ -171,6 +172,53 @@
where dept_name=#{deptName} and parent_id = #{parentId} and del_flag = '0' limit 1
</select>
+
+ <insert id="batchDept">
+ insert into sys_dept(
+ dept_id,
+ parent_id,
+ dept_name,
+ ancestors,
+ order_num,
+ leader,
+ phone,
+ email,
+ status,
+ dept_code,
+ dept_type,
+ create_by,
+ his_dept_id,
+ his_parent_id,
+ type,
+ guid,
+ orgid,
+ create_time
+ ) values
+ <foreach collection="list" item="item" separator=",">
+ (
+ #{item.deptId},
+ #{item.parentId},
+ #{item.deptName},
+ #{item.ancestors},
+ #{item.orderNum},
+ #{item.leader},
+ #{item.phone},
+ #{item.email},
+ #{item.status},
+ #{item.deptCode},
+ #{item.deptType},
+ #{item.createBy},
+ #{item.hisDeptId},
+ #{item.hisParentId},
+ #{item.type},
+ #{item.guid},
+ #{item.orgid},
+ now()
+ )
+ </foreach>
+ </insert>
+
+
<insert id="insertDept" parameterType="com.ruoyi.common.core.domain.entity.SysDept">
insert into sys_dept(
<if test="deptId != null and deptId != 0">dept_id,</if>
diff --git a/smartor/src/main/resources/mapper/smartor/SysUserMapper.xml b/smartor/src/main/resources/mapper/smartor/SysUserMapper.xml
index 861e149..515c620 100644
--- a/smartor/src/main/resources/mapper/smartor/SysUserMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/SysUserMapper.xml
@@ -309,6 +309,43 @@
)
</insert>
+
+ <insert id="batchUser">
+ insert into sys_user(
+ user_id, dept_id, user_name, nick_name, email, avatar, phonenumber, sex, password, status, create_by, remark,
+ user_type, dept_info, hosp_info, searchscope, id_card, title, job_phone, birthday, his_user_id, guid, orgid,
+ create_time
+ ) values
+ <foreach collection="list" item="item" separator=",">
+ (
+ #{item.userId},
+ #{item.deptId},
+ #{item.userName},
+ #{item.nickName},
+ #{item.email},
+ #{item.avatar},
+ #{item.phonenumber},
+ #{item.sex},
+ #{item.password},
+ #{item.status},
+ #{item.createBy},
+ #{item.remark},
+ #{item.userType},
+ #{item.deptInfo},
+ #{item.hospInfo},
+ #{item.searchscope},
+ #{item.idCard},
+ #{item.title},
+ #{item.jobPhone},
+ #{item.birthday},
+ #{item.hisUserId},
+ #{item.guid},
+ #{item.orgid},
+ now()
+ )
+ </foreach>
+ </insert>
+
<update id="updateUser" parameterType="com.ruoyi.common.core.domain.entity.SysUser">
update sys_user
<set>
@@ -344,11 +381,6 @@
where user_id = #{userId}
</update>
- <update id="updateUserStatus" parameterType="com.ruoyi.common.core.domain.entity.SysUser">
- update sys_user
- set status = #{status}
- where user_id = #{userId}
- </update>
<update id="updateUserAvatar" parameterType="com.ruoyi.common.core.domain.entity.SysUser">
update sys_user
--
Gitblit v1.9.3