protected void dgCashPaymentDetail_UpdateCommand(object source, DataGridCommandEventArgs e) { decimal previousAmount = 0; int CPRDId = (int)dgCashPaymentDetail.DataKeys[e.Item.ItemIndex]; CashPaymentRequestDetail cprd; if (CPRDId > 0) { cprd = _presenter.CurrentCashPaymentRequest.GetCashPaymentRequestDetail(CPRDId); } else { cprd = _presenter.CurrentCashPaymentRequest.CashPaymentRequestDetails[e.Item.ItemIndex]; } try { cprd.CashPaymentRequest = _presenter.CurrentCashPaymentRequest; TextBox txtAmount = e.Item.FindControl("txtEdtAmount") as TextBox; previousAmount = cprd.Amount; //This is the Total Amount of this request before any edit cprd.Amount = Convert.ToDecimal(txtAmount.Text); TextBox txtEdtAccountCode = e.Item.FindControl("txtEdtAccountCode") as TextBox; cprd.AccountCode = txtEdtAccountCode.Text; DropDownList ddlAccountDescription = e.Item.FindControl("ddlEdtAccountDescription") as DropDownList; cprd.ItemAccount = _presenter.GetItemAccount(Convert.ToInt32(ddlAccountDescription.SelectedValue)); DropDownList ddlProject = e.Item.FindControl("ddlEdtProject") as DropDownList; cprd.Project = _presenter.GetProject(Convert.ToInt32(ddlProject.SelectedValue)); DropDownList ddlGrant = e.Item.FindControl("ddlEdtGrant") as DropDownList; cprd.Grant = _presenter.GetGrant(int.Parse(ddlGrant.SelectedValue)); CheckBox ckEdtSupDocAttached = e.Item.FindControl("ckEdtSupDocAttached") as CheckBox; cprd.SupportDocAttached = ckEdtSupDocAttached.Checked; _presenter.CurrentCashPaymentRequest.TotalAmount -= previousAmount; //Subtract the previous Total amount _presenter.CurrentCashPaymentRequest.TotalAmount += cprd.Amount; //Then add the new individual amounts to the Total amount if (ddlAmountType.SelectedValue == "Actual Amount") { cprd.ActualExpendture = Convert.ToDecimal(txtAmount.Text); } //Add Checklists for attachments if available but clear all attachments first because this is update cprd.CPRAttachments = new List <CPRAttachment>(); foreach (ItemAccountChecklist checklist in cprd.ItemAccount.ItemAccountChecklists) { CPRAttachment attachment = new CPRAttachment(); attachment.ItemAccountChecklists.Add(checklist); cprd.CPRAttachments.Add(attachment); } BindAttachments(); dgCashPaymentDetail.EditItemIndex = -1; BindCashPaymentDetails(); Master.ShowMessage(new AppMessage("Payment Detail Successfully Updated", RMessageType.Info)); } catch (Exception ex) { Master.ShowMessage(new AppMessage("Error: Unable to Update Payment. " + ex.Message, RMessageType.Error)); ExceptionUtility.LogException(ex, ex.Source); ExceptionUtility.NotifySystemOps(ex, _presenter.CurrentUser().FullName); } }
protected void dgCashPaymentDetail_ItemCommand(object source, DataGridCommandEventArgs e) { if (e.CommandName == "AddNew") { try { CashPaymentRequestDetail cprd = new CashPaymentRequestDetail(); cprd.CashPaymentRequest = _presenter.CurrentCashPaymentRequest; TextBox txtAmount = e.Item.FindControl("txtAmount") as TextBox; cprd.Amount = Convert.ToDecimal(txtAmount.Text); TextBox txtAccountCode = e.Item.FindControl("txtAccountCode") as TextBox; cprd.AccountCode = txtAccountCode.Text; DropDownList ddlAccountDescription = e.Item.FindControl("ddlAccountDescription") as DropDownList; cprd.ItemAccount = _presenter.GetItemAccount(Convert.ToInt32(ddlAccountDescription.SelectedValue)); DropDownList ddlProject = e.Item.FindControl("ddlProject") as DropDownList; cprd.Project = _presenter.GetProject(Convert.ToInt32(ddlProject.SelectedValue)); DropDownList ddlGrant = e.Item.FindControl("ddlGrant") as DropDownList; cprd.Grant = _presenter.GetGrant(int.Parse(ddlGrant.SelectedValue)); CheckBox ckSupDocAttached = e.Item.FindControl("ckSupDocAttached") as CheckBox; cprd.SupportDocAttached = ckSupDocAttached.Checked; _presenter.CurrentCashPaymentRequest.TotalAmount += cprd.Amount; if (ddlAmountType.SelectedValue == "Actual Amount") { cprd.ActualExpendture = Convert.ToDecimal(txtAmount.Text); } //Add Checklists for attachments if available foreach (ItemAccountChecklist checklist in cprd.ItemAccount.ItemAccountChecklists) { CPRAttachment attachment = new CPRAttachment(); attachment.CashPaymentRequestDetail = _presenter.CurrentCashPaymentRequest.GetDetailByItemAccount(cprd.ItemAccount.Id); attachment.ItemAccountChecklists.Add(checklist); cprd.CPRAttachments.Add(attachment); } _presenter.CurrentCashPaymentRequest.CashPaymentRequestDetails.Add(cprd); if (ddlAmountType.SelectedValue != "Advanced") { BindAttachments(); } dgCashPaymentDetail.EditItemIndex = -1; BindCashPaymentDetails(); foreach (CPRAttachment attachment in _presenter.CurrentCashPaymentRequest.CashPaymentRequestDetails[e.Item.ItemIndex + 1].CPRAttachments) { attachment.CashPaymentRequestDetail = _presenter.CurrentCashPaymentRequest.GetCashPaymentRequestDetail((int)dgCashPaymentDetail.DataKeys[e.Item.ItemIndex + 1]); } Master.ShowMessage(new AppMessage("Payment Detail Successfully Added", RMessageType.Info)); } catch (Exception ex) { Master.ShowMessage(new AppMessage("Error: Unable to Save Payment Detail" + ex.Message, RMessageType.Error)); ExceptionUtility.LogException(ex, ex.Source); ExceptionUtility.NotifySystemOps(ex, _presenter.CurrentUser().FullName); } } }
private void UploadFile() { string fileName = Path.GetFileName(fuReciept.PostedFile.FileName); if (fileName != String.Empty) { CPRAttachment attachment = new CPRAttachment(); attachment.FilePath = "~/CPUploads/" + fileName; fuReciept.PostedFile.SaveAs(Server.MapPath("~/CPUploads/") + fileName); //Response.Redirect(Request.Url.AbsoluteUri); _presenter.CurrentCashPaymentRequest.CPRAttachments.Add(attachment); grvAttachments.DataSource = _presenter.CurrentCashPaymentRequest.CPRAttachments; grvAttachments.DataBind(); } else { Master.ShowMessage(new AppMessage("Please select file ", Chai.WorkflowManagment.Enums.RMessageType.Error)); } }
private void UploadFile() { string filePath = fuReciept.PostedFile.FileName; string filename = Path.GetFileName(filePath); string ext = Path.GetExtension(filename); string contenttype = String.Empty; //Set the contenttype based on File Extension switch (ext) { case ".doc": contenttype = "application/vnd.ms-word"; break; case ".docx": contenttype = "application/vnd.ms-word"; break; case ".xls": contenttype = "application/vnd.ms-excel"; break; case ".xlsx": contenttype = "application/vnd.ms-excel"; break; case ".jpg": contenttype = "image/jpg"; break; case ".png": contenttype = "image/png"; break; case ".gif": contenttype = "image/gif"; break; case ".pdf": contenttype = "application/pdf"; break; } if (contenttype != String.Empty) { Stream fs = fuReciept.PostedFile.InputStream; BinaryReader br = new BinaryReader(fs); Byte[] bytes = br.ReadBytes((Int32)fs.Length); CPRAttachment attachment = new CPRAttachment(); attachment.FilePath = filename; //_presenter.CurrentCashPaymentRequest.PaymentReimbursementRequest.CPRAttachments.Add(attachment); ////insert the file into database //grvAttachments.DataSource = _presenter.CurrentCashPaymentRequest.PaymentReimbursementRequest.CPRAttachments; //grvAttachments.DataBind(); } else { Master.ShowMessage(new AppMessage("File format not recognised. Upload Image/Word/PDF/Excel formats ", ChurchERP.Enums.RMessageType.Error)); } }