Ejemplo n.º 1
0
        public ActionResult RemovePaymentFromInvoiceJSON(string clientID, string paymentID, string invoiceID, string invoiceNumber)
        {
            int id = 0;

            if (!int.TryParse(clientID, out id))
            {
                id = 0;
            }
            string          message         = "";
            AccountActivity accountActivity = null;

            try
            {
                int paymentIDInt = int.Parse(paymentID);
                int invoiceIDInt = int.Parse(invoiceID);
                Clients.RemovePaymentFromInvoice(paymentIDInt, invoiceIDInt);
                int BillingContactID = Clients.GetPrimaryBillingContactIDFromClient(id).Value;
                if (BillingContactID != 0)
                {
                    accountActivity = BillingStatements.GetAccountActivityForAnInvoiceIDAndPaymentID(BillingContactID, 0, invoiceIDInt, paymentIDInt);
                    return(new JsonResult {
                        Data = new { success = true, accountActivity = accountActivity, paymentID = paymentID, invoiceID = invoiceID, invoiceNumber = invoiceNumber }
                    });
                }
                else
                {
                    message = "Request processed. However there is no primary billing contact for the client.";
                }
            }
            catch (Exception ex)
            {
                message = ex.Message;
            }
            return(new JsonResult {
                Data = new { success = false, message = message, paymentID = paymentID, invoiceID = invoiceID, invoiceNumber = invoiceNumber }
            });
        }