public async Task <List <BalanceDto> > GetBalances(BalanceFilter balanceFilter) { switch (balanceFilter.BalanceType) { case BalanceType.Receipt: return(await GetListReceipts(balanceFilter.TenantId)); case BalanceType.Expense: return(await GetListExpenses(balanceFilter.TenantId)); case BalanceType.CashBook: var data = await GetListReceipts(balanceFilter.TenantId); data.AddRange(await GetListExpenses(balanceFilter.TenantId)); return(data); default: return(new List <BalanceDto>()); } }
public async Task <IActionResult> GetBalancesByFilterAsync([FromQuery] BalanceFilter filter) { var result = await _billingService.GetBalanceByFilterAsync(filter); return(ApiResult(result)); }
public Task <ApiResponse <IReadOnlyCollection <BalanceDto> > > GetBalanceByFilterAsync(BalanceFilter filter) { return(GetAsync <ApiResponse <IReadOnlyCollection <BalanceDto> > >($"{_clientOptions.GetBalanceByFilterUrl}?id={filter.Id}&userid={filter.UserId}")); }
/// <summary> /// Получить балансы по фильтру /// </summary> /// <param name="filter"></param> /// <returns></returns> public async Task <IReadOnlyCollection <BalanceDto> > GetBalanceByFilterAsync(BalanceFilter filter) { var balances = await _balanceRepository.GetAllAsync(); if (filter.Id != null) { balances = balances.Where(b => b.Id == filter.Id); } if (filter.UserId != null) { balances = balances.Where(b => b.UserId.Equals(filter.UserId)); } return(_mapper.Map <IReadOnlyCollection <BalanceDto> >(balances)); }