Exemple #1
0
        public void AlarmBase_Disarmed_IsArmedFalse()
        {
            var alarm = new AlarmBase();

            alarm.Disarm();

            Assert.IsFalse(alarm.IsArmed);
        }
Exemple #2
0
        public void AlarmBase_Arm_IsArmedTrue()
        {
            var alarm = new AlarmBase();

            alarm.Arm();

            Assert.IsTrue(alarm.IsArmed);
        }
        /// <summary>
        ///     修改报警名称
        /// </summary>
        /// <param name="name">需要修改的报警名称</param>
        /// <param name="propertyName">需要修改的指定属性名称</param>
        /// <param name="value">属性修改后的值</param>
        public void EditAlarm(string name, string propertyName, object value)
        {
            CheckAlarmSetIsNull();
            AlarmBase alarm = FindAlarmByName(name);

            if (alarm == null)
            {
                throw new Exception("需要修改的报警不存在");
            }
            ObjectCopier.CopyProperty(alarm, propertyName, value);
            RealTimeRepositoryBase.RtDbContext.SaveAllChanges();
        }
        /// <summary>
        ///     修改报警
        /// </summary>
        public void EditAlarm(string name, AlarmBase newAlarmBase)
        {
            CheckAlarmSetIsNull();
            if (!IsExistAlarmName(newAlarmBase.Name))
            {
                throw new Exception("报警名称已存在,不能修改");
            }
            AlarmBase alarm = FindAlarmByName(name);

            if (alarm == null)
            {
                throw new Exception("需要修改的报警不存在");
            }
            ObjectCopier.CopyProperties(alarm, newAlarmBase);
            RealTimeRepositoryBase.RtDbContext.SaveAllChanges();
        }
        /// <summary>
        ///     添加变量报警
        /// </summary>
        /// <param name="alarm"></param>
        public void AddAlarm(AlarmBase alarm)
        {
            if (alarm == null)
            {
                throw new ArgumentNullException(Resource1.AlarmRepository_AddAlarm_alarm);
            }
            CheckAlarmSetIsNull();

            //判断报警名称是否存在
            if (IsExistAlarmName(alarm.Name))
            {
                throw new Exception("变量报警名称已存在");
            }
            alarm.CreateTime = DateTime.Now;
            RealTimeRepositoryBase.RtDbContext.AlarmSet.Add(alarm);
            RealTimeRepositoryBase.RtDbContext.SaveAllChanges();
        }
Exemple #6
0
        /// <summary>
        ///     dataGridView的按钮事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void BtnClick(object sender, EventArgs e)
        {
            DialogResult dialog;

            switch (((DataGridViewCellButton)sender).HeaderText)
            {
            case "报警变量":
                dialog = (new VariableList(_iVariableDesignRepository)).ShowDialog();
                if (dialog != DialogResult.OK || SelectVariable == null)
                {
                    return;
                }
                _iAalarmDesignRepository.EditAlarm(
                    dataGridView_Avaiable.Rows[((DataGridViewCellButton)sender).Cell.RowIndex].Cells[0]
                    .Value
                    .ToString
                        (), "Variable", SelectVariable);
                RefreshDataGridView();
                break;

            case "报警配置":
                break;

            case "报警组":
                string selectAlarmName =
                    dataGridView_Avaiable.Rows[((DataGridViewCellButton)sender).Cell.RowIndex].Cells[0].Value
                    .ToString();
                dialog = (new AlarmGroupList(_iAalarmDesignRepository, selectAlarmName)).ShowDialog();
                if (dialog == DialogResult.OK)
                {
                    AlarmBase alarm = _iAalarmDesignRepository.FindAlarmByName(selectAlarmName);
                    if (alarm != null)
                    {
                        dataGridView_Avaiable.Rows[((DataGridViewCellButton)sender).Cell.RowIndex].Cells[4]
                        .Value = alarm.Group == null ? "" : alarm.Group.Name;
                    }
                }
                break;
            }
        }