public IEnumerable <CurrencyRateViewModel> Convert(IEnumerable <CurrencyRateModel> source, IEnumerable <CurrencyRateViewModel> destination, ResolutionContext context) { if (context == null) { return(new CurrencyRateViewModel[0]); } if (source == null) { return(new CurrencyRateViewModel[0]); } var rates = new Collection <CurrencyRateViewModel>(); foreach (var rateModel in source) { var model = new CurrencyRateViewModel { Base = rateModel.Base.ToString().ToUpperInvariant(), BaseIso = (short)rateModel.Base, Target = rateModel.Target.ToString().ToUpperInvariant(), TargetIso = (short)rateModel.Target, Rate = rateModel.Rate }; rates.Add(model); } return(rates.OrderBy(a => a.TargetIso)); }
public ActionResult Currency(CurrencyViewModel curr) { if (curr.Amount == 0) { ModelState.AddModelError("Amount", "Amount is required"); } if (string.IsNullOrEmpty(curr.Currency)) { ModelState.AddModelError("Currency", "Currency is required"); } Double calrate = 0; if (ModelState.IsValid) { calrate = _currentService.CalculateCurrency(curr); var vm = new CurrencyRateViewModel() { Amount = curr.Amount, CalRateAmount = calrate, currency = curr.Currency }; //TempData["Name"] = vm.Name; return(View("CurrencyDisplayRate", vm)); } return(View(curr)); }
/// <summary> /// Delete an entity. /// </summary> /// <param name="model"></param> public void Delete(CurrencyRateViewModel model) { var entity = model.ToEntity(); this._CurrencyRatesRepository.Delete(entity); #region Commit Changes this._unitOfWork.Commit(); #endregion }
// GET: RateConfiguration public ActionResult CurrencyRateList() { var rateList = _context.RATEINFOes.ToList(); var currencyList = _context.CURRINFOes.ToList(); CurrencyRateViewModel model = new CurrencyRateViewModel() { Currinfos = currencyList, Rateinfos = rateList }; return(View(model)); }
/// <summary> /// Throw an exception if name is exist. /// </summary> /// <param name="model">CurrencyRate view model</param> public void ThrowExceptionIfExist(CurrencyRateViewModel model) { //ConditionFilter<CurrencyRate, long> condition = new ConditionFilter<CurrencyRate, long> //{ // Query = (entity => // entity.Name == model.Name && // entity.Id != model.Id) //}; //var existEntity = this._CurrencyRatesRepository.Get(condition).FirstOrDefault(); //if (existEntity != null) // throw new ItemAlreadyExistException(); }
/// <summary> /// Update an entity. /// </summary> /// <param name="model"></param> /// <returns></returns> public CurrencyRateViewModel Update(CurrencyRateViewModel model) { this.ThrowExceptionIfExist(model); var entity = model.ToEntity(); entity = this._CurrencyRatesRepository.Update(entity); #region Commit Changes this._unitOfWork.Commit(); #endregion model = entity.ToModel(); return(model); }
public IActionResult AddRate(int id, [FromBody] CurrencyRateViewModel model) { try { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } service.AddRate(model); return(Ok(new ResponceViewModel <string>($"Rate is created successfully") { HasError = false })); } catch (Exception ex) { logger.LogError($"Exception thrown on add currency rate: {ex}"); return(BadRequest(new ResponceViewModel <string>($"Add currency rate failed. {ex.Message}"))); } }