skyouc
2025-04-17 aa78a9846516e2216c1f2cd494a43df00a188871
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/AsnOrderController.java
@@ -1,5 +1,7 @@
package com.vincent.rsf.server.manager.controller;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.vincent.rsf.framework.common.Cools;
@@ -13,6 +15,7 @@
import com.vincent.rsf.server.manager.controller.params.AsnOrderAndItemsParams;
import com.vincent.rsf.server.manager.controller.params.BatchUpdateParam;
import com.vincent.rsf.server.manager.entity.AsnOrder;
import com.vincent.rsf.server.manager.entity.Matnr;
import com.vincent.rsf.server.manager.service.AsnOrderService;
import com.vincent.rsf.server.system.constant.SerialRuleCode;
import com.vincent.rsf.server.system.controller.BaseController;
@@ -121,7 +124,18 @@
    @PostMapping("/asnOrder/export")
    @ApiOperation("导出")
    public void export(@RequestBody Map<String, Object> map, HttpServletResponse response) throws Exception {
        ExcelUtil.build(ExcelUtil.create(asnOrderService.list(), AsnOrder.class), response);
        List<AsnOrder> orders = new ArrayList<>();
        if (!Objects.isNull(map.get("ids"))) {
            List<Long> ids = JSONArray.parseArray(JSONObject.toJSONString(map.get("ids")), Long.class);
            if (!ids.isEmpty()) {
                orders = asnOrderService.list(new LambdaQueryWrapper<AsnOrder>().in(AsnOrder::getId, ids));
            } else {
                orders = asnOrderService.list(new LambdaQueryWrapper<AsnOrder>());
            }
        } else {
            orders = asnOrderService.list(new LambdaQueryWrapper<AsnOrder>());
        }
        ExcelUtil.build(ExcelUtil.create(orders, AsnOrder.class), response);
    }
    /**
@@ -157,18 +171,17 @@
    @PostMapping("/asnOrder/items/save")
    @ApiOperation("保存主单及明细")
    @PreAuthorize("hasAuthority('manager:asnOrder:save')")
    public R orderAndItem(@RequestBody AsnOrderAndItemsParams params) {
    public R orderAndItem(@RequestBody AsnOrderAndItemsParams params) throws Exception {
        if (Objects.isNull(params)) {
           return R.error("参数不能为空!!");
        }
        return asnOrderService.saveOrderAndItems(params, getLoginUserId());
    }
    @ApiOperation("单据信息修改")
    @PostMapping("/asnOrder/items/update")
    @PreAuthorize("hasAuthority('manager:asnOrder:update')")
    public R orderAndrItemUpdate(@RequestBody AsnOrderAndItemsParams params) {
    public R orderAndrItemUpdate(@RequestBody AsnOrderAndItemsParams params) throws Exception {
        if (Objects.isNull(params)) {
            return R.error("参数不能为空!!");
        }
@@ -190,4 +203,25 @@
        }
        return R.ok(asnOrderService.batchUpdate(params, getLoginUserId()));
    }
    @ApiOperation("一键收货")
    @PostMapping("/asnOrder/complete/{id}")
    @PreAuthorize("hasAuthority('manager:asnOrder:update')")
    public R completeOrder(@PathVariable Long id) {
        if (Objects.isNull(id)) {
            return R.error("参数不能为空!!");
        }
        return asnOrderService.completeOrder(id, getLoginUserId());
    }
    @ApiOperation("关闭收货单")
    @PostMapping("/asnOrder/close/{id}")
    @PreAuthorize("hasAuthority('manager:asnOrder:update')")
    public R closeOrder(@PathVariable Long id) {
        if (Objects.isNull(id)) {
            return R.error("参数不能为空!!");
        }
        return asnOrderService.closeOrder(id);
    }
}