From bb14a46e456ee3a89ae385559726667acd8af37e Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期三, 05 三月 2025 19:51:37 +0800
Subject: [PATCH] 代码提交

---
 smartor/src/main/java/com/smartor/domain/ExternalDiseaseInfo.java                            |    6 
 ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml                              |   13 +
 smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java               |   88 +++++++-
 smartor/src/main/java/com/smartor/domain/Icd10.java                                          |    7 
 smartor/src/main/java/com/smartor/domain/ServiceTaskVO.java                                  |    7 
 smartor/src/main/java/com/smartor/domain/ExternalDiagnosisInfo.java                          |  111 ----------
 smartor/src/main/java/com/smartor/domain/ExternalJZInfo.java                                 |   40 ++++
 ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml                              |    2 
 smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java                |    7 
 ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java                     |    7 
 ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java                        |    7 
 ruoyi-framework/src/main/java/com/ruoyi/framework/interceptor/HospitalFilterInterceptor.java |   20 +
 smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java          |    8 
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedInhospController.java       |   11 +
 smartor/src/main/java/com/smartor/domain/ServiceOutPath.java                                 |    7 
 smartor/src/main/java/com/smartor/domain/ThiedInhospInfo.java                                |    2 
 ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPasswordService.java        |   42 +--
 smartor/src/main/java/com/smartor/domain/ExternalWZInfo.java                                 |   43 ++++
 smartor/src/main/resources/mapper/smartor/ServiceOutPathMapper.xml                           |   12 
 smartor/src/main/resources/mapper/smartor/ServiceTaskMapper.xml                              |    8 
 smartor/src/main/resources/mapper/smartor/Icd10Mapper.xml                                    |    7 
 ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/UserDetailsServiceImpl.java    |    2 
 ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java                                 |    2 
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java             |   90 +++++++++
 ruoyi-admin/src/main/resources/application-druid.yml                                         |   20 +-
 ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java                       |    4 
 26 files changed, 381 insertions(+), 192 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java b/ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java
index 5f4e3c5..ae1e75b 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java
@@ -290,6 +290,7 @@
 
                         try {
                             String patid = rsaPublicKeyExample.encryptedData(serviceSubtask.getPatid().toString(), pub_key);
+                            String subId = rsaPublicKeyExample.encryptedData(serviceSubtask.getId().toString(), pub_key);
                             SendMagParam sendMagParam = new SendMagParam();
                             sendMagParam.setType("4");
                             if (type == 1) {
@@ -297,6 +298,7 @@
                                 ServiceOutPath serviceOutPath = new ServiceOutPath();
                                 serviceOutPath.setParam1(taskId);
                                 serviceOutPath.setParam2(patid);
+                                serviceOutPath.setParam6(subId);
                                 serviceOutPath.setCreateTime(new Date());
                                 iServiceOutPathService.insertServiceOutPath(serviceOutPath);
 //                                sendMagParam.setUrl(ip + ":" + req_path + "/followvisit/particty?param1=" + taskId + "&param2=" + patid + "&param5=false");
@@ -313,6 +315,7 @@
                                 ServiceOutPath serviceOutPath = new ServiceOutPath();
                                 serviceOutPath.setParam1(taskId);
                                 serviceOutPath.setParam2(patid);
+                                serviceOutPath.setParam6(subId);
 //                                serviceOutPath.setParam3(URLEncoder.encode(ivrTask1.getTaskName(), StandardCharsets.UTF_8.toString()));
                                 serviceOutPath.setParam3(ivrTask1.getTaskName());
                                 serviceOutPath.setCreateTime(new Date());
@@ -330,6 +333,7 @@
                                 ServiceOutPath serviceOutPath = new ServiceOutPath();
                                 serviceOutPath.setParam1(taskId);
                                 serviceOutPath.setParam2(patid);
+                                serviceOutPath.setParam6(subId);
 //                                serviceOutPath.setParam3(URLEncoder.encode(ivrTask1.getTaskName(), StandardCharsets.UTF_8.toString()));
                                 serviceOutPath.setParam3(ivrTask1.getTaskName());
                                 serviceOutPath.setCreateTime(new Date());
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedInhospController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedInhospController.java
index 9104b97..7201cc7 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedInhospController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedInhospController.java
@@ -168,4 +168,15 @@
         return getDataTable(patMedInhospService.getDocAndPat(patMedInhosp));
     }
 
+//    /**
+//     * 鍖绘姢涓庢偅鑰呭叧鑱斿叧绯�
+//     *
+//     * @return
+//     */
+//    @ApiOperation("鍖绘姢涓庢偅鑰呭叧鑱斿叧绯�")
+//    @GetMapping("/test")
+//    public void test() {
+//        patMedInhospService.dealOutHospInfo();
+//    }
+
 }
diff --git a/ruoyi-admin/src/main/resources/application-druid.yml b/ruoyi-admin/src/main/resources/application-druid.yml
index d07c9df..e7600ff 100644
--- a/ruoyi-admin/src/main/resources/application-druid.yml
+++ b/ruoyi-admin/src/main/resources/application-druid.yml
@@ -17,17 +17,17 @@
         #        username: smartor
         #        password: Smartor.2023
         #        driverClassName: com.mysql.cj.jdbc.Driver
-        #        # 鏂板崕
-        url: jdbc:mysql://192.168.191.181:3308/smartor?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
-        username: smartor
-        password: Smartor.2023
-        driverClassName: com.mysql.cj.jdbc.Driver
+        #        #        # 鏂板崕
+        #        url: jdbc:mysql://192.168.191.181:3308/smartor?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+        #        username: smartor
+        #        password: Smartor.2023
+        #        driverClassName: com.mysql.cj.jdbc.Driver
 
-#        #        鍏徃浜�
-#        url: jdbc:mysql://116.62.18.175:6002/smartor?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
-#        username: hxsoft
-#        password: Hxerp2000
-#        driverClassName: com.mysql.cj.jdbc.Driver
+        #        #  鍏徃浜�
+        url: jdbc:mysql://116.62.18.175:6002/smartor_lisui?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+        username: hxsoft
+        password: Hxerp2000
+        driverClassName: com.mysql.cj.jdbc.Driver
 
 
       # 浠庡簱鏁版嵁婧�
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/interceptor/HospitalFilterInterceptor.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/interceptor/HospitalFilterInterceptor.java
index 7c9bc0c..2a8632f 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/interceptor/HospitalFilterInterceptor.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/interceptor/HospitalFilterInterceptor.java
@@ -72,13 +72,7 @@
      * @return 淇敼鍚庣殑 SQL
      */
     private String modifySqlWithorgidId(String originalSql, String orgid) {
-        if (originalSql.contains("insert into")
-                || originalSql.contains("INSERT INTO")
-                || originalSql.contains("from sys_menu")
-                || originalSql.contains("update sys_menu")
-                || originalSql.contains("information_schema.tables")
-                || originalSql.contains("information_schema.columns")
-                || originalSql.contains("gen_table")) {
+        if (originalSql.contains("insert into") || originalSql.contains("INSERT INTO") || originalSql.contains("from sys_menu") || originalSql.contains("update sys_menu") || originalSql.contains("information_schema.tables") || originalSql.contains("information_schema.columns") || originalSql.contains("gen_table")) {
             return originalSql;
         }
         // 鎻愬彇 orgid 鐨� WHERE 瀛愬彞
@@ -106,6 +100,18 @@
         // 淇敼 SQL
         if (originalSql.toUpperCase().contains("WHERE")) {
             // 鍦ㄥ凡鏈� WHERE 鍚庢坊鍔� orgid 鏉′欢
+            if (originalSql.toUpperCase().contains("(SELECT")) {
+                int i = originalSql.toUpperCase().lastIndexOf("WHERE");
+                if (i != -1) { // 纭繚鎵惧埌浜嗗尮閰嶉」
+                    // 鍒嗗壊瀛楃涓�
+                    String before = originalSql.substring(0, i);
+                    String after = originalSql.substring(i + "WHERE".length());
+                    // 閲嶆柊缁勫悎瀛楃涓�
+                    String newString = before + "WHERE " + whereClause + " AND " + after;
+                    return newString;
+                }
+
+            }
             return originalSql.replaceFirst("(?i)WHERE", "WHERE " + whereClause + " AND ");
         } else {
             // 濡傛灉娌℃湁 WHERE锛屾鏌ユ槸鍚︽湁 ORDER BY 鎴� LIMIT
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPasswordService.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPasswordService.java
index 6ad91b0..f8f43c2 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPasswordService.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPasswordService.java
@@ -1,6 +1,7 @@
 package com.ruoyi.framework.web.service;
 
 import java.util.concurrent.TimeUnit;
+
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.security.core.Authentication;
@@ -19,12 +20,11 @@
 
 /**
  * 鐧诲綍瀵嗙爜鏂规硶
- * 
+ *
  * @author ruoyi
  */
 @Component
-public class SysPasswordService
-{
+public class SysPasswordService {
     @Autowired
     private RedisCache redisCache;
 
@@ -36,58 +36,46 @@
 
     /**
      * 鐧诲綍璐︽埛瀵嗙爜閿欒娆℃暟缂撳瓨閿悕
-     * 
+     *
      * @param username 鐢ㄦ埛鍚�
      * @return 缂撳瓨閿甼ey
      */
-    private String getCacheKey(String username)
-    {
+    private String getCacheKey(String username) {
         return CacheConstants.PWD_ERR_CNT_KEY + username;
     }
 
-    public void validate(SysUser user)
-    {
+    public void validate(SysUser user) {
         Authentication usernamePasswordAuthenticationToken = AuthenticationContextHolder.getContext();
         String username = usernamePasswordAuthenticationToken.getName();
         String password = usernamePasswordAuthenticationToken.getCredentials().toString();
 
         Integer retryCount = redisCache.getCacheObject(getCacheKey(username));
 
-        if (retryCount == null)
-        {
+        if (retryCount == null) {
             retryCount = 0;
         }
 
-        if (retryCount >= Integer.valueOf(maxRetryCount).intValue())
-        {
-            AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL,
-                    MessageUtils.message("user.password.retry.limit.exceed", maxRetryCount, lockTime)));
+        if (retryCount >= Integer.valueOf(maxRetryCount).intValue()) {
+            AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.password.retry.limit.exceed", maxRetryCount, lockTime)));
             throw new UserPasswordRetryLimitExceedException(maxRetryCount, lockTime);
         }
 
-        if (!matches(user, password))
-        {
+        if (!matches(user, password)) {
             retryCount = retryCount + 1;
-            AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL,
-                    MessageUtils.message("user.password.retry.limit.count", retryCount)));
+            AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.password.retry.limit.count", retryCount)));
             redisCache.setCacheObject(getCacheKey(username), retryCount, lockTime, TimeUnit.MINUTES);
             throw new UserPasswordNotMatchException();
-        }
-        else
-        {
+        } else {
             clearLoginRecordCache(username);
         }
     }
 
-    public boolean matches(SysUser user, String rawPassword)
-    {
+    public boolean matches(SysUser user, String rawPassword) {
         return SecurityUtils.matchesPassword(rawPassword, user.getPassword());
     }
 
-    public void clearLoginRecordCache(String loginName)
-    {
-        if (redisCache.hasKey(getCacheKey(loginName)))
-        {
+    public void clearLoginRecordCache(String loginName) {
+        if (redisCache.hasKey(getCacheKey(loginName))) {
             redisCache.deleteObject(getCacheKey(loginName));
         }
     }
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/UserDetailsServiceImpl.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/UserDetailsServiceImpl.java
index b18bc30..2d59c39 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/UserDetailsServiceImpl.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/UserDetailsServiceImpl.java
@@ -37,7 +37,7 @@
     public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException
     {
         String[] split = username.split("&");
-        SysUser user = userService.selectUserByUserName(split[0]);
+        SysUser user = userService.selectUserByUserName2(username);
         if (StringUtils.isNull(user))
         {
             log.info("鐧诲綍鐢ㄦ埛锛歿} 涓嶅瓨鍦�.", username);
diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
index 4a42a20..7b979e2 100644
--- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
+++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
@@ -415,12 +415,14 @@
                                     continue;
                                 }
                                 String patid = rsaPublicKeyExample.encryptedData(serviceSubtask.getPatid().toString(), pub_key);
+                                String subId = rsaPublicKeyExample.encryptedData(serviceSubtask.getId().toString(), pub_key);
                                 SendMagParam sendMagParam = new SendMagParam();
                                 sendMagParam.setType("4");
                                 ServiceOutPath serviceOutPath = new ServiceOutPath();
                                 serviceOutPath.setParam1(taskId);
                                 serviceOutPath.setParam2(patid);
                                 serviceOutPath.setParam3(ivrTask1.getTaskName());
+                                serviceOutPath.setParam6(subId);
                                 serviceOutPath.setCreateTime(new Date());
                                 iServiceOutPathService.insertServiceOutPath(serviceOutPath);
                                 String format = String.format("%03X", serviceOutPath.getId());
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java
index ea8115d..f06d7b1 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java
@@ -44,6 +44,13 @@
      * @return 鐢ㄦ埛瀵硅薄淇℃伅
      */
     public SysUser selectUserByUserName(String userName);
+    /**
+     * 閫氳繃鐢ㄦ埛鍚嶆煡璇㈢敤鎴�
+     *
+     * @param userName 鐢ㄦ埛鍚�
+     * @return 鐢ㄦ埛瀵硅薄淇℃伅
+     */
+    public SysUser selectUserByUserNameByCondition(@Param("userName") String userName, @Param("orgid") String orgid);
 
     /**
      * 閫氳繃鐢ㄦ埛ID鏌ヨ鐢ㄦ埛
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java
index 43af9bd..5682882 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java
@@ -41,6 +41,13 @@
      * @return 鐢ㄦ埛瀵硅薄淇℃伅
      */
     public SysUser selectUserByUserName(String userName);
+    /**
+     * 閫氳繃鐢ㄦ埛鍚嶆煡璇㈢敤鎴�
+     *
+     * @param userName 鐢ㄦ埛鍚�
+     * @return 鐢ㄦ埛瀵硅薄淇℃伅
+     */
+    public SysUser selectUserByUserName2(String userName);
 
     /**
      * 閫氳繃鐢ㄦ埛ID鏌ヨ鐢ㄦ埛
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
index e126467..bce9286 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
@@ -157,6 +157,96 @@
         return sysUser;
     }
 
+    @Override
+    public SysUser selectUserByUserName2(String userName) {
+        String[] split = userName.split("&");
+        SysUser sysUser = userMapper.selectUserByUserNameByCondition(split[0], split[1]);
+        List<SysDept> sysDepts = null;
+        if (StringUtils.isNotEmpty(split[0]) && split[0].equals("admin")) {
+            SysDept dept = new SysDept();
+            dept.setOrgid(split[1]);
+            sysDepts = sysDeptMapper.selectDeptList(dept);
+        } else {
+            sysDepts = sysUserDeptMapper.selectDeptListByUserId(sysUser.getUserId());
+        }
+        List<Long> deptIds = new ArrayList<>();
+        for (SysDept sysDept : sysDepts) {
+            deptIds.add(sysDept.getDeptId());
+        }
+        SysUserDept sysUserDept = new SysUserDept();
+        sysUserDept.setUserId(sysUser.getUserId());
+        sysUserDept.setDeptType(sysUser.getSearchscope());
+        List<SysUserDept> sysUserDeptKSs = null;
+        List<SysUserDept> sysUserDeptBQs = null;
+        if (StringUtils.isNotEmpty(sysUser.getSearchscope()) && sysUser.getSearchscope().equals("0")) {
+            if (StringUtils.isNotEmpty(split[0]) && split[0].equals("admin")) {
+                sysUserDept.setUserId(null);
+            }
+            sysUserDept.setDeptType("1");
+            sysUserDeptKSs = sysUserDeptMapper.selectSysUserDeptList(sysUserDept);
+            sysUserDept.setDeptType("2");
+            sysUserDeptBQs = sysUserDeptMapper.selectSysUserDeptList(sysUserDept);
+            //濡傛灉鏄痑dmin锛岄渶瑕佸sysUserDeptBQs锛宻ysUserDeptBQs鍘婚噸
+            if (StringUtils.isNotEmpty(split[0]) && split[0].equals("admin")) {
+                List<SysUserDept> distinctUserDepts = new ArrayList<>();
+                Set<String> uniqueDeptCodes = new HashSet<>();
+                for (SysUserDept userDept : sysUserDeptKSs) {
+                    String deptCode = userDept.getDeptCode();
+                    if (!uniqueDeptCodes.contains(deptCode)) {
+                        distinctUserDepts.add(userDept);
+                        uniqueDeptCodes.add(deptCode);
+                    }
+                }
+
+                List<SysUserDept> distinctUserBQs = new ArrayList<>();
+                Set<String> uniqueBQCodes = new HashSet<>();
+                for (SysUserDept userDept : sysUserDeptBQs) {
+                    String deptCode = userDept.getDeptCode();
+                    if (!uniqueBQCodes.contains(deptCode)) {
+                        distinctUserBQs.add(userDept);
+                        uniqueBQCodes.add(deptCode);
+                    }
+                }
+                sysUserDeptKSs = distinctUserDepts;
+                sysUserDeptBQs = distinctUserBQs;
+            }
+
+        } else if (StringUtils.isNotEmpty(sysUser.getSearchscope()) && sysUser.getSearchscope().equals("1")) {
+            sysUserDept.setDeptType("1");
+            sysUserDeptKSs = sysUserDeptMapper.selectSysUserDeptList(sysUserDept);
+        } else if (StringUtils.isNotEmpty(sysUser.getSearchscope()) && sysUser.getSearchscope().equals("2")) {
+            sysUserDept.setDeptType("2");
+            sysUserDeptBQs = sysUserDeptMapper.selectSysUserDeptList(sysUserDept);
+        }
+
+        sysUser.setDepts(deptIds);
+        if (!CollectionUtils.isEmpty(sysUserDeptBQs)) {
+            List<Map<String, Object>> list = new ArrayList<>();
+            for (SysUserDept sud : sysUserDeptBQs) {
+                Map<String, Object> map = new HashMap<>();
+                map.put("districtCode", "");
+                if (StringUtils.isNotEmpty(sud.getDeptCode())) map.put("districtCode", sud.getDeptCode());
+                map.put("districtName", "");
+                if (StringUtils.isNotEmpty(sud.getDeptName())) map.put("districtName", sud.getDeptName());
+                list.add(map);
+            }
+            sysUser.setBelongWards(list);
+        }
+        if (!CollectionUtils.isEmpty(sysUserDeptKSs)) {
+            List<Map<String, Object>> list = new ArrayList<>();
+            for (SysUserDept sud : sysUserDeptKSs) {
+                Map<String, Object> map = new HashMap<>();
+                map.put("deptCode", "");
+                if (StringUtils.isNotEmpty(sud.getDeptCode())) map.put("deptCode", sud.getDeptCode());
+                map.put("deptName", "");
+                if (StringUtils.isNotEmpty(sud.getDeptName())) map.put("deptName", sud.getDeptName());
+                list.add(map);
+            }
+            sysUser.setBelongDepts(list);
+        }
+        return sysUser;
+    }
+
     /**
      * 閫氳繃鐢ㄦ埛ID鏌ヨ鐢ㄦ埛
      *
diff --git a/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml
index c13724f..6830b7a 100644
--- a/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml
@@ -107,7 +107,7 @@
                d.email,
                d.status,
                d.his_dept_id,
-               d.his_parent_id
+               d.his_parent_id,
                (select dept_name from sys_dept where dept_id = d.parent_id) parent_name
         from sys_dept d
         where d.dept_id = #{deptId}
diff --git a/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
index 18ad711..5993a75 100644
--- a/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
@@ -225,6 +225,19 @@
         where u.user_name = #{userName} and u.del_flag = '0'
     </select>
 
+    <select id="selectUserByUserNameByCondition" parameterType="String" resultMap="SysUserResult">
+        <include refid="selectUserVo"/>
+        <where>
+            u.del_flag = '0'
+            <if test="userName != null and userName != ''">
+                AND u.user_name = #{userName}
+            </if>
+            <if test="orgid != null and orgid != ''">
+                AND u.orgid = #{orgid}
+            </if>
+        </where>
+    </select>
+
     <select id="selectUserById" parameterType="Long" resultMap="SysUserResult">
         <include refid="selectUserVo"/>
         where u.user_id = #{userId}
diff --git a/smartor/src/main/java/com/smartor/domain/ExternalDiagnosisInfo.java b/smartor/src/main/java/com/smartor/domain/ExternalDiagnosisInfo.java
index 2ed984a..e10dc45 100644
--- a/smartor/src/main/java/com/smartor/domain/ExternalDiagnosisInfo.java
+++ b/smartor/src/main/java/com/smartor/domain/ExternalDiagnosisInfo.java
@@ -39,121 +39,14 @@
     private String ZhenDuanYSXM;
 
     @ApiModelProperty(value = "璇婃柇鏃堕棿")
-    private String ZhenDuanSJ;
+    private Date ZhenDuanSJ;
 
     @ApiModelProperty(value = "鍙戠梾鏃ユ湡")
-    private String FaBingRQ;
+    private Date FaBingRQ;
 
     @ApiModelProperty(value = "璇婃柇 ID")
     private String ZhenDuanID;
 
     @ApiModelProperty(value = "璇婃柇鍚嶇О")
     private String ZhenDuanMC;
-
-    @ApiModelProperty(value = "璇佷欢鍙风爜")
-    private String ZhengJianHM;
-
-    @ApiModelProperty(value = "鎬у埆浠g爜")
-    private String XingBieDM;
-
-    @ApiModelProperty(value = "鎬у埆鍚嶇О")
-    private String XingBieMC;
-
-    @ApiModelProperty(value = "鍑虹敓鏃ユ湡")
-    private Date ChuShengRQ;
-
-    @ApiModelProperty(value = "骞撮緞")
-    private Long NianLing;
-
-    @ApiModelProperty(value = "骞撮緞鍗曚綅")
-    private String NianLingDW;
-
-    @ApiModelProperty(value = "褰撳墠绉戝ID 鍏ラ櫌绉戝 ID")
-    private String DangQianKSID;
-
-    @ApiModelProperty(value = "褰撳墠绉戝鍚嶇О 鍏ラ櫌绉戝鍚嶇О")
-    private String DangQianKSMC;
-
-    @ApiModelProperty(value = "褰撳墠鐥呭尯ID 鍏ラ櫌鐥呭尯ID")
-    private String DangQianBQID;
-
-    @ApiModelProperty(value = "褰撳墠鐥呭尯鍚嶇О 鍏ラ櫌鐥呭尯鍚嶇О")
-    private String DangQianBQMC;
-
-    @ApiModelProperty(value = "褰撳墠搴婁綅ID 鍏ラ櫌搴婁綅 ID")
-    private String DangQianCWID;
-
-    @ApiModelProperty(value = "褰撳墠搴婁綅鍚嶇О 鍏ラ櫌搴婁綅鍚嶇О")
-    private String DangQianCWMC;
-
-    @ApiModelProperty(value = "浣忛櫌娆℃暟")
-    private Long ZhuYuanCS;
-
-    @ApiModelProperty(value = "鍏ラ櫌鏃堕棿")
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    private Date RuYuanSJ;
-
-    @ApiModelProperty(value = "璐圭敤绫诲埆 ID")
-    private String FeiYongLBID;
-
-    @ApiModelProperty(value = "璐圭敤绫诲埆鍚嶇О")
-    private String FeiYongLBMC;
-
-    @ApiModelProperty(value = "璐圭敤鎬ц川 ID")
-    private String FeiYongXZID;
-
-    @ApiModelProperty(value = "璐圭敤鎬ц川鍚嶇О")
-    private String FeiYongXZMC;
-
-    @ApiModelProperty(value = "鑱旂郴鐢佃瘽")
-    private String LianXiDH;
-
-    @ApiModelProperty(value = "鑱旂郴浜虹數璇�")
-    private String LianXiRDH;
-
-    @ApiModelProperty(value = "鍗曚綅鐢佃瘽")
-    private String DanWeiDH;
-
-    @ApiModelProperty(value = "鍗曚綅鍚嶇О")
-    private String DanWeiMC;
-
-    @ApiModelProperty(value = "濠氬Щ浠g爜")
-    private String HunYinDM;
-
-    @ApiModelProperty(value = "濠氬Щ鍚嶇О")
-    private String HunYinMC;
-
-    @ApiModelProperty(value = "鑱屼笟浠g爜")
-    private String ZhiYeDM;
-
-    @ApiModelProperty(value = "鑱屼笟鍚嶇О")
-    private String ZhiYeMC;
-
-    @ApiModelProperty(value = "鍥界睄浠g爜")
-    private String GuoJiDM;
-
-    @ApiModelProperty(value = "鍥界睄鍚嶇О")
-    private String GuoJiMC;
-
-    @ApiModelProperty(value = "姘戞棌浠g爜")
-    private String MinZuDM;
-
-    @ApiModelProperty(value = "姘戞棌鍚嶇О")
-    private String MinZuMC;
-
-    @ApiModelProperty(value = "鎿嶄綔浜� ID")
-    private String CaoZuoRID;
-
-    @ApiModelProperty(value = "鎿嶄綔浜哄鍚�")
-    private String CaoZuoRXM;
-
-    @ApiModelProperty(value = "濠村効鏍囧織")
-    private String YingErBZ;
-
-    @ApiModelProperty(value = "姣嶄翰灏辫瘖 ID")
-    private String MuQinZYJZID;
-
-    @ApiModelProperty(value = "浜у鏍囧織")
-    private String ChanFuBZ;
-
 }
diff --git a/smartor/src/main/java/com/smartor/domain/ExternalDiseaseInfo.java b/smartor/src/main/java/com/smartor/domain/ExternalDiseaseInfo.java
index c63fea5..56012d1 100644
--- a/smartor/src/main/java/com/smartor/domain/ExternalDiseaseInfo.java
+++ b/smartor/src/main/java/com/smartor/domain/ExternalDiseaseInfo.java
@@ -51,10 +51,10 @@
     private String FUJIBMC;
 
     @ApiModelProperty(value = "ICD9")
-    private String ICD9;
+    private String IcD9;
 
-    @ApiModelProperty(value = "ICD9")
-    private String ICD10;
+    @ApiModelProperty(value = "IcD10")
+    private String IcD10;
 
     @ApiModelProperty(value = "鐤剧梾鍒嗙被浠g爜")
     private String JiBingFLDM;
diff --git a/smartor/src/main/java/com/smartor/domain/ExternalJZInfo.java b/smartor/src/main/java/com/smartor/domain/ExternalJZInfo.java
new file mode 100644
index 0000000..1b52141
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/domain/ExternalJZInfo.java
@@ -0,0 +1,40 @@
+package com.smartor.domain;
+
+import com.ruoyi.common.core.domain.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @author 鎺ユ敹绗笁鏂规偅鑰呭氨璇婁俊鎭�
+ * @date 2024-12-13
+ */
+@Data
+@ApiModel(value = "ExternalInHospPatientInfo", description = "鎺ユ敹绗笁鏂规偅鑰呰瘖鏂俊鎭�")
+public class ExternalJZInfo extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty(value = "灏辫瘖绉戝 ID")
+    private String JiuZhenKSID;
+
+    @ApiModelProperty(value = "灏辫瘖绉戝鍚嶇О")
+    private String JiuZhenKSMC;
+
+    @ApiModelProperty(value = "灏辫瘖鍖荤敓 ID")
+    private String JiuZhenYSID;
+
+    @ApiModelProperty(value = "灏辫瘖鍖荤敓鍚嶇О")
+    private String JiuZhenYSMC;
+
+    @ApiModelProperty(value = "灏辫瘖鏃ユ湡")
+    private Date JiuZhenRQ;
+
+    @ApiModelProperty(value = "鎮h�呭幓鍚戜唬鐮�")
+    private String HuanZheQXDM;
+
+    @ApiModelProperty(value = "鎮h�呭幓鍚戝悕绉�")
+    private String HuanZheQXMC;
+
+}
diff --git a/smartor/src/main/java/com/smartor/domain/ExternalWZInfo.java b/smartor/src/main/java/com/smartor/domain/ExternalWZInfo.java
new file mode 100644
index 0000000..20ea77b
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/domain/ExternalWZInfo.java
@@ -0,0 +1,43 @@
+package com.smartor.domain;
+
+import com.ruoyi.common.core.domain.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @author 鎺ユ敹绗笁鏂规偅鑰呴棶璇婁俊鎭�
+ * @date 2024-12-13
+ */
+@Data
+@ApiModel(value = "ExternalWZInfo", description = "鎺ユ敹绗笁鏂规偅鑰呴棶璇婁俊鎭�")
+public class ExternalWZInfo extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty(value = "闂瘖绫诲瀷浠g爜")
+    private String WenZhenLXDM;
+
+    @ApiModelProperty(value = "闂瘖绫诲瀷鍚嶇О")
+    private String WenZhenLXMC;
+
+    @ApiModelProperty(value = "鍐呭")
+    private String NeiRong;
+
+    @ApiModelProperty(value = "闂瘖鏃堕棿")
+    private Date WenZhenSJ;
+
+    @ApiModelProperty(value = "闂瘖鍖荤敓ID")
+    private Date WenZhenYSID;
+
+    @ApiModelProperty(value = "闂瘖鍖荤敓濮撳悕")
+    private String WenZhenYSXM;
+
+    @ApiModelProperty(value = "闂瘖绉戝ID")
+    private String WenZhenKSID;
+
+    @ApiModelProperty(value = "闂瘖绉戝鍚嶇О")
+    private String WenZhenKSMC;
+
+}
diff --git a/smartor/src/main/java/com/smartor/domain/Icd10.java b/smartor/src/main/java/com/smartor/domain/Icd10.java
index 3d7f303..9a3eb2f 100644
--- a/smartor/src/main/java/com/smartor/domain/Icd10.java
+++ b/smartor/src/main/java/com/smartor/domain/Icd10.java
@@ -33,6 +33,13 @@
     private String icdcode;
 
     /**
+     * HIS鐨刬cd10id
+     */
+    @ApiModelProperty("HIS鐨刬cd10id")
+    @Excel(name = "HIS鐨刬cd10id")
+    private String hisIcdid;
+
+    /**
      * icd10鍚嶇О
      */
     @ApiModelProperty("icd10鍚嶇О")
diff --git a/smartor/src/main/java/com/smartor/domain/ServiceOutPath.java b/smartor/src/main/java/com/smartor/domain/ServiceOutPath.java
index 0415bc0..58ec14f 100644
--- a/smartor/src/main/java/com/smartor/domain/ServiceOutPath.java
+++ b/smartor/src/main/java/com/smartor/domain/ServiceOutPath.java
@@ -38,6 +38,13 @@
     private String param2;
 
     /**
+     * 瀛愪换鍔D
+     */
+    @ApiModelProperty("瀛愪换鍔D")
+    private String param6;
+
+
+    /**
      * task_name
      */
     @ApiModelProperty("task_name")
diff --git a/smartor/src/main/java/com/smartor/domain/ServiceTaskVO.java b/smartor/src/main/java/com/smartor/domain/ServiceTaskVO.java
index c2cbc01..cb44d66 100644
--- a/smartor/src/main/java/com/smartor/domain/ServiceTaskVO.java
+++ b/smartor/src/main/java/com/smartor/domain/ServiceTaskVO.java
@@ -40,6 +40,13 @@
     private Long taskid;
 
     /**
+     * 鍙戦�佸ぉ鏁�
+     */
+    @Excel(name = "鍙戦�佸ぉ鏁�")
+    @ApiModelProperty(value = "鍙戦�佸ぉ鏁�")
+    private Long sendDay;
+
+    /**
      *
      */
     @Excel(name = "  ")
diff --git a/smartor/src/main/java/com/smartor/domain/ThiedInhospInfo.java b/smartor/src/main/java/com/smartor/domain/ThiedInhospInfo.java
index 8a32f46..e6d4883 100644
--- a/smartor/src/main/java/com/smartor/domain/ThiedInhospInfo.java
+++ b/smartor/src/main/java/com/smartor/domain/ThiedInhospInfo.java
@@ -406,11 +406,13 @@
     @ApiModelProperty("鑱旂郴鐢佃瘽")
     @Excel(name = "鑱旂郴鐢佃瘽")
     private String companyTelNum;
+
     /**
      * 鏁版嵁绫诲瀷
      */
     @ApiModelProperty("鍑虹敓鏃ユ湡")
     @Excel(name = "鍑虹敓鏃ユ湡")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private String patiBirthday;
 
     /**
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 311421c..c20ac7b 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java
@@ -50,6 +50,8 @@
     private PatMedOperationItemMapper patMedOperationItemMapper;
     @Autowired
     private Icd10Mapper icd10Mapper;
+    @Autowired
+    private PatMedOuthospMapper patMedOuthospMapper;
 
     @Value("${defaultPwd}")
     private String defaultPwd;
@@ -295,7 +297,7 @@
             }).collect(Collectors.toList());
             patMedInhosp1.setLeaveicd10code(StringUtils.isNotEmpty(patMedInhosp1.getLeaveicd10code()) ? patMedInhosp1.getLeaveicd10code() + "," + hospPatientDiagnoseInfos2.get(0).getZhenDuanID() : hospPatientDiagnoseInfos2.get(0).getZhenDuanID());
             patMedInhosp1.setLeavediagname(StringUtils.isNotEmpty(patMedInhosp1.getLeavediagname()) ? patMedInhosp1.getLeavediagname() + "," + hospPatientDiagnoseInfos2.get(0).getZhenDuanMC() : hospPatientDiagnoseInfos2.get(0).getZhenDuanMC());
-
+            patMedInhosp1.setInhospstate("1");
             int i = patMedInhospMapper.updatePatMedInhosp(patMedInhosp1);
             if (i != 1) return false;
         }
@@ -327,36 +329,88 @@
     @Override
     public Boolean addFinshJZInfo(Map dataMap) {
         log.error("ServiceExternalServiceImpl---addFinshJZInfo鐨勬柊澧炵殑鍊间负锛歿}", dataMap);
-//        Map yeWuXX = (Map) dataMap.get("YeWuXX");
-//        Map<String, Object> BingRenXX = (Map<String, Object>) yeWuXX.get("BingRenXX");
-//        Map<String, Object> JiuZhenXX = (Map<String, Object>) yeWuXX.get("JiuZhenXX");
-//        ExternalInHospPatientInfo externalInHospPatientInfo = BeanUtil.mapToBean(BingRenXX, ExternalInHospPatientInfo.class, true);
-//        PatMedOuthosp patMedOuthosp = new PatMedOuthosp();
-//        patMedOuthosp.setOuthospno(externalInHospPatientInfo.getBingAnHao());
-//        patMedOuthosp.setSerialnum(externalInHospPatientInfo.getBingAnHao());
-//        patMedOuthosp.setPatid(Long.valueOf(externalInHospPatientInfo.getBingRenID()));
-//        patMedOuthosp.setPatname(externalInHospPatientInfo.getXingMing());
-//        patMedOuthosp.setHospitalname(externalInHospPatientInfo.getZuZhiJGMC());
-//        patMedOuthosp.setHospitalcode(externalInHospPatientInfo.getZuZhiJGID());
-//        patMedOuthosp.setIcd10code();
+        Map yeWuXX = (Map) dataMap.get("YeWuXX");
+        Map<String, Object> BingRenXX = (Map<String, Object>) yeWuXX.get("BingRenXX");
+        Map<String, Object> JiuZhenXX = (Map<String, Object>) yeWuXX.get("JiuZhenXX");
+        List<HashMap<String, Object>> ZhenDuanList = (List<HashMap<String, Object>>) yeWuXX.get("ZhenDuanList");
+        List<HashMap<String, Object>> externalWZInfos = (List<HashMap<String, Object>>) yeWuXX.get("WenZhenList");
+        ExternalInHospPatientInfo externalInHospPatientInfo = BeanUtil.mapToBean(BingRenXX, ExternalInHospPatientInfo.class, true);
+        ExternalJZInfo externalJZInfo = BeanUtil.mapToBean(JiuZhenXX, ExternalJZInfo.class, true);
+        List<ExternalDiagnosisInfo> externalDiagnosisInfoList = ZhenDuanList.stream().map(map -> {
+            ExternalDiagnosisInfo info = new ExternalDiagnosisInfo();
+            info.setZhenDuanYSID((String) map.get("ZhenDuanYSID"));
+            info.setZhenDuanYSXM((String) map.get("ZhenDuanYSXM"));
+            info.setZhenDuanID((String) map.get("ZhenDuanID"));
+            info.setZhenDuanMC((String) map.get("ZhenDuanMC"));
+            info.setZhenDuanLBDM((String) map.get("ZhenDuanLBDM"));
+            info.setZhenDuanLBMC((String) map.get("ZhenDuanLBMC"));
+            return info;
+        }).collect(Collectors.toList());
 
+        List<ExternalWZInfo> ExternalWZInfoList = externalWZInfos.stream().map(map -> {
+            ExternalWZInfo info = new ExternalWZInfo();
+            info.setWenZhenLXMC((String) map.get("WenZhenLXMC"));
+            info.setNeiRong((String) map.get("NeiRong"));
+            return info;
+        }).collect(Collectors.toList());
 
-        return null;
+        PatArchive patArchive = addPatArchive(externalInHospPatientInfo, null, null);
+
+        PatMedOuthosp patMedOuthosp = new PatMedOuthosp();
+        patMedOuthosp.setOuthospno(externalInHospPatientInfo.getBingAnHao());
+        patMedOuthosp.setSerialnum(externalInHospPatientInfo.getBingAnHao());
+        patMedOuthosp.setPatid(patArchive.getId());
+        patMedOuthosp.setPatname(externalInHospPatientInfo.getXingMing());
+        patMedOuthosp.setHospitalname(externalInHospPatientInfo.getZuZhiJGMC());
+        patMedOuthosp.setHospitalcode(externalInHospPatientInfo.getZuZhiJGID());
+        patMedOuthosp.setDeptname(externalJZInfo.getJiuZhenKSMC());
+        patMedOuthosp.setDeptcode(externalJZInfo.getJiuZhenKSID());
+        patMedOuthosp.setAdmitdate(externalJZInfo.getJiuZhenRQ());
+
+        Map XiaoXiTou = (Map) dataMap.get("XiaoXiTou");
+        String FaSongJGID = XiaoXiTou.get("FaSongJGID").toString();
+        patMedOuthosp.setOrgid(FaSongJGID);
+
+        for (ExternalDiagnosisInfo externalDiagnosisInfo : externalDiagnosisInfoList) {
+            if (externalDiagnosisInfo.getZhenDuanLBMC().equals("涓昏瘖鏂�")) {
+                patMedOuthosp.setDiagname(externalDiagnosisInfo.getZhenDuanMC());
+                patMedOuthosp.setIcd10code(externalDiagnosisInfo.getZhenDuanID());
+                patMedOuthosp.setDrcode(externalDiagnosisInfo.getZhenDuanYSID());
+                patMedOuthosp.setDrname(externalDiagnosisInfo.getZhenDuanYSXM());
+            }
+        }
+        for (ExternalWZInfo externalWZInfo : ExternalWZInfoList) {
+            if (externalWZInfo.getWenZhenLXMC().equals("鐜扮梾鍙�")) {
+                patMedOuthosp.setHpi(externalWZInfo.getNeiRong());
+            }
+            if (externalWZInfo.getWenZhenLXMC().equals("涓昏瘔")) {
+                patMedOuthosp.setMainsuit(externalWZInfo.getNeiRong());
+            }
+        }
+        int i = patMedOuthospMapper.insertPatMedOuthosp(patMedOuthosp);
+        if (i > 0) {
+            return true;
+        }
+
+        return false;
     }
 
     @Override
     public Boolean addDiseaseInfo(Map dataMap) {
         log.error("ServiceExternalServiceImpl---addDiseaseInfo鐨勬柊澧炵殑鍊间负锛歿}", dataMap);
         Map yeWuXX = (Map) dataMap.get("YeWuXX");
-        Map<String, Object> JiBing = (Map<String, Object>) yeWuXX.get("JiBing");
+        Map<String, Object> JiBing = (Map<String, Object>) yeWuXX.get("JiBingMLXX");
         ExternalDiseaseInfo externalDiseaseInfo = BeanUtil.mapToBean(JiBing, ExternalDiseaseInfo.class, true);
+        Map XiaoXiTou = (Map) dataMap.get("XiaoXiTou");
+        String FaSongJGID = XiaoXiTou.get("FaSongJGID").toString();
         Icd10 icd10 = new Icd10();
-        icd10.setIcdcode(externalDiseaseInfo.getJiBingID());
+        icd10.setIcdcode(externalDiseaseInfo.getIcD10());
+        icd10.setHisIcdid(externalDiseaseInfo.getJiBingID());
         icd10.setIcdname(externalDiseaseInfo.getJiBingMC());
         icd10.setGuid(externalDiseaseInfo.getZuZhiJGID());
-        icd10.setOrgid(externalDiseaseInfo.getZuZhiJGID());
         icd10.setLastflag(externalDiseaseInfo.getMOJIBZ());
         icd10.setChimedflag("" + externalDiseaseInfo.getZhongYiZDBZ());
+        icd10.setOrgid(FaSongJGID);
 //        icd10Association.setIcd10AssortName(externalDiseaseInfo.getJiBingFLMC());
 //        icd10Association.setChineseMedicineDiagnoseSign(externalDiseaseInfo.getZhongYiZDBZ());
 //        icd10Association.setChineseMedicineDiagnoseAssortCode(externalDiseaseInfo.getZhongYiZDFLDM());
diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java
index fa83eaf..ec22b52 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java
@@ -311,15 +311,17 @@
         if (flag == 0L) {
             tid = Long.valueOf(rsaPublicKeyExample.decryptedData(serviceSubTaskCacheReq.getParam1(), pri_key));
             pid = Long.valueOf(rsaPublicKeyExample.decryptedData(serviceSubTaskCacheReq.getParam2(), pri_key));
-            subId = Long.valueOf(rsaPublicKeyExample.decryptedData(serviceSubTaskCacheReq.getParam6(), pri_key));
+            //杩欎釜鏄湁闂鐨勶紝鍏堣繖鏍凤紝鍚堝苟浠g爜鐨勬椂鍊欐病鏈夋妸param6鍚堣繘鏉�
+            if (StringUtils.isNotEmpty(serviceSubTaskCacheReq.getParam6())) {
+                subId = Long.valueOf(rsaPublicKeyExample.decryptedData(serviceSubTaskCacheReq.getParam6(), pri_key));
+            }
         } else if (flag == 1L) {
             tid = Long.valueOf(serviceSubTaskCacheReq.getParam1());
             pid = Long.valueOf(serviceSubTaskCacheReq.getParam2());
             if (StringUtils.isNotEmpty(serviceSubTaskCacheReq.getParam6()))
                 subId = Long.valueOf(serviceSubTaskCacheReq.getParam6());
 
-        }
-        ServiceSubtaskVO serviceSubtaskVO = new ServiceSubtaskVO();
+        } ServiceSubtaskVO serviceSubtaskVO = new ServiceSubtaskVO();
         serviceSubtaskVO.setTaskid(tid);
         serviceSubtaskVO.setPatid(pid);
         serviceSubtaskVO.setSubId(subId);
diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
index 4e62343..f9ca6ca 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -516,6 +516,7 @@
                 serviceTaskdept.setTaskId(serviceTask.getTaskid());
                 serviceTaskdept.setTaskName(serviceTask.getTaskName());
                 serviceTaskdept.setLongtask(0L);
+                serviceTaskdept.setOrgid(serviceTaskVO.getOrgid());
                 if (serviceTaskVO.getLongTask() == 1) serviceTaskdept.setLongtask(1L);
                 if (StringUtils.isNotEmpty(serviceTaskVO.getDeptcode())) {
                     String[] deptcodes = serviceTaskVO.getDeptcode().split(",");
@@ -1608,7 +1609,7 @@
             }
         }
         if (existList.size() != 0) redisCache.setCacheListRight("cache-exist", existList);
-        log.error("-----------瀹為檯鎷夊彇鐨勭數璇濇暟鎹噺锛歿}", pullTaskVOList.size());
+        log.error("-----------瀹為檯鎷夊彇鐨勭數璇濇暟鎹噺锛歿}", CollectionUtils.isNotEmpty(pullTaskVOList) ? pullTaskVOList.size() : null);
         return pullTaskVOList;
     }
 
@@ -1988,7 +1989,7 @@
             serviceSubtask.setId(Long.valueOf(phoneCallRecordVO.getTaskid()));
             serviceSubtask.setFinishtime(new Date());
             serviceSubtask.setUpdateTime(new Date());
-            log.error("鐢佃瘽鎷ㄦ墦宸插畬鎴恠erviceSubtask鐨勫�间负:{}",serviceSubtask);
+            log.error("鐢佃瘽鎷ㄦ墦宸插畬鎴恠erviceSubtask鐨勫�间负:{}", serviceSubtask);
             serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
             //涓嬭浇鏂囦欢
             ftpService.downloadFolder("/" + LocalDate.now().toString(), profile + "/upload/vadio/voice/" + LocalDate.now().toString());
@@ -2180,10 +2181,12 @@
         RSAPublicKeyExample rsaPublicKeyExample = new RSAPublicKeyExample();
         String taskId = rsaPublicKeyExample.encryptedData(serviceSubtask.getTaskid().toString(), pub_key);
         String patid = rsaPublicKeyExample.encryptedData(serviceSubtask.getPatid().toString(), pub_key);
+        String subId = rsaPublicKeyExample.encryptedData(serviceSubtask.getId().toString(), pub_key);
         ServiceOutPath serviceOutPath = new ServiceOutPath();
         serviceOutPath.setParam1(taskId);
         serviceOutPath.setParam2(patid);
         serviceOutPath.setCreateTime(new Date());
+        serviceOutPath.setParam6(subId);
         iServiceOutPathService.insertServiceOutPath(serviceOutPath);
         //杞垚16杩涘埗
         String format = String.format("%03X", serviceOutPath.getId());
diff --git a/smartor/src/main/resources/mapper/smartor/Icd10Mapper.xml b/smartor/src/main/resources/mapper/smartor/Icd10Mapper.xml
index d3e0302..527dc20 100644
--- a/smartor/src/main/resources/mapper/smartor/Icd10Mapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/Icd10Mapper.xml
@@ -20,11 +20,13 @@
         <result property="guid" column="guid"/>
         <result property="lastflag" column="lastflag"/>
         <result property="chimedflag" column="chimedflag"/>
+        <result property="hisIcdid" column="his_icdid"/>
     </resultMap>
 
     <sql id="selectIcd10Vo">
         select icdid,
                icdcode,
+               his_icdid,
                lastflag,
                chimedflag,
                icdname,
@@ -44,6 +46,7 @@
     <select id="selectIcd10List" parameterType="com.smartor.domain.Icd10" resultMap="Icd10Result">
         <include refid="selectIcd10Vo"/>
         <where>
+            del_flag=0
             <if test="icdcode != null  and icdcode != ''">and icdcode = #{icdcode}</if>
             <if test="lastflag != null  and lastflag != ''">and lastflag = #{lastflag}</if>
             <if test="chimedflag != null  and chimedflag != ''">and chimedflag = #{chimedflag}</if>
@@ -53,6 +56,7 @@
             <if test="orgid != null  and orgid != ''">and orgid = #{orgid}</if>
             <if test="pid != null ">and pid = #{pid}</if>
             <if test="guid != null  and guid != ''">and guid = #{guid}</if>
+            <if test="hisIcdid != null  and hisIcdid != ''">and his_icdid = #{hisIcdid}</if>
         </where>
     </select>
 
@@ -78,6 +82,7 @@
             <if test="guid != null">guid,</if>
             <if test="lastflag != null  and lastflag != ''">lastflag,</if>
             <if test="chimedflag != null  and chimedflag != ''">chimedflag,</if>
+            <if test="hisIcdid != null  and hisIcdid != ''">his_icdid,</if>
         </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="icdcode != null">#{icdcode},</if>
@@ -94,6 +99,7 @@
             <if test="guid != null">#{guid},</if>
             <if test="lastflag != null  and lastflag != ''">#{lastflag},</if>
             <if test="chimedflag != null  and chimedflag != ''">#{chimedflag},</if>
+            <if test="hisIcdid != null  and hisIcdid != ''">#{hisIcdid},</if>
         </trim>
     </insert>
 
@@ -114,6 +120,7 @@
             <if test="guid != null">guid = #{guid},</if>
             <if test="lastflag != null  and lastflag != ''">lastflag = #{lastflag},</if>
             <if test="chimedflag != null  and chimedflag != ''">chimedflag = #{chimedflag},</if>
+            <if test="hisIcdid != null  and hisIcdid != ''">his_icdid = #{hisIcdid},</if>
         </trim>
         where icdid = #{icdid}
     </update>
diff --git a/smartor/src/main/resources/mapper/smartor/ServiceOutPathMapper.xml b/smartor/src/main/resources/mapper/smartor/ServiceOutPathMapper.xml
index b246fe1..eb99290 100644
--- a/smartor/src/main/resources/mapper/smartor/ServiceOutPathMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/ServiceOutPathMapper.xml
@@ -80,13 +80,11 @@
             </if>
             <if test="param5 != null">param5,
             </if>
+            <if test="param6 != null">param6,
+            </if>
             <if test="radix != null">radix,
             </if>
             <if test="createTime != null">create_time,
-            </if>
-            <if test="guid != null">guid,
-            </if>
-            <if test="orgid != null">orgid,
             </if>
 
         </trim>
@@ -99,13 +97,11 @@
             </if>
             <if test="param5 != null">#{param5},
             </if>
+            <if test="param6 != null">#{param6},
+            </if>
             <if test="radix != null">#{radix},
             </if>
             <if test="createTime != null">#{createTime},
-            </if>
-            <if test="guid != null">#{guid},
-            </if>
-            <if test="orgid != null">#{orgid},
             </if>
         </trim>
     </insert>
diff --git a/smartor/src/main/resources/mapper/smartor/ServiceTaskMapper.xml b/smartor/src/main/resources/mapper/smartor/ServiceTaskMapper.xml
index 1c27746..72235d9 100644
--- a/smartor/src/main/resources/mapper/smartor/ServiceTaskMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/ServiceTaskMapper.xml
@@ -498,10 +498,10 @@
             </if>
             <if test="leavehospitaldistrictcode != null  ">leavehospitaldistrictcode = #{leavehospitaldistrictcode},
             </if>
-            <if test="compensateDate != null  and compensateDate != ''">compensate_date = #{compensateDate}</if>
-            <if test="sendDay != null  ">send_day = #{sendDay}</if>
-            <if test="appltype != null  ">appltype = #{appltype}</if>
-            <if test="patCycle != null  ">pat_cycle = #{patCycle}</if>
+            <if test="compensateDate != null  and compensateDate != ''">compensate_date = #{compensateDate},</if>
+            <if test="sendDay != null  ">send_day = #{sendDay},</if>
+            <if test="appltype != null  ">appltype = #{appltype},</if>
+            <if test="patCycle != null  ">pat_cycle = #{patCycle},</if>
         </trim>
         where taskid = #{taskid}
     </update>

--
Gitblit v1.9.3