From 335d48b5f39525c1813a7701a6609764bfca270d Mon Sep 17 00:00:00 2001 From: mashuai Date: Wed, 13 Aug 2025 11:09:23 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/PurchaseCheckInfoServiceImpl.java | 49 +++++++++++++++++-- 1 file changed, 46 insertions(+), 3 deletions(-) diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/impl/PurchaseCheckInfoServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/impl/PurchaseCheckInfoServiceImpl.java index dc87c11e..c85e5f45 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/impl/PurchaseCheckInfoServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/impl/PurchaseCheckInfoServiceImpl.java @@ -713,8 +713,6 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService { typeMapper.updateType(type); } // 批量插入详情数据 - // 将purchaseCheckDetailsList的status全部设置为2 - purchaseCheckDetailsList.forEach(o -> o.setStatus(PurchaseTaskStatusEnum.TO_CHECK.getStatus())); final int count = purchaseCheckDetailsMapper.insertPurchaseCheckDetailsList(purchaseCheckDetailsList); if (0 < count) { return AjaxResult.success("新增任务成功"); @@ -1091,10 +1089,55 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService { try { final Long[] ids = {purchaseCheckDto.getPurchaseCheckInfo().getId()}; purchaseCheckDetailsMapper.deleteDetails(ids); - insertPurchaseCheckDetails(purchaseCheckDto.getPurchaseCheckDetailsList(), purchaseCheckDto.getPurchaseCheckInfo().getTaskId()); + insertPurchaseCheckDetailsInfo(purchaseCheckDto.getPurchaseCheckDetailsList(), purchaseCheckDto.getPurchaseCheckInfo().getTaskId()); return purchaseCheckInfoMapper.updatePurchaseCheckInfo(purchaseCheckDto.getPurchaseCheckInfo()); } catch (final Exception e) { throw new ServiceException("错误信息描述"); } } + + /** + * 批量插入新购验收任务详情 + * @param purchaseCheckDetailsList + * @param taskId + * @return + */ + private int insertPurchaseCheckDetailsInfo(List purchaseCheckDetailsList, Long taskId) { + int count = 0; + if (!CollectionUtils.isEmpty(purchaseCheckDetailsList)) { + for (PurchaseCheckDetails details : purchaseCheckDetailsList) { + details.setTaskId(taskId); + details.setStatus(Objects.equals(PurchaseTaskStatusEnum.TO_CHECK_AFTER_REJECT.getStatus(), details.getStatus()) ? + PurchaseTaskStatusEnum.TO_CHECK.getStatus() : + PurchaseTaskStatusEnum.TO_NOTICE.getStatus()); + details.setInputStatus("0"); + final List bmFileInfos = details.getBmFileInfos(); + if (!CollectionUtils.isEmpty(bmFileInfos)) { + bmFileInfos.forEach(o -> { + o.setTaskId(taskId); + o.setModelId(details.getTypeId()); + o.setCreateBy(SecurityUtils.getLoginUser().getUserid().toString()); + o.setCreateTime(DateUtils.getNowDate()); + }); + bmFileInfoMapper.insertBmFileInfos(bmFileInfos); + } + Type type = new Type(); + type.setTypeId(details.getTypeId()); + type.setUpdateTime(DateUtils.getNowDate()); + type.setUpdateBy(SecurityUtils.getLoginUser().getUserid().toString()); + type.setBuyPrice(details.getPurchaseTaxPrice()); + type.setNotTaxPrice(details.getPurchasePrice()); + Type maType = typeMapper.getMaType(details.getTypeId()); + if (maType != null && (maType.getRentPrice() == null || maType.getRentPrice().compareTo(BigDecimal.ZERO) == 0)) { + type.setRentPrice(details.getRentPrice()); + } + typeMapper.updateType(type); + } + // 批量插入详情数据 + // 将purchaseCheckDetailsList的status全部设置为2 + purchaseCheckDetailsList.forEach(o -> o.setStatus(PurchaseTaskStatusEnum.TO_CHECK.getStatus())); + count = purchaseCheckDetailsMapper.insertPurchaseCheckDetailsList(purchaseCheckDetailsList); + } + return count; + } }