public decimal GroupBybalsheetcode(List <LedgersView2> solly) { decimal tot = 0M; var jk2 = new List <LedgersView2>(); var m = solly.GroupBy(x => x.balSheetCode) .Select( g => new { Value = g.Sum(s => s.Amount), description = g.First().MDesc, code = g.First().balSheetCode, desc = g.First().bl_desc, maincode = g.First().mainAccountCode }); foreach (var j in m) { var b = new LedgersView2 { description = j.description, Amount = j.Value, balSheetCode = j.code, bl_desc = j.desc, mainAccountCode = j.maincode }; tot += (decimal)j.Value; jk2.Add(b); } return(tot); }
public IEnumerable <LedgersView2> GetAllSurplusOrDeficit2() { var op = (from p in context.npf_Histories join q in context.npf_Charts on p.acctcode equals q.acctcode join r in context.mainacts on q.mainAccountCode equals r.maincode join s in context.npf_Balsheets on r.npf_balsheet_bl_code equals s.bl_code select new LedgersView2 { acctcode = p.acctcode, docNo = p.docno, adbbalance = p.dbamt, crbalance = p.cramt, Amount = p.dbamt - p.cramt, description = q.description, MDesc = r.description, bl_desc = s.bl_desc, balSheetCode = s.bl_code }).ToList(); var jk = new List <LedgersView2>(); foreach (var j in op) { var s = j.acctcode.Substring(0, 1); if (int.Parse(s) > 3) { var kl = new LedgersView2 { acctcode = j.acctcode, docNo = j.docNo, adbbalance = j.adbbalance, crbalance = j.crbalance, description = j.description, MDesc = j.MDesc, Amount = j.Amount, bl_desc = j.bl_desc, balSheetCode = j.balSheetCode }; jk.Add(kl); } } var kj = jk.DistinctBy(x => x.acctcode); return(kj); }
public IEnumerable <LedgersView2> FilterRecord(List <LedgersView2> solly, decimal total) { var r = new List <LedgersView2>(); var s = new LedgersView2(); int b = 1; foreach (var p in solly) { if (p.bl_desc.ToUpper().Trim() == "EQUITY" && b == 1) { s.description = "Surplus/Deficit"; s.MDesc = "Surplus / Deficit"; s.Amount = total; s.balSheetCode = p.balSheetCode; s.bl_desc = p.bl_desc; r.Add(s); b++; } } return(r); }