public SettingsFileprintViewModel(IBusiness _business, int _id) { try { business = _business; //Query lists for selection ConditionList = new ObservableCollection <FileprintCondition>(business.GetAllFileprintConditionAsync().Result); //Query item with relations fileprint = business.GetFileprintById(_id); if (fileprint == null) { fileprint = new Fileprint(); } //Do selection from list if (fileprint.Condition != null) { SelectedCondition = ConditionList.Where(c => c.Id == fileprint.Condition.Id).SingleOrDefault(); } } catch (Exception ex) { Logger.WriteError(MethodBase.GetCurrentMethod(), ex); } }
public void DeleteFileprint(Fileprint _entity) { if (_entity == null || !_entity.IsValid) { new ArgumentNullException("Fileprint"); } using (var _databaseContext = new DatabaseContext()) { _databaseContext.Fileprints.Attach(_entity); _databaseContext.Fileprints.Remove(_entity); _databaseContext.SaveChanges(); } }
public int AddOrUpdateFileprint(Fileprint _entity) { if (_entity == null || !_entity.IsValid) { new ArgumentNullException("Fileprint"); } using (var _databaseContext = new DatabaseContext()) { _entity = _databaseContext.UpdateGraph(_entity, map => map.AssociatedEntity(f => f.Condition).AssociatedEntity(f => f.Printer)); _databaseContext.SaveChanges(); return(_entity.Id); } }
private bool fileprintCheck(Einsatz einsatz, Fileprint fileprint) { if (fileprint == null || fileprint.Condition == null || fileprint.Expression == null) { return(false); } switch (fileprint.Condition.Id) { case 1: //Ort ist if (Text.CheckString(einsatz.Ort, fileprint.Expression)) { return(true); } break; case 2: //Straße ist if (Text.CheckString(einsatz.Straße, fileprint.Expression)) { return(true); } break; case 3: //Hausnummer ist if (Text.CheckString(einsatz.Hausnummer, fileprint.Expression)) { return(true); } break; case 4: //Straße + Hausnummer ist var splitExpression4 = fileprint.Expression.Split('+'); if (splitExpression4.Count() != 2) { return(false); } if (Text.CheckString(einsatz.Straße, splitExpression4[0]) && Text.CheckString(einsatz.Hausnummer, splitExpression4[1])) { return(true); } break; case 5: //Objekt ist if (Text.CheckString(einsatz.Objekt, fileprint.Expression)) { return(true); } break; case 6: //Ort + Straße ist var splitExpression6 = fileprint.Expression.Split('+'); if (splitExpression6.Count() != 2) { return(false); } if (Text.CheckString(einsatz.Ort, splitExpression6[0]) && Text.CheckString(einsatz.Straße, splitExpression6[1])) { return(true); } break; } return(false); }