Exemple #1
0
        public async Task <IActionResult> Post([FromBody] VendorDTO model)
        {
            VendorModel vendor   = new DTOMapper <VendorDTO, VendorModel>().Serialize(model);
            var         response = await _vendorService.AddVendor(vendor);

            return(Ok(response));
        }
Exemple #2
0
        public async Task <ActionResult> AddVendor(AddVendorModel model, HttpPostedFileBase mainImage)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            model.MainImage = FileUpload(model.Title, "vendor", mainImage);
            await _vendorService.AddVendor(model);

            return(RedirectToAction("Index", "Profiles"));
        }
Exemple #3
0
        public async Task <ActionResult> AddVendor([FromBody] VendorDto vendor)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            var newVendor = _mapper.Map <Vendor>(vendor);

            await _vendorService.AddVendor(newVendor);

            return(Ok(_mapper.Map <VendorDto>(newVendor)));
        }
Exemple #4
0
        public async Task <ActionResult <VendorDto> > CreateVendorAccount(VendorDto vendorDto)
        {
            var vendor = new Vendor
            {
                Name = vendorDto.Name
            };

            var created = await _vendorService.AddVendor(vendor);

            if (created)
            {
                return(vendorDto);
            }

            return(BadRequest());
        }
Exemple #5
0
        // To protect from overposting attacks, see https://aka.ms/RazorPagesCRUD
        public async Task <IActionResult> OnPostAsync()
        {
            if (!ModelState.IsValid)
            {
                return(Page());
            }

            var result = await _vendorService.AddVendor(Vendor);

            if (result.HasError)
            {
                Errors = string.Join(" /n ", result.ErrorMessages);
                return(Page());
            }

            return(RedirectToPage("./Index"));
        }
Exemple #6
0
        static void Main(string[] args)
        {
            StandardKernel kernel = new StandardKernel(
                new ConnectionByFileModule(CONNECTION_FILE_NAME, CONNECTION_NAME),
                new CategoryServiceModule(),
                new ProductServiceModule(),
                new VendorServiceModule()
                );

            PrintStartScreen();
            PrintCommands();

            while (AppIsRunning)
            {
                Console.WriteLine();
                Console.Write("> ");
                string   inputQuery  = Console.ReadLine();
                string[] parsedQuery = inputQuery.Split(" ");

                switch (parsedQuery[0])
                {
                case "quit":
                {
                    AppIsRunning = false;
                    break;
                };

                case "help":
                {
                    PrintCommands();
                    break;
                };

                case "add":
                {
                    if (parsedQuery[1] == "-vendor")
                    {
                        using (IVendorService vs = kernel.Get <IVendorService>())
                        {
                            Console.Write("Vendor's name:");
                            string vName = Console.ReadLine();

                            Console.Write("Vendor's address:");
                            string vAddress = Console.ReadLine();

                            vs.AddVendor(new VendorDTO {
                                    Name = vName.Replace('_', ' '), Address = vAddress.Replace('_', ' ')
                                });
                        }
                    }
                    else if (parsedQuery[1] == "-product")
                    {
                        using (IProductService ps = kernel.Get <IProductService>())
                        {
                            Console.Write("Product's GTIN:");
                            string pGTIN = Console.ReadLine();

                            Console.Write("Product's name:");
                            string pName = Console.ReadLine();

                            Console.Write("Product's description:");
                            string pDescription = Console.ReadLine();

                            Console.Write("Product's price:");
                            decimal pPrice = Convert.ToDecimal(Console.ReadLine());

                            ps.AddProduct(new ProductDTO {
                                    GTIN = pGTIN, Name = pName, Description = pDescription, Price = pPrice
                                });
                        }
                    }
                    else if (parsedQuery[1] == "-category")
                    {
                        using (ICategoryService cs = kernel.Get <ICategoryService>())
                        {
                            Console.Write("Category's name:");
                            string cName = Console.ReadLine();

                            cs.AddCategory(new CategoryDTO {
                                    Name = cName
                                });
                        }
                    }
                    else
                    {
                        Console.WriteLine("Wrong param!");
                    }
                    break;
                }

                case "delete":
                {
                    if (parsedQuery[1] == "-vendor")
                    {
                        using (IVendorService vs = kernel.Get <IVendorService>())
                        {
                            vs.RemoveVendor(new VendorDTO {
                                    Id = int.Parse(parsedQuery[2])
                                });
                        }
                    }
                    else if (parsedQuery[1] == "-product")
                    {
                        using (IProductService ps = kernel.Get <IProductService>())
                        {
                            ps.RemoveProduct(new ProductDTO {
                                    GTIN = parsedQuery[2]
                                });
                        }
                    }
                    else if (parsedQuery[1] == "-category")
                    {
                        using (ICategoryService cs = kernel.Get <ICategoryService>())
                        {
                            cs.RemoveCategory(new CategoryDTO {
                                    Id = int.Parse(parsedQuery[2])
                                });
                        }
                    }
                    break;
                }

                case "product":
                {
                    using (IProductService ps = kernel.Get <IProductService>())
                    {
                        List <ProductDTO> products = new List <ProductDTO>();

                        if (parsedQuery[1] == "-all")
                        {
                            products = ps.GetAll().ToList();
                        }
                        else if (parsedQuery[1] == "-gtin")
                        {
                            try { products = ps.GetWhere(p => p.GTIN == parsedQuery[2]).ToList(); }
                            catch (Exception exception) { Console.WriteLine($"Query failed due to: {exception.Message}"); break; }
                        }
                        else if (parsedQuery[1] == "-ofvendor")
                        {
                            try { products = ps.GetByVendor(new VendorDTO {
                                        Id = int.Parse(parsedQuery[2])
                                    }).ToList(); }
                            catch (Exception exception) { Console.WriteLine($"Query failed due to: {exception.Message}"); break; }
                        }
                        else if (parsedQuery[1] == "-ofcategory")
                        {
                            try { products = ps.GetByCategory(new CategoryDTO {
                                        Id = int.Parse(parsedQuery[2])
                                    }).ToList(); }
                            catch (Exception exception) { Console.WriteLine($"Query failed due to: {exception.Message}"); break; }
                        }
                        else if (parsedQuery[1] == "-startswith")
                        {
                            try { products = ps.GetWhere(p => p.Name.StartsWith(char.Parse(parsedQuery[2]))).ToList(); }
                            catch (Exception exception) { Console.WriteLine($"Query failed due to: {exception.Message}"); break; }
                        }
                        else if (parsedQuery[1] == "-price")
                        {
                            if (parsedQuery[2] == "max")
                            {
                                decimal?maxPrice = ps.GetAll().Select(p => p.Price).Max();
                                products = ps.GetWhere(p => p.Price == maxPrice).ToList();
                            }
                            else if (parsedQuery[2] == "min")
                            {
                                decimal?minPrice = ps.GetAll().Select(p => p.Price).Min();
                                products = ps.GetWhere(p => p.Price == minPrice).ToList();
                            }
                            else
                            {
                                Console.WriteLine("Wrong param!");
                            }
                        }
                        else if (parsedQuery[1] == "-attachvendor")
                        {
                            try { ps.SetVendor(new ProductDTO {
                                        GTIN = parsedQuery[2]
                                    }, new VendorDTO {
                                        Id = int.Parse(parsedQuery[3])
                                    }); }
                            catch (Exception exception) { Console.WriteLine($"Query failed due to: {exception.Message}"); break; }
                        }
                        else if (parsedQuery[1] == "-attachcategory")
                        {
                            try { ps.SetCategory(new ProductDTO {
                                        GTIN = parsedQuery[2]
                                    }, new CategoryDTO {
                                        Id = int.Parse(parsedQuery[3])
                                    }); }
                            catch (Exception exception) { Console.WriteLine($"Query failed due to: {exception.Message}"); break; }
                        }
                        else
                        {
                            Console.WriteLine("Wrong param!");
                            break;
                        }
                        PrintProductDTO(products);
                    }
                    break;
                }

                case "vendor":
                {
                    using (IVendorService vs = kernel.Get <IVendorService>())
                    {
                        List <VendorDTO> vendors = new List <VendorDTO>();

                        if (parsedQuery[1] == "-all")
                        {
                            vendors = vs.GetAll().ToList();
                        }
                        else if (parsedQuery[1] == "-ofcategory")
                        {
                            try { vendors = vs.GetByCategory(new CategoryDTO {
                                        Id = int.Parse(parsedQuery[2])
                                    }).ToList(); }
                            catch (Exception exception) { Console.WriteLine($"Query failed due to: {exception.Message}"); break; }
                        }
                        else if (parsedQuery[1] == "-location")
                        {
                            try { vendors = vs.GetWhere(v => v.Address == parsedQuery[2].Replace('_', ' ')).ToList(); }
                            catch (Exception exception) { Console.WriteLine($"Query failed due to: {exception.Message}"); break; }
                        }
                        else if (parsedQuery[1] == "-id")
                        {
                            try { vendors = vs.GetWhere(c => c.Id == int.Parse(parsedQuery[2])).ToList(); }
                            catch (Exception exception) { Console.WriteLine($"Query failed due to: {exception.Message}"); break; }
                        }
                        else
                        {
                            Console.WriteLine("Wrong param!");
                            break;
                        }
                        PrintVendorsDTO(vendors);
                    }
                    break;
                }

                case "category":
                {
                    using (ICategoryService cs = kernel.Get <ICategoryService>())
                    {
                        List <CategoryDTO> categories = new List <CategoryDTO>();

                        if (parsedQuery[1] == "-all")
                        {
                            categories = cs.GetAll().ToList();
                        }
                        else if (parsedQuery[1] == "-id")
                        {
                            try { categories = cs.GetWhere(c => c.Id == int.Parse(parsedQuery[2])).ToList(); }
                            catch (Exception exception) { Console.WriteLine($"Query failed due to: {exception.Message}"); break; }
                        }
                        else
                        {
                            Console.WriteLine("Wrong param!");
                            break;
                        }
                        PrintCategoriesDTO(categories);
                    }
                    break;
                }

                default:
                {
                    Console.WriteLine("This command doesn't exist!");
                    break;
                }
                }
            }
        }