自动化立体仓库 - WMS系统
skyouc
2 天以前 5c5ac364457ece1af7238ab325074a32df93d9cd
src/main/java/com/zy/api/service/impl/KopenApiServiceImpl.java
@@ -2,8 +2,9 @@
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.R;
import com.baomidou.mybatisplus.plugins.Page;
import com.core.exception.CoolException;
import com.zy.api.controller.params.PageRequestParams;
import com.zy.api.entity.OrderItemsParam;
import com.zy.api.entity.OrderParams;
import com.zy.api.entity.OutOrderParams;
@@ -11,16 +12,19 @@
import com.zy.api.entity.ReportOrderParam;
import com.zy.api.entity.StockUpOrderParams;
import com.zy.api.entity.SyncMatParmas;
import com.zy.api.entity.dto.XSR;
import com.zy.api.enums.MatLocType;
import com.zy.api.enums.OrderType;
import com.zy.api.enums.OrderWkType;
import com.zy.api.service.KopenApiService;
import com.zy.asrs.entity.LocDetl;
import com.zy.asrs.entity.Mat;
import com.zy.asrs.entity.Order;
import com.zy.asrs.entity.OrderDetl;
import com.zy.asrs.enums.CommonEnum;
import com.zy.asrs.enums.OrderSettle;
import com.zy.asrs.enums.OrderTypeEnum;
import com.zy.asrs.service.LocDetlService;
import com.zy.asrs.service.MatService;
import com.zy.asrs.service.OrderDetlService;
import com.zy.asrs.service.OrderService;
@@ -46,6 +50,8 @@
    private OrderDetlService orderDetlService;
    @Autowired
    private MatService matService;
    @Autowired
    private LocDetlService locDetlService;
    /**
     * 接收下发订单信息
@@ -56,12 +62,12 @@
     * @date 2025/11/24 14:49
     */
    @Override
    public R receiveOrders(PubOrderParams params) {
    public XSR receiveOrders(PubOrderParams params) {
        if (params.getType().equals(OrderWkType.getTypeVal(params.getType()))) {
            return R.error("当前类型不是上架派工单!!");
            return XSR.error("当前类型不是上架派工单!!");
        }
        addOrUpdateOrders(params, "add");
        return R.ok("单据下发成功!!");
        return XSR.ok("单据下发成功!!");
    }
    /**
@@ -72,9 +78,9 @@
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public R getInDispatchResult(ReportOrderParam params) {
    public XSR getInDispatchResult(ReportOrderParam params) {
        if (Objects.isNull(params)) {
            return R.error("参数不能为空!!");
            return XSR.error("参数不能为空!!");
        }
        String response = null;
        try {
@@ -85,18 +91,18 @@
                    .build()
                    .doPost();
            if (Objects.isNull(response) || response.trim().isEmpty()) {
                return R.error("外网接口无响应!!");
                return XSR.error("外网接口无响应!!");
            }
            JSONObject jsonObject = JSONObject.parseObject(response);
            Integer code = jsonObject.getInteger("code");
            if (!Objects.isNull(code) && code.equals(1)) {
                return R.ok("入库单上报完成!!");
                return XSR.ok("入库单上报完成!!");
            } else {
                String msg = jsonObject.getString("message");
                return R.error(Objects.isNull(msg) ? "上报失败!!" : msg);
                return XSR.error(Objects.isNull(msg) ? "上报失败!!" : msg);
            }
        } catch (Exception e) {
            return R.error(e.getMessage());
            return XSR.error(e.getMessage());
        }
    }
@@ -112,24 +118,24 @@
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public R sendOutDispatch(PubOrderParams params) {
    public XSR sendOutDispatch(PubOrderParams params) {
        if (Objects.isNull(params)) {
            return R.error("参数不能为空!!");
            return XSR.error("参数不能为空!!");
        }
        // 校验参数
        if (Objects.isNull(params.getDispatch_no())) {
            return R.error("派工单编号不能为空!!");
            return XSR.error("派工单编号不能为空!!");
        }
        if (Objects.isNull(params.getKopen_id())) {
            return R.error("流水号不能为空!!");
            return XSR.error("流水号不能为空!!");
        }
        if (Objects.isNull(params.getCompany_id())) {
            return R.error("公司ID不能为空!!");
            return XSR.error("公司ID不能为空!!");
        }
        addOrUpdateOrders(params, "add");
        return R.ok("备货指示派工单下发成功!!");
        return XSR.ok("备货指示派工单下发成功!!");
    }
    // /**
@@ -184,9 +190,9 @@
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public synchronized R basMatupdate(List<SyncMatParmas> params) {
    public synchronized XSR basMatupdate(List<SyncMatParmas> params) {
        if (Objects.isNull(params) || params.isEmpty()) {
            return R.error("参数不能为空!!");
            return XSR.error("参数不能为空!!");
        }
        params.forEach(mats -> {
            if (Objects.isNull(mats)) {
@@ -232,7 +238,7 @@
            }
        });
        return R.ok("保存成功!!");
        return XSR.ok("保存成功!!");
    }
    /**
@@ -320,6 +326,7 @@
                // 备货单出库
                newOrder.setOrderNo(params.getPick_no());
                newOrder.setNumber(params.getDispatch_no());
                newOrder.setShipCode(params.getOrder_no());
                newOrder.setCstmrName(params.getCus_id());
                newOrder.setTel(params.getCus_address());
                newOrder.setDocType(Long.parseLong(OrderTypeEnum.STOCK.type + ""));
@@ -401,22 +408,22 @@
     * @date 2025/11/24 15:40
     */
    @Override
    public R getOutDetails(StockUpOrderParams params) {
    public XSR getOutDetails(StockUpOrderParams params) {
        if (Objects.isNull(params)) {
            return R.error("参数不能为空!!");
            return XSR.error("参数不能为空!!");
        }
        // 校验参数
        if (Objects.isNull(params.getDispatch_no())) {
            return R.error("派工单编号不能为空!!");
            return XSR.error("派工单编号不能为空!!");
        }
        if (Objects.isNull(params.getKopen_id())) {
            return R.error("流水号不能为空!!");
            return XSR.error("流水号不能为空!!");
        }
        if (Objects.isNull(params.getCompany_id())) {
            return R.error("公司ID不能为空!!");
            return XSR.error("公司ID不能为空!!");
        }
        if (Objects.isNull(params.getDetails()) || params.getDetails().isEmpty()) {
            return R.error("订单明细不能为空!!");
            return XSR.error("订单明细不能为空!!");
        }
        List<OrderItemsParam> items = new ArrayList<>();
@@ -441,7 +448,22 @@
            addOrUpdateOrders(pubOrderParams, "add");
        });
        return R.ok("备货单下发成功!!");
        return XSR.ok("备货单下发成功!!");
    }
    /**
     * 查询WMS库存信息
     *
     * @param params
     * @return com.core.common.R
     */
    @Override
    public XSR getStockInfo(PageRequestParams params) {
      Page<LocDetl> locDetls = locDetlService.selectPage(new Page<>(params.getCurr(), params.getLimit()), new EntityWrapper<LocDetl>()
                .eq(!Objects.isNull(params.getPro_komcode()), "matnr", params.getPro_komcode())
                .eq(Objects.isNull(params.getPro_id()),"supp_code", params.getPro_id()));
        return XSR.ok(locDetls.getRecords());
    }
}