public async Task <IActionResult> Edit(int id, Seller seller)
        {
            if (!ModelState.IsValid)
            {
                var departments = await _departmentService.FindAllAsync();

                var viewModel = new SalerFormViewModel {
                    Seller = seller, Departments = departments
                };
                return(View(seller));
            }
            if (id != seller.Id)
            {
                return(RedirectToAction(nameof(Error), new { message = "Id Missmatch" }));
            }
            try
            {
                await _sellerService.UpdateAsync(seller);

                return(RedirectToAction(nameof(Index)));
            }
            catch (NotFoundException notFoundE)
            {
                return(RedirectToAction(nameof(Error), new { message = notFoundE.Message }));
            }
            catch (DbConcurrencyException dbConcurrencE)
            {
                return(RedirectToAction(nameof(Error), new { message = dbConcurrencE.Message }));
            }
        }
        public async Task <IActionResult> Create()
        {
            var departments = await _departmentService.FindAllAsync();

            var viewModel = new SalerFormViewModel {
                Departments = departments
            };

            return(View(viewModel));
        }
        public async Task <IActionResult> Create(Seller seller)
        {
            if (!ModelState.IsValid)
            {
                var departments = await _departmentService.FindAllAsync();

                var viewModel = new SalerFormViewModel {
                    Seller = seller, Departments = departments
                };
                return(View(viewModel));
            }
            await _sellerService.InsertAsync(seller);

            return(RedirectToAction(nameof(Index)));
        }
        public async Task <IActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(RedirectToAction(nameof(Error), new { message = "Id not Provided" }));
            }

            var obj = await _sellerService.FindByIdAsync(id.Value);

            if (obj == null)
            {
                return(RedirectToAction(nameof(Error), new { message = "Id not Found" }));
            }
            List <Department> departments = await _departmentService.FindAllAsync();

            SalerFormViewModel viewModel = new SalerFormViewModel {
                Seller = obj, Departments = departments
            };

            return(View(viewModel));
        }