Esempio n. 1
0
        public void DeleteSelectedS7Alarm()
        {
            if (SelectedAlarmForS7connection != null)
            {
                _logger.Info($"Button for deleting selected S7 alarm pressed, and selected alarm is not null.");

                MessageBoxResult msgRes = MessageBox.Show($"Are you sure you want to delete '{SelectedAlarmForS7connection.AlarmTagName}' alarm from DB?",
                                                          "Confirm", MessageBoxButton.OKCancel, MessageBoxImage.Question);

                if (msgRes == MessageBoxResult.OK)
                {
                    _logger.Info($"User confirmed deletion of S7 alarm.");

                    AlarmS7Deleter deleter = new AlarmS7Deleter(_realmProvider);
                    bool           done    = deleter.DeleteSingleS7Alarm(SelectedAlarmForS7connection);

                    if (!done)
                    {
                        _logger.Error($"Deleting S7 alarm with ID {SelectedAlarmForS7connection.Identity} went wrong!");
                        MessageBox.Show($"Deleting selected S7 alarm failed!", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                    }
                    GetAlarmsForS7Connection(SelectedShortPLCconnection.PLCconnectionID);
                }
            }
        }
        private void DeleteAllAlarmsForPLCconnection(int connectionID)
        {
            AlarmS7Deleter deleter = new AlarmS7Deleter(_realmProvider);

            (int amount, int failes) = deleter.DeleteAllAlarmsForS7PLCconnection(connectionID);

            _synchCont.Post(_ => ShowMessageBox($"Deletion results:\n\nTotal amount of alarms to delete: {amount};\nNot deleted alarms: {failes}.", "Information", MessageBoxImage.Information), null);
        }
Esempio n. 3
0
        public void DeleteMultipleAlarms()
        {
            _logger.Info($"Button for deleting multiple alarms pressed.");

            List <AlarmS7UImodel> alarmsToDelete = new List <AlarmS7UImodel>();

            //gathering alarms to delete
            foreach (var item in AlarmsForSelectedS7Connection)
            {
                if (item.AlarmToDelete)
                {
                    alarmsToDelete.Add(item);
                }
            }

            //only if amount of alarms to delete was greather than 0
            if (alarmsToDelete.Count > 0)
            {
                //ask for confirm
                MessageBoxResult msgRes = MessageBox.Show($"Are you sure you want to delete those selected {alarmsToDelete.Count} S7 alarms from DB?", "Confirm", MessageBoxButton.OKCancel, MessageBoxImage.Question);

                if (msgRes == MessageBoxResult.OK)
                {
                    _logger.Info($"User sonfirmed multiple deletion of S7 alarms.");

                    //create deleting object
                    AlarmS7Deleter deleter = new AlarmS7Deleter(_realmProvider);
                    (int amount, int failures) = deleter.DeleteMultipleS7Alarms(alarmsToDelete);

                    //show info about deletion results
                    MessageBox.Show($"Deletion of S7 alarms results:\n\nAlarms to delete amount: {amount}.\nFailures amount: {failures}.", "Information", MessageBoxButton.OK, MessageBoxImage.Information);

                    //switch to mode without multiple deletion
                    MultipleDeleteEnabled();

                    //refresh alarms list
                    GetAlarmsForS7Connection(SelectedShortPLCconnection.PLCconnectionID);
                }
            }
        }