自动化立体仓库 - WMS系统
pang.jiabao
2024-10-17 61814ecc0e12f8bb84eb4c8c7dc1478cf6ebd8e8
src/main/java/com/zy/asrs/controller/OpenController.java
@@ -2,11 +2,13 @@
import com.alibaba.fastjson.JSON;
import com.core.annotations.AppAuth;
import com.core.common.*;
import com.core.common.BaseRes;
import com.core.common.Cools;
import com.core.common.R;
import com.core.exception.CoolException;
import com.zy.asrs.entity.param.*;
import com.zy.asrs.service.OpenService;
import com.zy.common.model.DetlDto;
import com.zy.common.model.LocDto;
import com.zy.common.web.BaseController;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@@ -14,7 +16,6 @@
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
@@ -33,6 +34,38 @@
    @Autowired
    private OpenService openService;
    @PostMapping("/grouping")
    @AppAuth(memo = "AGV组托调用")
    public synchronized R grouping(@RequestHeader(required = false) String appkey,
                                      @RequestBody(required = false) AgvGroupingParam param,
                                      HttpServletRequest request){
        auth(appkey, param, request);
        if (Cools.isEmpty(param.getOrderNo())) {
            param.setOrderNo(param.getBillNo());
        }
        List<AgvGroupingParam.CombMat> combMats = param.getCombMats();
        combMats.forEach(elem -> {
            if (Cools.isEmpty(elem.getBatch())) {
                elem.setBatch(elem.getItemBatch());
            }
        });
        return openService.grouping(param);
    }
    @PostMapping("/outbound")
    @AppAuth(memo = "AGV出库调用")
    public synchronized R outbound(@RequestHeader(required = false) String appkey,
                                      @RequestBody(required = false) List<LocDto> locDtos,
                                      HttpServletRequest request) throws InterruptedException {
        auth(appkey, locDtos, request);
        if (Cools.isEmpty(locDtos)) {
            return R.parse(BaseRes.PARAM);
        }
        return openService.outbound(locDtos);
    }
    @PostMapping("/order/matSync/default/v1")
    @AppAuth(memo = "商品信息同步接口")
    public synchronized R syncMatInfo(@RequestHeader(required = false) String appkey,