package com.zy.api.controller; import com.core.annotations.ManagerAuth; import com.core.common.R; import com.zy.api.controller.params.ReceviceTaskParams; import com.zy.api.controller.params.WorkTaskParams; import com.zy.api.service.WcsApiService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.Objects; @Api("WCS交互接口") @RequestMapping("/wcs") @RestController public class WcsApiController { @Autowired private WcsApiService wcsApiService; /** * 通知WCS锁定周边库位,及禁止任务执行 * @author Ryan * @date 2026/1/10 11:13 * @return com.core.common.R */ @ManagerAuth @ApiOperation("锁定机台周边库位执行任务") @PostMapping("/lock/locs") public R reportLockLocs(@RequestBody ReceviceTaskParams params) { if (Objects.isNull(params)) { return R.error("参数不能为空!!"); } if (Objects.isNull(params.getDeviceNo())) { return R.error("机台号不能为空!!"); } return wcsApiService.lockLocs(params); } /** * 回库搬运指令 * @author Ryan * @date 2026/1/10 13:08 * @param params * @return com.core.common.R */ @ManagerAuth @ApiOperation("堆垛机回库搬运指令") @PostMapping("/back/loc") public R backLoc(@RequestBody WorkTaskParams params) { if (Objects.isNull(params)) { return R.error("参数不能为空!!"); } return wcsApiService.backLocs(params); } /** * 下发任务至WCS * @author Ryan * @date 2026/1/10 13:57 * @param params * @return com.core.common.R */ @ManagerAuth @ApiOperation("下发任务至WCS") @PostMapping("/pub/wrks") public R pubWrkToWcs(@RequestBody WorkTaskParams params) { if (Objects.isNull(params)) { return R.error("参数不能为空!!"); } return wcsApiService.pubWrkToWcs(params); } }