Exemplo n.º 1
0
        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));
        }
Exemplo n.º 2
0
        /// <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));
        }
Exemplo n.º 3
0
        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));
        }
Exemplo n.º 4
0
 /// <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";
     }
 }
Exemplo n.º 5
0
        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));
        }
Exemplo n.º 6
0
        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));
        }