From f5b4f189e460480a96acf3d1864344d8d5d92695 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期三, 07 五月 2025 10:18:57 +0800 Subject: [PATCH] PO单模板优化 ASN单模板优化 --- rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/OutStockController.java | 71 ++++++++++++++++++++++++++++------- 1 files changed, 57 insertions(+), 14 deletions(-) diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/OutStockController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/OutStockController.java index 0cf149b..8a4f749 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/OutStockController.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/OutStockController.java @@ -6,19 +6,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.vincent.rsf.framework.common.Cools; import com.vincent.rsf.framework.common.R; -import com.vincent.rsf.server.api.entity.enums.OrderType; -import com.vincent.rsf.server.api.entity.enums.OrderWorkType; +import com.vincent.rsf.server.manager.enums.OrderType; +import com.vincent.rsf.server.manager.enums.OrderWorkType; import com.vincent.rsf.server.common.annotation.OperationLog; import com.vincent.rsf.server.common.domain.BaseParam; import com.vincent.rsf.server.common.domain.KeyValVo; import com.vincent.rsf.server.common.domain.PageParam; import com.vincent.rsf.server.common.utils.ExcelUtil; +import com.vincent.rsf.server.manager.controller.params.AsnOrderAndItemsParams; import com.vincent.rsf.server.manager.entity.AsnOrder; import com.vincent.rsf.server.manager.entity.AsnOrderItem; import com.vincent.rsf.server.manager.entity.excel.AsnOrderTemplate; import com.vincent.rsf.server.manager.enums.AsnExceStatus; -import com.vincent.rsf.server.manager.service.AsnOrderItemService; -import com.vincent.rsf.server.manager.service.AsnOrderService; import com.vincent.rsf.server.manager.service.OutStockItemService; import com.vincent.rsf.server.manager.service.OutStockService; import com.vincent.rsf.server.system.constant.SerialRuleCode; @@ -82,7 +81,8 @@ if (Objects.isNull(ruleCode) || StringUtils.isBlank(ruleCode)) { return R.error("缂栫爜瑙勫垯閿欒锛氱紪鐮併�孲YS_OUT_STOCK_CODE銆嶆槸鏈缃垚鍔燂紒锛�"); } - asnOrder.setCode(ruleCode); + asnOrder.setExceStatus(AsnExceStatus.OUT_STOCK_STATUS_TASK_INIT.val) + .setCode(ruleCode); } if (!outStockService.save(asnOrder)) { return R.error("Save Fail"); @@ -98,6 +98,10 @@ asnOrder.setType(OrderType.ORDER_OUT.type) .setUpdateBy(getLoginUserId()) .setUpdateTime(new Date()); + if (Objects.isNull(asnOrder.getCode())) { + String ruleCode = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_OUT_STOCK_CODE, asnOrder); + asnOrder.setCode(ruleCode); + } if (!outStockService.updateById(asnOrder)) { return R.error("Update Fail"); } @@ -166,26 +170,65 @@ template.setCode(order.getCode()) .setType(OrderType.getValType(order.getType())) .setWkType(OrderWorkType.getWorkDesc(order.getWkType())) - .setExceStatus(AsnExceStatus.getExceStatus(order.getExceStatus())) .setAnfme(item.getAnfme() + "") .setMaktx(item.getMaktx()) .setMemo(item.getMemo()) .setMatnrCode(item.getMatnrCode()) .setPoCode(item.getPoCode()) .setSplrName(item.getSplrName()) - .setPoId(order.getPoId() + "") - .setTrackCode(item.getTrackCode()) - .setBarcode(item.getBarcode()) - .setPackName(item.getPackName()) .setPlatItemId(item.getPlatItemId()) .setSplrBatch(item.getSplrBatch()) - .setSplrCode(item.getSplrCode()) - .setStockUnit(item.getStockUnit()) - .setPurQty(item.getPurQty() + "") - .setPurUnit(item.getPurUnit()); + .setSplrCode(item.getSplrCode()); orderTemplates.add(template); } } ExcelUtil.build(ExcelUtil.create(orderTemplates, AsnOrderTemplate.class), response); } + + + @PreAuthorize("hasAuthority('manager:outStock:update')") + @ApiOperation("閫氳繃DO鍗曠敓鎴愬嚭搴撳崟") + @PostMapping("/outStock/generate/orders") + public R genOutStock(@RequestBody Map<String, Object> params) { + if (Objects.isNull(params.get("ids"))) { + return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒"); + } + List<Long> ids = (List<Long>) params.get("ids"); + return outStockService.genOutStock(ids); + } + + @PreAuthorize("hasAuthority('manager:outStock:update')") + @ApiOperation("鍑哄簱鍗曠敓鎴愭尝娆�") + @PostMapping("/outStock/generate/wave") + public R generateWave(@RequestBody Map<String, Object> params) { + if (Objects.isNull(params)) { + return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒"); + } + List<Long> ids = (List<Long>) params.get("ids"); + return outStockService.generateWaves(ids); + } + + @PostMapping("/outStock/items/save") + @ApiOperation("淇濆瓨涓诲崟鍙婃槑缁�") + @PreAuthorize("hasAuthority('manager:outStock:save')") + public R saveOutStock(@RequestBody AsnOrderAndItemsParams params) throws Exception { + if (Objects.isNull(params)) { + return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒"); + } + return outStockService.saveOutStock(params, getLoginUserId()); + } + + @ApiOperation("鍗曟嵁淇℃伅淇敼") + @PostMapping("/outStock/items/update") + @PreAuthorize("hasAuthority('manager:outStock:update')") + public R orderAndrItemUpdate(@RequestBody AsnOrderAndItemsParams params) throws Exception { + if (Objects.isNull(params)) { + return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒"); + } + return outStockService.updateOrderItem(params, getLoginUserId()); + } + + + + } -- Gitblit v1.9.1