protected override void ExecuteSave() { if (FieldsValidator.Validate()) { try { MethodBase.GetCurrentMethod().Info("Save Vehicle Detail's changes"); _presenter.SaveChanges(); this.Close(); } catch (Exception ex) { MethodBase.GetCurrentMethod().Fatal("An error occured while trying to save Vehicle Detail", ex); this.ShowError("Proses simpan data Detail Kendaraan gagal!"); } } }
protected override void ExecuteSave() { if (!bgwSave.IsBusy) { bool validated = true; string errMessage = ""; FormHelpers.CurrentMainForm.UpdateStatusInformation("Memeriksa nomor seri yang kembar dalam daftar", false); List <string> duplicatedWheel = VehicleWheelList.Where(wh => !string.IsNullOrEmpty(wh.WheelDetail.SerialNumber)).GroupBy(x => x.WheelDetail.SerialNumber) .Where(group => group.Count() > 1) .Select(group => group.Key).ToList(); if (duplicatedWheel.Count > 0) { errMessage += "Terdapat ban yang sama! \n"; validated = false; } FormHelpers.CurrentMainForm.UpdateStatusInformation("Memeriksa kode kendaraan yang kembar pada database", false); if (!_presenter.IsCodeValidated()) { errMessage += "Kode sudah terdaftar! \n"; validated = false; } FormHelpers.CurrentMainForm.UpdateStatusInformation("Memeriksa nomor polisi yang kembar pada database", false); if (!_presenter.IsLicenseNumberValidated()) { errMessage += "Nopol sudah terdaftar! \n"; validated = false; } if (FieldsValidator.Validate() && valGroupName.Validate() && validated) { FormHelpers.CurrentMainForm.UpdateStatusInformation("Proses Penyimpanan dimulai", false); try { MethodBase.GetCurrentMethod().Info("Save Vehicle's changes"); this.Enabled = false; bgwSave.RunWorkerAsync(); } catch (Exception ex) { MethodBase.GetCurrentMethod().Fatal("An error occured while trying to save Vehicle", ex); this.ShowError("Proses simpan data Kendaraan gagal!"); } } else { this.ShowWarning(errMessage); } } else { this.Enabled = false; } }