public virtual ActionResult OnCreateItem(long styleId) { LogI("OnCreateItem, id=" + styleId); var model = SealedBoxViewModel.BuildFromStyleId(Db, styleId); ViewBag.PartialViewName = "SealedBoxViewModel"; return(View("EditNew", model)); }
public virtual ActionResult DeleteBox(int id) { LogI("DeleteBox, Id=" + id); SealedBoxViewModel.Remove(Db, id, QuantityManager, Cache, Time.GetAppNowTime(), AccessManager.UserId); return(Json(MessageResult.Success(), JsonRequestBehavior.AllowGet)); }
public virtual ActionResult GetSealedBox([DataSourceRequest] DataSourceRequest request, long styleId) { LogI("GetSealedBox, styleId=" + styleId); var items = SealedBoxViewModel.GetAll(Db, styleId, includeArchive: AccessManager.IsAdmin).ToList(); var dataSource = items.ToDataSourceResult(request); return(new JsonResult { Data = dataSource, JsonRequestBehavior = JsonRequestBehavior.AllowGet }); }
public virtual ActionResult CopyBox(int id) { LogI("CopyBox, Id=" + id); var model = SealedBoxViewModel.CopyBox(Db, id, Time.GetAppNowTime(), AccessManager.UserId); Cache.RequestStyleIdUpdates(Db, new List <long>() { model.StyleId }, UpdateCacheMode.IncludeChild, AccessManager.UserId); return(Json(MessageResult.Success(), JsonRequestBehavior.AllowGet)); }
public SealedBoxCountingViewModel(IUnitOfWork db, long styleId) { StyleId = styleId; var styleItems = db.StyleItems.GetByStyleIdWithSizeGroupAsDto(styleId) .OrderBy(si => SizeHelper.GetSizeIndex(si.Size)) .ThenBy(si => si.Color) .ToList(); StyleItems = new StyleItemCollection() { DisplayMode = StyleItemDisplayMode.BoxBreakdown, Items = styleItems.Select(si => new StyleItemViewModel(si)).ToList() }; SealedBoxViewModel.SetDefaultBreakdowns(StyleItems.Items.ToList()); CreateDate = DateHelper.GetAppNowTime().Date; }
public virtual ActionResult Submit(SealedBoxViewModel model) { LogI("Submit, model=" + model); //Save if (ModelState.IsValid) { var id = model.Apply(Db, QuantityManager, Time.GetAppNowTime(), AccessManager.UserId); Cache.RequestStyleIdUpdates(Db, new List <long>() { model.StyleId }, UpdateCacheMode.IncludeChild, AccessManager.UserId); return(Json(new UpdateRowViewModel(model, "SealedBox_" + id, null, true))); } return(View("SealedBoxViewModel", model)); }
public void Apply(IUnitOfWork db, IQuantityManager quantityManager, ILogService log, ICacheService cache, ISystemActionService actionService, DateTime when, long?by) { log.Info("AddSealedBoxWizardViewModel.Apply, StyleId=" + StyleId); if (IncomeType == (int)BoxIncomePackType.PPK) { var box = new SealedBoxViewModel(); box.StyleId = StyleId; box.BoxBarcode = BoxBarcode; box.BoxQuantity = BoxQuantity; box.Price = Price ?? 0; box.Owned = Owned; box.PolyBags = false; box.Printed = Printed; box.CreateDate = CreateDate.HasValue ? DateHelper.ConvertUtcToApp(CreateDate.Value.ToUniversalTime()) : when; box.StyleItems = new StyleItemCollection() { Items = Sizes.Select(s => new StyleItemViewModel() { Id = s.Id, Breakdown = s.Breakdown, }).ToList() }; box.Apply(db, quantityManager, when, by); } if (IncomeType == (int)BoxIncomePackType.PolyBagged) { foreach (var size in Sizes.Where(si => si.Quantity > 0)) { var box = new SealedBoxViewModel(); box.StyleId = StyleId; box.BoxBarcode = BoxBarcode; box.BoxQuantity = size.Quantity ?? 0; box.Price = Price ?? 0; box.Owned = Owned; box.PolyBags = true; box.Printed = Printed; box.CreateDate = CreateDate.HasValue ? DateHelper.ConvertUtcToApp(CreateDate.Value.ToUniversalTime()) : when; box.StyleItems = new StyleItemCollection() { Items = new List <StyleItemViewModel>() { new StyleItemViewModel() { Id = size.Id, Breakdown = UnitsPerBox } } }; box.Apply(db, quantityManager, when, by); } } if (IncomeType == (int)BoxIncomePackType.Other) { var box = new OpenBoxViewModel(); box.StyleId = StyleId; box.BoxBarcode = BoxBarcode; box.BoxQuantity = 1; box.Price = Price ?? 0; box.Owned = Owned; box.PolyBags = false; box.Printed = Printed; box.CreateDate = CreateDate.HasValue ? DateHelper.ConvertUtcToApp(CreateDate.Value.ToUniversalTime()) : when; box.StyleItems = new StyleItemCollection() { Items = Sizes.Select(s => new StyleItemViewModel() { Id = s.Id, Quantity = s.Quantity, }).ToList() }; box.Apply(db, quantityManager, when, by); } foreach (var size in Sizes) { var styleItem = db.StyleItems.Get(size.Id); if (size.UseBoxQuantity && styleItem.Quantity.HasValue) { log.Info("Switch to box quantity, styleItemId=" + size.Id); var oldQuantity = styleItem.Quantity; styleItem.Quantity = null; styleItem.QuantitySetBy = null; styleItem.QuantitySetDate = null; styleItem.RestockDate = null; db.Commit(); quantityManager.LogStyleItemQuantity(db, styleItem.Id, null, oldQuantity, QuantityChangeSourceType.UseBoxQuantity, null, null, BoxBarcode, when, by); } } cache.RequestStyleIdUpdates(db, new List <long>() { StyleId }, UpdateCacheMode.IncludeChild, by); SystemActionHelper.RequestQuantityDistribution(db, actionService, StyleId, by); }