Exemple #1
0
        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);
            }
        }
Exemple #2
0
        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));
            }
        }