示例#1
0
        public ActionResult Add()
        {
            var model = new AddProduct();

            try
            {
                model.Price                 = "0";
                model.Discount              = "0";
                model.BrandSelectOptions    = DropDownListOption.GetBrandOptions();
                model.CategorySelectOptions = DropDownListOption.GetCategoryOptions();
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("", ex.Message);

                // Write error log
                var log = new Log();
                log.LogDate = DateTime.Now;
                log.Action  = "Product - Add()";
                log.Tags    = "Error";
                log.Message = ex.ToString();
                db.Logs.Add(log);
            }
            return(View(model));
        }
示例#2
0
 public ActionResult ImportHistory()
 {
     ViewBag.BrandSelectOptions    = DropDownListOption.GetBrandOptions();
     ViewBag.CategorySelectOptions = DropDownListOption.GetCategoryOptions();
     ViewBag.SupplierSelectOptions = DropDownListOption.GetSupplierOptions();
     return(View());
 }
示例#3
0
        public ActionResult Edit(EditProduct model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var product = db.Products.Where(p => p.ProductId == model.ProductId).FirstOrDefault();
                    if (product != null)
                    {
                        decimal price    = 0;
                        decimal discount = 0;
                        if (Decimal.TryParse(model.Price.Replace(",", ""), out price) &&
                            Decimal.TryParse(model.Discount.Replace(",", ""), out discount))
                        {
                            product.ProductName       = model.ProductName;
                            product.ProductNameUnsign = StringExtensions.convertToUnSign(model.ProductName).ToLower();
                            product.Description       = model.Description;
                            product.DescriptionUnsign = StringExtensions.convertToUnSign(model.Description).ToLower();
                            product.BrandId           = model.BrandId;
                            product.CategoryId        = model.CategoryId;
                            product.SKU             = model.SKU;
                            product.QuantityPerUnit = model.QuantityPerUnit;
                            product.Price           = price;
                            product.Discount        = discount;
                            product.LastUpdate      = DateTime.Now;
                            product.LastUpdateUser  = GetLogonUserName();

                            db.SaveChanges();
                            return(RedirectToAction("Index"));
                        }
                        else
                        {
                            ModelState.AddModelError("", "Giá sản phẩm không hợp lệ!");
                        }
                    }
                    else
                    {
                        ModelState.AddModelError("", "Không tìm thấy sản phẩm!!!");
                    }
                }
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("", ex.Message);

                // Write error log
                var log = new Log();
                log.LogDate = DateTime.Now;
                log.Action  = "Product - Edit()";
                log.Tags    = "Error";
                log.Message = ex.ToString();
                db.Logs.Add(log);
            }
            finally
            {
                model.BrandSelectOptions    = DropDownListOption.GetBrandOptions(model.BrandId ?? 0);
                model.CategorySelectOptions = DropDownListOption.GetCategoryOptions(model.CategoryId ?? 0);
            }
            return(View(model));
        }
示例#4
0
        private void BindOption()
        {
            DropDownListOption.DataSource     = SPARInsightManagement.Web.Code.Option.GetOptionList();
            DropDownListOption.DataTextField  = "Description";
            DropDownListOption.DataValueField = "OptionId";
            DropDownListOption.DataBind();

            DropDownListOption.Items.Remove("4"); //Mobile
            DropDownListOption.Items.Remove("5"); //Adhoc

            DropDownListOption.Items.Insert(0, new ListItem("Please select", "0"));
        }
示例#5
0
        public ActionResult Edit(int id)
        {
            var model = new EditProduct();

            try
            {
                var product = db.Products.Where(p => p.ProductId == id).FirstOrDefault();
                if (product != null)
                {
                    model.ProductId       = product.ProductId;
                    model.ProductName     = product.ProductName;
                    model.Description     = product.Description;
                    model.BrandId         = product.BrandId;
                    model.CategoryId      = product.CategoryId;
                    model.SKU             = product.SKU;
                    model.QuantityPerUnit = product.QuantityPerUnit;
                    model.Price           = product.Price.ToString("#,##0");
                    model.Discount        = product.Discount.ToString("#,##0");
                    return(View(model));
                }
                else
                {
                    ModelState.AddModelError("", "Không tìm thấy sản phẩm!!!");
                }
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("", ex.Message);

                // Write error log
                var log = new Log();
                log.LogDate = DateTime.Now;
                log.Action  = "Product - Edit()";
                log.Tags    = "Error";
                log.Message = ex.ToString();
                db.Logs.Add(log);
            }
            finally
            {
                model.BrandSelectOptions    = DropDownListOption.GetBrandOptions(model.BrandId ?? 0);
                model.CategorySelectOptions = DropDownListOption.GetCategoryOptions(model.CategoryId ?? 0);
            }
            return(View(model));
        }
示例#6
0
        public ActionResult EditImport(int id)
        {
            var model = new EditImport();

            try
            {
                var import = db.Imports.Where(im => im.ImportId == id).FirstOrDefault();
                if (import != null)
                {
                    model.ImportId              = import.ImportId;
                    model.ImportDate            = import.ImportDate.ToString("dd/MM/yyyy");
                    model.SupplierId            = import.SupplierId;
                    model.ProductId             = import.ProductId;
                    model.Quantity              = import.Quantity.ToString("#,##0");
                    model.ImportPrice           = import.ImportPrice.ToString("#,##0");
                    model.Note                  = import.Note;
                    model.SupplierSelectOptions = DropDownListOption.GetSupplierOptions(import.SupplierId);
                    model.ProductSelectOptions  = DropDownListOption.GetProductOptions(import.ProductId);
                }
                else
                {
                    ModelState.AddModelError("", "Không tìm thấy thông tin nhập kho!");
                }
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("", ex.Message);

                // Write error log
                var log = new Log();
                log.LogDate = DateTime.Now;
                log.Action  = "Stock - EditImport()";
                log.Tags    = "Error";
                log.Message = ex.ToString();
                db.Logs.Add(log);
            }
            return(View(model));
        }
示例#7
0
        public ActionResult EditExport(EditExport model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var export = db.Exports.Where(im => im.ExportId == model.ExportId).FirstOrDefault();
                    if (export != null)
                    {
                        int      quantity    = 0;
                        decimal  exportPrice = 0;
                        DateTime exportDate  = DateTime.Now;

                        // Validate user input data
                        if (!DateTime.TryParseExact(model.ExportDate, "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out exportDate))
                        {
                            ModelState.AddModelError("", "Ngày xuất không hợp lệ!");
                            return(View(model));
                        }

                        if (!int.TryParse(model.Quantity.Replace(",", ""), out quantity))
                        {
                            ModelState.AddModelError("", "Số lượng xuất không hợp lệ!");
                            return(View(model));
                        }

                        if (!decimal.TryParse(model.ExportPrice.Replace(",", ""), out exportPrice))
                        {
                            ModelState.AddModelError("", "Giá xuất không hợp lệ!");
                            return(View(model));
                        }

                        // update product unit in stock
                        var currentProduct = db.Products.Where(p => p.ProductId == export.ProductId).FirstOrDefault();
                        if (currentProduct != null)
                        {
                            currentProduct.UnitInStock -= export.Quantity;
                        }
                        if (currentProduct.ProductId == model.ProductId)
                        {
                            currentProduct.UnitInStock += quantity;
                        }
                        else
                        {
                            var updatedProduct = db.Products.Where(p => p.ProductId == model.ProductId).FirstOrDefault();
                            if (updatedProduct != null)
                            {
                                updatedProduct.UnitInStock += quantity;
                            }
                        }

                        // update import info
                        export.ExportDate  = exportDate;
                        export.ProductId   = model.ProductId;
                        export.Quantity    = quantity;
                        export.ExportPrice = exportPrice;
                        export.Note        = model.Note;

                        db.SaveChanges();
                        return(RedirectToAction("ExportHistory"));
                    }
                    else
                    {
                        ModelState.AddModelError("", "Không tìm thấy thông tin xuất kho!");
                        return(View(model));
                    }
                }
                else
                {
                    ModelState.AddModelError("", "Thông tin xuất kho không hợp lệ!");
                }
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("", ex.Message);

                // Write error log
                var log = new Log();
                log.LogDate = DateTime.Now;
                log.Action  = "Stock - EditExport()";
                log.Tags    = "Error";
                log.Message = ex.ToString();
                db.Logs.Add(log);
            }
            finally
            {
                model.ProductSelectOptions = DropDownListOption.GetProductOptions(model.ProductId);
            }
            return(View(model));
        }
示例#8
0
 public ActionResult Index()
 {
     ViewBag.BrandSelectOptions    = DropDownListOption.GetBrandOptions();
     ViewBag.CategorySelectOptions = DropDownListOption.GetCategoryOptions();
     return(View());
 }