From 41a0c95f57dfce5373b1c16532451230882c0a5d Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期五, 13 六月 2025 12:41:30 +0800
Subject: [PATCH] 出库单据预览功能
---
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/OutStockController.java | 61 +++++++++++++++++++++++++++++-
1 files changed, 58 insertions(+), 3 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 a4fc8e0..d2d32ce 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
@@ -8,8 +8,11 @@
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.framework.exception.CoolException;
import com.vincent.rsf.server.manager.controller.params.OrderOutTaskParam;
import com.vincent.rsf.server.manager.controller.params.OutStockToTaskParams;
+import com.vincent.rsf.server.manager.entity.DeliveryItem;
+import com.vincent.rsf.server.manager.entity.excel.OutStockTemplate;
import com.vincent.rsf.server.manager.enums.OrderType;
import com.vincent.rsf.server.manager.enums.OrderWorkType;
import com.vincent.rsf.server.common.annotation.OperationLog;
@@ -42,7 +45,6 @@
@RestController
@Api(tags = "鍑哄簱鍗曟嵁")
public class OutStockController extends BaseController {
-
Logger logger = LoggerFactory.getLogger(OutStockController.class);
@Autowired
@@ -53,6 +55,17 @@
@PreAuthorize("hasAuthority('manager:outStock:list')")
@PostMapping("/outStock/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> queryWrapper = pageParam.buildWrapper(true);
+ List<String> list = Arrays.asList(OrderType.ORDER_OUT.type);
+ queryWrapper.in("type", list);
+ return R.ok().add(outStockService.page(pageParam, queryWrapper));
+ }
+
+ @PreAuthorize("hasAuthority('manager:outStock:list')")
+ @PostMapping("/outStock/dialog/page")
+ public R dialogPage(@RequestBody Map<String, Object> map) {
BaseParam baseParam = buildParam(map, BaseParam.class);
PageParam<AsnOrder, BaseParam> pageParam = new PageParam<>(baseParam, AsnOrder.class);
QueryWrapper<AsnOrder> queryWrapper = pageParam.buildWrapper(true);
@@ -154,6 +167,21 @@
return outStockService.cancelOutOrder(id);
}
+ @PreAuthorize("hasAuthority('manager:outStock:update')")
+ @ApiOperation("鍒犻櫎宸茬敓鎴愭槑缁�")
+ @GetMapping("/outStock/items/cancel/{ids}")
+ public R cancel(@PathVariable Long[] ids) {
+ List<Long> list = Arrays.asList(ids);
+ if (list.isEmpty()) {
+ return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒");
+ }
+ List<AsnOrderItem> orderItems = outStockItemService.list(new LambdaQueryWrapper<AsnOrderItem>().in(AsnOrderItem::getId, list));
+ if (orderItems.isEmpty()) {
+ throw new CoolException("鍗曟嵁鏄庣粏涓嶅瓨鍦紒锛�");
+ }
+ return outStockService.cancelOutOrderByItems(orderItems);
+ }
+
@PreAuthorize("hasAuthority('manager:outStock:list')")
@PostMapping("/outStock/export")
@@ -204,8 +232,8 @@
if (Objects.isNull(params.get("ids"))) {
return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒");
}
- List<Long> ids = (List<Long>) params.get("ids");
- return outStockService.genOutStock(ids, getLoginUserId());
+ List<DeliveryItem> items = JSON.parseArray(JSONObject.toJSONString(params.get("ids")), DeliveryItem.class);
+ return outStockService.genOutStock(items, getLoginUserId());
}
@PreAuthorize("hasAuthority('manager:outStock:update')")
@@ -240,6 +268,7 @@
}
@PostMapping("/outStock/order/getOutTaskItems")
+ @ApiOperation("鍑哄簱鍗曞簱浣嶉瑙�")
@PreAuthorize("hasAuthority('manager:outStock:list')")
public R getOrderOutTaskItem(@RequestBody OrderOutTaskParam param) {
if (Cools.isEmpty(param)) {
@@ -271,5 +300,31 @@
return outStockService.genOutStockTask(taskParams, getLoginUserId(), Long.parseLong(params.get("outId").toString()));
}
+ /**
+ * 鑾峰彇鍑哄簱绔欑偣
+ * @return
+ */
+ @GetMapping("/outStock/tasks/sites")
+ @ApiOperation("鑾峰彇鍑哄簱搴撳彛")
+ @PreAuthorize("hasAuthority('manager:outStock:list')")
+ public R getSiteNos() {
+ return outStockService.getSiteNos();
+ }
+
+ /**
+ * @author Ryan
+ * @description 涓嬭浇妯℃澘
+ * @param
+ * @return
+ * @time 2025/4/18 08:17
+ */
+ @PostMapping("/outStock/template/download")
+ @ApiOperation("涓嬭浇鏀惰揣鍗曟ā鏉�")
+ @PreAuthorize("hasAuthority('manager:outStockItem:update')")
+ public void downloadTemplate(@RequestBody Map<String, Object> map, HttpServletResponse response) throws Exception {
+ OutStockTemplate template = ExcelUtil.mockData(OutStockTemplate.class);
+ List<OutStockTemplate> list = Arrays.asList(template);
+ ExcelUtil.build(ExcelUtil.create(list, OutStockTemplate.class, true), response);
+ }
}
--
Gitblit v1.9.1