protected void VoidReceiptBut_Click(object sender, EventArgs e) { //only admin can void //when void add transaction by minusing points back to user account //if status is processed. //else //just change status to void. int redemptionbypointreceiptid = int.Parse(UpdateReceiptBut.CommandArgument); var db = new ApplicationServices.ApplicationServicesDB(); using (var scope = db.GetTransaction()) { bool approveRedemptionByPointReceipt = ClientManager.voidRedemptionByPointReceipt( redemptionbypointreceiptid, int.Parse(ResellerDDL2.SelectedValue), InvoiceNoTB.Text.Trim(), (DateTime)PurchaseDateRadDatePicker.SelectedDate); RedemptionByPointReceipt redemptionByPointReceipt = ClientManager.getRedemptionByPointReceipt(redemptionbypointreceiptid); RedemptionMemberClient redemptionMemberClient = ClientManager.getRedemptionMemberClient( redemptionByPointReceipt.UserId, redemptionByPointReceipt.clientid); int newPointBalance = redemptionMemberClient.pointbalance - redemptionByPointReceipt.totalpoints; string notes = "Receipt ID:" + redemptionByPointReceipt.redemptionbypointreceiptid + " | Points:" + -redemptionByPointReceipt.totalpoints; int insertRedemptionByPointTransaction = ClientManager.insertRedemptionByPointTransaction( redemptionByPointReceipt.UserId, redemptionByPointReceipt.clientid, (int)RedemptionByPointTransactionType.VOID, -redemptionByPointReceipt.totalpoints, newPointBalance, notes); bool updateRedemptionMemberClientBalance = ClientManager.updateRedemptionMemberClientBalance( redemptionByPointReceipt.UserId, redemptionByPointReceipt.clientid, newPointBalance); if ((insertRedemptionByPointTransaction != -1) && updateRedemptionMemberClientBalance) { scope.Complete(); } var x = ClientManager.getAllRedemptionByPointReceiptPendingProcess(); ReceiptRadGrid.DataSource = x; ReceiptRadGrid.Rebind(); ClientDetailPnl.Visible = false; Logger.LogInfo(Membership.GetUser().UserName + "- Void status is set for Receipt ID(ClaimPoints):" + redemptionbypointreceiptid + " points are removed from member" , this.GetType()); } }
protected void UpdateReceiptBut_Click(object sender, EventArgs e) { Page.Validate("form"); if (Page.IsValid) { int redemptionbypointreceiptid = int.Parse(UpdateReceiptBut.CommandArgument); var db = new ApplicationServices.ApplicationServicesDB(); using (var scope = db.GetTransaction()) { bool approveRedemptionByPointReceipt = ClientManager.approveRedemptionByPointReceipt( redemptionbypointreceiptid, int.Parse(ResellerDDL2.SelectedValue), InvoiceNoTB.Text.Trim(), (DateTime)PurchaseDateRadDatePicker.SelectedDate); //textbox is filled so take balance from custom points tb if (CustomPointsTB.Text.Trim().Count() > 0) { ClientManager.updateRedemptionByPointReceiptPoint( redemptionbypointreceiptid, int.Parse(CustomPointsTB.Text)); } RedemptionByPointReceipt redemptionByPointReceipt = ClientManager.getRedemptionByPointReceipt(redemptionbypointreceiptid); RedemptionMemberClient redemptionMemberClient = ClientManager.getRedemptionMemberClient( redemptionByPointReceipt.UserId, redemptionByPointReceipt.clientid); int newPointBalance = redemptionMemberClient.pointbalance + redemptionByPointReceipt.totalpoints; //RedemptionByPointTransaction string notes = "Receipt ID:" + redemptionByPointReceipt.redemptionbypointreceiptid + " | Points:" + redemptionByPointReceipt.totalpoints; int insertRedemptionByPointTransaction = ClientManager.insertRedemptionByPointTransaction( redemptionByPointReceipt.UserId, redemptionByPointReceipt.clientid, (int)RedemptionByPointTransactionType.DEBIT, redemptionByPointReceipt.totalpoints, newPointBalance, notes); bool updateRedemptionMemberClientBalance = ClientManager.updateRedemptionMemberClientBalance( redemptionByPointReceipt.UserId, redemptionByPointReceipt.clientid, newPointBalance); /* * MembershipUser membershipUser = Membership.GetUser(redemptionByPointReceipt.UserId); * Hashtable values = new Hashtable(); * values.Add("[/logo/]", Config.EmailLogoUrl); * var redemptionMember = ClientManager.getRedemptionMember(redemptionByPointReceipt.UserId); * bool canSendEmail = EmailManager.SendClaimPointApprovalMail( * membershipUser.Email, * redemptionMember.firstname, * values); */ if (approveRedemptionByPointReceipt && (insertRedemptionByPointTransaction != -1) && updateRedemptionMemberClientBalance) { scope.Complete(); } } //reload radgrid var x = ClientManager.getAllRedemptionByPointReceiptPendingProcess(); ReceiptRadGrid.DataSource = x; ReceiptRadGrid.Rebind(); ClientDetailPnl.Visible = false; Logger.LogInfo(Membership.GetUser().UserName + "- Processed status is set and points assigned for Receipt ID(ClaimPoints):" + redemptionbypointreceiptid , this.GetType()); } }