public async Task <IActionResult> Post([FromBody] AddCurrencyViewModel model) { if (model == null) { return(BadRequest()); } if (await _currencyRepo.IsExistCodeAsync(model.Code)) { ModelState.AddModelError("Code", Resources.Global.Common.ThisCodeExist); } if (await _currencyRepo.IsExistNameAsync(model.Name)) { ModelState.AddModelError("Name", Resources.Global.Common.ThisNameExist); } if (!ModelState.IsValid) { return(BadRequest(ModelState.GetWithErrorsKey())); } var currency = new Currency(model.Code, model.Name, model.Value, model.PartName, model.PartRate, model.Note); var affectedRows = await _currencyRepo.AddAsync(currency); if (affectedRows > 0) { var viewModel = _modelFactory.CreateViewModel(currency, _defaultKeysOptions.Value.CurrencyId); return(CreatedAtRoute("GetCurrency", new { id = currency.Number }, viewModel)); } return(BadRequest()); }
public async Task <IActionResult> GenerateDefaultCurrency(int id) { if (await _currencyRepository.CountAsync() > 0) { return(BadRequest("you already created currency")); } var currencyModel = _predefinedGuideService.GetCurrecny(id); if (currencyModel == null) { return(NotFound()); } var currency = new Currency(currencyModel.Code, currencyModel.GetName(_language), 1, currencyModel.GetPartName(_language), currencyModel.PartRate, currencyModel.ISOCode); var affectedRows = await _currencyRepository.AddAsync(currency); if (affectedRows > 0) { _defaultKeysOptions.Update(a => a.CurrencyId = currency.Id); return(Ok()); } return(BadRequest()); }
public async Task <int> Handle(CreateCurrencyCommand request, CancellationToken cancellationToken) { var @currency = _mapper.Map <Currency>(request); @currency = await _currencyRepository.AddAsync(@currency); return(@currency.Id); }
public async Task <Response <int> > Handle(CreateCurrencyCommand request, CancellationToken cancellationToken) { var currency = _mapper.Map <Currency>(request); await _currencyRepository.AddAsync(currency); await _unitOfWork.Commit(cancellationToken); return(new Response <int>(currency.Id)); }
public async Task CreateAsync(CurrencyCreateInputDto input) { Currency createCurrency = new Currency() { Code = input.Code, Description = input.Description, IsHomeCurrency = input.IsHomeCurrency, CreatedDate = input.CreatedDate, CreatedUserId = input.CreatedUserId }; await _currencyRepository.AddAsync(createCurrency); await _currencyRepository.SaveChangesAsync(); }
public async Task <CurrencyResponse> SaveAsync(Currency currency) { try { await _currencyRepository.AddAsync(currency); await _unitOfWork.CompleteAsync(); return(new CurrencyResponse(currency)); } catch (Exception ex) { return(new CurrencyResponse($"An error ocurred while saving currency: {ex.Message}")); } }