|
@@ -21,10 +21,7 @@ import com.github.zuihou.business.externalApi.service.AgvHikOrderInfoService;
|
|
|
import com.github.zuihou.business.externalApi.service.ExternalApiService;
|
|
|
import com.github.zuihou.business.operationManagementCenter.dao.*;
|
|
|
import com.github.zuihou.business.operationManagementCenter.entity.*;
|
|
|
-import com.github.zuihou.business.operationManagementCenter.service.OrderService;
|
|
|
-import com.github.zuihou.business.operationManagementCenter.service.OrderTaskService;
|
|
|
-import com.github.zuihou.business.operationManagementCenter.service.TaskNodeService;
|
|
|
-import com.github.zuihou.business.operationManagementCenter.service.WorkpieceService;
|
|
|
+import com.github.zuihou.business.operationManagementCenter.service.*;
|
|
|
import com.github.zuihou.business.productionReadyCenter.dao.AAutoNodeLogMapper;
|
|
|
import com.github.zuihou.business.productionReadyCenter.dao.BBomMapper;
|
|
|
import com.github.zuihou.business.productionReadyCenter.dao.BomProcedureMapper;
|
|
@@ -176,6 +173,9 @@ public class TaskWorkNode {
|
|
|
@Autowired
|
|
|
private CuttingToolApplyService cuttingToolApplyService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private ToolTaskService toolTaskService;
|
|
|
+
|
|
|
//总控端口
|
|
|
private final String ZK_port = "120";
|
|
|
|
|
@@ -438,16 +438,21 @@ public class TaskWorkNode {
|
|
|
//天轨刀具换刀重新出发取操作流程
|
|
|
if(StringUtils.isNotEmpty(orderTask.getConfBatchNo()) && orderTask.getIsMachine().equals("0")){
|
|
|
String confBatchNo = orderTask.getConfBatchNo();
|
|
|
- List<Long> cuttingToolIdList = cuttingToolService.list(new LbqWrapper<CuttingTool>().eq(CuttingTool::getCuttingToolNo, confBatchNo).or().eq(CuttingTool::getCuttingToolName, confBatchNo)).stream().map(CuttingTool::getId).collect(Collectors.toList());
|
|
|
- if(cuttingToolIdList.size() == 0 ){
|
|
|
+ List<CuttingTool> list = cuttingToolService.list(new LbqWrapper<CuttingTool>().eq(CuttingTool::getCuttingToolNo, confBatchNo).or().eq(CuttingTool::getCuttingToolName, confBatchNo));
|
|
|
+ if(list==null || list.isEmpty()){
|
|
|
log.setFeedback("指定待取刀具数据不存在");
|
|
|
//删除自定义订单内容
|
|
|
orderTaskService.removeById(orderTask.getId());
|
|
|
return;
|
|
|
}
|
|
|
+
|
|
|
+ List<Long> cuttingToolIdList = list.stream().map(CuttingTool::getId).collect(Collectors.toList());
|
|
|
+ Map<Long, List<CuttingTool>> collect = list.stream().collect(groupingBy(CuttingTool::getId));
|
|
|
+
|
|
|
List<StockInfo> stockInfoList = stockInfoMapper.selectList(new LbqWrapper<StockInfo>().eq(StockInfo::getGoodsType, "6").in(StockInfo::getGoodsId, cuttingToolIdList));
|
|
|
List<Long> storgeIdList = stockInfoList.stream().map(StockInfo::getStorgeId).collect(Collectors.toList());
|
|
|
- List<ProductionresourcePosition> productionresourcePositionList = productionresourcePositionService.getFreeProductionresourcePositionByNos(new String[]{"CT_02"});
|
|
|
+
|
|
|
+ List<ProductionresourcePosition> productionresourcePositionList = productionresourcePositionService.getProductionresourcePositionByNos(new String[]{"CT_02"});
|
|
|
|
|
|
productionresourcePositionList = productionresourcePositionList.stream().filter(item -> {
|
|
|
return storgeIdList.contains(item.getStorgeId());
|
|
@@ -461,17 +466,39 @@ public class TaskWorkNode {
|
|
|
}
|
|
|
|
|
|
ProductionresourcePosition productionresourcePosition = productionresourcePositionList.get(0);
|
|
|
+
|
|
|
String ecssystemurl = (null == msgUtil.redis_get(ParameterKey.PARAMETERS)? "": ((Map<String,String>)msgUtil.redis_get(ParameterKey.PARAMETERS)).get(ParameterKey.ECSSYSTEMURL).toString());
|
|
|
String addCutToolTaskUrl = ecssystemurl + "/toolbar/addCutToolTask";
|
|
|
|
|
|
+ CuttingTool cuttingTool = collect.get(productionresourcePosition.getGoodsId()).get(0);
|
|
|
//触发取刀架刀具放入机床
|
|
|
//同步添加天轨处理订单
|
|
|
JSONObject params = new JSONObject();
|
|
|
+ params.put("brandName", cuttingTool.getCuttingToolName());
|
|
|
+ params.put("brandNo", cuttingTool.getCuttingToolNo());
|
|
|
+ params.put("goodsId", cuttingTool.getId());
|
|
|
+ params.put("goalType", productionresourcePosition.getCode());
|
|
|
params.put("start", "CT_"+ productionresourcePosition.getPointId());
|
|
|
params.put("goal", orderTask.getStart());
|
|
|
params.put("cutGoalNo", orderTask.getCutStartNo());
|
|
|
params.put("cutStartNo", "0");
|
|
|
- params.put("goalType", productionresourcePosition.getCode());
|
|
|
+
|
|
|
+ // 判断是不是HD的刀具,重新组装后入库,需要送入到机床中
|
|
|
+ if(StringUtil.isNotEmpty(cuttingTool.getDoc()) && cuttingTool.getDoc().contains("HD")){
|
|
|
+ String[] split = cuttingTool.getDoc().split("&");
|
|
|
+ //获取机床待取库位
|
|
|
+ ProductionresourcePosition cncProductionresourcePosition = productionresourcePositionService.getOne(new LbqWrapper<ProductionresourcePosition>().eq(ProductionresourcePosition::getResourceId, Long.parseLong(split[0])).like(ProductionresourcePosition::getPointId, "CNCT").last("LIMIT 1"));
|
|
|
+ Productionresource productionresource = productionresourceBizMapper.selectOne(Wraps.<Productionresource>lbQ().eq(Productionresource::getId,Long.parseLong(split[0]) ));
|
|
|
+ R<List<String>> cutToolShelfDevice = toolTaskService.getCutToolShelfDevice(productionresource.getCode());
|
|
|
+ if(!cutToolShelfDevice.getIsSuccess()){
|
|
|
+ log.setFeedback(cutToolShelfDevice.getMsg());
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ params.put("goal", "CT_"+ cncProductionresourcePosition.getPointId());
|
|
|
+ params.put("cutGoalNo", cutToolShelfDevice.getData().get(0));
|
|
|
+
|
|
|
+ }
|
|
|
|
|
|
//添加刀具取任务
|
|
|
msgUtil.httpForPost(addCutToolTaskUrl, params.toJSONString());
|