heheng
2025-10-17 506c54af9412e0aeeab3e73d52c7cafe1cca0d00
signature/src/main/java/com/gkhy/sign/service/impl/SignatureFlowServiceImpl.java
@@ -9,15 +9,16 @@
import com.gkhy.sign.mapper.SignatureFlowMapper;
import com.gkhy.sign.mapper.SignatureItemMapper;
import com.gkhy.sign.service.SignatureFlowService;
import com.ruoyi.common.core.domain.entity.SysDept;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.domain.model.LoginUser;
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.SysUser;
import com.gkhy.common.core.domain.model.LoginUser;
import com.gkhy.common.utils.SecurityUtils;
import com.gkhy.system.mapper.SysDeptMapper;
import com.gkhy.system.mapper.SysUserMapper;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.Date;
import java.util.List;
@@ -42,23 +43,42 @@
    }
    @Override
    public int insertSignatureFlow(SignatureFlow signatureFlow) {
//        SignatureFlow signatureFlow1 = signatureFlowMapper.selectByItemIdAndUserId(signatureFlow);
//        if (signatureFlow1.getStatus() == 0 ){
//            throw new RuntimeException("尚未签名,不能流转");
//        }
        List<SignatureFlowRep> signatureFlowReps = signatureFlowMapper.selectbyItemId(signatureFlow.getItemId());
        signatureFlow.setSort(signatureFlowReps.size()+1);
        SysUser sysUser = sysUserMapper.selectUserById(signatureFlow.getUserId());
        SysDept sysDept = sysDeptMapper.selectDeptById(signatureFlow.getDeptId());
        signatureFlow.setUserName(sysUser.getNickName());
        signatureFlow.setDeptName(sysDept.getDeptName());
        SysUser sysUserSign = sysUserMapper.selectUserById(signatureFlow.getSignUserId());
        SysDept sysDeptSign = sysDeptMapper.selectDeptById(signatureFlow.getSignDeptId());
        signatureFlow.setSignUserName(sysUserSign.getNickName());
        signatureFlow.setSignDeptName(sysDeptSign.getDeptName());
    public int insertSignatureFlow(SignatureFlowAddReq signatureFlowAddReq) {
        List<SignatureFlow> signatureFlows = signatureFlowMapper.selectByItemIdAndStatus(signatureFlowAddReq.getItemId());
        if (!CollectionUtils.isEmpty(signatureFlows)){
            throw new RuntimeException("存在未签名记录,不能流转");
        }
        List<String> userDept = signatureFlowAddReq.getUserDept();
        for (String fileData : userDept) {
            String[] split = fileData.split("_");
            List<SignatureFlow> signatureFlows1 = signatureFlowMapper.selectByItemIdAndUserId(signatureFlowAddReq.getItemId(), Long.valueOf(split[0]));
            if (!signatureFlows1.isEmpty()){
                throw new RuntimeException("用户已签名,请勿重复选择");
            }
        }
        return signatureFlowMapper.insert(signatureFlow);
        int insert = 0;
        List<SignatureFlowRep> signatureFlowReps = signatureFlowMapper.selectbyItemId(signatureFlowAddReq.getItemId());
        for (String fileData : userDept) {
            SignatureFlow signatureFlow = new SignatureFlow();
            BeanUtils.copyProperties(signatureFlowAddReq,signatureFlow);
            String[] split = fileData.split("_");
            signatureFlow.setSort(signatureFlowReps.size()+1);
            SysUser sysUser = sysUserMapper.selectUserById(signatureFlow.getUserId());
            SysDept sysDept = sysDeptMapper.selectDeptById(signatureFlow.getDeptId());
            signatureFlow.setUserName(sysUser.getNickName());
            signatureFlow.setDeptName(sysDept.getDeptName());
            SysUser sysUserSign = sysUserMapper.selectUserById(Long.valueOf(split[0]));
            SysDept sysDeptSign = sysDeptMapper.selectDeptById(Long.valueOf(split[1]));
            signatureFlow.setSignUserId(sysUserSign.getUserId());
            signatureFlow.setSignUserName(sysUserSign.getNickName());
            signatureFlow.setSignDeptId(sysDeptSign.getDeptId());
            signatureFlow.setSignDeptName(sysDeptSign.getDeptName());
            insert+= signatureFlowMapper.insert(signatureFlow);
        }
        return insert;
    }
    @Override