private void Initiaize() { _cars = Statics.ReadFromFile(CARS_FILR_PATH); _names = Statics.ReadFromFile(NAMES_FILE_PATH); Thread thread = new Thread(async() => { _citiesAndStreetsForRoutes = await CSVParser.ParseCSVAsync("_streets.csv"); }); thread.Start(); Dictionary <string, string> configs = getConnctionStringAndDBName(); _connector = new MongoConnector(configs["connectionString"], configs["databaseName"]); _digitsKeys = _connector.GetDocumentById <KeysModel>("_program_data", new Guid("98ca8e37-1dce-46ca-afcd-b87bf455e0cc")).NumKeysValuesList; //var giud = _connector.GetAllDocuments<KeysModel>("_program_data"); cmbTaxiManufacturer.Items.AddRange(_cars); var cars = _connector.GetAllDocuments <CarModel>("Cars").Select(x => new ComboCar(x)).ToArray(); var routes = _connector.GetAllDocuments <RouteModel>("Routes").Select(x => new ComboRoute(x)).ToArray(); cmbCars.Items.AddRange(cars); cmbRoutes.Items.AddRange(routes); cmbCars.SelectedIndexChanged += (object sender, EventArgs e) => { lblCarLicense.Text = ((ComboCar)(sender as ComboBox).SelectedItem).License; }; cmbEditAllDrivers.SelectedIndexChanged += (object sender, EventArgs e) => { cmbEditAllDriversSelectedIndexChanged(sender, e); //_cmbEditAllDriversSelectedItem }; cmbEditTaxies.SelectedIndexChanged += (object sender, EventArgs e) => { cmbEditTaxiesSelectedIndexChanged(sender as ComboBox); }; txtChangeDriverCarLicense.KeyDown += (object sender, KeyEventArgs e) => { LicenseNumberTexBoxKeyDown(sender as TextBox, e); }; txtEditTaxiesLicense.KeyDown += (object sender, KeyEventArgs e) => { LicenseNumberTexBoxKeyDown(sender as TextBox, e); }; InitializeAddCarsTab(); InitializeAddDriversTab(); InitializeAddRoutesTab(); InitializeEditDriversTab(); InitializeEtitTaxiesTab(); editDriversTab.Leave += async(object sender, EventArgs e) => { await editDriversTabLeave(); }; editTaxiesTab.Leave += async(object sender, EventArgs e) => { await editDriversTabLeave(); }; editTaxiesTab.Enter += (object sender, EventArgs e) => { InitializeEtitTaxiesTab(); }; btnAddDriver.Click += (object sender, EventArgs e) => { DriverModel driver = new DriverModel { Id = new Guid(), FirstName = txtFirstName.Text, Lastname = txtLastName.Text, IdentityNumber = pnlLongNumberCreatorIdNumber.Number, //Image = pbcDriverPicture.Image as Bitmap, Image = (byte[])_imageConverter.ConvertTo(pbxDriverPicture.Image, typeof(byte[])), CarIds = _driverCarIDs, RouteIds = _driverRouteIDs }; _connector.AddDocument("Drivers", driver); cmbEditAllDrivers.Items.Add(new ComboDriver(driver)); InitializeAddDriversTab(); }; btnAddTaxi.Click += (object sender, EventArgs e) => { List <Guid> driverIDs = new List <Guid>(); driverIDs.Add((cmbTaxiDrivers.SelectedItem as ComboDriver).Driver.Id); CarModel car = new CarModel { Id = new Guid(), Manufacturer = (string)cmbTaxiManufacturer.SelectedItem, LicenseNumber = pnlLongNumberCreatorTaxiLicenseNumber.Number, DriverIds = driverIDs }; _connector.AddDocument("Cars", car); InitializeAddCarsTab(); }; btnAddRoute.Click += (object sender, EventArgs e) => { RouteModel route = new RouteModel { Id = new Guid(), DepartureAddress = txtDepartureAddress.Text, DestinationAddress = txtDestinationAddress.Text }; _connector.AddDocument("Routes", route); InitializeAddRoutesTab(); }; //List<DriverModel> lstDrivers = new List<DriverModel>(); btnAddDriverRoutes.MouseHover += (object sender, EventArgs e) => { cmbChangeDriverRoutes1.Text = GenerateAddress(_citiesAndStreetsForRoutes); cmbChangeDriverRoutes2.Text = GenerateAddress(_citiesAndStreetsForRoutes); }; btnAddDriverRoutes.Click += (object sender, EventArgs e) => { if (_driverWhenEdited == null) { MessageBox.Show("Choose dreiver first"); return; } var routeId = Guid.NewGuid(); RouteModel route = new RouteModel { Id = routeId, DepartureAddress = cmbChangeDriverRoutes1.Text, DestinationAddress = cmbChangeDriverRoutes2.Text }; _driverWhenEdited.RouteIds.Add(route.Id); _connector.AddDocument("Routes", route); _connector.UpdateDocument("Drivers", _driverWhenEdited.Id, _driverWhenEdited); cmbEditAllDriversSelectedIndexChanged(cmbEditAllDrivers, new EventArgs()); }; btnSaveDriverRoutes.Click += (object sender, EventArgs e) => { if (_driverWhenEdited == null) { MessageBox.Show("Choose driver first"); return; } if (cmbChangeDriverRoutes1.Items.Count == 0) { MessageBox.Show("This driver has no routes"); return; } RouteModel route1 = (cmbChangeDriverRoutes1.Items[_cmbChangeDriverRoutes1SelectedIndex] as ComboRoute).Route; Guid route1ID = route1.Id; if (!string.IsNullOrEmpty(cmbChangeDriverRoutes1.Text) && !string.IsNullOrWhiteSpace(cmbChangeDriverRoutes1.Text)) { route1.DepartureAddress = cmbChangeDriverRoutes1.Text; } if (!string.IsNullOrEmpty(cmbChangeDriverRoutes2.Text) && !string.IsNullOrWhiteSpace(cmbChangeDriverRoutes2.Text)) { route1.DestinationAddress = cmbChangeDriverRoutes2.Text; } if (_driverWhenEdited.RouteIds.Contains(route1ID)) { _connector.UpdateDocument("Routes", route1ID, route1); RouteModel route1Updated = _connector.GetDocumentById <RouteModel>("Routes", route1ID); if (route1.Id == route1Updated.Id) { cmbEditAllDriversSelectedIndexChanged(cmbEditAllDrivers, new EventArgs()); } } else { MessageBox.Show($"sorry, but this driver don't have a route \"${route1.DepartureAddress} - ${route1.DestinationAddress}\". The route won't be updated. "); } }; btnDeleteDriverRoutes.Click += (object sender, EventArgs e) => { if (_driverWhenEdited == null) { MessageBox.Show("Choose dreiver first"); return; } if (cmbChangeDriverRoutes1.Items.Count == 0) { MessageBox.Show("This driver has no routes"); return; } RouteModel route1 = (cmbChangeDriverRoutes1.Items[_cmbChangeDriverRoutes1SelectedIndex] as ComboRoute).Route; Guid route1ID = route1.Id; RouteModel route1Check = _connector.GetDocumentById <RouteModel>("Routes", route1ID); _connector.DeleteDocument <RouteModel>("Routes", route1ID); RouteModel route1Check2 = _connector.GetDocumentById <RouteModel>("Routes", route1ID); _driverWhenEdited.RouteIds.Remove(route1.Id); _connector.UpdateDocument("Drivers", _driverWhenEdited.Id, _driverWhenEdited); cmbEditAllDriversSelectedIndexChanged(cmbEditAllDrivers, new EventArgs()); }; btnAddDriverCar.MouseHover += (object sender, EventArgs e) => { cmbChangeDriverCars.Text = _cars[_rnd.Next(_cars.Length - 1)]; string license = ""; for (int i = 0; i < 6; i++) { license += _rnd.Next(9).ToString(); } txtChangeDriverCarLicense.Text = license; }; cmbEditTaxiesDriversAllDrivers.SelectedIndexChanged += (object sender, EventArgs e) => { _cmbEditTaxiesDriversAllDriversSelectedItem = (sender as ComboBox).SelectedItem; }; }
public static string GetPersonImageAs64BaseString() { _imageString = Statics.GetStreamFromUrl("https://thispersondoesnotexist.com/image"); return(Convert.ToBase64String(ReadToEnd(_imageString))); }