|
@@ -1,12 +1,15 @@
|
|
|
package com.github.zuihou.business.productionReadyCenter.service.impl;
|
|
|
|
|
|
|
|
|
+import cn.hutool.core.util.ObjectUtil;
|
|
|
import cn.hutool.log.Log;
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONArray;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.github.zuihou.base.service.SuperCacheServiceImpl;
|
|
|
+import com.github.zuihou.business.operationManagementCenter.entity.OrderTask;
|
|
|
+import com.github.zuihou.business.operationManagementCenter.service.OrderTaskService;
|
|
|
import com.github.zuihou.business.productionReadyCenter.dao.CuttingToolMapper;
|
|
|
import com.github.zuihou.business.productionReadyCenter.dao.MachineCuttingToolMapper;
|
|
|
import com.github.zuihou.business.productionReadyCenter.dto.MachineCuttingToolSaveDTO;
|
|
@@ -14,9 +17,11 @@ import com.github.zuihou.business.productionReadyCenter.entity.CuttingTool;
|
|
|
import com.github.zuihou.business.productionReadyCenter.entity.MachineCuttingTool;
|
|
|
import com.github.zuihou.business.productionReadyCenter.service.MachineCuttingToolService;
|
|
|
import com.github.zuihou.business.productionResourceCenter.dao.ZZoneProductionresourceMapper;
|
|
|
+import com.github.zuihou.business.productionResourceCenter.entity.ProductionresourcePosition;
|
|
|
import com.github.zuihou.business.productionResourceCenter.entity.ResourceBusiness;
|
|
|
import com.github.zuihou.business.productionResourceCenter.entity.ZZone;
|
|
|
import com.github.zuihou.business.productionResourceCenter.entity.ZZoneProductionresource;
|
|
|
+import com.github.zuihou.business.productionResourceCenter.service.ProductionresourcePositionService;
|
|
|
import com.github.zuihou.business.productionResourceCenter.service.ZZoneService;
|
|
|
import com.github.zuihou.business.util.MsgUtil;
|
|
|
import com.github.zuihou.common.constant.CacheKey;
|
|
@@ -98,6 +103,11 @@ public class MachineCuttingToolServiceImpl extends SuperCacheServiceImpl<Machine
|
|
|
return machineCuttingTool;
|
|
|
}
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private ProductionresourcePositionService productionresourcePositionService;
|
|
|
+ @Autowired
|
|
|
+ private OrderTaskService orderTaskService;
|
|
|
+
|
|
|
@Override
|
|
|
public List<MachineCuttingTool> sysCuttingTools(MachineCuttingTool data) throws Exception{
|
|
|
BaseContextHandler.setTenant("0000");
|
|
@@ -135,7 +145,7 @@ public class MachineCuttingToolServiceImpl extends SuperCacheServiceImpl<Machine
|
|
|
} else {
|
|
|
synMachineCuttingTolls = "[{\"position\":\"1.4\",\"number\":\"22\",\"name\":\"1-LC190202-C5CFOL3507002L-C5L90\",\"warnLife\":\"87\",\"targetLife\":\"2282.88\",\"workPiece\":null,\"workPieceWarn\":null,\"workPieceTarget\":null,\"wear\":null,\"wearWarn\":null,\"wearTarget\":null,\"sisterNo\":null,\"toolEdgeNo\":null,\"toolPosition\":null,\"toolRadius\":null,\"tl\":\"0\",\"doc\":\"\"}," +
|
|
|
"{\"position\":\"1.1\",\"number\":\"7\",\"name\":\"XD6\",\"warnLife\":\"87\",\"targetLife\":\"2282.88\",\"workPiece\":null,\"workPieceWarn\":null,\"workPieceTarget\":null,\"wear\":null,\"wearWarn\":null,\"wearTarget\":null,\"sisterNo\":null,\"toolEdgeNo\":null,\"toolPosition\":null,\"toolRadius\":null,\"tl\":\"0\",\"doc\":\"\"}," +
|
|
|
- "{\"position\":\"1.3\",\"number\":\"3\",\"name\":\"8C-N123E2-C5CFMR35070\",\"warnLife\":\"0\",\"targetLife\":\"8021.45\",\"workPiece\":null,\"workPieceWarn\":null,\"workPieceTarget\":null,\"wear\":null,\"wearWarn\":null,\"wearTarget\":null,\"sisterNo\":null,\"toolEdgeNo\":null,\"toolPosition\":null,\"toolRadius\":null,\"tl\":\"0\",\"doc\":\"FDJ\"}]\n";
|
|
|
+ "{\"position\":\"1.3\",\"number\":\"3\",\"name\":\"8C-N123E2-C5CFMR35070\",\"warnLife\":\"0\",\"targetLife\":\"8021.45\",\"workPiece\":null,\"workPieceWarn\":null,\"workPieceTarget\":null,\"wear\":null,\"wearWarn\":null,\"wearTarget\":null,\"sisterNo\":null,\"toolEdgeNo\":null,\"toolPosition\":null,\"toolRadius\":null,\"tl\":\"0\",\"doc\":\"\"}]\n";
|
|
|
}
|
|
|
|
|
|
log.info("设备" + productionresource.getName() + "同步刀具返回{},请求参数{}", synMachineCuttingTolls, jsonObject.toString());
|
|
@@ -159,6 +169,11 @@ public class MachineCuttingToolServiceImpl extends SuperCacheServiceImpl<Machine
|
|
|
|
|
|
|
|
|
|
|
|
+ // 查询出临时订单是否已经创建此点位的订单
|
|
|
+ ProductionresourcePosition productionresourcePosition = productionresourcePositionService.getOne(new LbqWrapper<ProductionresourcePosition>().eq(ProductionresourcePosition::getResourceId, productionresource.getId()).like(ProductionresourcePosition::getPointId, "CNCT").last("LIMIT 1"));
|
|
|
+ List<OrderTask> list = orderTaskService.list(Wraps.<OrderTask>lbQ().eq(OrderTask::getStart,"CT_" + productionresourcePosition.getPointId()));
|
|
|
+
|
|
|
+
|
|
|
for (int i = 0; i < upResult.size(); i++) {
|
|
|
JSONObject tool = upResult.getJSONObject(i);
|
|
|
String cuttingToolNo = tool.getString("number");
|
|
@@ -219,7 +234,16 @@ public class MachineCuttingToolServiceImpl extends SuperCacheServiceImpl<Machine
|
|
|
|
|
|
//刀具报警 调用天轨 目标去刀具上下料站
|
|
|
if (!map.containsKey(resourceId) && (doc.equals("FDJ") || doc.equals("HD"))) {
|
|
|
- map.put(resourceId, machineCuttingTool);
|
|
|
+ if(!list.isEmpty()){
|
|
|
+ Map<String, List<OrderTask>> collect1 = list.stream().collect(Collectors.groupingBy(OrderTask::getCutStartNo));
|
|
|
+
|
|
|
+ List<OrderTask> orderTasks = collect1.get(machineCuttingTool.getCuttingToolPosition().replace("1.", ""));
|
|
|
+ if(orderTasks ==null || orderTasks.isEmpty()){
|
|
|
+ map.put(resourceId, machineCuttingTool);
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ map.put(resourceId, machineCuttingTool);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|