自动化立体仓库 - WMS系统
pang.jiabao
2025-04-30 abb9b5c51d8a20be68b64e0c4a9620f6578d2e3a
src/main/java/com/zy/asrs/controller/OpenController.java
@@ -5,6 +5,7 @@
import com.core.common.Cools;
import com.core.common.R;
import com.core.exception.CoolException;
import com.zy.asrs.entity.OutLocInfoParam;
import com.zy.asrs.entity.param.*;
import com.zy.asrs.service.OpenService;
import com.zy.common.web.BaseController;
@@ -14,6 +15,8 @@
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
 * Created by vincent on 2022/4/8
@@ -30,6 +33,186 @@
    @Autowired
    private OpenService openService;
    @PostMapping("/scrk")
    @AppAuth(memo = "GWMS调用生成入库工作档")
    public synchronized R gwmsGenerateInventory(@RequestHeader(required = false) String appkey,
                                                @RequestBody GwmsGenerateInventoryDto param,
                                                HttpServletRequest request) {
        auth(appkey, param, request);
        return R.ok(openService.gwmsGenerateInventory(param));
    }
    @PostMapping("/fxprk")
    @AppAuth(memo = "反修品入库")
    public synchronized R fxprk(@RequestHeader(required = false) String appkey,
                                                @RequestBody FxprkParam param,
                                                HttpServletRequest request) {
        auth(appkey, param, request);
        return R.ok(openService.fxprk(param));
    }
    @PostMapping("/kthl")
    @AppAuth(memo = "空托盘回流(二楼流到一楼)")
    public synchronized R kthl(@RequestHeader(required = false) String appkey,
                                @RequestBody KthlParam param,
                                HttpServletRequest request) {
        auth(appkey, param, request);
        return openService.kthl(param);
    }
    @PostMapping("/tb")
    @AppAuth(memo = "一楼贴标调用")
    public synchronized R tb(@RequestHeader(required = false) String appkey,
                               @RequestBody TbParam param,
                               HttpServletRequest request) {
        auth(appkey, param, request);
        return openService.tb(param);
    }
    @PostMapping("/dd")
    @AppAuth(memo = "一楼打带调用")
    public synchronized R dd(@RequestHeader(required = false) String appkey,
                             @RequestBody TbParam param,
                             HttpServletRequest request) {
        auth(appkey, param, request);
        return openService.dd(param);
    }
    @PostMapping("/zxrk")
    @AppAuth(memo = "GWCS到达堆垛机入库站点请求ZWCS执行")
    public synchronized R crnExecute(@RequestHeader(required = false) String appkey,
                                     @RequestBody CrnExecuteParam param,
                                     HttpServletRequest request) {
        auth(appkey, param, request);
        return R.ok(openService.crnExecute(param));
    }
    @PostMapping("/ckrw")
    @AppAuth(memo = "ZWMS接收MES下发出库任务")
    public synchronized R zwmsOutLocWork(@RequestHeader(required = false) String appkey,
                                         @RequestBody ZwmsOutLocWorkDto param,
                                         HttpServletRequest request) {
        auth(appkey, param, request);
        if (Cools.isEmpty(param,param.getOrderNo(),param.getOrderType(),param.getGroups())) {
            R.parse("参数不能为空");
        }
        return openService.zwmsOutLocWork(param);
    }
    @PostMapping("/cxzk")
    @AppAuth(memo = "根据包装组号查询在库时间-MES调用")
    public synchronized R queryInLocTime(@RequestHeader(required = false) String appkey,
                                         @RequestBody List<String> param,
                                         HttpServletRequest request) {
        auth(appkey, param, request);
        return openService.queryInLocTime(param);
    }
    @PostMapping("/ckjgsb")
    @AppAuth(memo = "货物到达出库口以后,上报出库结果")
    public synchronized R outLocResultReport(@RequestHeader(required = false) String appkey,
                                             @RequestBody GhjtApiParam param,
                                             HttpServletRequest request) {
        auth(appkey, param, request);
        return R.ok(openService.outLocResultReport(param));
    }
    @PostMapping("/cpjck")
    @AppAuth(memo = "拆盘机出库接口")
    public synchronized R emptyOutLoc(@RequestHeader(required = false) String appkey,
                                      @RequestBody GhjtApiParam param,
                                      HttpServletRequest request) {
        auth(appkey, param, request);
        return R.ok(openService.emptyOutLoc(param));
    }
    @PostMapping("/zpckdw")
    @AppAuth(memo = "组盘桁架gwcs告诉zwms货物到位,zmws告诉gwcs怎么拆")
    public synchronized R zphjDw(@RequestHeader(required = false) String appkey,
                                 @RequestBody ZphjckdwParam param,
                                 HttpServletRequest request) {
        auth(appkey, param, request);
        return openService.zphjDw(param);
    }
    @PostMapping("/cdwc")
    @AppAuth(memo = "组盘桁架拆垛完成gwcs请求zwms")
    public synchronized R zphjCdwc(@RequestHeader(required = false) String appkey,
                                   @RequestBody ZphjcdwcParam param,
                                   HttpServletRequest request) {
        auth(appkey, param, request);
        return openService.zphjCdwc(param);
    }
    @PostMapping("/updateBarcode")
    @AppAuth(memo = "更新库位空托盘条码")
    public synchronized R updateBarcode(@RequestHeader(required = false) String appkey,
                                   HttpServletRequest request) {
        auth(appkey, null, request);
        openService.updateBarcode();
        return R.ok();
    }
    @PostMapping("/prodCheck")
    @AppAuth(memo = "产品合格校验,EMS调用")
    public synchronized R prodCheck(@RequestHeader(required = false) String appkey,
                                    @RequestBody List<ProdCheckParam> param,
                                        HttpServletRequest request) {
        auth(appkey, param, request);
        return openService.prodCheck(param);
    }
    @PostMapping("/xhd")
    @AppAuth(memo = "盘点位请求亮灯")
    public synchronized R requestXhd(@RequestHeader(required = false) String appkey,
                                    @RequestBody Map<String,Object> param,
                                    HttpServletRequest request) {
        auth(appkey, param, request);
        if (Cools.isEmpty(param.get("barcode"))){
            return R.parse("条码错误:" + param.get("barcode"));
        }
        return openService.requestXhd((String) param.get("barcode"));
    }
    @PostMapping("/kxlhcdwc")
    @AppAuth(memo = "空闲理货拆垛完成")
    public synchronized R kxlhCdwc(@RequestHeader(required = false) String appkey,
                                   @RequestBody KxlhcdwcParam param,
                                   HttpServletRequest request) {
        auth(appkey, param, request);
        return openService.kxlhCdwc(param);
    }
    @PostMapping("/getUnfulfilledOrders")
    @AppAuth(memo = "获取未完成订单统计信息")
    public synchronized R getUnfulfilledOrders(@RequestHeader(required = false) String appkey,
                                   HttpServletRequest request) {
        auth(appkey, null, request);
        return openService.getUnfulfilledOrders();
    }
    @PostMapping("/getCrnLaneWayInfo")
    @AppAuth(memo = "获取堆垛机状态及所属巷道库位统计信息")
    public synchronized R getCrnLaneWayInfo(@RequestHeader(required = false) String appkey,
                                               HttpServletRequest request) {
        auth(appkey, null, request);
        return openService.getCrnLaneWayInfo();
    }
    @PostMapping("/getOutLocInfoByBarcode")
    @AppAuth(memo = "根据托盘码,获取出库物料信息进行大屏显示")
    public synchronized R getOutLocInfoByBarcode(@RequestHeader(required = false) String appkey,
                                            @RequestBody OutLocInfoParam param,
                                            HttpServletRequest request) {
        auth(appkey, param, request);
        if (Cools.isEmpty(param) || Cools.isEmpty(param.getBarcode())) {
            return R.parse("托盘码不能为空");
        }
        return openService.getOutLocInfoByBarcode(param.getBarcode());
    }
    /*@PostMapping("/order/matSync/default/v1")
    @AppAuth(memo = "商品信息同步接口")
@@ -134,7 +317,7 @@
    }*/
    private void auth(String appkey, Object obj, HttpServletRequest request) {
        log.info("{}接口被访问;appkey:{};请求数据:{}", "open/sensorType/list/auth/v1", appkey, JSON.toJSONString(obj));
        log.info("OpenController类:【{}】接口被访问;appkey:【{}】;请求数据:【{}】", request.getRequestURI(), appkey, JSON.toJSONString(obj));
        request.setAttribute("cache", obj);
        if (!auth) {
            return;
@@ -147,50 +330,6 @@
        }
    }
    @PostMapping("/scrk")
    @AppAuth(memo = "GWMS调用生成入库工作档")
    public synchronized R gwmsGenerateInventory(@RequestHeader(required = false) String appkey,
                                      @RequestBody GwmsGenerateInventoryDto param,
                                      HttpServletRequest request) {
        auth(appkey, param, request);
        return R.ok(openService.gwmsGenerateInventory(param));
    }
    @PostMapping("/zxrk")
    @AppAuth(memo = "GWCS到达堆垛机入库站点请求ZWCS执行")
    public synchronized R crnExecute(@RequestHeader(required = false) String appkey,
                                                @RequestBody CrnExecuteParam param,
                                                HttpServletRequest request) {
        auth(appkey, param, request);
        return R.ok(openService.crnExecute(param));
    }
    @PostMapping("/ckrw")
    @AppAuth(memo = "ZWMS接收MES下发出库任务")
    public synchronized R zwmsOutLocWork(@RequestHeader(required = false) String appkey,
                                     @RequestBody ZwmsOutLocWorkDto param,
                                     HttpServletRequest request) {
        auth(appkey, param, request);
        return R.ok(openService.zwmsOutLocWork(param));
    }
    @PostMapping("/ckjgsb")
    @AppAuth(memo = "货物到达出库口以后,上报出库结果")
    public synchronized R outLocResultReport(@RequestHeader(required = false) String appkey,
                                         @RequestBody GhjtApiParam param,
                                         HttpServletRequest request) {
        auth(appkey, param, request);
        return R.ok(openService.outLocResultReport(param));
    }
    @PostMapping("/cpjck")
    @AppAuth(memo = "拆盘机出库接口")
    public synchronized R emptyOutLoc(@RequestHeader(required = false) String appkey,
                                             @RequestBody GhjtApiParam param,
                                             HttpServletRequest request) {
        auth(appkey, param, request);
        return R.ok(openService.emptyOutLoc(param));
    }
//    @PostMapping("/cpjck")
//    @AppAuth(memo = "物料信息获取")