public static GiftVoucher ToEntity(this GiftVoucherModel model, GiftVoucher destination, IDateTimeService dateTimeService) { var giftVoucher = model.MapTo(destination); giftVoucher.ValidTo = model.ValidTo.ConvertToUtcTime(dateTimeService); return(giftVoucher); }
public async Task <IActionResult> NotifyRecipient(GiftVoucherModel model) { var giftVoucher = await _giftVoucherService.GetGiftVoucherById(model.Id); if (!CommonHelper.IsValidEmail(giftVoucher.RecipientEmail)) { ModelState.AddModelError("", "Recipient email is not valid"); } if (!CommonHelper.IsValidEmail(giftVoucher.SenderEmail)) { ModelState.AddModelError("", "Sender email is not valid"); } try { if (ModelState.IsValid) { await _giftVoucherViewModelService.NotifyRecipient(giftVoucher, model); } else { Error(ModelState); } } catch (Exception exc) { Error(exc, false); } return(RedirectToAction("Edit", new { id = model.Id })); }
public virtual async Task NotifyRecipient(GiftVoucher giftVoucher, GiftVoucherModel model) { model = giftVoucher.ToModel(_dateTimeService); var order = await FillGiftVoucherModel(giftVoucher, model); var languageId = ""; if (order != null) { var customerLang = await _languageService.GetLanguageById(order.CustomerLanguageId); if (customerLang == null) { customerLang = (await _languageService.GetAllLanguages()).FirstOrDefault(); } if (customerLang != null) { languageId = customerLang.Id; } } else { languageId = _languageSettings.DefaultAdminLanguageId; } int queuedEmailId = await _messageProviderService.SendGiftVoucherMessage(giftVoucher, order, languageId); if (queuedEmailId > 0) { giftVoucher.IsRecipientNotified = true; await _giftVoucherService.UpdateGiftVoucher(giftVoucher); model.IsRecipientNotified = true; } }
public async Task <IActionResult> Edit(GiftVoucherModel model, bool continueEditing) { var giftVoucher = await _giftVoucherService.GetGiftVoucherById(model.Id); if (giftVoucher == null) { return(RedirectToAction("List")); } await _giftVoucherViewModelService.FillGiftVoucherModel(giftVoucher, model); if (ModelState.IsValid) { giftVoucher = await _giftVoucherViewModelService.UpdateGiftVoucherModel(giftVoucher, model); Success(_translationService.GetResource("Admin.GiftVouchers.Updated")); if (continueEditing) { //selected tab await SaveSelectedTabIndex(); return(RedirectToAction("Edit", new { id = giftVoucher.Id })); } return(RedirectToAction("List")); } //If we got this far, something failed, redisplay form return(View(model)); }
public virtual async Task <GiftVoucherModel> PrepareGiftVoucherModel(GiftVoucherModel model) { foreach (var currency in await _currencyService.GetAllCurrencies()) { model.AvailableCurrencies.Add(new SelectListItem { Text = currency.Name, Value = currency.CurrencyCode }); } return(model); }
public virtual async Task <GiftVoucher> InsertGiftVoucherModel(GiftVoucherModel model) { var giftVoucher = model.ToEntity(_dateTimeService); giftVoucher.CreatedOnUtc = DateTime.UtcNow; await _giftVoucherService.InsertGiftVoucher(giftVoucher); //activity log await _customerActivityService.InsertActivity("AddNewGiftVoucher", giftVoucher.Id, _translationService.GetResource("ActivityLog.AddNewGiftVoucher"), giftVoucher.Code); return(giftVoucher); }
public async Task <IActionResult> Create(GiftVoucherModel model, bool continueEditing) { if (ModelState.IsValid) { var giftVoucher = await _giftVoucherViewModelService.InsertGiftVoucherModel(model); Success(_translationService.GetResource("Admin.GiftVouchers.Added")); return(continueEditing ? RedirectToAction("Edit", new { id = giftVoucher.Id }) : RedirectToAction("List")); } //If we got this far, something failed, redisplay form model = await _giftVoucherViewModelService.PrepareGiftVoucherModel(model); return(View(model)); }
public ProductDetailsModel() { DefaultPictureModel = new PictureModel(); PictureModels = new List <PictureModel>(); GiftVoucher = new GiftVoucherModel(); ProductPrice = new ProductPriceModel(); AddToCart = new AddToCartModel(); ProductAttributes = new List <ProductAttributeModel>(); AssociatedProducts = new List <ProductDetailsModel>(); BrandModel = new BrandBriefInfoModel(); VendorModel = new VendorBriefInfoModel(); Breadcrumb = new ProductBreadcrumbModel(); ProductTags = new List <ProductTagModel>(); ProductSpecifications = new List <ProductSpecificationModel>(); ProductCollections = new List <CollectionModel>(); ProductReviewOverview = new ProductReviewOverviewModel(); TierPrices = new List <TierPriceModel>(); Parameters = new List <SelectListItem>(); ProductBundleModels = new List <ProductBundleModel>(); ProductWarehouses = new List <ProductWarehouseModel>(); }
public virtual async Task <GiftVoucher> UpdateGiftVoucherModel(GiftVoucher giftVoucher, GiftVoucherModel model) { giftVoucher = model.ToEntity(giftVoucher, _dateTimeService); await _giftVoucherService.UpdateGiftVoucher(giftVoucher); //activity log await _customerActivityService.InsertActivity("EditGiftVoucher", giftVoucher.Id, _translationService.GetResource("ActivityLog.EditGiftVoucher"), giftVoucher.Code); return(giftVoucher); }
public virtual async Task <Order> FillGiftVoucherModel(GiftVoucher giftVoucher, GiftVoucherModel model) { Order order = null; if (giftVoucher.PurchasedWithOrderItem != null) { order = await _orderService.GetOrderByOrderItemId(giftVoucher.PurchasedWithOrderItem.Id); } var currency = await _currencyService.GetCurrencyByCode(giftVoucher.CurrencyCode); if (currency == null) { currency = await _currencyService.GetPrimaryStoreCurrency(); } model.PurchasedWithOrderId = giftVoucher.PurchasedWithOrderItem != null ? order.Id : null; model.RemainingAmountStr = _priceFormatter.FormatPrice(giftVoucher.GetGiftVoucherRemainingAmount(), currency, _workContext.WorkingLanguage, true, false); model.AmountStr = _priceFormatter.FormatPrice(giftVoucher.Amount, currency, _workContext.WorkingLanguage, true, false); model.CreatedOn = _dateTimeService.ConvertToUserTime(giftVoucher.CreatedOnUtc, DateTimeKind.Utc); model.CurrencyCode = giftVoucher.CurrencyCode; return(order); }