chen.lin
17 小时以前 8f8b6a47ce277cad0b640c328ab3962419e1c024
rsf-server/src/main/java/com/vincent/rsf/server/api/controller/WcsController.java
@@ -4,6 +4,8 @@
import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.server.api.entity.dto.InTaskMsgDto;
import com.vincent.rsf.server.api.controller.erp.params.TaskInParam;
import com.vincent.rsf.server.api.entity.params.ExMsgParams;
import com.vincent.rsf.server.api.entity.params.WcsTaskParams;
import com.vincent.rsf.server.common.annotation.OperationLog;
import com.vincent.rsf.server.manager.enums.TaskType;
import com.vincent.rsf.server.api.service.WcsService;
@@ -15,6 +17,8 @@
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Map;
@RestController
@RequestMapping("/wcs")
@@ -90,7 +94,20 @@
    @OperationLog("RCS库位信息同步")
    @PostMapping("/sync/locs")
    public R syncLocsToWms() {
        return wcsService.syncLocsToWms();
         wcsService.syncLocsToWms();
         return R.ok();
    }
    /**
     * 下发任务至WCS,API中转
     * @param
     * @return
     */
    @ApiOperation("下发任务至WCS")
    @OperationLog("下发任务至WCS")
    @PostMapping("/pub/task/wcs")
    public R pubTaskToWcs(@RequestBody WcsTaskParams params) {
        return wcsService.pubWcsTask(params);
    }
    /**
@@ -102,8 +119,37 @@
    @ApiOperation("RCS上报异常执行信息")
    @OperationLog("RCS上报异常执行信息")
    @PostMapping("/receive/ex/msg")
    public R receiveExMsg() {
        return wcsService.receiveExMsg();
    public R receiveExMsg(@RequestBody ExMsgParams params) {
        return wcsService.receiveExMsg(params);
    }
    /**
     * @author Ryan
     * @date 2026/2/6
     * @description: 申请入库任务,分配库位(内部接口)
     * @version 1.0
     */
    @ApiOperation("申请入库任务,分配库位")
    @PostMapping("/allocate/location")
    public R allocateLocation(@RequestBody Map<String, Object> params) {
        if (Cools.isEmpty(params)) {
            return R.error("参数不能为空!!");
        }
        String barcode = (String) params.get("barcode");
        String staNo = (String) params.get("staNo");
        Integer type = params.get("type") != null ? Integer.valueOf(params.get("type").toString()) : null;
        if (Cools.isEmpty(barcode)) {
            return R.error("料箱码不能为空!!");
        }
        if (Cools.isEmpty(staNo)) {
            return R.error("入库站点不能为空!!");
        }
        if (type == null) {
            return R.error("入库类型不能为空!!");
        }
        return wcsService.allocateLocation(barcode, staNo, type);
    }