public JsonResult <Models.Product> GetProduct(int id)
        {
            EntityMapper <DataAccessLayer.Product, Models.Product> mapObj = new EntityMapper <DataAccessLayer.Product, Models.Product>();

            DataAccessLayer.Product dalProduct = DAL.GetProduct(id);
            Models.Product          products   = new Models.Product();
            products = mapObj.Translate(dalProduct);
            return(Json <Models.Product>(products));
        }
        public bool UpdateProduct(Models.Product product)
        {
            EntityMapper <Models.Product, DataAccessLayer.Product> mapObj = new EntityMapper <Models.Product, DataAccessLayer.Product>();

            DataAccessLayer.Product productObj = new DataAccessLayer.Product();
            productObj = mapObj.Translate(product);
            var status = DAL.UpdateProduct(productObj);

            return(status);
        }
 private void MapProduct(Product productToMap, Product productMapper)
 {
     productToMap.Name = productMapper.Name;
     productToMap.Description = productMapper.Description;
     productToMap.CategoryID = productMapper.CategoryID;
     productToMap.Price = productMapper.Price;
     productToMap.Stock = productMapper.Stock;
     productToMap.EntryDate = productMapper.EntryDate;
     productToMap.ExpirationDate = productMapper.ExpirationDate;
 }
        public int Create(Product product)
        {
            using (_dbContext = new ProductsEntities())
            {
                _dbContext.Products.Add(product);
                var result = _dbContext.SaveChanges();

                return (result > 0) ? product.ID : -1;
            }
        }
示例#5
0
        public bool UpdateProduct(Models.ProductDetails product)
        {
            //EntityMapper<Models.ProductDetails, DataAccessLayer.Product> mapObj = new EntityMapper<Models.ProductDetails, DataAccessLayer.Product>();
            DataAccessLayer.Product productObj = new DataAccessLayer.Product();
            var config = new MapperConfiguration(cfg => cfg.CreateMap <Models.ProductDetails, Product>());
            var mapper = new Mapper(config);

            productObj = mapper.Map <Product>(product);
            var status = DAL.UpdateProduct(productObj);

            return(status);
        }
        public bool InsertProduct(Models.Product product)
        {
            bool status = false;

            if (ModelState.IsValid)
            {
                EntityMapper <Models.Product, DataAccessLayer.Product> mapObj = new EntityMapper <Models.Product, DataAccessLayer.Product>();
                DataAccessLayer.Product productObj = new DataAccessLayer.Product();
                productObj = mapObj.Translate(product);
                status     = DAL.InsertProduct(productObj);
            }
            return(status);
        }
示例#7
0
        public bool VerifyProductCode(string code)
        {
            EntityMapper <DataAccessLayer.Product, Models.Product> mapObj = new EntityMapper <DataAccessLayer.Product, Models.Product>();

            DataAccessLayer.Product dalProduct = DAL.GetProduct(code);

            if (dalProduct != null)
            {
                return(true);
            }

            return(false);
        }
示例#8
0
        public bool InsertProduct(Models.ProductDetails product)
        {
            bool status = false;

            if (ModelState.IsValid)
            {
                //EntityMapper<Models.ProductDetails, DataAccessLayer.Product> mapObj = new EntityMapper<Models.ProductDetails, DataAccessLayer.Product>();
                DataAccessLayer.Product productObj = new DataAccessLayer.Product();
                var config = new MapperConfiguration(cfg => cfg.CreateMap <Models.ProductDetails, Product>());
                var mapper = new Mapper(config);
                productObj = mapper.Map <Product>(product);
                status     = DAL.InsertProduct(productObj);
            }
            return(status);
        }
示例#9
0
 public DTO.Product Add(DataAccessLayer.Product product)
 {
     using (var db = new LNBagShopDBEntities())
     {
         var returnEntity = db.Products.Add(product);
         var config       = new MapperConfiguration(cfg =>
         {
             cfg.AddProfile(new MappingProfile());
         });
         var mapper  = config.CreateMapper();
         var return1 = mapper.Map <DataAccessLayer.Product, DTO.Product>(returnEntity);
         db.SaveChanges();
         return(return1);
     }
 }
示例#10
0
 public JsonResult <Models.ProductDetails> GetProduct(int id)
 {
     //EntityMapper<DataAccessLayer.Product, Models.ProductDetails> mapObj = new EntityMapper<DataAccessLayer.Product, Models.ProductDetails>();
     DataAccessLayer.Product dalProduct = DAL.GetProduct(id);
     if (dalProduct == null)
     {
         //return Json<Models.ProductDetails>(null);
         throw new ArgumentNullException(id.ToString());
     }
     else
     {
         Models.ProductDetails products = new Models.ProductDetails();
         var config = new MapperConfiguration(cfg => cfg.CreateMap <Product, Models.ProductDetails>());
         var mapper = new Mapper(config);
         products = mapper.Map <Models.ProductDetails>(dalProduct);
         return(Json <Models.ProductDetails>(products));
     }
 }
示例#11
0
 public DTO.Product GetProduct(int id)
 {
     using (var db = new LNBagShopDBEntities())
     {
         DTO.Product             product   = null;
         DataAccessLayer.Product dbProduct = db.Products.Find(id);
         if (dbProduct != null)
         {
             var config = new MapperConfiguration(cfg =>
             {
                 cfg.AddProfile(new MappingProfile());
             });
             var mapper = config.CreateMapper();
             product = mapper.Map <DataAccessLayer.Product, DTO.Product>(dbProduct);
         }
         return(product);
     }
 }
 public int Update(Product product)
 {
     Product dbProduct;
     var result = -1;
     using (_dbContext = new ProductsEntities())
     {
         dbProduct = _dbContext.Products.FirstOrDefault(p => p.ID == product.ID);
     }
     if (dbProduct != null)
     {
         MapProduct(dbProduct, product);
         using (_dbContext = new ProductsEntities())
         {
             _dbContext.Entry(product).State = System.Data.Entity.EntityState.Modified;
             result = _dbContext.SaveChanges();
         }
     }
     return result;
 }
示例#13
0
        public int SaveProduct(TestProduct product)
        {
            DataAccessLayer.Product newProduct = null;
            using (var context = new BhasadEntities())
            {
                var oldProduct = (from prod in context.Products
                                  where prod.ProductId == product.ProductId
                                  select new TestProduct
                {
                    ProductName = prod.ProductName,
                    ProductId = prod.ProductId
                }).FirstOrDefault();

                var ProductBySP = context.GetProductProductTypeData(product.ProductId).FirstOrDefault();
                //.Select(m=>new Product
                //{
                //    ProductName=m.ProductName,
                //    ProductId=m.ProductId,
                //    ProductTypeId=m.ProductTypeId
                //}).FirstOrDefault();

                //Group By Example for grouping on one column

                //var oldProductQuery = (from prod in context.Products
                //                  where prod.ProductId == product.ProductId
                //                  group prod by prod.ProductName into prodGroup
                //                  select new Product
                //                  {
                //                      ProductName = prodGroup.Key,
                //                      ProductId = prodGroup.Select(m => m.ProductId).FirstOrDefault()
                //                  });
                //var query = context.Products.GroupBy(g =>new { g.ProductTypeId, g.ProductName });
                //var data = query.ToList();
                //var oldProduct = oldProductQuery.FirstOrDefault();

                //order by in lambda

                // var orderByQuery = context.Products.OrderByDescending(o => o.ProductName).ThenBy(o => o.ProductTypeId).ToList();

                //left outer join

                //lambda expression

                //var joinExample = context.Products.Include("ProductType,ProductVariants,ProductVariants.Items").ToList();
                //from query

                //var joinFromExample = from prod in context.Products
                //                      join prodType in context.ProductTypes on prod.ProductTypeId equals prodType.ProductTypeId
                //                      into pt from tempProdType in pt.DefaultIfEmpty()
                //                      select new Product
                //                      {
                //                          ProductName=prod.ProductName,
                //                          ProductTypeId=tempProdType.ProductTypeId
                //                      };

                //var sqlQuery = context.Products.SqlQuery("select * from product where productTypeId=@producTypeId",
                //    new SqlParameter("@producTypeId", product.ProductTypeId)).Select(m => new Product
                //{

                //}).ToList();

                //context.Database.SqlQuery<Product>("select * from product where productTypeId=@producTypeId", new SqlParameter("@producTypeId", product.ProductTypeId))


                //Group by example for grouping on multiple column

                //var oldProduct = (from prod in context.Products
                //                  where prod.ProductId == product.ProductId
                //                  group prod by new { prod.ProductName, prod.ProductTypeId } into prodGroup
                //                  select new Product
                //                  {
                //                      ProductName = prodGroup.Key.ProductName,
                //                      ProductTypeId=prodGroup.Key.ProductTypeId,
                //                      ProductId = prodGroup.Select(m => m.ProductId).FirstOrDefault()
                //                  }).FirstOrDefault();

                //var oldProduct = context.Products.Where(m => m.ProductId == product.ProductId).OrderBy(o=>o.ProductName).FirstOrDefault();

                if (oldProduct != null)
                {
                    //context.Products.Remove(oldProduct);
                    oldProduct.ProductName          = product.ProductName;
                    oldProduct.ModifiedBy           = 1;
                    oldProduct.ModifiedDate         = DateTime.Now;
                    context.Entry(oldProduct).State = System.Data.Entity.EntityState.Modified;
                }
                else
                {
                    newProduct = context.Products.Add(new DataAccessLayer.Product
                    {
                        CreatedBy     = 1,
                        CreatedDate   = DateTime.Now,
                        IsActive      = true,
                        ProductName   = product.ProductName,
                        ProductTypeId = product.ProductTypeId
                    });
                    var info = context.Entry(newProduct);
                    context.Entry(newProduct).State = System.Data.Entity.EntityState.Added;
                }

                int result = context.SaveChanges();

                //insert using sp

                var insertedOutput = context.sp_InsertProduct(product.ProductTypeId, product.ProductName);
                return(result);
            }
        }