/// <summary>
        /// 分析缓存数据,清除超过处理周期的数据 add by  tangcy 20110121
        /// </summary>
        public void TN_AlarmRecodeClearUpAnalyseCache()
        {
            BLL.TN_AlarmRecodeClearUp arcu = new TN_AlarmRecodeClearUp();

            Model.TN_AlarmRecodeClearUp a = new TDTK.IndustryPlatform.SafetyMonitor.Model.TN_AlarmRecodeClearUp();

            List<Model.TN_AlarmRecodeClearUp> AnalyseCachelist=new List<Model.TN_AlarmRecodeClearUp>();

            for (int index = 0; index < lstarcu.Count;index++ )
            {
                int lasttime = (int)(DateTime.Now - Convert.ToDateTime(lstarcu[index].AlarmTransactTime)).TotalSeconds;
                if (lstarcu[index].DevType == "模拟量")
                {
                    if (lasttime >= (Convert.ToInt32(TimePeriod) * 3600))
                    {
                        AnalyseCachelist.Add(lstarcu[index]);//添加到要存入数据的列表
                        lstarcu.RemoveAt(index);//正在处理报警中删除该条记录

                    }
                    else
                    {

                    }
                }
                else
                {
                    if (lasttime >= (Convert.ToInt32(SwicthTimePeriod) * 3600))
                    {
                        AnalyseCachelist.Add(lstarcu[index]);//添加到要存入数据的列表
                        lstarcu.RemoveAt(index);//正在处理报警中删除该条记录

                    }
                    else
                    {

                    }
                }

            }
            AddToDataBase(AnalyseCachelist,"2");//保存到数据库
        }
        /// <summary>
        /// 将消警信息写入缓存
        /// </summary>
        /// <param name="arcu"></param>
        public void TN_AlarmRecodeClearUpWriteCache(TDTK.IndustryPlatform.SafetyMonitor.Model.TN_AlarmRecodeClearUp arcu)
        {
            if (arcu != null)
            {
                Model.TN_AlarmRecodeClearUp marcu = lstarcu.Find(r => r.CoalCode == arcu.CoalCode && r.DevCode == arcu.DevCode);

                if (marcu != null)
                {

                }
                else
                {
                    TDTK.IndustryPlatform.SafetyMonitor.Model.TN_AlarmRecodeClearUp mmarcu = new TDTK.IndustryPlatform.SafetyMonitor.Model.TN_AlarmRecodeClearUp
                    {
                        CoalName=arcu.CoalName,//add
                        CoalCode=arcu.CoalCode,
                        DevCode=arcu.DevCode,
                        DevAddress=arcu.DevAddress,
                        DevName=arcu.DevName,
                        DevState=arcu.DevState,
                        DevType=arcu.DevType,
                        DevMaxTime=arcu.DevMaxTime,
                        DevMaxValue=arcu.DevMaxValue,
                        DevValue =arcu.DevValue,// add
                        DevUnit=arcu.DevUnit,
                        SwitchCount=arcu.SwitchCount,
                        MonitorLRV=arcu.MonitorLRV,
                        MonitorURV=arcu.MonitorURV,
                        AlarmETime=arcu.AlarmETime,
                        AlarmSTime=arcu.AlarmSTime,
                        AlarmURV=arcu.AlarmURV,
                        AlarmLRV=arcu.AlarmLRV,
                        Duration=arcu.Duration,
                        TurnOffValue=arcu.TurnOffValue,
                        TurnOnValue=arcu.TurnOnValue,
                        AlarmTransactContent=arcu.AlarmTransactContent,
                        AlarmTransactWays=arcu.AlarmTransactWays,
                        AlarmTransactState=arcu.AlarmTransactState,
                        SwitchDetails=arcu.SwitchDetails,
                        UserCode=arcu.UserCode,
                        UserName=arcu.UserName,
                        AlarmTransactTime=arcu .AlarmTransactTime // add

                    };

                    lstarcu.Add(mmarcu);
                }
            }
        }
        /// <summary>
        /// 添加到数据库中  add by  tangcy 20110121
        /// </summary>
        /// <param name="ManagedListed">处理的报警信息</param>
        public void AddToDataBase(List<Model.TN_AlarmRecodeClearUp> ManagedListed , string state)
        {
            BLL.TN_AlarmRecodeClearUp arcu = new TN_AlarmRecodeClearUp();

            Model.TN_AlarmRecodeClearUp a = new TDTK.IndustryPlatform.SafetyMonitor.Model.TN_AlarmRecodeClearUp();

            #region 遍历已处理报警并写入数据库
            foreach (Model.TN_AlarmRecodeClearUp cu in ManagedListed)
            {
                a.CoalCode = cu.CoalCode;
                a.CoalName = cu.CoalName;
                a.DevCode = cu.DevCode;
                a.DevName = cu.DevName;
                a.DevType = cu.DevType;
                a.DevAddress = cu.DevAddress;
                a.DevUnit = cu.DevUnit;
                a.MonitorLRV = cu.MonitorLRV;
                a.MonitorURV = cu.MonitorURV;
                a.AlarmLRV = cu.AlarmLRV;
                a.AlarmURV = cu.AlarmURV;
                a.TurnOffValue = cu.TurnOffValue;
                a.TurnOnValue = cu.TurnOnValue;
                #region
                //a.SwitchCount = cu.SwitchCount;
                //a.SwitchDetails= cu.SwitchDetails;
                //a.AlarmSTime =cu.AlarmSTime;
                //a.AlarmETime   =cu.AlarmETime;
                //a.Duration = cu.Duration;
                //a.DevMaxValue  = cu.DevMaxValue;
                //a.DevMaxTime  = cu.DevMaxTime;
                //a.DevState = cu.DevState;
                #endregion
                a.DevValue = cu.DevValue;
                a.UserCode = cu.UserCode;
                a.UserName = cu.UserName;
                a.AlarmTransactContent = cu.AlarmTransactContent;
                a.AlarmTransactWays = cu.AlarmTransactWays;
                a.AlarmTransactState = state;
                a.AlarmTransactTime = cu.AlarmTransactTime;

                arcu.Add(a);
            }
            #endregion
        }