Esempio n. 1
0
        public ActionResult UpdateLaptopCust(LaptopViewModel laptopVM)
        {
            var       mapper    = new MapperConfiguration(cfg => cfg.CreateMap <LaptopViewModel, LaptopDTO>()).CreateMapper();
            LaptopDTO laptopDto = mapper.Map <LaptopViewModel, LaptopDTO>(laptopVM);

            service.UpdateLaptop(laptopDto);

            return(View("Index"));
        }
Esempio n. 2
0
        public void UpdateLaptop(LaptopDTO laptopDto)
        {
            if (laptopDto == null)
            {
                throw new ValidationException("При обновлении ноутбука произошла ошибка. Экземпляр объекта LaptopDTO равен null.", "");
            }
            var    mapper = new MapperConfiguration(cfg => cfg.CreateMap <LaptopDTO, Laptop>()).CreateMapper();
            Laptop laptop = mapper.Map <LaptopDTO, Laptop>(laptopDto);

            Database.Laptops.Update(laptop);
            Database.Save();
        }
        public async Task <IActionResult> UpdateLaptop(string id, [FromBody] LaptopDTO data)
        {
            try
            {
                await laptopService.UpdateLaptop(id, data);

                return(Ok());
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
Esempio n. 4
0
        public bool SaveLaptop(int id, LaptopDTO catalogDTO)
        {
            DbContextTransaction transaction = _context.Database.BeginTransaction();
            var check = SaveCatalog(id, transaction, catalogDTO);

            if (!check)
            {
                return(false);
            }
            if (id == 0)
            {
                var laptop = new SpecificationsLaptop();
                laptop = CatalogMapper.toSpecificationsLaptop(catalogDTO, laptop);
                try
                {
                    _context.SpecificationsLaptops.Add(laptop);
                    _context.SaveChanges();
                    transaction.Commit();
                    return(true);
                }
                catch (Exception)
                {
                    transaction.Rollback();
                    return(false);
                }
            }
            else
            {
                var laptop = _context.SpecificationsLaptops.SingleOrDefault(x => x.catalogid == catalogDTO.id);
                if (laptop == null)
                {
                    transaction.Rollback();
                    return(false);
                }
                laptop = CatalogMapper.toSpecificationsLaptop(catalogDTO, laptop);
                try
                {
                    _context.SaveChanges();
                    transaction.Commit();
                    return(true);
                }
                catch (Exception)
                {
                    transaction.Rollback();
                    return(false);
                }
            }
        }
        public async Task <IActionResult> CreateLaptop([FromBody] LaptopDTO data)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    await laptopService.AddLaptop(data);

                    return(Ok());
                }
                catch (Exception ex)
                {
                    return(BadRequest(ex.Message));
                }
            }
            return(Conflict(ModelState));
        }
Esempio n. 6
0
        public ActionResult GetLaptop(int laptopIdDto)
        {
            LaptopDTO       laptopDTO = service.GetLaptop(laptopIdDto);
            var             mapper    = new MapperConfiguration(cfg => cfg.CreateMap <LaptopDTO, LaptopViewModel>()).CreateMapper();
            LaptopViewModel laptopVM  = mapper.Map <LaptopDTO, LaptopViewModel>(laptopDTO);

            var mapper1 = new MapperConfiguration(cfg => cfg.CreateMap <ImageDTO, Image>()).CreateMapper();
            IEnumerable <Image> images = mapper1.Map <IEnumerable <ImageDTO>, IEnumerable <Image> >(service.GetImages());

            laptopVM.Images.AddRange(images.Where(i => i.ProductId == laptopVM.Id));

            var         mapper2 = new MapperConfiguration(cfg => cfg.CreateMap <OrderSellerDTO, OrderSeller>()).CreateMapper();
            OrderSeller seller  = mapper2.Map <OrderSellerDTO, OrderSeller>(service.GetOrderSeller(laptopVM.OrderSellerId));

            laptopVM.OrderSeller = seller;

            return(View(laptopVM));
        }
Esempio n. 7
0
 public static SpecificationsLaptop toSpecificationsLaptop(LaptopDTO laptopDTO, SpecificationsLaptop laptop)
 {
     try
     {
         laptop.cardscreen = laptopDTO.cardscreen;
         laptop.connector  = laptopDTO.connector;
         laptop.harddrive  = laptopDTO.harddrive;
         laptop.design     = laptopDTO.design;
         laptop.size       = laptopDTO.size;
         laptop.release    = laptopDTO.release;
         laptop.createdAt  = laptopDTO.id > 0 ? laptop.createdAt : DateTime.Now;
         laptop.updatedAt  = DateTime.Now;
         laptop.catalogid  = laptopDTO.id;
         return(laptop);
     }
     catch (Exception)
     {
         return(null);
     }
 }
        public async Task UpdateLaptop(string id, LaptopDTO data)
        {
            var entity = await unitOfWork.Laptops.GetById(id);

            entity.ModelName      = data.ModelName;
            entity.Manufacturer   = data.Manufacturer;
            entity.Processor      = data.Processor;
            entity.GraphicsCard   = data.Graphic;
            entity.RAMCapacity    = data.Ram;
            entity.SSDCapacity    = data.Ssd;
            entity.ScreenSize     = data.Screen;
            entity.OS             = data.Os;
            entity.Weight         = data.Weight;
            entity.Price          = data.Price;
            entity.ModelImagePath = data.ModelImagePath;

            await unitOfWork.Laptops.Update(entity);

            await unitOfWork.SaveChangesAsync();
        }
Esempio n. 9
0
        //--------------------TV---------------------
        public void CreateLaptop(LaptopDTO laptopDto)
        {
            if (laptopDto == null)
            {
                throw new ValidationException("При добавлении нового ноутбука произошла ошибка. Экземпляр объекта LaptopDTO равен null.", "");
            }
            if (laptopDto.OrderSellerId == 0)
            {
                throw new ValidationException("Заказ продавца не найден", "");
            }

            var    mapper = new MapperConfiguration(cfg => cfg.CreateMap <LaptopDTO, Laptop>()).CreateMapper();
            Laptop laptop = mapper.Map <LaptopDTO, Laptop>(laptopDto);

            OrderSeller seller = Database.OrderSellers.Get(laptopDto.OrderSellerId);

            laptop.OrderSeller = seller;

            Database.Laptops.Create(laptop);
            Database.Save();
        }
Esempio n. 10
0
        public async Task AddLaptop(LaptopDTO data)
        {
            var laptop = new Laptop
            {
                ModelName      = data.ModelName,
                Manufacturer   = data.Manufacturer,
                Processor      = data.Processor,
                GraphicsCard   = data.Graphic,
                RAMCapacity    = data.Ram,
                SSDCapacity    = data.Ssd,
                ScreenSize     = data.Screen,
                OS             = data.Os,
                Weight         = data.Weight,
                Price          = data.Price,
                Rating         = 0,
                IsAvailable    = false,
                ModelImagePath = data.ModelImagePath
            };

            await unitOfWork.Laptops.Add(laptop);

            await unitOfWork.SaveChangesAsync();
        }
Esempio n. 11
0
        public ActionResult CreateOrderCustomer(OrderCustomerViewModel customerVM)
        {
            if (ModelState.IsValid)
            {
                var mapper = new MapperConfiguration(cfg => cfg.CreateMap <OrderCustomerViewModel,
                                                                           OrderCustomerDTO>()).CreateMapper();
                OrderCustomerDTO customerDto = mapper.Map <OrderCustomerViewModel, OrderCustomerDTO>(customerVM);
                service.CreateOrderCustomer(customerDto);

                string category = service.GetProduct(customerVM.ProdId);

                if (category == "Phone")
                {
                    PhoneDTO phoneDTO = service.GetPhone(customerVM.ProdId);

                    if (phoneDTO.QtyEnd == 0)
                    {
                        return(View("ProductEnded"));
                    }

                    phoneDTO.QtyEnd--;
                    phoneDTO.PriceNow = Price(phoneDTO.PriceStart, phoneDTO.PriceEnd, phoneDTO.QtyEnd);


                    var mapper1 = new MapperConfiguration(cfg => cfg.CreateMap <PhoneDTO,
                                                                                PhoneViewModel>()).CreateMapper();
                    PhoneViewModel phoneVM = mapper1.Map <PhoneDTO, PhoneViewModel>(phoneDTO);


                    return(View("ThanksPagePhone", phoneVM));
                }

                if (category == "TV")
                {
                    TVDTO tvDTO = service.GetTV(customerVM.ProdId);

                    if (tvDTO.QtyEnd == 0)
                    {
                        return(View("ProductEnded"));
                    }

                    tvDTO.QtyEnd--;
                    tvDTO.PriceNow = Price(tvDTO.PriceStart, tvDTO.PriceEnd, tvDTO.QtyEnd);


                    var mapper1 = new MapperConfiguration(cfg => cfg.CreateMap <TVDTO,
                                                                                TVViewModel>()).CreateMapper();
                    TVViewModel tvVM = mapper1.Map <TVDTO, TVViewModel>(tvDTO);


                    return(View("ThanksPageTV", tvVM));
                }

                if (category == "Laptop")
                {
                    LaptopDTO laptopDTO = service.GetLaptop(customerVM.ProdId);

                    if (laptopDTO.QtyEnd == 0)
                    {
                        return(View("ProductEnded"));
                    }

                    laptopDTO.QtyEnd--;
                    laptopDTO.PriceNow = Price(laptopDTO.PriceStart, laptopDTO.PriceEnd, laptopDTO.QtyEnd);


                    var mapper1 = new MapperConfiguration(cfg => cfg.CreateMap <LaptopDTO,
                                                                                LaptopViewModel>()).CreateMapper();
                    LaptopViewModel laptopVM = mapper1.Map <LaptopDTO, LaptopViewModel>(laptopDTO);


                    return(View("ThanksPageLaptop", laptopVM));
                }


                return(View("ThanksPagePhone"));
            }
            return(View("ThanksPagePhone"));
        }
Esempio n. 12
0
        public CatalogDTO GetCatalogById(int id)
        {
            var model = _context.Catalogs.Find(id);

            if (model.catalogtypeid == 1)
            {
                var query = from c in _context.Catalogs
                            join t in _context.CatalogTypes on c.catalogtypeid equals t.id
                            join b in _context.CatalogBrands on c.catalogbrandid equals b.id
                            join sp in _context.Specifications on c.id equals sp.catalogid
                            join sm in _context.SpecificationsMobiles on c.id equals sm.catalogid
                            where c.id == id
                            select new { c, t, b, sp, sm };
                MobileDTO catalog = new MobileDTO();
                foreach (var item in query)
                {
                    catalog.id             = item.c.id;
                    catalog.name           = item.c.name;
                    catalog.pictureuri     = item.c.pictureuri;
                    catalog.price          = item.c.price;
                    catalog.description    = item.c.description;
                    catalog.content        = item.c.content;
                    catalog.quantity       = item.c.quantity;
                    catalog.catalogbrandid = item.c.catalogbrandid;
                    catalog.catalogtypeid  = item.c.catalogtypeid;
                    catalog.cpu            = item.sp.cpu;
                    catalog.ram            = item.sp.ram;
                    catalog.screen         = item.sp.screen;
                    catalog.os             = item.sp.os;
                    catalog.backcamera     = item.sm.backcamera;
                    catalog.frontcamera    = item.sm.frontcamera;
                    catalog.internalmemory = item.sm.internalmemory;
                    catalog.memorystick    = item.sm.memorystick;
                    catalog.sim            = item.sm.sim;
                    catalog.batery         = item.sm.batery;
                }
                return(catalog);
            }
            else
            {
                var query = from c in _context.Catalogs
                            join t in _context.CatalogTypes on c.catalogtypeid equals t.id
                            join b in _context.CatalogBrands on c.catalogbrandid equals b.id
                            join sp in _context.Specifications on c.id equals sp.catalogid
                            join sl in _context.SpecificationsLaptops on c.id equals sl.catalogid
                            where c.id == id
                            select new { c, t, b, sp, sl };
                LaptopDTO catalog = new LaptopDTO();
                foreach (var item in query)
                {
                    catalog.id             = item.c.id;
                    catalog.name           = item.c.name;
                    catalog.pictureuri     = item.c.pictureuri;
                    catalog.price          = item.c.price;
                    catalog.description    = item.c.description;
                    catalog.content        = item.c.content;
                    catalog.quantity       = item.c.quantity;
                    catalog.catalogbrandid = item.c.catalogbrandid;
                    catalog.catalogtypeid  = item.c.catalogtypeid;
                    catalog.cpu            = item.sp.cpu;
                    catalog.ram            = item.sp.ram;
                    catalog.screen         = item.sp.screen;
                    catalog.os             = item.sp.os;
                    catalog.cardscreen     = item.sl.cardscreen;
                    catalog.connector      = item.sl.connector;
                    catalog.harddrive      = item.sl.harddrive;
                    catalog.design         = item.sl.design;
                    catalog.size           = item.sl.size;
                    catalog.release        = item.sl.release;
                }
                return(catalog);
            }
        }
Esempio n. 13
0
        public bool addLaptopDTO(LaptopDTO catalogDTO)
        {
            using (var dbContextTransaction = db.Database.BeginTransaction())
            {
                try
                {
                    var catalog = new Catalog()
                    {
                        name           = catalogDTO.name,
                        pictureuri     = catalogDTO.pictureuri,
                        price          = catalogDTO.price,
                        description    = catalogDTO.description,
                        content        = catalogDTO.content,
                        quantity       = catalogDTO.quantity,
                        catalogbrandid = catalogDTO.catalogbrandid,
                        catalogtypeid  = catalogDTO.catalogtypeid,
                        createdAt      = DateTime.Now,
                        updatedAt      = DateTime.Now
                    };
                    db.Catalogs.Add(catalog);
                    db.SaveChanges();

                    var id = catalog.id;

                    //specifications
                    var spe = new Specification()
                    {
                        cpu       = catalogDTO.cpu,
                        ram       = catalogDTO.ram,
                        screen    = catalogDTO.screen,
                        os        = catalogDTO.os,
                        createdAt = DateTime.Now,
                        updatedAt = DateTime.Now,
                        catalogid = id
                    };
                    db.Specifications.Add(spe);
                    db.SaveChanges();

                    //laptop
                    var speL = new SpecificationsLaptop()
                    {
                        cardscreen = catalogDTO.cardscreen,
                        connector  = catalogDTO.connector,
                        harddrive  = catalogDTO.harddrive,
                        design     = catalogDTO.design,
                        size       = catalogDTO.size,
                        release    = catalogDTO.release,
                        createdAt  = DateTime.Now,
                        updatedAt  = DateTime.Now,
                        catalogid  = id
                    };
                    db.SpecificationsLaptops.Add(speL);
                    db.SaveChanges();

                    dbContextTransaction.Commit();
                }
                catch (Exception)
                {
                    dbContextTransaction.Rollback();
                    return(false);
                }
            }
            return(true);
        }