QuietShadow il y a 3 ans
Parent
commit
cf7c5b7926

+ 82 - 0
src/main/java/com/steerinfo/ems/Utils/MosaicUtils.java

@@ -0,0 +1,82 @@
+package com.steerinfo.ems.Utils;
+
+import com.client.MswebserviceStub;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.rmi.RemoteException;
+
+/**
+ * @author Shadow
+ * @create 2021-10-27 22:23
+ * @project xt-ems-api-new
+ */
+public class MosaicUtils {
+    private static final Logger logger = LoggerFactory.getLogger(MosaicUtils.class);
+
+    static MswebserviceStub.UserInfo userInfo = new MswebserviceStub.UserInfo();
+
+    public static void SetOpenConnSample(MswebserviceStub stub) {
+        try {
+            userInfo = new MswebserviceStub.UserInfo();
+            userInfo.setMdbName("scada");
+            userInfo.setMdbInstance("master");
+            userInfo.setComText("");
+            userInfo.setMIP("");
+            userInfo.setMUserID("");
+            userInfo.setMUserName("mosaic");
+            userInfo.setMUserPass("mosaic");
+            MswebserviceStub.WSConnectOpen openReq = new MswebserviceStub.WSConnectOpen();
+            MswebserviceStub.WSConnectOpenResponse openResp = null;
+            // Open
+            openReq.setUserInfo(userInfo);
+
+            openResp = stub.wSConnectOpen(openReq);
+            logger.info("打开mosaic链接成功");
+            // Save UserID
+            userInfo.setMUserID(openResp.getId());
+
+        } catch (RemoteException e) {
+            // TODO Auto-generated catch block
+            e.printStackTrace();
+            logger.info("打开mosaic链接失败");
+        }
+
+    }
+
+    // 更新点的值
+    public static void SetUpdateValue(MswebserviceStub stub, String sql) {
+        // 0x0002:5365:2e
+        MswebserviceStub.DataResult queryData = new MswebserviceStub.DataResult();
+
+        try {
+
+            //String sql = "update Ana set(Eng,User)=(100,0x0002:5365:2e) where AltId='PUMP1_SPEED' ";
+            // Dig表为 update Dig set(Cs,User)=(1,0x0002:5365:2e) update Ana set Eng='1812482' where Equip='0x06f4:0bfe:1e' AND Quantity='0x006a:489c:22'
+
+            userInfo.setComText(sql);
+            MswebserviceStub.WSQueryExecute query = new MswebserviceStub.WSQueryExecute();
+            query.setUserInfo(userInfo);
+            queryData = stub.wSQueryExecute(query);
+            //logger.info(queryData.getData());
+
+        } catch (RemoteException e) {
+            // TODO Auto-generated catch block
+            e.printStackTrace();
+        }
+    }
+
+    // 关闭mosaic链接
+    public static void SetCloseConnSample(MswebserviceStub stub) {
+        MswebserviceStub.WSConnectClose closeReq = new MswebserviceStub.WSConnectClose();
+        closeReq.setUserInfo(userInfo);
+        try {
+            stub.wSConnectClose(closeReq);
+            userInfo = null;
+            logger.info("关闭mosaic链接成功");
+        } catch (RemoteException e) {
+            // TODO Auto-generated catch block
+            e.printStackTrace();
+        }
+    }
+}

+ 19 - 0
src/main/java/com/steerinfo/ems/emsscqklg/mapper/LgReal.xml

@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.steerinfo.ems.emsscqklg.mapper.LgRealMapper">
+    <resultMap id="BaseResultMap" type="com.steerinfo.ems.emsscqklg.model.LgReal">
+        <id column="ALTID" jdbcType="VARCHAR" property="altId"/>
+<!--        <id column="TSRCL" jdbcType="VARCHAR" property="rcl"/>-->
+<!--        <id column="ZT" jdbcType="VARCHAR" property="zt"/>-->
+        <id column="ENG" jdbcType="VARCHAR" property="eng"/>
+<!--        <id column="GPYLJ" jdbcType="VARCHAR" property="gpYlj"/>-->
+<!--        <id column="GPNLJ" jdbcType="VARCHAR" property="gpNlj"/>-->
+<!--        <id column="TSYLJ" jdbcType="VARCHAR" property="tsYlj"/>-->
+<!--        <id column="TSNLJ" jdbcType="VARCHAR" property="tsYlj"/>-->
+    </resultMap>
+    <select id="QueryLgReals"  resultMap="BaseResultMap" >
+        SELECT ALTID, ENG
+        FROM JYMES.V_EMS_LG_BOF01 UNPIVOT (	ENG FOR ALTID IN (
+        LG_MES_1ZL_REAL021, LG_MES_1ZL_REAL022, LG_MES_1ZL_REAL023, LG_MES_1ZL_REAL024, LG_MES_1ZL_REAL026, LG_MES_1ZL_REAL027, LG_MES_1ZL_REAL028, LG_MES_1ZL_REAL029, LG_MES_1ZL_REAL030, LG_MES_1ZL_REAL031, LG_MES_1ZL_REAL032, LG_MES_1ZL_REAL033, LG_MES_1ZL_REAL034, LG_MES_1ZL_REAL035, LG_MES_1ZL_REAL036, LG_MES_1ZL_REAL037, LG_MES_1ZL_REAL038, LG_MES_1ZL_REAL039, LG_MES_1ZL_REAL040, LG_MES_1ZL_REAL041, LG_MES_1ZL_REAL042, LG_MES_1ZL_REAL043, LG_MES_1ZL_REAL044, LG_MES_1ZL_REAL045, LG_MES_1ZL_REAL046, LG_MES_1ZL_REAL047, LG_MES_1ZL_REAL048, LG_MES_1ZL_REAL049 ))
+    </select>
+</mapper>

+ 14 - 0
src/main/java/com/steerinfo/ems/emsscqklg/mapper/LgRealMapper.java

@@ -0,0 +1,14 @@
+package com.steerinfo.ems.emsscqklg.mapper;
+
+import com.steerinfo.ems.emsscqklg.model.LgReal;
+
+import java.util.List;
+
+/**
+ * @author Shadow
+ * @create 2021-10-19 9:42
+ * @project xt-ems-datasource
+ */
+public interface LgRealMapper {
+    List<LgReal> QueryLgReals();
+}

+ 54 - 0
src/main/java/com/steerinfo/ems/emsscqklg/model/LgReal.java

@@ -0,0 +1,54 @@
+package com.steerinfo.ems.emsscqklg.model;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+/**
+ * @author Shadow
+ * @create 2021-10-27 21:56
+ * @project xt-ems-datasource
+ */
+@ApiModel(value="炼钢实时数据")
+public class LgReal {
+
+        /**
+         * 点位id(DATES,TIMESTAMP,7)
+         */
+        @ApiModelProperty(value="点位id",required=true)
+        private String altId;
+        /**
+         * 点位值(DATES,TIMESTAMP,7)
+         */
+        @ApiModelProperty(value="点位值",required=true)
+        private String eng;
+
+        private static final long serialVersionUID = 1L;
+
+        public String getAltId() {
+                return altId;
+        }
+
+        public void setAltId(String altId) {
+                this.altId = altId;
+        }
+
+        public String getEng() {
+                return eng;
+        }
+
+        public void setEng(String eng) {
+                this.eng = eng;
+        }
+        @Override
+        public String toString() {
+                StringBuilder sb = new StringBuilder();
+                sb.append(getClass().getSimpleName());
+                sb.append(" [");
+                sb.append("Hash = ").append(hashCode());
+                sb.append(", altid=").append(altId);
+                sb.append(", eng=").append(eng);
+                sb.append(", serialVersionUID=").append(serialVersionUID);
+                sb.append("]");
+                return sb.toString();
+        }
+}

+ 15 - 0
src/main/java/com/steerinfo/ems/emsscqklg/service/ILgRealService.java

@@ -0,0 +1,15 @@
+package com.steerinfo.ems.emsscqklg.service;
+
+import com.steerinfo.ems.emsscqklg.model.LgReal;
+import org.apache.axis2.AxisFault;
+
+import java.util.List;
+
+public interface ILgRealService {
+
+    /**
+     *     获取炼钢实时数据
+     */
+    public List<LgReal> QueryLgReals() throws AxisFault;
+
+}

+ 62 - 0
src/main/java/com/steerinfo/ems/emsscqklg/service/impl/LgRealImpl.java

@@ -0,0 +1,62 @@
+package com.steerinfo.ems.emsscqklg.service.impl;
+
+import com.client.MswebserviceStub;
+import com.steerinfo.ems.Utils.MosaicUtils;
+import com.steerinfo.ems.Utils.StrUtils;
+import com.steerinfo.ems.emsscqklg.mapper.LgRealMapper;
+import com.steerinfo.ems.emsscqklg.model.LgReal;
+import com.steerinfo.ems.emsscqklg.service.EmsLgReportService;
+import com.steerinfo.ems.emsscqklg.service.ILgRealService;
+import org.apache.axis2.AxisFault;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service("lgRealService")
+public class LgRealImpl  implements ILgRealService {
+
+    private static final Logger logger = LoggerFactory.getLogger(LgRealImpl.class);
+
+    @Autowired
+    private LgRealMapper lgRealMapper;
+
+    @Autowired
+    private EmsLgReportService emsLgReportService;
+
+
+
+
+    @Override
+    public List<LgReal> QueryLgReals() throws AxisFault {
+        List<LgReal> lgReals = emsLgReportService.queryReals();
+        MswebserviceStub stub;
+
+        if (lgReals.size() < 1) {
+            logger.info("当前没有数据");
+            return emsLgReportService.queryReals();
+        }
+        try{
+            stub = new MswebserviceStub("http://172.16.90.229:9900");
+
+            // Open
+            MosaicUtils.SetOpenConnSample(stub);
+
+            for (LgReal model : lgReals) {
+                if (!StrUtils.isNumeric(model.getEng().trim())) {
+                    continue;
+                }
+                String sql = "update Ana set Eng='"+Double.parseDouble(model.getEng().trim())+"' where AltId='"+ model.getAltId()+"'";
+                MosaicUtils.SetUpdateValue(stub, sql);
+            }
+            // Close
+            MosaicUtils.SetCloseConnSample(stub);
+        } catch (AxisFault e) {
+            // TODO Auto-generated catch block
+            e.printStackTrace();
+        }
+        return emsLgReportService.queryReals();
+    }
+}