protected void GridView1_SelectedIndexChanged(object sender, EventArgs e) { string id = GridView1.SelectedRow.Cells[1].Text; selectedPackage = PackagesDB.GetPackage(Convert.ToInt16(id)); Page.Validate(); // Next add them to the cart which is a session variable and thus global to // all the web forms if (Page.IsValid) { CartItemList cart = CartItemList.GetCart(); CartItem cartItem = cart[selectedPackage.PackageId]; //if item isn’t in cart, add it; otherwise, increase its quantity if (cartItem == null) { cart.AddItem(selectedPackage, 1); } else { cartItem.AddQuantity(1); } } }
/// <summary> /// Update All List of Infos /// </summary> private void UpdateAllInfos() { AllPackages = PackagesDB.GetPackages(); AllProducts = ProductsDB.GetProducts(); AllSuppliers = SuppliersDB.GetSuppliers(); ProSupLinkages = ProSupDB.GetProSups(); PacProSupLinkages = PacProSupDB.GetPacProSup(); }
/// <summary> /// Get all the datat from the database /// </summary> private void getAll() { try { packages = PackagesDB.GetAllPackages(); packages2 = PackagesDB.GetAllPackages(); //Two controls cannot share array data binding products = ProductDB.GetAllProducts(); products2 = ProductDB.GetAllProducts(); //Two controls cannot share array data binding suppliers = SuppliersDB.GetAllSuppliers(); products_suppliers = Products_SupplierDB.GetAllProduct_Suppliers(); } catch (Exception ex) //Any Errors form the database read? { MessageBox.Show(ex.Message, ex.GetType().ToString()); } }
private void btnAccept_Click(object sender, EventArgs e) { if (IsValidData()) { if (addPackage) { package = new Package(); this.PutPackageData(package); try { package.PackageId = PackagesDB.AddPackage(package); this.DialogResult = DialogResult.OK; } catch (Exception ex) { MessageBox.Show(ex.Message, ex.GetType().ToString()); } } else { Package newPackage = new Package(); newPackage.PackageId = package.PackageId; this.PutPackageData(newPackage); try { if (!PackagesDB.UpdatePackage(package, newPackage)) { MessageBox.Show("Another user has updated or " + "deleted that package.", "Database Error"); this.DialogResult = DialogResult.Retry; } else { package = newPackage; this.DialogResult = DialogResult.OK; } } catch (Exception ex) { MessageBox.Show(ex.Message, ex.GetType().ToString()); } } } }
/// <summary> /// On clicking delete respond based on tab selected /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnDelete_Click(object sender, EventArgs e) { switch (tbMain.SelectedTab.Name) { case "tabPackages": //take the currently selected package Package package = packages[dgPackages.CurrentRow.Index]; DialogResult result = MessageBox.Show("Delete " + package.Name + "? \nThis will delete the entire package and its components", "Confirm Delete", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.Yes) //if user confirms delete { try { if (!PackagesDB.DeletePackage(package)) { //Check for optimistic concurrency MessageBox.Show("Another user has updated or deleted " + "that package.", "Database Error"); } else { //Delete successful, refresh the tables dgPackageProductSuppliers.ClearSelection(); this.displayAll(0, 0); } } catch (SqlException ex) { switch (ex.Errors[0].Number) { //if foriegn key error from db case 547: MessageBox.Show("You do not have the priviledge to delete this package", "Priviledge Error"); break; } } catch (Exception ex) { //any other errors MessageBox.Show(ex.Message, ex.GetType().ToString()); } } break; case "tabProducts": int rowIndexProd = dgProducts.CurrentRow.Index; Products product = products[rowIndexProd]; DialogResult resultProduct = MessageBox.Show("Delete " + product.ProdName + "?", "Confirm Delete", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (resultProduct == DialogResult.Yes) { try { if (!ProductDB.DeleteProduct(product)) { MessageBox.Show("Another user has updated or deleted " + "that product.", "Database Error"); } else { dgProd.ClearSelection(); } rowIndexProd = rowIndexProd - 1; //leave selection on the last product this.displayAll(0, rowIndexProd); } catch (SqlException ex) { switch (ex.Errors[0].Number) { //if foreign key error from datbase case 547: MessageBox.Show("Please Remove " + product.ProdName + " from all packages before deleting ", "Link Violation"); break; } } catch (Exception ex) { MessageBox.Show(ex.Message, ex.GetType().ToString()); } } break; case "tabSuppliers": Suppliers supplier = suppliers[dgSuppliers.CurrentRow.Index]; DialogResult resultSupplier = MessageBox.Show("Delete " + supplier.SupName + "?", "Confirm Delete", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (resultSupplier == DialogResult.Yes) { try { if (!SuppliersDB.DeleteSupplier(supplier)) { MessageBox.Show("Another user has updated or deleted " + "that supplier.", "Database Error"); } else { this.displayAll(); } } catch (SqlException ex) { switch (ex.Errors[0].Number) { // if foriegn key error from database case 547: MessageBox.Show("You cannot delete this supplier as it is linked to a package", "Link Violation"); break; } } catch (Exception ex) { MessageBox.Show(ex.Message, ex.GetType().ToString()); } } break; case "tabPackageProductSupplier": int rowIndex = dgPackageProductSuppliers.CurrentRow.Index; Package packageProd = packages[rowIndex]; DialogResult resultProd = MessageBox.Show("Delete " + packageProd.Name + "? \nThis will delete the entire package and its components", "Confirm Delete", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (resultProd == DialogResult.Yes) { try { if (!PackagesDB.DeletePackage(packageProd)) { MessageBox.Show("Another user has updated or deleted " + "that package.", "Database Error"); } else { dgPackageProductSuppliers.ClearSelection(); rowIndex -= 1; this.displayAll(rowIndex, 0); } } catch (SqlException ex) { switch (ex.Errors[0].Number) { //if foriegn key error from dataabase case 547: MessageBox.Show("You do not have the priviledge to delete this package", "Priviledge Error"); break; } } catch (Exception ex) { MessageBox.Show(ex.Message, ex.GetType().ToString()); } } break; } }
private void SavePacBtn_Click(object sender, EventArgs e) { string indicator = "Operation Failed. "; if (AddPacStatus) { //testing = "Saving item in add mode "; if ( //check if present Validator.IsPresent(pkgNameTextBox, "Package Name") && Validator.IsPresentRichTB(pkgDescRichTextBox, "Package Description") && Validator.IsPresentDateTimePicker(pkgStartDateDateTimePicker, "Package Start Date") && Validator.IsPresentDateTimePicker(pkgEndDateDateTimePicker, "Package End Date") && Validator.IsPresent(pkgAgencyCommissionTextBox, "Agency Commission") && Validator.IsPresent(pkgBasePriceTextBox, "Price") && //check valid values Validator.IsDecimal(pkgAgencyCommissionTextBox, "Agency Commission") && Validator.IsDecimal(pkgBasePriceTextBox, "Price") && Validator.IsNonNegativeDecimal(pkgAgencyCommissionTextBox, "Agency Commission") && Validator.IsNonNegativeDecimal(pkgBasePriceTextBox, "Price") ) { indicator = "Adding Package Failed. "; // for testing purpose int value = Convert.ToInt32(packageIdComboBox.SelectedValue); Packages newPac = new Packages(); newPac.PackageId = value; newPac.PkgName = pkgNameTextBox.Text; newPac.PkgStartDate = pkgStartDateDateTimePicker.Value; newPac.PkgEndDate = pkgEndDateDateTimePicker.Value; newPac.PkgDesc = pkgDescRichTextBox.Text; newPac.PkgBasePrice = Convert.ToDecimal(pkgBasePriceTextBox.Text); newPac.PkgAgencyCommission = Convert.ToDecimal(pkgAgencyCommissionTextBox.Text); if (ValidateTime(pkgStartDateDateTimePicker, pkgEndDateDateTimePicker) == 0 && ValidatePrice(pkgBasePriceTextBox, pkgAgencyCommissionTextBox) == 0) { if (PackagesDB.AddPackage(newPac)) { indicator = "Adding Package Successful !"; UpdateAllInfos(); BindPackages(); CancelPacBtn.PerformClick(); } } } } if (EditPacStatus) { /* * pkgNameTextBox * pkgDescRichTextBox * pkgStartDateDateTimePicker * pkgEndDateDateTimePicker * pkgAgencyCommissionTextBox * pkgBasePriceTextBox */ //testing = "Saving item in edit mode "; if ( //check if present Validator.IsPresent(pkgNameTextBox, "Package Name") && Validator.IsPresentRichTB(pkgDescRichTextBox, "Package Description") && Validator.IsPresentDateTimePicker(pkgStartDateDateTimePicker, "Package Start Date") && Validator.IsPresentDateTimePicker(pkgEndDateDateTimePicker, "Package End Date") && Validator.IsPresent(pkgAgencyCommissionTextBox, "Agency Commission") && Validator.IsPresent(pkgBasePriceTextBox, "Price") && //check valid values Validator.IsDecimal(pkgAgencyCommissionTextBox, "Agency Commission") && Validator.IsDecimal(pkgBasePriceTextBox, "Price") && Validator.IsNonNegativeDecimal(pkgAgencyCommissionTextBox, "Agency Commission") && Validator.IsNonNegativeDecimal(pkgBasePriceTextBox, "Price") ) { int value = Convert.ToInt32(packageIdComboBox.SelectedValue); Packages newPac = new Packages(); newPac.PackageId = value; newPac.PkgName = pkgNameTextBox.Text; newPac.PkgStartDate = pkgStartDateDateTimePicker.Value; newPac.PkgEndDate = pkgEndDateDateTimePicker.Value; newPac.PkgDesc = pkgDescRichTextBox.Text; newPac.PkgBasePrice = Convert.ToDecimal(pkgBasePriceTextBox.Text); newPac.PkgAgencyCommission = Convert.ToDecimal(pkgAgencyCommissionTextBox.Text); indicator = "Update Package Failed. "; if (ValidateTime(pkgStartDateDateTimePicker, pkgEndDateDateTimePicker) == 0 && ValidatePrice(pkgBasePriceTextBox, pkgAgencyCommissionTextBox) == 0) { if (PackagesDB.UpdatePackage(newPac)) { indicator = "Update Package Successful !"; UpdateAllInfos(); CancelPacBtn.Text = "Close"; } } } } MessageBox.Show(indicator, "Status"); }