Example #1
0
        public override void execute(Tag tag, String devCode, CellTag cellTag,
                                     SystemDateTag systemDateTag, CasicSession session)
        {
            //TODO LIST:解析腐蚀环境数据,保存腐蚀环境数据
            UploadTag fshjTag    = tag as UploadTag;
            int       itv        = fshjTag.CollectInter;
            String    collecTime = fshjTag.CollectTime;
            int       len        = fshjTag.Len;
            String    dataValue  = fshjTag.DataValue;

            session.Logger.Info("腐蚀环境数据上传TAG:oid:" + fshjTag.Oid + " 采集间隔: " +
                                itv + "采集时间:" + collecTime + "上传数值:" + dataValue);

            int num = len / (2 * 16); //上传的数据组数,1组16个数据,每个数据4个字节
            List <Model.AKFSHJInfo> djs = new List <Model.AKFSHJInfo>();

            DateTime baseTime = Convert.ToDateTime(systemDateTag.CollectDate + " " + collecTime);

            for (int i = 0; i < num; i++)
            {
                Model.AKFSHJInfo fshjInfo = new  Model.AKFSHJInfo();

                String underVol1 = strHexToInt(dataValue.Substring(i * 64, 4)).ToString();
                String underVol2 = strHexToInt(dataValue.Substring(i * 64 + 4, 4)).ToString();
                String underVol3 = strHexToInt(dataValue.Substring(i * 64 + 8, 4)).ToString();
                String underVol4 = strHexToInt(dataValue.Substring(i * 64 + 12, 4)).ToString();
                String underVol5 = strHexToInt(dataValue.Substring(i * 64 + 16, 4)).ToString();
                String underVol6 = strHexToInt(dataValue.Substring(i * 64 + 20, 4)).ToString();


                String under_temp1  = (strHexToInt(dataValue.Substring(i * 64 + 24, 4)) / 10.0).ToString();
                String under_temp2  = (strHexToInt(dataValue.Substring(i * 64 + 28, 4)) / 10.0).ToString();
                String outter_temp1 = (strHexToInt(dataValue.Substring(i * 64 + 32, 4)) / 10.0).ToString();
                String outter_temp2 = (strHexToInt(dataValue.Substring(i * 64 + 36, 4)) / 10.0).ToString();

                String underWater1 = strHexToInt(dataValue.Substring(i * 64 + 40, 4)).ToString();
                String underWater2 = strHexToInt(dataValue.Substring(i * 64 + 44, 4)).ToString();
                String underWater3 = strHexToInt(dataValue.Substring(i * 64 + 48, 4)).ToString();
                String underWater4 = strHexToInt(dataValue.Substring(i * 64 + 52, 4)).ToString();
                String underWater5 = strHexToInt(dataValue.Substring(i * 64 + 56, 4)).ToString();
                String underWater6 = strHexToInt(dataValue.Substring(i * 64 + 60, 4)).ToString();

                fshjInfo.UnderTemp1  = under_temp1;
                fshjInfo.UnderTemp2  = under_temp2;
                fshjInfo.OutterTemp1 = outter_temp1;
                fshjInfo.OutterTemp2 = outter_temp2;
                fshjInfo.UnderVo11   = underVol1;
                fshjInfo.UnderVo12   = underVol2;
                fshjInfo.UnderVo13   = underVol3;
                fshjInfo.UnderVo14   = underVol4;
                fshjInfo.UnderVo15   = underVol5;
                fshjInfo.UnderVo16   = underVol6;

                fshjInfo.UnderWaterIn1 = underWater1;
                fshjInfo.UnderWaterIn2 = underWater2;
                fshjInfo.UnderWaterIn3 = underWater3;
                fshjInfo.UnderWaterIn4 = underWater4;
                fshjInfo.UnderWaterIn5 = underWater5;
                fshjInfo.UnderWaterIn6 = underWater6;

                fshjInfo.Cell    = (cellTag == null ? "" : cellTag.Cell);
                fshjInfo.LogTime = DateTime.Now;
                fshjInfo.UpTime  = baseTime.AddMinutes(i * itv);
                fshjInfo.DEVCODE = devCode;
                djs.Add(fshjInfo);
            }
            new BLL.AKFSHJ().insert(djs);
            String pipeType = new BLL.AKFSHJ().getHeatPipeTypeByDevCode(devCode);

            new BLL.AKFSHJ().saveAlarmInfo(djs, pipeType);
            //new BLL.AKFSHJ().saveAlarmInfo(djs);//todo list:生成报警规则
            session.Logger.Info("腐蚀环境数据保存成功");
        }
Example #2
0
        /// <summary>
        /// An internal function to bind values parameters for insert
        /// </summary>
        /// <param name="parms">Database parameters</param>
        /// <param name="liquid">Values to bind to parameters</param>
        private void SetAdapterParameters(OracleParameter[] parms, Model.AKFSHJInfo fshj)
        {
            parms[0].Value = fshj.DEVCODE;

            if (null != fshj.Cell)
            {
                parms[1].Value = fshj.Cell;
            }
            else
            {
                parms[1].Value = DBNull.Value;
            }

            if (null != fshj.UnderTemp1)
            {
                parms[2].Value = fshj.UnderTemp1;
            }
            else
            {
                parms[2].Value = DBNull.Value;
            }

            if (null != fshj.UnderTemp2)
            {
                parms[3].Value = fshj.UnderTemp2;
            }
            else
            {
                parms[3].Value = DBNull.Value;
            }

            if (null != fshj.OutterTemp1)
            {
                parms[4].Value = fshj.OutterTemp1;
            }
            else
            {
                parms[4].Value = DBNull.Value;
            }

            if (null != fshj.OutterTemp2)
            {
                parms[5].Value = fshj.OutterTemp2;
            }
            else
            {
                parms[5].Value = DBNull.Value;
            }

            if (null != fshj.UnderVo11)
            {
                parms[6].Value = fshj.UnderVo11;
            }
            else
            {
                parms[6].Value = DBNull.Value;
            }

            if (null != fshj.UnderVo12)
            {
                parms[7].Value = fshj.UnderVo12;
            }
            else
            {
                parms[7].Value = DBNull.Value;
            }

            if (null != fshj.UnderVo13)
            {
                parms[8].Value = fshj.UnderVo13;
            }
            else
            {
                parms[8].Value = DBNull.Value;
            }

            if (null != fshj.UnderVo14)
            {
                parms[9].Value = fshj.UnderVo14;
            }
            else
            {
                parms[9].Value = DBNull.Value;
            }

            if (null != fshj.UnderVo15)
            {
                parms[10].Value = fshj.UnderVo15;
            }
            else
            {
                parms[10].Value = DBNull.Value;
            }

            if (null != fshj.UnderVo16)
            {
                parms[11].Value = fshj.UnderVo16;
            }
            else
            {
                parms[11].Value = DBNull.Value;
            }

            if (null != fshj.UnderWaterIn1)
            {
                parms[12].Value = fshj.UnderWaterIn1;
            }
            else
            {
                parms[12].Value = DBNull.Value;
            }

            if (null != fshj.UnderWaterIn2)
            {
                parms[13].Value = fshj.UnderWaterIn2;
            }
            else
            {
                parms[13].Value = DBNull.Value;
            }

            if (null != fshj.UnderWaterIn3)
            {
                parms[14].Value = fshj.UnderWaterIn3;
            }
            else
            {
                parms[14].Value = DBNull.Value;
            }

            if (null != fshj.UnderWaterIn4)
            {
                parms[15].Value = fshj.UnderWaterIn4;
            }
            else
            {
                parms[15].Value = DBNull.Value;
            }

            if (null != fshj.UnderWaterIn5)
            {
                parms[16].Value = fshj.UnderWaterIn5;
            }
            else
            {
                parms[16].Value = DBNull.Value;
            }

            if (null != fshj.UnderWaterIn6)
            {
                parms[17].Value = fshj.UnderWaterIn6;
            }
            else
            {
                parms[17].Value = DBNull.Value;
            }

            if (null != fshj.Status)
            {
                parms[18].Value = fshj.Status;
            }
            else
            {
                parms[18].Value = DBNull.Value;
            }


            if (null != fshj.UpTime)
            {
                parms[19].Value = fshj.UpTime;
            }
            else
            {
                parms[19].Value = DBNull.Value;
            }

            if (null != fshj.LogTime)
            {
                parms[20].Value = fshj.LogTime;
            }
            else
            {
                parms[20].Value = DBNull.Value;
            }
        }