From 733d48f803a002033c5f1d6c22dcc799bf1b724c Mon Sep 17 00:00:00 2001
From: heheng <475597332@qq.com>
Date: 星期二, 23 九月 2025 14:09:20 +0800
Subject: [PATCH] 功能改造

---
 signature/src/main/java/com/gkhy/sign/service/impl/SignatureItemServiceImpl.java |   86 ++++++++++++++++++++++++++++---------------
 1 files changed, 56 insertions(+), 30 deletions(-)

diff --git a/signature/src/main/java/com/gkhy/sign/service/impl/SignatureItemServiceImpl.java b/signature/src/main/java/com/gkhy/sign/service/impl/SignatureItemServiceImpl.java
index d3d14bf..2d9e744 100644
--- a/signature/src/main/java/com/gkhy/sign/service/impl/SignatureItemServiceImpl.java
+++ b/signature/src/main/java/com/gkhy/sign/service/impl/SignatureItemServiceImpl.java
@@ -1,26 +1,32 @@
 package com.gkhy.sign.service.impl;
 
+import cn.hutool.crypto.asymmetric.Sign;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.github.pagehelper.PageInfo;
 import com.gkhy.sign.dto.rep.SignatureFlowRep;
 import com.gkhy.sign.dto.rep.SignatureItemRep;
+import com.gkhy.sign.dto.req.SignatureItemAddReq;
 import com.gkhy.sign.dto.req.SignatureItemReq;
 import com.gkhy.sign.entity.SignatureFlow;
 import com.gkhy.sign.entity.SignatureItem;
 import com.gkhy.sign.mapper.SignatureFlowMapper;
 import com.gkhy.sign.mapper.SignatureItemMapper;
 import com.gkhy.sign.service.SignatureItemService;
-import com.ruoyi.common.core.domain.entity.SysDept;
-import com.ruoyi.common.core.domain.entity.SysRole;
-import com.ruoyi.common.core.domain.entity.SysUser;
-import com.ruoyi.common.utils.PageUtils;
-import com.ruoyi.common.utils.SecurityUtils;
-import com.ruoyi.system.mapper.SysDeptMapper;
-import com.ruoyi.system.mapper.SysUserMapper;
+import com.gkhy.common.core.domain.entity.SysDept;
+import com.gkhy.common.core.domain.entity.SysRole;
+import com.gkhy.common.core.domain.entity.SysUser;
+import com.gkhy.common.utils.PageUtils;
+import com.gkhy.common.utils.SecurityUtils;
+import com.gkhy.system.mapper.SysDeptMapper;
+import com.gkhy.system.mapper.SysUserMapper;
 import io.lettuce.core.RedisClient;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import javax.validation.constraints.NotNull;
+import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.Date;
 import java.util.List;
 
@@ -32,7 +38,7 @@
     @Autowired
     private SysDeptMapper sysDeptMapper;
     @Autowired
-    private SysUserMapper sysUser;
+    private SysUserMapper sysUserMapper;
 
     @Autowired
     private SignatureFlowMapper signatureFlowMapper;
@@ -42,16 +48,34 @@
         if (!SysUser.isAdmin(SecurityUtils.getUserId())) {
             signatureItem.setUserId(SecurityUtils.getUserId());
         }
-        List<SignatureItemRep> itemList = signatureItemMapper.getItemList(signatureItem);
-        for (SignatureItemRep signatureItemRep : itemList) {
+        List<SignatureItemRep> signatureItemReps = new ArrayList<>();
+
+        if (signatureItem.getType()==1){
+            signatureItemReps  = signatureItemMapper.getItemList(signatureItem);
+        }else {
+            signatureItemReps  = signatureItemMapper.getItemListApp(signatureItem);
+        }
+
+        for (SignatureItemRep signatureItemRep : signatureItemReps) {
             List<SignatureFlowRep> signatureFlowReps = signatureFlowMapper.selectbyItemId(signatureItemRep.getId());
             signatureItemRep.setSignatureFlows(signatureFlowReps);
+            String initiaiUserId = signatureItemRep.getInitiaiUserId();
+            String[] split = initiaiUserId.split(",");
+            StringBuffer stringBuffer = new StringBuffer();
+            for (String userId : split) {
+                SysUser sysUser1 = sysUserMapper.selectUserById(Long.valueOf(userId));
+                stringBuffer.append(sysUser1.getNickName()).append(",");
+            }
+            stringBuffer.deleteCharAt(stringBuffer.length()-1);
+            signatureItemRep.setInitiaiUserName(stringBuffer.toString());
         }
-        return itemList;
+        return signatureItemReps;
     }
 
     @Override
-    public int insertSignatureItem(SignatureItem signatureItem) {
+    public int insertSignatureItem(SignatureItemAddReq signatureItemAddReq) {
+        SignatureItem signatureItem = new SignatureItem();
+        BeanUtils.copyProperties(signatureItemAddReq,signatureItem);
         SysUser user = SecurityUtils.getLoginUser().getUser();
         signatureItem.setCreateBy(user.getUserName());
         signatureItem.setCreateTime(new Date());
@@ -59,24 +83,26 @@
         int insert = signatureItemMapper.insertSignatureItem(signatureItem);
 
         List<SignatureFlowRep> signatureFlowReps = signatureFlowMapper.selectbyItemId(signatureItem.getId());
-        SignatureFlow signatureFlow = new SignatureFlow();
-        signatureFlow.setItemId(signatureItem.getId());
-        signatureFlow.setUserId(SecurityUtils.getUserId());
-        SysUser sysUser2 = sysUser.selectUserById(SecurityUtils.getUserId());
-        signatureFlow.setUserName(sysUser2.getNickName());
-        signatureFlow.setDeptId(SecurityUtils.getDeptId());
-        SysDept sysDept = sysDeptMapper.selectDeptById(SecurityUtils.getDeptId());
-        signatureFlow.setDeptName(sysDept.getDeptName());
-        signatureFlow.setSignUserId(signatureItem.getInitiaiUserId());
-        SysUser sysUser1 = sysUser.selectUserById(signatureItem.getInitiaiUserId());
-        SysDept sysDept1 = sysDeptMapper.selectDeptById(sysUser1.getDeptId());
-        signatureFlow.setSignUserName(sysUser1.getNickName());
-        signatureFlow.setSignDeptId(sysDept1.getDeptId());
-        signatureFlow.setSignDeptName(sysDept1.getDeptName());
-        signatureFlow.setStatus(0);
-        signatureFlow.setSort(signatureFlowReps.size()+1);
-        signatureFlowMapper.insert(signatureFlow);
-
+        for (String userDept : signatureItemAddReq.getUserDept()) {
+            String[] split = userDept.split("_");
+            SignatureFlow signatureFlow = new SignatureFlow();
+            signatureFlow.setItemId(signatureItem.getId());
+            signatureFlow.setUserId(SecurityUtils.getUserId());
+            SysUser sysUser2 = sysUserMapper.selectUserById(SecurityUtils.getUserId());
+            signatureFlow.setUserName(sysUser2.getNickName());
+            signatureFlow.setDeptId(SecurityUtils.getDeptId());
+            SysDept sysDept = sysDeptMapper.selectDeptById(SecurityUtils.getDeptId());
+            signatureFlow.setDeptName(sysDept.getDeptName());
+            signatureFlow.setSignUserId(Long.valueOf(split[0]));
+            SysUser sysUserSign = sysUserMapper.selectUserById(Long.valueOf(split[0]));
+            SysDept sysDeptSign = sysDeptMapper.selectDeptById(Long.valueOf(split[1]));
+            signatureFlow.setSignUserName(sysUserSign.getNickName());
+            signatureFlow.setSignDeptId(sysDeptSign.getDeptId());
+            signatureFlow.setSignDeptName(sysDeptSign.getDeptName());
+            signatureFlow.setStatus(0);
+            signatureFlow.setSort(signatureFlowReps.size()+1);
+            signatureFlowMapper.insert(signatureFlow);
+        }
         return insert;
     }
 

--
Gitblit v1.9.2