|
@@ -44,6 +44,7 @@ import com.github.zuihou.database.mybatis.conditions.Wraps;
|
|
|
import com.github.zuihou.exception.BizException;
|
|
|
import com.github.zuihou.tenant.service.ProductionresourceService;
|
|
|
import com.google.common.collect.Lists;
|
|
|
+import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
|
|
|
import org.apache.poi.ss.usermodel.Cell;
|
|
@@ -75,6 +76,7 @@ import java.util.concurrent.TimeUnit;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
@Component
|
|
|
+@Slf4j
|
|
|
public class MsgUtil implements ApplicationContextAware {
|
|
|
|
|
|
private static Logger logger = LoggerFactory.getLogger(MsgUtil.class);
|
|
@@ -371,6 +373,7 @@ public class MsgUtil implements ApplicationContextAware {
|
|
|
|
|
|
if(1 == measuringResult){
|
|
|
logger.warn("三坐标测量失败直接下料");
|
|
|
+ log.info("三坐标测量失败直接下料");
|
|
|
|
|
|
// 清楚当前节点工序的redis暂存值
|
|
|
List<TaskNode> operationTaskNodes = taskNodeService.list(Wraps.<TaskNode>lbQ().eq(TaskNode::getTaskId, taskNode.getTaskId()));
|
|
@@ -402,6 +405,9 @@ public class MsgUtil implements ApplicationContextAware {
|
|
|
}
|
|
|
}
|
|
|
}else if ("5".equals(taskNode.getNodeType())){
|
|
|
+ logger.info("======三坐标检测===={}",JSONObject.toJSONString(taskNode));
|
|
|
+ log.info("======三坐标检测===={}",JSONObject.toJSONString(taskNode));
|
|
|
+
|
|
|
// 工件坐标系检测 三坐标测量偏移量数据添加
|
|
|
BomProcedure procedure = bomProcedureService.getById(task.getProcedureId());
|
|
|
BBom bBom = bBomMapper.selectById(procedure.getBomId());
|
|
@@ -416,6 +422,8 @@ public class MsgUtil implements ApplicationContextAware {
|
|
|
|
|
|
//获取偏差值数据
|
|
|
Map<String, List<String>> stringListMap = SmbShareFileUtil.processExcelFiles(threeDimensionalResultAddress, toPlcPar,"xlsx");
|
|
|
+ logger.info("=========三坐标获取偏差值数据========="+ stringListMap);
|
|
|
+ log.info("=========三坐标获取偏差值数据========="+ stringListMap);
|
|
|
|
|
|
if (!stringListMap.isEmpty()) {
|
|
|
|
|
@@ -423,32 +431,37 @@ public class MsgUtil implements ApplicationContextAware {
|
|
|
|
|
|
stringListMap.forEach((Key, stringsList) -> {
|
|
|
List<OrderQuality> orderQualities = orderQualityMapper.selectList(Wraps.<OrderQuality>lbQ().eq(OrderQuality::getDetectionCommand, Key));
|
|
|
+
|
|
|
+ OrderQuality orderQuality = null;
|
|
|
if(orderQualities.isEmpty()){
|
|
|
- OrderQuality orderQuality = new OrderQuality();
|
|
|
- orderQuality.setDetectionCommand(Key);
|
|
|
- orderQuality.setOrderNo(order.getOrderNo());
|
|
|
- orderQuality.setOrderId(order.getId());
|
|
|
- orderQuality.setTaskId(task.getId());
|
|
|
- orderQuality.setWorkpieceId(task.getCompleteBatchNo());
|
|
|
- orderQuality.setWorkpieceName(bom.getName());
|
|
|
- orderQuality.setProcedureId(task.getProcedureId());
|
|
|
- orderQuality.setProcedureName(task.getProcedureName());
|
|
|
- // 读取三坐标工件坐标系每根轴偏移量
|
|
|
- BigDecimal xOffset = new BigDecimal(stringsList.size()>=6? stringsList.get(0):"0");
|
|
|
- BigDecimal yOffset = new BigDecimal(stringsList.size()>=6? stringsList.get(1):"0");
|
|
|
- BigDecimal zOffset = new BigDecimal(stringsList.size()>=6? stringsList.get(2):"0");
|
|
|
- BigDecimal aOffset = new BigDecimal(stringsList.size()>=6? stringsList.get(3):"0");
|
|
|
- BigDecimal bOffset = new BigDecimal(stringsList.size()>=6? stringsList.get(4):"0");
|
|
|
- BigDecimal cOffset = new BigDecimal(stringsList.size()>=6? stringsList.get(5):"0");
|
|
|
- orderQuality.setExactXaxisOffset(xOffset);
|
|
|
- orderQuality.setExactYaxisOffset(yOffset);
|
|
|
- orderQuality.setExactZaxisOffset(zOffset);
|
|
|
- orderQuality.setExactAaxisOffset(aOffset);
|
|
|
- orderQuality.setExactBaxisOffset(bOffset);
|
|
|
- orderQuality.setExactCaxisOffset(cOffset);
|
|
|
-
|
|
|
- list1.add(orderQuality);
|
|
|
+ orderQuality = new OrderQuality();
|
|
|
+ }else {
|
|
|
+ orderQuality = orderQualities.get(0);
|
|
|
}
|
|
|
+
|
|
|
+ orderQuality.setDetectionCommand(Key);
|
|
|
+ orderQuality.setOrderNo(order.getOrderNo());
|
|
|
+ orderQuality.setOrderId(order.getId());
|
|
|
+ orderQuality.setTaskId(task.getId());
|
|
|
+ orderQuality.setWorkpieceId(task.getCompleteBatchNo());
|
|
|
+ orderQuality.setWorkpieceName(bom.getName());
|
|
|
+ orderQuality.setProcedureId(task.getProcedureId());
|
|
|
+ orderQuality.setProcedureName(task.getProcedureName());
|
|
|
+ // 读取三坐标工件坐标系每根轴偏移量
|
|
|
+ BigDecimal xOffset = new BigDecimal(stringsList.size()>=6? stringsList.get(0):"0");
|
|
|
+ BigDecimal yOffset = new BigDecimal(stringsList.size()>=6? stringsList.get(1):"0");
|
|
|
+ BigDecimal zOffset = new BigDecimal(stringsList.size()>=6? stringsList.get(2):"0");
|
|
|
+ BigDecimal aOffset = new BigDecimal(stringsList.size()>=6? stringsList.get(3):"0");
|
|
|
+ BigDecimal bOffset = new BigDecimal(stringsList.size()>=6? stringsList.get(4):"0");
|
|
|
+ BigDecimal cOffset = new BigDecimal(stringsList.size()>=6? stringsList.get(5):"0");
|
|
|
+ orderQuality.setExactXaxisOffset(xOffset.setScale(5, RoundingMode.HALF_UP));
|
|
|
+ orderQuality.setExactYaxisOffset(yOffset.setScale(5, RoundingMode.HALF_UP));
|
|
|
+ orderQuality.setExactZaxisOffset(zOffset.setScale(5, RoundingMode.HALF_UP));
|
|
|
+ orderQuality.setExactAaxisOffset(aOffset.setScale(5, RoundingMode.HALF_UP));
|
|
|
+ orderQuality.setExactBaxisOffset(bOffset.setScale(5, RoundingMode.HALF_UP));
|
|
|
+ orderQuality.setExactCaxisOffset(cOffset.setScale(5, RoundingMode.HALF_UP));
|
|
|
+
|
|
|
+ list1.add(orderQuality);
|
|
|
});
|
|
|
orderQualityMapper.insertBatchSomeColumn(list1);
|
|
|
}
|