From e6ad5f2957e3024eccb0128203d41f74cbd683ce Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期一, 21 七月 2025 08:51:07 +0800 Subject: [PATCH] 问题修复 --- rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/PurchaseItemServiceImpl.java | 26 +++++++++++++++----------- 1 files changed, 15 insertions(+), 11 deletions(-) diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/PurchaseItemServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/PurchaseItemServiceImpl.java index 552b351..92994bb 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/PurchaseItemServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/PurchaseItemServiceImpl.java @@ -30,6 +30,7 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; +import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; @@ -62,16 +63,18 @@ throw new CoolException("琛ㄦ牸鍐呭涓嶈兘涓虹┖锛侊紒"); } List<PurchaseTemplate> resultList = result.getList(); - Map<String, List<PurchaseTemplate>> listMap = resultList.stream().collect(Collectors.groupingBy(PurchaseTemplate::getPoCode)); + Map<String, List<PurchaseTemplate>> listMap = resultList.stream().collect(Collectors.groupingBy(item -> + !Objects.isNull(item.getPoCode()) ? item.getPoCode() : SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_ORDER_PO_CODE, null) + )); for (String key : listMap.keySet()) { List<PurchaseTemplate> list = listMap.get(key); Purchase serviceOne = purchaseService.getOne(new LambdaQueryWrapper<Purchase>().eq(Purchase::getCode, key)); if (!Objects.isNull(serviceOne)) { -// return R.error(serviceOne.getCode() + "鍗曟嵁宸插瓨鍦紒锛�"); throw new CoolException(serviceOne.getCode() + "鍗曟嵁宸插瓨鍦紒锛�"); } PurchaseTemplate template = list.stream().findFirst().get(); Purchase purchase = new Purchase(); + Date date = template.getArrTime(); BeanUtils.copyProperties(template, purchase); purchase.setCode(template.getPoCode()); if (StringUtils.isBlank(template.getPoCode())) { @@ -81,6 +84,7 @@ purchase.setType(OrderType.getTypeVal(template.getType())) .setWkType(OrderWorkType.getWorkType(template.getWkType())) .setSource(OrderSourceType.ORDER_SOURCE_TYPE_EXCEL.desc) + .setPreArr(date) .setCreateBy(loginUserId) .setUpdateBy(loginUserId); if (!purchaseService.save(purchase)) { @@ -92,31 +96,32 @@ if (StringUtils.isBlank(purchaseTemplate.getMatnrCode())) { throw new CoolException(purchaseTemplate.getPoCode() + "锛氱墿鏂欑紪鐮佷笉鑳戒负绌猴紒锛�"); } - Matnr matnr = matnrService.getOne(new LambdaQueryWrapper<Matnr>().eq(Matnr::getCode, template.getMatnrCode())); + Matnr matnr = matnrService.getOne(new LambdaQueryWrapper<Matnr>().eq(Matnr::getCode, purchaseTemplate.getMatnrCode())); if (Objects.isNull(matnr)) { - throw new CoolException(template.getMatnrCode() + "鐗╂枡涓嶅瓨鍦紒锛�"); + throw new CoolException(purchaseTemplate.getMatnrCode() + "鐗╂枡涓嶅瓨鍦紒锛�"); } item.setMatnrName(matnr.getName()) .setMatnrCode(matnr.getCode()) - .setPlatItemId(template.getPlatItemId()) - .setAnfme(template.getAnfme()) + .setPlatItemId(purchaseTemplate.getPlatItemId()) + .setAnfme(purchaseTemplate.getAnfme()) .setPurchaseId(purchase.getId()) + .setUnit(matnr.getUnit()) .setNromQty(matnr.getNromNum()) - .setSplrBatch(template.getSplrBatch()) + .setSplrBatch(purchaseTemplate.getSplrBatch()) .setCreateBy(loginUserId) .setUpdateBy(loginUserId); if (StringUtils.isNotBlank(purchaseTemplate.getSplrCode())) { Companys companys = companysService.getOne(new LambdaQueryWrapper<Companys>() .eq(Companys::getType, CompanysType.COMPANYS_TYPE_SUPPLIER.val) - .eq(Companys::getCode, template.getSplrCode())); + .eq(Companys::getCode, purchaseTemplate.getSplrCode())); if (!Objects.isNull(companys)) { item.setSplrCode(companys.getCode()).setSplrName(companys.getName()); } else { throw new CoolException("渚涘簲鍟嗭細" + template.getSplrName() + "涓嶅瓨鍦紒锛�"); } } else { - throw new CoolException("渚涘簲鍟嗕笉鑳戒负绌猴紒锛�"); + throw new CoolException("渚涘簲鍟嗙紪鐮佷笉鑳戒负绌猴紒锛�"); } if (!this.save(item)) { throw new CoolException("鍗曟嵁鏄庣粏淇濆瓨澶辫触锛侊紒"); @@ -125,8 +130,7 @@ } double anfmes = items.stream().mapToDouble(PurchaseItem::getAnfme).sum(); - double qty = items.stream().mapToDouble(PurchaseItem::getQty).sum(); - purchase.setAnfme(anfmes).setQty(qty); + purchase.setAnfme(anfmes); if (!purchaseService.updateById(purchase)) { throw new CoolException("涓诲崟鏁伴噺淇敼澶辫触锛侊紒"); -- Gitblit v1.9.1