public ResumeMonth GetResume(int year, int month) { ResumeMonth resumeMonth = new ResumeMonth(year, month); using (OutlayAPIManager API_Manager = new OutlayAPIManager()) { List <TransactionDTO> monthTransaction = API_Manager.GetTransaction(year, month); if (monthTransaction != null) { double totalAdjust = monthTransaction.Where(x => x.DetailTransaction.Type == OutlayDataHelper.OutlayTypesEnum.ADJUST.ToString()) .Select(x => x.Amount) .Sum(); double totalSpenses = monthTransaction.Where(x => x.DetailTransaction.Type == OutlayDataHelper.OutlayTypesEnum.SPENDING.ToString()) .Select(x => x.Amount) .Sum(); double totalIncoming = monthTransaction.Where(x => x.DetailTransaction.Type == OutlayDataHelper.OutlayTypesEnum.INCOMING.ToString()) .Select(x => x.Amount) .Sum(); var groupingCode = monthTransaction.GroupBy(x => x.DetailTransaction.Code) .ToDictionary(key => key.Key, value => value.Sum(x => x.Amount)); resumeMonth.Spenses = totalSpenses; resumeMonth.Incoming = totalIncoming; resumeMonth.Adjust = totalAdjust; resumeMonth.GroupCodeTransactions = groupingCode; } } return(resumeMonth); }
private void InitializeAllComponents() { List <TransactionDTO> transactionList = outlayServiceAPI.GetTransaction(year, month); calendarTransaction = new Dictionary <DateTime, List <TransactionDTO> >(); if (transactionList != null && transactionList.Count > 0) { calendarTransaction = transactionList.ToLookup(key => key.Date, value => value) .ToDictionary(key => key.Key, value => value.ToList()); } InitializeMatrixCalendarControllers(new DateTime(year, month, 01), calendarTransaction); InitializeCalendarColorDesing(); }
public List <ResumeTransactionDTO> GetAllMonthsTransactions(int year, int month) { OutlayAPIManager managerAPI = null; try { managerAPI = new OutlayAPIManager(); List <TransactionDTO> transactions = managerAPI.GetTransaction(year, month); List <ResumeTransactionDTO> listResume = transactions.Select(value => CastObject.ToResumeTransaction(value)) .ToList(); return(listResume); } catch (Exception e) { throw new Exception("Error while procesing resume by code", e); } finally { managerAPI?.Dispose(); } }