| | |
| | | import com.ruoyi.account.pojo.purchase.AccountPurchasePayment; |
| | | import com.ruoyi.account.pojo.sales.AccountSalesCollection; |
| | | import com.ruoyi.approve.mapper.ApproveProcessMapper; |
| | | import com.ruoyi.approve.mapper.ApprovalInstanceMapper; |
| | | import com.ruoyi.approve.mapper.ApprovalTaskMapper; |
| | | import com.ruoyi.approve.pojo.ApproveProcess; |
| | | import com.ruoyi.approve.pojo.ApprovalInstance; |
| | | import com.ruoyi.approve.pojo.ApprovalTask; |
| | | import com.ruoyi.basic.mapper.CustomerMapper; |
| | | import com.ruoyi.basic.mapper.ProductMapper; |
| | | import com.ruoyi.basic.mapper.SupplierManageMapper; |
| | |
| | | import com.ruoyi.collaborativeApproval.mapper.NoticeMapper; |
| | | import com.ruoyi.collaborativeApproval.pojo.Notice; |
| | | import com.ruoyi.common.enums.ApproveTypeEnum; |
| | | import com.ruoyi.common.enums.TypeEnums; |
| | | import com.ruoyi.common.utils.SecurityUtils; |
| | | import com.ruoyi.common.utils.StringUtils; |
| | | import com.ruoyi.device.mapper.DeviceRepairMapper; |
| | |
| | | private final QualityInspectMapper qualityStatisticsMapper; |
| | | |
| | | private final ApproveProcessMapper approveProcessMapper; |
| | | |
| | | private final ApprovalTaskMapper approvalTaskMapper; |
| | | |
| | | private final ApprovalInstanceMapper approvalInstanceMapper; |
| | | |
| | | private final SysDeptMapper sysDeptMapper; |
| | | |
| | |
| | | @Override |
| | | public List<ApproveProcess> todos() throws ParseException { |
| | | LoginUser loginUser = SecurityUtils.getLoginUser(); |
| | | List<ApproveProcess> approveProcesses = new ArrayList<>(); |
| | | |
| | | // 查询旧审批表(approve_process) |
| | | LambdaQueryWrapper<ApproveProcess> approveProcessLambdaQueryWrapper = new LambdaQueryWrapper<>(); |
| | | approveProcessLambdaQueryWrapper.eq(ApproveProcess::getApproveDelete, 0) |
| | | .eq(ApproveProcess::getApproveUserCurrentId, loginUser.getUserId()) |
| | | .ne(ApproveProcess::getApproveStatus, 2); |
| | | // .eq(ApproveProcess::getTenantId, loginUser.getTenantId()); |
| | | List<ApproveProcess> approveProcesses = approveProcessMapper.selectList(approveProcessLambdaQueryWrapper); |
| | | if (CollectionUtils.isEmpty(approveProcesses)) { |
| | | approveProcesses = new ArrayList<>(); |
| | | } |
| | | |
| | | approveProcesses.forEach(a -> { |
| | | List<ApproveProcess> oldList = approveProcessMapper.selectList(approveProcessLambdaQueryWrapper); |
| | | if (!CollectionUtils.isEmpty(oldList)) { |
| | | oldList.forEach(a -> { |
| | | if (a.getApproveType() != null) { |
| | | a.setApproveTypeName(ApproveTypeEnum.getNameByCode(a.getApproveType())); |
| | | } |
| | | }); |
| | | // // 查询未领用劳保记录 |
| | | // SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); |
| | | // |
| | | // LaborIssue laborIssue1 = new LaborIssue(); |
| | | // laborIssue1.setAdoptedDate(new Date()); |
| | | // laborIssue1.setIssueDate(sdf.parse(sdf.format(new Date()))); |
| | | // List<LaborIssue> laborIssues = lavorIssueMapper.list(laborIssue1); |
| | | // //staff_join_leave_record表被删除 |
| | | // if(!CollectionUtils.isEmpty(laborIssues)){ |
| | | // for (LaborIssue laborIssue : laborIssues) { |
| | | // ApproveProcess approveProcess = new ApproveProcess(); |
| | | // approveProcess.setApproveId(laborIssue.getOrderNo()); |
| | | // approveProcess.setApproveDeptName(sysDeptMapper.selectDeptById(loginUser.getTenantId()).getDeptName()); |
| | | // approveProcess.setApproveTime(laborIssue.getIssueDate()); |
| | | // approveProcess.setApproveReason(laborIssue.getDictTypeName() + "-" + |
| | | // laborIssue.getDictName() + "超时未领取"); |
| | | // approveProcesses.add(approveProcess); |
| | | // } |
| | | // } |
| | | approveProcesses.addAll(oldList); |
| | | } |
| | | |
| | | // 查询新审批表(approval_task + approval_instance) |
| | | List<ApprovalTask> pendingTasks = approvalTaskMapper.selectList(new LambdaQueryWrapper<ApprovalTask>() |
| | | .eq(ApprovalTask::getApproverId, loginUser.getUserId()) |
| | | .eq(ApprovalTask::getTaskStatus, "PENDING") |
| | | .eq(ApprovalTask::getDeleted, 0)); |
| | | if (!CollectionUtils.isEmpty(pendingTasks)) { |
| | | List<Long> instanceIds = pendingTasks.stream() |
| | | .map(ApprovalTask::getInstanceId) |
| | | .distinct() |
| | | .collect(Collectors.toList()); |
| | | List<ApprovalInstance> instances = approvalInstanceMapper.selectList(new LambdaQueryWrapper<ApprovalInstance>() |
| | | .in(ApprovalInstance::getId, instanceIds) |
| | | .eq(ApprovalInstance::getDeleted, 0)); |
| | | Map<Long, ApprovalInstance> instanceMap = instances.stream() |
| | | .collect(Collectors.toMap(ApprovalInstance::getId, i -> i, (a, b) -> a)); |
| | | |
| | | for (ApprovalTask task : pendingTasks) { |
| | | ApprovalInstance instance = instanceMap.get(task.getInstanceId()); |
| | | if (instance == null) { |
| | | continue; |
| | | } |
| | | ApproveProcess ap = new ApproveProcess(); |
| | | ap.setId(instance.getId()); |
| | | ap.setApproveId(instance.getInstanceNo()); |
| | | ap.setApproveReason(instance.getTitle()); |
| | | ap.setApproveTime(instance.getApplyTime() != null ? java.sql.Timestamp.valueOf(instance.getApplyTime()) : null); |
| | | ap.setApproveUserName(instance.getApplicantName()); |
| | | ap.setApproveDeptName(instance.getTemplateName()); |
| | | if (instance.getBusinessType() != null) { |
| | | ap.setApproveType(instance.getBusinessType().intValue()); |
| | | ap.setApproveTypeName(TypeEnums.getLabelByValue(instance.getBusinessType())); |
| | | } |
| | | approveProcesses.add(ap); |
| | | } |
| | | } |
| | | |
| | | return approveProcesses; |
| | | } |
| | |
| | | |
| | | @Override |
| | | public Map<String, Object> approveAndDeviceTodos() { |
| | | // 审批协同待办 |
| | | Long aLong = approveProcessMapper.selectCount(new LambdaQueryWrapper<ApproveProcess>() |
| | | // 旧审批表待办 |
| | | Long oldCount = approveProcessMapper.selectCount(new LambdaQueryWrapper<ApproveProcess>() |
| | | .eq(ApproveProcess::getApproveUserCurrentId, SecurityUtils.getUserId()) |
| | | .eq(ApproveProcess::getApproveDelete, 0) |
| | | .in(ApproveProcess::getApproveStatus, 0, 1, 3)); |
| | | // 新审批表待办 |
| | | Long newCount = approvalTaskMapper.selectCount(new LambdaQueryWrapper<ApprovalTask>() |
| | | .eq(ApprovalTask::getApproverId, SecurityUtils.getUserId()) |
| | | .eq(ApprovalTask::getTaskStatus, "PENDING") |
| | | .eq(ApprovalTask::getDeleted, 0)); |
| | | // 设备报修待办 |
| | | Long aLong1 = deviceRepairMapper.selectCount(new LambdaQueryWrapper<DeviceRepair>() |
| | | .eq(DeviceRepair::getStatus, 0) |
| | | .eq(DeviceRepair::getRepairName, SecurityUtils.getLoginUser().getNickName())); |
| | | return new HashMap<String, Object>() { |
| | | { |
| | | put("approveTodo", aLong); |
| | | put("approveTodo", oldCount + newCount); |
| | | put("deviceRepairTodo", aLong1); |
| | | } |
| | | }; |