Пример #1
0
        public ActionResult Detail(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Charity charity = db.Charities.Find(id);

            if (charity == null)
            {
                return(HttpNotFound());
            }
            var ABN = charity.ABN;

            ViewBag.Message = "Your application description page.";
            List <FinancialNew> finList = db.FinancialNews.Where(i => i.ABN == ABN).ToList();

            var address = "";

            if (!charity.AddressLine2.Contains("NA"))
            {
                address = charity.AddressLine1 + ", " + charity.AddressLine2 + ", " + charity.TownCity + ", "
                          + charity.State + "," + charity.Postcode;
            }
            else
            {
                address = charity.AddressLine1 + ", " + charity.TownCity + ", "
                          + charity.State + "," + charity.Postcode;
            }

            List <DetailModel> finalModelList = new List <DetailModel>();
            var a = 2014;
            var b = a.ToString();

            for (int i = 0; i < 3; i++)
            {
                DetailModel  detailModel = new DetailModel();
                FinancialNew fin         = new FinancialNew();
                detailModel.ABN  = charity.ABN;
                detailModel.Size = charity.Size;
                if (charity.Tax == true)
                {
                    detailModel.Tax = "Yes";
                }
                else
                {
                    detailModel.Tax = "No";
                }
                detailModel.StaffFull     = charity.StaffFull.Value;
                detailModel.StaffPart     = charity.StaffPart.Value;
                detailModel.StaffCasual   = charity.StaffCasual.Value;
                detailModel.StaffVolun    = charity.StaffVolun.Value;
                detailModel.Name          = charity.Name;
                detailModel.Address       = address;
                detailModel.Website       = charity.Website;
                detailModel.Description   = charity.Description;
                detailModel.Beneficiaries = charity.Beneficiaries;
                List <FinancialNew> flist = finList.Where(f => f.FYear == b).ToList();
                if (flist.Count != 0)
                {
                    fin = finList.Where(f => f.FYear == b).ToList()[0];
                    detailModel.AccountInfo           = fin.AccountInfo;
                    detailModel.Donations             = fin.Donations.Value;
                    detailModel.EmpExpense            = fin.EmpExpense.Value;
                    detailModel.ReportFrom            = fin.ReportFrom;
                    detailModel.ReportTo              = fin.ReportTo;
                    detailModel.GoverGrant            = fin.GoverGrant.Value;
                    detailModel.GDInAus               = fin.GDInAus.Value;
                    detailModel.GDOutAus              = fin.GDOutAus.Value;
                    detailModel.NetAssets             = fin.NetAssets.Value;
                    detailModel.NetSurplus            = fin.NetSurplus.Value;
                    detailModel.TotalAssets           = fin.TotalAssets.Value;
                    detailModel.TotalCurrentLia       = fin.TotalCurrentLia.Value;
                    detailModel.TotalNotCurrentLia    = fin.TotalNotCurrentLia.Value;
                    detailModel.TotalCurrentAssets    = fin.TotalCurrentAssets.Value;
                    detailModel.TotalNotCurrentAssets = fin.TotalNotCurrentAssets.Value;
                    detailModel.Expense               = fin.Expense.Value;
                    detailModel.TotalGrossIncome      = fin.TotalGrossIncome.Value;
                    detailModel.TotalLia              = fin.TotalLia.Value;
                    detailModel.Year = fin.FYear;
                    detailModel.EmpExpensePersentage     = fin.EmpExpensePersentage.Value;
                    detailModel.OtherIncome              = fin.OtherIncome.Value;
                    detailModel.AllOtherExpense          = fin.AllOtherExpense.Value;
                    detailModel.DebtEquityRadio          = fin.DebtEquityRadio.Value;
                    detailModel.SavingRadio              = fin.SavingRadio.Value;
                    detailModel.CurrentRadio             = fin.CurrentRadio.Value;
                    detailModel.DebtRadio                = fin.DebtRadio.Value;
                    detailModel.EmpExpInSizeMedian       = fin.EmpExpInSizeMedian.Value;
                    detailModel.DebtEquityInSizeMedian   = fin.DebtEquityInSizeMedian.Value;
                    detailModel.SavingRadioInSizeMedian  = fin.SavingRadioInSizeMedian.Value;
                    detailModel.CurrentRadioInSizeMedian = fin.CurrentRadioInSizeMedian.Value;
                    detailModel.DebtRadioInSizeMedian    = fin.DebtRadioInSizeMedian.Value;
                }
                else
                {
                    detailModel.Year = b;
                }

                finalModelList.Add(detailModel);
                a++;
                b = a.ToString();
            }

            return(View(finalModelList));
        }
Пример #2
0
        public ActionResult compare()
        {
            compareList = Session["CompareList"] as List <Charity>;
            if (compareList != null)
            {
                ViewBag.id1 = compareList[0].Id;
                ViewBag.id2 = compareList[1].Id;
            }
            else
            {
                ViewBag.id1 = 20000;
                ViewBag.id2 = 20000;
            }
            List <DetailModel> finalModelList = new List <DetailModel>();

            for (int i = 0; i < 2; i++)
            {
                var ABN = "";
                ABN = compareList[i].ABN;
                List <FinancialNew> finList = new List <FinancialNew>();
                finList = db.FinancialNews.Where(x => x.ABN == ABN).ToList();
                finList = finList.Where(x => x.FYear == "2016").ToList();
                DetailModel detailModel = new DetailModel();
                detailModel.ABN  = compareList[i].ABN;
                detailModel.Size = compareList[i].Size;
                if (compareList[i].Tax == true)
                {
                    detailModel.Tax = "Yes";
                }
                else
                {
                    detailModel.Tax = "No";
                }
                detailModel.StaffFull   = compareList[i].StaffFull.Value;
                detailModel.StaffPart   = compareList[i].StaffPart.Value;
                detailModel.StaffCasual = compareList[i].StaffCasual.Value;
                detailModel.StaffVolun  = compareList[i].StaffVolun.Value;
                detailModel.Name        = compareList[i].Name;
                //detailModel.Address = address;
                detailModel.Website       = compareList[i].Website;
                detailModel.Description   = compareList[i].Description;
                detailModel.Beneficiaries = compareList[i].Beneficiaries;
                FinancialNew fin = new FinancialNew();
                if (finList.Count != 0)
                {
                    fin = finList[0];
                    detailModel.AccountInfo           = fin.AccountInfo;
                    detailModel.Donations             = fin.Donations.Value;
                    detailModel.EmpExpense            = fin.EmpExpense.Value;
                    detailModel.ReportFrom            = fin.ReportFrom;
                    detailModel.ReportTo              = fin.ReportTo;
                    detailModel.GoverGrant            = fin.GoverGrant.Value;
                    detailModel.GDInAus               = fin.GDInAus.Value;
                    detailModel.GDOutAus              = fin.GDOutAus.Value;
                    detailModel.NetAssets             = fin.NetAssets.Value;
                    detailModel.NetSurplus            = fin.NetSurplus.Value;
                    detailModel.TotalAssets           = fin.TotalAssets.Value;
                    detailModel.TotalCurrentLia       = fin.TotalCurrentLia.Value;
                    detailModel.TotalNotCurrentLia    = fin.TotalNotCurrentLia.Value;
                    detailModel.TotalCurrentAssets    = fin.TotalCurrentAssets.Value;
                    detailModel.TotalNotCurrentAssets = fin.TotalNotCurrentAssets.Value;
                    detailModel.Expense               = fin.Expense.Value;
                    detailModel.TotalGrossIncome      = fin.TotalGrossIncome.Value;
                    detailModel.TotalLia              = fin.TotalLia.Value;
                    detailModel.Year = fin.FYear;
                    detailModel.EmpExpensePersentage     = fin.EmpExpensePersentage.Value;
                    detailModel.OtherIncome              = fin.OtherIncome.Value;
                    detailModel.AllOtherExpense          = fin.AllOtherExpense.Value;
                    detailModel.DebtEquityRadio          = fin.DebtEquityRadio.Value;
                    detailModel.SavingRadio              = fin.SavingRadio.Value;
                    detailModel.CurrentRadio             = fin.CurrentRadio.Value;
                    detailModel.DebtRadio                = fin.DebtRadio.Value;
                    detailModel.EmpExpInSizeMedian       = fin.EmpExpInSizeMedian.Value;
                    detailModel.DebtEquityInSizeMedian   = fin.DebtEquityInSizeMedian.Value;
                    detailModel.SavingRadioInSizeMedian  = fin.SavingRadioInSizeMedian.Value;
                    detailModel.CurrentRadioInSizeMedian = fin.CurrentRadioInSizeMedian.Value;
                    detailModel.DebtRadioInSizeMedian    = fin.DebtRadioInSizeMedian.Value;
                }
                else
                {
                    detailModel.Year = "2016";
                }
                finalModelList.Add(detailModel);
            }

            return(View(finalModelList));
        }
        //Detail page for each charity
        public ActionResult Detail(int?id)
        {
            ViewBag.printID = id;
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            //search charity by id
            Charity charity = db.Charities.Find(id);

            if (charity == null)
            {
                return(HttpNotFound());
            }
            var ABN = charity.ABN;

            ViewBag.Message = "Your application description page.";
            ViewBag.PartDes = charity.Description.Substring(0, Math.Min(charity.Description.Length, 200)) + "...";
            //search charities in the financial table through ABN, cause may have 3 rows for each charity
            List <FinancialNew> finList = db.FinancialNews.Where(i => i.ABN == ABN).ToList();

            //combine address, state, towncity and postcode
            var address = "";

            if (!charity.AddressLine2.Contains("NA"))
            {
                address = charity.AddressLine1 + ", " + charity.AddressLine2 + ", " + charity.TownCity + ", "
                          + charity.State + "," + charity.Postcode;
            }
            else
            {
                address = charity.AddressLine1 + ", " + charity.TownCity + ", "
                          + charity.State + "," + charity.Postcode;
            }


            List <DetailModel> finalModelList = new List <DetailModel>();
            //do a 3 times loop to generate 3 models for each charity
            var a = 2014;
            var b = a.ToString();

            //3 times loop for 2014, 2015 and 2016
            for (int i = 0; i < 3; i++)
            {
                //get all attrbutes
                DetailModel  detailModel = new DetailModel();
                FinancialNew fin         = new FinancialNew();
                detailModel.ABN  = charity.ABN;
                detailModel.Size = charity.Size;
                if (charity.Tax == true)
                {
                    detailModel.Tax = "Yes";
                }
                else
                {
                    detailModel.Tax = "No";
                }
                detailModel.StaffFull     = charity.StaffFull.Value;
                detailModel.StaffPart     = charity.StaffPart.Value;
                detailModel.StaffCasual   = charity.StaffCasual.Value;
                detailModel.StaffVolun    = charity.StaffVolun.Value;
                detailModel.Name          = charity.Name;
                detailModel.Address       = address;
                detailModel.Website       = charity.Website;
                detailModel.Description   = charity.Description;
                detailModel.Beneficiaries = charity.Beneficiaries;
                List <FinancialNew> flist = finList.Where(f => f.FYear == b).ToList();
                //if charity has the financial data for current year (b yaer)
                if (flist.Count != 0)
                {
                    fin = finList.Where(f => f.FYear == b).ToList()[0];
                    detailModel.AccountInfo           = fin.AccountInfo;
                    detailModel.Donations             = fin.Donations.Value;
                    detailModel.EmpExpense            = fin.EmpExpense.Value;
                    detailModel.ReportFrom            = fin.ReportFrom;
                    detailModel.ReportTo              = fin.ReportTo;
                    detailModel.GoverGrant            = fin.GoverGrant.Value;
                    detailModel.GDInAus               = fin.GDInAus.Value;
                    detailModel.GDOutAus              = fin.GDOutAus.Value;
                    detailModel.NetAssets             = fin.NetAssets.Value;
                    detailModel.NetSurplus            = fin.NetSurplus.Value;
                    detailModel.TotalAssets           = fin.TotalAssets.Value;
                    detailModel.TotalCurrentLia       = fin.TotalCurrentLia.Value;
                    detailModel.TotalNotCurrentLia    = fin.TotalNotCurrentLia.Value;
                    detailModel.TotalCurrentAssets    = fin.TotalCurrentAssets.Value;
                    detailModel.TotalNotCurrentAssets = fin.TotalNotCurrentAssets.Value;
                    detailModel.Expense               = fin.Expense.Value;
                    detailModel.TotalGrossIncome      = fin.TotalGrossIncome.Value;
                    detailModel.TotalLia              = fin.TotalLia.Value;
                    detailModel.Year = fin.FYear;
                    detailModel.EmpExpensePersentage     = fin.EmpExpensePersentage.Value;
                    detailModel.OtherIncome              = fin.OtherIncome.Value;
                    detailModel.AllOtherExpense          = fin.AllOtherExpense.Value;
                    detailModel.DebtEquityRadio          = fin.DebtEquityRadio.Value;
                    detailModel.SavingRadio              = fin.SavingRadio.Value;
                    detailModel.CurrentRadio             = fin.CurrentRadio.Value;
                    detailModel.DebtRadio                = fin.DebtRadio.Value;
                    detailModel.EmpExpInSizeMedian       = fin.EmpExpInSizeMedian.Value;
                    detailModel.DebtEquityInSizeMedian   = fin.DebtEquityInSizeMedian.Value;
                    detailModel.SavingRadioInSizeMedian  = fin.SavingRadioInSizeMedian.Value;
                    detailModel.CurrentRadioInSizeMedian = fin.CurrentRadioInSizeMedian.Value;
                    detailModel.DebtRadioInSizeMedian    = fin.DebtRadioInSizeMedian.Value;
                }
                //if charity dosen't have the financial data for current year (b yaer)
                else
                {
                    detailModel.Year = b;
                }

                finalModelList.Add(detailModel);
                a++;
                b = a.ToString();
            }



            return(View(finalModelList));
        }