예제 #1
0
        public ActionResult GetProductJSON()
        {
            productd = new ProductDal();
            List <Product> prodList = productd.product.ToList <Product>();

            return(Json(prodList, JsonRequestBehavior.AllowGet));
        }
예제 #2
0
        //manager upgrade quantity or name of product
        public ActionResult UpgradeModel()
        {
            if (((string)Session["type"]).Equals("Employee"))
            {
                ProductDal dal = new ProductDal();
                Product    pro = new Product();
                pro.Model = Request.Form["Model"].ToString();
                string mo = Request.Form["Model"].ToString();
                pro.Quantity = Convert.ToInt32(Request.Form["Quantity"]);
                pro.Type     = Request.Form["Type"].ToString();
                pro.Price    = Convert.ToInt32(Request.Form["Price"]);
                List <Product> p = (from x in dal.product where x.Model.Contains(mo) select x).ToList();
                if (ModelState.IsValid && p.Count != 0)
                {
                    //there  is such model ... upgrade

                    var ToDelete = dal.product.First(m => m.Model == pro.Model);

                    // Delete
                    dal.product.Remove(ToDelete);
                    //add
                    dal.product.Add(pro);
                    dal.SaveChanges();
                    List <Product> prodL1 = dal.product.ToList <Product>();
                    return(Json(prodL1, JsonRequestBehavior.AllowGet));
                }

                return(RedirectToAction("EmployeeView", "Home"));
            }
            return(View("Home"));
        }
        //return product list
        public ActionResult getProductsByJSON()
        {
            Productdal = new ProductDal();
            List <Product> ProductList = Productdal.product.ToList <Product>();

            return(Json(ProductList, JsonRequestBehavior.AllowGet));
        }
예제 #4
0
        //manger removing exist product from table
        public ActionResult RemoveModel()
        {
            if (((string)Session["type"]).Equals("Employee"))
            {
                ProductDal dal = new ProductDal();
                Product    pro = new Product();
                pro.Model = Request.Form["Model"].ToString();
                string mo = Request.Form["Model"].ToString();
                TempData["Empty"] = "Please insert model number";

                List <Product> p = (from x in dal.product where x.Model.Contains(mo) select x).ToList();
                if (ModelState.IsValid && p.Count != 0)
                {
                    //there  is such model ... delete him

                    var ToDelete = dal.product.First(m => m.Model == pro.Model);
                    // Delete
                    dal.product.Remove(ToDelete);
                    dal.SaveChanges();
                    List <Product> prodL1 = dal.product.ToList <Product>();
                    return(Json(prodL1, JsonRequestBehavior.AllowGet));
                }

                else
                {
                    return(RedirectToAction("EmployeeView", "Home"));
                }
            }
            else
            {
                return(View("Home"));
            }
        }
예제 #5
0
        private void updateButton_Click(object sender, EventArgs e)
        {
            var data = (DataTable)editGridView.DataSource;

            ProductDal.UpdateTable(data);
            MessageBox.Show("Succesfully Updated");
        }
예제 #6
0
        /// <summary>
        /// método lógica de negocio para eliminar un Producto
        /// </summary>
        /// <param name="Producto"></param>
        public static void SoftDelete(Guid id)
        {
            OperationsLogs.WriteLogsDebug("ProductoBrl", "Eliminar", string.Format("{0} Info: {1}",
                                                                                   DateTime.Now.ToString(),
                                                                                   "Empezando a ejecutar el método lógica de negocio para Eliminar un Producto"));

            try
            {
                ProductDal.SoftDelete(id);
            }
            catch (SqlException ex)
            {
                OperationsLogs.WriteLogsRelease("ProductoBrl", "Eliminar", string.Format("{0} Error: {1}",
                                                                                         DateTime.Now.ToString(), DateTime.Now.ToString(), ex.Message));
                throw ex;
            }
            catch (Exception ex)
            {
                OperationsLogs.WriteLogsRelease("ProductoBrl", "Eliminar", string.Format("{0} Error: {1}",
                                                                                         DateTime.Now.ToString(), DateTime.Now.ToString(), ex.Message));
                throw ex;
            }

            OperationsLogs.WriteLogsDebug("ProductoBrl", "Eliminar", string.Format("{0} Info: {1}",
                                                                                   DateTime.Now.ToString(), DateTime.Now.ToString(),
                                                                                   "Termino de ejecutar  el método lógica de negocio para Eliminar Producto"));
        }
예제 #7
0
 public ProductManager()
 {
     bot        = new WebBot();
     productDal = new ProductDal();
     mailSender = new MailSender();
     handle     = new HandleException();
 }
예제 #8
0
        public ActionResult SubmitUpdate(VMProductAndProducts pps)
        {
            if (ModelState.IsValid)
            {
                Product        p  = pps.product;
                List <Product> ps = pps.products;
                Product        fromDB;
                ProductDal     dal = new ProductDal();
                //fromDB = dal.Products.FirstOrDefault(x => x.IdProduct.Equals(pps.product.IdProduct));
                List <Product> products = (from x in dal.Products
                                           where x.IdProduct.Equals(pps.product.IdProduct)
                                           select x).ToList <Product>();


                if (products != null && products.Count() == 1)
                {
                    fromDB = products.ElementAt(0);
                    fromDB.cloneDetail(pps.product);
                }
                try
                {
                    dal.SaveChanges();
                    HistoricalProductDal dalHistori = new HistoricalProductDal();
                    Product fromDBHisrori           = dalHistori.Products.FirstOrDefault(x => x.IdProduct.Equals(pps.product.IdProduct));
                    dalHistori.Products.Remove(fromDBHisrori);
                    dalHistori.Products.Add(pps.product);
                }
                catch (DbUpdateConcurrencyException)
                {
                    return(View("UpdateProduct", pps));
                }
                return(View("Actions", new VMUserAndProducrs(manager)));
            }
            return(View("UpdateProduct", pps));
        }
예제 #9
0
        /// <summary>
        /// 添加一条记录
        /// </summary>
        public ResultSet Add(Product entity)
        {
            Func <Product, ResultStatus> validate = (_entity) =>
            {
                return(new ResultStatus());
            };

            Func <Product, ResultStatus> op = (_entity) =>
            {
                int ret = new ProductDal().Add(entity);
                if (ret > 0)
                {
                    return(new ResultStatus());
                }
                else
                {
                    return new ResultStatus()
                           {
                               Success     = false,
                               Code        = StatusCollection.AddFailed.Code,
                               Description = StatusCollection.AddFailed.Description
                           }
                };
            };

            return(HandleBusiness(entity, op, validate));
        }
예제 #10
0
        public ActionResult updateMovieDetails(ProductModel check)
        {
            check.SeatsNum = check.SeatsNum * 12;

            ProductDal          productdal  = new ProductDal();
            List <ProductModel> productList = productdal.ProductData.ToList <ProductModel>();

            foreach (ProductModel movie in productList)
            {
                if (movie.MovieName.Equals(check.MovieName))
                {
                    //delete this line from db
                    productdal.ProductData.Remove(movie);
                    productdal.SaveChanges();
                }
            }
            if (ModelState.IsValid)
            {
                ProductDal dal = new ProductDal();
                dal.ProductData.Add(check);
                dal.SaveChanges();
                return(View("edit"));
            }
            return(View("edit"));
        }
예제 #11
0
        public ActionResult Home(User user)
        {
            User loginguser = (User)TempData["userLogIn"];

            if (loginguser != null)
            {
                main_user = loginguser;
            }
            else if (user != null)
            {
                main_user = user;
            }

            ProductDal     dal      = new ProductDal();
            List <Product> products = dal.Products.ToList <Product>();


            if (main_user == null)
            {
                return(View("Home", new VMUserAndProducrs(products)));
            }
            else
            {
                return(View("Home", new VMUserAndProducrs(main_user, products)));
            }
        }
예제 #12
0
        public void Add(Product product)
        {
            //aqui ficaria alguma validação de regra de negócio
            ProductDal dao = new ProductDal();

            dao.Add(product);
        }
예제 #13
0
        internal void UpdateBarcode(string text, string productCode, string barcode)
        {
            if (!ScanManagerView.InitCigaretteScanInfoStack())
            {
                return;
            }
            ProductDal productDal = new ProductDal();

            if (barcode != string.Empty && productDal.Exist(barcode))
            {
                return;
            }
            DataTable table = productDal.FindProduct(productCode);

            if (table.Rows.Count > 0)
            {
                UpdateBarcodeDialog updateBarcodeDialog = new UpdateBarcodeDialog(CigaretteScanInfoStack.Values.ToArray());
                updateBarcodeDialog.setInformation(text, barcode);
                if (updateBarcodeDialog.ShowDialog() == DialogResult.OK)
                {
                    if (updateBarcodeDialog.IsPass && updateBarcodeDialog.Barcode.Length == 6)
                    {
                        productCode = updateBarcodeDialog.SelectedCigaretteCode;
                        barcode     = updateBarcodeDialog.Barcode;
                        productDal.UpdateBarcode(productCode, barcode);
                        CigaretteScanInfoStack[productCode].Barcode = barcode;
                        AutomationContext.Write(memoryServiceName, memoryItemName, CigaretteScanInfoStack);
                    }
                    else
                    {
                        XtraMessageBox.Show("验证码错误,或者条码格式不对!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                }
            }
        }
예제 #14
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="shopId"></param>
        /// <param name="condition"></param>
        /// <returns>List of all BLProduct with a specific shop id in DB</returns>
        public static List <BLProduct> GetAllProductsByShopId(int shopId, string condition)
        {
            DataTable products = null;

            products = ProductDal.GetAllProductsOfShop(shopId, condition);
            return((from object rowProduct in products.Rows select new BLProduct((DataRow)rowProduct)).ToList());
        }
예제 #15
0
        // GET: Product/Details/5
        public ActionResult Details(int id)
        {
            ProductDal pd      = new ProductDal();
            var        product = pd.ProductDetail(id);

            return(View(product));
        }
예제 #16
0
        public async Task UpdateAsync(ProductDal oldItem, ProductDal newItem)
        {
            var desc  = oldItem.description != newItem.description ? newItem.description : "";
            var price = oldItem.price != newItem.price ? newItem.price : oldItem.price;
            var name  = oldItem.name != newItem.name ? newItem.name : "";

            var updateSql = "";

            if (desc != "")
            {
                updateSql = String.Format(" SET description = '{0}' ", desc);
            }
            if (!Equals(price, oldItem.price))
            {
                updateSql += String.Format("{0} SET price = {1} ", updateSql != "" ? "," : "", price);
            }
            if (name != "")
            {
                updateSql = String.Format("{0} SET name = '{1}' ", updateSql != "" ? "," : "", name);
            }

            if (updateSql != "")
            {
                string sql = string.Format(@" UPDATE products 
                            {0}
                            WHERE product_id = {1} ",

                                           updateSql,
                                           newItem.product_id);

                await OracleContextAsync.CreateUpdateDeleteAsync(sql);
            }
        }
예제 #17
0
        private void CustomerShopForm_Load(object sender, EventArgs e)
        {
            parentForm = MdiParent as ParentForm; //(ParentForm)

            lblCustomerShopCashDisplay.Text    = customerLoggedIn.Cash.ToString();
            dgwCustomerShopProducts.DataSource = ProductDal.Select();//.Where(p => p.StockAmount > 0);
        }
예제 #18
0
        /// <summary>
        /// PC端套餐集合分页查询
        /// 请勿删除
        /// </summary>
        /// <param name="pageIndex"></param>
        /// <param name="pageSize"></param>
        /// <param name="recordCount"></param>
        /// <returns></returns>
        public List <ProductModel> GetProductList(int?pageIndex, int?pageSize, string ProductName, ref int recordCount)
        {
            ProductDal dal = new ProductDal();

            recordCount = dal.GetCount(ProductName);
            return(dal.GetProductList(pageIndex, pageSize, ProductName));
        }
예제 #19
0
        /// <summary>
        /// método lógica de negocio para actulizar un Producto
        /// </summary>
        /// <param name="Producto"></param>
        public static void Update(Product product)
        {
            OperationsLogs.WriteLogsDebug("ProductoBrl", "Actualizar", string.Format("{0} Info: {1}",
                                                                                     DateTime.Now.ToString(),
                                                                                     "Empezando a ejecutar el método lógica de negocio para crear un Producto"));

            try
            {
                ProductDal.Update(product);
            }
            catch (SqlException ex)
            {
                OperationsLogs.WriteLogsRelease("ProductoBrl", "Actualizar", string.Format("{0} Error: {1}",
                                                                                           DateTime.Now.ToString(), DateTime.Now.ToString(), ex.Message));
                throw ex;
            }
            catch (Exception ex)
            {
                OperationsLogs.WriteLogsRelease("ProductoBrl", "Actualizar", string.Format("{0} Error: {1}",
                                                                                           DateTime.Now.ToString(), DateTime.Now.ToString(), ex.Message));
                throw ex;
            }

            OperationsLogs.WriteLogsDebug("ProductoBrl", "Actualizar", string.Format("{0} Info: {1}",
                                                                                     DateTime.Now.ToString(), DateTime.Now.ToString(),
                                                                                     "Termino de ejecutar  el método lógica de negocio para actualizar Producto"));
        }
예제 #20
0
        /// <summary>
        /// update products quantity with active employee's request(s)
        /// </summary>
        /// <returns></returns>
        public ActionResult restockProducts()
        {
            if (Session == null || Session["type"] == null || !((string)Session["type"]).Equals("Employee"))
            {
                return(RedirectToAction("my404", "Home"));
            }
            else
            {
                int empID = (int)Session["userID"];
            }

            stockDal = new stockRequestDal();

            //add: stock requests by empID
            List <StockRequest> srlist = stockDal.stockRequests.Where(sr => sr.arrivedDate == null).ToList();

            string query = "UPDATE Products " +
                           "SET " +
                           "Products.Quantity = Products.Quantity + s.Quantity " +
                           "FROM " +
                           "Products " +
                           "INNER JOIN " +
                           "(SELECT * FROM stockOrders WHERE arrivedDate IS NULL) s " +
                           "ON " +
                           "Products.Model = s.Model; ";

            proddal = new ProductDal();
            proddal.Database.ExecuteSqlCommand(query);

            srlist.ForEach(sr => sr.arrivedDate = DateTime.Now);
            stockDal.SaveChanges();
            return(new EmptyResult());
        }
예제 #21
0
        public ActionResult AddProducts()
        {
            CustomerViewModel cvm  = Session["cvm"] as CustomerViewModel;
            ProductDal        pdal = new ProductDal();

            cvm.products = pdal.Products.ToList <Product>();
            return(View(cvm));
        }
예제 #22
0
        public List <Product> GetAll()
        {
            ProductDal dao = new ProductDal();

            List <Product> lista = dao.GetAll();

            return(lista);
        }
예제 #23
0
        public Product FindById(int id)
        {
            ProductDal dao = new ProductDal();

            Product product = dao.FindById(id);

            return(product);
        }
        public void Get_all_returns_all_products()
        {
            ProductDal productDal = new ProductDal();

            var result = productDal.GetList();

            Assert.AreEqual(78, result.Count);
        }
예제 #25
0
 /// <summary>
 ///     Returns products of a given type, matching given search parameters
 /// </summary>
 /// <param name="productId"></param>
 /// <param name="name"></param>
 /// <param name="productType"></param>
 /// <returns></returns>
 public IEnumerable <Product> GetProducts(uint?productId = null, string name = null, ProductType?productType = null)
 {
     using (var connection = Connector.GetConnection())
     {
         var productDal = new ProductDal(connection);
         return(productDal.Search(productId, name == null ? null : $"%{name}%", productType));
     }
 }
예제 #26
0
        private void btnSellerProductsRemove_Click(object sender, EventArgs e)
        {
            ProductDal.Delete((Product)dgwSellerProducts.CurrentRow.DataBoundItem);

            dgwSellerProducts.DataSource = ProductDal.Select().Where(p => p.SellerId == sellerLoggedIn.Id).Where(p => p.StockAmount > 0);

            MessageBox.Show("Product Deleted");
        }
        public void Get_all_with_parameter_returns_filtered_products()
        {
            ProductDal productDal = new ProductDal();

            var result = productDal.GetList(p => p.ProductName.Contains("ab"));

            Assert.AreEqual(4, result.Count);
        }
예제 #28
0
        // GET: Product/Delete/5
        public ActionResult Delete(int id)
        {
            ProductDal pd      = new ProductDal();
            var        product = pd.ProductDetail(id);

            ViewBag.CatList = pd.CategoryList();

            return(View(product));
        }
예제 #29
0
        public static ProductDto GetProduct(int id)
        {
            //products from dataBase for certain category
            Product    product    = ProductDal.GetProduct(id);
            ProductDto dtoProduct = new ProductDto(product);

            //converting Dal Object to Dto
            return(dtoProduct);
        }
예제 #30
0
        // GET: Product
        public ActionResult Index()
        {
            ProductDal pd      = new ProductDal();
            var        product = pd.ProductsList();

            ViewBag.CatList = pd.CategoryList();

            return(View(product));
        }