public VehicleInfoWindow(VehicleAdminObject vehicle, VehicleInfoWindowTabs startTab) { InitializeComponent(); _vehicle = vehicle ?? CreateNewDefaultVehicleObject(); propertyPanels.Add(BasicVehicleControlPropertyPanel); propertyPanels.Add(ManageVehicleTasksControlPropertyPanel); propertyPanels.Add(PurchaseInfoControlPropertyPanel); propertyPanels.Add(SaleInfoControlPropertyPanel); ApplyUiMode(); ApplyActiveUserPermissions(); LoadPanel(_vehicle); CacheManager.ActiveUser.OpenedPages.Add(this); if (startTab == VehicleInfoWindowTabs.Tasks) { foreach (var tabItem in VehicleInfoTabControl.Items) { if (tabItem.ToString().ToLower().Contains("tasks")) { ((TabItem) tabItem).IsSelected = true; break; } } } }
private VehicleAdminObject CreateNewDefaultVehicleObject() { int lastId = GetNextFolderId(); DirectoryInfo newDirectory = Directory.CreateDirectory(Settings.VehiclePath + "\\" + (lastId + 1)); FileStream newfile = File.Create(newDirectory.FullName + "\\" + Settings.VehicleInfoFileName); string fileName = newfile.Name; newfile.Close(); File.WriteAllText(fileName, Settings.VehicleInfoDefaultFileText); VehicleAdminObject vehicle = new VehicleAdminObject(fileName); vehicle.SetValue(PropertyId.PurchaseDate, ((DateTime)DateTime.Now).ToString("d")); VehicleTask processVehicleTask = new VehicleTask(); processVehicleTask.Id = "Process Vehicle"; processVehicleTask.TaskVehicleId = vehicle.Id; processVehicleTask.CreatedDate = DateTime.Today.Date.ToString("d"); processVehicleTask.Status = VehicleTask.StatusTypes.NotStarted.ToString(); processVehicleTask.AssignedTo = "Mathew Toma"; processVehicleTask.Category = VehicleTask.TaskCategoryTypes.Documentation.ToString(); processVehicleTask.CreatedBy = CacheManager.ActiveUser.Name; vehicle.VehicleTasks.Add(processVehicleTask); VehicleTask emissionVehicleTask = new VehicleTask(); emissionVehicleTask.Id = "Emission test"; emissionVehicleTask.TaskVehicleId = vehicle.Id; emissionVehicleTask.CreatedDate = DateTime.Today.Date.ToString("d"); emissionVehicleTask.Status = VehicleTask.StatusTypes.NotStarted.ToString(); emissionVehicleTask.AssignedTo = "Filip Mitrofanov"; emissionVehicleTask.Category = VehicleTask.TaskCategoryTypes.Documentation.ToString(); emissionVehicleTask.CreatedBy = CacheManager.ActiveUser.Name; vehicle.VehicleTasks.Add(emissionVehicleTask); VehicleTask newVehicleClean = new VehicleTask(); newVehicleClean.Id = Strings.NEWCARCLEANINGTASK; newVehicleClean.TaskVehicleId = vehicle.Id; newVehicleClean.CreatedDate = DateTime.Today.Date.ToString("d"); newVehicleClean.Status = VehicleTask.StatusTypes.NotStarted.ToString(); newVehicleClean.AssignedTo = "Mike Wilson"; newVehicleClean.Category = VehicleTask.TaskCategoryTypes.Detail.ToString(); newVehicleClean.CreatedBy = CacheManager.ActiveUser.Name; vehicle.VehicleTasks.Add(newVehicleClean); VehicleTask newVehicleOilChange = new VehicleTask(); newVehicleOilChange.Id = Strings.NEWCAROILCHANGETASK; newVehicleOilChange.TaskVehicleId = vehicle.Id; newVehicleOilChange.CreatedDate = DateTime.Today.Date.ToString("d"); newVehicleOilChange.Status = VehicleTask.StatusTypes.NotStarted.ToString(); newVehicleOilChange.AssignedTo = "Jordan McKinnon"; newVehicleOilChange.Category = VehicleTask.TaskCategoryTypes.Other.ToString(); newVehicleOilChange.CreatedBy = CacheManager.ActiveUser.Name; vehicle.VehicleTasks.Add(newVehicleOilChange); vehicle.SetValue(PropertyId.Tasks, vehicle.VehicleTasks); vehicle.Save(null); vehicle.Cache = CacheManager.AllVehicleCache; CacheManager.AllVehicleCache.Add(vehicle); return vehicle; //TODO: add this vehicle to some cache. }
/// <summary> /// Return bool determines of cancellation of closing should occur /// True means cancel close /// false means continue with close /// </summary> /// <returns></returns> bool _parentTabControl_TabClosing() { MessageBoxResult result; if (_vehicle.GetValue(PropertyId.IsDeleted) == true.ToString()) { return false; } bool requirementsMet = VerifyMinimumRequirements(); if (!requirementsMet) { result = MessageBox.Show(Strings.PAGES_VEHICLEINFOPAGE_MISSINGINFO_CONFIRMDELETE, Strings.PAGES_VEHICLEINFOPAGE_ERROR, MessageBoxButton.YesNo); if (result == MessageBoxResult.No) { return true; } else { DeleteVehicle(); } return false; } VehicleAdminObject origionalVehicle = new VehicleAdminObject(_vehicle.ObjectId); bool same = _vehicle.Equals(origionalVehicle); if (same) return false; if (_vehicle.FileVersion == "0") { result = MessageBoxResult.Yes; } else { result = MessageBox.Show(Strings.PAGES_VEHICLEINFOPAGE_ONCLOSING_WARNING, Strings.PAGES_VEHICLEINFOPAGE_ONCLOSING_WARNING_TITLE, MessageBoxButton.YesNoCancel); } if (result == MessageBoxResult.Yes) { bool successfulSave = _vehicle.Save(this); if (!successfulSave) { MessageBox.Show(Strings.PAGES_VEHICLEINFOPAGE_ONCLOSING_UNABLETOSAVE, Strings.PAGES_VEHICLEINFOPAGE_ERROR, MessageBoxButton.OK); return true; } } else if (result == MessageBoxResult.Cancel) { return true; } if (_vehicle != null && _vehicle.Cache != null) { _vehicle.Cache.ModifyItem(_vehicle); } return false; }
private void btnRefresh_Click(object sender, RoutedEventArgs e) { if (sender == null) { LoadPanel(_vehicle); return; } VehicleCache cache = _vehicle.Cache as VehicleCache; if (cache != null) { cache.Remove(_vehicle); _vehicle = new VehicleAdminObject(_vehicle.ObjectId); cache.Add(_vehicle); _vehicle.Cache = cache; } if (CacheManager.AllVehicleCache != null) { CacheManager.AllVehicleCache.RemoveItem(_vehicle.ObjectId); VehicleAdminObject temp = new VehicleAdminObject(_vehicle.ObjectId); temp.Cache = CacheManager.AllVehicleCache; CacheManager.AllVehicleCache.Add(temp); } LoadPanel(_vehicle); }