コード例 #1
0
ファイル: MasterReport.cs プロジェクト: kudakwashegore/pcms
        public static List <MasterReport> GetList()
        {
            List <MasterReport> items = new List <MasterReport>();



            foreach (var item in TripBl.GetList())
            {
                MasterReport reportData = new MasterReport();
                Refill       r          = new RefillBl().GetById(item.RefillId);
                Vehicle      v          = new VehicleBl().GetById(item.VehicleId);
                Driver       d          = new DriverBl().GetById(item.DriverId);

                string closed = "";

                reportData.DateTimeStart    = string.Format("{0}", item.DateTimeStart.ToString("dd/MM/yy,hh:mm tt"));
                reportData.DateTimeEnd      = string.Format("{0}", item.DateTimeEnd.ToString("dd/MM/yy,hh:mm tt"));
                reportData.DriverName       = d.FullName;
                reportData.DriverId         = d.Id;
                reportData.VehicleName      = string.Format("{0}({1})", v.Name, v.RegistrationNumber);
                reportData.VehicleId        = v.Id;
                reportData.Refill           = string.Format("Refill No: {5}\nDate: {0}\nAmount: ${1}\nLiterage: {2}L\nPerfo': {3}km/l\nStatus: {4}", r.DateAndTime.ToString("dd/MM/yy "), r.Amount, r.Litreage, (RefillBl.TotalMileage(r.Id) / (decimal)r.Litreage).ToString("N2"), closed = r.Closed ? "Closed" : "Open", r.Id);
                reportData.RefillId         = r.Id;
                reportData.MileageStart     = item.MileageStart;
                reportData.MileageEnd       = item.MileageEnd;
                reportData.MileageTravelled = (item.MileageEnd - item.MileageStart);
                reportData.TripDetails      = item.TripDetails;
                reportData.ExpenseAccount   = item.ExpenseAccount;
                reportData.Cost             = (reportData.MileageTravelled / RefillBl.TotalMileage(r.Id)) * r.Amount;

                items.Add(reportData);
            }

            return(items);
        }
コード例 #2
0
        private void deleteButton_Click(object sender, EventArgs e)
        {
            if (dataGridView.SelectedCells.Count > 0)
            {
                int selectedrowindex = dataGridView.SelectedCells[0].RowIndex;

                DataGridViewRow selectedRow = dataGridView.Rows[selectedrowindex];

                Id = int.Parse(Convert.ToString(selectedRow.Cells["Id"].Value));

                if (MessageBox.Show(String.Format("Are you sure to delete {0}({1})?", Convert.ToString(selectedRow.Cells["Name"].Value), Convert.ToString(selectedRow.Cells["RegistrationNumber"].Value)), "Deleting...", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    if (TripBl.VehicleInUse(Id) || RefillBl.VehicleInUse(Id))
                    {
                        MessageBox.Show("Vehicle is in use, can't be deleted.");
                        return;
                    }

                    VehicleBl vehicleBl = new VehicleBl();
                    vehicleBl.Delete(Id);
                    Id = 0;

                    RefreshGrid();
                }
            }
        }
コード例 #3
0
ファイル: Refills.cs プロジェクト: kudakwashegore/pcms
        private void saveButton_Click(object sender, EventArgs e)
        {
            if (Valid())
            {
                RefillBl refillBl = new RefillBl();

                //Close  previous refill
                if (Id == 0 && RefillBl.GetPrevious(int.Parse(vehicleComboBox.SelectedValue.ToString())) != null)
                {
                    refillBl.SetClosed(RefillBl.GetPrevious(int.Parse(vehicleComboBox.SelectedValue.ToString())));
                }
                try
                {
                    refillBl.Save(Id, DateTime.Parse(dateTimePicker.Text), int.Parse(vehicleComboBox.SelectedValue.ToString()), decimal.Parse(amountTextBox.Text), double.Parse(litreageTextBox.Text), decimal.Parse(mileageTextBox.Text));

                    dateTimePicker.Text = DateTime.Today.ToString();
                    amountTextBox.Text  = mileageTextBox.Text = litreageTextBox.Text = "";
                    Id = 0;
                }
                catch (Exception ex) { MessageBox.Show("Error occured: " + ex.Message); }

                RefreshGrid();
                NewVehicleCompobox();
            }
        }
コード例 #4
0
ファイル: Refills.cs プロジェクト: kudakwashegore/pcms
        public static List <RefillData> GetList()
        {
            List <RefillData> items = new List <RefillData>();

            foreach (var item in RefillBl.GetList())
            {
                RefillData refillData = new RefillData();
                refillData.Id          = item.Id;
                refillData.Date        = item.DateAndTime.ToString("dddd dd MMM yyyy");
                refillData.VehicleId   = item.VehicleId;
                refillData.VehicleName = string.Format("{0}({1})", new VehicleBl().GetById(item.VehicleId).Name, new VehicleBl().GetById(item.VehicleId).RegistrationNumber);
                refillData.Amount      = item.Amount;
                refillData.Litreage    = item.Litreage;
                refillData.Mileage     = item.Mileage;

                items.Add(refillData);
            }

            return(items);
        }
コード例 #5
0
        private void saveButton_Click(object sender, EventArgs e)
        {
            if (Valid())
            {
                TripBl tripBl = new TripBl();

                try
                {
                    tripBl.Save(Id, DateTime.Parse(startDateDateTimePicker.Text + " " + startTimeDateTimePicker.Text), DateTime.Parse(endDateDateTimePicker.Text + " " + endTimeDateTimePicker.Text), int.Parse(vehicleComboBox.SelectedValue.ToString()), int.Parse(driverComboBox.SelectedValue.ToString()), RefillBl.GetPrevious(int.Parse(vehicleComboBox.SelectedValue.ToString())).Id, decimal.Parse(mileageStartTextBox.Text), decimal.Parse(mileageEndTextBox.Text), tripDetailsRichTextBox.Text, expenseAccountTextBox.Text);

                    startDateDateTimePicker.Text = startTimeDateTimePicker.Text = endDateDateTimePicker.Text = endTimeDateTimePicker.Text = DateTime.Now.ToString();
                    mileageStartTextBox.Text     = mileageEndTextBox.Text = tripDetailsRichTextBox.Text = expenseAccountTextBox.Text = "";
                    Id = 0;
                }
                catch
                {
                    MessageBox.Show("Trip not saved, make sure you add a fuel refill for this vehicle. ");
                }
                RefreshGrid();
                NewDriverCompobox();
                NewVehicleCompobox();
            }
        }
コード例 #6
0
ファイル: Refills.cs プロジェクト: kudakwashegore/pcms
        public bool  Valid()
        {
            if (String.IsNullOrEmpty(mileageTextBox.Text) ||
                String.IsNullOrWhiteSpace(mileageTextBox.Text) ||
                !Utility.IsNumber(mileageTextBox.Text)
                )
            {
                MessageBox.Show("Invalid value for mileage");
                mileageTextBox.Focus();
                return(false);
            }

            if (Id == 0 && TripBl.GetPrevious(int.Parse(vehicleComboBox.SelectedValue.ToString())) != null && TripBl.GetPrevious(int.Parse(vehicleComboBox.SelectedValue.ToString())).MileageEnd > decimal.Parse(mileageTextBox.Text))
            {
                MessageBox.Show("This vehicle is already above the mileage given.");
                mileageTextBox.Focus();
                return(false);
            }

            if (Id > 0 && RefillBl.GetPrevious(int.Parse(vehicleComboBox.SelectedValue.ToString()), Id) != null && RefillBl.GetPrevious(int.Parse(vehicleComboBox.SelectedValue.ToString()), Id).Mileage > decimal.Parse(mileageTextBox.Text))
            {
                MessageBox.Show("This vehicle was already above the mileage given.");
                mileageTextBox.Focus();
                return(false);
            }

            if (String.IsNullOrEmpty(litreageTextBox.Text) ||
                String.IsNullOrWhiteSpace(litreageTextBox.Text) ||
                !Utility.IsNumber(litreageTextBox.Text)
                )
            {
                MessageBox.Show("Invalid value for litreage");
                litreageTextBox.Focus();
                return(false);
            }

            if (String.IsNullOrEmpty(amountTextBox.Text) ||
                String.IsNullOrWhiteSpace(amountTextBox.Text) ||
                !Utility.IsNumber(amountTextBox.Text)
                )
            {
                MessageBox.Show("Invalid value for amount");
                amountTextBox.Focus();
                return(false);
            }

            if (RefillBl.GetPrevious(int.Parse(vehicleComboBox.SelectedValue.ToString()), Id) != null && DateTime.Parse(dateTimePicker.Text) < RefillBl.GetPrevious(int.Parse(vehicleComboBox.SelectedValue.ToString()), Id).DateAndTime)
            {
                MessageBox.Show("Date can not be before the previous refill for this vehicle");
                dateTimePicker.Focus();
                return(false);
            }

            if (TripBl.GetPrevious(int.Parse(vehicleComboBox.SelectedValue.ToString())) != null && DateTime.Parse(dateTimePicker.Text).Date < TripBl.GetPrevious(int.Parse(vehicleComboBox.SelectedValue.ToString())).DateTimeEnd.Date)
            {
                MessageBox.Show("Date can not be before the previous last trip for this vehicle");
                dateTimePicker.Focus();
                return(false);
            }



            return(true);
        }