Beispiel #1
0
        //Category Referral Feature Finsih-----------------------------------------------------

        //New Functionality: All Referrals for a given time period-----------------------------
        public AllReferralsByDateVM AllReferralsByDateFileSearch(AllReferralsByDateVM input)
        {
            var fromDate2 = input.fDate2.AddDays(-1);
            var toDate2   = input.tDate2.AddDays(1);

            using (var db = new MainDb())
            {
                var query = db.referrals
                            .Include(i => i.companyCategoryType)
                            .Include(p => p.company)
                            .Include(q => q.client)
                            .Include(w => w.client.contactInfo)
                            .Where(e => (e.referralDate > fromDate2) &&
                                   (e.referralDate < toDate2)).ToList();

                input.allReferrals = query.ToList <object>();

                if (input.allReferrals.Count() != 0)
                {
                    var items = new List <object> {
                        new { PERIOD = fromDate2.ToShortDateString() + " thru " + toDate2.ToShortDateString() }
                    };
                    items.Add(new { Client = "Count of Referrals: " + (input.allReferrals.Count()) });

                    items.Add(
                        new
                    {
                        h1 = "Category Name",
                        h2 = "Company Name",
                        h3 = "Client Name",
                        h4 = "Referral Date",
                        h5 = "Quote",
                        h6 = "Commission",
                        h7 = "Service description"
                    });

                    var item2 = query.Select(i =>
                                             new
                    {
                        Category           = (i.companyCategoryType.name != null ? i.companyCategoryType.name : "N/A"),
                        CompanyName        = (i.company.name != null ? i.company.name : "N/A"),
                        ClientName         = ((i.client.contactInfo != null) && (i.client.contactInfo.name != null) ? i.client.contactInfo.name : "N/A"),
                        ReferralDate       = (i.created != null ? i.created.ToShortDateString() : "N/A"),
                        Quote              = (i.quote != null ? i.quote : 0),
                        Commission         = (i.commissionAmount != null ? i.commissionAmount : 0),
                        Servicedescription = (i.description != null ? i.description : "N/A")
                    }).ToList <object>();

                    foreach (var i in item2)
                    {
                        items.Add(i);
                    }

                    input.allReferrals = items;
                }

                return(input);
            }
        }
        public FileResult AllReferralsByDateFile(AllReferralsByDateVM input)
        {
            if (ModelState.IsValid)
            {
                input = reportManager.AllReferralsByDateFileSearch(input);
                var file = ImportExportHelper.exportToCsv(input.allReferrals, true);

                // alert, if the only object is the info about Date period
                if (input.allReferrals.Count() != 0)
                {
                    return(File(file.FullName, "Application/octet-stream", file.Name));
                }
                else
                {
                    this.Response.Write("<script> alert('No Data found based on the criteria!'); window.history.back(); </script>");
                }
            }
            else
            {
                this.Response.Write("<script> alert('Plese input valid dates!'); window.history.back(); </script>");
            }
            return(null);
        }
        // Category Referral By Date Feature Finish ------------------------------------

        // All Referrals For a Given Date Feature ------------------------------------
        public ActionResult AllReferralsByDate(AllReferralsByDateVM allReferralsByDateModel)
        {
            return(PartialView("_AllReferralsByDate", allReferralsByDateModel));
        }