public dynamic GetAllInList(DBModelManagers.Abstract.OperationType operationType) { using (_unitOfWork = DIManager.UnitOfWork) { return(_unitOfWork.PersonalAccountantContext.Set <OperationCategory>().Where(x => x.OperationTypeId == (int)operationType)?.Select(x => new { Id = x.Id, Name = x.Name }).ToList()); } }
private OperationCategory CreateNewCategory(string nameParam, DBModelManagers.Abstract.OperationType operationTypeParam) { using (_unitOfWork = DIManager.UnitOfWork) { _unitOfWork.PersonalAccountantContext.Set <OperationCategory>().Add(new OperationCategory() { Name = nameParam, OperationTypeId = Convert.ToInt32(operationTypeParam) }); _unitOfWork.Save(); return(_unitOfWork.PersonalAccountantContext.Set <OperationCategory>().FirstOrDefault <OperationCategory>(x => x.Name.ToUpper() == nameParam.ToUpper())); } }
public NameIdClassModel GetCategoryWithCurrentName(string nameParam, DBModelManagers.Abstract.OperationType operationTypeParam) { using (_unitOfWork = DIManager.UnitOfWork) { int operationTypeId = Convert.ToInt32(operationTypeParam); OperationCategory contextCategory = _unitOfWork.PersonalAccountantContext.Set <OperationCategory>(). FirstOrDefault <OperationCategory>(x => x.Name.ToUpper() == nameParam.ToUpper() && x.OperationTypeId == operationTypeId); if (contextCategory == null) { int Id = 0; contextCategory = Int32.TryParse(nameParam, out Id) ? _unitOfWork.PersonalAccountantContext.Set <OperationCategory>().FirstOrDefault(x => x.Id == Id && x.OperationTypeId == operationTypeId) : CreateNewCategory(nameParam, operationTypeParam); } return(_mapperManager.MapModel <OperationCategory, NameIdClassModel>(contextCategory)); } }
public override bool addNewOperation <TObject>(TObject modelParam, string userName) { AddOperationModel model = modelParam as AddOperationModel; if (model != null && model != null && ValidationManager.modelIsValid(model)) { DBModelManagers.Abstract.OperationType operationType = model.IsAddOperation ? DBModelManagers.Abstract.OperationType.Income : DBModelManagers.Abstract.OperationType.Outcome; ModelsForPersonalOperationModel modelForOperation = new ModelsForPersonalOperationModel { CategoryModel = new NameIdClassModel(), CurrencyModel = new CurrencyNameIdRateClass(), OperationType = operationType, SourceModel = new NameIdClassModel() }; GetModelsForOperationOptions(ref model, modelForOperation); Operation newOperation = new Operation() { Summ = Convert.ToDecimal(model.Summ), Date = model.Date, Commentary = model.Commentary }; PersonalAccountForeignKeyForSetModels fKModel = new PersonalAccountForeignKeyForSetModels { CurrencyModel = modelForOperation.CurrencyModel, CategoryModel = modelForOperation.CategoryModel, SourceModel = modelForOperation.SourceModel, UserId = userName, OperationType = operationType }; SetIdForForeignKeys(fKModel, DIManager.UnitOfWork, ref newOperation); return(AddOperationToDB(newOperation, model.Template)); } return(false); }