billion-admin/src/main/resources/banner.txt
@@ -1,24 +1,2 @@ Application Version: ${ruoyi.version} Spring Boot Version: ${spring-boot.version} //////////////////////////////////////////////////////////////////// // _ooOoo_ // // o8888888o // // 88" . "88 // // (| ^_^ |) // // O\ = /O // // ____/`---'\____ // // .' \\| |// `. // // / \\||| : |||// \ // // / _||||| -:- |||||- \ // // | | \\\ - /// | | // // | \_| ''\---/'' | | // // \ .-\__ `-` ___/-. / // // ___`. .' /--.--\ `. . ___ // // ."" '< `.___\_<|>_/___.' >'"". // // | | : `- \`.;`\ _ /`;.`/ - ` : | | // // \ \ `-. \_ __\ /__ _/ .-` / / // // ========`-.____`-.___\_____/___.-`____.-'======== // // `=---=' // // ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ // // ä½ç¥ä¿ä½ æ°¸ä¸å®æº æ°¸æ BUG // //////////////////////////////////////////////////////////////////// billion-main/pom.xml
@@ -89,6 +89,12 @@ <version>8.0.33</version> <scope>compile</scope> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel-core</artifactId> <version>3.3.3</version> <scope>compile</scope> </dependency> </dependencies> </project> billion-main/src/main/java/com/billion/main/api/service/impl/WorkOrdersInfoServiceImpl.java
@@ -50,8 +50,8 @@ omProductionOrderInfo.setWorkOrderNo(workOrdersInfo.getOrderNumber()); omProductionOrderInfo.setSalesOrderCode(workOrdersInfo.getBatchNumber()); omProductionOrderInfo.setProductCode(workOrdersInfo.getMaterialNumber()); omProductionOrderInfo.setEngineType(workOrdersInfo.getEngineType()); omProductionOrderInfo.setEngineName(workOrdersInfo.getEngineName()); omProductionOrderInfo.setEngineType(workOrdersInfo.getEngineName()); omProductionOrderInfo.setEngineName(workOrdersInfo.getEngineType()); omProductionOrderInfo.setPlanQty(Long.valueOf(workOrdersInfo.getProductionPlan())); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date startTime = sdf.parse(workOrdersInfo.getStartTime()); billion-main/src/main/java/com/billion/main/constant/Constants.java
@@ -10,7 +10,7 @@ public static final String TWO= "2"; public static final String RecordData= "RecordData"; public static final String WorkOrderRequest= "WorkOrderRequest"; // public static final String TEST= "TEST";//缸çä¸çº¿å·¥ä½ public static final String TEST= "TEST"; public static final List<String> PLC1 = new ArrayList<>(); public static final List<String> PLC2 = new ArrayList<>(); @@ -94,4 +94,5 @@ public static final String OP070_1= "OP070-1"; public static final String PLC_4 = "PLC4"; } billion-main/src/main/java/com/billion/main/da/domain/CollectMT.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,28 @@ package com.billion.main.da.domain; import lombok.Data; @Data public class CollectMT { private String orderNumber; private String engineNumber; private String factoryNumber="0"; private String engineSerialNumber="0"; private String stationID= "0"; private String stationName; private String insertTime; private String partsNumber; private String partsSupplierNumber= "0"; private String material= "0"; private String count= "0"; private String partsDrawingNumber= "0"; private String partsSerialNumber= "0"; private String cbNumber= "0"; private String cbSupplierNumber= "0"; private String material1; private String cbDrawingNumber= "0"; private String cbSerialNumber = "0"; } billion-main/src/main/java/com/billion/main/da/domain/CollectQualityData.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,22 @@ package com.billion.main.da.domain; import lombok.Data; @Data public class CollectQualityData { private String orderNumber; private String stationID = "1"; private String stationName; private String engineNumber; private String factoryNumber="0"; private String engineSerialNumber="0"; private String insertTime; private String detectionID="0"; private String detectionName; private String upperSpec="0"; private String lowerSpec="0"; private String target="0"; private String unit="0"; private String actualValue; private String status="0"; } billion-main/src/main/java/com/billion/main/da/domain/CollectTrack.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,15 @@ package com.billion.main.da.domain; import lombok.Data; @Data public class CollectTrack { private String orderNumber; private String stationName; private String insertTime; private String engineType; private String factoryNumber; private String engineNumber; private String cycleTime; private Integer flag; } billion-main/src/main/java/com/billion/main/da/domain/DaMaterialCollection.java
@@ -43,6 +43,14 @@ @Excel(name = "åæ°å¼") private String paramValue; /** ç©æç¼ç */ @Excel(name = "ç©æç¼ç ") private String materialCode; /** ç©æåç§° */ @Excel(name = "ç©æåç§°") private String materialName; /** ééæ¶é´ */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @Excel(name = "ééæ¶é´", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") billion-main/src/main/java/com/billion/main/da/domain/EngineData.java
ÎļþÒÑɾ³ý billion-main/src/main/java/com/billion/main/da/service/impl/DaMaterialCollectionServiceImpl.java
@@ -1,8 +1,22 @@ package com.billion.main.da.service.impl; import java.text.SimpleDateFormat; import java.util.List; import java.util.Objects; import cn.hutool.http.HttpRequest; import cn.hutool.http.HttpResponse; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.billion.main.bs.domain.BsBomChildInfo; import com.billion.main.bs.service.IBsBomChildInfoService; import com.billion.main.constant.Constants; import com.billion.main.da.domain.CollectMT; import com.billion.main.da.domain.CollectTrack; import com.billion.main.om.domain.OmOrderScheduling; import com.billion.main.om.domain.OmProductionOrderInfo; import com.billion.main.om.service.IOmOrderSchedulingService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.billion.main.da.mapper.DaMaterialCollectionMapper; @@ -15,12 +29,15 @@ * @author Billion-Yi * @date 2024-11-22 */ @Slf4j @Service public class DaMaterialCollectionServiceImpl extends ServiceImpl<DaMaterialCollectionMapper, DaMaterialCollection> implements IDaMaterialCollectionService { @Autowired private DaMaterialCollectionMapper daMaterialCollectionMapper; public IBsBomChildInfoService bsBomChildInfoService; public IOmOrderSchedulingService omOrderSchedulingService; /** * æ¥è¯¢ç©æéé * @@ -54,7 +71,55 @@ @Override public void insertDaMaterialCollection(DaMaterialCollection daMaterialCollection) { this.save(daMaterialCollection); String url = "http://172.40.161.71:8890/Interaction/CollectMT"; CollectMT collectMT = new CollectMT(); DaMaterialCollection daMaterialCollection1 = new DaMaterialCollection(); BsBomChildInfo bsBomChildInfo = new BsBomChildInfo(); OmOrderScheduling omOrderScheduling = new OmOrderScheduling(); daMaterialCollection1.setSfcCode(daMaterialCollection.getSfcCode()); daMaterialCollection1.setLocationCode(daMaterialCollection.getLocationCode()); daMaterialCollection1.setParamValue(daMaterialCollection.getParamValue()); daMaterialCollection1.setCollectTime(daMaterialCollection.getCollectTime()); omOrderScheduling.setSfcCode(daMaterialCollection.getSfcCode()); if(Objects.equals(daMaterialCollection.getLocationCode(), "OP130") || Objects.equals(daMaterialCollection.getLocationCode(), "OP020")){ daMaterialCollection1.setMaterialCode(""); daMaterialCollection1.setMaterialName(daMaterialCollection.getMaterialName()); collectMT.setMaterial1(daMaterialCollection1.getParamName()); }else{ bsBomChildInfo.setLocationCode(daMaterialCollection.getLocationCode()); String materialCode = daMaterialCollection.getSfcCode().length() > 9 ? daMaterialCollection.getSfcCode().substring(0, daMaterialCollection.getSfcCode().length() - 9) : daMaterialCollection.getSfcCode(); bsBomChildInfo.setMaterialCode(materialCode); List<BsBomChildInfo> bsBomChildInfoList = bsBomChildInfoService.selectBsBomChildInfoList(bsBomChildInfo); daMaterialCollection1.setMaterialCode(bsBomChildInfoList.get(0).getMaterialCode()); daMaterialCollection1.setMaterialName(bsBomChildInfoList.get(0).getMaterialName()); collectMT.setMaterial1(bsBomChildInfoList.get(0).getMaterialName()); } if(Objects.equals(daMaterialCollection.getLocationCode(), Constants.PLC1.toString()) || Objects.equals(daMaterialCollection.getLocationCode(), Constants.C005) || Objects.equals(daMaterialCollection.getLocationCode(), Constants.C060)) {omOrderScheduling.setRemarks("Head");} else if(Objects.equals(daMaterialCollection.getLocationCode(), Constants.PLC2.toString()) || Objects.equals(daMaterialCollection.getLocationCode(), Constants.OP005) || Objects.equals(daMaterialCollection.getLocationCode(), Constants.OP310)) {omOrderScheduling.setRemarks("Body");} else if(Objects.equals(daMaterialCollection.getLocationCode(), Constants.P010)) {omOrderScheduling.setRemarks("Pre");} List<OmOrderScheduling> omOrderSchedulingList = omOrderSchedulingService.selectOmOrderSchedulingList(omOrderScheduling); collectMT.setOrderNumber(omOrderSchedulingList.get(0).getWorkOrderNo()); collectMT.setEngineNumber(daMaterialCollection.getSfcCode()); collectMT.setStationName(daMaterialCollection.getLocationCode()); collectMT.setPartsNumber(daMaterialCollection.getParamValue()); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); collectMT.setInsertTime(sdf.format(daMaterialCollection.getCollectTime())); try { HttpResponse response = HttpRequest.post(url).body(JSONUtil.toJsonStr(collectMT)).execute(); log.info("æ¨éæåï¼ååºæ¥æ: {}", response); } catch (Exception e) { // è®°å½æ¥å¿ log.error("æ¨é失败"); } this.save(daMaterialCollection1); // this.save(daMaterialCollection); } /** billion-main/src/main/java/com/billion/main/da/service/impl/DaParamCollectionServiceImpl.java
@@ -1,8 +1,17 @@ package com.billion.main.da.service.impl; import cn.hutool.http.HttpRequest; import cn.hutool.http.HttpResponse; import cn.hutool.json.JSONUtil; import com.billion.main.api.domain.CollectQualityData; import com.billion.main.constant.Constants; import com.billion.main.da.domain.CollectTrack; import com.billion.main.da.domain.DaParamCollection; import com.billion.main.da.mapper.DaParamCollectionMapper; import com.billion.main.da.service.IDaParamCollectionService; import com.billion.main.om.domain.OmOrderScheduling; import com.billion.main.om.service.IOmOrderSchedulingService; import lombok.extern.slf4j.Slf4j; import org.apache.ibatis.session.ExecutorType; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; @@ -10,7 +19,9 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.text.SimpleDateFormat; import java.util.List; import java.util.Objects; /** * åæ°ééServiceä¸å¡å±å¤ç @@ -18,6 +29,7 @@ * @author Billion-Yi * @date 2024-11-20 */ @Slf4j @Service public class DaParamCollectionServiceImpl implements IDaParamCollectionService { @@ -26,9 +38,9 @@ @Autowired private IDaParamCollectionService daParamCollectionService; @Resource private SqlSessionFactory sqlSessionFactory; public IOmOrderSchedulingService omOrderSchedulingService; @@ -65,6 +77,37 @@ @Override public int insertDaParamCollection(DaParamCollection daParamCollection) { String url = "http://172.40.161.71:8890/Interaction/CollectQualityData"; OmOrderScheduling omOrderScheduling = new OmOrderScheduling(); CollectQualityData collectQualityData = new CollectQualityData(); omOrderScheduling.setSfcCode(daParamCollection.getSfcCode()); if(Objects.equals(daParamCollection.getLocationCode(), Constants.PLC1.toString()) || Objects.equals(daParamCollection.getLocationCode(), Constants.C005) || Objects.equals(daParamCollection.getLocationCode(), Constants.C060)) {omOrderScheduling.setRemarks("Head");} else if(Objects.equals(daParamCollection.getLocationCode(), Constants.PLC2.toString()) || Objects.equals(daParamCollection.getLocationCode(), Constants.OP005) || Objects.equals(daParamCollection.getLocationCode(), Constants.OP310)) {omOrderScheduling.setRemarks("Body");} else if(Objects.equals(daParamCollection.getLocationCode(), Constants.P010)) {omOrderScheduling.setRemarks("Pre");} List<OmOrderScheduling> omOrderSchedulingList = omOrderSchedulingService.selectOmOrderSchedulingList(omOrderScheduling); collectQualityData.setOrderNumber(omOrderSchedulingList.get(0).getWorkOrderNo()); collectQualityData.setStationName(daParamCollection.getLocationCode()); collectQualityData.setEngineNumber(daParamCollection.getSfcCode()); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); collectQualityData.setInsertTime(sdf.format(daParamCollection.getCollectTime())); collectQualityData.setDetectionName(daParamCollection.getParamName()); collectQualityData.setActualValue(daParamCollection.getParamValue()); try { HttpResponse response = HttpRequest.post(url).body(JSONUtil.toJsonStr(collectQualityData)).execute(); log.info("æ¨éæåï¼ååºæ¥æ: {}", response); } catch (Exception e) { // è®°å½æ¥å¿ log.error("æ¨éå¤±è´¥ï¼ sfcCode: {}",collectQualityData.getFactoryNumber()); } return daParamCollectionMapper.insertDaParamCollection(daParamCollection); } billion-main/src/main/java/com/billion/main/da/service/impl/DaStationCollectionServiceImpl.java
@@ -1,13 +1,24 @@ package com.billion.main.da.service.impl; import cn.hutool.http.HttpRequest; import cn.hutool.http.HttpResponse; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.billion.common.utils.http.HttpUtils; import com.billion.main.constant.Constants; import com.billion.main.da.domain.DaStationCollection; import com.billion.main.da.domain.CollectTrack; import com.billion.main.da.mapper.DaStationCollectionMapper; import com.billion.main.da.service.IDaStationCollectionService; import com.billion.main.om.domain.OmOrderScheduling; import com.billion.main.om.service.IOmOrderSchedulingService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.text.SimpleDateFormat; import java.util.List; import java.util.Objects; /** * è¿ç«ééServiceä¸å¡å±å¤ç @@ -15,12 +26,13 @@ * @author HDY * @date 2025-02-12 */ @Slf4j @Service public class DaStationCollectionServiceImpl extends ServiceImpl<DaStationCollectionMapper, DaStationCollection> implements IDaStationCollectionService { @Autowired private DaStationCollectionMapper daStationCollectionMapper; public IOmOrderSchedulingService omOrderSchedulingService; /** * æ¥è¯¢è¿ç«éé * @@ -51,12 +63,65 @@ * @param daStationCollection è¿ç«éé * @return ç»æ */ // @Override // public int insertDaStationCollection(DaStationCollection daStationCollection) // { //// EngineData engineData = new EngineData(); //// engineData.setEngineType("1"); //// String s = HttpUtils.sendPost("http://172.40.161.71:8080/prod-api/CollectTrack", JSONUtil.toJsonStr(engineData)); // return daStationCollectionMapper.insertDaStationCollection(daStationCollection); // } @Override public int insertDaStationCollection(DaStationCollection daStationCollection) { // EngineData engineData = new EngineData(); // engineData.setEngineType("1"); // String s = HttpUtils.sendPost("http://172.40.161.71:8080/prod-api/CollectTrack", JSONUtil.toJsonStr(engineData)); public int insertDaStationCollection(DaStationCollection daStationCollection) { String url = "http://172.40.161.71:8890/Interaction/CollectTrack"; OmOrderScheduling omOrderScheduling = new OmOrderScheduling(); // å建EngineDataå¯¹è±¡å¹¶è®¾ç½®åæ®µå¼ CollectTrack collectTrack = new CollectTrack(); omOrderScheduling.setSfcCode(daStationCollection.getSfcCode()); if(Objects.equals(daStationCollection.getLocationCode(), Constants.PLC1.toString()) || Objects.equals(daStationCollection.getLocationCode(), Constants.C005) || Objects.equals(daStationCollection.getLocationCode(), Constants.C060)) {omOrderScheduling.setRemarks("Head");} else if(Objects.equals(daStationCollection.getLocationCode(), Constants.PLC2.toString()) || Objects.equals(daStationCollection.getLocationCode(), Constants.OP005) || Objects.equals(daStationCollection.getLocationCode(), Constants.OP310)) {omOrderScheduling.setRemarks("Body");} else if(Objects.equals(daStationCollection.getLocationCode(), Constants.P010)) {omOrderScheduling.setRemarks("Pre");} List<OmOrderScheduling> omOrderSchedulingList = omOrderSchedulingService.selectOmOrderSchedulingList(omOrderScheduling); collectTrack.setOrderNumber(omOrderSchedulingList.get(0).getWorkOrderNo()); collectTrack.setStationName(daStationCollection.getLocationCode()); // å¤çæ¥ææ¶é´å段 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); collectTrack.setInsertTime(sdf.format(daStationCollection.getInboundTime())); String factoryNumber = daStationCollection.getSfcCode(); collectTrack.setFactoryNumber(factoryNumber); // EngineType设置为FactoryNumberå»é¤åä¹ä½ // å设æ¤å¤ä¸ºåfactoryNumberçåé¨åä½ä¸ºEngineType String engineType = daStationCollection.getSfcCode().length() > 9 ? daStationCollection.getSfcCode().substring(0, daStationCollection.getSfcCode().length() - 9) : daStationCollection.getSfcCode(); collectTrack.setEngineType(engineType); // EngineNumber设置为FactoryNumberçåä¹ä½ // å设æ¤å¤ä¸ºåfactoryNumberçåä¹ä½å符 String engineNumber = daStationCollection.getSfcCode().length() >= 9 ? daStationCollection.getSfcCode().substring(daStationCollection.getSfcCode().length() - 9) : daStationCollection.getSfcCode(); collectTrack.setEngineNumber(engineNumber); // CycleTime设置为outboundTimeåå»inboundTimeçæ¶é´å·®ï¼æ ¼å¼å为åç¬¦ä¸²ï¼ long cycleTimeMillis = daStationCollection.getOutboundTime().getTime() - daStationCollection.getInboundTime().getTime(); long cycleTimeSeconds = cycleTimeMillis / 1000; // å设以ç§ä¸ºåä½ collectTrack.setCycleTime(String.valueOf(cycleTimeSeconds)); collectTrack.setFlag(Integer.parseInt(daStationCollection.getStatus())); // åéPOSTè¯·æ± try { HttpResponse response = HttpRequest.post(url).body(JSONUtil.toJsonStr(collectTrack)).execute(); log.info("æ¨éæåï¼ååºæ¥æ: {}", response); } catch (Exception e) { // è®°å½æ¥å¿ log.error("æ¨éå¤±è´¥ï¼ sfcCode: {}",collectTrack.getFactoryNumber()); } // æ 论æ¨éæåä¸å¦ï¼é½ç»§ç»æ§è¡æ°æ®åºæå ¥æä½ return daStationCollectionMapper.insertDaStationCollection(daStationCollection); } billion-main/src/main/java/com/billion/main/plcServer/CustomRunner.java
@@ -1,6 +1,7 @@ package com.billion.main.plcServer; import com.billion.main.bs.service.IBsBomChildInfoService; import com.billion.main.bs.service.IBsLineInfoService; import com.billion.main.constant.Constants; import com.billion.main.da.service.IDaCollectionParamConfService; import com.billion.main.da.service.IDaMaterialCollectionService; @@ -38,7 +39,8 @@ public IDaMaterialCollectionService daMaterialCollectionService; @Autowired public ISysCountService sysCountService; @Autowired public IBsLineInfoService bsLineInfoService; @Override public void run(ApplicationArguments args) throws Exception { @@ -104,14 +106,16 @@ Constants.PLC4.add(Constants.OP030); Constants.PLC4.add(Constants.OP050); Constants.PLC4.add(Constants.OP110); Constants.PLC4.add(Constants.OP070_1); Constants.PLC4.add(Constants.OP070); Constants.PLC4.add(Constants.OP075); Constants.PLC4.add(Constants.OP080); Constants.PLC4.add(Constants.OP140); //ä¸çº¿å·¥ä½ Constants.ONLINE.add(Constants.C005); Constants.ONLINE.add(Constants.OP005); //ä¸çº¿å·¥ä½ Constants.OFFLINE.add(Constants.C060); Constants.OFFLINE.add(Constants.OP300); Constants.OFFLINE.add(Constants.OP310); @@ -125,11 +129,12 @@ bsBomChildInfoService, daCollectionParamConfService, daMaterialCollectionService, sysCountService); sysCountService, bsLineInfoService); List<String> lists = getList(); System.out.println("订é å 容ï¼"+lists); miloService.subscriptionFromOpcUa(lists,OPCUaSubscription); miloService.subscriptionFromOpcUa(lists,50,OPCUaSubscription); } @@ -203,20 +208,22 @@ lists.add("PLC4.C040.RecordData"); lists.add("PLC4.OP030.RecordData"); lists.add("PLC4.OP050.RecordData"); lists.add("PLC4.OP070_1.RecordData"); lists.add("PLC3.OP110.RecordData"); lists.add("PLC3.OP140.RecordData"); lists.add("PLC4.OP070.RecordData"); lists.add("PLC4.OP075.RecordData"); lists.add("PLC4.OP080.RecordData"); lists.add("PLC4.OP110.RecordData"); lists.add("PLC4.OP140.RecordData"); // //TEST // lists.add("TEST.C005.RecordData"); // lists.add("TEST.C005.WorkOrderRequest"); // lists.add("TEST.C060.RecordData"); // lists.add("TEST.OP005.RecordData"); // lists.add("TEST.OP005.WorkOrderRequest"); // lists.add("TEST.OP010.RecordData"); // lists.add("TEST.OP310.RecordData"); // lists.add("TEST.P010.RecordData"); // lists.add("TEST.P010.WorkOrderRequest"); //TEST lists.add("TEST.C005.RecordData"); lists.add("TEST.C005.WorkOrderRequest"); lists.add("TEST.C060.RecordData"); lists.add("TEST.OP005.RecordData"); lists.add("TEST.OP005.WorkOrderRequest"); lists.add("TEST.OP010.RecordData"); lists.add("TEST.OP300.RecordData"); lists.add("TEST.P010.RecordData"); lists.add("TEST.P010.WorkOrderRequest"); return lists; } billion-main/src/main/java/com/billion/main/plcServer/sub/OPCUaSubscription.java
@@ -2,7 +2,9 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.billion.main.bs.domain.BsBomChildInfo; import com.billion.main.bs.domain.BsLineInfo; import com.billion.main.bs.service.IBsBomChildInfoService; import com.billion.main.bs.service.IBsLineInfoService; import com.billion.main.constant.Constants; import com.billion.main.da.domain.DaCollectionParamConf; import com.billion.main.da.domain.DaMaterialCollection; @@ -46,6 +48,8 @@ public IDaMaterialCollectionService daMaterialCollectionService; public ISysCountService sysCountService; public IBsLineInfoService bsLineInfoService; public OPCUaSubscription(MiloService miloService, IDaParamCollectionService daParamCollectionService, @@ -55,7 +59,8 @@ IBsBomChildInfoService bsBomChildInfoService, IDaCollectionParamConfService daCollectionParamConfService, IDaMaterialCollectionService daMaterialCollectionService, ISysCountService sysCountService ISysCountService sysCountService, IBsLineInfoService bsLineInfoService ) { OPCUaSubscription.miloService = miloService; this.daParamCollectionService = daParamCollectionService; @@ -66,7 +71,9 @@ this.daCollectionParamConfService = daCollectionParamConfService; this.daMaterialCollectionService = daMaterialCollectionService; this.sysCountService = sysCountService; this.bsLineInfoService = bsLineInfoService; } @Override public void onSubscribe(String identifier, Object value) { log.info("å°åï¼"+identifier+"å¼ï¼"+value); @@ -101,6 +108,7 @@ } //1.2//é¤é¦å·¥ç«ææå·¥ç« else if( Constants.TEST.contains(device) || Constants.PLC1.contains(device) || Constants.PLC2.contains(device) || Constants.PLC3.contains(device) || @@ -111,11 +119,56 @@ Object SFCCode = miloService.readFromOpcUa(thoroughfare + "." + device + ".SFCCode").getValue(); if (SFCCode == null ) { miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(13).build()); log.info( "è¿ç«å¤±è´¥ï¼å°åSFCCode为空"); } else { OmOrderScheduling omOrderScheduling = new OmOrderScheduling(); omOrderScheduling.setSfcCode(SFCCode.toString()); List<OmOrderScheduling> resultList = omOrderSchedulingService.selectOmOrderSchedulingList(omOrderScheduling); if(resultList != null){ if(Constants.OP010.equals(device)||Constants.OP310.equals(device)){ String EngineType =resultList.get(0).getProductCode(); String SerialNumber = SFCCode.toString().substring(EngineType.length()); miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".EngineType").value(EngineType).build()); miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".SerialNumber").value(SerialNumber).build()); } //9Lå卿ºæ¶è¶è½¨è¿¹ä¸å else if(Constants.OP080.equals(device) && Constants.PLC_4.equals(thoroughfare)){ // 1. åå§åå·¥å对象并æ¥è¯¢å·¥åä¿¡æ¯ String workOrderNo = resultList.get(0).getWorkOrderNo(); OmProductionOrderInfo queryOrder = new OmProductionOrderInfo(); queryOrder.setWorkOrderNo(workOrderNo); List<OmProductionOrderInfo> orderList = omProductionOrderInfoService.selectOmProductionOrderInfoList(queryOrder); // 2. å¤æç±»å忝é»è¾ String engineName = orderList.get(0).getEngineName(); if (!"9L".equals(engineName)) { // é9Lç´æ¥å0 miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".GlueType").value(0).build()); } else { // 3. æ¥è¯¢äº§çº¿é ç½®ç两æ¡é¢ç½®æ°æ® BsLineInfo lineQuery = new BsLineInfo(); lineQuery.setLineCode(engineName); // å设éè¿lineCode=9Lè·åä¸¤æ¡æ°æ® List<BsLineInfo> configuredLines = bsLineInfoService.selectBsLineInfoList(lineQuery); // ç¬¬ä¸æ¡é ç½®æ°æ®çæ ¡éª BsLineInfo firstLine = configuredLines.get(0); BsBomChildInfo checkFirst = new BsBomChildInfo(); checkFirst.setMaterialCode(firstLine.getLineName()); checkFirst.setBomCode(workOrderNo); List<BsBomChildInfo> firstCheckList = bsBomChildInfoService.selectBsBomChildInfoList(checkFirst); if (firstCheckList.size() == 1) { miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".GlueType").value(1).build()); } else { // ç¬¬äºæ¡é ç½®æ°æ®çæ ¡éª BsLineInfo secondLine = configuredLines.get(1); BsBomChildInfo checkSecond = new BsBomChildInfo(); checkSecond.setMaterialCode(secondLine.getLineName()); checkSecond.setBomCode(workOrderNo); List<BsBomChildInfo> secondCheckList = bsBomChildInfoService.selectBsBomChildInfoList(checkSecond); if (secondCheckList.size() == 1) { miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".GlueType").value(2).build()); } } } } String getWorkOrderNo = resultList.get(0).getWorkOrderNo(); BsBomChildInfo bsbomChildInfo= new BsBomChildInfo(); bsbomChildInfo.setLocationCode(device); @@ -124,6 +177,7 @@ formula(thoroughfare, device, bsbomChildInfo); miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(11).build()); }else { log.info( "è¿ç«å¤±è´¥ï¼æªæ£ç´¢å°SFCCode:{}对åºå·¥å" ,SFCCode); miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(13).build()); } } @@ -134,25 +188,26 @@ OmOrderScheduling omOrderScheduling = new OmOrderScheduling(); Object SFCCode = miloService.readFromOpcUa(thoroughfare + "." + device + ".SFCCode").getValue(); //ä¸çº¿å·¥ä½ // if(Constants.ONLINE.contains(device) || Constants.TEST.equals(device) ){ if(Constants.ONLINE.contains(device)){ Object workOrderNumber = miloService.readFromOpcUa(thoroughfare + "." + device + ".WorkOrderNumber").getValue(); Object nowQty = miloService.readFromOpcUa(thoroughfare + "." + device + ".PalletID").getValue(); Object nowQty = miloService.readFromOpcUa(thoroughfare + "." + device + ".PalletID").getValue().toString(); Object EngineType = miloService.readFromOpcUa(thoroughfare + "." + device + ".EngineType").getValue().toString(); omOrderScheduling.setWorkOrderNo(workOrderNumber.toString()); omOrderScheduling.setNowQty(nowQty.toString()); omOrderScheduling.setSfcCode(SFCCode.toString()); omOrderScheduling.setProductCode(EngineType.toString()); omOrderScheduling.setStatus("1"); Date Time = new Date(); ReadWriteEntity TimeRead = miloService.readFromOpcUa(thoroughfare + "." + device + ".StartTime"); Time = format.parse(TimeUtil.test(TimeUtil.stringProcessing(TimeRead.getValue().toString()))); omOrderScheduling.setOnlineTime(Time); omOrderScheduling.setStatus("1"); //æçç»å®SFCCodeåå·¥åå产线 if(Constants.OP005.equals(device)){ omProductionOrderInfoService.updateBodyStatus1(); omOrderScheduling.setRemarks("Body"); sysCountService.updateSerialNumber(); OmProductionOrderInfo getBodyOrder2 = omProductionOrderInfoService.getBodyOrder(); if (Objects.equals(getBodyOrder2.getBodyQty(), getBodyOrder2.getPlanQty())){ if (Objects.equals(nowQty, getBodyOrder2.getPlanQty().toString())){ omProductionOrderInfoService.updateBodyStatus2(); } } @@ -161,7 +216,7 @@ omOrderScheduling.setRemarks("Head"); sysCountService.updateHeadNumber(); OmProductionOrderInfo getHeadOrder2 = omProductionOrderInfoService.getHeadOrder(); if (Objects.equals(getHeadOrder2.getHeadQty(), getHeadOrder2.getPlanQty())){ if (Objects.equals(nowQty, getHeadOrder2.getPlanQty().toString())){ omProductionOrderInfoService.updateHeadStatus2(); } } @@ -175,27 +230,27 @@ omOrderScheduling.setRemarks("Head"); omOrderScheduling.setSfcCode(SFCCode.toString()); List<OmOrderScheduling> omOrderSchedulingList = omOrderSchedulingService.selectOmOrderSchedulingList(omOrderScheduling); Object nowQty = omOrderSchedulingList.get(0).getNowQty(); String nowQty = omOrderSchedulingList.get(0).getNowQty(); Object WorkOrderNumber = omOrderSchedulingList.get(0).getWorkOrderNo(); omProductionOrderInfo.setWorkOrderNo(WorkOrderNumber.toString()); List<OmProductionOrderInfo> omProductionOrderInfoList = omProductionOrderInfoService.selectOmProductionOrderInfoList(omProductionOrderInfo); Object headQty = omProductionOrderInfoList.get(0).getHeadQty(); if (nowQty == headQty){ if (Objects.equals(nowQty, headQty.toString())){ UpdateWrapper<OmProductionOrderInfo> updateWrapper = new UpdateWrapper<>(); updateWrapper.eq("work_order_no", omProductionOrderInfoList.get(0).getWorkOrderNo()); updateWrapper.set("head_status", "2"); omProductionOrderInfoService.update(new OmProductionOrderInfo(),updateWrapper); } } else if (Constants.OP300.equals(device)) { } else if (Constants.OP310.equals(device)) { omOrderScheduling.setRemarks("Body"); omOrderScheduling.setSfcCode(SFCCode.toString()); List<OmOrderScheduling> omOrderSchedulingList = omOrderSchedulingService.selectOmOrderSchedulingList(omOrderScheduling); Object nowQty = omOrderSchedulingList.get(0).getNowQty(); String nowQty = omOrderSchedulingList.get(0).getNowQty(); Object WorkOrderNumber = omOrderSchedulingList.get(0).getWorkOrderNo(); omProductionOrderInfo.setWorkOrderNo(WorkOrderNumber.toString()); List<OmProductionOrderInfo> omProductionOrderInfoList = omProductionOrderInfoService.selectOmProductionOrderInfoList(omProductionOrderInfo); Object bodyQty = omProductionOrderInfoList.get(0).getBodyQty(); if (nowQty == bodyQty){ if (Objects.equals(nowQty, bodyQty.toString())){ UpdateWrapper<OmProductionOrderInfo> updateWrapper = new UpdateWrapper<>(); updateWrapper.eq("work_order_no", omProductionOrderInfoList.get(0).getWorkOrderNo()); updateWrapper.set("body_status", "2"); @@ -215,7 +270,7 @@ omProductionOrderInfo.setWorkOrderNo(WorkOrderNumber.toString()); List<OmProductionOrderInfo> omProductionOrderInfoList = omProductionOrderInfoService.selectOmProductionOrderInfoList(omProductionOrderInfo); Object preQty = omProductionOrderInfoList.get(0).getPreQty(); if (nowQty == preQty){ if (nowQty == preQty.toString()){ UpdateWrapper<OmProductionOrderInfo> updateWrapper = new UpdateWrapper<>(); updateWrapper.eq("work_order_no", omProductionOrderInfoList.get(0).getWorkOrderNo()); updateWrapper.set("pre_status", "2"); @@ -224,9 +279,58 @@ sysCountService.updatePreNumber(); omProductionOrderInfoService.updatePreStatus1(); OmProductionOrderInfo getPreOrder2 = omProductionOrderInfoService.getPreOrder(); if (Objects.equals(getPreOrder2.getPreQty(), getPreOrder2.getPlanQty())){ if (Objects.equals(nowQty, getPreOrder2.getPlanQty().toString())){ omProductionOrderInfoService.updatePreStatus2(); } }else if (Constants.OP020.equals(device)){ final SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // éå MaterialCode35 å° MaterialCode40 å ±6ç»æ°æ® for (int i = 35; i <= 40; i++) { // ä¿®æ¹å¾ªç¯èå´ // æå»ºOPC UAèç¹å°åï¼ä¾å¦ï¼PLC1.OP020.MaterialCode35ï¼ String nodeId = "PLC1." + device + ".MaterialCode" + i; // å建éé对象 DaMaterialCollection materialCollection = new DaMaterialCollection(); materialCollection.setSfcCode(SFCCode.toString()); materialCollection.setLocationCode(device); // è®¾ç½®åæ°åç§°ï¼æ´»å¡1å°æ´»å¡6ï¼ int pistonNumber = i - 34; // 35â1, 36â2...40â6 materialCollection.setParamName("æ´»å¡" + pistonNumber); // éè¿OPC UA读ååæ°å¼ ReadWriteEntity dataRead = miloService.readFromOpcUa(nodeId); if (dataRead != null && dataRead.getValue() != null) { materialCollection.setParamValue(dataRead.getValue().toString()); } else { materialCollection.setParamValue("N/A"); // å¤çç©ºå¼æ åµ } Date collectTime = new Date(); ReadWriteEntity collectTimeRead = miloService.readFromOpcUa(thoroughfare + "." + device + ".StopTime");//è¿ç«æ¶é´ collectTime = format.parse(TimeUtil.test(TimeUtil.stringProcessing(collectTimeRead.getValue().toString()))); materialCollection.setCollectTime( collectTime); // æå ¥æ°æ®åº daMaterialCollectionService.insertDaMaterialCollection(materialCollection); } }else if (Constants.OP130.equals(device)){ final SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // éå MaterialCode35 å° MaterialCode40 å ±6ç»æ°æ® String nodeId = "PLC1." + device + ".MaterialCode35" ; // å建éé对象 DaMaterialCollection materialCollection = new DaMaterialCollection(); materialCollection.setSfcCode(SFCCode.toString()); materialCollection.setLocationCode(device); materialCollection.setParamName("缸çç "); // éè¿OPC UA读ååæ°å¼ ReadWriteEntity dataRead = miloService.readFromOpcUa(nodeId); if (dataRead != null && dataRead.getValue() != null) { materialCollection.setParamValue(dataRead.getValue().toString()); } else { materialCollection.setParamValue("N/A"); // å¤çç©ºå¼æ åµ } Date collectTime = new Date(); ReadWriteEntity collectTimeRead = miloService.readFromOpcUa(thoroughfare + "." + device + ".StopTime");//è¿ç«æ¶é´ collectTime = format.parse(TimeUtil.test(TimeUtil.stringProcessing(collectTimeRead.getValue().toString()))); materialCollection.setCollectTime( collectTime); // æå ¥æ°æ®åº daMaterialCollectionService.insertDaMaterialCollection(materialCollection); } //åºç«ä¿å DaStationCollection daStationCollection = new DaStationCollection(); @@ -270,7 +374,7 @@ daMaterialCollectionService.insertDaMaterialCollection(materialCollection); } else { log.debug("éé项为空: {}", gatherAddress); log.info("éé项为空: {}", gatherAddress); } } } @@ -296,7 +400,7 @@ daParamCollectionService.insertDaParamCollection(paramCollection); } else { log.debug("éé项为空: {}", gatherAddress); log.info("éé项为空: {}", gatherAddress); } } } @@ -306,6 +410,9 @@ log.error(e.getMessage()); } } //é¦å·¥ç«ä¸åå·¥å,å¹¶çæSNç private static final String[] MONTH = {"A","B","C","D","E","F","G","H","I","J","K","L"}; @@ -333,8 +440,11 @@ String A4 = MONTH[LocalDateTime.now().getMonthValue() - 1];// è·åå½åæä»½ï¼1-12ï¼ String A5 = String.format("%05d", serialNumber.getSerialNumber()); String SFCCode = A1 + A2 + A3+ A4 + A5; String SerialNumber = A2 + A3+ A4 + A5; miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".SerialNumber").value(SerialNumber).build()); miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".SFCCode").value(SFCCode).build()); miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".MESSFCCode").value(SFCCode).build()); log.info("SFCCodeï¼{}ä¸åæå",SFCCode); }else{ sysCountService.clean(); sysCountService.updateYear(); @@ -344,8 +454,11 @@ String A4 = MONTH[LocalDateTime.now().getMonthValue() - 1];// è·åå½åæä»½ï¼1-12ï¼ String A5 = String.format("%05d", sysCountService.getSerialNumber().getSerialNumber()); String SFCCode = A1 + A2 + newA3+ A4 + A5; String SerialNumber = A2 + newA3+ A4 + A5; miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".SerialNumber").value(SerialNumber).build()); miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".SFCCode").value(SFCCode).build()); miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".MESSFCCode").value(SFCCode).build()); log.info("SFCCodeï¼{}ä¸åæå",SFCCode); } // æ´æ° WorkOrderRequestDone å°åå BsBomChildInfo bsbomChildInfo= new BsBomChildInfo(); @@ -362,8 +475,10 @@ String PalletID = String.valueOf(getBodyOrder.getBodyQty() + 1); miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".PalletID").value(PalletID).build()); miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".WorkOrderRequestDone").value(11).build()); log.info("å·¥ä½{}请æ±å·¥åæå",device); } else{ log.info("请æ±å·¥åå¤±è´¥ï¼æªæ£ç´¢å°å·¥å"); miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".WorkOrderRequestDone").value(12).build()); } } else if (Constants.C005.equals(device)) { @@ -386,6 +501,7 @@ String SFCCode = A1 + A2 + A3+ A4 + A5; miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".SFCCode").value(SFCCode).build()); miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".MESSFCCode").value(SFCCode).build()); log.info("SFCCodeï¼{}ä¸åæå",SFCCode); }else{ sysCountService.clean(); sysCountService.updateYear(); @@ -397,6 +513,7 @@ String SFCCode = A1 + A2 + newA3+ A4 + A5; miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".SFCCode").value(SFCCode).build()); miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".MESSFCCode").value(SFCCode).build()); log.info("SFCCodeï¼{}ä¸åæå",SFCCode); } // æ´æ° WorkOrderRequestDone å°åå BsBomChildInfo bsbomChildInfo= new BsBomChildInfo(); @@ -413,8 +530,10 @@ String PalletID = String.valueOf(getHeadOrder.getHeadQty() + 1); miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".PalletID").value(PalletID).build()); miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".WorkOrderRequestDone").value(11).build()); log.info("å·¥ä½{}请æ±å·¥åæå",device); } else{ log.info("请æ±å·¥åå¤±è´¥ï¼æªæ£ç´¢å°å¯¹åºå·¥å"); miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".WorkOrderRequestDone").value(12).build()); } } else if (Constants.P010.equals(device)) { @@ -436,6 +555,7 @@ String SFCCode = A1 + A2 + A3+ A4 + A5; miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".SFCCode").value(SFCCode).build()); miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".MESSFCCode").value(SFCCode).build()); log.info("SFCCodeï¼{}ä¸åæå",SFCCode); }else{ sysCountService.clean(); sysCountService.updateYear(); @@ -447,6 +567,7 @@ String SFCCode = A1 + A2 + newA3+ A4 + A5; miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".SFCCode").value(SFCCode).build()); miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".MESSFCCode").value(SFCCode).build()); log.info("SFCCodeï¼{}ä¸åæå",SFCCode); } // æ´æ° WorkOrderRequestDone å°åå BsBomChildInfo bsbomChildInfo= new BsBomChildInfo(); @@ -463,8 +584,10 @@ String PalletID = String.valueOf(getPreOrder.getPreQty() + 1); miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".PalletID").value(PalletID).build()); miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".WorkOrderRequestDone").value(11).build()); log.info("å·¥ä½{}请æ±å·¥åæå",device); } else{ log.info("请æ±å·¥åå¤±è´¥ï¼æªæ£ç´¢å°å¯¹åºå·¥å"); miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".WorkOrderRequestDone").value(12).build()); } } billion-main/src/main/resources/mapper/da/DaMaterialCollectionMapper.xml
@@ -12,10 +12,12 @@ <result property="paramName" column="param_name" /> <result property="paramValue" column="param_value" /> <result property="collectTime" column="collect_time" /> <result property="materialCode" column="material_code" /> <result property="materialName" column="material_name" /> </resultMap> <sql id="selectDaMaterialCollectionVo"> select id, sfc_code, location_code, param_code, param_name, param_value, collect_time from da_material_collection select id, material_code, material_name, sfc_code, location_code, param_code, param_name, param_value, collect_time from da_material_collection </sql> <select id="selectDaMaterialCollectionList" parameterType="DaMaterialCollection" resultMap="DaMaterialCollectionResult"> @@ -25,6 +27,8 @@ <if test="locationCode != null and locationCode != ''"> and location_code like concat('%', #{locationCode}, '%')</if> <if test="paramCode != null and paramCode != ''"> and param_code like concat('%', #{paramCode}, '%')</if> <if test="paramName != null and paramName != ''"> and param_name like concat('%', #{paramName}, '%')</if> <if test="materialCode != null and materialCode != ''"> and material_code = #{materialCode}</if> <if test="materialName != null and materialName != ''"> and material_name like concat('%', #{materialName}, '%')</if> <if test="params.beginTime != null and params.beginTime != '' and params.endTime != null and params.endTime != ''"><!-- å¼å§æ¶é´æ£ç´¢ --> and collect_time BETWEEN #{params.beginTime} and #{params.endTime} </if> @@ -45,6 +49,8 @@ <if test="paramName != null">param_name,</if> <if test="paramValue != null">param_value,</if> <if test="collectTime != null">collect_time,</if> <if test="materialCode != null">material_code,</if> <if test="materialName != null">material_name,</if> </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> <if test="sfcCode != null">#{sfcCode},</if> @@ -53,6 +59,8 @@ <if test="paramName != null">#{paramName},</if> <if test="paramValue != null">#{paramValue},</if> <if test="collectTime != null">#{collectTime},</if> <if test="materialCode != null">#{materialCode},</if> <if test="materialName != null">#{materialName},</if> </trim> </insert> @@ -65,6 +73,8 @@ <if test="paramName != null">param_name = #{paramName},</if> <if test="paramValue != null">param_value = #{paramValue},</if> <if test="collectTime != null">collect_time = #{collectTime},</if> <if test="materialCode != null">material_code = #{materialCode},</if> <if test="materialName != null">material_name = #{materialName},</if> </trim> where id = #{id} </update> billion-main/src/main/resources/mapper/om/OmOrderSchedulingMapper.xml
@@ -60,6 +60,7 @@ <if test="updateBy != null">update_by,</if> <if test="updateTime != null">update_time,</if> <if test="remarks != null">remarks,</if> <if test="nowQty != null">now_qty,</if> </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> <if test="workOrderNo != null and workOrderNo != ''">#{workOrderNo},</if> @@ -74,6 +75,7 @@ <if test="updateBy != null">#{updateBy},</if> <if test="updateTime != null">#{updateTime},</if> <if test="remarks != null">#{remarks},</if> <if test="nowQty != null">#{nowQty},</if> </trim> </insert> billion-main/src/main/resources/mapper/om/OmProductionOrderInfoMapper.xml
@@ -41,7 +41,6 @@ SELECT TOP 1 * FROM om_production_order_info WHERE body_status IN (0,1) AND body_qty != plan_qty ORDER BY plan_start_time ASC </select> <select id="updateBodyStatus1" resultType="OmProductionOrderInfo"> @@ -69,7 +68,6 @@ SELECT TOP 1 * FROM om_production_order_info WHERE head_status IN (0,1) AND head_qty != plan_qty ORDER BY plan_start_time ASC </select> <select id="updateHeadStatus1" resultType="OmProductionOrderInfo"> @@ -97,7 +95,6 @@ SELECT TOP 1 * FROM om_production_order_info WHERE pre_status IN (0,1) AND pre_qty != plan_qty ORDER BY plan_start_time ASC </select> <select id="updatePreStatus1" resultType="OmProductionOrderInfo"> billion-ui/src/utils/request.js
@@ -15,7 +15,7 @@ // å建axioså®ä¾ const service = axios.create({ // axiosä¸è¯·æ±é ç½®æbaseURLé项ï¼è¡¨ç¤ºè¯·æ±URLå ¬å ±é¨å baseURL: `http://127.0.0.1:8081`, baseURL: process.env.VUE_APP_BASE_API, // è¶ æ¶ timeout: 10000 }) billion-ui/vue.config.js
@@ -37,7 +37,7 @@ proxy: { // detail: https://cli.vuejs.org/config/#devserver-proxy [process.env.VUE_APP_BASE_API]: { target: `http://127.0.0.1:8081`, target: `http://localhost:8081`, changeOrigin: true, pathRewrite: { ['^' + process.env.VUE_APP_BASE_API]: ''