public JsonResult GetOrderUsableProductCartList(ShowOrderUsableProductViewModel model) { Response response; try { using (var db = new KiaGalleryContext()) { var user = GetAuthenticatedUser(); var query = db.UsableProductCart.Where(x => x.BranchId == user.BranchId).Select(x => x); query = query.Where(x => x.Count > 0); if (model.categoryId != null && model.categoryId > 0) { query = query.Where(x => x.UsableProduct.CategoryUsableProduct.Id == model.categoryId); } if (model.childId != null && model.childId > 0) { query = query.Where(x => x.UsableProduct.CategoryUsableProduct.Id == model.childId); } var list = query.Select(item => new ShowOrderUsableProductViewModel { id = item.Id, name = item.UsableProduct.Name, childId = item.UsableProduct.CategoryUsableProduct.ParentId, productCount = item.Count, usableProductId = item.UsableProductId, description = item.Description, specification = item.Specification, createUser = item.CreateUser.FirstName + " " + item.CreateUser.LastName, image = item.UsableProduct.UsableProductFileList.Select(y => y.FileName).FirstOrDefault(), category = item.UsableProduct.CategoryUsableProduct.Title, unit = item.UsableProduct.Unit, createDate = item.CreateDate }).OrderBy(item => item.id).ToList(); list.ForEach(x => { x.persianDate = DateUtility.GetPersianDate(x.createDate); }); response = new Response() { status = 200, data = new { list = list, } }; }; } catch (Exception ex) { response = Core.GetExceptionResponse(ex); } return(Json(response, JsonRequestBehavior.AllowGet)); }
/// <summary> /// برگرداندن لیست جزئیات سفارشات ارسال شده از سمت دفترمرکزی برای نمایش در کاربر چاپخانه /// </summary> /// <param name="model"></param> /// <returns></returns> public JsonResult GetFinalOrderDetail(ShowOrderUsableProductViewModel model) { Response response; int dataCount; try { using (var db = new KiaGalleryContext()) { var user = GetAuthenticatedUser(); var query = db.OrderUsableProductDetail.Where(x => x.OrderUsableProductId == model.orderUsableProductId && x.UsableProduct.PrintingHouseId == user.PrintingHouseId); var list = query.Select(item => new ShowOrderUsableProductViewModel { id = item.Id, name = item.UsableProduct.Name, printingHouseId = item.UsableProduct.PrintingHouseId, orderUsableProductId = item.OrderUsableProductId, productCount = item.Count, specification = item.Specification, unit = item.UsableProduct.Unit, code = item.UsableProduct.Code, image = item.UsableProduct.UsableProductFileList.Select(y => y.FileName).FirstOrDefault(), category = item.UsableProduct.CategoryUsableProduct.Title, createUser = item.CreateUser.FirstName + " " + item.CreateUser.LastName, createBranch = item.OrderUsableProduct.Branch.Name, createDate = item.CreateDate, officeInventory = item.OfficeInventory.Value, remain = item.Remain.Value, delivered = item.Delivered, confirmDelivered = item.ConfirmDelivered, printingHouseInventory = item.PrintingHouseInventory, remainFinal = item.RemainFinal, readyForDelivery = item.ReadyForDelivery, branchType = item.OrderUsableProduct.Branch.BranchType, }).ToList(); list.ForEach(x => { x.orderUsableProductStatusTitle = Enums.GetTitle(x.orderUsableProductStatus); x.persianDate = DateUtility.GetPersianDate(x.createDate); }); response = new Response() { status = 200, data = new { list = list, } }; } } catch (Exception ex) { response = Core.GetExceptionResponse(ex); } return(Json(response, JsonRequestBehavior.AllowGet)); }
public JsonResult ManipulateAll(ShowOrderUsableProductViewModel model) { Response response; int dataCount; try { var currentUser = GetAuthenticatedUser(); using (var db = new KiaGalleryContext()) { var user = GetAuthenticatedUser(); var query = db.OrderUsableProductDetail.Where(x => x.OrderUsableProductId == model.orderUsableProductId); var list = query.Select(item => new ShowOrderUsableProductViewModel { id = item.Id, name = item.UsableProduct.Name, orderUsableProductId = item.OrderUsableProductId, printingHouseOrderId = item.UsableProduct.PrintingHouseId, productCount = item.Count, printingHouserOrder = item.OrderUsableProduct.PrintingHouserOrder, orderUsableProductStatus = item.OrderUsableProduct.OrderUsableProductStatus, image = item.UsableProduct.UsableProductFileList.Select(y => y.FileName).FirstOrDefault(), category = item.UsableProduct.CategoryUsableProduct.Title, description = item.Description, specification = item.Specification, createUser = item.CreateUser.FirstName + " " + item.CreateUser.LastName, createBranch = item.OrderUsableProduct.Branch.Name, createDate = item.CreateDate }).ToList(); list.ForEach(x => { x.persianDate = DateUtility.GetPersianDate(x.createDate); }); response = new Response() { status = 200, data = new { list = list, } }; } } catch (Exception ex) { response = Core.GetExceptionResponse(ex); } return(Json(response, JsonRequestBehavior.AllowGet)); }
/// <summary> /// قرار دادن رنگ زمینه مناسب برای هر سفارش که بسته به وضعیت محصولات داخل سفارش تعیین میشود /// </summary> /// <param name="x">سفارش مورد نظر</param> private void GetBackgroundColor(ShowOrderUsableProductViewModel x) { if (x.registered == x.sumCount) { x.bgColor = "bg-new-order"; } else if (x.sent == x.sumCount) { x.bgColor = "bg-done-order"; } else { x.bgColor = "bg-open-order"; } }
public JsonResult Increment(ShowOrderUsableProductViewModel model, string id) { Response response; try { int status = 200; string message = string.Empty; using (var db = new KiaGalleryContext()) { var user = GetAuthenticatedUser(); var branchId = user.BranchId.GetValueOrDefault(); var idList = id.Split('-').Select(x => int.Parse(x)); var entity = db.UsableProductCart.First(x => x.BranchId == branchId && idList.Any(y => y == x.Id)); if (entity != null) { entity.Count = entity.Count + 1; } db.SaveChanges(); message = "محصول با موفیقت به سبد خرید اضافه شد."; } response = new Response() { status = status, message = message }; } catch (Exception ex) { response = Core.GetExceptionResponse(ex); } return(Json(response, JsonRequestBehavior.AllowGet)); }
public JsonResult GetOrderUsableProductList(ShowOrderUsableProductViewModel model) { Response response; int dataCount; var user = GetAuthenticatedUser(); try { using (var db = new KiaGalleryContext()) { var query = db.OrderUsableProduct.Select(x => x); if (!User.IsInRole("admin")) { query = query.Where(x => x.BranchId == user.BranchId); } dataCount = query.Count(); query = query.OrderBy(x => x.CreateDate).Skip(model.page * model.count).Take(model.count); var list = query.Select(item => new ShowOrderUsableProductViewModel { id = item.Id, productCount = item.OrderUsableProductDetailList.Count, sumCount = item.OrderUsableProductDetailList.Sum(x => x.Count), registered = item.OrderUsableProductDetailList.Where(x => x.OrderUsableProduct.OrderUsableProductStatus == OrderUsableProductStatus.Registered).Sum(x => x.Count), inPreparation = item.OrderUsableProductDetailList.Where(x => x.OrderUsableProduct.OrderUsableProductStatus == OrderUsableProductStatus.InPreparation).Sum(x => x.Count), sent = item.OrderUsableProductDetailList.Where(x => x.OrderUsableProduct.OrderUsableProductStatus == OrderUsableProductStatus.Sent).Sum(x => x.Count), //usableProductId=item.UsableProductId, createUser = item.CreateUser.FirstName + " " + item.CreateUser.LastName, createBranch = item.Branch.Name, alias = item.Branch.Alias, createDate = item.CreateDate, orderUsableProductStatus = item.OrderUsableProductStatus, branchType = item.Branch.BranchType, }).ToList(); list.ForEach(x => GetBackgroundColor(x)); list.ForEach(x => { x.orderUsableProductStatusTitle = Enums.GetTitle(x.orderUsableProductStatus); x.persianDate = DateUtility.GetPersianDate(x.createDate); }); response = new Response() { status = 200, data = new { list = list, pageCount = Math.Ceiling((double)dataCount / model.count), count = dataCount, page = model.page + 1 } }; } } catch (Exception ex) { response = Core.GetExceptionResponse(ex); } return(Json(response, JsonRequestBehavior.AllowGet)); }