From d7a1bed2e072cc3e40746c0b9e541d0ccd14e2a3 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期五, 06 二月 2026 14:19:10 +0800
Subject: [PATCH] 【丽水】新增科室用户信息接口输入
---
smartor/src/main/java/com/smartor/domain/ExternalUserDeptInfo.java | 72 ++++++++++++++++++
smartor/src/main/java/com/smartor/service/IServiceExternalService.java | 7 +
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java | 3
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceExternalController.java | 18 ++++
smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java | 95 +++++++++++++++++++++++
5 files changed, 192 insertions(+), 3 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceExternalController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceExternalController.java
index 2079da6..9751402 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceExternalController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceExternalController.java
@@ -150,6 +150,24 @@
}
+ /**
+ * 鏂板绉戝淇℃伅
+ */
+ @ApiOperation("鏂板鐢ㄦ埛淇℃伅")
+ @PostMapping("/addUserDeptInfo")
+ public Map<String, Object> addUserDeptInfo(@RequestBody Map dataMap) {
+ Boolean aBoolean = true;
+ try {
+ aBoolean = serviceExternalService.addUserDeptInfo(dataMap);
+ } catch (Exception e) {
+ e.printStackTrace();
+ log.error("serviceExternal---addUserDeptInfo鍑哄紓甯镐簡锛歿}", e.getMessage());
+ aBoolean = false;
+ }
+ return returnParam(aBoolean, dataMap);
+
+ }
+
/**
* 鏂板鏈烘瀯淇℃伅
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 c32f368..7e08a3b 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
@@ -935,8 +935,9 @@
// 鎵惧埌涓嬩竴涓猻ort瀵瑰簲鐨刾reachform
String nextPreachform = serviceSubtaskPreachforms.stream().filter(item -> nextSort.equals(item.getSort())).map(ServiceSubtaskPreachform::getPreachform).findFirst().orElse("-1");
+ String orgid = serviceSubtask.getOrgid();
//寰俊宸插彂閫併�佸凡棰嗗彇璺宠繃鐭俊鍙戦�侊紝杩涜浜哄伐 -涓芥按涓尰闄�
- if (active.equals("47231022633110211A2101")) {
+ if (StringUtils.isNotEmpty(orgid) && orgid.equals("47231022633110211A2101")) {
//鑾峰彇褰撳墠鍙戦�佹柟寮�
ServiceSubtaskPreachform currentServiceSubtaskPreachform = serviceSubtaskPreachforms.stream().filter(item -> item.getSort().equals(currentSort.get())).findFirst().orElse(new ServiceSubtaskPreachform());
//褰撳墠鍙戦�佹柟寮忎负寰俊鐨勶紝涓斾笅涓�鍙戦�佹柟寮忎负鐭俊鐨勶紝寰俊鍙戦�佺姸鎬佷负宸插彂閫併�佸凡棰嗗彇鐨勶紝璺宠繃鐭俊姝ラ
diff --git a/smartor/src/main/java/com/smartor/domain/ExternalUserDeptInfo.java b/smartor/src/main/java/com/smartor/domain/ExternalUserDeptInfo.java
new file mode 100644
index 0000000..c363df8
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/domain/ExternalUserDeptInfo.java
@@ -0,0 +1,72 @@
+package com.smartor.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+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 = "ExternalUserDeptInfo", description = "鎺ユ敹绗笁鏂圭瀹ょ敤鎴蜂俊鎭�")
+public class ExternalUserDeptInfo extends BaseEntity {
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty(value = "缁勭粐鏈烘瀯 ID")
+ private String ZuZhiJGID;
+
+ @ApiModelProperty(value = "缁勭粐鏈烘瀯鍚嶇О")
+ private String ZuZhiJGMC;
+
+ @ApiModelProperty(value = "绉戝鐢ㄦ埛 ID")
+ private String KeShiYHDZID;
+
+ @ApiModelProperty(value = "浜嬩欢浠g爜 1-鏂板锛�2-淇敼锛�3-浣滃簾")
+ private String ShiJianDM;
+
+ @ApiModelProperty(value = "浜嬩欢鍚嶇О 1-鏂板锛�2-淇敼锛�3-浣滃簾")
+ private String ShiJianMC;
+
+ @ApiModelProperty(value = "鐢ㄦ埛 ID")
+ private String YongHuID;
+
+ @ApiModelProperty(value = "鐢ㄦ埛濮撳悕")
+ private String YongHuXM;
+
+ @ApiModelProperty(value = "绉戝 ID")
+ private String KeShiID;
+
+ @ApiModelProperty(value = "绉戝鍚嶇О")
+ private String KeShiMC;
+
+ @ApiModelProperty(value = "鍒涘缓浜� ID")
+ private String ChuangJianRID;
+
+ @ApiModelProperty(value = "鍒涘缓浜哄鍚�")
+ private String ChuangJianRXM;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date ChuangJianSJ;
+
+ @ApiModelProperty(value = "淇敼浜� ID")
+ private String XiuGaiRID;
+
+ @ApiModelProperty(value = "淇敼浜哄鍚�")
+ private String XiuGaiRXM;
+
+ @ApiModelProperty(value = "淇敼鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date XiuGaiSJ;
+
+ @ApiModelProperty(value = "鑱屽伐 ID")
+ private String ZhiGongID;
+
+ @ApiModelProperty(value = "鐢ㄦ埛鐧诲綍鐮�")
+ private String YongHuDLM;
+}
diff --git a/smartor/src/main/java/com/smartor/service/IServiceExternalService.java b/smartor/src/main/java/com/smartor/service/IServiceExternalService.java
index e6f5209..fbbd6e2 100644
--- a/smartor/src/main/java/com/smartor/service/IServiceExternalService.java
+++ b/smartor/src/main/java/com/smartor/service/IServiceExternalService.java
@@ -32,11 +32,14 @@
public Boolean generalInterface(@RequestBody Map dataMap);
/**
- * 鏂板绉戝淇℃伅
+ * 鏂板鐢ㄦ埛淇℃伅
*/
public Boolean addUserInfo(@RequestBody Map dataMap);
-
+ /**
+ * 鏂板绉戝鐢ㄦ埛淇℃伅
+ */
+ public Boolean addUserDeptInfo(@RequestBody Map dataMap);
/**
* 鏂板绉戝淇℃伅
*/
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 aed0d9c..d72677f 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java
@@ -3,6 +3,7 @@
import cn.hutool.core.bean.BeanUtil;
import com.ruoyi.common.core.domain.entity.SysDept;
import com.ruoyi.common.core.domain.entity.SysUser;
+import com.ruoyi.common.core.domain.entity.SysUserDept;
import com.ruoyi.common.core.redis.RedisCache;
import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.StringUtils;
@@ -40,6 +41,8 @@
private SysDept2Mapper sysDeptMapper;
@Autowired
private SysUser2Mapper sysUserMapper;
+ @Autowired
+ private SysUserDeptMapper sysUserDeptMapper;
@Autowired
private BaseOrganizationMapper baseOrganizationMapper;
@Autowired
@@ -132,6 +135,7 @@
log.info("ServiceExternalServiceImpl---addUserInfo鐨勬柊澧炵殑鍊间负锛歿}", dataMap);
Map yeWuXX = (Map) dataMap.get("YeWuXX");
Map<String, Object> yongHuXX = (Map<String, Object>) yeWuXX.get("YongHuXX");
+
ExternalUserInfo externalUserInfo = BeanUtil.mapToBean(yongHuXX, ExternalUserInfo.class, true);
if (ObjectUtils.isEmpty(externalUserInfo)) {
throw new BaseException("externalUserInfo鏄┖鐨勶紝娌℃湁鏁版嵁锛侊紒锛�");
@@ -180,6 +184,94 @@
return true;
}
+ @Override
+ public Boolean addUserDeptInfo(Map dataMap) {
+ log.info("ServiceExternalServiceImpl---addUserDeptInfo鐨勬柊澧炵殑鍊间负锛歿}", dataMap);
+ Map yeWuXX = (Map) dataMap.get("YeWuXX");
+ Map<String, Object> keShiYH = (Map<String, Object>) yeWuXX.get("KeShiYH");
+
+ ExternalUserDeptInfo externalUserDeptInfo = BeanUtil.mapToBean(keShiYH, ExternalUserDeptInfo.class, true);
+ if (ObjectUtils.isEmpty(externalUserDeptInfo)) {
+ throw new BaseException("externalUserDeptInfo鏄┖鐨勶紝娌℃湁鏁版嵁锛侊紒锛�");
+ }
+
+ //鑾峰彇褰撳墠鐢ㄦ埛Name瀵瑰簲鐨剈ser淇℃伅
+ SysUser sysUser = null;
+ SysUser sysUserVo = new SysUser();
+ sysUserVo.setUserName(externalUserDeptInfo.getYongHuDLM());
+ sysUserVo.setOrgid(externalUserDeptInfo.getZuZhiJGID());
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ sysUserVo.setCampusid("1");
+ //鏍规嵁userName鍒ゆ柇涓�涓嬶紝鏄笉鏄箣鍓嶆湁鏂板
+ List<SysUser> sysUserList = sysUserMapper.selectUserList(sysUserVo);
+ if (CollectionUtils.isNotEmpty(sysUserList)) {
+ sysUser = sysUserList.get(0);
+ }
+
+ //鑾峰彇褰撳墠绉戝hisDeptId瀵瑰簲鐨刣ept淇℃伅
+ SysDept sysDept = null;
+ SysDept sysDeptVo = new SysDept();
+ sysDeptVo.setOrgid(externalUserDeptInfo.getZuZhiJGID());
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ sysDeptVo.setCampusid("1");
+ sysDeptVo.setHisDeptId(externalUserDeptInfo.getKeShiID());
+ List<SysDept> sysDepts = sysDeptMapper.selectDeptList(sysDeptVo);
+ if (CollectionUtils.isNotEmpty(sysDepts)) {
+ sysDept = sysDepts.get(0);
+ }
+ if(ObjectUtils.isEmpty(sysUser)){
+ log.error("ServiceExternalServiceImpl---addUserDeptInfo 鎵句笉鍒板搴旂殑鐢ㄦ埛 username: {}", externalUserDeptInfo.getYongHuDLM());
+ return false;
+ }else if(ObjectUtils.isEmpty(sysDept)){
+ log.error("ServiceExternalServiceImpl---addUserDeptInfo 鎵句笉鍒板搴旂殑绉戝 hisDeptId: {}", externalUserDeptInfo.getKeShiID());
+ return false;
+ }else {
+ SysUserDept sysUserDept = new SysUserDept();
+ sysUserDept.setDelFlag(0L);
+ sysUserDept.setUserId(sysUser.getUserId());
+ sysUserDept.setUserCode(sysUser.getUserCode());
+ sysUserDept.setDeptType("2");
+ sysUserDept.setGuid(externalUserDeptInfo.getZuZhiJGID());
+ sysUserDept.setDeptId(sysDept.getDeptId());
+ sysUserDept.setDeptCode(sysDept.getDeptCode());
+ sysUserDept.setDeptName(sysDept.getDeptName());
+
+ sysUserDept.setCreateBy(externalUserDeptInfo.getChuangJianRXM());
+ sysUserDept.setCreateTime(externalUserDeptInfo.getChuangJianSJ());
+ sysUserDept.setUpdateTime(externalUserDeptInfo.getXiuGaiSJ());
+ sysUserDept.setUpdateBy(externalUserDeptInfo.getXiuGaiRXM());
+
+ if (StringUtils.isNotEmpty(externalUserDeptInfo.getShiJianDM()) && externalUserDeptInfo.getShiJianDM().equals("3")) {
+ sysUserDept.setDelFlag(1L);
+ }
+ SysUserDept sysUserDeptVo = new SysUserDept();
+ sysUserDeptVo.setUserId(sysUser.getUserId());
+ sysUserDeptVo.setDeptId(sysDept.getDeptId());
+ sysUserDeptVo.setOrgid(externalUserDeptInfo.getZuZhiJGID());
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ sysUserDeptVo.setCampusid("1");
+ //鏍规嵁userName鍒ゆ柇涓�涓嬶紝鏄笉鏄箣鍓嶆湁鏂板
+ SysUserDept sysUserDeptOld = null;
+ List<SysUserDept> SysUserDeptList = sysUserDeptMapper.selectSysUserDeptList(sysUserDeptVo);
+ if (CollectionUtils.isNotEmpty(SysUserDeptList)) {
+ sysUserDeptOld = SysUserDeptList.get(0);
+ }
+ if (ObjectUtils.isEmpty(sysUserDeptOld)) {
+ int i = sysUserDeptMapper.insertSysUserDept(sysUserDept);
+ log.info("ServiceExternalServiceImpl---addUserDeptInfo鏄惁鏂板鎴愬姛锛歿}", i);
+ } else {
+ sysUserDept.setUserId(sysUserDeptOld.getUserId());
+ int i = sysUserDeptMapper.updateSysUserDept(sysUserDept);
+ log.info("ServiceExternalServiceImpl---addUserDeptInfo鏄惁淇敼鎴愬姛03锛歿}", i);
+ }
+ //鏇存柊sys-user deptId
+ if(StringUtils.isNotEmpty(externalUserDeptInfo.getKeShiID())){
+ sysUser.setDeptId(Long.valueOf(externalUserDeptInfo.getKeShiID()));
+ sysUserMapper.updateUser(sysUser);
+ }
+ }
+ return true;
+ }
private SysUser getUser(List<SysUser> sysUserList) {
SysUser sysUser = null;
@@ -1781,6 +1873,9 @@
case "JG_YH_JiBenXX":
log.info("鐢ㄦ埛淇℃伅鍏ュ弬绫诲瀷涓猴細{}", type);
return addUserInfo(dataMap);
+ case "JG_YH_KeShiYH":
+ log.info("绉戝鐢ㄦ埛淇℃伅鍏ュ弬绫诲瀷涓猴細{}", type);
+ return addUserDeptInfo(dataMap);
case "fu_task":
log.info("fu_task鏈嶅姟鍏ュ弬绫诲瀷涓猴細{}", type);
return addTaskInfo(dataMap);
--
Gitblit v1.9.3