From c46d1d8c3b9875f051a6ec3c4a1d3fa7bd32e5db Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期四, 15 五月 2025 17:15:21 +0800 Subject: [PATCH] 新增库存管理 新增库存明细 --- rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/AsnOrderController.java | 41 +++++++++++++++++++++++------------------ 1 files changed, 23 insertions(+), 18 deletions(-) diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/AsnOrderController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/AsnOrderController.java index 9e5bcfc..64afeec 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/AsnOrderController.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/AsnOrderController.java @@ -8,6 +8,8 @@ import com.vincent.rsf.framework.common.Cools; import com.vincent.rsf.framework.common.R; import com.vincent.rsf.framework.exception.CoolException; +import com.vincent.rsf.server.manager.entity.Purchase; +import com.vincent.rsf.server.manager.entity.PurchaseItem; import com.vincent.rsf.server.manager.enums.OrderType; import com.vincent.rsf.server.manager.enums.OrderWorkType; import com.vincent.rsf.server.common.utils.ExcelUtil; @@ -21,8 +23,11 @@ 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.enums.POExceStatus; import com.vincent.rsf.server.manager.service.AsnOrderItemService; import com.vincent.rsf.server.manager.service.AsnOrderService; +import com.vincent.rsf.server.manager.service.impl.PurchaseItemServiceImpl; +import com.vincent.rsf.server.manager.service.impl.PurchaseServiceImpl; import com.vincent.rsf.server.system.constant.SerialRuleCode; import com.vincent.rsf.server.system.controller.BaseController; import com.vincent.rsf.server.system.utils.SerialRuleUtils; @@ -35,6 +40,7 @@ import javax.servlet.http.HttpServletResponse; import java.util.*; +import java.util.stream.Collectors; @RestController @Api(tags = "ASN鍏ュ簱閫氱煡鍗�") @@ -44,6 +50,10 @@ private AsnOrderService asnOrderService; @Autowired private AsnOrderItemService asnOrderItemService; + @Autowired + private PurchaseServiceImpl purchaseService; + @Autowired + private PurchaseItemServiceImpl purchaseItemService; @PreAuthorize("hasAuthority('manager:asnOrder:list')") @PostMapping("/asnOrder/page") @@ -110,18 +120,10 @@ @PostMapping("/asnOrder/remove/{ids}") @Transactional(rollbackFor = Exception.class) public R remove(@PathVariable Long[] ids) { - if (!asnOrderService.remove(new LambdaQueryWrapper<AsnOrder>().in(AsnOrder::getId, Arrays.asList(ids)).eq(AsnOrder::getExceStatus, AsnExceStatus.ASN_EXCE_STATUS_UN_EXCE.val))) { - return R.error("浠诲姟涓崟鎹笉鍙垹闄わ紒锛�"); + if (Objects.isNull(ids) || ids.length == 0) { + return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒"); } - for (Long id : ids) { - List<AsnOrderItem> list = asnOrderItemService.list(new LambdaQueryWrapper<AsnOrderItem>().eq(AsnOrderItem::getAsnId, id)); - if (!list.isEmpty()) { - if (!asnOrderItemService.remove(new LambdaQueryWrapper<AsnOrderItem>().in(AsnOrderItem::getAsnId, ids))) { - throw new CoolException("Details Delete Fail"); - } - } - } - return R.ok("鍒犻櫎鎴愬姛锛侊紒").add(ids); + return asnOrderService.removeOrders(Arrays.asList(ids)); } @PreAuthorize("hasAuthority('manager:asnOrder:list')") @@ -225,15 +227,18 @@ @ApiOperation("鏍规嵁PO鍗曟柊寤烘敹璐у崟") @PreAuthorize("hasAuthority('manager:asnOrder:save')") public R orderCreateByPo(@RequestBody Map<String, Object> params) { - if (Objects.isNull(params.get("ids"))) { - return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒"); + if (Objects.isNull(params.get("purchaseId"))) { + return R.error("PO涓诲崟ID涓嶈兘涓虹┖锛侊紒"); } - String json = params.get("ids").toString(); - List<Long> ids = JSONArray.parseArray(params.get("ids").toString(), Long.class); - if (ids.isEmpty()) { - return R.error("鍙傛暟涓嶈兘涓虹┖"); + if (Objects.isNull(params.get("items"))) { + return R.error("鏄庣粏鍗曟嵁涓嶈兘涓虹┖锛侊紒"); } - return asnOrderService.createByPo(ids); +// List<Long> ids = JSONArray.parseArray(params.get("ids").toString(), Long.class); +// if (ids.isEmpty()) { +// return R.error("鍙傛暟涓嶈兘涓虹┖"); +// } + + return asnOrderService.createByPo(params); } -- Gitblit v1.9.1