public SourceInstitutionBillerSummary GetTransferSummaryByDate(Guid institutionId, DateTime transferDate) { DateTime nextDay = transferDate.AddDays(1); SourceInstitutionBillerSummary summary = new SourceInstitutionBillerSummary(); var institution = db.FinancialInstitutions.Where(p => p.FinancialInstitutionID == institutionId).First(); summary.SourceInstitutionID = institution.FinancialInstitutionID; summary.SourceInstitutionName = institution.Name; summary.BillerSummaries = from p in db.Transfers from q in db.Billers where p.SourceInstitutionID == institutionId && p.BillerID == q.BillerID && p.Created >= transferDate && p.Created < nextDay group new { p, q } by new { p.BillerID, q.DisplayName } into summaries select new BillerSummary { BillerID = summaries.Key.BillerID, BillerName = summaries.Key.DisplayName, TransferCount = summaries.Count(), TransferTotal = summaries.Sum(p => p.p.TransferAmount) }; return(summary); }
public SourceInstitutionBillerSummary GetTransferSummaryByYear(Guid institutionId, int transferYear) { SourceInstitutionBillerSummary summary = new SourceInstitutionBillerSummary(); var institution = db.FinancialInstitutions.Where(p => p.FinancialInstitutionID == institutionId).First(); summary.SourceInstitutionID = institution.FinancialInstitutionID; summary.SourceInstitutionName = institution.Name; summary.BillerSummaries = from p in db.Transfers from q in db.Billers where p.SourceInstitutionID == institutionId && p.BillerID == q.BillerID && p.Created.Year == transferYear group new { p, q } by new { p.BillerID, q.DisplayName } into summaries select new BillerSummary { BillerID = summaries.Key.BillerID, BillerName = summaries.Key.DisplayName, TransferCount = summaries.Count(), TransferTotal = summaries.Sum(p => p.p.TransferAmount) }; return(summary); }