/// <summary> /// Handles the Delete event of the gTransactions control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="Rock.Web.UI.Controls.RowEventArgs" /> instance containing the event data.</param> protected void gTransactions_Delete(object sender, Rock.Web.UI.Controls.RowEventArgs e) { var rockContext = new RockContext(); var transactionService = new FinancialTransactionService(rockContext); var transaction = transactionService.Get(e.RowKeyId); if (transaction != null) { string errorMessage; if (!transactionService.CanDelete(transaction, out errorMessage)) { mdGridWarning.Show(errorMessage, ModalAlertType.Information); return; } // prevent deleting a Transaction that is in closed batch if (transaction.Batch != null) { if (transaction.Batch.Status == BatchStatus.Closed) { mdGridWarning.Show(string.Format("This {0} is assigned to a closed {1}", FinancialTransaction.FriendlyTypeName, FinancialBatch.FriendlyTypeName), ModalAlertType.Information); return; } } if (transaction.BatchId.HasValue) { string caption = (transaction.AuthorizedPersonAlias != null && transaction.AuthorizedPersonAlias.Person != null) ? transaction.AuthorizedPersonAlias.Person.FullName : string.Format("Transaction: {0}", transaction.Id); HistoryService.SaveChanges( rockContext, typeof(FinancialBatch), Rock.SystemGuid.Category.HISTORY_FINANCIAL_TRANSACTION.AsGuid(), transaction.BatchId.Value, new List <string> { "Deleted transaction" }, caption, typeof(FinancialTransaction), transaction.Id, false ); } transactionService.Delete(transaction); rockContext.SaveChanges(); RockPage.UpdateBlocks("~/Blocks/Finance/BatchDetail.ascx"); } BindGrid(); }
/// <summary> /// Handles the Delete event of the gTransactions control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="Rock.Web.UI.Controls.RowEventArgs" /> instance containing the event data.</param> protected void gTransactions_Delete(object sender, Rock.Web.UI.Controls.RowEventArgs e) { var rockContext = new RockContext(); FinancialTransactionService service = new FinancialTransactionService(rockContext); FinancialTransaction item = service.Get(e.RowKeyId); if (item != null) { string errorMessage; if (!service.CanDelete(item, out errorMessage)) { mdGridWarning.Show(errorMessage, ModalAlertType.Information); return; } service.Delete(item); rockContext.SaveChanges(); } BindGrid(); }
/// <summary> /// Handles the Delete event of the gTransactions control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="Rock.Web.UI.Controls.RowEventArgs" /> instance containing the event data.</param> protected void gTransactions_Delete(object sender, Rock.Web.UI.Controls.RowEventArgs e) { var rockContext = new RockContext(); var transactionService = new FinancialTransactionService(rockContext); var transaction = transactionService.Get(e.RowKeyId); if (transaction != null) { string errorMessage; if (!transactionService.CanDelete(transaction, out errorMessage)) { mdGridWarning.Show(errorMessage, ModalAlertType.Information); return; } transactionService.Delete(transaction); rockContext.SaveChanges(); RockPage.UpdateBlocks("~/Blocks/Finance/BatchDetail.ascx"); } BindGrid(); }