private void SendDataToDB() { //create instance of alarm profile creator AlarmProfileCreator creator = new AlarmProfileCreator(_realmProvider); //create validator instance AlarnProfileImportItemValidator validator = new AlarnProfileImportItemValidator(); //for every parsed profile from file foreach (var item in _parsedProfiles) { //check correctness of parsed data if (CheckCorrectnessOfData(item, validator)) { //check if alarm already defined if (!CheckIfProfileWithThisNameExistts(item.AlarmProfileDefinition)) { SaveProfileToDB(creator, item); } else { OnSingleImportDone(false, item.AlarmProfileDefinition.ProfileName, $"Alarm urgency profile with name '{item.AlarmProfileDefinition.ProfileName}' is already defined in DB.", false); } } else { OnSingleImportDone(false, item.AlarmProfileDefinition.ProfileName, $"Alarm urgency profile with name '{item.AlarmProfileDefinition.ProfileName}' cannot be imported.", false); } } OnSingleImportDone(true, "Import finished", "Importing of all alarm urgency profiles from file finished", true); }
//saving new profile to DB private bool SaveNewProfile() { _logger.Info($"Button for saving new alarm profile pressed."); AlarmProfileCreator creator = new AlarmProfileCreator(_realmProvider); return(creator.SaveNewProfile(_runtimeData.DataOfCurrentlyLoggedUser.UserName, ProfileName, Comment, GatherAlarmProfileDaysData())); }
private void SaveProfileToDB(AlarmProfileCreator creator, FullAlarmProfileDefinition definition) { //convert models of alarms profile export into realm DB class List <AlarmProfilerDayDefinition> realmDaysList = new List <AlarmProfilerDayDefinition>(); foreach (var item in definition.DaysList) { AlarmProfilerDayDefinition realmDay = new AlarmProfilerDayDefinition() { Identity = item.Identity, DayNumber = item.DayNumber, AlwaysSend = item.AlwaysSend, NeverSend = item.NeverSend, SendBetween = item.SendBetween, UpperHour = item.UpperHour, LowerHour = item.LowerHour, ProfileForeignKey = item.ProfileForeignKey, }; realmDaysList.Add(realmDay); } bool added = creator.SaveNewProfile(definition.AlarmProfileDefinition.CreatedBy, definition.AlarmProfileDefinition.ProfileName, definition.AlarmProfileDefinition.ProfileComment, realmDaysList); string message; if (added) { message = $"Alarm urgency profile successfully added to database."; } else { message = $"Alarm urgency profile NOT ADDED to Database."; } OnSingleImportDone(added, definition.AlarmProfileDefinition.ProfileName, message, false); }