private void Add_Click(object sender, System.Windows.RoutedEventArgs e) { if (saleBillViewModel.SaleBillDetailViewModels == null || saleBillViewModel.SaleBillDetailViewModels.Count == 0) { MessageBox.Show("Chưa có sản phẩm nào được thêm!", "Add", MessageBoxButton.OK, MessageBoxImage.Warning); } else { if (saleBillViewModel.IsValidModel()) { var isSuccess = _saleBillBusiness.Add(saleBillViewModel); if (isSuccess) { MessageBox.Show("Đã thêm thành công!", "Add", MessageBoxButton.OK, MessageBoxImage.Information); saleBillViewModel = new SaleBillViewModel(); this.DataContext = saleBillViewModel; Load_DataGrid_SaleBillDetail(); } else { MessageBox.Show("Thêm không thành công!", "Add", MessageBoxButton.OK, MessageBoxImage.Error); } } } }
public AddSaleBillUserControl() { saleBillViewModel = new SaleBillViewModel(); _saleBillBusiness = new SaleBillBusiness(); InitializeComponent(); InitializeData(); }
public bool Update(SaleBillViewModel entity) { var saleBill = entity.MapToSaleBill(); var newSaleBillDetails = new List <SaleBillDetail>(); foreach (var item in entity.SaleBillDetailViewModels) { var purchaseBillDetail = item.MapToSaleBillDetail(); purchaseBillDetail.SaleBillId = saleBill.SaleBillId; newSaleBillDetails.Add(purchaseBillDetail); } _saleBillRepository.Update(saleBill); var oldSaleBillDetails = _saleBillDetailRepository.FindAll(pd => pd.SaleBillId == entity.SaleBillId); if (oldSaleBillDetails != null) { var deleteSaleBillDetails = oldSaleBillDetails.Where(op => !newSaleBillDetails.Any(p => p.Id == op.Id)); var addSaleBillDetails = newSaleBillDetails.Where(p => !oldSaleBillDetails.Any(op => op.Id == p.Id)); var updateSaleBillDetails = newSaleBillDetails.Where(p => oldSaleBillDetails.Any(op => op.Id == p.Id)); _saleBillDetailRepository.DeleteRange(deleteSaleBillDetails); _saleBillDetailRepository.AddRange(addSaleBillDetails); _saleBillDetailRepository.UpdateRange(updateSaleBillDetails); } return(true); }
public DetailSaleBillUserControl(SaleBill saleBill) { InitializeComponent(); this.saleBillViewModel = new SaleBillViewModel(saleBill); this.DataContext = saleBillViewModel; Load_DataGrid_SaleBillDetail(); }
public bool Add(SaleBillViewModel entity) { if (entity == null) { return(false); } var saleBill = entity.MapToSaleBill(); saleBill.SaleBillId = IdUtilities.GenerateByTimeSpan(); saleBill.CreatedDate = DateTime.Now; saleBill.StaffId = StaffGlobal.CurrentStaff.StaffId; _saleBillRepository.Add(saleBill); foreach (var item in entity.SaleBillDetailViewModels) { var saleBillDetail = item.MapToSaleBillDetail(); saleBillDetail.SaleBillId = saleBill.SaleBillId; _saleBillDetailRepository.Add(saleBillDetail); } return(true); }
[Route("Index")] // Combines to define the route template "Home/Index" //[Route("/")] // Does not combine, defines the route template "" public async Task <IActionResult> Index() { var currentUser = await _userManager.GetUserAsync(User); if (currentUser == null) { return(Challenge()); } var saleBill = new SaleBillViewModel { Makes = await _billService.GetMakesAsync(), Car = new CarViewModel(), BodyTypes = await _billService.GetBodyTypesAsync() }; saleBill.Makes.Insert(0, new SelectListItem { Value = "0", Text = "Select" }); return(View(saleBill)); }
public async Task <IActionResult> Save(SaleBillViewModel saleBillViewModel) { var currentUser = await _userManager.GetUserAsync(User); if (currentUser == null) { return(Challenge()); } //// ------- Validation ------- // if (saleBillViewModel.Car.MakeId == 0) { ModelState.AddModelError("Mark", "Select Mark"); } if (saleBillViewModel.Car.ModelId == 0) { ModelState.AddModelError("Model", "Select Model"); } if (saleBillViewModel.Car.BodyTypeId == 0) { ModelState.AddModelError("Body Type", "Select Body Type"); } if (ModelState.IsValid) { try { var sb = await _billService.GetSaleBillAsync(saleBillViewModel.Customer.FirstName, saleBillViewModel.Customer.LastName, saleBillViewModel.Car.VIN, saleBillViewModel.Insurance.InsuranceName, currentUser); if (sb == null) { var id = await _billService.SaveSaleBillAsync(saleBillViewModel, currentUser); if (id != -1) { return(RedirectToAction(actionName: nameof(CreatePdf), routeValues: new { id })); } } else { return(RedirectToAction(actionName: nameof(CreatePdf), routeValues: new { id = sb.Id })); } } catch (Exception ex) { _logger.LogError(ex.Message); } } else { var errors1 = ModelState.Where(x => x.Value.Errors.Count > 0) .Select(x => new { x.Key, x.Value.Errors }) .ToArray(); var errors2 = ModelState.Values .SelectMany(v => v.Errors) .ToArray(); } // If we got this far, something failed, redisplay form return(View(saleBillViewModel)); }
public async Task <long> SaveSaleBillAsync(SaleBillViewModel saleBillViewModel, ApplicationUser user) { if (saleBillViewModel != null) { var saleBill = new SaleBill(); if (saleBillViewModel.Car == null) { return(-1); } var make = await GetMakeAsync(saleBillViewModel.Car.MakeId); if (make == null) { } var model = await GetModelAsync(make.MakeId, saleBillViewModel.Car.ModelId); if (model == null) { } var bodyType = await GetBodyTypeAsync(saleBillViewModel.Car.BodyTypeId); if (bodyType == null) { } var car = await GetCarByVinAsync(saleBillViewModel.Car.VIN); if (car == null) { car = MapCar(saleBillViewModel.Car); if (car == null) { return(-1); } car.MakeId = make.MakeId; car.ModelId = model.ModelId; car.BodyTypeId = bodyType.BodyTypeId; var saveResult = await SaveCarAsync(car); if (!saveResult) { return(-1); } } saleBill.CarVin = car.VIN; if (saleBillViewModel.Customer == null) { return(-1); } var customer = await GetCustomerAsync(saleBillViewModel.Customer.FirstName, saleBillViewModel.Customer.LastName); if (customer == null) { customer = MapCustomer(saleBillViewModel.Customer); var saveResult = await SaveCustomerAsync(customer); if (saveResult) { saleBill.CustomerId = customer.Id; } else { return(-1); } } if (saleBillViewModel.Insurance == null) { return(-1); } var insurance = await GetInsuranceAsync(saleBillViewModel.Insurance.InsuranceName); if (insurance == null) { insurance = MapInsurance(saleBillViewModel.Insurance); var saveResult = await SaveInsuranceAsync(insurance); if (saveResult) { saleBill.InsuranceId = insurance.Id; } else { return(-1); } } if (saleBillViewModel.SaleBill == null) { return(-1); } saleBill.AgentId = user.Id; saleBill.Price = saleBillViewModel.SaleBill.Price; saleBill.Tax = saleBillViewModel.SaleBill.Tax; saleBill.Total = saleBillViewModel.SaleBill.Total; saleBill.SalesTax = saleBillViewModel.SaleBill.SalesTax; saleBill.PaymentForm = saleBillViewModel.SaleBill.PaymentForm; await _context.SaleBills.AddAsync(saleBill); if (await _context.SaveChangesAsync() == 1) { return(saleBill.Id); } } return(-1); }