|
|
@@ -419,13 +419,13 @@ public class TaskNodeServiceImpl extends SuperServiceImpl<TaskNodeMapper, TaskNo
|
|
|
} else if ("4".equals(taskNode.getAutoNode().getCategory())) {
|
|
|
taskNode.setInterfaceType(DictionaryKey.INTERFACETYPE_WMS);
|
|
|
|
|
|
- if ("上料".equals(taskType)) {
|
|
|
+ if (taskType.contains("上料")) {
|
|
|
taskNode.setNodeType("1");
|
|
|
taskNode.setResourceId(t.getResourceId());
|
|
|
- } else if ("下料".equals(taskType)) {
|
|
|
+ } else if (taskType.contains("下料")) {
|
|
|
taskNode.setNodeType("2");
|
|
|
taskNode.setResourceId(t.getResourceId());
|
|
|
- } else if ("翻面".equals(taskType)) {
|
|
|
+ } else if (taskType.contains("翻面")) {
|
|
|
taskNode.setNodeType("4");
|
|
|
taskNode.setResourceId(t.getResourceId());
|
|
|
} else {
|
|
|
@@ -887,12 +887,16 @@ public class TaskNodeServiceImpl extends SuperServiceImpl<TaskNodeMapper, TaskNo
|
|
|
procedureTrayService.list(Wraps.<BomProcedureTray>lbQ().eq(BomProcedureTray::getGroupId,
|
|
|
task.getProcedureTrayGroupId()));
|
|
|
List<TTaskStockUniqueCode> stockUniqueCodeList = new ArrayList<TTaskStockUniqueCode>();
|
|
|
+ TWorkpiece currWorkpiece = workpieceService.getWorkPiece(taskNode.getId());
|
|
|
+ List<StockInfo> stockInfoList = this.getConnectTray(procedureTrayList, currWorkpiece.getIsReload());
|
|
|
//获取
|
|
|
- for (BomProcedureTray b : procedureTrayList) {
|
|
|
+ for (StockInfo b : stockInfoList) {
|
|
|
Long stockId = getStockId(taskNode, autoNode, "0");
|
|
|
//出入库配置
|
|
|
String stockConf = autoNode.getStockConf();
|
|
|
+
|
|
|
if (BizConstant.NODE_STOCK_CONF_OUT_IN.equals(stockConf)) {//先出库后入库
|
|
|
+
|
|
|
R<String> ckresult = stockInfoService.procedureTrayStockOut(b, stockId, null);
|
|
|
if (ckresult.getIsSuccess()) {
|
|
|
String uniqueCodeOut = ckresult.getData();
|
|
|
@@ -907,9 +911,9 @@ public class TaskNodeServiceImpl extends SuperServiceImpl<TaskNodeMapper, TaskNo
|
|
|
t.setAutoNodeId(autoNode.getId());
|
|
|
//工序业务类型(1-工序原材料2-托盘3-夹具)
|
|
|
//类型转换一下
|
|
|
- if ("1".equals(b.getBizType())) {
|
|
|
+ if ("1".equals(b.getGoodsType())) {
|
|
|
t.setBizType("2");
|
|
|
- } else if ("2".equals(b.getBizType())) {
|
|
|
+ } else if ("2".equals(b.getGoodsType())) {
|
|
|
t.setBizType("3");
|
|
|
}
|
|
|
t.setTaskId(taskNode.getTaskId()).setProcedureId(task.getProcedureId()).setBomBatchNo(task.getBomBatchNo()).setProcedureBizId(b.getId()).setUniqueCode(uniqueCodeOut);
|
|
|
@@ -1266,7 +1270,11 @@ public class TaskNodeServiceImpl extends SuperServiceImpl<TaskNodeMapper, TaskNo
|
|
|
isFalse(oriStorgeId.longValue() == storgeId.longValue(), "此码已经在当前库位,无需新料入库");
|
|
|
}
|
|
|
}
|
|
|
- rkresult = stockInfoService.procedureTrayStockIn(tray, storgeId, null, bean.getCompleteBatchNo());
|
|
|
+ TWorkpiece currWorkpiece = workpieceService.getWorkPiece(bean.getId());
|
|
|
+ List<StockInfo> stockInfoList = this.getConnectTray(trayList, currWorkpiece.getIsReload());
|
|
|
+ List<StockInfo> trayStockList = stockInfoList.stream().filter(stockInfo->stockInfo.getGoodsId().equals(tray.getTrayId())).collect(Collectors.toList());
|
|
|
+ isFalse(trayStockList == null || trayStockList.size() == 0, "此码不在库中");
|
|
|
+ rkresult = stockInfoService.procedureTrayStockIn(trayStockList.get(0), storgeId, null, bean.getCompleteBatchNo());
|
|
|
}
|
|
|
|
|
|
if (rkresult.getIsSuccess()) {
|
|
|
@@ -1331,10 +1339,14 @@ public class TaskNodeServiceImpl extends SuperServiceImpl<TaskNodeMapper, TaskNo
|
|
|
//判断输入的码不在当前库
|
|
|
isFalse(oriStorgeId.longValue() == storgeId.longValue(), "此码已经在当前库位,无需移库");
|
|
|
}
|
|
|
+ TWorkpiece currWorkpiece = workpieceService.getWorkPiece(bean.getId());
|
|
|
+ List<StockInfo> stockInfoList = this.getConnectTray(trayList, currWorkpiece.getIsReload());
|
|
|
+ List<StockInfo> trayStockList = stockInfoList.stream().filter(stockInfo->stockInfo.getGoodsId().equals(tray.getTrayId())).collect(Collectors.toList());
|
|
|
+ isFalse(trayStockList == null || trayStockList.size() == 0, "此码不在库中");
|
|
|
|
|
|
- R<String> ckResult = stockInfoService.procedureTrayStockOut(tray, null, tray.getUniqueCode());
|
|
|
+ R<String> ckResult = stockInfoService.procedureTrayStockOut(trayStockList.get(0), null, tray.getUniqueCode());
|
|
|
if (ckResult.getIsSuccess()) {
|
|
|
- R<String> rkResult = stockInfoService.procedureTrayStockIn(tray, storgeId, tray.getUniqueCode(),
|
|
|
+ R<String> rkResult = stockInfoService.procedureTrayStockIn(trayStockList.get(0), storgeId, tray.getUniqueCode(),
|
|
|
bean.getCompleteBatchNo());
|
|
|
}
|
|
|
}
|
|
|
@@ -1505,6 +1517,10 @@ public class TaskNodeServiceImpl extends SuperServiceImpl<TaskNodeMapper, TaskNo
|
|
|
if (CollectionUtil.isNotEmpty(list)) {
|
|
|
currWorkpiece = list.get(0);
|
|
|
}
|
|
|
+ if(callBackJson.containsKey("isReload")){
|
|
|
+ currWorkpiece.setIsReload(1);
|
|
|
+ workpieceService.updateById(currWorkpiece);
|
|
|
+ }
|
|
|
|
|
|
//处理出库入库
|
|
|
R<String> r = demoLineStock(taskNode, task, callBackJson, currWorkpiece);
|
|
|
@@ -1879,6 +1895,7 @@ public class TaskNodeServiceImpl extends SuperServiceImpl<TaskNodeMapper, TaskNo
|
|
|
}
|
|
|
// end modify by yejian on 20221019 for 滑台三座标结果返回需动态更新取位子
|
|
|
String uniqueCode = callBackJson.containsKey("uniqueCode") ? callBackJson.getString("uniqueCode") : "";
|
|
|
+ boolean bool = StringUtil.isNotEmpty(uniqueCode) && taskService.confirmCode(new HashMap<String, Object>(){{put("uniqueCode" , uniqueCode);}}).getIsSuccess();
|
|
|
|
|
|
//更新目标位置
|
|
|
workpieceService.setWorkPieceStock(currWorkpiece, targetStorgeId, "", taskNode, uniqueCode);
|
|
|
@@ -1890,7 +1907,7 @@ public class TaskNodeServiceImpl extends SuperServiceImpl<TaskNodeMapper, TaskNo
|
|
|
if (meterialList != null && meterialList.size() > 0) {//只有入库
|
|
|
//WMS只要把原材料入库
|
|
|
R<String> rkresult = stockInfoService.meterialStockIn(meterialList.get(0),
|
|
|
- Long.parseLong(targetStorgeId), "", task.getCompleteBatchNo());
|
|
|
+ Long.parseLong(targetStorgeId), (bool)?uniqueCode:"", task.getCompleteBatchNo());
|
|
|
return rkresult;
|
|
|
}
|
|
|
}
|
|
|
@@ -1918,12 +1935,13 @@ public class TaskNodeServiceImpl extends SuperServiceImpl<TaskNodeMapper, TaskNo
|
|
|
}
|
|
|
List<BomProcedureTray> trayList =
|
|
|
procedureTrayService.list(Wraps.<BomProcedureTray>lbQ().eq(BomProcedureTray::getGroupId,
|
|
|
- task.getProcedureTrayGroupId()));
|
|
|
+ task.getProcedureTrayGroupId()).orderByAsc(BomProcedureTray::getBizType));
|
|
|
R<String> result = null;
|
|
|
if (trayList != null && trayList.size() > 0) {
|
|
|
- for (BomProcedureTray tray : trayList) {
|
|
|
+ List<StockInfo> stockInfoList = this.getConnectTray(trayList, currWorkpiece.getIsReload());
|
|
|
+ for (StockInfo tray : stockInfoList) {
|
|
|
//托盘不用入库
|
|
|
- if ("1".equals(tray.getBizType())) {
|
|
|
+ if ("1".equals(tray.getGoodsType())) {
|
|
|
break;
|
|
|
}
|
|
|
result = stockInfoService.procedureTrayStockOut(tray, Long.parseLong(srcStorgeId),
|
|
|
@@ -1953,12 +1971,15 @@ public class TaskNodeServiceImpl extends SuperServiceImpl<TaskNodeMapper, TaskNo
|
|
|
// (BomProcedureTray::getId,task.ge()));
|
|
|
List<BomProcedureTray> trayList =
|
|
|
procedureTrayService.list(Wraps.<BomProcedureTray>lbQ().eq(BomProcedureTray::getGroupId,
|
|
|
- task.getProcedureTrayGroupId()));
|
|
|
+ task.getProcedureTrayGroupId()).orderByAsc(BomProcedureTray::getBizType));
|
|
|
R<String> result = null;
|
|
|
if (trayList != null && trayList.size() > 0) {
|
|
|
- for (BomProcedureTray tray : trayList) {
|
|
|
- result = stockInfoService.procedureTrayStockOut(tray, Long.parseLong(srcStorgeId),
|
|
|
- task.getCompleteBatchNo());
|
|
|
+ List<StockInfo> stockInfoList = this.getConnectTray(trayList, currWorkpiece.getIsReload());
|
|
|
+ for (StockInfo tray : stockInfoList) {
|
|
|
+ if(StringUtil.isNotEmpty(srcStorgeId)) {
|
|
|
+ result = stockInfoService.procedureTrayStockOut(tray, Long.parseLong(srcStorgeId),
|
|
|
+ task.getCompleteBatchNo());
|
|
|
+ }
|
|
|
if (result.getIsSuccess()) {
|
|
|
result = stockInfoService.procedureTrayStockIn(tray, Long.parseLong(targetStorgeId),
|
|
|
result.getData(), task.getCompleteBatchNo());
|
|
|
@@ -1980,14 +2001,15 @@ public class TaskNodeServiceImpl extends SuperServiceImpl<TaskNodeMapper, TaskNo
|
|
|
}
|
|
|
List<BomProcedureTray> trayList =
|
|
|
procedureTrayService.list(Wraps.<BomProcedureTray>lbQ().eq(BomProcedureTray::getGroupId,
|
|
|
- task.getProcedureTrayGroupId()));
|
|
|
+ task.getProcedureTrayGroupId()).orderByAsc(BomProcedureTray::getBizType));
|
|
|
R<String> result = null;
|
|
|
if (trayList != null && trayList.size() > 0) {
|
|
|
- for (BomProcedureTray tray : trayList) {
|
|
|
- result = stockInfoService.procedureTrayStockOut(tray, Long.parseLong(srcStorgeId),
|
|
|
+ List<StockInfo> stockInfoList = this.getConnectTray(trayList, currWorkpiece.getIsReload());
|
|
|
+ for (StockInfo trayStock : stockInfoList) {
|
|
|
+ result = stockInfoService.procedureTrayStockOut(trayStock, Long.parseLong(srcStorgeId),
|
|
|
task.getCompleteBatchNo());
|
|
|
if (result.getIsSuccess()) {
|
|
|
- result = stockInfoService.procedureTrayStockIn(tray, Long.parseLong(targetStorgeId),
|
|
|
+ result = stockInfoService.procedureTrayStockIn(trayStock, Long.parseLong(targetStorgeId),
|
|
|
result.getData(), task.getCompleteBatchNo());
|
|
|
}
|
|
|
}
|
|
|
@@ -2018,10 +2040,11 @@ public class TaskNodeServiceImpl extends SuperServiceImpl<TaskNodeMapper, TaskNo
|
|
|
}
|
|
|
List<BomProcedureTray> trayList =
|
|
|
procedureTrayService.list(Wraps.<BomProcedureTray>lbQ().eq(BomProcedureTray::getGroupId,
|
|
|
- task.getProcedureTrayGroupId()));
|
|
|
+ task.getProcedureTrayGroupId()).orderByAsc(BomProcedureTray::getBizType));
|
|
|
R<String> result = null;
|
|
|
if (trayList != null && trayList.size() > 0) {
|
|
|
- for (BomProcedureTray tray : trayList) {
|
|
|
+ List<StockInfo> stockInfoList = this.getConnectTray(trayList, currWorkpiece.getIsReload());
|
|
|
+ for (StockInfo tray : stockInfoList) {
|
|
|
result = stockInfoService.procedureTrayStockOut(tray, Long.parseLong(srcStorgeId),
|
|
|
task.getCompleteBatchNo());
|
|
|
if (result.getIsSuccess()) {
|
|
|
@@ -2060,11 +2083,12 @@ public class TaskNodeServiceImpl extends SuperServiceImpl<TaskNodeMapper, TaskNo
|
|
|
|
|
|
List<BomProcedureTray> trayList =
|
|
|
procedureTrayService.list(Wraps.<BomProcedureTray>lbQ().eq(BomProcedureTray::getGroupId,
|
|
|
- task.getProcedureTrayGroupId()));
|
|
|
+ task.getProcedureTrayGroupId()).orderByAsc(BomProcedureTray::getBizType));
|
|
|
R<String> result = null;
|
|
|
if (trayList != null && trayList.size() > 0) {
|
|
|
- for (BomProcedureTray tray : trayList) {
|
|
|
- if ("1".equals(tray.getBizType())) {//托盘不用入库
|
|
|
+ List<StockInfo> stockInfoList = this.getConnectTray(trayList, currWorkpiece.getIsReload());
|
|
|
+ for (StockInfo tray : stockInfoList) {
|
|
|
+ if ("1".equals(tray.getGoodsType())) {//托盘不用入库
|
|
|
break;
|
|
|
}
|
|
|
result = stockInfoService.procedureTrayStockIn(tray, Long.parseLong(targetStorgeId),
|
|
|
@@ -2619,13 +2643,6 @@ planId));
|
|
|
firstNode.getProcedureId()));
|
|
|
List<Long> oldTrayIdList = oldTrayList.stream().map(t -> t.getTrayId()).collect(Collectors.toList());
|
|
|
|
|
|
- /*List<TaskNode> taskNodeList = baseMapper.selectList(Wraps.<TaskNode>lbQ().eq(TaskNode::getCompleteBatchNo,
|
|
|
- hisTask.getCompleteBatchNo()).orderByAsc(TaskNode::getCompleteBatchSort));
|
|
|
- TaskNode firstTaskNode = taskNodeList.get(0);
|
|
|
- List<BomProcedureTray>firsttrayList = procedureTrayService.list(Wraps.<BomProcedureTray>lbQ().in
|
|
|
- (BomProcedureTray::getProcedureId, firstTaskNode.getProcedureId()));
|
|
|
- List<Long>firsttrayIdList = firsttrayList.stream().map(t->t.getTrayId()).collect(Collectors.toList());
|
|
|
- */
|
|
|
//判断翻面得托盘工装和翻面前得是否一致
|
|
|
if (CollectionUtil.join(trayIdList, "").equals(CollectionUtil.join(oldTrayIdList, ""))) {
|
|
|
return R.fail("无需呼叫");
|
|
|
@@ -2636,17 +2653,7 @@ planId));
|
|
|
return R.fail("呼叫机器人尚未完成");
|
|
|
}
|
|
|
msgUtil.redis_set(YunjianConstant.YUNJIAN_FANMIAN + taskNodeId, YunjianConstant.YUNJIAN_FANMIAN + taskNodeId);
|
|
|
- /*
|
|
|
- //获取机器人
|
|
|
- Long resourceId = getResourceIdByAutoCode("2");
|
|
|
- //呼叫
|
|
|
- JSONObject jsonObject = new JSONObject();
|
|
|
- jsonObject.put("taskNodeId",taskNodeId);
|
|
|
- jsonObject.put(taskNodeId+"count", "0");
|
|
|
- jsonObject.put("bizType", BizConstant.MQ_TASK_NODE_TYPE_VIRTUALLY);
|
|
|
- jsonObject.put("functionName", "取");
|
|
|
- jsonObject.put("resourceId",resourceId);
|
|
|
- dynamicRabbitMq.sendMsg(resourceId.toString(),jsonObject.toString()); */
|
|
|
+
|
|
|
List<Long> taskIds = this.list(new LbqWrapper<TaskNode>().eq(TaskNode::getCompleteBatchNo,
|
|
|
hisTask.getCompleteBatchNo()).gt(TaskNode::getCompleteBatchSort, hisTask.getCompleteBatchSort()).orderByAsc(TaskNode::getCompleteBatchSort)).stream().map(TaskNode::getId).collect(Collectors.toList());
|
|
|
|
|
|
@@ -2670,8 +2677,10 @@ planId));
|
|
|
Storge currStorage = workpieceService.getWorkPieceStock(hisTask.getCompleteBatchNo(), false);
|
|
|
jsonObject.put("srcPosition", currStorage.getId());
|
|
|
//限定伺服舵机
|
|
|
- jsonObject.put("targetPosition", "1496714517546008576");
|
|
|
- jsonObject.put(DemoLineConstant.DEMOLINE_STOCK_TYPE, DemoLineConstant.DEMOLINE_STOCK_TYPE_TRAY_CRK);
|
|
|
+ //jsonObject.put("targetPostion", this.getLikuStockInList());
|
|
|
+ //ProductionresourcePosition position = productionresourcePositionService.getOne(new LbqWrapper<ProductionresourcePosition>().eq(ProductionresourcePosition::getName, "伺服舵机"));
|
|
|
+ jsonObject.put("targetPostion", "");
|
|
|
+ jsonObject.put(DemoLineConstant.DEMOLINE_STOCK_TYPE, DemoLineConstant.DEMOLINE_STOCK_TYPE_METERIAL_CK);
|
|
|
this.taskNodeCallbackBiz(hisTask, tTask, taskNodeList, lg, jsonObject.toJSONString());
|
|
|
return R.success("");
|
|
|
}
|
|
|
@@ -2690,23 +2699,26 @@ planId));
|
|
|
List<TaskNode> tailNodes = new ArrayList<TaskNode>();
|
|
|
//获取最终回立库的两个节点
|
|
|
List<TaskNode> backStockNodes = this.list(new LbqWrapper<TaskNode>().gt(TaskNode::getCompleteBatchSort,
|
|
|
- taskNode.getCompleteBatchSort()).orderByDesc(TaskNode::getCompleteBatchSort).last("limit 2"));
|
|
|
+ taskNode.getCompleteBatchSort()).eq(TaskNode::getCompleteBatchNo, taskNode.getCompleteBatchNo()).orderByDesc(TaskNode::getCompleteBatchSort).last("limit 2"));
|
|
|
|
|
|
Collections.reverse(backStockNodes);
|
|
|
backStockNodes.stream().forEach(node -> {
|
|
|
TaskNode backNode = new TaskNode();
|
|
|
BeanUtil.copyProperties(node, backNode, "id");
|
|
|
- backNode.setProcedureId(taskNode.getProcedureId()).setTaskId(taskNode.getTaskId());
|
|
|
+ backNode.setProcedureId(taskNode.getProcedureId()).setTaskId(taskNode.getTaskId()).setNodeType("4");
|
|
|
tailNodes.add(backNode);
|
|
|
});
|
|
|
|
|
|
//重建最初获取工装节点
|
|
|
List<TaskNode> switchNodes = this.list(new LbqWrapper<TaskNode>().lt(TaskNode::getCompleteBatchSort,
|
|
|
- taskNode.getCompleteBatchSort()).orderByAsc(TaskNode::getCompleteBatchSort).last("limit 2"));
|
|
|
+ taskNode.getCompleteBatchSort()).eq(TaskNode::getCompleteBatchNo, taskNode.getCompleteBatchNo()).orderByAsc(TaskNode::getCompleteBatchSort).last("limit 3"));
|
|
|
switchNodes.stream().forEach(node -> {
|
|
|
TaskNode headNode = new TaskNode();
|
|
|
BeanUtil.copyProperties(node, headNode, "id");
|
|
|
headNode.setProcedureId(taskNode.getProcedureId()).setTaskId(taskNode.getTaskId()).setExeStatus("1").setExeResult(null).setStartTime(null).setEndTime(null).setFeedback("");
|
|
|
+ if(!headNode.getNodeType().equals("1")){
|
|
|
+ headNode.setNodeType("4");
|
|
|
+ }
|
|
|
headNodes.add(headNode);
|
|
|
});
|
|
|
|
|
|
@@ -2717,4 +2729,62 @@ planId));
|
|
|
return tailNodes;
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 获取换装关联工装和托盘
|
|
|
+ *
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ private List<StockInfo> getConnectTray(List<BomProcedureTray> bomProcedureTrayList, int isReload){
|
|
|
+ List<StockInfo> stockInfoList = null;
|
|
|
+ List<Long> trayIds = bomProcedureTrayList.stream().map(tray->tray.getTrayId()).collect(Collectors.toList());
|
|
|
+ stockInfoList = stockInfoService.list(new LbqWrapper<StockInfo>().in(StockInfo::getGoodsId, trayIds).orderByAsc(StockInfo::getGoodsType));
|
|
|
+
|
|
|
+ if(CollectionUtil.isNotEmpty(stockInfoList) && stockInfoList.size()==2) {
|
|
|
+ boolean bool = stockInfoList.get(0).getStorgeId().equals(stockInfoList.get(1).getStorgeId());
|
|
|
+ if (!bool) {
|
|
|
+ //已经换装,以工装作为点位参考
|
|
|
+ if (isReload > 0) {
|
|
|
+ stockInfoList = stockInfoService.list(new LbqWrapper<StockInfo>().eq(StockInfo::getStorgeId, stockInfoList.get(1).getStorgeId()).orderByAsc(StockInfo::getGoodsType));
|
|
|
+ } else {
|
|
|
+ //未换装,以子盘作为点位参考
|
|
|
+ stockInfoList = stockInfoService.list(new LbqWrapper<StockInfo>().eq(StockInfo::getStorgeId, stockInfoList.get(0).getStorgeId()).orderByAsc(StockInfo::getGoodsType));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return stockInfoList;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 立库获取终点位置,取空库位的数据
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ private long getLikuStockInList(){
|
|
|
+ List <StockInfo> returnList = null;
|
|
|
+
|
|
|
+ List<Productionresource> productionresources = productionresourceBizMapper.selectList(Wraps.<Productionresource>lbQ().like(Productionresource::getCode,DictionaryKey.YJ_ZONE_XBK.get("plateAndClamp")));
|
|
|
+ List<Long> productionresourceIds = productionresources.stream().map(t->t.getId()).collect(Collectors.toList());
|
|
|
+
|
|
|
+ if(CollectionUtil.isEmpty(productionresourceIds)){
|
|
|
+ return -1;
|
|
|
+ }
|
|
|
+ String resourceIds = "";
|
|
|
+ for(int i = 0; i < productionresourceIds.size(); i++){
|
|
|
+ if(i == productionresourceIds.size() - 1){
|
|
|
+ resourceIds = resourceIds + productionresourceIds.get(i);
|
|
|
+ }else{
|
|
|
+ resourceIds = resourceIds + productionresourceIds.get(i)+ ",";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ Map queryMap = new HashMap();
|
|
|
+ queryMap.put("resourceIds",resourceIds);
|
|
|
+
|
|
|
+ // 判断夹具是否有可用的,查询330个库位信息中是否还有夹具
|
|
|
+
|
|
|
+ List<Long> allStockList = stockInfoMapper.getAvailableStorge(queryMap);
|
|
|
+ if(allStockList.size() > 0){
|
|
|
+ return allStockList.get(0);
|
|
|
+ }else{
|
|
|
+ return -1;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|