Commit 059e83fc sunke

海拉料架增加shelfStatus接口

1 个父辈 3c1afeb1
...@@ -189,7 +189,7 @@ public class SensorShelfHandler extends BaseDeviceHandler { ...@@ -189,7 +189,7 @@ public class SensorShelfHandler extends BaseDeviceHandler {
handleMsg(statusBean); handleMsg(statusBean);
statusBean = saveAlarmAndHumidity(statusBean); statusBean = saveAlarmAndHumidity(statusBean);
//亮灯 //亮灯
Collection<DataLog> queueTasks = taskService.getAllTasksByCid(statusBean.getCid()); Collection<DataLog> queueTasks = taskService.getQueueTasks(statusBean.getCid());
for (DataLog queueTask : queueTasks) { for (DataLog queueTask : queueTasks) {
if(queueTask.isWait()){ if(queueTask.isWait()){
queueTask.setStatus(OP_STATUS.EXECUTING.name()); queueTask.setStatus(OP_STATUS.EXECUTING.name());
...@@ -206,16 +206,15 @@ public class SensorShelfHandler extends BaseDeviceHandler { ...@@ -206,16 +206,15 @@ public class SensorShelfHandler extends BaseDeviceHandler {
statusBean.addData("open",queueTask.getPosName()+"="+color.name()); statusBean.addData("open",queueTask.getPosName()+"="+color.name());
log.info("库位["+queueTask.getPosName()+"]+亮灯:" + color.name()); log.info("库位["+queueTask.getPosName()+"]+亮灯:" + color.name());
} }
else if(queueTask.isCancel()){ // else if(queueTask.isCancel()){
if(queueTask.isCheckOutTask()){ // if(queueTask.isCheckOutTask()){
//
statusBean.addData("open",queueTask.getPosName()+"="+"orange" ); // statusBean.addData("open",queueTask.getPosName()+"="+"orange" );
log.info("库位["+queueTask.getPosName()+"]+取消:open=orange" ); // log.info("库位["+queueTask.getPosName()+"]+取消:open=orange" );
//从任务列表中删除 // //从任务列表中删除
taskService.removeFinishedTask(queueTask); // taskService.removeFinishedTask(queueTask);
} // }
// }
}
} }
return statusBean; return statusBean;
} }
...@@ -293,7 +292,7 @@ public class SensorShelfHandler extends BaseDeviceHandler { ...@@ -293,7 +292,7 @@ public class SensorShelfHandler extends BaseDeviceHandler {
if(hasReelPosList != null){ if(hasReelPosList != null){
//入库的库位列表 //入库的库位列表
if(hasReelPosList.length > 1){ if(hasReelPosList.length > 1){
String msg = "不可同时放入多盘物料:"+ hasReelPosList; String msg = "不可同时放入多盘物料:"+ String.join(",",hasReelPosList);
log.error(msg); log.error(msg);
WebSocketServer.sendGroupMsg(groupId,new SocketMsg(msg, MsgType.ERROR)); WebSocketServer.sendGroupMsg(groupId,new SocketMsg(msg, MsgType.ERROR));
for (String posStr : hasReelPosList) { for (String posStr : hasReelPosList) {
...@@ -389,6 +388,41 @@ public class SensorShelfHandler extends BaseDeviceHandler { ...@@ -389,6 +388,41 @@ public class SensorShelfHandler extends BaseDeviceHandler {
/** /**
* 获取料架的库位占用及出库任务
*/
@RequestMapping("/service/store/sensorShelf/shelfStatus")
@ResponseBody
@AnonymousAccess
public ResultBean shelfStatus(HttpServletRequest request){
String cid = request.getParameter("cid");
Storage storage = dataCache.getStorage(cid);
List<StoragePos> allPos = storagePosManager.findNotEmptyByStorageId(storage.getId());
List<String> posList = new ArrayList<>();
for (StoragePos pos : allPos) {
posList.add(pos.getPosName());
}
List<String> outTaskPosList = new ArrayList<>();
Collection<DataLog> queueTasks = taskService.getQueueTasks(cid);
for (DataLog task : queueTasks) {
if(task.isCheckOutTask()){
String rgb = task.getLightColor();
ORDER_COLOR color = ORDER_COLOR.fromRgb(rgb);
if(color == null){
color = ORDER_COLOR.BLUE;
}
String outTaskPos = task.getPosName()+"="+color.name();
outTaskPosList.add(outTaskPos);
}
}
Map<String,List<String>> dataMap = new HashMap<>();
dataMap.put("hasReelPosList",posList);
dataMap.put("outTaskList",outTaskPosList);
return ResultBean.newOkResult(dataMap);
}
/**
* 获取料架的库位占用情况 * 获取料架的库位占用情况
*/ */
@RequestMapping("/service/store/sensorShelf/hasReelPosList") @RequestMapping("/service/store/sensorShelf/hasReelPosList")
......
...@@ -191,10 +191,8 @@ public class TaskService { ...@@ -191,10 +191,8 @@ public class TaskService {
* 获取所有任务 * 获取所有任务
*/ */
public List<DataLog> getAllTasksByCid(String cid) { public List<DataLog> getAllTasksByCid(String cid) {
List<DataLog> allTasks = getFinishedTasks(); List<DataLog> allTasks = getAllTasks();
Collection<DataLog> queueTasks = getQueueTasks(); for (DataLog task : allTasks) {
for (DataLog task :
queueTasks) {
if(task.getCid().equals(cid)){ if(task.getCid().equals(cid)){
allTasks.add(task); allTasks.add(task);
} }
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!