Example #1
0
        private void btnSubmit_Click(object sender, EventArgs e)
        {
            //create package
            if (package == null)
            {
                if (ValidatePackageDataInput())
                {
                    //create package object
                    Package p = new Package();
                    p.Name              = txtName.Text;
                    p.Description       = txtDescription.Text;
                    p.Start_Date        = dtpStart.Value;
                    p.End_Date          = dtpEnd.Value;
                    p.Base_Price        = Convert.ToDecimal(txtPrice.Text);
                    p.Agency_Commission = Convert.ToDecimal(txtCommission.Text);

                    //insert package to DB
                    if (PackageDB.AddPackage(p)) //package was created
                    {
                        //get list of added products and suppliers
                        List <int> list = new List <int>();
                        foreach (DataGridViewRow item in dgvProductSuppliers.Rows)
                        {
                            int id = Convert.ToInt32(item.Cells[0].Value);
                            list.Add(id);
                        }
                        p.ID = PackageDB.GetMaxPackageID();
                        //insert products suppliers
                        foreach (int l in list)
                        {
                            PackageDB.AddPackageProductSupplier(p.ID, l);
                        }
                        MessageBox.Show("The Package was Added.",
                                        "Package was Added");
                        Close();
                    }
                    else
                    {
                        MessageBox.Show("Error Occured. Try Again",
                                        "Package was NOT Added");
                    }
                }
            }
            //update package
            else
            {
                if (ValidatePackageDataInput())
                {
                    //edit package class
                    package.Name              = txtName.Text;
                    package.Description       = txtDescription.Text;
                    package.Base_Price        = Convert.ToDecimal(txtPrice.Text);
                    package.Agency_Commission = Convert.ToDecimal(txtCommission.Text);
                    package.Start_Date        = dtpStart.Value;
                    package.End_Date          = dtpEnd.Value;

                    //update db
                    if (PackageDB.UpdatePackage(package))
                    {
                        //delete or add PackageProductSupplier Records
                        //get list of products and suppliers
                        List <int> list = new List <int>();
                        foreach (DataGridViewRow item in dgvProductSuppliers.Rows)
                        {
                            int prodSupID = Convert.ToInt32(item.Cells[0].Value);
                            list.Add(prodSupID);
                        }
                        //delete packageproductsupplier
                        if (PackageDB.DeletePackageProductSupplier(package.ID, list))
                        {
                        }
                        //insert packageproductsupplier
                        foreach (int l in list)
                        {
                            PackageDB.AddPackageProductSupplier(package.ID, l);
                        }
                        MessageBox.Show("The Package was Added.",
                                        "Package was Added");
                        Close();
                    }
                    else
                    {
                        MessageBox.Show("Error occured when saving package");
                    }
                }
            }
        }