Commit 574acc1d sunke

增加查询需求单是否存在接口

退料料串上物料摆放不整齐,导到同一料串扫到下面一盘条码时,两盘物料都不可入库
屏蔽清理库位功能,清除数据必须执行出库动作
1 个父辈 b81df619
...@@ -248,6 +248,30 @@ public class QisdaApiController extends BaseController { ...@@ -248,6 +248,30 @@ public class QisdaApiController extends BaseController {
} }
/** /**
* 查询需求单是否存在
*/
@RequestMapping(value = "/existHSerial")
@ResponseBody
public ResultBean existHSerial(HttpServletRequest request){
String hSerialistStr = receiveParamInfo(request,"hSerialList");
log.info("收到查询需求单是否存在 hSerialList="+hSerialistStr);
String[] hSerialList = hSerialistStr.split(",");
List<Map<String,String>> resultList = new ArrayList<>();
for (String hSerial : hSerialList) {
OutInfo outInfo = outInfoDao.findByHSerial(hSerial);
boolean exist = false;
if(outInfo != null){
exist = true;
}
Map<String,String> itemMap = new HashMap<>();
itemMap.put("hSerial", hSerial);
itemMap.put("exist", exist + "");
resultList.add(itemMap);
}
return ResultBean.newOkResult(resultList);
}
/**
* 检测料盘是否绑定工单 * 检测料盘是否绑定工单
*/ */
@RequestMapping(value = "/checkLockReel",method = RequestMethod.POST) @RequestMapping(value = "/checkLockReel",method = RequestMethod.POST)
......
...@@ -17,6 +17,7 @@ import com.myproject.bean.utils.StatusBean; ...@@ -17,6 +17,7 @@ import com.myproject.bean.utils.StatusBean;
import com.myproject.dao.mongo.IAlarmInfoDao; import com.myproject.dao.mongo.IAlarmInfoDao;
import com.myproject.dao.mongo.ILiteOrderDao; import com.myproject.dao.mongo.ILiteOrderDao;
import com.myproject.dao.mongo.ILiteOrderItemDao; import com.myproject.dao.mongo.ILiteOrderItemDao;
import com.myproject.dao.mongo.qisda.ICacheInfoDao;
import com.myproject.exception.ValidateException; import com.myproject.exception.ValidateException;
import com.myproject.manager.IBarcodeManager; import com.myproject.manager.IBarcodeManager;
import com.myproject.manager.IComponentManager; import com.myproject.manager.IComponentManager;
...@@ -76,9 +77,6 @@ public class StorageDataController extends BaseController { ...@@ -76,9 +77,6 @@ public class StorageDataController extends BaseController {
private UserManager userManager; private UserManager userManager;
@Autowired @Autowired
private IComponentManager componentManager;
@Autowired
private ILiteOrderDao liteOrderDao; private ILiteOrderDao liteOrderDao;
@Autowired @Autowired
...@@ -90,6 +88,11 @@ public class StorageDataController extends BaseController { ...@@ -90,6 +88,11 @@ public class StorageDataController extends BaseController {
@Autowired @Autowired
private IComponentManager componentmanager; private IComponentManager componentmanager;
@Autowired
private ICacheInfoDao cacheInfoDao;
// @RequestMapping(value = "/testEmail") // @RequestMapping(value = "/testEmail")
// @ResponseBody // @ResponseBody
// public List<StoragePos> testEmail(HttpServletRequest request){ // public List<StoragePos> testEmail(HttpServletRequest request){
...@@ -611,11 +614,27 @@ public class StorageDataController extends BaseController { ...@@ -611,11 +614,27 @@ public class StorageDataController extends BaseController {
if(dataLog.getBarcode().equals(barcode.getBarcode())){ if(dataLog.getBarcode().equals(barcode.getBarcode())){
if(dataLog.isPutInTask()){ if(dataLog.isPutInTask()){
//已有入库任务 //已有入库任务
errorMsg = "物料["+ dataLog.getBarcode() + "]已有入库任务,需继续执行入库动作"; String oldRfid = dataLog.getAppendInfo().getRfid();
if(oldRfid.equals(rfid)){
//同一个料串,说明扫码扫到下面一盘的条码了,对已有的任务进行标记,等入库完成后再出库,同时把当前物料NG
log.info("条码["+barcode.getBarcode()+"]已有入库["+dataLog.getPosName()+"]任务,标记任务,待入库完成后出库");
cacheInfoDao.updateCacheItem(barcode.getBarcode(),"Need out after put in");
errorMsg = "["+ barcode.getBarcode() + "]有入库任务未完成,无法入库";
lineMsg = errorMsg;
resultMap.put("result","99");
resultMap.put("msg",errorMsg);
return resultMap;
}else{
//不是同一个料串,返回原来的入库库位
errorMsg = "物料["+ dataLog.getBarcode() + "]已有入库任务,继续执行入库动作";
lineMsg = errorMsg;
resultMap.put("pos",dataLog.getPosName()); resultMap.put("pos",dataLog.getPosName());
resultMap.put("barcode",barcode.getBarcode()); resultMap.put("barcode",barcode.getBarcode());
resultMap.put("cid",dataLog.getCid()); resultMap.put("cid",dataLog.getCid());
return resultMap; return resultMap;
}
}else{ }else{
//已有出库任务 //已有出库任务
errorMsg = "物料["+ dataLog.getBarcode() + "]已有出库任务,需继续执行出库动作"; errorMsg = "物料["+ dataLog.getBarcode() + "]已有出库任务,需继续执行出库动作";
......
...@@ -9,13 +9,11 @@ import com.myproject.bean.json.LiteOrderItem; ...@@ -9,13 +9,11 @@ import com.myproject.bean.json.LiteOrderItem;
import com.myproject.bean.qisda.AppendInfo; import com.myproject.bean.qisda.AppendInfo;
import com.myproject.bean.qisda.InquiryShelfBean; import com.myproject.bean.qisda.InquiryShelfBean;
import com.myproject.bean.update.*; import com.myproject.bean.update.*;
import com.myproject.bean.update.qisda.DNInfo; import com.myproject.bean.update.qisda.*;
import com.myproject.bean.update.qisda.DNItem;
import com.myproject.bean.update.qisda.OutInfo;
import com.myproject.bean.update.qisda.OutItem;
import com.myproject.bean.utils.BoxStatusBean; import com.myproject.bean.utils.BoxStatusBean;
import com.myproject.bean.utils.StatusBean; import com.myproject.bean.utils.StatusBean;
import com.myproject.dao.mongo.*; import com.myproject.dao.mongo.*;
import com.myproject.dao.mongo.qisda.ICacheInfoDao;
import com.myproject.dao.mongo.qisda.IDNItemDao; import com.myproject.dao.mongo.qisda.IDNItemDao;
import com.myproject.dao.mongo.qisda.IOutItemDao; import com.myproject.dao.mongo.qisda.IOutItemDao;
import com.myproject.exception.ValidateException; import com.myproject.exception.ValidateException;
...@@ -90,6 +88,9 @@ public class TaskService implements ITaskService { ...@@ -90,6 +88,9 @@ public class TaskService implements ITaskService {
@Autowired @Autowired
private QisdaBindService bindService; private QisdaBindService bindService;
@Autowired
private ICacheInfoDao cacheInfoDao;
/** /**
* 任务队列,Key 为dataLog的ID,value 为本区域待执行的任务 * 任务队列,Key 为dataLog的ID,value 为本区域待执行的任务
*/ */
...@@ -1541,6 +1542,17 @@ public class TaskService implements ITaskService { ...@@ -1541,6 +1542,17 @@ public class TaskService implements ITaskService {
log.info("从已完成的任务列表中删除之前取消的任务:"+cancelTask.getPosName() + " ReelId:" + cancelTask.getBarcode()); log.info("从已完成的任务列表中删除之前取消的任务:"+cancelTask.getPosName() + " ReelId:" + cancelTask.getBarcode());
} }
putInFinished(task); putInFinished(task);
//如果是已经标记为需要出库的物料(同一个料串上扫到了下面一盘的条码),进行出库
CacheInfo cacheInfo = cacheInfoDao.getCacheInfo(task.getBarcode());
if(cacheInfo != null){
cacheInfoDao.removeOneById(cacheInfo.getId());
finishedTaskMap.remove(task.getBarcode());
log.info("物料["+task.getBarcode()+"]可能扫到了料串上的下面一盘条码,将其出库");
StoragePos pos = storagePosManager.get(task.getPosId());
checkout(pos,"",true);
}
} else { } else {
//从已完成列表中找,如果还找不到就忽略 //从已完成列表中找,如果还找不到就忽略
task = findFinishedTask(statusBeanToSave.getCid(), boxStatus.getPosId()); task = findFinishedTask(statusBeanToSave.getCid(), boxStatus.getPosId());
...@@ -2042,8 +2054,15 @@ public class TaskService implements ITaskService { ...@@ -2042,8 +2054,15 @@ public class TaskService implements ITaskService {
finishedTaskMap.put(task.getBarcode(),task); finishedTaskMap.put(task.getBarcode(),task);
log.warn("任务:"+task.getBarcode() +" 仓位:"+task.getPosName()+" 的 Barcode 为null, 之前可能处理过直接返回"); log.warn("任务:"+task.getBarcode() +" 仓位:"+task.getPosName()+" 的 Barcode 为null, 之前可能处理过直接返回");
return; return;
}else{
//判断与库位中的条码是否一致
if(!barcode.getBarcode().equals(task.getBarcode())){
log.warn("任务:"+task.getBarcode() +" 与仓位:"+task.getPosName()+" 中的条码["+task.getBarcode()+"]不一致,直接返回");
return;
}
} }
barcode = barcodeManager.get(barcode.getId()); barcode = barcodeManager.get(barcode.getId());
if(barcode != null){ if(barcode != null){
//二维码状态 //二维码状态
......
...@@ -317,10 +317,10 @@ ...@@ -317,10 +317,10 @@
<c:if test="${not empty slot.barcode.plateSize}"> <c:if test="${not empty slot.barcode.plateSize}">
${slot.barcode.plateSize} x ${slot.barcode.height} ${slot.barcode.plateSize} x ${slot.barcode.height}
</c:if> </c:if>
[ <%--[--%>
<a onclick="clearPos('${slot.id}');"> <%--<a onclick="clearPos('${slot.id}');">--%>
<fmt:message key="storage.clearPos"/> <%--<fmt:message key="storage.clearPos"/>--%>
</a>] <%--</a>]--%>
</td> </td>
<td class="posInfo${slot.id}"> <td class="posInfo${slot.id}">
<c:out value="${slot.barcode.partNumber}"/> <c:out value="${slot.barcode.partNumber}"/>
......
...@@ -12,6 +12,43 @@ ...@@ -12,6 +12,43 @@
<div class="row"> <div class="row">
<div class="col-md-12"> <div class="col-md-12">
<ul class="timeline"> <ul class="timeline">
<li class="timeline-purple">
<div class="timeline-time">
<span class="date">2022</span>
<span class="time">06-21</span>
</div>
<div class="timeline-icon">
<i class="fa fa-clock-o"></i>
</div>
<div class="timeline-body">
<h2>版本: V2022062115</h2>
<div class="timeline-content">
<ul>
<li>增加查询需求单是否存在接口,接口地址: http://ip/myproject/rest/api/qisda/existHSerial?hSerialList=2110375,2110376
参数说明: hSerialList 为需求单号列表, 多个需求单号用,分割</li>
</ul>
</div>
</div>
</li>
<li class="timeline-green">
<div class="timeline-time">
<span class="date">2022</span>
<span class="time">01-14</span>
</div>
<div class="timeline-icon">
<i class="fa fa-clock-o"></i>
</div>
<div class="timeline-body">
<h2>版本: V2022011410</h2>
<div class="timeline-content">
<ul>
<li>退料料串上物料摆放不整齐,导到同一料串扫到下面一盘条码时,两盘物料都不可入库</li>
<li>屏蔽清理库位功能,清除数据必须执行出库动作</li>
</ul>
</div>
</div>
</li>
<li class="timeline-blue"> <li class="timeline-blue">
<div class="timeline-time"> <div class="timeline-time">
<span class="date">2021</span> <span class="date">2021</span>
...@@ -31,7 +68,7 @@ ...@@ -31,7 +68,7 @@
</div> </div>
</div> </div>
</li> </li>
<li class="timeline-blue"> <li class="timeline-yellow">
<div class="timeline-time"> <div class="timeline-time">
<span class="date">2021</span> <span class="date">2021</span>
<span class="time">11-3</span> <span class="time">11-3</span>
...@@ -48,7 +85,7 @@ ...@@ -48,7 +85,7 @@
</div> </div>
</div> </div>
</li> </li>
<li class="timeline-blue"> <li class="timeline-grey">
<div class="timeline-time"> <div class="timeline-time">
<span class="date">2021</span> <span class="date">2021</span>
<span class="time">10-13</span> <span class="time">10-13</span>
...@@ -65,7 +102,7 @@ ...@@ -65,7 +102,7 @@
</div> </div>
</div> </div>
</li> </li>
<li class="timeline-blue"> <li class="timeline-purple">
<div class="timeline-time"> <div class="timeline-time">
<span class="date">2021</span> <span class="date">2021</span>
<span class="time">09-09</span> <span class="time">09-09</span>
...@@ -82,7 +119,7 @@ ...@@ -82,7 +119,7 @@
</div> </div>
</div> </div>
</li> </li>
<li class="timeline-blue"> <li class="timeline-green">
<div class="timeline-time"> <div class="timeline-time">
<span class="date">2021</span> <span class="date">2021</span>
<span class="time">09-03</span> <span class="time">09-03</span>
......
...@@ -239,7 +239,7 @@ ...@@ -239,7 +239,7 @@
<div class="page-footer-inner"> <div class="page-footer-inner">
2016&copy; <a href="${ctx}/updateHistory.html">SMD BOX</a> 2016&copy; <a href="${ctx}/updateHistory.html">SMD BOX</a>
</div> </div>
<span class="right" style="color: #a3a3a3;">Version: 2021.11.3</span> <span class="right" style="color: #a3a3a3;">Version: 2022.06.2115</span>
<div class="scroll-to-top"> <div class="scroll-to-top">
<i class="icon-arrow-up"></i> <i class="icon-arrow-up"></i>
</div> </div>
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!