Commit 0588cbed 孙克

增加根据工单序号获取库存中的实时绑定信息

1 个父辈 06d8b844
......@@ -166,7 +166,7 @@ public class QisdaApiController extends BaseController {
}
}
/**
* 获取工单的绑定信息
* 获取工单的绑定情况
*/
@RequestMapping(value = "/soSeqLockInfo")
@ResponseBody
......@@ -200,6 +200,61 @@ public class QisdaApiController extends BaseController {
return ResultBean.newOkResult(lockInfos);
}
/**
* 获取工单的实时绑定情况
* 要求:
* 1、传参:工单序号序号
* 2、返回参数:
* {"code":0,"msg":"ok","data":[{"soseq":"21266250","so":"1001011793","lockItems":[{"soseq":"21266
* 250",
* "slotlocation":112,"partNum":"EM.3DBH0.00M","qty":3900,realLockQty":3900},{"soseq":"2126625
* 0",
* "slotlocation":72,"partNum":"EM.7HBH0.006","qty":6650,"realLockQty":9784}]}]}
*/
@RequestMapping(value = "/soSeqCurrentLockInfo")
@ResponseBody
public ResultBean soSeqCurrentLockInfo(HttpServletRequest request){
String soseqStr = receiveParamInfo(request,"soseq");
log.info("收到工单实时绑定查询请求soseq="+soseqStr);
if(Strings.isNullOrEmpty(soseqStr)){
return ResultBean.newErrorResult(-1,"参数错误:必须有参数soseq");
}
String[] soseqList = soseqStr.split(",");
List<SoseqLockInfo> lockInfos = new ArrayList<>();
for (String soseq : soseqList) {
SoseqLockInfo soseqLockInfo = new SoseqLockInfo();
soseqLockInfo.setSoseq(soseq);
OutInfo cutActionInfoFromCache = soseqCache.getCutActionInfoFromCache(soseq);
if(cutActionInfoFromCache != null){
soseqLockInfo.setSo(cutActionInfoFromCache.getSo());
}
List<StoragePos> bindPosList = storagePosDao.listSoSeqBindPos(soseq);
Map<String,LockItemInfo> lockItemMap = new HashMap<>();
for (StoragePos storagePos : bindPosList) {
Barcode reel = storagePos.getBarcode();
AppendInfo appendInfo = reel.getAppendInfo();
String bindSlot = appendInfo.getBindSlot();
if(!Strings.isNullOrEmpty(bindSlot)){
LockItemInfo lockItemInfo = lockItemMap.get(bindSlot);
if(lockItemInfo == null){
lockItemInfo = new LockItemInfo();
lockItemInfo.setSoseq(appendInfo.getSoseq());
lockItemInfo.setSlotlocation(Integer.valueOf(bindSlot));
lockItemInfo.setPartNum(reel.getPartNumber());
}
int reelLockQty = lockItemInfo.getRealLockQty() + reel.getAmount();
lockItemInfo.setQty(reelLockQty);
lockItemInfo.setRealLockQty(reelLockQty);
lockItemMap.put(bindSlot,lockItemInfo);
}
}
soseqLockInfo.setLockItems(new ArrayList<LockItemInfo>(lockItemMap.values()));
lockInfos.add(soseqLockInfo);
}
return ResultBean.newOkResult(lockInfos);
}
private SoseqLockInfo getLockInfo(String soseq){
SoseqLockInfo soseqLockInfo = new SoseqLockInfo();
soseqLockInfo.setSoseq(soseq);
......
......@@ -12,6 +12,23 @@
<div class="row">
<div class="col-md-12">
<ul class="timeline">
<li class="timeline-purple">
<div class="timeline-time">
<span class="date">2023</span>
<span class="time">11-03</span>
</div>
<div class="timeline-icon">
<i class="fa fa-clock-o"></i>
</div>
<div class="timeline-body">
<h2>版本: V20231110310</h2>
<div class="timeline-content">
<ul>
<li>增加根据工单序号获取库存中的实时绑定信息</li>
</ul>
</div>
</div>
</li>
<li class="timeline-green">
<div class="timeline-time">
<span class="date">2023</span>
......
......@@ -239,7 +239,7 @@
<div class="page-footer-inner">
2016&copy; <a href="${ctx}/updateHistory.html">SMD BOX</a>
</div>
<span class="right" style="color: #a3a3a3;">Version: V2023092517</span>
<span class="right" style="color: #a3a3a3;">Version: V2023110310</span>
<div class="scroll-to-top">
<i class="icon-arrow-up"></i>
</div>
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!