protected void grdBill_ItemCommand(object source, Telerik.Web.UI.GridCommandEventArgs e) { if (e.CommandName == "RowClick" && e.Item is GridDataItem) { Context.Items["BillId"] = e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["BillId"]; Response.Redirect("Bill.aspx"); } else if (e.CommandName == "Delete" && e.Item.ItemType != GridItemType.GroupFooter) { var financialManager = new FinancialManager(this); if (e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["BillId"] != null) { var bill = financialManager.GetBill(Convert.ToInt32(e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["BillId"]), Company.CompanyId); if (bill.ExpenditureAuthorizations.Any()) { ClientScript.RegisterClientScriptBlock(this.GetType(), "", "alert('O registro não pode ser apagado pois há outros registros de autorização de despesas associados!')", true); return; } financialManager.DeleteBill(Convert.ToInt32(e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["BillId"]), Company.CompanyId); } grdBill.DataBind(); if (grdBill.Items.Count == 0) grdBill.ShowFooter = false; } }
/// <summary> /// This method non authorizes the especified expenditures /// </summary> /// <param name="expenditureAuthorizationIds"></param> public void NonAuthorizeExpenditures(List<Int32> expenditureAuthorizationIds) { var financialManager = new FinancialManager(this); var billId = 0; foreach (var expenditureAuthorizationId in expenditureAuthorizationIds) { var expenditureAuthorization = GetExpenditureAuthorization(expenditureAuthorizationId); if (expenditureAuthorization.BillId.HasValue) { billId = expenditureAuthorization.BillId.Value; expenditureAuthorization.BillId = null; financialManager.DeleteBill(billId, expenditureAuthorization.CompanyId); } SetAuthorizationStatusInExpenditure(expenditureAuthorization, true); } }