public void Delete(int nEntryID) { DataRow[] receiptItemToDelete = myReceiptItemsTable.Select("nEntryID = " + nEntryID.ToString(), "", DataViewRowState.CurrentRows); string strCode = ""; decimal oldPackagePriceToRestore = 0; decimal oldPackageUsageToRestore = 0; if (receiptItemToDelete.Length == 1) { strCode = receiptItemToDelete[0]["strCode"].ToString(); oldPackagePriceToRestore = ACMS.Convert.ToDecimal(receiptItemToDelete[0]["OldPackagePrice"]); oldPackageUsageToRestore = ACMS.Convert.ToDecimal(receiptItemToDelete[0]["OldPackageUsage"]); receiptItemToDelete[0].Delete(); } else throw new Exception("Unable to find the row to delete."); DataRow[] rowsToDelete = myReceiptItemsFreebieTable.Select("nEntryID = " + nEntryID.ToString(), "", DataViewRowState.CurrentRows); foreach (DataRow r in rowsToDelete) r.Delete(); DataRow[] rowsToDelete2 = myReceiptItemsPackageTable.Select("", "", DataViewRowState.CurrentRows); foreach (DataRow r in rowsToDelete2) r.Delete(); if (NCategoryID == 15) { receiptItemToDelete = myReceiptItemsTable.Select("strCode = '" + strCode + "'", "", DataViewRowState.CurrentRows); if (receiptItemToDelete.Length == 1) receiptItemToDelete[0].Delete(); } else if (NCategoryID == 2) { DataRow[] rowToDelete3 = myGiroTable.Select("nEntryID = " + nEntryID.ToString(), "", DataViewRowState.CurrentRows); foreach (DataRow r in rowToDelete3) r.Delete(); myGiroTable.AcceptChanges(); } else if (NCategoryID == 10) { WantToUpgradeMemberPackageRow["OldMemberPackageListPrice"] = ACMS.Convert.ToDecimal(WantToUpgradeMemberPackageRow["OldMemberPackageListPrice"]) + oldPackagePriceToRestore; WantToUpgradeMemberPackageRow["OldMemberPackageUsage"] = ACMS.Convert.ToDecimal(WantToUpgradeMemberPackageRow["OldMemberPackageUsage"]) + oldPackageUsageToRestore; foreach (DataRow r in myReceiptItemsTable.Rows) { if (r.RowState != DataRowState.Deleted) CalculateSubTotal(r); } if (myReceiptItemsTable.Rows.Count == 0) myWantToUpgradeMemberPackageTable.Rows.Clear(); } if (myReceiptItemsTable.Rows.Count == 0) { myLockerAction = ACMSLogic.POS.LockerAction.None; myForgetCardAction = ACMSLogic.POS.ForgetCardAction.None; } if (myReceiptItemsTable.Rows.Count == 0 && NCategoryID == 0) { myReceiptMasterTable.Rows[0]["mTotalAmount"] = 0; } RecalculateAll(); myReceiptItemsFreebieTable.AcceptChanges(); myReceiptItemsPackageTable.AcceptChanges(); }
internal POS(int nCategoryID, int nEmployeeID, string strMembershipID, string strBranchCode, int nterminalID, int nShiftID, string strLocation, int nPackageID, int nGIRO) { // // TODO: Add constructor logic here // myCategoryID = nCategoryID; myEmployeeID = nEmployeeID; myMembershipID = strMembershipID; myLocation = strLocation; myBranchCode = strBranchCode; myTerminalID = nterminalID; myPackageID = nPackageID; myShiftID= nShiftID; TblCategory sqlCategory = new TblCategory(); if (nGIRO == 1)//2704 { myGIROID = nGIRO; } else { myGIROID = 0; } sqlCategory.NCategoryID = myCategoryID; sqlCategory.SelectOne(); myPOSCategoryID = sqlCategory.NPOSCategoryID.IsNull ? -1 : sqlCategory.NPOSCategoryID.Value; Init(); myLockerAction = LockerAction.None; myForgetCardAction = ForgetCardAction.None; //2106 TblMember sqlMember = new TblMember(); if (!sqlMember.MembershipThisMonthBirtday(strMembershipID)) { myThisMonthBirthdayID = 0; } else { myThisMonthBirthdayID = 1; } string hder = strMembershipID.Substring(0, 2); if (hder == "HQ") { string ID = strMembershipID.Substring(2, StrMembershipID.Length - 2); try { int numberID = int.Parse(ID); if (numberID > 999) { myIsStaffPurchase = true; myStaffPurchaseCategoryID = myCategoryID; } } catch { myIsStaffPurchase = false; } } }