public static ProductType toOneProductType(this ProductTypesVM producttype)
 {
     return(new ProductType()
     {
         Id = producttype.Id,
         Name = producttype.Name,
         RegisterDate = producttype.RegisterDate
     });
 }
        public ViewResult AddNewType(int?id)
        {
            var producttype = new ProductTypesVM();

            if (id != null)
            {
                producttype = _ProductTypeRepository.Get((int)id).toProductTypeVM();
            }
            return(View(producttype));
        }
 public IActionResult Edit(ProductTypesVM vm)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest(ModelState.GetErrorJson()));
     }
     else
     {
         vm.DoEdit(false);
         if (!ModelState.IsValid)
         {
             return(BadRequest(ModelState.GetErrorJson()));
         }
         else
         {
             return(Ok(vm.Entity));
         }
     }
 }
        public ActionResult AddNewType(ProductTypesVM prod)
        {
            var producttype = prod.toOneProductType();

            if (ModelState.IsValid)
            {
                if (producttype.Id == 0)
                {
                    _ProductTypeRepository.Add(producttype);
                }
                else
                {
                    _ProductTypeRepository.Edit(producttype);
                }
                return(RedirectToAction("Index"));
            }

            return(View(producttype));
        }
        public void EditTest()
        {
            ProductTypes v = new ProductTypes();

            using (var context = new DataContext(_seed, DBTypeEnum.Memory))
            {
                v.ParentId = AddProductTypes();
                v.PTName   = "m6X";
                v.PTDes    = "N4Ly2H";
                context.Set <ProductTypes>().Add(v);
                context.SaveChanges();
            }

            ProductTypesVM vm    = _controller.Wtm.CreateVM <ProductTypesVM>();
            var            oldID = v.ID;

            v    = new ProductTypes();
            v.ID = oldID;

            v.PTName  = "Fg9Yr";
            v.PTDes   = "1l4oc3fIo";
            vm.Entity = v;
            vm.FC     = new Dictionary <string, object>();

            vm.FC.Add("Entity.ParentId", "");
            vm.FC.Add("Entity.PTName", "");
            vm.FC.Add("Entity.PTDes", "");
            var rv = _controller.Edit(vm);

            Assert.IsInstanceOfType(rv, typeof(OkObjectResult));

            using (var context = new DataContext(_seed, DBTypeEnum.Memory))
            {
                var data = context.Set <ProductTypes>().Find(v.ID);

                Assert.AreEqual(data.PTName, "Fg9Yr");
                Assert.AreEqual(data.PTDes, "1l4oc3fIo");
                Assert.AreEqual(data.UpdateBy, "user");
                Assert.IsTrue(DateTime.Now.Subtract(data.UpdateTime.Value).Seconds < 10);
            }
        }
        public void CreateTest()
        {
            ProductTypesVM vm = _controller.Wtm.CreateVM <ProductTypesVM>();
            ProductTypes   v  = new ProductTypes();

            v.ParentId = AddProductTypes();
            v.PTName   = "m6X";
            v.PTDes    = "N4Ly2H";
            vm.Entity  = v;
            var rv = _controller.Add(vm);

            Assert.IsInstanceOfType(rv, typeof(OkObjectResult));

            using (var context = new DataContext(_seed, DBTypeEnum.Memory))
            {
                var data = context.Set <ProductTypes>().Find(v.ID);

                Assert.AreEqual(data.PTName, "m6X");
                Assert.AreEqual(data.PTDes, "N4Ly2H");
                Assert.AreEqual(data.CreateBy, "user");
                Assert.IsTrue(DateTime.Now.Subtract(data.CreateTime.Value).Seconds < 10);
            }
        }
        // This action is authored by Jordan Dhaenens
        // This action grabs all ProuctTypes from the DB whose quantity is not zero and displays them
        // GET: Home/Products
        public IActionResult Products()
        {
            ProductTypesVM model = new ProductTypesVM(_context);

            return(View(model));
        }