package com.huaheng.api.wcs.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.huaheng.common.constant.QuantityConstant; import com.huaheng.framework.aspectj.lang.annotation.ApiLogger; import com.huaheng.framework.web.controller.BaseController; import com.huaheng.framework.web.domain.AjaxResult; import com.huaheng.framework.web.service.ConfigService; import com.huaheng.pc.config.container.service.ContainerService; import com.huaheng.pc.config.location.domain.Location; import com.huaheng.pc.config.location.service.LocationService; import com.huaheng.pc.inventory.inventoryDetail.service.InventoryDetailService; import com.huaheng.pc.task.taskDetail.service.TaskDetailService; import com.huaheng.pc.task.taskHeader.domain.TaskHeader; import com.huaheng.pc.task.taskHeader.service.TaskHeaderService; import io.swagger.annotations.ApiOperation; import org.apache.commons.lang.StringUtils; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.util.Map; @RestController @RequestMapping("/API/WMS/v2") public class ArrivedNoticeController extends BaseController { @Resource private TaskHeaderService taskHeaderService; @Resource private TaskDetailService taskDetailService; @Resource private InventoryDetailService inventoryDetailService; @Resource private LocationService locationService; @Resource private ConfigService configService; @Resource private ContainerService containerService; @PostMapping("/arrivedNotice") @ApiOperation("到达拣选台") @ApiLogger(apiName = "wcs到达拣选台", from = "ROBOT") @Transactional(rollbackFor = Exception.class) @ResponseBody public AjaxResult arrivedNotice(@RequestBody Map<String, String> map) { //String warehouseCode = "CS0001"; String taskNo = map.get("taskNo"); //String port = map.get("port"); //String msg = map.get("msg"); //String state = map.get("state"); LambdaQueryWrapper<TaskHeader> taskHeaderLambdaQueryWrapper = Wrappers.lambdaQuery(); taskHeaderLambdaQueryWrapper.eq(TaskHeader::getId, taskNo); TaskHeader taskHeader = taskHeaderService.getOne(taskHeaderLambdaQueryWrapper); if (taskHeader != null) { int status = taskHeader.getStatus(); if (status == QuantityConstant.TASK_STATUS_COMPLETED) { return AjaxResult.success("更新到达站台成功, 任务已经完成,不要重复更新"); } if (status == QuantityConstant.TASK_STATUS_ARRIVED_STATION) { return AjaxResult.success("状态已经是到达站台了,不要重复更新"); } taskHeader.setStatus(QuantityConstant.TASK_STATUS_ARRIVED_STATION); } else { return AjaxResult.error("没有找到任务taskNo:" + taskNo); } boolean result = taskHeaderService.updateById(taskHeader); if (!result) { return AjaxResult.error("更新到达站台失败"); } return AjaxResult.success("更新到达站台成功"); } }