| | |
| | | import com.ruoyi.system.dto.AuditDTO; |
| | | import com.ruoyi.system.emums.ApprovalTypeEnum; |
| | | import com.ruoyi.system.model.*; |
| | | import com.ruoyi.system.query.ApprovalDetailQuery; |
| | | import com.ruoyi.system.query.ApprovalTodoListQuery; |
| | | import com.ruoyi.system.service.*; |
| | | |
| | |
| | | import com.ruoyi.system.service.OaApprovalService; |
| | | import com.ruoyi.system.service.OaApprovalTodoService; |
| | | import com.ruoyi.system.service.TDeptService; |
| | | import com.ruoyi.system.vo.AdvertisementDetailVO; |
| | | import com.ruoyi.system.vo.ApprovalFlowNodeListVO; |
| | | import com.ruoyi.system.vo.ApprovalTodoVO; |
| | | import com.ruoyi.system.vo.BackDetailVO; |
| | | import com.ruoyi.system.vo.BorrowDetailVO; |
| | | import com.ruoyi.system.vo.BusinessTripDetailVO; |
| | | import com.ruoyi.system.vo.ChangeDetailVO; |
| | | import com.ruoyi.system.vo.ContactDetailVO; |
| | | import com.ruoyi.system.vo.ContractDetailVO; |
| | | import com.ruoyi.system.vo.DisposeDetailVO; |
| | | import com.ruoyi.system.vo.GrabDetailVO; |
| | | import com.ruoyi.system.vo.GrabListVO; |
| | | import com.ruoyi.system.vo.LeaveDestroyDetailVO; |
| | | import com.ruoyi.system.vo.LeaveDetailVO; |
| | | import com.ruoyi.system.vo.MoneyDetailVO; |
| | | import com.ruoyi.system.vo.OutDetailVO; |
| | | import com.ruoyi.system.vo.PaymentDetailVO; |
| | | import com.ruoyi.system.vo.PurchaseDetailVO; |
| | | import com.ruoyi.system.vo.PurchaseListVO; |
| | | import com.ruoyi.system.vo.ReimbursementDetailVO; |
| | | import com.ruoyi.system.vo.StorageDetailVO; |
| | | import com.ruoyi.system.vo.StorageListVO; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import io.swagger.annotations.ApiParam; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import org.springframework.util.StringUtils; |
| | | import org.springframework.web.bind.annotation.GetMapping; |
| | | import org.springframework.web.bind.annotation.PostMapping; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | |
| | | @Resource |
| | | private OaApprovalApplicationsService approvalApplicationsService; |
| | | @Resource |
| | | private OaApprovalApplicationAdvertisementService approvalApplicationAdvertisementService; |
| | | private OaApprovalApplicationAdService approvalApplicationAdvertisementService; |
| | | @Resource |
| | | private OaApprovalApplicationContactService approvalApplicationContactService; |
| | | @Resource |
| | |
| | | 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, OaApprovalApplicationAd> approvalApplicationAdMap = approvalApplicationAdvertisementService.lambdaQuery() |
| | | .in(OaApprovalApplicationAd::getApprovalApplicationId, applicationIds).list() |
| | | .stream().collect(Collectors.toMap(OaApprovalApplicationAd::getApprovalApplicationId, e -> e)); |
| | | Map<Integer, OaApprovalApplicationAttendance> applicationAttendanceMap = approvalApplicationAttendanceService.lambdaQuery() |
| | | .in(OaApprovalApplicationAttendance::getApprovalApplicationId, applicationIds).list() |
| | | .stream().collect(Collectors.toMap(OaApprovalApplicationAttendance::getApprovalApplicationId, e -> e)); |
| | |
| | | List<OaApprovalApplications> approvalApplications = approvalApplicationsService.lambdaQuery().in(OaApprovalApplications::getId, applicationIds).list(); |
| | | for (OaApprovalApplications approvalApplication : approvalApplications) { |
| | | ApprovalTodoVO approvalTodoVO = new ApprovalTodoVO(); |
| | | approvalTodoVO.setReason(approvalApplication.getReason()); |
| | | approvalTodoVO.setApprovalStatus(approvalApplication.getApprovalStatus()); |
| | | approvalTodoVO.setApplicationReason(approvalApplication.getApplicationReason()); |
| | | approvalTodoVO.setApprovalCategory(approvalMap.get(approvalApplication.getApprovalId()).getApprovalCategory()); |
| | |
| | | } |
| | | break; |
| | | case 17: |
| | | OaApprovalApplicationAdvertisement oaApprovalApplicationAdvertisement = approvalApplicationAdvertisementMap.get(approvalApplication.getId()); |
| | | if (oaApprovalApplicationAdvertisement!=null){ |
| | | approvalTodoVO.setTitle(oaApprovalApplicationAdvertisement.getTitle()); |
| | | approvalTodoVO.setContent(oaApprovalApplicationAdvertisement.getContent()); |
| | | approvalTodoVO.setAmount(oaApprovalApplicationAdvertisement.getTotalAmount()); |
| | | OaApprovalApplicationAd oaApprovalApplicationAd = approvalApplicationAdMap.get(approvalApplication.getId()); |
| | | if (oaApprovalApplicationAd !=null){ |
| | | approvalTodoVO.setTitle(oaApprovalApplicationAd.getTitle()); |
| | | approvalTodoVO.setContent(oaApprovalApplicationAd.getContent()); |
| | | approvalTodoVO.setAmount(oaApprovalApplicationAd.getTotalAmount()); |
| | | } |
| | | break; |
| | | } |
| | |
| | | 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, OaApprovalApplicationAd> approvalApplicationAdMap = approvalApplicationAdvertisementService.lambdaQuery() |
| | | .in(OaApprovalApplicationAd::getApprovalApplicationId, applicationIds).list() |
| | | .stream().collect(Collectors.toMap(OaApprovalApplicationAd::getApprovalApplicationId, e -> e)); |
| | | Map<Integer, OaApprovalApplicationAttendance> applicationAttendanceMap = approvalApplicationAttendanceService.lambdaQuery() |
| | | .in(OaApprovalApplicationAttendance::getApprovalApplicationId, applicationIds).list() |
| | | .stream().collect(Collectors.toMap(OaApprovalApplicationAttendance::getApprovalApplicationId, e -> e)); |
| | |
| | | List<OaApprovalApplications> approvalApplications = approvalApplicationsService.lambdaQuery().in(OaApprovalApplications::getId, applicationIds).list(); |
| | | for (OaApprovalApplications approvalApplication : approvalApplications) { |
| | | ApprovalTodoVO approvalTodoVO = new ApprovalTodoVO(); |
| | | approvalTodoVO.setReason(approvalApplication.getReason()); |
| | | approvalTodoVO.setApprovalStatus(approvalApplication.getApprovalStatus()); |
| | | approvalTodoVO.setApplicationReason(approvalApplication.getApplicationReason()); |
| | | approvalTodoVO.setApprovalCategory(approvalMap.get(approvalApplication.getApprovalId()).getApprovalCategory()); |
| | |
| | | } |
| | | break; |
| | | case 17: |
| | | OaApprovalApplicationAdvertisement oaApprovalApplicationAdvertisement = approvalApplicationAdvertisementMap.get(approvalApplication.getId()); |
| | | if (oaApprovalApplicationAdvertisement!=null){ |
| | | approvalTodoVO.setTitle(oaApprovalApplicationAdvertisement.getTitle()); |
| | | approvalTodoVO.setContent(oaApprovalApplicationAdvertisement.getContent()); |
| | | approvalTodoVO.setAmount(oaApprovalApplicationAdvertisement.getTotalAmount()); |
| | | OaApprovalApplicationAd oaApprovalApplicationAd = approvalApplicationAdMap.get(approvalApplication.getId()); |
| | | if (oaApprovalApplicationAd !=null){ |
| | | approvalTodoVO.setTitle(oaApprovalApplicationAd.getTitle()); |
| | | approvalTodoVO.setContent(oaApprovalApplicationAd.getContent()); |
| | | approvalTodoVO.setAmount(oaApprovalApplicationAd.getTotalAmount()); |
| | | } |
| | | break; |
| | | } |
| | |
| | | if (dto.getApprovalStatus() == 0) { |
| | | // 中断审批流程 |
| | | approvalApplications.setApprovalStatus(3); |
| | | approvalApplications.setReason(dto.getReason()); |
| | | approvalApplicationsService.updateById(approvalApplications); |
| | | // 删除除当前审批人该申请单的未处理的所有待办 |
| | | approvalTodoService.remove(new LambdaQueryWrapper<OaApprovalTodo>() |
| | |
| | | |
| | | 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)); |
| | | Map<Integer, Integer> warehouseMap = assetMainService.lambdaQuery().isNotNull(AssetMain::getWarehouseId).list().stream().collect(Collectors.toMap(AssetMain::getId, AssetMain::getWarehouseId)); |
| | | for (Integer assetMainId : assetMainIds) { |
| | | AssetInventoryRecord assetInventoryRecord = new AssetInventoryRecord(); |
| | | assetInventoryRecord.setAssetMainId(assetMainId); |