예제 #1
0
        /// <summary>
        /// Method to get the specified node
        /// </summary>
        /// <param name="lscId">lscId</param>
        /// <param name="nodeId">nodeId</param>
        /// <param name="nodeType">nodeType</param>
        /// <returns>node information</returns>
        public NodeInfo GetNode(int lscId, int nodeId, EnmNodeType nodeType)
        {
            try {
                SqlParameter[] parms = { new SqlParameter("@LscID",    SqlDbType.Int),
                                         new SqlParameter("@NodeID",   SqlDbType.Int),
                                         new SqlParameter("@NodeType", SqlDbType.Int) };
                parms[0].Value = lscId;
                parms[1].Value = nodeId;
                parms[2].Value = (int)nodeType;

                NodeInfo node = null;
                using (SqlDataReader rdr = SqlHelper.ExecuteReader(SqlHelper.ConnectionStringLocalTransaction, CommandType.Text, SqlText.SQL_SELECT_NODE_GETNODE, parms)) {
                    if (rdr.Read())
                    {
                        node            = new NodeInfo();
                        node.LscID      = ComUtility.DBNullInt32Handler(rdr["LscID"]);
                        node.NodeID     = ComUtility.DBNullInt32Handler(rdr["NodeID"]);
                        node.NodeType   = ComUtility.DBNullNodeTypeHandler(rdr["NodeType"]);
                        node.Value      = ComUtility.DBNullFloatHandler(rdr["Value"]);
                        node.Status     = ComUtility.DBNullStateHandler(rdr["Status"]);
                        node.DateTime   = ComUtility.DBNullDateTimeHandler(rdr["DateTime"]);
                        node.UpdateTime = ComUtility.DBNullDateTimeHandler(rdr["UpdateTime"]);
                    }
                }

                return(node);
            } catch {
                throw;
            }
        }
예제 #2
0
파일: Alarm.cs 프로젝트: radtek/PecsService
        /// <summary>
        /// Syn Alarms
        /// </summary>
        /// <param name="lscId">lscId</param>
        /// <param name="connectionString">connectionString</param>
        /// <returns>Alarms</returns>
        public List <AlarmInfo> SynAlarms(int lscId, string connectionString)
        {
            try {
                SqlParameter[] parms = { new SqlParameter("@LscID",  SqlDbType.Int),
                                         new SqlParameter("@AIType", SqlDbType.Int),
                                         new SqlParameter("@DIType", SqlDbType.Int) };
                parms[0].Value = lscId;
                parms[1].Value = (int)EnmNodeType.Aic;
                parms[2].Value = (int)EnmNodeType.Dic;

                List <AlarmInfo> alarms = new List <AlarmInfo>();
                SqlHelper.TestConnection(connectionString);
                using (DataTable dt = SqlHelper.ExecuteTable(connectionString, CommandType.Text, SqlText.SQL_SELECT_ALARM_SYNALARMS, parms)) {
                    if (dt != null && dt.Rows.Count > 0)
                    {
                        foreach (DataRow dr in dt.Rows)
                        {
                            AlarmInfo alarm = new AlarmInfo();
                            alarm.LscID          = ComUtility.DBNullInt32Handler(dr["LscID"]);
                            alarm.SerialNO       = ComUtility.DBNullInt32Handler(dr["SerialNO"]);
                            alarm.Area1Name      = ComUtility.DBNullStringHandler(dr["Area1Name"]);
                            alarm.Area2Name      = ComUtility.DBNullStringHandler(dr["Area2Name"]);
                            alarm.Area3Name      = ComUtility.DBNullStringHandler(dr["Area3Name"]);
                            alarm.Area4Name      = ComUtility.DBNullStringHandler(dr["Area4Name"]);
                            alarm.StaName        = ComUtility.DBNullStringHandler(dr["StaName"]);
                            alarm.DevName        = ComUtility.DBNullStringHandler(dr["DevName"]);
                            alarm.DevDesc        = ComUtility.DBNullStringHandler(dr["DevDesc"]);
                            alarm.NodeID         = ComUtility.DBNullInt32Handler(dr["NodeID"]);
                            alarm.NodeType       = ComUtility.DBNullNodeTypeHandler(dr["NodeType"]);
                            alarm.NodeName       = ComUtility.DBNullStringHandler(dr["NodeName"]);
                            alarm.AlarmID        = ComUtility.DBNullInt32Handler(dr["AlarmID"]);
                            alarm.AlarmValue     = ComUtility.DBNullFloatHandler(dr["AlarmValue"]);
                            alarm.AlarmLevel     = ComUtility.DBNullAlarmLevelHandler(dr["AlarmLevel"]);
                            alarm.AlarmStatus    = ComUtility.DBNullAlarmStatusHandler(dr["AlarmStatus"]);
                            alarm.AlarmDesc      = ComUtility.DBNullStringHandler(dr["AlarmDesc"]);
                            alarm.AuxAlarmDesc   = ComUtility.DBNullStringHandler(dr["AuxAlarmDesc"]);
                            alarm.StartTime      = ComUtility.DBNullDateTimeHandler(dr["StartTime"]);
                            alarm.EndTime        = ComUtility.DBNullDateTimeHandler(dr["EndTime"]);
                            alarm.ConfirmName    = ComUtility.DBNullStringHandler(dr["ConfirmName"]);
                            alarm.ConfirmMarking = ComUtility.DBNullConfirmMarkingHandler(dr["ConfirmMarking"]);
                            alarm.ConfirmTime    = ComUtility.DBNullDateTimeHandler(dr["ConfirmTime"]);
                            alarm.AuxSet         = ComUtility.DBNullStringHandler(dr["AuxSet"]);
                            alarm.TaskID         = ComUtility.DBNullStringHandler(dr["TaskID"]);
                            alarm.ProjName       = ComUtility.DBNullStringHandler(dr["ProjName"]);
                            alarm.TurnCount      = ComUtility.DBNullInt32Handler(dr["TurnCount"]);
                            alarm.UpdateTime     = ComUtility.DBNullDateTimeHandler(dr["UpdateTime"]);

                            alarms.Add(alarm);
                        }

                        SqlHelper.ExecuteBulkCopy(SqlHelper.ConnectionStringLocalTransaction, SqlText.TN_Alarm, dt);
                    }
                }

                return(alarms);
            } catch {
                throw;
            }
        }
예제 #3
0
        /// <summary>
        /// Syn Trend Alarms
        /// </summary>
        /// <param name="lscId">lscId</param>
        /// <param name="connectionString">connectionString</param>
        /// <returns>Trend Alarms</returns>
        public List <TrendAlarmInfo> SynTrendAlarms(int lscId, string connectionString)
        {
            SqlParameter[] parms = { new SqlParameter("@LscID", SqlDbType.Int) };
            parms[0].Value = lscId;

            var alarms = new List <TrendAlarmInfo>();

            SqlHelper.TestConnection(connectionString);
            using (var dt = SqlHelper.ExecuteTable(connectionString, CommandType.Text, SqlText.SQL_SELECT_ALARM_SYNTRENDALARMS, parms)) {
                if (dt != null && dt.Rows.Count > 0)
                {
                    foreach (DataRow dr in dt.Rows)
                    {
                        var alarm = new TrendAlarmInfo();
                        alarm.LscID                 = ComUtility.DBNullInt32Handler(dr["LscID"]);
                        alarm.Area1Name             = ComUtility.DBNullStringHandler(dr["Area1Name"]);
                        alarm.Area2Name             = ComUtility.DBNullStringHandler(dr["Area2Name"]);
                        alarm.Area3Name             = ComUtility.DBNullStringHandler(dr["Area3Name"]);
                        alarm.Area4Name             = String.Empty;
                        alarm.StaName               = ComUtility.DBNullStringHandler(dr["StaName"]);
                        alarm.DevName               = ComUtility.DBNullStringHandler(dr["DevName"]);
                        alarm.NodeID                = ComUtility.DBNullInt32Handler(dr["NodeID"]);
                        alarm.NodeType              = EnmNodeType.Aic;
                        alarm.NodeName              = ComUtility.DBNullStringHandler(dr["NodeName"]);
                        alarm.AlarmType             = ComUtility.DBNullStringHandler(dr["AlarmType"]);
                        alarm.AlarmStatus           = ComUtility.DBNullInt32Handler(dr["AlarmStatus"]);
                        alarm.AlarmLevel            = ComUtility.DBNullInt32Handler(dr["AlarmLevel"]);
                        alarm.StartValue            = ComUtility.DBNullFloatHandler(dr["StartValue"]);
                        alarm.AlarmValue            = ComUtility.DBNullFloatHandler(dr["AlarmValue"]);
                        alarm.DiffValue             = ComUtility.DBNullFloatHandler(dr["DiffValue"]);
                        alarm.StartTime             = ComUtility.DBNullDateTimeHandler(dr["StartTime"]);
                        alarm.AlarmTime             = ComUtility.DBNullDateTimeHandler(dr["AlarmTime"]);
                        alarm.EventTime             = ComUtility.DBNullDateTimeHandler(dr["EventTime"]);
                        alarm.ConfirmName           = ComUtility.DBNullStringHandler(dr["ConfirmName"]);
                        alarm.ConfirmTime           = ComUtility.DBNullDateTimeHandler(dr["ConfirmTime"]);
                        alarm.EndName               = ComUtility.DBNullStringHandler(dr["EndName"]);
                        alarm.EndTime               = ComUtility.DBNullDateTimeHandler(dr["EndTime"]);
                        alarm.StartIsAddAlarmList   = ComUtility.DBNullBooleanHandler(dr["StartIsAddAlarmList"]);
                        alarm.EndIsAddAlarmList     = ComUtility.DBNullBooleanHandler(dr["EndIsAddAlarmList"]);
                        alarm.ConfirmIsAddAlarmList = ComUtility.DBNullBooleanHandler(dr["ConfirmIsAddAlarmList"]);
                        alarms.Add(alarm);
                    }

                    SqlHelper.ExecuteBulkCopy(SqlHelper.ConnectionStringLocalTransaction, SqlText.TN_TrendAlarm, dt);
                }
            }

            return(alarms);
        }
예제 #4
0
        /// <summary>
        /// Method to save trend alarm information
        /// </summary>
        /// <param name="alarms">alarms</param>
        public void SaveTrendAlarms(List <TrendAlarmInfo> alarms)
        {
            using (var conn = new SqlConnection(SqlHelper.ConnectionStringLocalTransaction)) {
                conn.Open();
                using (var trans = conn.BeginTransaction(IsolationLevel.ReadCommitted)) {
                    try {
                        SqlParameter[] parms = { new SqlParameter("@LscID",                 SqlDbType.Int),
                                                 new SqlParameter("@Area1Name",             SqlDbType.NVarChar,   50),
                                                 new SqlParameter("@Area2Name",             SqlDbType.NVarChar,   50),
                                                 new SqlParameter("@Area3Name",             SqlDbType.NVarChar,   50),
                                                 new SqlParameter("@Area4Name",             SqlDbType.NVarChar,   50),
                                                 new SqlParameter("@StaName",               SqlDbType.NVarChar,  100),
                                                 new SqlParameter("@DevName",               SqlDbType.NVarChar,  100),
                                                 new SqlParameter("@NodeID",                SqlDbType.Int),
                                                 new SqlParameter("@NodeType",              SqlDbType.Int),
                                                 new SqlParameter("@NodeName",              SqlDbType.NVarChar,   50),
                                                 new SqlParameter("@AlarmType",             SqlDbType.NVarChar,   20),
                                                 new SqlParameter("@AlarmStatus",           SqlDbType.Int),
                                                 new SqlParameter("@AlarmLevel",            SqlDbType.Int),
                                                 new SqlParameter("@StartValue",            SqlDbType.Real),
                                                 new SqlParameter("@AlarmValue",            SqlDbType.Real),
                                                 new SqlParameter("@DiffValue",             SqlDbType.Real),
                                                 new SqlParameter("@StartTime",             SqlDbType.DateTime),
                                                 new SqlParameter("@AlarmTime",             SqlDbType.DateTime),
                                                 new SqlParameter("@EventTime",             SqlDbType.DateTime),
                                                 new SqlParameter("@ConfirmName",           SqlDbType.NVarChar,   20),
                                                 new SqlParameter("@ConfirmTime",           SqlDbType.DateTime),
                                                 new SqlParameter("@EndName",               SqlDbType.NVarChar,   20),
                                                 new SqlParameter("@EndTime",               SqlDbType.DateTime),
                                                 new SqlParameter("@StartIsAddAlarmList",   SqlDbType.Bit),
                                                 new SqlParameter("@EndIsAddAlarmList",     SqlDbType.Bit),
                                                 new SqlParameter("@ConfirmIsAddAlarmList", SqlDbType.Bit) };

                        foreach (var alarm in alarms)
                        {
                            parms[0].Value  = alarm.LscID;
                            parms[1].Value  = ComUtility.DBNullStringChecker(alarm.Area1Name);
                            parms[2].Value  = ComUtility.DBNullStringChecker(alarm.Area2Name);
                            parms[3].Value  = ComUtility.DBNullStringChecker(alarm.Area3Name);
                            parms[4].Value  = ComUtility.DBNullStringChecker(alarm.Area4Name);
                            parms[5].Value  = ComUtility.DBNullStringChecker(alarm.StaName);
                            parms[6].Value  = ComUtility.DBNullStringChecker(alarm.DevName);
                            parms[7].Value  = alarm.NodeID;
                            parms[8].Value  = alarm.NodeType;
                            parms[9].Value  = ComUtility.DBNullStringChecker(alarm.NodeName);
                            parms[10].Value = ComUtility.DBNullStringChecker(alarm.AlarmType);
                            parms[11].Value = ComUtility.DBNullInt32Checker(alarm.AlarmStatus);
                            parms[12].Value = ComUtility.DBNullInt32Checker(alarm.AlarmLevel);
                            parms[13].Value = ComUtility.DBNullFloatHandler(alarm.StartValue);
                            parms[14].Value = ComUtility.DBNullFloatHandler(alarm.AlarmValue);
                            parms[15].Value = ComUtility.DBNullFloatHandler(alarm.DiffValue);
                            parms[16].Value = ComUtility.DBNullDateTimeChecker(alarm.StartTime);
                            parms[17].Value = ComUtility.DBNullDateTimeChecker(alarm.AlarmTime);
                            parms[18].Value = ComUtility.DBNullDateTimeChecker(alarm.EventTime);
                            parms[19].Value = ComUtility.DBNullStringChecker(alarm.ConfirmName);
                            parms[20].Value = ComUtility.DBNullDateTimeChecker(alarm.ConfirmTime);
                            parms[21].Value = ComUtility.DBNullStringChecker(alarm.EndName);
                            parms[22].Value = ComUtility.DBNullDateTimeChecker(alarm.EndTime);
                            parms[23].Value = alarm.StartIsAddAlarmList;
                            parms[24].Value = alarm.EndIsAddAlarmList;
                            parms[25].Value = alarm.ConfirmIsAddAlarmList;

                            SqlHelper.ExecuteNonQuery(trans, CommandType.Text, SqlText.SQL_INSERT_ALARM_SAVETRENDALARMS, parms);
                        }

                        trans.Commit();
                    } catch {
                        trans.Rollback();
                        throw;
                    }
                }
            }
        }