protected void UpdateRedemptionBut_Click(object sender, EventArgs e) { int redemptionrewardid = int.Parse(UpdateRedemptionBut.CommandArgument); var db = new ApplicationServices.ApplicationServicesDB(); using (var scope = db.GetTransaction()) { ClientManager.updateRedemptionRedemptionReward( redemptionrewardid, int.Parse(CollectionModeRBL.SelectedValue), int.Parse(StatusDDL.SelectedValue)); ClientDetailPnl.Visible = false; // ClientManager.updateRedemptionByProductReceipt( //redemptionbyproductreceiptid, // int.Parse(StatusDDL.SelectedValue), // InvoiceNoTB.Text.Trim(), int.Parse(ResellerDDL2.SelectedValue), // PurchaseDateRadDatePicker.SelectedDate, // int.Parse(PromotionDDL.SelectedValue), PromotionDDL.SelectedItem.Text); /* ClientManager.approveRedemptionByPointReceipt( * 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; * * //RedemptionByPointTransaction * string notes = "Receipt ID:" + redemptionByPointReceipt.redemptionbypointreceiptid + * " | Points:" + redemptionByPointReceipt.totalpoints; * ClientManager.insertRedemptionByPointTransaction( * redemptionByPointReceipt.UserId, * redemptionByPointReceipt.clientid, * (int)RedemptionByPointTransactionType.DEBIT, * redemptionByPointReceipt.totalpoints, * newPointBalance, * notes); * ClientManager.updateRedemptionMemberClientBalance( * redemptionByPointReceipt.UserId, * redemptionByPointReceipt.clientid, * newPointBalance); */ scope.Complete(); } //reload radgrid // var x = ClientManager.getAllRedemptionByPointReceiptPendingProcess(); //ReceiptRadGrid.DataSource = x; // ReceiptRadGrid.Rebind(); RedemptionRewardRadGrid.Rebind(); Logger.LogInfo(Membership.GetUser().UserName + "- updated Redemption ID:" + redemptionrewardid , this.GetType()); }
protected void DeleteBut_Click(object sender, EventArgs e) { int redemptionrewardid = int.Parse(UpdateRedemptionBut.CommandArgument); var db = new ApplicationServices.ApplicationServicesDB(); using (var scope = db.GetTransaction()) { ApplicationServices.RedemptionReward redemptionReward = ClientManager.getRedemptionReward(redemptionrewardid); int rewardid = redemptionReward.rewardid; var redemptionMemberClient = ClientManager.getRedemptionMemberClient( redemptionReward.UserId, redemptionReward.clientid); //add stock back to reward balance ClientManager.increaseRewardQtyBy1(rewardid); //if by points if (redemptionReward.type == (int)PromotionType.BY_POINT) { int newPointBalance = redemptionMemberClient.pointbalance + redemptionReward.rewardpoints; //return points ClientManager.updateRedemptionMemberClientBalance(redemptionReward.UserId, redemptionReward.clientid, newPointBalance); string notes = "VOID | Redemption ID:" + redemptionReward.redemptionrewardid + " | Points:" + redemptionReward.rewardpoints; //add void transaction ClientManager.insertRedemptionByPointTransaction( redemptionReward.UserId, redemptionReward.clientid, (int)RedemptionByPointTransactionType.DEBIT, redemptionReward.rewardpoints, newPointBalance, notes); } ClientManager.deleteRedemptionReward( redemptionrewardid); ClientDetailPnl.Visible = false; scope.Complete(); Logger.LogInfo(Membership.GetUser().UserName + "- deleted and return stock for Redemption ID:" + redemptionrewardid , this.GetType()); } RedemptionRewardRadGrid.Rebind(); }
protected void loadRedemptionByProductReceipt(int redemptionbyproductreceiptid) { var redemptionByProductReceipt = ClientManager.getRedemptionByProductReceipt(redemptionbyproductreceiptid); ReceiptidLit.Text = redemptionByProductReceipt.redemptionbyproductreceiptid.ToString(); var client = ClientManager.getClient(redemptionByProductReceipt.clientid); ClientNameLit.Text = client.name; MembershipUser member = Membership.GetUser(redemptionByProductReceipt.UserId); UseridLit.Text = member.UserName; var promotion = ClientManager.getPromotion(redemptionByProductReceipt.promotionid); InvoiceNoTB.Text = redemptionByProductReceipt.invoiceno; // PromotionLit.Text = promotion.name; PromotionDDL.SelectedValue = redemptionByProductReceipt.promotionid.ToString(); ResellerDDL2.SelectedValue = redemptionByProductReceipt.resellerid.ToString(); PurchaseDateRadDatePicker.SelectedDate = redemptionByProductReceipt.purchasedate; StatusDDL.SelectedValue = redemptionByProductReceipt.status.ToString(); ReceiptHL.NavigateUrl = Config.UploadInvoiceRelativePath + redemptionByProductReceipt.receiptpath; bool canEdit; if ((redemptionByProductReceipt.status == (int)RedemptionByPointReceiptState.PROCESSED) || (redemptionByProductReceipt.status == (int)RedemptionByPointReceiptState.DUPLICATE) || (redemptionByProductReceipt.status == (int)RedemptionByPointReceiptState.REJECTED)) { // RedemptionDetailsEditPnl.Visible = false; canEdit = false; if (Roles.IsUserInRole("Admin")) { canEdit = true; } } else { // RedemptionDetailsEditPnl.Visible = true; canEdit = true; } InvoiceNoTB.Enabled = canEdit; PromotionDDL.Enabled = false; ResellerDDL2.Enabled = canEdit; PurchaseDateRadDatePicker.Enabled = canEdit; StatusDDL.Enabled = canEdit; UpdateReceiptBut.Enabled = canEdit; RedemptionDetailsEditPnl.Visible = canEdit; serialnoTB.Text = ""; bool showRedemptionDetails = false; if ((redemptionByProductReceipt.resellerid == null) || (redemptionByProductReceipt.invoiceno == null) || (redemptionByProductReceipt.purchasedate == null)) { showRedemptionDetails = false; } else { showRedemptionDetails = true; } RedemptionDetailsPnl.Visible = showRedemptionDetails; // int resellerIndex= ResellerDDL2.FindItemIndexByValue(redemptionbypointreceipt.resellerid.ToString()); // ResellerDDL2.SelectedValue = redemptionbypointreceipt.resellerid.ToString(); // InvoiceNoTB.Text = redemptionbypointreceipt.invoiceno;//todo // PurchaseDateRadDatePicker.SelectedDate = redemptionbypointreceipt.purchasedate;//todo // totalpointsLit.Text = redemptionbypointreceipt.totalpoints.ToString();//todo // ReceiptHL.NavigateUrl = Config.UploadInvoiceRelativePath + redemptionReward.receiptpath; //var x = ClientManager.getAllRedemptionByPointReceiptReceiptId(redemptionbypointreceiptid); //ReceiptItemRadGrid.DataSource = x; //ReceiptItemRadGrid.Rebind(); //load productddl //var y = ClientManager.getAllProductsByPromotionid(redemptionByProductReceipt.promotionid); ////var y = ClientManager.getAllProductsByPromotionid(redemptionByProductReceipt.promotionid); //ProductDDL.DataTextField = "model"; //ProductDDL.DataValueField = "productid"; //ProductDDL.DataSource = y; //ProductDDL.DataBind(); //ProductDDL.Items.Insert(0, new RadComboBoxItem("-select-", string.Empty)); var z = ClientManager.getAllProductRewardsByPromotionid(redemptionByProductReceipt.promotionid); ProductDDL2.DataSource = z; ProductDDL2.DataBind(); //load rewardfgrid // int redemptionbyproductreceiptid = int.Parse(ReceiptidLit.Text); var x = ClientManager.getAllRedemptionRewardsByReceiptId(redemptionbyproductreceiptid); RedemptionRewardRadGrid.DataSource = x; RedemptionRewardRadGrid.Rebind(); AddItemBut.CommandArgument = redemptionByProductReceipt.redemptionbyproductreceiptid.ToString(); UpdateReceiptBut.CommandArgument = redemptionByProductReceipt.redemptionbyproductreceiptid.ToString(); }
protected void loadRedemptionReward(int redemptionrewardid) { var redemptionreward = ClientManager.getRedemptionReward(redemptionrewardid); RedemptionidLit.Text = redemptionreward.redemptionrewardid.ToString(); var client = ClientManager.getClient(redemptionreward.clientid); var redemptionMember = ClientManager.getRedemptionMember(redemptionreward.UserId); ClientNameLit.Text = client.name; MembershipUser member = Membership.GetUser(redemptionreward.UserId); UseridLit.Text = member.UserName; FirstNameLit.Text = redemptionMember.firstname; LastNameLit.Text = redemptionMember.lastname; NRICLit.Text = redemptionMember.NRIC; ContactNoLit.Text = redemptionMember.contactno; var promotion = ClientManager.getPromotion(redemptionreward.promotionid); // InvoiceNoTB.Text = redemptionByProductReceipt.invoiceno; PromotionLit.Text = promotion.name; // PromotionDDL.SelectedValue = redemptionByProductReceipt.promotionid.ToString(); // ResellerDDL2.SelectedValue = redemptionByProductReceipt.resellerid.ToString(); // PurchaseDateRadDatePicker.SelectedDate = redemptionByProductReceipt.purchasedate; StatusDDL.SelectedValue = redemptionreward.status.ToString(); // int resellerIndex= ResellerDDL2.FindItemIndexByValue(redemptionbypointreceipt.resellerid.ToString()); // ResellerDDL2.SelectedValue = redemptionbypointreceipt.resellerid.ToString(); // InvoiceNoTB.Text = redemptionbypointreceipt.invoiceno;//todo // PurchaseDateRadDatePicker.SelectedDate = redemptionbypointreceipt.purchasedate;//todo // totalpointsLit.Text = redemptionbypointreceipt.totalpoints.ToString();//todo CollectionModeRBL.SelectedValue = redemptionreward.modeofcollection.ToString(); // ReceiptHL.NavigateUrl = Config.UploadInvoiceRelativePath + redemptionReward.receiptpath; //var x = ClientManager.getAllRedemptionByPointReceiptReceiptId(redemptionbypointreceiptid); //ReceiptItemRadGrid.DataSource = x; //ReceiptItemRadGrid.Rebind(); //load productddl var y = ClientManager.getAllProductsByPromotionid(redemptionreward.promotionid); //var y = ClientManager.getAllProductsByPromotionid(redemptionByProductReceipt.promotionid); //load rewardfgrid // int redemptionbyproductreceiptid = int.Parse(ReceiptidLit.Text); //var x = ClientManager.getAllRedemptionRewardsByReceiptId(redemptionbyproductreceiptid); //RedemptionRewardRadGrid.DataSource = x; RedemptionRewardRadGrid.Rebind(); UpdateRedemptionBut.CommandArgument = redemptionreward.redemptionrewardid.ToString(); if (Roles.IsUserInRole("Admin")) { DeleteBut.Visible = true; } else { DeleteBut.Visible = false; } }
protected void AddItemBut_Click(object sender, EventArgs e) { int redemptionbyproductreceiptid = int.Parse(AddItemBut.CommandArgument); //******** wrap this in a transaction!! var db = new ApplicationServices.ApplicationServicesDB(); using (var scope = db.GetTransaction()) { try { // RedemptionData.ClientManager.Product2 ss = (RedemptionData.ClientManager.Product2)ProductDDL2.SelectedItem.DataItem; string temp = ProductDDL2.SelectedValue; string[] idArray = temp.Split('|'); // Response.Write("<br>1:" ); // Response.Write("<br>2redemptionbyproductreceiptid:" + redemptionbyproductreceiptid); // int productid = int.Parse(ProductDDL.SelectedValue); int productid = int.Parse(idArray[0]); int rewardid = int.Parse(idArray[1]); // Response.Write("<br>3:" + productid); var product = ClientManager.getProduct(productid); // Response.Write("<br>4:" + product.productid); var redemptionByProductReceipt = ClientManager.getRedemptionByProductReceipt(redemptionbyproductreceiptid); // Response.Write("<br>redemptionbyproductreceiptid:" + redemptionbyproductreceiptid); //var promotionByProductProductReward = ClientManager.getPromotionByProductProductRewardByPromotionIdProductId(redemptionByProductReceipt.promotionid, productid); // Response.Write("<br>redemptionbyproductreceiptid:" + redemptionbyproductreceiptid); var reward = ClientManager.getReward(rewardid); //Response.Write("<br>redemptionbyproductreceiptid:" + redemptionbyproductreceiptid); //Response.Write("<br>productid:" + productid); //Response.Write("<br>product:" + product.productid); //Response.Write("<br>redemptionByProductReceipt:" + redemptionByProductReceipt.redemptionbyproductreceiptid); ////Response.Write("<br>promotionByProductProductReward:" + promotionByProductProductReward.productid); //Response.Write("<br>redemptionByProductReceipt:" + redemptionByProductReceipt.redemptionbyproductreceiptid); //Response.Write("<br>reward:" + reward.rewardid); //Response.Write("<br>serialnoTB.Text.Trim():" + serialnoTB.Text.Trim()); //Response.Write("<br>redemptionByProductReceipt.remarks:" + redemptionByProductReceipt.remarks); bool enoughstock = ClientManager.canReduceRewardQtyBy1(reward.rewardid); if (enoughstock) { int status; if (redemptionByProductReceipt.modeofcollection == (int)CollectionMode.DELIVERY) { status = (int)RedemptionRewardState.ARRANGING_DELIVERY; } else { status = (int)RedemptionRewardState.PENDING_COLLECTION; } int redemptionRewardid = ClientManager.insertRedemptionReward( redemptionByProductReceipt.clientid, redemptionByProductReceipt.UserId, redemptionByProductReceipt.promotionid, redemptionByProductReceipt.promotionname, product.productid, product.name, reward.rewardid, reward.name, 0, redemptionByProductReceipt.modeofcollection, serialnoTB.Text.Trim(), redemptionByProductReceipt.remarks, (int)PromotionType.BY_PRODUCT, status, redemptionbyproductreceiptid); //reduce the reward qty by 1 ClientManager.reduceRewardQtyBy1(reward.rewardid); AddItemErrorLit.Text = ""; Logger.LogInfo(Membership.GetUser().UserName + "- added Redemption Receipt ID(ByProduct):" + redemptionbyproductreceiptid , this.GetType()); } else { AddItemErrorLit.Text = "Cannot add redemption. Not enough stock for this reward."; } scope.Complete(); } catch (Exception ee) { } var x = ClientManager.getAllRedemptionRewardsByReceiptId(redemptionbyproductreceiptid); RedemptionRewardRadGrid.DataSource = x; RedemptionRewardRadGrid.Rebind(); } /* int redemptionbypointreceiptid = int.Parse(AddItemBut.CommandArgument); * int productid = int.Parse(ProductDDL.SelectedValue); * var product = ClientManager.getProduct(productid); * ClientManager.insertRedemptionByPointReceiptItem( * redemptionbypointreceiptid, * productid, * serialnoTB.Text.Trim(), * product.points, * product.model); * * //reload item grid * var x = ClientManager.getAllRedemptionByPointReceiptReceiptId(redemptionbypointreceiptid); * ReceiptItemRadGrid.DataSource = x; * ReceiptItemRadGrid.Rebind(); * * //reset fields for add * ProductDDL.SelectedIndex = 0; * serialnoTB.Text = ""; * * //update receipt * //get For each * * * List<RedemptionByPointReceiptItem> list = (List<RedemptionByPointReceiptItem>)x; * int total = 0; * foreach (RedemptionByPointReceiptItem item in list) * { * total += item.productpoints; * } * totalpointsLit.Text = total.ToString(); * ClientManager.updateRedemptionByPointReceiptPoint(redemptionbypointreceiptid, total); */ }