Ejemplo n.º 1
0
        public ActionResult BillingStatmentIndexMode1(int id) //id = BillingContactID
        {
            //Mode 1
            DateTime StartDate, EndDate;

            string StatementDate = "";
            {
                StartDate = new DateTime(DateTime.Now.AddMonths(-1).Year, DateTime.Now.AddMonths(-1).Month, 2);
                EndDate   = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1);

                StatementDate = EndDate.ToString();
            }

            int BillingContactID = id;

            EndDate   = Convert.ToDateTime(StatementDate);
            StartDate = new DateTime(EndDate.AddMonths(-1).Year, EndDate.AddMonths(-1).Month, 2);

            //StartDate = new DateTime(2010,8,2);
            //EndDate = new DateTime(2010,9,1);

            BillingStatement_Index viewBillingStatement_Index = new BillingStatement_Index();

            viewBillingStatement_Index.BillingContactID = BillingContactID;
            viewBillingStatement_Index.ClientView       = true;
            viewBillingStatement_Index.BillingStatement =
                BillingStatements.GetCurrentBillingStatement(BillingContactID, StartDate, EndDate);

            viewBillingStatement_Index.StatementDate = EndDate;
            viewBillingStatement_Index.toPrint       = true;

            return(View("BillingStatmentIndex", "Print", viewBillingStatement_Index));
        }
Ejemplo n.º 2
0
        public ActionResult BillingStatmentIndex_PublicMode3(int id, string StatementDate) //id = BillingContactID
        {
            //Mode3

            // if (!Security.UserCanAccessBillingContact(m_UserID, id))
            // {
            //     return RedirectToAction("Index", "Home");
            // }

            int BillingContactID = id;

            DateTime StartDate, EndDate;

            EndDate   = Convert.ToDateTime(StatementDate);
            StartDate = new DateTime(EndDate.AddMonths(-1).Year, EndDate.AddMonths(-1).Month, 2);

            //StartDate = new DateTime(2010,8,2);
            //EndDate = new DateTime(2010,9,1);

            BillingStatement_Index viewBillingStatement_Index = new BillingStatement_Index();

            viewBillingStatement_Index.BillingContactID = BillingContactID;
            viewBillingStatement_Index.ClientView       = true;
            viewBillingStatement_Index.BillingStatement =
                BillingStatements.GetCurrentBillingStatement(BillingContactID, StartDate, EndDate);

            viewBillingStatement_Index.StatementDate = EndDate;
            viewBillingStatement_Index.toPrint       = true;

            return(View("BillingStatmentIndex_Public", "Print", viewBillingStatement_Index));
        }
Ejemplo n.º 3
0
        public ActionResult ClientAccountActivity(int id) //id = ClientID
        {
            int BillingContactID = Clients.GetPrimaryBillingContactIDFromClient(id).Value;

            Clients_Details viewBillingStatement_AccountActivity = new Clients_Details();

            viewBillingStatement_AccountActivity.AccountActivity = BillingStatements.GetAccountActivity(BillingContactID, 0);

            return(View(viewBillingStatement_AccountActivity));
        }
Ejemplo n.º 4
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 }
            });
        }
Ejemplo n.º 5
0
        public ActionResult BillingStatmentIndexMode2(int id) //id = BillingContactID
        {
            //Mode 2
            int BillingContactID = id;

            DateTime StartDate, EndDate;

            StartDate = new DateTime(DateTime.Now.AddMonths(-1).Year, DateTime.Now.AddMonths(-1).Month, 2);
            EndDate   = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1);
            //StartDate = new DateTime(2010,10,2);
            //EndDate = new DateTime(2010,11,1);

            BillingStatement_Index viewBillingStatement_Index = new BillingStatement_Index();

            viewBillingStatement_Index.BillingContactID = BillingContactID;
            viewBillingStatement_Index.ClientView       = true;
            viewBillingStatement_Index.BillingStatement =
                BillingStatements.GetCurrentBillingStatement(BillingContactID, StartDate, EndDate);

            viewBillingStatement_Index.StatementDate = EndDate;
            viewBillingStatement_Index.toPrint       = true;

            return(View("BillingStatmentIndex", "Print", viewBillingStatement_Index));
        }
Ejemplo n.º 6
0
        public ActionResult AttachInvoiceToPaymentJSON(string clientID, string paymentID, string invoiceIDs, string invoiceNumbers, string invoiceDates, string invoiceQBs, string paymentSpents)
        {
            int id = 0;

            if (!int.TryParse(clientID, out id))
            {
                id = 0;
            }

            string[] invoiceID     = invoiceIDs.Split(new string[] { "~*~" }, StringSplitOptions.None);
            string[] invoiceNumber = invoiceNumbers.Split(new string[] { "~*~" }, StringSplitOptions.None);
            string[] invoiceDate   = invoiceDates.Split(new string[] { "~*~" }, StringSplitOptions.None);
            string[] invoiceQB     = invoiceQBs.Split(new string[] { "~*~" }, StringSplitOptions.None);
            string[] paymentSpent  = paymentSpents.Split(new string[] { "~*~" }, StringSplitOptions.None);

            string message = "";

            for (int i = 0; i < invoiceID.Length; i++)
            {
                try
                {
                    var resultRecord = Clients.AttachInvoiceToPayment(id, int.Parse(paymentID), int.Parse(invoiceID[i]), invoiceNumber[i], DateTime.Parse(invoiceDate[i]), invoiceQB[i], decimal.Parse(paymentSpent[i]), true, m_UserID);

                    if (resultRecord == null)
                    {
                        message = (message == "" ? "" : "\r\n") + message + "Failed to attach record.";
                    }
                }
                catch (Exception ex)
                {
                    message = (message == "" ? "" : "\r\n") + message + ex.Message;
                }
            }

            if (message != "")
            {
                return(new JsonResult {
                    Data = new { success = false, message = message, paymentID = paymentID, invoiceIDs = invoiceIDs, invoiceNumbers = invoiceNumbers, invoiceDates = invoiceDates, invoiceQBs = invoiceQBs, paymentSpents = paymentSpents }
                });
            }

            int BillingContactID = Clients.GetPrimaryBillingContactIDFromClient(id).Value;

            AccountActivity accountActivity = null;

            if (BillingContactID != 0)
            {
                accountActivity = BillingStatements.GetAccountActivity(BillingContactID, 0);
                List <BillingStatementRow> billingStatementRowsToKeep = new List <BillingStatementRow>();
                for (int i = 0; i < invoiceID.Length; i++)
                {
                    try
                    {
                        var found = accountActivity.accountActivityRows.Find(delegate(BillingStatementRow find) {
                            return(invoiceID[i] != "" &&
                                   find.InvoiceID == invoiceID[i]);
                        });

                        if (found != null)
                        {
                            billingStatementRowsToKeep.Add(found);
                        }
                    }
                    catch (Exception ex)
                    {
                        message = (message == "" ? "" : "\r\n") + message + ex.Message;
                    }
                }

                try
                {
                    var found = accountActivity.accountActivityRows.Find(delegate(BillingStatementRow find)
                    {
                        return(paymentID != "" &&
                               find.PaymentID == paymentID);
                    });

                    if (found != null)
                    {
                        billingStatementRowsToKeep.Add(found);
                    }
                }
                catch (Exception ex)
                {
                    message = (message == "" ? "" : "\r\n") + message + ex.Message;
                }

                accountActivity.accountActivityRows = billingStatementRowsToKeep;
            }

            if (message != "")
            {
                return(new JsonResult {
                    Data = new { success = false, message = message, paymentID = paymentID, invoiceIDs = invoiceIDs, invoiceNumbers = invoiceNumbers, invoiceDates = invoiceDates, invoiceQBs = invoiceQBs, paymentSpents = paymentSpents }
                });
            }

            return(new JsonResult {
                Data = new { success = true, accountActivity = accountActivity, paymentID = paymentID, invoiceIDs = invoiceIDs, invoiceNumbers = invoiceNumbers, invoiceDates = invoiceDates, invoiceQBs = invoiceQBs, paymentSpents = paymentSpents }
            });
        }
Ejemplo n.º 7
0
        public ActionResult Details(int id) //id = ClientID
        {
            Clients_Details viewClients_Details = new Clients_Details();

            Client clientInfo = Clients.GetClient(id);
            ClientInvoiceSettings         clientInvoiceSettings         = Clients.GetClientInvoiceSettings(id);
            ClientInvoiceSettings         parentInvoiceSettings         = Clients.GetClientInvoiceSettings(clientInfo.ParentClientID);
            ClientExpectedRevenueSettings clientExpectedRevenueSettings = Clients.GetClientExpectedRevenueSettings(id);
            ClientVendors clientVendors = Clients.GetClientVendors(id);

            int BillingContactID = Clients.GetPrimaryBillingContactIDFromClient(id).Value;

            if (BillingContactID != 0)
            {
                viewClients_Details.AccountActivity = BillingStatements.GetAccountActivity(BillingContactID, 0);
            }

            viewClients_Details.BillingContactID = BillingContactID;
            viewClients_Details.ClientName       = clientInfo.ClientName;
            viewClients_Details.Address1         = clientInfo.Address1;
            viewClients_Details.Address2         = clientInfo.Address2;
            viewClients_Details.City             = clientInfo.City;
            viewClients_Details.State            = clientInfo.State;
            viewClients_Details.Zip                = clientInfo.Zip;
            viewClients_Details.Status             = clientInfo.Status;
            viewClients_Details.DoNotInvoice       = clientInfo.DoNotInvoice;
            viewClients_Details.ClientID           = id;
            viewClients_Details.ParentClientName   = clientInfo.ParentClientName;
            viewClients_Details.Tazworks1ID        = clientVendors.Tazworks1ID;
            viewClients_Details.Tazworks2ID        = clientVendors.Tazworks2ID;
            viewClients_Details.Debtor1ID          = clientVendors.Debtor1ID;
            viewClients_Details.TransUnionID       = clientVendors.TransUnionID;
            viewClients_Details.ExperianID         = clientVendors.ExperianID;
            viewClients_Details.BilledAsClientName = clientInfo.BillAsClientName;
            viewClients_Details.AuditInvoices      = clientInfo.AuditInvoices;
            viewClients_Details.ParentClientID     = clientInfo.ParentClientID;
            viewClients_Details.PembrookeID        = clientVendors.PembrookeID;
            viewClients_Details.ApplicantONEID     = clientVendors.ApplicantONEID;
            viewClients_Details.RentTrackID        = clientVendors.RentTrackID;
            viewClients_Details.Notes              = clientInfo.Notes;

            if (clientInfo.DoNotInvoice)
            {
                viewClients_Details.BillingGroupID = "0";
            }
            else
            {
                viewClients_Details.BillingGroupID = Convert.ToString(clientInfo.BillingGroupID);
            }

            if (clientInvoiceSettings.InvoiceTemplate == 0)
            {
                if (parentInvoiceSettings.ClientSplitMode == 2)
                {
                    viewClients_Details.HasClientInvoiceSettings = 2; //Parent roll up
                }
                else
                {
                    viewClients_Details.HasClientInvoiceSettings = 0;
                }
            }
            else
            {
                viewClients_Details.HasClientInvoiceSettings = 1;
            }

            if (clientVendors.Tazworks1ID == null && clientVendors.Tazworks2ID == null &&
                clientVendors.Debtor1ID == null && clientVendors.TransUnionID == null && clientVendors.ExperianID == null)
            {
                viewClients_Details.HasVendorSettings = false;
            }
            else
            {
                viewClients_Details.HasVendorSettings = true;
            }

            viewClients_Details.InvoiceTemplate      = clientInvoiceSettings.InvoiceTemplate;
            viewClients_Details.BillingDetailReport  = clientInvoiceSettings.BillingDetailReport;
            viewClients_Details.ClientSplitMode      = clientInvoiceSettings.ClientSplitMode;
            viewClients_Details.ApplyFinanceCharge   = clientInvoiceSettings.ApplyFinanceCharge;
            viewClients_Details.FinanceChargeDays    = clientInvoiceSettings.FinanceChargeDays;
            viewClients_Details.FinanceChargePercent = clientInvoiceSettings.FinanceChargePercent;
            viewClients_Details.SentToCollections    = clientInvoiceSettings.SentToCollections;
            viewClients_Details.ExcludeFromReminders = clientInvoiceSettings.ExcludeFromReminders;

            viewClients_Details.ExpectedMonthlyRevenue = clientExpectedRevenueSettings.ExpectedMonthlyRevenue.ToString("#.##");
            viewClients_Details.AccountCreateDate      = (clientExpectedRevenueSettings.AccountCreateDate == DateTime.MinValue ? "" : clientExpectedRevenueSettings.AccountCreateDate.ToString("MM/dd/yyyy"));
            viewClients_Details.AccountOwner           = clientExpectedRevenueSettings.AccountOwner;
            viewClients_Details.AffiliateName          = clientExpectedRevenueSettings.AffiliateName;

            return(View("Details", "View", viewClients_Details));
        }