| | |
| | | import com.ruoyi.framework.web.service.TokenService; |
| | | import com.ruoyi.system.dto.AuditDTO; |
| | | import com.ruoyi.system.emums.ApprovalTypeEnum; |
| | | import com.ruoyi.system.model.AssetMain; |
| | | import com.ruoyi.system.model.AssetType; |
| | | import com.ruoyi.system.model.OaApproval; |
| | | import com.ruoyi.system.model.OaApprovalApplicationAdvertisement; |
| | | import com.ruoyi.system.model.OaApprovalApplicationAsset; |
| | | import com.ruoyi.system.model.OaApprovalApplicationAssetItem; |
| | | import com.ruoyi.system.model.OaApprovalApplicationAttendance; |
| | | import com.ruoyi.system.model.OaApprovalApplicationChange; |
| | | import com.ruoyi.system.model.OaApprovalApplicationContract; |
| | | import com.ruoyi.system.model.OaApprovalApplicationDispose; |
| | | import com.ruoyi.system.model.OaApprovalApplicationMoney; |
| | | import com.ruoyi.system.model.OaApprovalApplicationPayment; |
| | | import com.ruoyi.system.model.OaApprovalApplicationPurchase; |
| | | import com.ruoyi.system.model.OaApprovalApplicationReimbursement; |
| | | import com.ruoyi.system.model.OaApprovalApplicationReimbursementItem; |
| | | import com.ruoyi.system.model.OaApprovalApplicationStorage; |
| | | import com.ruoyi.system.model.OaApprovalApplications; |
| | | import com.ruoyi.system.model.OaApprovalFlowAudit; |
| | | import com.ruoyi.system.model.OaApprovalFlowNode; |
| | | import com.ruoyi.system.model.OaApprovalTodo; |
| | | import com.ruoyi.system.model.*; |
| | | import com.ruoyi.system.query.ApprovalDetailQuery; |
| | | import com.ruoyi.system.query.ApprovalTodoListQuery; |
| | | import com.ruoyi.system.service.AssetMainService; |
| | | import com.ruoyi.system.service.AssetTypeService; |
| | | import com.ruoyi.system.service.ISysUserService; |
| | | import com.ruoyi.system.service.OaApprovalApplicationAdvertisementService; |
| | | import com.ruoyi.system.service.OaApprovalApplicationAssetItemService; |
| | | import com.ruoyi.system.service.OaApprovalApplicationAssetService; |
| | | import com.ruoyi.system.service.OaApprovalApplicationAttendanceService; |
| | | import com.ruoyi.system.service.OaApprovalApplicationChangeService; |
| | | import com.ruoyi.system.service.OaApprovalApplicationContactService; |
| | | import com.ruoyi.system.service.OaApprovalApplicationContractService; |
| | | import com.ruoyi.system.service.OaApprovalApplicationDisposeService; |
| | | import com.ruoyi.system.service.OaApprovalApplicationMoneyService; |
| | | import com.ruoyi.system.service.OaApprovalApplicationPaymentService; |
| | | import com.ruoyi.system.service.OaApprovalApplicationPurchaseItemService; |
| | | import com.ruoyi.system.service.OaApprovalApplicationPurchaseService; |
| | | import com.ruoyi.system.service.OaApprovalApplicationReimbursementItemService; |
| | | import com.ruoyi.system.service.OaApprovalApplicationReimbursementService; |
| | | import com.ruoyi.system.service.OaApprovalApplicationStorageAssetService; |
| | | import com.ruoyi.system.service.OaApprovalApplicationStorageService; |
| | | import com.ruoyi.system.service.*; |
| | | |
| | | import com.ruoyi.system.service.OaApprovalApplicationsService; |
| | | import com.ruoyi.system.service.OaApprovalFlowAuditService; |
| | | import com.ruoyi.system.service.OaApprovalFlowNodeService; |
| | |
| | | private OaApprovalApplicationMoneyService approvalApplicationMoneyService; |
| | | @Resource |
| | | private AssetMainService assetMainService; |
| | | @Resource |
| | | |
| | | private AssetInventoryRecordService assetInventoryRecordService; |
| | | @Resource |
| | | private OaApprovalApplicationStorageAssetService oaApprovalApplicationStorageAssetService; |
| | | @Resource |
| | |
| | | borrowApplications.setReturnStatus(0); |
| | | } |
| | | approvalApplicationAssetService.updateById(borrowApplications); |
| | | saveAssetRecord(0,ApprovalTypeEnum.RETURN.getDesc(),back.stream().map(OaApprovalApplicationAssetItem::getAssetMainId) |
| | | .collect(Collectors.toList())); |
| | | |
| | | case 10: |
| | | assetMains.forEach(assetMain -> { |
| | | assetMain.setDisposed(1); |
| | | }); |
| | | saveAssetRecord(null,ApprovalTypeEnum.ASSET_DISPOSE.getDesc(),assetMains |
| | | .stream().map(AssetMain::getId).collect(Collectors.toList())); |
| | | break; |
| | | case 7: |
| | | assetMains.forEach(assetMain -> { |
| | | assetMain.setInUse(1); |
| | | }); |
| | | saveAssetRecord(1,ApprovalTypeEnum.GRAB.getDesc(),assetMains |
| | | .stream().map(AssetMain::getId).collect(Collectors.toList())); |
| | | break; |
| | | default: |
| | | assetMains.forEach(assetMain -> { |
| | | assetMain.setBorrowed(1); |
| | | }); |
| | | saveAssetRecord(1,ApprovalTypeEnum.BORROW.getDesc(),assetMains |
| | | .stream().map(AssetMain::getId).collect(Collectors.toList())); |
| | | break; |
| | | } |
| | | assetMainService.updateBatchById(assetMains); |
| | |
| | | if (approval.getApprovalCategory().equals(ApprovalTypeEnum.IN_STOCK.getCode())) { |
| | | assetMainService.saveAssetByApprovalApplicationId(approvalApplications.getId()); |
| | | } |
| | | // 资产变更 |
| | | if (approval.getApprovalCategory().equals(ApprovalTypeEnum.ASSET_CHANGE.getCode())) { |
| | | List<OaApprovalApplicationAssetItem> approvalApplicationAssetItems = approvalApplicationAssetItemService.lambdaQuery() |
| | | .eq(OaApprovalApplicationAssetItem::getApprovalApplicationId, approvalApplications.getId()).list(); |
| | | List<Integer> AssetMainIds = approvalApplicationAssetItems.stream().map(OaApprovalApplicationAssetItem::getAssetMainId).collect(Collectors.toList()); |
| | | saveAssetRecord(1,ApprovalTypeEnum.ASSET_CHANGE.getDesc(),AssetMainIds); |
| | | } |
| | | |
| | | } else { |
| | | log.info("不为最后一个审批节点"); |
| | | // 生成下一个节点的待办事项 |
| | |
| | | } |
| | | } |
| | | return R.ok(); |
| | | } |
| | | |
| | | private void saveAssetRecord(Integer type, String approvalType,List<Integer> assetMainIds) { |
| | | List<AssetInventoryRecord> res = new ArrayList<>(); |
| | | Map<Integer, Integer> warehouseMap = assetMainService.list().stream().collect(Collectors.toMap(AssetMain::getId, AssetMain::getWarehouseId)); |
| | | for (Integer assetMainId : assetMainIds) { |
| | | AssetInventoryRecord assetInventoryRecord = new AssetInventoryRecord(); |
| | | assetInventoryRecord.setAssetMainId(assetMainId); |
| | | assetInventoryRecord.setWarehouseId(warehouseMap.get(assetMainId)); |
| | | assetInventoryRecord.setType(type); |
| | | assetInventoryRecord.setRemarks(approvalType); |
| | | res.add(assetInventoryRecord); |
| | | } |
| | | assetInventoryRecordService.saveBatch(res); |
| | | } |
| | | } |