From c44cdd8db1e6691e2b2d6a915f37e956d2ed4b60 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期二, 15 七月 2025 10:18:17 +0800 Subject: [PATCH] 盘点单导入功能优化 --- rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/CheckOrderController.java | 48 +++++++++++++++++++++++++++++++++++++----------- 1 files changed, 37 insertions(+), 11 deletions(-) diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/CheckOrderController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/CheckOrderController.java index 48ffb18..e17c4a6 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/CheckOrderController.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/CheckOrderController.java @@ -10,7 +10,10 @@ 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.entity.AsnOrder; +import com.vincent.rsf.server.manager.controller.params.AsnOrderAndItemsParams; +import com.vincent.rsf.server.manager.entity.WkOrder; +import com.vincent.rsf.server.manager.entity.WkOrderItem; +import com.vincent.rsf.server.manager.entity.excel.CheckOrderTemplate; import com.vincent.rsf.server.manager.enums.OrderType; import com.vincent.rsf.server.manager.service.CheckOrderService; import com.vincent.rsf.server.system.constant.SerialRuleCode; @@ -37,8 +40,8 @@ @PostMapping("/check/page") public R page(@RequestBody Map<String, Object> map) { BaseParam baseParam = buildParam(map, BaseParam.class); - PageParam<AsnOrder, BaseParam> pageParam = new PageParam<>(baseParam, AsnOrder.class); - QueryWrapper<AsnOrder> wrapper = pageParam.buildWrapper(true); + PageParam<WkOrder, BaseParam> pageParam = new PageParam<>(baseParam, WkOrder.class); + QueryWrapper<WkOrder> wrapper = pageParam.buildWrapper(true); wrapper.eq("type", OrderType.ORDER_CHECK.type); return R.ok().add(checkOrderService.page(pageParam, wrapper)); } @@ -64,7 +67,7 @@ @PreAuthorize("hasAuthority('manager:check:save')") @OperationLog("Create 瀛楀吀鏁版嵁闆�") @PostMapping("/check/save") - public R save(@RequestBody AsnOrder order) { + public R save(@RequestBody WkOrder order) { order.setType(OrderType.ORDER_CHECK.type); String ruleCode = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_CHECK_RULE_CODE, order); if (Objects.isNull(ruleCode)) { @@ -79,7 +82,7 @@ @PreAuthorize("hasAuthority('manager:check:update')") @OperationLog("Update 瀛楀吀鏁版嵁闆�") @PostMapping("/check/update") - public R update(@RequestBody AsnOrder order) { + public R update(@RequestBody WkOrder order) { order.setUpdateTime(null); order.setUpdateBy(getLoginUserId()); if (!checkOrderService.updateById(order)) { @@ -102,9 +105,9 @@ @PostMapping("/check/query") public R query(@RequestParam(required = false) String condition) { List<KeyValVo> vos = new ArrayList<>(); - LambdaQueryWrapper<AsnOrder> wrapper = new LambdaQueryWrapper<>(); + LambdaQueryWrapper<WkOrder> wrapper = new LambdaQueryWrapper<>(); if (!Cools.isEmpty(condition)) { - wrapper.like(AsnOrder::getCode, condition); + wrapper.like(WkOrder::getCode, condition); } checkOrderService.page(new Page<>(1, 30), wrapper).getRecords().forEach( item -> vos.add(new KeyValVo(item.getId(), item.getCode())) @@ -115,16 +118,40 @@ @PreAuthorize("hasAuthority('manager:check:list')") @PostMapping("/check/export") public void export(@RequestBody Map<String, Object> map, HttpServletResponse response) throws Exception { - List<AsnOrder> orders = new ArrayList<>(); + List<WkOrder> orders = new ArrayList<>(); if (!Objects.isNull(map.get("ids"))) { - orders = checkOrderService.list(new LambdaQueryWrapper<AsnOrder>().in(AsnOrder::getId, map.get("ids"))); + orders = checkOrderService.list(new LambdaQueryWrapper<WkOrder>().in(WkOrder::getId, map.get("ids"))); } else { orders = checkOrderService.list(); } - ExcelUtil.build(ExcelUtil.create(orders, AsnOrder.class), response); + ExcelUtil.build(ExcelUtil.create(orders, WkOrder.class), response); } + @PostMapping("/check/items/save") + @ApiOperation("淇濆瓨涓诲崟鍙婃槑缁�") + @PreAuthorize("hasAuthority('manager:check:save')") + public R saveOutStock(@RequestBody AsnOrderAndItemsParams params) throws Exception { + if (Objects.isNull(params)) { + return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒"); + } + return checkOrderService.saveCheckOrder(params, getLoginUserId()); + } + /** + * @author Ryan + * @description 涓嬭浇妯℃澘 + * @param + * @return + * @time 2025/4/18 08:17 + */ + @PostMapping("/check/template/download") + @ApiOperation("涓嬭浇鐩樼偣鍗曟ā鏉�") + @PreAuthorize("hasAuthority('manager:check:update')") + public void downloadTemplate(@RequestBody Map<String, Object> map, HttpServletResponse response) throws Exception { + CheckOrderTemplate template = ExcelUtil.mockData(CheckOrderTemplate.class); + List<CheckOrderTemplate> list = Arrays.asList(template); + ExcelUtil.build(ExcelUtil.create(list, CheckOrderTemplate.class, true), response); + } /** * 鐩樼偣鍗曞鍏� @@ -141,6 +168,5 @@ HashMap<String, Object> hashMap = new HashMap<>(); return checkOrderService.excelImport(file, hashMap, getLoginUserId()); } - } -- Gitblit v1.9.1