private void ObtainProfilesDefinitions() { //create profiles reader instance AlarmProfileReader reader = new AlarmProfileReader(_realmProvider); //for every identity to export foreach (var item in _profilesIDlidt) { //get single profile definition AlarmProfileDefinition definition = reader.GetAlarmProfileDefinition(item); //translate DB alarm profile definition into export model AlarmProfileDefinitionExportModel exportModel = new AlarmProfileDefinitionExportModel() { Identity = definition.Identity, CreatedBy = definition.CreatedBy, ModifiedBy = definition.ModifiedBy, ProfileName = definition.ProfileName, ProfileComment = definition.ProfileComment, }; //create object of export list FullAlarmProfileDefinition fullDefinition = new FullAlarmProfileDefinition() { AlarmProfileDefinition = exportModel, NoErrors = true, }; //add new full definition to list _profilesDefinitionsList.Add(fullDefinition); } }
public FullAlarmProfileDefinition Validate(FullAlarmProfileDefinition model) { FullAlarmProfileDefinition internalModel = model; bool modelOK = CheckProfileDefinition(model.AlarmProfileDefinition); if (modelOK) modelOK = CheckAllDaysDefinitions(model.DaysList); internalModel.NoErrors = modelOK; return internalModel; }
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); }
private bool CheckCorrectnessOfData(FullAlarmProfileDefinition item, AlarnProfileImportItemValidator validator) { return(validator.Validate(item).NoErrors); }