Commit 86b9a1b3 zshaohui

1.增加任务取消,屏蔽库位

2.出库传给客户端,增加inOutType字段
1 个父辈 d623991c
......@@ -11,6 +11,7 @@ import com.neotel.smfcore.common.exception.ValidateException;
import com.neotel.smfcore.common.utils.Constants;
import com.neotel.smfcore.common.utils.ReelLockPosUtil;
import com.neotel.smfcore.common.utils.SecurityUtils;
import com.neotel.smfcore.common.utils.StringUtils;
import com.neotel.smfcore.core.api.SmfApi;
import com.neotel.smfcore.core.api.bean.CodeValidateParam;
import com.neotel.smfcore.core.barcode.service.po.Barcode;
......@@ -35,6 +36,7 @@ import com.neotel.smfcore.core.storage.service.po.Storage;
import com.neotel.smfcore.security.service.manager.IGroupManager;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
......@@ -624,4 +626,44 @@ public class DeviceController {
data.put("plateH", pos.getBarcode().getHeight() + "");
return ResultBean.newOkResult(data);
}
@ApiOperation("取消任务,禁用库位")
@RequestMapping(value = "/service/store/cancelAndDisable")
@ResponseBody
@AnonymousAccess
public ResultBean cancelAndDisable(HttpServletRequest request) {
String posName = request.getParameter("posName");
if (StringUtils.isNotBlank(posName)) {
DataLog task = null;
List<DataLog> allTasks = taskService.getAllTasks();
for (DataLog dataLog : allTasks) {
if (posName.equals(dataLog.getPosName()) && dataLog.isCheckOutTask() && !dataLog.isFinished()) {
task = dataLog;
break;
}
}
if (task != null) {
boolean result = taskService.cancelTask(task);
if (result) {
StoragePos pos = storagePosManager.getByPosName(posName);
if (pos != null) {
pos.setEnabled(false);
storagePosManager.save(pos);
dataCache.updateDisablePos(pos);
log.info("任务[" + task.getId() + "] posName[" + task.getPosName() + "] Reel Id[" + task.getBarcode() + "]取消成功,禁用库位[" + task.getPosName() + "]");
DeviceMessageUtil.addEnabledPosMessage(pos, SecurityUtils.getCurrentUsername());
Storage storage = dataCache.getStorageById(pos.getStorageId());
if (storage != null) {
dataCache.reloadStorage(storage, "");
}
}
return ResultBean.newOkResult("");
}
} else {
return ResultBean.newErrorResult(1, "smfcore.task.notExist", "Task does not exist");
}
}
return ResultBean.newErrorResult(1, "smfcore.cancelOutTask.fail","客户端取消入库任务[{0}]失败:{1}", new String[]{posName,""});
}
}
......@@ -249,7 +249,7 @@ public class TaskService {
return tasks;
}
private boolean cancelTask(DataLog task) {
public boolean cancelTask(DataLog task) {
if (task != null) {
//从正在执行和等待列表中移除
removeQueueTask(task);
......@@ -509,6 +509,8 @@ public class TaskService {
}
statusBean.addData("hSerial",task.getSourceName());
statusBean.addPosInfo(task.getBarcode(), posName, plateW, plateH, isSingleOut);
statusBean.addData("inOutType",task.getInOutType());
log.info(task.getId()+"inOutType:"+task.getInOutType());
log.info("出库" + storage.getName() + "[" + posName + "]物料[" + task.getBarcode() + "]" + isSingleOut + "发送到客户端" + cid);
}
}
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!