zss
2 天以前 012f7c23434123f032875d2ec2d7f4c688544f1b
src/main/java/com/ruoyi/approve/service/impl/ApproveProcessServiceImpl.java
@@ -15,16 +15,19 @@
import com.ruoyi.approve.vo.ApproveGetAndUpdateVo;
import com.ruoyi.approve.vo.ApproveProcessVO;
import com.ruoyi.common.enums.FileNameType;
import com.ruoyi.common.utils.OrderUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.other.service.impl.TempFileServiceImpl;
import com.ruoyi.project.system.domain.SysDept;
import com.ruoyi.project.system.domain.SysUser;
import com.ruoyi.project.system.mapper.SysDeptMapper;
import com.ruoyi.project.system.mapper.SysUserMapper;
import com.ruoyi.project.system.service.ISysNoticeService;
import com.ruoyi.sales.mapper.CommonFileMapper;
import com.ruoyi.sales.pojo.CommonFile;
import lombok.AllArgsConstructor;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.data.redis.core.StringRedisTemplate;
@@ -59,6 +62,7 @@
    private final ApproveProcessMapper approveProcessMapper;
    private final TempFileServiceImpl tempFileService;
    private final CommonFileMapper commonFileMapper;
    private final ISysNoticeService sysNoticeService;
    @Override
    public void addApprove(ApproveProcessVO approveProcessVO) throws  Exception {
@@ -87,6 +91,8 @@
        approveProcess.setApproveUserNames(sysUsers.stream().map(SysUser::getNickName).collect(Collectors.joining(",")));
        approveProcess.setApproveTime(StringUtils.isEmpty(approveProcessVO.getApproveTime()) ? null : dateFormat.parse(approveProcessVO.getApproveTime()));
        approveProcess.setApproveReason(approveProcessVO.getApproveReason());
        approveProcess.setDeviceRepairId(approveProcessVO.getDeviceRepairId());
        approveProcess.setMaintenancePrice(approveProcessVO.getMaintenancePrice());
        approveProcess.setApproveOverTime(null);
        approveProcess.setApproveStatus(0);
        approveProcess.setApproveDelete(0);
@@ -112,6 +118,13 @@
        approveNodeService.initApproveNodes(approveProcessVO.getApproveUserIds(),approveID,approveProcessVO.getApproveDeptId());
        // 附件绑定
        tempFileService.migrateTempFilesToFormal(approveProcess.getId(), approveProcessVO.getTempFileIds(), FileNameType.ApproveProcess.getValue());
        /*消息通知*/
        String id = approveProcessVO.getApproveUserIds().split(",")[0];
        sysNoticeService.simpleNoticeByUser(approveProcessType(approveProcessVO.getApproveType()),
                approveID+"流程编号的审批需要您审核!!!!!",
                Arrays.asList(Long.valueOf(id)),
                approveProcessVO.getApproveDeptId(),
                "/collaborativeApproval/approvalProcess?approveType="+approveProcessVO.getApproveType()+"&approveId="+approveID);
    }
    @Override
@@ -171,6 +184,7 @@
    @Override
    public void updateByApproveId(ApproveGetAndUpdateVo approveGetAndUpdateVo) throws IOException {
        ApproveProcess approve = approveProcessMapper.selectById(approveGetAndUpdateVo.getId());
        BeanUtils.copyProperties(approveGetAndUpdateVo, approve);
        approve.setApproveUserIds(approveGetAndUpdateVo.getApproveUserIds());
        approve.setApproveReason(approveGetAndUpdateVo.getApproveReason());
        SysUser sysUser = sysUserMapper.selectUserById(approveGetAndUpdateVo.getApproveUser());
@@ -216,7 +230,38 @@
//            i++;
//        }
        tempFileService.migrateTempFilesToFormal(approve.getId(), approveGetAndUpdateVo.getTempFileIds(), FileNameType.ApproveProcess.getValue());
        /*消息通知*/
        String id = approve.getApproveUserIds().split(",")[0];
        sysNoticeService.simpleNoticeByUser(approveProcessType(approve.getApproveType()),
                approve.getApproveId()+"流程编号的审批需要您审核!!!!!",
                Arrays.asList(Long.valueOf(id)),
                approve.getApproveDeptId(),
                "/collaborativeApproval/approvalProcess?approveType="+approve.getApproveType()+"&approveId="+approve.getApproveId());
    }
    //审批类型获取(与前端页面对应)
    private String approveProcessType(Integer approveType){
        switch (approveType){
            case 1:
                return "公出管理";
            case 2:
                return "请假管理";
            case 3:
                return "出差管理";
            case 4:
                return "报销管理";
            case 5:
                return "采购审批";
            case 6:
                return "报价审批";
            case 7:
                return "出库审批";
        }
        return null;
    }
}