/*public void LoadRepairStatement()
         * {
         *  _statements = _statement.RetrieveRepairStatement(_conditionString1);
         *  _totalRepair = 0;
         *  foreach (Statement statement in _statements)
         *  {
         *      _supplierID = statement.SupplierID;
         *      _repairID = statement.ID;
         *      _invoiceNumber = statement.InvoiceNumber;
         *      _type = statement.Type;
         *      _repairAmount = statement.AmountDue;
         *      _totalRepair += statement.AmountDue;
         *
         *      ListViewItem searchStatement = new ListViewItem(_supplierID.ToString());
         *      searchStatement.SubItems.Add(_repairID.ToString());
         *      searchStatement.SubItems.Add(_invoiceNumber);
         *      searchStatement.SubItems.Add(_type);
         *      searchStatement.SubItems.Add(_repairAmount.ToString("N2"));
         *
         *      statementLV.Items.Add(searchStatement);
         *  }
         * }
         * public void LoadRepairDetailStatement()
         * {
         *  _statements = _statement.RetrieveRepairDetailStatement(_conditionString1);
         *  _totalPart = 0;
         *  foreach (Statement statement in _statements)
         *  {
         *      _supplierID = statement.SupplierID;
         *      _partID = statement.ID;
         *      _invoiceNumber = statement.InvoiceNumber;
         *      _type = statement.Type;
         *      _repairAmount = statement.AmountDue;
         *      _totalPart += statement.AmountDue;
         *
         *      ListViewItem searchStatement = new ListViewItem(_supplierID.ToString());
         *      searchStatement.SubItems.Add(_partID.ToString());
         *      searchStatement.SubItems.Add(_invoiceNumber);
         *      searchStatement.SubItems.Add(_type);
         *      searchStatement.SubItems.Add(_repairAmount.ToString("N2"));
         *
         *      statementLV.Items.Add(searchStatement);
         *  }
         * }*/
        #endregion

        #region Other Methods
        private void ShowData(string plateNumber)
        {
            LoadRegistration(plateNumber);
            LoadInsurance(plateNumber);
            LoadRepair(plateNumber);
            Loadfuel(plateNumber);

            _vehicle           = _vehicle.RetrieveVehicleInfo(plateNumber);
            plateNumberTB.Text = _vehicle.PlateNumber;
            crNumberTB.Text    = _vehicle.CRNumber;
            crDateDTP.Value    = _vehicle.CRDate;
            listingCB.Text     = _vehicle.Listing;
            brandCB.Text       = _vehicle.Brand;
            categoryCB.Text    = _vehicle.Category;
            issuedToTB.Text    = _vehicle.IssuedTo;

            _registration = _registration.RetrieveRegistrationInfo(plateNumber);
            registrationPlateNumberTB.Text = _registration.PlateNumber;
            registeredNameTB.Text          = registrationRegisteredNameTB.Text = _registration.RegisteredName;
            registrationORNumberTB.Text    = _registration.ORNumber;

            if (_registration.Renewal.ToString() != "01/01/0001 12:00:00 AM")
            {
                registrationRenewalDTP.Value = _registration.Renewal;
            }
            else
            {
                registrationRenewalDTP.Value = DateTime.Now;
            }
            registrationAmountTB.Text = _registration.Amount.ToString("N2");
            remarksRTB.Text           = _registration.Remarks;

            _insurance = _insurance.RetrieveInsuranceInfo(plateNumber);
            insurancePlateNumberTB.Text    = plateNumber;
            insuranceRegisteredNameTB.Text = _registration.RegisteredName;
            insuranceCompanyTB.Text        = _insurance.Company;
            // insuranceDurationFromDTP.Value = _insurance.DurationFrom;
            // insuranceDurationToDTP.Value = _insurance.DurationTo;
            //insuranceRenewalDTP.Value = _insurance.Renewal;
            insuranceAmountTB.Text = _insurance.Amount.ToString("N2");

            _repairs = _repair.RetrieveRepairList(plateNumber);
            repairPlateNumberTB.Text = plateNumber; //this
            //repairDateDTP.Value = _repair.RepairDate;
            repairTypeOfRepairTB.Text  = _repair.TypeOfRepair;
            repairSupplierCB.Text      = _supplier.RetrieveSupplierInfo(_repair.SupplierID).SupplierName;
            repairInvoiceNumberCB.Text = _repair.InvoiceNumber;
            repairAmountTB.Text        = _repair.Amount.ToString("N2");

            _fuel = _fuel.RetrieveFuelInfo(plateNumber);
            fuelPlateNumberTB.Text = plateNumber; //this
            fuelVehicleTB.Text     = _vehicle.RetrieveVehicleInfo(_fuel.PlateNumber).Category;
            // fuelDateDTP.Value = _fuel.FuelDate;
            fuelTypeOfFuelCB.Text = _fuel.TypeOfFuel;
            fuelSupplierTB.Text   = _supplier.RetrieveSupplierInfo(_fuel.SupplierID).SupplierName;
            fuelAmountTB.Text     = _fuel.Amount.ToString("N2");
        }
 private void ShowData(string plateNumber)
 {
     _insurance            = _insurance.RetrieveInsuranceInfo(plateNumber);
     insuranceIDTB.Text    = _insurance.InsuranceID.ToString();
     plateNumberCB.Text    = _insurance.PlateNumber;
     registeredNameTB.Text = _registration.RegisteredName;
     companyCB.Text        = _insurance.Company;
     durationFromDTP.Value = _insurance.DurationFrom;
     durationToDTP.Value   = _insurance.DurationTo;
     renewalDTP.Value      = _insurance.Renewal;
     amountTB.Text         = _insurance.Amount.ToString("N2");
 }
        private void saveB_Click(object sender, EventArgs e)
        {
            if (plateNumberCB.Text == "")
            {
                MessageBox.Show("Please choose a PLATE NUMBER", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else if (registeredNameTB.Text == "")
            {
                MessageBox.Show("Please enter the REGISTERED NAME", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else if (companyCB.Text == "")
            {
                MessageBox.Show("Please choose a COMPANY", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else if (amountTB.Text == "")
            {
                MessageBox.Show("Please insert an AMOUNT", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else if (renewalDTP.Value == DateTime.Now)
            {
                MessageBox.Show("Please insert the RENEWAL DATE", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                try
                {
                    insuranceID    = int.Parse(insuranceIDTB.Text.Trim());
                    plateNumber    = plateNumberCB.Text.Trim();
                    registeredName = registeredNameTB.Text.Trim();
                    company        = companyCB.Text.Trim();
                    durationFrom   = durationFromDTP.Value;
                    durationTo     = durationToDTP.Value;
                    amount         = double.Parse(amountTB.Text.Trim());
                    renewal        = renewalDTP.Value;

                    _insurance = new Insurance(insuranceID,
                                               plateNumber,
                                               company,
                                               durationFrom,
                                               durationTo,
                                               renewal,
                                               amount);

                    _insurance.InsertInsurance(_insurance);
                    Close();
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.ToString());
                }
            }
        }
        private void insuranceEditB_Click(object sender, EventArgs e)
        {
            if (insuranceEditB.Text == "Edit")
            {
                insuranceEditB.Text = "Save";
                EnableInsurance();
            }
            else if (insuranceEditB.Text == "Save")
            {
                if (_insuranceRegisteredName != insuranceRegisteredNameTB.Text ||
                    _insuranceCompany != insuranceCompanyTB.Text ||
                    _insuranceDurationFrom != insuranceDurationFromDTP.Value ||
                    _insuranceDurationTo != insuranceDurationToDTP.Value ||
                    _insuranceRenewal != insuranceDurationToDTP.Value ||
                    _insuranceRenewal != insuranceRenewalDTP.Value ||
                    _insuranceAmount != double.Parse(insuranceAmountTB.Text))
                {
                    _insurance = new Insurance(_insurance.InsuranceID,
                                               _insurance.PlateNumber,
                                               insuranceCompanyTB.Text,
                                               insuranceDurationFromDTP.Value,
                                               insuranceDurationToDTP.Value,
                                               insuranceRenewalDTP.Value,
                                               double.Parse(insuranceAmountTB.Text.Trim()));
                }

                _insurance.UpdateInsuranceInfo(_insurance);
                DisableInsurance();
                insuranceEditB.Text = "Edit";


                LoadRegistration(_insurance.PlateNumber);
                LoadInsurance(_insurance.PlateNumber);
                LoadRepair(_insurance.PlateNumber);
                Loadfuel(_insurance.PlateNumber);
            }
        }
        public List <Insurance> RetrieveInsuranceList(string plateNumber)
        {
            List <Insurance> insuranceList = new List <Insurance>();

            try
            {
                _dbOp.DBConnect();
                MySqlCommand cmd = _dbOp._dbConn.CreateCommand();

                cmd.CommandText = @"SELECT * FROM Insurance " + "WHERE PlateNumber = @PlateNumber";
                cmd.Parameters.AddWithValue("@PlateNumber", plateNumber);

                MySqlDataReader reader = cmd.ExecuteReader();
                Insurance       temp   = new Insurance();

                while (reader.Read())
                {
                    InsuranceID  = (int)reader.GetValue(0);
                    PlateNumber  = (string)reader.GetValue(1);
                    Company      = (string)reader.GetValue(2);
                    DurationFrom = (DateTime)reader.GetValue(3);
                    DurationTo   = (DateTime)reader.GetValue(4);
                    Renewal      = (DateTime)reader.GetValue(5);
                    Amount       = (double)reader.GetValue(6);

                    temp = new Insurance(InsuranceID, PlateNumber, Company, DurationFrom, DurationTo, Renewal, Amount);
                    insuranceList.Add(temp);
                }
                reader.Close();
                _dbOp.DBClose();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
            return(insuranceList);
        }