Commit a6cd8774 sunke

SMD-VL 出入库都需要库位确认

SMD-VL 增加清理确认库位功能,用于继续其他库位操作
1 个父辈 b0b6a2ec
...@@ -71,7 +71,7 @@ public class VerticalBoxController extends BaseController{ ...@@ -71,7 +71,7 @@ public class VerticalBoxController extends BaseController{
} }
/** /**
* 查找下一个空位,并且点亮灯 * 查找所有非空库位
*/ */
@RequestMapping("/service/store/vertical/storagePosList") @RequestMapping("/service/store/vertical/storagePosList")
@ResponseBody @ResponseBody
...@@ -82,6 +82,65 @@ public class VerticalBoxController extends BaseController{ ...@@ -82,6 +82,65 @@ public class VerticalBoxController extends BaseController{
return notEmptyPosList; return notEmptyPosList;
} }
/**
*
* @param request
* @return
*/
@RequestMapping("/service/store/vertical/findPosTask")
@ResponseBody
public VerticalBoxOperateBean putInToPos(HttpServletRequest request){
String cid = request.getParameter("cid");
String posName = request.getParameter("posName");
StoragePos hostPos = storagePosManager.getByPosName(posName);
if(hostPos != null && hostPos.isExpandPos()){
hostPos = storagePosManager.get(hostPos.getHostPosId());
}
if(hostPos == null){
return null;
}
DataLog currentTask = verticalBoxHandler.getCurrentTask(cid);
int taskType = StorageConstants.OP.CHECKOUT;
if(currentTask != null){
taskType = currentTask.getType();
//先查看是否有相同类型且库位相同的任务
Collection<DataLog> queueTasks = taskService.getQueueTasks();
for (DataLog queueTask : queueTasks) {
if(queueTask.getType() == currentTask.getType()){
if(queueTask.getPosName().equals(posName)){
currentTask = queueTask;
verticalBoxHandler.updateCurrentTask(queueTask.getCid(), queueTask);
break;
}
}
}
if(!currentTask.getPosName().equals(posName)){
//库位与当前任务不一致
currentTask = null;
}
}
if(currentTask == null){
Storage storage = dataCache.getStorage(cid);
currentTask = new DataLog();
currentTask.setCid(storage.getCid());
currentTask.setStorageId(storage.getId());
currentTask.setStorageName(storage.getName());
currentTask.setPosId(hostPos.getId());
currentTask.setPosName(hostPos.getPosName());
currentTask.setType(taskType);
currentTask.setStatus(StorageConstants.OP_STATUS.WAIT.name());
verticalBoxHandler.updateCurrentTask(cid, currentTask);
}
return getOperateBean(currentTask);
}
@RequestMapping("/service/store/vertical/closeOperateWindow") @RequestMapping("/service/store/vertical/closeOperateWindow")
@ResponseBody @ResponseBody
public void closeOperateWindow(HttpServletRequest request){ public void closeOperateWindow(HttpServletRequest request){
...@@ -97,6 +156,15 @@ public class VerticalBoxController extends BaseController{ ...@@ -97,6 +156,15 @@ public class VerticalBoxController extends BaseController{
} }
verticalBoxHandler.updateCurrentTask(cid, null); verticalBoxHandler.updateCurrentTask(cid, null);
StorageDataController.addOp(cid,"closeDoor", "doit"); StorageDataController.addOp(cid,"closeDoor", "doit");
//如果有正在执行的任务,继续弹出
Collection<DataLog> queueTasks = taskService.getQueueTasks(cid);
for (DataLog queueTask : queueTasks) {
if(queueTask.isExecuting()){
verticalBoxHandler.updateCurrentTask(queueTask.getCid(), queueTask);
break;
}
}
} }
} }
@RequestMapping("/service/store/vertical/putIn") @RequestMapping("/service/store/vertical/putIn")
...@@ -270,8 +338,6 @@ public class VerticalBoxController extends BaseController{ ...@@ -270,8 +338,6 @@ public class VerticalBoxController extends BaseController{
} }
}else{ }else{
String msg = getText(codeBean.getErrorCode(),codeBean.getParams(),request.getLocale(),codeBean.getError()); String msg = getText(codeBean.getErrorCode(),codeBean.getParams(),request.getLocale(),codeBean.getError());
return msg; return msg;
...@@ -306,7 +372,10 @@ public class VerticalBoxController extends BaseController{ ...@@ -306,7 +372,10 @@ public class VerticalBoxController extends BaseController{
currentTask = verticalBoxHandler.getCurrentTask(cid); currentTask = verticalBoxHandler.getCurrentTask(cid);
} }
} }
return getOperateBean(currentTask);
}
private VerticalBoxOperateBean getOperateBean(DataLog currentTask){
if(currentTask != null){ if(currentTask != null){
VerticalBoxOperateBean operateBean = new VerticalBoxOperateBean(); VerticalBoxOperateBean operateBean = new VerticalBoxOperateBean();
operateBean.setCurrentTask(currentTask); operateBean.setCurrentTask(currentTask);
......
...@@ -154,8 +154,12 @@ ...@@ -154,8 +154,12 @@
<span class="help-block red" id="msg"></span> <span class="help-block red" id="msg"></span>
</div> </div>
<div class="col-md-12" > <div class="col-md-12" >
<input type="text" class="form-control" id="posConfirm" placeholder="库位确认"/> <%--<input type="text" class="form-control" id="posConfirm" placeholder="库位确认"/>--%>
<span class="help-block red"></span> <%--<span class="help-block red"></span>--%>
<div class="editable-input" style="position: relative;width:100%;margin-bottom:10px;">
<input type="text" class="form-control" style="padding-right: 24px;" id="posConfirm" placeholder="库位确认">
<span class="editable-clear-x" onclick="clearPosName();"></span>
</div>
</div> </div>
<div class="col-md-12"> <div class="col-md-12">
...@@ -499,39 +503,49 @@ ...@@ -499,39 +503,49 @@
}); });
}) })
clearPosName = function(){
$("#posConfirm").removeAttr("disabled");
$("#posConfirm").val("");
$("#putInExtendPosList").html("");
$("#posConfirm").attr("name", "newPosName");
}
function showOperateWindow(task, extendPosList){ function showOperateWindow(task, extendPosList){
if(task.putInTask){ if($("#posConfirm").attr("name") != "newPosName"){
//入库任务 if(task.putInTask){
$("#operateHead").attr("class","modal-header bg-green-haze"); //入库任务
$("#operateTitle").text("入库"); $("#operateHead").attr("class","modal-header bg-green-haze");
}else{ $("#operateTitle").text("入库");
$("#operateHead").attr("class","modal-header bg-yellow"); }else{
$("#operateTitle").text("出库"); $("#operateHead").attr("class","modal-header bg-yellow");
$("#posConfirm").val(task.posName); $("#operateTitle").text("出库");
$("#posConfirm").attr("disabled", true); //$("#posConfirm").val(task.posName);
$("#scan-code").removeAttr("disabled"); //$("#posConfirm").attr("disabled", true);
} $("#scan-code").removeAttr("disabled");
}
$("#putInExtendPosList").html(""); $("#putInExtendPosList").html("");
for(i in extendPosList){ for(i in extendPosList){
var barcodeObj = extendPosList[i].barcode; var barcodeObj = extendPosList[i].barcode;
if(!extendPosList[i].enabled || barcodeObj == null){ if(!extendPosList[i].enabled || barcodeObj == null){
continue; continue;
}
var index = parseInt(i) + 1;
var barcode = barcodeObj.barcode;
var partNumber = barcodeObj.partNumber;
var amount = barcodeObj.amount;
var tdStr =
"<td>"+index+"</td>" +
"<td>"+barcode+"</td>"+
"<td>"+partNumber+"</td>" +
"<td>"+amount+"</td>";
var trStr = "<tr>" + tdStr+ "</tr>";
$("#putInExtendPosList").append(trStr);
} }
var index = parseInt(i) + 1;
var barcode = barcodeObj.barcode;
var partNumber = barcodeObj.partNumber;
var amount = barcodeObj.amount;
var tdStr =
"<td>"+index+"</td>" +
"<td>"+barcode+"</td>"+
"<td>"+partNumber+"</td>" +
"<td>"+amount+"</td>";
var trStr = "<tr>" + tdStr+ "</tr>";
$("#putInExtendPosList").append(trStr);
} }
$("#operateWindow").modal("show"); $("#operateWindow").modal("show");
var confirmDisabled = $("#posConfirm").is(":disabled"); var confirmDisabled = $("#posConfirm").is(":disabled");
if(!confirmDisabled){ if(!confirmDisabled){
...@@ -543,12 +557,17 @@ ...@@ -543,12 +557,17 @@
$("#posConfirm").change(function () { $("#posConfirm").change(function () {
var posValue = $(this).val(); var posValue = $(this).val();
var currentOperatePos = $("#currentOperatePos").text(); $.post("${ctx}/service/store/vertical/findPosTask", {cid: '${show}', posName: posValue}, function (data) {
if(posValue == currentOperatePos){ if(!data){
$(this).attr("disabled", true); showOpResult("msg","未找到对应的库位");
$("#scan-code").removeAttr("disabled"); }else{
} $("#scan-code").val("");
//showOperateWindow(); $("#posConfirm").attr("disabled", true);
$("#posConfirm").removeAttr("name");
$("#msg").html("");
$("#scan-code").removeAttr("disabled");
}
});
}); });
function showOpResult(id, msg){ function showOpResult(id, msg){
......
...@@ -26,6 +26,8 @@ ...@@ -26,6 +26,8 @@
<div class="timeline-content"> <div class="timeline-content">
<ul> <ul>
<li>版本 V20200927</li> <li>版本 V20200927</li>
<li>SMD-VL 出入库都需要库位确认</li>
<li>SMD-VL 增加清理确认库位功能,用于继续其他库位操作</li>
<li>Fixed: 查找出库页面不刷新时出库,会创建无物料任务的问题</li> <li>Fixed: 查找出库页面不刷新时出库,会创建无物料任务的问题</li>
</ul> </ul>
</div> </div>
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!