From 291a72bf35e2d39b816abc0ebf085cfa9da3ee06 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期二, 23 九月 2025 14:11:40 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalFlowAuditController.java | 929 ++++++++++++---------------------------------------------- 1 files changed, 192 insertions(+), 737 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalFlowAuditController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalFlowAuditController.java index e1321c2..d090997 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalFlowAuditController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalFlowAuditController.java @@ -108,7 +108,7 @@ */ @RestController @RequestMapping("/oa-approval-flow-audit") -@Api(tags = "通用审批接口") +@Api(tags = "我审批的/我发起的/通用审批接口") public class OaApprovalFlowAuditController { @Resource private OaApprovalTodoService approvalTodoService; @@ -171,7 +171,7 @@ @ApiOperation("我审批的") - @PostMapping("/pageList") + @PostMapping("/pageListAudit") public R<PageInfo<ApprovalTodoVO>> pageList(@RequestBody ApprovalTodoListQuery query) { List<ApprovalTodoVO> resList = new ArrayList<>(); Long userId = tokenService.getLoginUser().getUserId(); @@ -220,7 +220,6 @@ .stream().collect(Collectors.toMap(OaApprovalApplicationAttendance::getApprovalApplicationId, e -> e)); Map<Integer, AssetMain> assetMainMap = assetMainService.list().stream().collect(Collectors.toMap(AssetMain::getId, e -> e)); - Map<Integer, OaApprovalTodo> approvalTodoMap = list.stream().collect(Collectors.toMap(OaApprovalTodo::getApplicationId, e -> e)); Map<Long, SysUser> userMap = sysUserService.selectAllList().stream().collect(Collectors.toMap(SysUser::getUserId, e -> e)); Map<Integer, TDept> deptMap = deptService.list().stream().collect(Collectors.toMap(TDept::getId, e -> e)); Map<Integer, OaApproval> approvalMap = approvalService.list().stream().collect(Collectors.toMap(OaApproval::getId, e -> e)); @@ -252,8 +251,184 @@ } approvalTodoVO.setApplicationCode(approvalApplication.getApplicationCode()); approvalTodoVO.setCreateTime(approvalApplication.getCreateTime()); - OaApprovalTodo oaApprovalTodo = approvalTodoMap.get(approvalApplication.getId()); - approvalTodoVO.setId(oaApprovalTodo.getId()); + approvalTodoVO.setApplicationId(approvalApplication.getId()); + + switch (approvalTodoVO.getApprovalCategory()){ + case 5: + OaApprovalApplicationPurchase oaApprovalApplicationPurchase = approvalApplicationPurchaseMap.get(approvalApplication.getId()); + if (oaApprovalApplicationPurchase!=null){ + approvalTodoVO.setAmount(oaApprovalApplicationPurchase.getTotalAmount()); + } + break; + case 6: + OaApprovalApplicationStorage oaApprovalApplicationStorage = applicationStorageMap.get(approvalApplication.getId()); + if (oaApprovalApplicationStorage!=null){ + approvalTodoVO.setStorageType(oaApprovalApplicationStorage.getStorageType()); + } + break; + case 7: + StringBuilder temp = new StringBuilder(); + List<OaApprovalApplicationAssetItem> oaApprovalApplicationAssetItems = approvalApplicationAssetItemMap.get(approvalApplication.getId()); + if (oaApprovalApplicationAssetItems!=null){ + for (OaApprovalApplicationAssetItem oaApprovalApplicationAssetItem : oaApprovalApplicationAssetItems) { + AssetMain assetMain = assetMainMap.get(oaApprovalApplicationAssetItem.getAssetMainId()); + if (assetMain!=null){ + temp.append(assetMain.getAssetName()).append(","); + } + } + // 去除最后一位字符 + if (StringUtils.hasLength(temp.toString())){ + approvalTodoVO.setAssetName(temp.substring(0, temp.length() - 1)); + }else{ + approvalTodoVO.setAssetName(""); + } + } + break; + case 8: + OaApprovalApplicationAsset oaApprovalApplicationAssetOut = approvalApplicationAssetMap.get(approvalApplication.getId()); + if (oaApprovalApplicationAssetOut!=null){ + approvalTodoVO.setOperateTime(oaApprovalApplicationAssetOut.getOperateTime()); + } + break; + case 9: + OaApprovalApplicationAsset oaApprovalApplicationAssetBack = approvalApplicationAssetMap.get(approvalApplication.getId()); + if (oaApprovalApplicationAssetBack!=null){ + approvalTodoVO.setOperateTime(oaApprovalApplicationAssetBack.getExpectReturnDate()); + } + break; + case 10: + OaApprovalApplicationDispose oaApprovalApplicationDispose = approvalApplicationDisposeMap.get(approvalApplication.getId()); + if (oaApprovalApplicationDispose!=null){ + approvalTodoVO.setDisposeType(oaApprovalApplicationDispose.getDisposeType()); + } + break; + case 11: + OaApprovalApplicationChange oaApprovalApplicationChange = approvalApplicationChangeMap.get(approvalApplication.getId()); + if (oaApprovalApplicationChange!=null){ + Integer ownershipDeptId = oaApprovalApplicationChange.getOwnershipDeptId(); + TDept tDept = deptMap.get(ownershipDeptId); + if (tDept!=null){ + approvalTodoVO.setOwnershipDeptName(tDept.getDeptName()); + } + } + break; + case 12: + OaApprovalApplicationReimbursement oaApprovalApplicationReimbursement = approvalApplicationReimbursementMap.get(approvalApplication.getId()); + if (oaApprovalApplicationReimbursement!=null){ + approvalTodoVO.setAmount(oaApprovalApplicationReimbursement.getReimbursementAmount()); + } + break; + case 13: + OaApprovalApplicationMoney oaApprovalApplicationMoney = oaApprovalApplicationMoneyMap.get(approvalApplication.getId()); + if (oaApprovalApplicationMoney!=null){ + approvalTodoVO.setAmount(oaApprovalApplicationMoney.getApplyAmount()); + approvalTodoVO.setDescription(oaApprovalApplicationMoney.getDescription()); + + } + break; + case 15: + OaApprovalApplicationPayment oaApprovalApplicationPayment = approvalApplicationPaymentMap.get(approvalApplication.getId()); + if (oaApprovalApplicationPayment!=null){ + approvalTodoVO.setAmount(oaApprovalApplicationPayment.getApplyAmount()); + approvalTodoVO.setDescription(approvalApplication.getApplicationReason()); + + } + break; + case 17: + OaApprovalApplicationAdvertisement oaApprovalApplicationAdvertisement = approvalApplicationAdvertisementMap.get(approvalApplication.getId()); + if (oaApprovalApplicationAdvertisement!=null){ + approvalTodoVO.setContent(oaApprovalApplicationAdvertisement.getContent()); + approvalTodoVO.setAmount(oaApprovalApplicationAdvertisement.getTotalAmount()); + } + break; + } + + resList.add(approvalTodoVO); + } + res.setRecords(resList); + return R.ok(res); + } + @ApiOperation("我发起的") + @PostMapping("/pageListApply") + public R<PageInfo<ApprovalTodoVO>> pageListApply(@RequestBody ApprovalTodoListQuery query) { + List<ApprovalTodoVO> resList = new ArrayList<>(); + Long userId = tokenService.getLoginUser().getUserId(); + query.setUserId(userId); + PageInfo<ApprovalTodoVO> res = new PageInfo<>(query.getPageNum(), query.getPageSize()); + + PageInfo<OaApprovalApplications> pageInfo = approvalApplicationsService.pageListAudit(query); + List<OaApprovalApplications> list = pageInfo.getRecords(); + if (list.isEmpty()){ + return R.ok(new PageInfo<>()); + } + res.setTotal(pageInfo.getTotal()); + List<Integer> applicationIds = list.stream().map(OaApprovalApplications::getId).collect(Collectors.toList()); + Map<Integer, OaApprovalApplicationReimbursement> approvalApplicationReimbursementMap = approvalApplicationReimbursementService.lambdaQuery() + .in(OaApprovalApplicationReimbursement::getApprovalApplicationId, applicationIds).list() + .stream().collect(Collectors.toMap(OaApprovalApplicationReimbursement::getApprovalApplicationId, e -> e)); + Map<Integer, OaApprovalApplicationMoney> oaApprovalApplicationMoneyMap = approvalApplicationMoneyService.lambdaQuery() + .in(OaApprovalApplicationMoney::getApprovalApplicationId, applicationIds).list() + .stream().collect(Collectors.toMap(OaApprovalApplicationMoney::getApprovalApplicationId, e -> e)); + Map<Integer, OaApprovalApplicationPayment> approvalApplicationPaymentMap = approvalApplicationPaymentService.lambdaQuery() + .in(OaApprovalApplicationPayment::getApprovalApplicationId, applicationIds).list() + .stream().collect(Collectors.toMap(OaApprovalApplicationPayment::getApprovalApplicationId, e -> e)); + Map<Integer, OaApprovalApplicationStorage> applicationStorageMap = approvalApplicationStorageService.lambdaQuery() + .in(OaApprovalApplicationStorage::getApprovalApplicationId, applicationIds).list() + .stream().collect(Collectors.toMap(OaApprovalApplicationStorage::getApprovalApplicationId, e -> e)); + Map<Integer, OaApprovalApplicationAsset> approvalApplicationAssetMap = approvalApplicationAssetService.lambdaQuery() + .in(OaApprovalApplicationAsset::getApprovalApplicationId, applicationIds).list() + .stream().collect(Collectors.toMap(OaApprovalApplicationAsset::getApprovalApplicationId, e -> e)); + Map<Integer, OaApprovalApplicationDispose> approvalApplicationDisposeMap = approvalApplicationDisposeService.lambdaQuery() + .in(OaApprovalApplicationDispose::getApprovalApplicationId, applicationIds).list() + .stream().collect(Collectors.toMap(OaApprovalApplicationDispose::getApprovalApplicationId, e -> e)); + Map<Integer, OaApprovalApplicationChange> approvalApplicationChangeMap = approvalApplicationChangeService.lambdaQuery() + .in(OaApprovalApplicationChange::getApprovalApplicationId, applicationIds).list() + .stream().collect(Collectors.toMap(OaApprovalApplicationChange::getApprovalApplicationId, e -> e)); + Map<Integer, OaApprovalApplicationPurchase> approvalApplicationPurchaseMap = approvalApplicationPurchaseService.lambdaQuery() + .in(OaApprovalApplicationPurchase::getApprovalApplicationId, applicationIds).list() + .stream().collect(Collectors.toMap(OaApprovalApplicationPurchase::getApprovalApplicationId, e -> e)); + Map<Integer, List<OaApprovalApplicationAssetItem>> approvalApplicationAssetItemMap = approvalApplicationAssetItemService.lambdaQuery() + .in(OaApprovalApplicationAssetItem::getApprovalApplicationId, applicationIds).list() + .stream().collect(Collectors.groupingBy(OaApprovalApplicationAssetItem::getApprovalApplicationId)); + Map<Integer, OaApprovalApplicationAdvertisement> approvalApplicationAdvertisementMap = approvalApplicationAdvertisementService.lambdaQuery() + .in(OaApprovalApplicationAdvertisement::getApprovalApplicationId, applicationIds).list() + .stream().collect(Collectors.toMap(OaApprovalApplicationAdvertisement::getApprovalApplicationId, e -> e)); + Map<Integer, OaApprovalApplicationAttendance> applicationAttendanceMap = approvalApplicationAttendanceService.lambdaQuery() + .in(OaApprovalApplicationAttendance::getApprovalApplicationId, applicationIds).list() + .stream().collect(Collectors.toMap(OaApprovalApplicationAttendance::getApprovalApplicationId, e -> e)); + + Map<Integer, AssetMain> assetMainMap = assetMainService.list().stream().collect(Collectors.toMap(AssetMain::getId, e -> e)); + Map<Long, SysUser> userMap = sysUserService.selectAllList().stream().collect(Collectors.toMap(SysUser::getUserId, e -> e)); + Map<Integer, TDept> deptMap = deptService.list().stream().collect(Collectors.toMap(TDept::getId, e -> e)); + Map<Integer, OaApproval> approvalMap = approvalService.list().stream().collect(Collectors.toMap(OaApproval::getId, e -> e)); + List<OaApprovalApplications> approvalApplications = approvalApplicationsService.lambdaQuery().in(OaApprovalApplications::getId, applicationIds).list(); + for (OaApprovalApplications approvalApplication : approvalApplications) { + ApprovalTodoVO approvalTodoVO = new ApprovalTodoVO(); + approvalTodoVO.setApprovalCategory(approvalMap.get(approvalApplication.getApprovalId()).getApprovalCategory()); + switch (approvalTodoVO.getApprovalCategory()){ + case 1: + case 2: + case 3: + case 4: + default: + OaApprovalApplicationAttendance oaApprovalApplicationAttendance = applicationAttendanceMap.get(approvalApplication.getId()); + if (oaApprovalApplicationAttendance!=null){ + approvalTodoVO.setStartTime(oaApprovalApplicationAttendance.getStartTime()); + approvalTodoVO.setEndTime(oaApprovalApplicationAttendance.getEndTime()); + approvalTodoVO.setDuration(oaApprovalApplicationAttendance.getDuration()); + } + break; + } + SysUser sysUser = userMap.get(approvalApplication.getApplicantUserId().longValue()); + if (sysUser!=null){ + approvalTodoVO.setApplyUserName(sysUser.getUserName()); + TDept tDept = deptMap.get(Integer.parseInt(sysUser.getDeptId())); + if (tDept!=null){ + approvalTodoVO.setApplyDeptName(tDept.getDeptName()); + } + } + approvalTodoVO.setApplicationCode(approvalApplication.getApplicationCode()); + approvalTodoVO.setCreateTime(approvalApplication.getCreateTime()); approvalTodoVO.setApplicationId(approvalApplication.getId()); switch (approvalTodoVO.getApprovalCategory()){ @@ -353,724 +528,6 @@ } - @ApiOperation(value = "合同文件审批详情") - @GetMapping(value = "/detailContract") - public R<ContractDetailVO> detailContract(@ApiParam("待办事项id")Integer id) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(id); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - OaApprovalApplicationContract approvalApplicationContract = approvalApplicationContractService.lambdaQuery() - .eq(OaApprovalApplicationContract::getApprovalApplicationId, approvalApplications.getId()) - .last("limit 1").one(); - List<OaApprovalFlowAudit> approvalFlowAudits = approvalFlowAuditService.lambdaQuery().eq(OaApprovalFlowAudit::getApprovalApplicationId, approvalApplications.getId()) - .orderByAsc(OaApprovalFlowAudit::getSortOrder) - .list(); - ContractDetailVO res = new ContractDetailVO(); - List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery() - .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.CONTRACT.getCode()) - .orderByAsc(OaApprovalFlowNode::getSortOrder) - .eq(OaApprovalFlowNode::getStatus, 1).list(); - SysUser sysUser = sysUserService.selectUserById(approvalApplications.getApplicantUserId().longValue()); - if (sysUser!=null){ - res.setUserName(sysUser.getUserName()); - TDept dept = deptService.getById(sysUser.getDeptId()); - if (dept!=null){ - res.setDeptName(dept.getDeptName()); - } - } - List<ApprovalFlowNodeListVO> flowNodeList = getFlowNodeList( sysUser, approvalFlowAudits,approvalFlowNodes); - res.setApprovalFlowNodeListVOS(flowNodeList); - res.setApprovalApplicationId(approvalApplications.getId()); - res.setContractUrl(approvalApplicationContract.getContractUrl()); - res.setApplicationReason(approvalApplications.getApplicationReason()); - res.setAttachmentUrl(approvalApplications.getAttachmentUrl()); - return R.ok(res); - } - @ApiOperation(value = "进度款支付审批详情") - @GetMapping(value = "/detailPayment") - public R<PaymentDetailVO> detailPayment(@ApiParam("待办事项id")Integer id) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(id); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - OaApprovalApplicationPayment approvalApplicationPayment = approvalApplicationPaymentService.lambdaQuery() - .eq(OaApprovalApplicationPayment::getApprovalApplicationId, approvalApplications.getId()) - .last("limit 1").one(); - List<OaApprovalFlowAudit> approvalFlowAudits = approvalFlowAuditService.lambdaQuery().eq(OaApprovalFlowAudit::getApprovalApplicationId, approvalApplications.getId()) - .orderByAsc(OaApprovalFlowAudit::getSortOrder) - .list(); - PaymentDetailVO res = new PaymentDetailVO(); - List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery() - .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.PAYMENT.getCode()) - .orderByAsc(OaApprovalFlowNode::getSortOrder) - .eq(OaApprovalFlowNode::getStatus, 1).list(); - SysUser sysUser = sysUserService.selectUserById(approvalApplications.getApplicantUserId().longValue()); - if (sysUser!=null){ - res.setUserName(sysUser.getUserName()); - TDept dept = deptService.getById(sysUser.getDeptId()); - if (dept!=null){ - res.setDeptName(dept.getDeptName()); - } - } - List<ApprovalFlowNodeListVO> flowNodeList = getFlowNodeList(sysUser, approvalFlowAudits,approvalFlowNodes); - res.setApprovalFlowNodeListVOS(flowNodeList); - res.setApprovalApplicationId(approvalApplications.getId()); - res.setApplicationReason(approvalApplications.getApplicationReason()); - res.setAttachmentUrl(approvalApplications.getAttachmentUrl()); - // todo 三阶段设计项目表之后完善 - res.setProjectName("本期还未涉及到项目"); - res.setApplyAmount(approvalApplicationPayment.getApplyAmount()); - return R.ok(res); - } - @ApiOperation(value = "请假申请审批详情") - @GetMapping(value = "/detailLeave") - public R<LeaveDetailVO> detailLeave(@ApiParam("待办事项id")Integer id) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(id); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - OaApprovalApplicationAttendance approvalApplicationAttendance = approvalApplicationAttendanceService.lambdaQuery() - .eq(OaApprovalApplicationAttendance::getApprovalApplicationId, approvalApplications.getId()) - .last("limit 1").one(); - List<OaApprovalFlowAudit> approvalFlowAudits = approvalFlowAuditService.lambdaQuery().eq(OaApprovalFlowAudit::getApprovalApplicationId, approvalApplications.getId()) - .orderByAsc(OaApprovalFlowAudit::getSortOrder) - .list(); - LeaveDetailVO res = new LeaveDetailVO(); - - - List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery() - .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.LEAVE.getCode()) - .orderByAsc(OaApprovalFlowNode::getSortOrder) - .eq(OaApprovalFlowNode::getStatus, 1).list(); - SysUser sysUser = sysUserService.selectUserById(approvalApplications.getApplicantUserId().longValue()); - if (sysUser!=null){ - res.setUserName(sysUser.getUserName()); - TDept dept = deptService.getById(sysUser.getDeptId()); - if (dept!=null){ - res.setDeptName(dept.getDeptName()); - } - } - List<ApprovalFlowNodeListVO> flowNodeList = getFlowNodeList(sysUser, approvalFlowAudits,approvalFlowNodes); - res.setApprovalFlowNodeListVOS(flowNodeList); - res.setApprovalApplicationId(approvalApplications.getId()); - res.setApplicationReason(approvalApplications.getApplicationReason()); - res.setAttachmentUrl(approvalApplications.getAttachmentUrl()); - res.setStartTime(approvalApplicationAttendance.getStartTime()); - res.setEndTime(approvalApplicationAttendance.getEndTime()); - res.setDuration(approvalApplicationAttendance.getDuration()); - return R.ok(res); - } - @ApiOperation(value = "销假审批详情") - @GetMapping(value = "/detailLeaveDestroy") - public R<LeaveDestroyDetailVO> detailLeaveDestroy(@ApiParam("待办事项id")Integer id) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(id); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - OaApprovalApplicationAttendance approvalApplicationAttendance = approvalApplicationAttendanceService.lambdaQuery() - .eq(OaApprovalApplicationAttendance::getApprovalApplicationId, approvalApplications.getId()) - .last("limit 1").one(); - OaApprovalApplicationAttendance leaveApplication = approvalApplicationAttendanceService.getById(approvalApplicationAttendance.getLeaveApprovalApplicationId()); - List<OaApprovalFlowAudit> approvalFlowAudits = approvalFlowAuditService.lambdaQuery().eq(OaApprovalFlowAudit::getApprovalApplicationId, approvalApplications.getId()) - .orderByAsc(OaApprovalFlowAudit::getSortOrder) - .list(); - LeaveDestroyDetailVO res = new LeaveDestroyDetailVO(); - - List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery() - .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.LEAVE_DESTROY.getCode()) - .orderByAsc(OaApprovalFlowNode::getSortOrder) - .eq(OaApprovalFlowNode::getStatus, 1).list(); - SysUser sysUser = sysUserService.selectUserById(approvalApplications.getApplicantUserId().longValue()); - if (sysUser!=null){ - res.setUserName(sysUser.getUserName()); - TDept dept = deptService.getById(sysUser.getDeptId()); - if (dept!=null){ - res.setDeptName(dept.getDeptName()); - } - } - List<ApprovalFlowNodeListVO> flowNodeList = getFlowNodeList(sysUser, approvalFlowAudits,approvalFlowNodes); - res.setApprovalFlowNodeListVOS(flowNodeList); - res.setApprovalApplicationId(approvalApplications.getId()); - res.setApplicationReason(approvalApplications.getApplicationReason()); - res.setAttachmentUrl(approvalApplications.getAttachmentUrl()); - res.setStartTime(approvalApplicationAttendance.getStartTime()); - res.setEndTime(approvalApplicationAttendance.getEndTime()); - res.setStartTimeLeave(leaveApplication.getStartTime()); - res.setEndTimeLeave(leaveApplication.getEndTime()); - res.setDurationLeave(leaveApplication.getDuration()); - res.setDuration(approvalApplicationAttendance.getDuration()); - return R.ok(res); - } - @ApiOperation(value = "外出申请审批详情") - @GetMapping(value = "/detailOut") - public R<OutDetailVO> detailOut(@ApiParam("待办事项id")Integer id) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(id); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - OaApprovalApplicationAttendance approvalApplicationAttendance = approvalApplicationAttendanceService.lambdaQuery() - .eq(OaApprovalApplicationAttendance::getApprovalApplicationId, approvalApplications.getId()) - .last("limit 1").one(); - List<OaApprovalFlowAudit> approvalFlowAudits = approvalFlowAuditService.lambdaQuery().eq(OaApprovalFlowAudit::getApprovalApplicationId, approvalApplications.getId()) - .orderByAsc(OaApprovalFlowAudit::getSortOrder) - .list(); - OutDetailVO res = new OutDetailVO(); - List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery() - .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.OUT.getCode()) - .orderByAsc(OaApprovalFlowNode::getSortOrder) - .eq(OaApprovalFlowNode::getStatus, 1).list(); - SysUser sysUser = sysUserService.selectUserById(approvalApplications.getApplicantUserId().longValue()); - if (sysUser!=null){ - res.setUserName(sysUser.getUserName()); - TDept dept = deptService.getById(sysUser.getDeptId()); - if (dept!=null){ - res.setDeptName(dept.getDeptName()); - } - } - List<ApprovalFlowNodeListVO> flowNodeList = getFlowNodeList(sysUser, approvalFlowAudits,approvalFlowNodes); - res.setApprovalFlowNodeListVOS(flowNodeList); - res.setApprovalApplicationId(approvalApplications.getId()); - res.setApplicationReason(approvalApplications.getApplicationReason()); - res.setAttachmentUrl(approvalApplications.getAttachmentUrl()); - res.setStartTime(approvalApplicationAttendance.getStartTime()); - res.setEndTime(approvalApplicationAttendance.getEndTime()); - res.setDuration(approvalApplicationAttendance.getDuration()); - return R.ok(res); - } - @ApiOperation(value = "出差审批详情") - @GetMapping(value = "/detailBusinessTrip") - public R<BusinessTripDetailVO> detailBusinessTrip(@ApiParam("待办事项id")Integer id) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(id); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - OaApprovalApplicationAttendance approvalApplicationAttendance = approvalApplicationAttendanceService.lambdaQuery() - .eq(OaApprovalApplicationAttendance::getApprovalApplicationId, approvalApplications.getId()) - .last("limit 1").one(); - List<OaApprovalFlowAudit> approvalFlowAudits = approvalFlowAuditService.lambdaQuery().eq(OaApprovalFlowAudit::getApprovalApplicationId, approvalApplications.getId()) - .orderByAsc(OaApprovalFlowAudit::getSortOrder) - .list(); - BusinessTripDetailVO res = new BusinessTripDetailVO(); - - - List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery() - .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.BUSINESS_TRIP.getCode()) - .orderByAsc(OaApprovalFlowNode::getSortOrder) - .eq(OaApprovalFlowNode::getStatus, 1).list(); - SysUser sysUser = sysUserService.selectUserById(approvalApplications.getApplicantUserId().longValue()); - if (sysUser!=null){ - res.setUserName(sysUser.getUserName()); - TDept dept = deptService.getById(sysUser.getDeptId()); - if (dept!=null){ - res.setDeptName(dept.getDeptName()); - } - } - List<ApprovalFlowNodeListVO> flowNodeList = getFlowNodeList(sysUser, approvalFlowAudits,approvalFlowNodes); - res.setApprovalFlowNodeListVOS(flowNodeList); - res.setApprovalApplicationId(approvalApplications.getId()); - res.setApplicationReason(approvalApplications.getApplicationReason()); - res.setAttachmentUrl(approvalApplications.getAttachmentUrl()); - res.setStartTime(approvalApplicationAttendance.getStartTime()); - res.setEndTime(approvalApplicationAttendance.getEndTime()); - res.setDuration(approvalApplicationAttendance.getDuration()); - res.setAddress(approvalApplicationAttendance.getAddress()); - res.setProjectName(approvalApplicationAttendance.getProjectName()); - return R.ok(res); - } - @ApiOperation(value = "采购审批详情-采购物品清单") - @PostMapping(value = "/detailPurchaseList") - public R<PageInfo<PurchaseListVO>> detailPurchaseList(@RequestBody ApprovalDetailQuery query) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(query.getId()); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - query.setId(approvalApplications.getId()); - PageInfo<PurchaseListVO> items = approvalApplicationPurchaseItemService.pageList(query); - return R.ok(items); - } - @ApiOperation(value = "采购审批详情") - @GetMapping(value = "/detailPurchase") - public R<PurchaseDetailVO> detailPurchase(@ApiParam("待办事项id")Integer id) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(id); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - OaApprovalApplicationPurchase approvalApplicationPurchase = approvalApplicationPurchaseService.lambdaQuery() - .eq(OaApprovalApplicationPurchase::getApprovalApplicationId, approvalApplications.getId()) - .last("limit 1").one(); - List<OaApprovalFlowAudit> approvalFlowAudits = approvalFlowAuditService.lambdaQuery().eq(OaApprovalFlowAudit::getApprovalApplicationId, approvalApplications.getId()) - .orderByAsc(OaApprovalFlowAudit::getSortOrder) - .list(); - PurchaseDetailVO res = new PurchaseDetailVO(); - List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery() - .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.PURCHASE.getCode()) - .orderByAsc(OaApprovalFlowNode::getSortOrder) - .eq(OaApprovalFlowNode::getStatus, 1).list(); - SysUser sysUser = sysUserService.selectUserById(approvalApplications.getApplicantUserId().longValue()); - if (sysUser!=null){ - res.setUserName(sysUser.getUserName()); - TDept dept = deptService.getById(sysUser.getDeptId()); - if (dept!=null){ - res.setDeptName(dept.getDeptName()); - } - } - List<ApprovalFlowNodeListVO> flowNodeList = getFlowNodeList(sysUser, approvalFlowAudits,approvalFlowNodes); - res.setApprovalFlowNodeListVOS(flowNodeList); - res.setApprovalApplicationId(approvalApplications.getId()); - res.setApplicationReason(approvalApplications.getApplicationReason()); - res.setAttachmentUrl(approvalApplications.getAttachmentUrl()); - res.setCreateTime(approvalApplications.getCreateTime()); - res.setTotalAmount(approvalApplicationPurchase.getTotalAmount()); - res.setTitle(approvalApplicationPurchase.getTitle()); - AssetType assetType = assetTypeService.getById(approvalApplicationPurchase.getAssetTypeId()); - if (assetType!=null){ - res.setAssetTypeName(assetType.getTypeName()); - } - return R.ok(res); - } - @ApiOperation(value = "物品领用-领用资产列表") - @PostMapping(value = "/detailGrabList") - public R<PageInfo<GrabListVO>> detailGrabList(@RequestBody ApprovalDetailQuery query) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(query.getId()); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - query.setId(approvalApplications.getId()); - PageInfo<GrabListVO> items = approvalApplicationAssetItemService.pageList(query); - return R.ok(items); - } - @ApiOperation(value = "物品领用审批详情") - @GetMapping(value = "/detailGrab") - public R<GrabDetailVO> detailGrab(@ApiParam("待办事项id")Integer id) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(id); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - OaApprovalApplicationAsset approvalApplicationAsset = approvalApplicationAssetService.lambdaQuery() - .eq(OaApprovalApplicationAsset::getApprovalApplicationId, approvalApplications.getId()) - .last("limit 1").one(); - List<OaApprovalFlowAudit> approvalFlowAudits = approvalFlowAuditService.lambdaQuery().eq(OaApprovalFlowAudit::getApprovalApplicationId, approvalApplications.getId()) - .orderByAsc(OaApprovalFlowAudit::getSortOrder) - .list(); - GrabDetailVO res = new GrabDetailVO(); - - - List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery() - .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.GRAB.getCode()) - .orderByAsc(OaApprovalFlowNode::getSortOrder) - .eq(OaApprovalFlowNode::getStatus, 1).list(); - SysUser sysUser = sysUserService.selectUserById(approvalApplications.getApplicantUserId().longValue()); - if (sysUser!=null){ - res.setUserName(sysUser.getUserName()); - TDept dept = deptService.getById(sysUser.getDeptId()); - if (dept!=null){ - res.setDeptName(dept.getDeptName()); - } - } - List<ApprovalFlowNodeListVO> flowNodeList = getFlowNodeList(sysUser, approvalFlowAudits,approvalFlowNodes); - res.setApprovalFlowNodeListVOS(flowNodeList); - res.setApprovalApplicationId(approvalApplications.getId()); - res.setApplicationReason(approvalApplications.getApplicationReason()); - res.setAttachmentUrl(approvalApplications.getAttachmentUrl()); - res.setOperateTime(approvalApplicationAsset.getOperateTime()); - res.setTitle(approvalApplicationAsset.getTitle()); - AssetType assetType = assetTypeService.getById(approvalApplicationAsset.getAssetTypeId()); - if (assetType!=null){ - res.setAssetTypeName(assetType.getTypeName()); - } - return R.ok(res); - } - @ApiOperation(value = "资产入库-入库资产列表") - @PostMapping(value = "/detailInStockList") - public R<PageInfo<StorageListVO>> detailInStockList(@RequestBody ApprovalDetailQuery query) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(query.getId()); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - query.setId(approvalApplications.getId()); - PageInfo<StorageListVO> items = approvalApplicationStorageService.pageList(query); - return R.ok(items); - } - @ApiOperation(value = "资产入库审批详情") - @GetMapping(value = "/detailInStock") - public R<StorageDetailVO> detailInStock(@ApiParam("待办事项id")Integer id) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(id); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - OaApprovalApplicationStorage approvalApplicationStorage = approvalApplicationStorageService.lambdaQuery() - .eq(OaApprovalApplicationStorage::getApprovalApplicationId, approvalApplications.getId()) - .last("limit 1").one(); - List<OaApprovalFlowAudit> approvalFlowAudits = approvalFlowAuditService.lambdaQuery().eq(OaApprovalFlowAudit::getApprovalApplicationId, approvalApplications.getId()) - .orderByAsc(OaApprovalFlowAudit::getSortOrder) - .list(); - StorageDetailVO res = new StorageDetailVO(); - List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery() - .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.IN_STOCK.getCode()) - .orderByAsc(OaApprovalFlowNode::getSortOrder) - .eq(OaApprovalFlowNode::getStatus, 1).list(); - SysUser sysUser = sysUserService.selectUserById(approvalApplications.getApplicantUserId().longValue()); - - List<ApprovalFlowNodeListVO> flowNodeList = getFlowNodeList(sysUser, approvalFlowAudits,approvalFlowNodes); - res.setApprovalFlowNodeListVOS(flowNodeList); - res.setApprovalApplicationId(approvalApplications.getId()); - res.setAttachmentUrl(approvalApplications.getAttachmentUrl()); - res.setTitle(approvalApplicationStorage.getTitle()); - res.setStorageType(approvalApplicationStorage.getStorageType()); - res.setStorageTime(approvalApplicationStorage.getStorageTime()); - res.setRemarks(approvalApplicationStorage.getTitle()); - return R.ok(res); - } - @ApiOperation(value = "物品借用-借用资产列表") - @PostMapping(value = "/detailBurrowList") - public R<PageInfo<GrabListVO>> detailBurrowList(@RequestBody ApprovalDetailQuery query) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(query.getId()); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - query.setId(approvalApplications.getId()); - PageInfo<GrabListVO> items = approvalApplicationAssetItemService.pageList(query); - return R.ok(items); - } - @ApiOperation(value = "物品借用审批详情") - @GetMapping(value = "/detailBurrow") - public R<BorrowDetailVO> detailBurrow(@ApiParam("待办事项id")Integer id) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(id); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - OaApprovalApplicationAsset approvalApplicationAsset = approvalApplicationAssetService.lambdaQuery() - .eq(OaApprovalApplicationAsset::getApprovalApplicationId, approvalApplications.getId()) - .last("limit 1").one(); - List<OaApprovalFlowAudit> approvalFlowAudits = approvalFlowAuditService.lambdaQuery().eq(OaApprovalFlowAudit::getApprovalApplicationId, approvalApplications.getId()) - .orderByAsc(OaApprovalFlowAudit::getSortOrder) - .list(); - BorrowDetailVO res = new BorrowDetailVO(); - - List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery() - .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.BORROW.getCode()) - .orderByAsc(OaApprovalFlowNode::getSortOrder) - .eq(OaApprovalFlowNode::getStatus, 1).list(); - SysUser sysUser = sysUserService.selectUserById(approvalApplications.getApplicantUserId().longValue()); - if (sysUser!=null){ - res.setUserName(sysUser.getUserName()); - TDept dept = deptService.getById(sysUser.getDeptId()); - if (dept!=null){ - res.setDeptName(dept.getDeptName()); - } - } - List<ApprovalFlowNodeListVO> flowNodeList = getFlowNodeList(sysUser, approvalFlowAudits,approvalFlowNodes); - res.setApprovalFlowNodeListVOS(flowNodeList); - res.setApprovalApplicationId(approvalApplications.getId()); - res.setApplicationReason(approvalApplications.getApplicationReason()); - res.setAttachmentUrl(approvalApplications.getAttachmentUrl()); - res.setOperateTime(approvalApplicationAsset.getOperateTime()); - res.setExpectReturnDate(approvalApplicationAsset.getExpectReturnDate()); - return R.ok(res); - } - @ApiOperation(value = "物品借用归还-归还资产列表") - @PostMapping(value = "/detailBackList") - public R<PageInfo<GrabListVO>> detailBackList(@RequestBody ApprovalDetailQuery query) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(query.getId()); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - query.setId(approvalApplications.getId()); - PageInfo<GrabListVO> items = approvalApplicationAssetItemService.pageList(query); - return R.ok(items); - } - @ApiOperation(value = "物品借用归还审批详情") - @GetMapping(value = "/detailBack") - public R<BackDetailVO> detailBack(@ApiParam("待办事项id")Integer id) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(id); - OaApprovalApplications approvalApplicationsBack = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - OaApprovalApplicationAsset approvalApplicationAssetBack = approvalApplicationAssetService.lambdaQuery() - .eq(OaApprovalApplicationAsset::getApprovalApplicationId, approvalApplicationsBack.getId()) - .last("limit 1").one(); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalApplicationAssetBack.getBorrowApplicationId()); - List<OaApprovalFlowAudit> approvalFlowAudits = approvalFlowAuditService.lambdaQuery().eq(OaApprovalFlowAudit::getApprovalApplicationId, approvalApplicationsBack.getId()) - .orderByAsc(OaApprovalFlowAudit::getSortOrder) - .list(); - BackDetailVO res = new BackDetailVO(); - List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery() - .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.RETURN.getCode()) - .orderByAsc(OaApprovalFlowNode::getSortOrder) - .eq(OaApprovalFlowNode::getStatus, 1).list(); - SysUser sysUser = sysUserService.selectUserById(approvalApplicationsBack.getApplicantUserId().longValue()); - if (sysUser!=null){ - res.setUserName(sysUser.getUserName()); - TDept dept = deptService.getById(sysUser.getDeptId()); - if (dept!=null){ - res.setDeptName(dept.getDeptName()); - } - } - List<ApprovalFlowNodeListVO> flowNodeList = getFlowNodeList(sysUser, approvalFlowAudits,approvalFlowNodes); - res.setApprovalFlowNodeListVOS(flowNodeList); - res.setApprovalApplicationId(approvalApplicationsBack.getId()); - res.setApplicationReason(approvalApplicationsBack.getApplicationReason()); - res.setAttachmentUrl(approvalApplicationsBack.getAttachmentUrl()); - res.setOperateTime(approvalApplicationAssetBack.getOperateTime()); - res.setExpectReturnDate(approvalApplicationAssetBack.getExpectReturnDate()); - res.setTitle(approvalApplicationAssetBack.getTitle()); - res.setApplicationCode(approvalApplications.getApplicationCode()); - return R.ok(res); - } - @ApiOperation(value = "资产处置-处置资产列表") - @PostMapping(value = "/detailDisposeList") - public R<PageInfo<GrabListVO>> detailDisposeList(@RequestBody ApprovalDetailQuery query) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(query.getId()); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - query.setId(approvalApplications.getId()); - PageInfo<GrabListVO> items = approvalApplicationAssetItemService.pageList(query); - return R.ok(items); - } - @ApiOperation(value = "资产处置审批详情") - @GetMapping(value = "/detailDispose") - public R<DisposeDetailVO> detailDispose(@ApiParam("待办事项id")Integer id) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(id); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - OaApprovalApplicationDispose approvalApplicationDispose = approvalApplicationDisposeService.lambdaQuery() - .eq(OaApprovalApplicationDispose::getApprovalApplicationId, approvalApplications.getId()) - .last("limit 1").one(); - List<OaApprovalFlowAudit> approvalFlowAudits = approvalFlowAuditService.lambdaQuery().eq(OaApprovalFlowAudit::getApprovalApplicationId, approvalApplications.getId()) - .orderByAsc(OaApprovalFlowAudit::getSortOrder) - .list(); - DisposeDetailVO res = new DisposeDetailVO(); - - List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery() - .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.ASSET_DISPOSE.getCode()) - .orderByAsc(OaApprovalFlowNode::getSortOrder) - .eq(OaApprovalFlowNode::getStatus, 1).list(); - SysUser sysUser = sysUserService.selectUserById(approvalApplications.getApplicantUserId().longValue()); - if (sysUser!=null){ - res.setUserName(sysUser.getUserName()); - TDept dept = deptService.getById(sysUser.getDeptId()); - if (dept!=null){ - res.setDeptName(dept.getDeptName()); - } - } - List<ApprovalFlowNodeListVO> flowNodeList = getFlowNodeList(sysUser, approvalFlowAudits,approvalFlowNodes); - res.setApprovalFlowNodeListVOS(flowNodeList); - res.setApprovalApplicationId(approvalApplications.getId()); - res.setApplicationReason(approvalApplications.getApplicationReason()); - res.setAttachmentUrl(approvalApplications.getAttachmentUrl()); - - res.setDisposeTime(approvalApplicationDispose.getDisposeTime()); - res.setTitle(approvalApplicationDispose.getTitle()); - AssetType assetType = assetTypeService.getById(approvalApplicationDispose.getAssetTypeId()); - if (assetType!=null){ - res.setAssetTypeName(assetType.getTypeName()); - } - res.setDisposeType(approvalApplicationDispose.getDisposeType()); - res.setDisposeTotalAmount(approvalApplicationDispose.getDisposeTotalAmount()); - return R.ok(res); - } - - @ApiOperation(value = "资产变更-变更资产列表") - @PostMapping(value = "/detailChangeList") - public R<PageInfo<GrabListVO>> detailChangeList(@RequestBody ApprovalDetailQuery query) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(query.getId()); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - query.setId(approvalApplications.getId()); - PageInfo<GrabListVO> items = approvalApplicationAssetItemService.pageList(query); - return R.ok(items); - } - @ApiOperation(value = "资产变更审批详情") - @GetMapping(value = "/detailChange") - public R<ChangeDetailVO> detailChange(@ApiParam("待办事项id")Integer id) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(id); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - OaApprovalApplicationChange approvalApplicationChange = approvalApplicationChangeService.lambdaQuery() - .eq(OaApprovalApplicationChange::getApprovalApplicationId, approvalApplications.getId()) - .last("limit 1").one(); - List<OaApprovalFlowAudit> approvalFlowAudits = approvalFlowAuditService.lambdaQuery().eq(OaApprovalFlowAudit::getApprovalApplicationId, approvalApplications.getId()) - .orderByAsc(OaApprovalFlowAudit::getSortOrder) - .list(); - ChangeDetailVO res = new ChangeDetailVO(); - List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery() - .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.ASSET_CHANGE.getCode()) - .orderByAsc(OaApprovalFlowNode::getSortOrder) - .eq(OaApprovalFlowNode::getStatus, 1).list(); - SysUser sysUser = sysUserService.selectUserById(approvalApplications.getApplicantUserId().longValue()); - if (sysUser!=null){ - res.setUserName(sysUser.getUserName()); - TDept dept = deptService.getById(sysUser.getDeptId()); - if (dept!=null){ - res.setDeptName(dept.getDeptName()); - } - } - List<ApprovalFlowNodeListVO> flowNodeList = getFlowNodeList(sysUser, approvalFlowAudits,approvalFlowNodes); - res.setApprovalFlowNodeListVOS(flowNodeList); - res.setApprovalApplicationId(approvalApplications.getId()); - res.setApplicationReason(approvalApplications.getApplicationReason()); - res.setAttachmentUrl(approvalApplications.getAttachmentUrl()); - AssetType assetType = assetTypeService.getById(approvalApplicationChange.getAssetTypeId()); - if (assetType!=null){ - res.setAssetTypeName(assetType.getTypeName()); - } - res.setChangeTime(approvalApplicationChange.getChangeTime()); - res.setTitle(approvalApplicationChange.getTitle()); - TDept dept = deptService.getById(approvalApplicationChange.getOwnershipDeptId()); - if (dept!=null){ - res.setOwnershipDeptName(dept.getDeptName()); - } - // todo 三阶段完善 仓库名称 - res.setWarehouseName("三阶段完善"); - res.setAddress(approvalApplicationChange.getAddress()); - return R.ok(res); - } - @ApiOperation(value = "报销申请审批详情") - @GetMapping(value = "/detailReimbursement") - public R<ReimbursementDetailVO> detailReimbursement(@ApiParam("待办事项id")Integer id) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(id); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - OaApprovalApplicationReimbursement approvalApplicationReimbursement = approvalApplicationReimbursementService.lambdaQuery() - .eq(OaApprovalApplicationReimbursement::getApprovalApplicationId, approvalApplications.getId()) - .last("limit 1").one(); - List<OaApprovalApplicationReimbursementItem> oaApprovalApplicationReimbursementItems = approvalApplicationReimbursementItemService.lambdaQuery() - .eq(OaApprovalApplicationReimbursementItem::getApprovalApplicationId, approvalApplications.getId()) - .list(); - List<OaApprovalFlowAudit> approvalFlowAudits = approvalFlowAuditService.lambdaQuery().eq(OaApprovalFlowAudit::getApprovalApplicationId, approvalApplications.getId()) - .orderByAsc(OaApprovalFlowAudit::getSortOrder) - .list(); - ReimbursementDetailVO res = new ReimbursementDetailVO(); - - - List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery() - .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.REIMBURSEMENT.getCode()) - .orderByAsc(OaApprovalFlowNode::getSortOrder) - .eq(OaApprovalFlowNode::getStatus, 1).list(); - SysUser sysUser = sysUserService.selectUserById(approvalApplications.getApplicantUserId().longValue()); - if (sysUser!=null){ - res.setUserName(sysUser.getUserName()); - TDept dept = deptService.getById(sysUser.getDeptId()); - if (dept!=null){ - res.setDeptName(dept.getDeptName()); - } - } - List<ApprovalFlowNodeListVO> flowNodeList = getFlowNodeList(sysUser, approvalFlowAudits,approvalFlowNodes); - res.setApprovalFlowNodeListVOS(flowNodeList); - res.setApprovalApplicationId(approvalApplications.getId()); - res.setApplicationReason(approvalApplications.getApplicationReason()); - res.setAttachmentUrl(approvalApplications.getAttachmentUrl()); - - res.setType(approvalApplicationReimbursement.getType()); - res.setApprovalApplicationReimbursementItems(oaApprovalApplicationReimbursementItems); - return R.ok(res); - } - @ApiOperation(value = "款项申请审批详情") - @GetMapping(value = "/detailMoney") - public R<MoneyDetailVO> detailMoney(@ApiParam("待办事项id")Integer id) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(id); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - OaApprovalApplicationMoney approvalApplicationMoney = approvalApplicationMoneyService.lambdaQuery() - .eq(OaApprovalApplicationMoney::getApprovalApplicationId, approvalApplications.getId()) - .last("limit 1").one(); - List<OaApprovalFlowAudit> approvalFlowAudits = approvalFlowAuditService.lambdaQuery().eq(OaApprovalFlowAudit::getApprovalApplicationId, approvalApplications.getId()) - .orderByAsc(OaApprovalFlowAudit::getSortOrder) - .list(); - MoneyDetailVO res = new MoneyDetailVO(); - List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery() - .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.MONEY.getCode()) - .orderByAsc(OaApprovalFlowNode::getSortOrder) - .eq(OaApprovalFlowNode::getStatus, 1).list(); - SysUser sysUser = sysUserService.selectUserById(approvalApplications.getApplicantUserId().longValue()); - if (sysUser!=null){ - res.setUserName(sysUser.getUserName()); - TDept dept = deptService.getById(sysUser.getDeptId()); - if (dept!=null){ - res.setDeptName(dept.getDeptName()); - } - } - List<ApprovalFlowNodeListVO> flowNodeList = getFlowNodeList(sysUser, approvalFlowAudits,approvalFlowNodes); - res.setApprovalFlowNodeListVOS(flowNodeList); - res.setApprovalApplicationId(approvalApplications.getId()); - res.setApplicationReason(approvalApplications.getApplicationReason()); - res.setAttachmentUrl(approvalApplications.getAttachmentUrl()); - res.setProjectName(approvalApplicationMoney.getProjectName()); - res.setApplyAmount(approvalApplicationMoney.getApplyAmount()); - res.setDescription(approvalApplicationMoney.getDescription()); - res.setPayer(approvalApplicationMoney.getPayer()); - res.setPayee(approvalApplicationMoney.getPayee()); - res.setPayeeContact(approvalApplicationMoney.getPayeeContact()); - res.setPayeeAccount(approvalApplicationMoney.getPayeeAccount()); - return R.ok(res); - } - @ApiOperation(value = "内部联系单审批详情") - @GetMapping(value = "/detailContact") - public R<ContactDetailVO> detailContact(@ApiParam("待办事项id")Integer id) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(id); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - OaApprovalApplicationMoney approvalApplicationMoney = approvalApplicationMoneyService.lambdaQuery() - .eq(OaApprovalApplicationMoney::getApprovalApplicationId, approvalApplications.getId()) - .last("limit 1").one(); - - List<OaApprovalFlowAudit> approvalFlowAudits = approvalFlowAuditService.lambdaQuery().eq(OaApprovalFlowAudit::getApprovalApplicationId, approvalApplications.getId()) - .orderByAsc(OaApprovalFlowAudit::getSortOrder) - .list(); - ContactDetailVO res = new ContactDetailVO(); - - - List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery() - .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.CONTACT.getCode()) - .orderByAsc(OaApprovalFlowNode::getSortOrder) - .eq(OaApprovalFlowNode::getStatus, 1).list(); - SysUser sysUser = sysUserService.selectUserById(approvalApplications.getApplicantUserId().longValue()); - if (sysUser!=null){ - res.setUserName(sysUser.getUserName()); - TDept dept = deptService.getById(sysUser.getDeptId()); - if (dept!=null){ - res.setDeptName(dept.getDeptName()); - } - } - List<ApprovalFlowNodeListVO> flowNodeList = getFlowNodeList(sysUser, approvalFlowAudits,approvalFlowNodes); - res.setApprovalFlowNodeListVOS(flowNodeList); - res.setApprovalApplicationId(approvalApplications.getId()); - res.setApplicationReason(approvalApplications.getApplicationReason()); - res.setAttachmentUrl(approvalApplications.getAttachmentUrl()); - res.setDescription(approvalApplicationMoney.getDescription()); - return R.ok(res); - } - @ApiOperation(value = "广告制作审批详情") - @GetMapping(value = "/detailAdvertisement") - public R<AdvertisementDetailVO> detailAdvertisement(@ApiParam("待办事项id")Integer id) { - OaApprovalTodo approvalTodo = approvalTodoService.getById(id); - OaApprovalApplications approvalApplications = approvalApplicationsService.getById(approvalTodo.getApplicationId()); - OaApprovalApplicationAdvertisement applicationAdvertisement = approvalApplicationAdvertisementService.lambdaQuery() - .eq(OaApprovalApplicationAdvertisement::getApprovalApplicationId, approvalApplications.getId()) - .last("limit 1").one(); - - List<OaApprovalFlowAudit> approvalFlowAudits = approvalFlowAuditService.lambdaQuery().eq(OaApprovalFlowAudit::getApprovalApplicationId, approvalApplications.getId()) - .orderByAsc(OaApprovalFlowAudit::getSortOrder) - .list(); - AdvertisementDetailVO res = new AdvertisementDetailVO(); - - - List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery() - .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.ADVERTISEMENT.getCode()) - .orderByAsc(OaApprovalFlowNode::getSortOrder) - .eq(OaApprovalFlowNode::getStatus, 1).list(); - SysUser sysUser = sysUserService.selectUserById(approvalApplications.getApplicantUserId().longValue()); - if (sysUser!=null){ - res.setUserName(sysUser.getUserName()); - TDept dept = deptService.getById(sysUser.getDeptId()); - if (dept!=null){ - res.setDeptName(dept.getDeptName()); - } - } - List<ApprovalFlowNodeListVO> flowNodeList = getFlowNodeList(sysUser, approvalFlowAudits,approvalFlowNodes); - res.setApprovalFlowNodeListVOS(flowNodeList); - res.setApprovalApplicationId(approvalApplications.getId()); - res.setApplicationReason(approvalApplications.getApplicationReason()); - res.setAttachmentUrl(approvalApplications.getAttachmentUrl()); - res.setTitle(applicationAdvertisement.getTitle()); - res.setCreateTime(approvalApplications.getCreateTime()); - res.setContent(applicationAdvertisement.getContent()); - res.setNumber(applicationAdvertisement.getNumber()); - res.setTotalAmount(applicationAdvertisement.getTotalAmount()); - res.setSpec(applicationAdvertisement.getSpec()); - return R.ok(res); - } - private List<ApprovalFlowNodeListVO> getFlowNodeList(SysUser sysUser, List<OaApprovalFlowAudit> approvalFlowAudits - ,List<OaApprovalFlowNode> approvalFlowNodes) { - List<ApprovalFlowNodeListVO> approvalFlowNodeListVOS = new ArrayList<>(); - Map<Integer, OaApprovalFlowAudit> approvalFlowAuditMap = approvalFlowAudits.stream().collect(Collectors.toMap(OaApprovalFlowAudit::getFlowNodeId, e -> e)); - - ApprovalFlowNodeListVO approvalFlowNodeListVO = new ApprovalFlowNodeListVO(); - approvalFlowNodeListVO.setFlowName("发起"); - if (sysUser!=null){ - approvalFlowNodeListVO.setUserName(sysUser.getUserName()); - } - approvalFlowNodeListVOS.add(approvalFlowNodeListVO); - for (OaApprovalFlowNode approvalFlowNode : approvalFlowNodes) { - ApprovalFlowNodeListVO approvalFlowNodeVO = new ApprovalFlowNodeListVO(); - - OaApprovalFlowAudit approvalFlowAudit = approvalFlowAuditMap.get(approvalFlowNode.getId()); - if (approvalFlowAudit!=null){ - approvalFlowNodeVO.setFlowName(approvalFlowAudit.getFlowName()); - approvalFlowNodeVO.setUserName(approvalFlowAudit.getUserName()); - approvalFlowNodeVO.setSignPicUrl(approvalFlowAudit.getSignPicUrl()); - approvalFlowNodeVO.setApprovalStatus(approvalFlowAudit.getApprovalStatus()); - }else{ - approvalFlowNodeVO.setFlowName(approvalFlowNode.getFlowName()); - } - approvalFlowNodeListVOS.add(approvalFlowNodeVO); - } - return approvalFlowNodeListVOS; - } - - @Log(title = "审批-通用审批接口", businessType = BusinessType.INSERT) @ApiOperation(value = "通用审批接口") @@ -1091,14 +548,14 @@ approvalTodoService.updateById(approvalTodo); OaApproval approval = approvalService.getById(approvalApplications.getApprovalId()); - if (dto.getApprovalStatus()==0){ + if (dto.getApprovalStatus() == 0) { // 中断审批流程 approvalApplications.setApprovalStatus(3); approvalApplicationsService.updateById(approvalApplications); // 删除除当前审批人该申请单的未处理的所有待办 approvalTodoService.remove(new LambdaQueryWrapper<OaApprovalTodo>() .eq(OaApprovalTodo::getApplicationId, approvalApplications.getId()) - .eq(OaApprovalTodo::getStatus,0)); + .eq(OaApprovalTodo::getStatus, 0)); } OaApprovalFlowNode oaApprovalFlowNode = approvalFlowNodeService.getById(currentFlowNodeId); OaApprovalFlowAudit approvalFlowAudit = new OaApprovalFlowAudit(); @@ -1114,19 +571,19 @@ approvalFlowAuditService.save(approvalFlowAudit); List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery().eq(OaApprovalFlowNode::getApprovalId, approval.getId()) .orderByAsc(OaApprovalFlowNode::getSortOrder).list(); - if (dto.getApprovalStatus()==1){ + if (dto.getApprovalStatus() == 1) { // 判断当前是否处于最后一个节点 - if(approvalApplications.getCurrentFlowNodeId().equals(approvalFlowNodes.get(approvalFlowNodes.size()-1).getId())){ + if (approvalApplications.getCurrentFlowNodeId().equals(approvalFlowNodes.get(approvalFlowNodes.size() - 1).getId())) { // 审批通过 审批流程结束 approvalApplications.setApprovalStatus(2); approvalApplicationsService.updateById(approvalApplications); - if (approval.getApprovalCategory()==10||approval.getApprovalCategory()==7 - ||approval.getApprovalCategory()==8||approval.getApprovalCategory()==9){ + if (approval.getApprovalCategory() == 10 || approval.getApprovalCategory() == 7 + || approval.getApprovalCategory() == 8 || approval.getApprovalCategory() == 9) { List<OaApprovalApplicationAssetItem> approvalApplicationAssetItems = approvalApplicationAssetItemService.lambdaQuery() .eq(OaApprovalApplicationAssetItem::getApprovalApplicationId, approvalApplications.getId()).list(); List<Integer> AssetMainIds = approvalApplicationAssetItems.stream().map(OaApprovalApplicationAssetItem::getAssetMainId).collect(Collectors.toList()); List<AssetMain> assetMains = assetMainService.lambdaQuery().in(AssetMain::getId, AssetMainIds).list(); - switch (approval.getApprovalCategory()){ + switch (approval.getApprovalCategory()) { case 10: assetMains.forEach(assetMain -> { assetMain.setDisposed(1); @@ -1149,22 +606,20 @@ if (approval.getApprovalCategory().equals(ApprovalTypeEnum.IN_STOCK.getCode())) { assetMainService.saveAssetByApprovalApplicationId(approvalApplications.getId()); } - }else{ + } else { // 生成下一个节点的待办事项 for (int i = 0; i < approvalFlowNodes.size(); i++) { - if(approvalApplications.getCurrentFlowNodeId() - .equals(approvalFlowNodes.get(i).getId())){ - approvalApplications.setCurrentFlowNodeId(approvalFlowNodes.get(i+1).getId()); + if (approvalApplications.getCurrentFlowNodeId() + .equals(approvalFlowNodes.get(i).getId())) { + approvalApplications.setCurrentFlowNodeId(approvalFlowNodes.get(i + 1).getId()); OaApprovalFlowNode oaApprovalFlowNode1 = approvalFlowNodeService.getById(approvalFlowNodes.get(i + 1).getId()); approvalTodoService.createApprovalTodos(approvalApplications.getId(), approvalApplications.getApplicationCode(), oaApprovalFlowNode1, approvalApplications.getDeptId()); } } } - } - return R.ok(); + } } - -- Gitblit v1.7.1