Ejemplo n.º 1
0
        public IActionResult Update(int id, SellerVM sellerVm)
        {
            if (id != sellerVm.Seller.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Sellers.Update(sellerVm.Seller);
                    _context.SaveChanges();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!SellerExists(sellerVm.Seller.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }

            ViewData["DistrictId"] = new SelectList(_context.Districts, "Id", "Division", sellerVm.Seller.DistrictId);

            return(View(sellerVm.Seller));
        }
Ejemplo n.º 2
0
        public ActionResult RequestForSell(SellerVM sellerVm)
        {
            var emailCheck = _context.SellerRequests.Where(c => c.Email == User.Identity.Name);

            if (emailCheck.ToList().Count > 0)
            {
                ViewBag.err = "You have already requested. Please have patience to be approved !";
                var vm = new SellerVM
                {
                    Districts = _context.Districts.ToList(),
                    Sellers   = _context.Sellers.ToList(),
                    Error     = ViewBag.err
                };


                return(View("Create", vm));
            }


            if (sellerVm.SellerRequest.SellerName == null || sellerVm.SellerRequest.DistrictId == null ||
                sellerVm.SellerRequest.DateOfBirth == null)
            {
                var vm = new SellerVM
                {
                    Districts = _context.Districts.ToList(),
                    Sellers   = _context.Sellers.ToList(),
                    Error     = "You can not ignore required fields"
                };


                return(View("Create", vm));
            }
            else
            {
                var vm = new SellerRequest
                {
                    SellerName  = sellerVm.SellerRequest.SellerName,
                    Email       = User.Identity.Name,
                    Phone       = sellerVm.SellerRequest.Phone,
                    DistrictId  = sellerVm.SellerRequest.DistrictId,
                    DateOfBirth = sellerVm.SellerRequest.DateOfBirth,
                    CompanyName = sellerVm.SellerRequest.CompanyName
                };
                _context.SellerRequests.Add(vm);
                _context.SaveChanges();
            }
            var vms = new SellerVM
            {
                Districts = _context.Districts.ToList(),
                Sellers   = _context.Sellers.ToList(),
                Error     = "Your request has been sent! Wait for approval."
            };

            return(RedirectToAction("Create", "Sellers", vms));
        }
Ejemplo n.º 3
0
        public IActionResult SignUp([FromBody] SellerVM sellerVM)
        {
            var seller = _userService.SignUp(sellerVM);

            if (seller == null)
            {
                return(BadRequest(new { message = "fail" }));
            }

            return(Ok(seller));
        }
Ejemplo n.º 4
0
        public IActionResult Index(int id)
        {
            var vm = new SellerVM
            {
                Seller    = _context.Sellers.Find(id),
                Districts = _context.Districts.ToList(),
                Sellers   = _context.Sellers.ToList()
            };

            return(View(vm));
        }
Ejemplo n.º 5
0
        public IActionResult Create()
        {
            var vm = new SellerVM
            {
                Districts = _context.Districts.ToList(),
                Sellers   = _context.Sellers.ToList()
            };


            ViewData["DistrictId"] = new SelectList(_context.Districts, "Id", "Division");
            return(View(vm));
        }
Ejemplo n.º 6
0
        public ActionResult SellerProducts(int id)
        {
            var prosList = _context.Products.Where(c => c.SellerId == id).ToList();
            var vm       = new SellerVM
            {
                Products   = prosList,
                Sellers    = _context.Sellers.ToList(),
                Districts  = _context.Districts.ToList(),
                Categories = _context.Categories.ToList()
            };

            return(View(vm));
        }
Ejemplo n.º 7
0
        public ActionResult SellProduct(int?id)
        {
            var data = _context.Sellers.Where(c => c.Email == User.Identity.Name);

            if (id == null || data.SingleOrDefault() == null)
            {
                NotFound();
            }
            var vm = new SellerVM
            {
                Products   = _context.Products.Where(c => c.SellerId == id).ToList(),
                Districts  = _context.Districts.ToList(),
                Categories = _context.Categories.ToList(),
                Sellers    = _context.Sellers.ToList()
            };

            return(View(vm));
        }
Ejemplo n.º 8
0
        public SellerDto SignUp(SellerVM sellerVM)
        {
            try
            {
                SellerDto sellerDto = new SellerDto()
                {
                    FirstName             = sellerVM.FirstName,
                    LastName              = sellerVM.LastName,
                    MobileNumber          = sellerVM.MobileNumber,
                    ProfileImage          = sellerVM.ProfileImage,
                    AccountNo             = sellerVM.AccountNo,
                    ShopAddress           = sellerVM.ShopAddress,
                    ShopName              = sellerVM.ShopName,
                    ShopLocationLatitude  = sellerVM.ShopLocationLatitude,
                    ShopLocationLongitude = sellerVM.ShopLocationLongitude,
                    Image  = sellerVM.Image,
                    Rating = 0.0
                };
                using (TransactionScope scope = new TransactionScope())
                {
                    Login login = Mapper.Map <Login>(sellerVM.LoginVM);
                    login.Password = Encrypt(login.Password, key);
                    _loginRepository.Add(login);
                    _loginRepository.Save();

                    Login loginId = _loginRepository.Get(x => x.Email == login.Email).FirstOrDefault();
                    sellerDto.LoginId = loginId.Id;

                    Seller toAdd = Mapper.Map <Seller>(sellerDto);
                    _sellerRepository.Add(toAdd);
                    _sellerRepository.Save();

                    sellerDto.Token = Authentication(sellerDto.Id, sellerDto.Token);
                    scope.Complete();
                }
                return(sellerDto);
            }
            catch (Exception ex)
            {
                Console.WriteLine(new Exception(ex.Message));
            }
            return(null);
        }
Ejemplo n.º 9
0
        public SellerDto Update(SellerVM sellerVM)
        {
            Seller seller = _sellerRepository.Get(x => x.Id == sellerVM.Id).FirstOrDefault();

            if (seller.FirstName != null)
            {
                seller.FirstName = seller.FirstName;
            }
            if (seller.LastName != null)
            {
                seller.LastName = seller.LastName;
            }
            if (seller.MobileNumber != null)
            {
                seller.MobileNumber = seller.MobileNumber;
            }
            if (seller.AccountNo != null)
            {
                seller.AccountNo = seller.AccountNo;
            }
            if (seller.Image != null)
            {
                seller.Image = seller.Image;
            }
            if (seller.ProfileImage != null)
            {
                seller.ProfileImage = seller.ProfileImage;
            }
            if (seller.ShopName != null)
            {
                seller.ShopName = seller.ShopName;
            }
            if (seller.ShopAddress != null)
            {
                seller.ShopAddress = seller.ShopAddress;
            }

            _sellerRepository.Update(seller);
            _sellerRepository.Save();
            return(Mapper.Map <SellerDto>(seller));
        }
Ejemplo n.º 10
0
        public IActionResult UpdateSeller([FromBody] SellerVM sellerVM)
        {
            var seller = _userService.SignUp(sellerVM);

            return(Ok(seller));
        }
Ejemplo n.º 11
0
        public ActionResult SellProduct(int id, IFormFile file, SellerVM vm)
        {
            var data = _context.Sellers.Where(c => c.Email == User.Identity.Name);

            if (id == null || data.SingleOrDefault() == null)
            {
                NotFound();
            }

            if (vm.Product.Title == null ||
                vm.Product.CategoryId == null ||
                vm.Product.DistrictId == null ||
                vm.Product.Price == null ||
                vm.Product.ItemInStock == null ||
                vm.Product.Unit == null)

            {
                ViewBag.entryerr = "Please don't ignore required fields";

                return(View(vm));
            }


            var Seller = _context.Sellers.Where(s => s.Email.Contains(User.Identity.Name));

            if (Seller.SingleOrDefault() == null)
            {
                return(RedirectToAction("RequestForSell", "Products"));
            }


            ImgUploader img = new ImgUploader(_environment);

            var imgPath = img.ImageUrl(file);   //function working here


            var products = new Product
            {
                Title           = vm.Product.Title,
                Description     = vm.Product.Description,
                Price           = vm.Product.Price,
                SellerId        = id,
                CategoryId      = vm.Product.CategoryId,
                DistrictId      = vm.Product.DistrictId,
                IsPublished     = vm.Product.IsPublished, //manually values
                Unit            = vm.Product.Unit,
                ItemInStock     = vm.Product.ItemInStock,
                CreatedAt       = DateTime.Now, //manually valuess
                UpdatedAt       = DateTime.Now, //manually valuess
                OfferExpireDate = DateTime.Now, //manually valuess
                ImagePath       = imgPath,
                OfferPrice      = 1             //need to change
            };

            _context.Products.Add(products);
            _context.SaveChanges();

            var vms = new SellerVM
            {
                Products   = _context.Products.Where(c => c.SellerId == id).ToList(),
                Districts  = _context.Districts.ToList(),
                Categories = _context.Categories.ToList(),
                Sellers    = _context.Sellers.ToList(),
                Error      = "Your Product has been added"
            };

            return(View(vms));
        }