From ebdfa825c07189b5f8e89f147d96d1bc612589db Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期二, 15 七月 2025 08:32:17 +0800 Subject: [PATCH] 代码优化 --- rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockItemServiceImpl.java | 57 ++++++++++++++++++++++++++++----------------------------- 1 files changed, 28 insertions(+), 29 deletions(-) diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockItemServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockItemServiceImpl.java index 963e330..ad82842 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockItemServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockItemServiceImpl.java @@ -10,6 +10,10 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.vincent.rsf.framework.common.R; import com.vincent.rsf.framework.exception.CoolException; +import com.vincent.rsf.server.manager.entity.WkOrder; +import com.vincent.rsf.server.manager.entity.WkOrderItem; +import com.vincent.rsf.server.manager.entity.excel.OutStockTemplate; +import com.vincent.rsf.server.manager.enums.AsnExceStatus; import com.vincent.rsf.server.manager.enums.OrderType; import com.vincent.rsf.server.manager.enums.OrderWorkType; import com.vincent.rsf.server.common.domain.BaseParam; @@ -17,10 +21,7 @@ import com.vincent.rsf.server.common.utils.CommonUtil; import com.vincent.rsf.server.common.utils.ExcelUtil; import com.vincent.rsf.server.common.utils.FieldsUtils; -import com.vincent.rsf.server.manager.entity.AsnOrder; -import com.vincent.rsf.server.manager.entity.AsnOrderItem; import com.vincent.rsf.server.manager.entity.Matnr; -import com.vincent.rsf.server.manager.entity.excel.AsnOrderTemplate; import com.vincent.rsf.server.manager.mapper.AsnOrderItemMapper; import com.vincent.rsf.server.manager.service.MatnrService; import com.vincent.rsf.server.manager.service.OutStockItemService; @@ -44,7 +45,7 @@ * @create 2025/4/22 11:35 */ @Service("outStockItemServiceImpl") -public class OutStockItemServiceImpl extends ServiceImpl<AsnOrderItemMapper, AsnOrderItem> implements OutStockItemService { +public class OutStockItemServiceImpl extends ServiceImpl<AsnOrderItemMapper, WkOrderItem> implements OutStockItemService { @Autowired private OutStockService outStockService; @@ -63,13 +64,13 @@ @Override @Transactional(rollbackFor = Exception.class) public boolean fieldsSave(Map<String, Object> params) { - AsnOrderItem asnOrderItem = JSONObject.parseObject(JSONObject.toJSONString(params), AsnOrderItem.class); - if (StringUtils.isBlank(asnOrderItem.getTrackCode())) { - String ruleCode = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_LABEL_CODE, asnOrderItem); - asnOrderItem.setTrackCode(ruleCode).setBarcode(ruleCode); + WkOrderItem wkOrderItem = JSONObject.parseObject(JSONObject.toJSONString(params), WkOrderItem.class); + if (StringUtils.isBlank(wkOrderItem.getTrackCode())) { + String ruleCode = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_LABEL_CODE, wkOrderItem); + wkOrderItem.setTrackCode(ruleCode).setBarcode(ruleCode); ; } - if (Objects.isNull(asnOrderItem.getAnfme()) || Double.compare(asnOrderItem.getAnfme(), 0.0) <= 0) { + if (Objects.isNull(wkOrderItem.getAnfme()) || Double.compare(wkOrderItem.getAnfme(), 0.0) <= 0) { throw new CoolException("璁″垝鏀惰揣鏁颁笉鑳戒负绌猴紒锛�"); } //淇濆瓨鎵╁睍瀛楁 @@ -77,12 +78,12 @@ String uuid16 = CommonUtil.randomUUID16(); Boolean fields = FieldsUtils.saveFields(params, uuid16); if (fields) { - asnOrderItem.setFieldsIndex(uuid16); + wkOrderItem.setFieldsIndex(uuid16); } } catch (Exception e) { throw new RuntimeException(e); } - if (!this.saveOrUpdate(asnOrderItem)) { + if (!this.saveOrUpdate(wkOrderItem)) { throw new CoolException("鏀惰揣閫氱煡鍗曟槑缁嗕繚瀛樺け璐ワ紒锛�"); } return true; @@ -98,22 +99,19 @@ @Override @Transactional(rollbackFor = Exception.class) public R excelImport(MultipartFile file, HashMap<String, Object> hashMap, Long loginUserId) throws Exception { - ExcelImportResult result = ExcelImportUtil.importExcelMore(file.getInputStream(), AsnOrderTemplate.class, ExcelUtil.getDefaultImportParams()); - if (result.getList().isEmpty()) { - throw new CoolException("鐗╂枡瀵煎叆澶辫触锛侊紒"); - } + ExcelImportResult result = ExcelImportUtil.importExcelMore(file.getInputStream(), OutStockTemplate.class, ExcelUtil.getDefaultImportParams()); if (result.getList().isEmpty()) { throw new CoolException("琛ㄦ牸鍐呭涓嶈兘涓虹┖锛侊紒"); } - List<AsnOrderTemplate> resultList = result.getList(); - Map<String, List<AsnOrderTemplate>> listMap = resultList.stream().collect(Collectors.groupingBy(AsnOrderTemplate::getCode)); + List<OutStockTemplate> resultList = result.getList(); + Map<String, List<OutStockTemplate>> listMap = resultList.stream().collect(Collectors.groupingBy(OutStockTemplate::getCode)); for (String key : listMap.keySet()) { - AsnOrderTemplate template = listMap.get(key).stream().findFirst().get(); - AsnOrder asnOrder = outStockService.getOne(new LambdaQueryWrapper<AsnOrder>().eq(AsnOrder::getCode, template.getCode())); - if (Objects.isNull(asnOrder)) { + OutStockTemplate template = listMap.get(key).stream().findFirst().get(); + WkOrder wkOrder = outStockService.getOne(new LambdaQueryWrapper<WkOrder>().eq(WkOrder::getCode, template.getCode())); + if (!Objects.isNull(wkOrder)) { continue; } - AsnOrder order = new AsnOrder(); + WkOrder order = new WkOrder(); order.setCode(template.getCode()) .setPoCode(template.getPoCode()) .setMemo(template.getMemo()) @@ -124,11 +122,11 @@ if (!outStockService.save(order)) { throw new CoolException("鍗曟嵁淇濆瓨澶辫触锛侊紒"); } - List<AsnOrderItem> items = new ArrayList<>(); - for (AsnOrderTemplate orderTemplate : listMap.get(key)) { - AsnOrderItem orderItem = new AsnOrderItem(); + List<WkOrderItem> items = new ArrayList<>(); + for (OutStockTemplate orderTemplate : listMap.get(key)) { + WkOrderItem orderItem = new WkOrderItem(); Matnr matnr = null; - if (!Objects.isNull(orderTemplate.getMatnrCode()) || StringUtils.isNotBlank(orderTemplate.getMatnrCode())) { + if (StringUtils.isNotBlank(orderTemplate.getMatnrCode())) { matnr = matnrService.getOne(new LambdaQueryWrapper<Matnr>() .eq(Matnr::getCode, orderTemplate.getMatnrCode())); } @@ -150,9 +148,10 @@ } } if (!items.isEmpty()) { - double qty = items.stream().mapToDouble(AsnOrderItem::getQty).sum(); - double purQty = items.stream().mapToDouble(AsnOrderItem::getPurQty).sum(); - if (!outStockService.update(new LambdaUpdateWrapper<AsnOrder>().set(AsnOrder::getQty, qty).set(AsnOrder::getAnfme, purQty).eq(AsnOrder::getId, order.getId()))) { + double purQty = items.stream().mapToDouble(WkOrderItem::getAnfme).sum(); + if (!outStockService.update(new LambdaUpdateWrapper<WkOrder>() + .set(WkOrder::getExceStatus, AsnExceStatus.OUT_STOCK_STATUS_TASK_INIT.val) + .set(WkOrder::getAnfme, purQty).eq(WkOrder::getId, order.getId()))) { throw new CoolException("鍗曟嵁鏁伴噺淇敼澶辫触锛侊紒"); } } @@ -169,7 +168,7 @@ * @time 2025/4/22 12:39 */ @Override - public IPage<Map<String, Object>> listByAsnId(PageParam<AsnOrderItem, BaseParam> pageParam, QueryWrapper<AsnOrderItem> buildWrapper) { + public IPage<Map<String, Object>> listByAsnId(PageParam<WkOrderItem, BaseParam> pageParam, QueryWrapper<WkOrderItem> buildWrapper) { IPage<Map<String, Object>> hsahMap = this.baseMapper.resultForMap(pageParam, buildWrapper); if (hsahMap.getRecords().isEmpty()) { return hsahMap.setRecords(new ArrayList<>()); -- Gitblit v1.9.1