Exemplo n.º 1
0
        private void btnOpslaan_Click(object sender, EventArgs e)
        {
            //validatie check voor opslaan
            if (Validation.hasValidationErrors(this.Controls))
            {
                return;
            }
            //als validatie geslaagd is

            //Eerst contract updaten
            decimal prijs;

            if (txtPrijs.Text == string.Empty)
            {
                prijs = 0;
            }
            else
            {
                prijs = decimal.Parse(txtPrijs.Text);
            }

            opdracht contract = (opdracht)cbbID.SelectedItem;

            ContractManagement.updateContractInfo(contract.opdracht_id, cbbKlant.SelectedItem, prijs);

            //Vervolgens informatie ophalen over geselecteerde rit instantie (datum)

            rit_instantie instantie = (rit_instantie)cbbDatum.SelectedItem;

            #region informatie ophalen uit formulieren
            //Informatie rit 1
            int rit1_aantal;
            if (txtAantalpersonen.Text == string.Empty)
            {
                rit1_aantal = 0;
            }
            else
            {
                rit1_aantal = Int32.Parse(txtAantalpersonen.Text);
            }

            decimal rit1_beladen;
            if (txtBeladenkm.Text == string.Empty)
            {
                rit1_beladen = 0;
            }
            else
            {
                rit1_beladen = Decimal.Parse(txtBeladenkm.Text);
            }

            decimal rit1_ledige;
            if (txtLedigekm.Text == string.Empty)
            {
                rit1_ledige = 0;
            }
            else
            {
                rit1_ledige = Decimal.Parse(txtLedigekm.Text);
            }

            //Tussen rit km
            decimal tussen_km;
            if (txtKmTussen.Text == string.Empty)
            {
                tussen_km = 0;
            }
            else
            {
                tussen_km = Decimal.Parse(txtKmTussen.Text);
            }

            //Informatie rit2
            int rit2_aantal;
            if (txtAantalpersonen.Text == string.Empty)
            {
                rit2_aantal = 0;
            }
            else
            {
                rit2_aantal = Int32.Parse(txtAantalpersonen2.Text);
            }

            decimal rit2_beladen;
            if (txtBeladenkm.Text == string.Empty)
            {
                rit2_beladen = 0;
            }
            else
            {
                rit2_beladen = Decimal.Parse(txtBeladenkm2.Text);
            }

            decimal rit2_ledige;
            if (txtLedigekm.Text == string.Empty)
            {
                rit2_ledige = 0;
            }
            else
            {
                rit2_ledige = Decimal.Parse(txtLedigekm2.Text);
            }
            #endregion

            //En ten laatste controleren of er al informatie over bestaat
            if (ContractManagement.hasRitInfo(instantie) == true)
            {
                //Bestaat er al informatie? --> Updaten
                int rit_info_id = ContractManagement.getRitInfo(instantie).rit_info_id;
                ContractManagement.updateRitInfo(rit_info_id, (chauffeur)cbbChauffeur.SelectedItem, (voertuig)cbbVoertuig.SelectedItem,
                                                 rit1_aantal, rit1_beladen, rit1_ledige, tussen_km,
                                                 (chauffeur)cbbChauffeur2.SelectedItem, (voertuig)cbbVoertuig2.SelectedItem,
                                                 rit2_aantal, rit2_beladen, rit2_ledige);
            }
            else
            {
                //Bestaat er nog geen informatie? --> Aanmaken
                rit_info info = new rit_info();
                info.rit_instantie = instantie;

                info.chauffeur           = (chauffeur)cbbChauffeur.SelectedItem;
                info.voertuig            = (voertuig)cbbVoertuig.SelectedItem;
                info.rit1_aatal_personen = rit1_aantal;
                info.rit1_beladenkm      = rit1_beladen;
                info.rit1_ledigekm       = rit1_ledige;

                info.km_tussen_ritten = tussen_km;

                info.chauffeur1           = (chauffeur)cbbChauffeur2.SelectedItem;
                info.voertuig1            = (voertuig)cbbVoertuig2.SelectedItem;
                info.rit2_aantal_personen = rit2_aantal;
                info.rit2_beladenkm       = rit2_beladen;
                info.rit2_ledigekm        = rit2_ledige;

                ContractManagement.addRitInfo(info);
            }

            MainForm.updateStatus = "Info van contract met ID: " + contract.opdracht_id.ToString() + ", is opgelsaan.";
        }