示例#1
0
        public ActionResult Add(ProductDetail model)
        {
            ProductServices pds = new ProductServices();

            pds.Add(model.product);
            return(RedirectToAction("Index"));
        }
示例#2
0
        protected void btnSubmit_Click(object sender, EventArgs e)
        {
            Model.Product u = new Model.Product
            {
                Product_Title   = this.txtName.Text,
                Product_Image   = upFileName(this.FileUpload1, "../../upload/Product/"),
                Product_Intro   = this.textIntro.Text,
                Product_Content = this.txtContent.Text,
                Product_Price   = int.Parse(this.txtPrice.Text)
            };
            var       res = productSvc.Add(u);
            ReturnMsg rm  = res > 0
                ? new ReturnMsg()
            {
                Code    = StatusCode.OK,
                Message = "新增用户信息成功",
                Data    = null
            }
                : new ReturnMsg()
            {
                Code    = StatusCode.Error,
                Message = "新增用户信息失败",
                Data    = null
            };

            Session["Msg"] = rm; //用于传递执行信息的
            Response.Redirect("Product_List.aspx");
        }
示例#3
0
        public void ProductNameNullException()
        {
            Product         product         = new Product();
            ProductServices productServices = new ProductServices(null);

            Assert.ThrowsException <System.ArgumentException>(() => productServices.Add(product));
        }
示例#4
0
        public async Task Add_InvalidProductGroup_ReturnError(int gid, string n, string pf)
        {
            // ===== Arrange =====
            var dbName      = Guid.NewGuid().ToString();
            var context     = BuildContext(dbName);
            var mapper      = BuildMap();
            var httpContext = new Mock <IHttpContextAccessor>();
            var http        = new DefaultHttpContext();

            httpContext.Setup(_ => _.HttpContext).Returns(http);

            var user = await Generate_ProductGroup_Data(context, mapper, httpContext.Object);

            List <Claim> claims = new List <Claim>
            {
                new Claim(ClaimTypes.NameIdentifier, user.Id.ToString()),
                new Claim(ClaimTypes.Name, user.Username)
            };

            var loginHttpContext = new Mock <IHttpContextAccessor>();
            var loginHttp        = new DefaultHttpContext();

            loginHttp.User.AddIdentity(new ClaimsIdentity(claims));
            loginHttpContext.Setup(_ => _.HttpContext).Returns(loginHttp);

            var p = Decimal.Parse(pf, CultureInfo.InvariantCulture);

            bool exException = false;

            // ===== Act ======
            var accContext = BuildContext(dbName);

            try
            {
                var service = new ProductServices(accContext, mapper, loginHttpContext.Object);
                var result  = await service.Add(new ProductAddDTO { GroupId = gid, Name = n, Price = p });
            }
            catch (InvalidOperationException)
            {
                exException = true;
            }
            catch (Exception)
            {
                throw;
            }

            // ===== Assert =====
            // Expected Exception

            var assContext = BuildContext(dbName);

            Assert.IsTrue(exException);

            var count = assContext.Product.Count();

            Assert.AreEqual(0, count);
        }
示例#5
0
        static void Main(string[] args)
        {
            ProductServices productServices = new ProductServices();

            productServices.Add("ABC123", "Computer Pentium", (decimal)45000.00, (decimal)50000.00);
            productServices.Add("ABC124", "Computer i3", (decimal)75000.00, (decimal)90000.00);
            productServices.Add("ABC125", "Computer i5", (decimal)125000.00, (decimal)150000.00);
            productServices.Add("ABC126", "Computer i7", (decimal)150000.00, (decimal)175000.00);

            var listProduct = productServices.List();

            foreach (var item in listProduct)
            {
                Console.WriteLine(item.ProductId + "  " + item.ProductName + "  " + item.ProductCost.ToString("N2") + "  " + item.ProductPrice.ToString("N2"));
            }


            Console.ReadKey();
        }
示例#6
0
        public IHttpActionResult AddData(product productobj)
        {
            AuthDetails authdet = LoginUserDetails();

            productobj.UpdatedBy = authdet.UserId;
            productobj.CreatedBy = authdet.UserId;
            var result = service.Add(productobj);

            return(Ok(result));
        }
示例#7
0
 private void ButtonAdd_Click(object sender, RoutedEventArgs e)
 {
     try
     {
         productServices.Add(TextBoxProductID.Text, TextBoxProductName.Text.ToUpper(), decimal.Parse(TextBoxProductCost.Text), decimal.Parse(TextBoxProductPrice.Text));
         dataGridProduct.ItemsSource = productServices.List();
     }
     catch (System.Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
 }
示例#8
0
        public void ProductExistException()
        {
            Product product = new Product();

            product.ProductName = "Iphone";
            var productRepositoryMock = new Mock <IProductRepository>();

            productRepositoryMock.Setup(p => p.GetProductName(product.ProductName)).Returns(product);
            ProductServices productServices = new ProductServices(productRepositoryMock.Object);

            Assert.ThrowsException <System.ArgumentException>(() => productServices.Add(product));
        }
示例#9
0
        public async Task Add_ValidProduct_ReturnData(int gid, string n, string pf)
        {
            // ===== Arrange =====
            var dbName      = Guid.NewGuid().ToString();
            var context     = BuildContext(dbName);
            var mapper      = BuildMap();
            var httpContext = new Mock <IHttpContextAccessor>();
            var http        = new DefaultHttpContext();

            httpContext.Setup(_ => _.HttpContext).Returns(http);

            var user = await Generate_Product_Data(context, mapper, httpContext.Object);

            List <Claim> claims = new List <Claim>
            {
                new Claim(ClaimTypes.NameIdentifier, user.Id.ToString()),
                new Claim(ClaimTypes.Name, user.Username)
            };

            var loginHttpContext = new Mock <IHttpContextAccessor>();
            var loginHttp        = new DefaultHttpContext();

            loginHttp.User.AddIdentity(new ClaimsIdentity(claims));
            loginHttpContext.Setup(_ => _.HttpContext).Returns(loginHttp);

            var p = Decimal.Parse(pf, CultureInfo.InvariantCulture);

            // ===== Act ======

            var actContext = BuildContext(dbName);

            var service = new ProductServices(actContext, mapper, loginHttpContext.Object);
            var result  = await service.Add(new ProductAddDTO { GroupId = gid, Name = n, Price = p });

            var pid = result.Data.Id;

            // ===== Assert =====
            var assContext = BuildContext(dbName);

            Assert.IsTrue(result.IsSuccess);
            Assert.AreEqual(n, result.Data.Name);

            var assProduct = assContext.Product.Where(_ => _.Id == pid).FirstOrDefault();

            Assert.IsNotNull(assProduct);
            Assert.AreEqual(16, await assContext.Product.CountAsync());
        }
示例#10
0
 private void SaveProduct()
 {
     product             = new Product();
     product.name        = txtName.Text;
     product.codigo      = txtCode.Text;
     product.stock       = txtStock.Text;
     product.exDate      = dtpExpireDate.Value;
     product.description = txtDescription.Text;
     product.category    = cbCategory.SelectedIndex + 1;
     if (cbStatus.SelectedIndex == 0)
     {
         product.status = true;
     }
     else
     {
         product.status = false;
     }
     if (!Modify)
     {
         product.id = ProductRepository.Instancia.Products.Count + 1;
         if (productServices.Add(product))
         {
             MessageBox.Show("Producto agregado correctamente");
             this.Close();
         }
         else
         {
             MessageBox.Show("El producto no puedo ser agregado");
         }
     }
     else
     {
         if (productServices.Edit(Convert.ToInt32(txtID.Text), product))
         {
             MessageBox.Show("Producto modificado correctamente");
             this.Close();
         }
         else
         {
             MessageBox.Show("El producto no pudo ser modificado");
         }
     }
 }
示例#11
0
        public async Task Add_NoUser_ReturnError(int gid, string n, string pf)
        {
            // ===== Arrange =====
            var dbName      = Guid.NewGuid().ToString();
            var context     = BuildContext(dbName);
            var mapper      = BuildMap();
            var httpContext = new Mock <IHttpContextAccessor>();
            var http        = new DefaultHttpContext();

            httpContext.Setup(_ => _.HttpContext).Returns(http);

            var p = Decimal.Parse(pf, CultureInfo.InvariantCulture);

            bool exException = false;

            // ===== Act ======
            try
            {
                var service = new ProductServices(context, mapper, httpContext.Object);
                var result  = await service.Add(new ProductAddDTO { GroupId = gid, Name = n, Price = p });
            }
            catch (UnauthorizedAccessException)
            {
                exException = true;
            }
            catch (Exception)
            {
                throw;
            }

            // ===== Assert =====
            // Expected Exception

            var assContext = BuildContext(dbName);

            Assert.IsTrue(exException);

            var count = await assContext.Product.CountAsync();

            Assert.AreEqual(0, count);
        }
        public ActionResult Index(Products products, System.Web.HttpPostedFileBase photo)
        {
            var user = Session["user"];

            if (user == null)
            {
                return(RedirectToAction("Index", "Login"));
            }
            else
            {
                string resimAd       = Path.GetFileName(photo.FileName);
                var    yuklenecekyer = Path.Combine(Server.MapPath("~/Resimler"), resimAd);
                string resimyol      = "~/Resimler/" + resimAd;
                photo.SaveAs(yuklenecekyer);

                products.ProductPicture = resimyol;

                _productServices.Add(products);


                return(RedirectToAction("Index", "Home"));
            }
        }
示例#13
0
 static void Main(string[] args)
 {
     var service = new ProductServices();
     service.Add()
 }
示例#14
0
        static void Main(string[] args)
        {
            var service = new ProductServices();

            service.Add()
        }
 public ActionResult add(ProductInfo prodinfo)
 {
     prodService.Add(prodinfo);
     return(View());
 }
示例#16
0
 public void TestMethodAdd()
 {
     productServices.Add("ABC123", "Eraser", (decimal)10.00, (decimal)15.00);
 }