void populateSettings() { if (DataDelegate.debugMode == true) { cmbDebugMode.SelectedIndex = 0; } else { cmbDebugMode.SelectedIndex = 1; } cmbDatabase.SelectedIndex = DataValidator.getComboBoxIndexOf(cmbDatabase, Database.dbSource); }
// Method to get the data from the database and display in the form. void showBookingData() { // Send the SQL statement to the Database. DataSet d = Database.getInstance().select("", new string[] { " Booking as T1, Customer as T2, Vehicle as T3 " }, new String[] { " T1.BookingID, T1.VehicleVIN, T1.CustomerID, T1.EmployeeID, T1.BookingCreationDate, T1.ScheduledHireBeginDateTime, T1.ScheduledHireReturnDateTime, T1.ActualHireBeginDateTime, T1.ActualHireReturnDateTime, T1.OdometerReadingPreHire, T1.OdometerReadingPostHire, T1.TotalBill, T2.Title, T2.FirstName, T2.LastName, T3.Manufacturer, T3.Model, T3.DailyRate "}, "WHERE T1.VehicleVIN = T3.VehicleVIN and T1.CustomerID = T2.CustomerID and T1.BookingID ", "=", bookingID.ToString(), new string[] { "" }); // Strings to store the results from the database. // Initialised to prevent errors. String strVehicleVIN = "", strCustomerID = "", strEmployeeID = "", strBookingCreationDate = "", strScheduledHireBeginDateTime = "", strScheduledHireBeginDate = "", strScheduledHireBeginHour = "", strScheduledHireBeginMinute = "", strScheduledHireReturnDateTime = "", strScheduledHireReturnDate = "", strScheduledHireReturnHour = "", strScheduledHireReturnMinute = "", strActualHireBeginDateTime = "", strActualHireReturnDateTime = "", strOdometerReadingPreHire = "", strOdometerReadingPostHire = "", strTotalBill = "", strTitle = "", strFirstName = "", strLastName = "", strManufacturer = "", strModel = "", strDailyRate = ""; // Iterate through the results returned from the database. foreach (DataTable table in d.Tables) { foreach (DataRow row in table.Rows) { foreach (DataColumn column in table.Columns) { // Handle all of the results and place the results in the correct strings as declared above. if (column.ColumnName == "Title") { strTitle = row[column].ToString(); } if (column.ColumnName == "FirstName") { strFirstName = row[column].ToString(); } if (column.ColumnName == "LastName") { strLastName = row[column].ToString(); } if (column.ColumnName == "VehicleVIN") { strVehicleVIN = row[column].ToString(); // Store the VehicleVIN at Page scope as well. vehicleVIN = strVehicleVIN; } if (column.ColumnName == "CustomerID") { strCustomerID = row[column].ToString(); CustomerID = int.Parse(strCustomerID); } if (column.ColumnName == "EmployeeID") { strEmployeeID = row[column].ToString(); } if (column.ColumnName == "BookingCreationDate") { strBookingCreationDate = row[column].ToString(); } if (column.ColumnName == "ScheduledHireBeginDateTime") { strScheduledHireBeginDateTime = row[column].ToString(); // This is a hidden TextBox used to hold the full date as text in one place. txtScheduledHireBeginDateTime.Text = strScheduledHireBeginDateTime; // Parse the date from a string to a DateTime object. DateTime.TryParse(strScheduledHireBeginDateTime, out scheduledCollectionDateTime); // Format the string in a way that displays well for the user. strScheduledHireBeginDate = scheduledCollectionDateTime.ToString("dd-MM-yyyy"); // Put the date in the DatePicker Form Control dpCollection.SelectedDate = scheduledCollectionDateTime; // Get the HOUR strScheduledHireBeginHour = scheduledCollectionDateTime.ToString("HH"); // Put the HOUR in the hour ComboBox using a horrible method which works, so leave it unless you have a better solution. cmbCollectionHour.SelectedIndex = DataValidator.getComboBoxIndexOf(cmbCollectionHour, strScheduledHireBeginHour); // Get the MINUTE strScheduledHireBeginMinute = scheduledCollectionDateTime.ToString("mm"); // Put the MiNUTE in the minute ComboBox using the same method above. cmbCollectionMinute.SelectedIndex = DataValidator.getComboBoxIndexOf(cmbCollectionMinute, strScheduledHireBeginMinute); } if (column.ColumnName == "ScheduledHireReturnDateTime") { // This uses the same procedure as the one above. // See above for details on use. strScheduledHireReturnDateTime = row[column].ToString(); txtScheduledHireReturnDateTime.Text = strScheduledHireReturnDateTime; DateTime.TryParse(strScheduledHireReturnDateTime, out scheduledReturnDateTime); strScheduledHireReturnDate = scheduledReturnDateTime.ToString("dd-MM-yyyy"); dpReturn.SelectedDate = scheduledReturnDateTime; strScheduledHireReturnHour = scheduledReturnDateTime.ToString("HH"); cmbReturnHour.SelectedIndex = DataValidator.getComboBoxIndexOf(cmbReturnHour, strScheduledHireReturnHour); strScheduledHireReturnMinute = scheduledReturnDateTime.ToString("mm"); cmbReturnMinute.SelectedIndex = DataValidator.getComboBoxIndexOf(cmbReturnMinute, strScheduledHireReturnMinute); } if (column.ColumnName == "ActualHireBeginDateTime") { strActualHireBeginDateTime = row[column].ToString(); // Hidden TextBox to hold the full date in one place. txtActualHireBeginDateTime.Text = strActualHireBeginDateTime; // Parse from a string to a dateTime object, held at Page scope. DateTime.TryParse(strActualHireBeginDateTime, out actualCollectionDateTime); } if (column.ColumnName == "ActualHireReturnDateTime") { // This uses the same procedure as the one above. // See above for details on use. strActualHireReturnDateTime = row[column].ToString(); txtActualHireReturnDateTime.Text = strActualHireReturnDateTime; DateTime.TryParse(strActualHireReturnDateTime, out actualReturnDateTime); } if (column.ColumnName == "OdometerReadingPreHire") { strOdometerReadingPreHire = row[column].ToString(); txtOdometerReadingPreHire.Text = strOdometerReadingPreHire; int.TryParse(strOdometerReadingPreHire, out intOdoPreHire); } if (column.ColumnName == "OdometerReadingPostHire") { strOdometerReadingPostHire = row[column].ToString(); txtOdometerReadingPostHire.Text = strOdometerReadingPostHire; int.TryParse(strOdometerReadingPostHire, out intOdoPostHire); } if (column.ColumnName == "TotalBill") { // Take the string and parse it as a double, to format it as currency. strTotalBill = row[column].ToString(); decimal totalBill = 0; decimal.TryParse(strTotalBill, out totalBill); txtTotalCharge.Text = totalBill.ToString("C"); decTotalBill = Math.Round(totalBill, 2); } if (column.ColumnName == "Manufacturer") { strManufacturer = row[column].ToString(); } if (column.ColumnName == "Model") { strModel = row[column].ToString(); } if (column.ColumnName == "DailyRate") { // Take the string and parse it as a double, to format it as currency. strDailyRate = row[column].ToString(); double dailyRate = 0; double.TryParse(strDailyRate, out dailyRate); txtDailyRate.Text = dailyRate.ToString("C"); } } } } // Display the Customer Name txtCustomerName.Text = strTitle + " " + strFirstName + " " + strLastName + "."; // Clear the list of Vehicles. lstVehiclesAvailable.Items.Clear(); // Add the Vehicle to the listBox on the form. lstVehiclesAvailable.Items.Add(strManufacturer + " " + strModel); string strPaymentsMade = Database.getInstance().datasetToString(Database.getInstance().customSQL("SELECT SUM(Amount) FROM Payment WHERE BookingID = '" + bookingID + "'")); decimal decPaymentsMade = 0; Decimal.TryParse(strPaymentsMade, out decPaymentsMade); txtPaymentStatus.Text = decPaymentsMade.ToString("C"); decTotalPaid = Math.Round(decPaymentsMade, 2); showHideControls(); }
void showVehicleData() { DataSet d = Database.getInstance().select("", new string[] { " Vehicle as T1 " }, new String[] { " T1.VehicleVIN, T1.Manufacturer, T1.Model, T1.VehicleDetails, T1.DailyRate, T1.ChassisNumber, T1.SuitableForHire, T1.DateOfFirstRegistration, T1.ImagePath " }, "WHERE T1.VehicleVIN ", "=", VehicleVIN, new string[] { " ORDER BY T1.DateOfFirstRegistration DESC;" }); String strVehicleVIN = "", strManufacturer = "", strModel = "", strDateOfFirstRegistration = "", strVehicleDetails = " ", strDailyRate = "", strSuitableForHire = "", strImagePath = ""; foreach (DataTable table in d.Tables) { foreach (DataRow row in table.Rows) { foreach (DataColumn column in table.Columns) { if (column.ColumnName == "VehicleVIN") { strVehicleVIN = row[column].ToString(); txtVehicleVIN.Text = strVehicleVIN; } if (column.ColumnName == "Manufacturer") { txtManufacturer.Text = row[column].ToString(); } if (column.ColumnName == "Model") { txtModel.Text = row[column].ToString(); } if (column.ColumnName == "DateOfFirstRegistration") { dpDateOfFirstRegistration.SelectedDate = DataValidator.stringToDate(row[column].ToString()); } if (column.ColumnName == "VehicleDetails") { txtVehicleDetails.Text = row[column].ToString(); } if (column.ColumnName == "DailyRate") { txtDailyRate.Text = string.Format("{0:C}", Convert.ToDecimal(row[column].ToString())); } if (column.ColumnName == "ChassisNumber") { txtChassisNumber.Text = row[column].ToString(); } if (column.ColumnName == "SuitableForHire") { cmbSuitableForHire.SelectedIndex = DataValidator.getComboBoxIndexOf(cmbSuitableForHire, row[column].ToString()); } if (column.ColumnName == "ImagePath") { strImagePath = row[column].ToString(); imgVehicleImage.Source = new BitmapImage(new Uri(strImagePath, UriKind.Relative)); } } } } }
void showCustomerData() { DataSet d = Database.getInstance().select("", new string[] { " Customer as T1, DrivingLicense as T2, CustomerContact as T3, CreditCard as T4 " }, new String[] { " T1.CustomerID, T1.Title, T1.FirstName, T1.MiddleName, T1.LastName, T1.DateOfBirth, T1.ImagePath, T3.HouseNumber, T3.StreetName, T3.Suburb, T3.City, T3.State, T3.Postcode, T3.MobilePhone, T3.Email, T2.DrivingLicenseNumber, T2.Country, T2.IssueDate, T2.ExpiryDate, T2.Convictions, T4.CredCardType, T4.CredCardNumber, T4.NameOnCredCard, T4.CredCardExpiry, T4.CredCardSecurityCode " }, "WHERE T1.CustomerID = T2.CustomerID and T3.CustomerID = T1.CustomerID and T4.CustomerID = T1.CustomerID and T1.CustomerID ", "=", customerID.ToString(), new string[] { "" }); String strCustomerID = "", strTitle = "", strFirstName = "", strLastName = "", strDateOfBirth = "", strHouseNo = "", strStreetName = "", strSuburb = "", strCity = "", strState = "", strPostcode = "", strPhone = "", strEmail = "", strDrivingLicenseNumber = "", strImagePath = ""; foreach (DataTable table in d.Tables) { foreach (DataRow row in table.Rows) { foreach (DataColumn column in table.Columns) { if (column.ColumnName == "CustomerID") { strCustomerID = row[column].ToString(); txtCustomerID.Text = strCustomerID; // Hidden form field. Is it necessary? } if (column.ColumnName == "Title") { // There MUST be a more elegant solution! cmbTitle.SelectedIndex = DataValidator.getComboBoxIndexOf(cmbTitle, row[column].ToString()); } if (column.ColumnName == "FirstName") { txtFirstName.Text = row[column].ToString(); } if (column.ColumnName == "MiddleName") { txtMiddleName.Text = row[column].ToString(); } if (column.ColumnName == "LastName") { txtLastName.Text = row[column].ToString(); } if (column.ColumnName == "DateOfBirth") { dpDateOfBirth.SelectedDate = DataValidator.stringToDate(row[column].ToString()); } if (column.ColumnName == "ImagePath") { strImagePath = row[column].ToString(); imgCustomerImage.Source = new BitmapImage(new Uri(strImagePath, UriKind.Relative)); } if (column.ColumnName == "HouseNumber") { txtHouseNumber.Text = row[column].ToString(); } if (column.ColumnName == "StreetName") { txtStreet.Text = row[column].ToString(); } if (column.ColumnName == "Suburb") { txtSuburb.Text = row[column].ToString(); } if (column.ColumnName == "City") { txtCity.Text = row[column].ToString(); } if (column.ColumnName == "State") { cmbState.SelectedIndex = DataValidator.getComboBoxIndexOf(cmbState, row[column].ToString()); } if (column.ColumnName == "Postcode") { txtPostcode.Text = row[column].ToString(); } if (column.ColumnName == "MobilePhone") { txtPhone.Text = row[column].ToString(); } if (column.ColumnName == "Email") { txtEmail.Text = row[column].ToString(); } if (column.ColumnName == "DrivingLicenseNumber") { txtDrivingLicenseNumber.Text = row[column].ToString(); } if (column.ColumnName == "IssueDate") { dpDrivingLicenseIssueDate.SelectedDate = DataValidator.stringToDate(row[column].ToString()); } if (column.ColumnName == "ExpiryDate") { dpDrivingLicenseExpiry.SelectedDate = DataValidator.stringToDate(row[column].ToString()); } if (column.ColumnName == "Convictions") { cmbDrivingConvictions.SelectedIndex = DataValidator.getComboBoxIndexOf(cmbDrivingConvictions, row[column].ToString()); } if (column.ColumnName == "Country") { cmbDrivingLicenseCountry.SelectedIndex = DataValidator.getComboBoxIndexOf(cmbDrivingLicenseCountry, row[column].ToString()); } if (column.ColumnName == "CredCardNumber") { txtCreditCardCardNumber.Text = row[column].ToString(); } if (column.ColumnName == "CredCardType") { cmbCreditCardType.SelectedIndex = DataValidator.getComboBoxIndexOf(cmbCreditCardType, row[column].ToString()); } if (column.ColumnName == "NameOnCredCard") { txtCreditCardCardName.Text = row[column].ToString(); } if (column.ColumnName == "CredCardExpiry") { txtCreditCardExpiry.Text = row[column].ToString(); } if (column.ColumnName == "CredCardSecurityCode") { txtCreditCardSecurityCode.Text = row[column].ToString(); } } } } }
private void cmbDatabase_SelectionChanged(object sender, SelectionChangedEventArgs e) { cmbDatabase.SelectedItem = DataValidator.getComboBoxIndexOf(cmbDatabase, Database.dbSource); }