Example #1
0
        public async Task <IActionResult> List(
            [FromQuery] FilterFinancialTransactionQueryDto filterQueryDto)
        {
            var result = await _unitOfWork.FinancialTransactionService.List(filterQueryDto);

            return(result.ApiResult);
        }
Example #2
0
        public async Task <Result <PagedList <FinancialTransactionDto> > > List(
            FilterFinancialTransactionQueryDto filterQueryDto)
        {
            var transactions = await WhereAsyncAsNoTracking(c =>
                                                            (filterQueryDto.FromDate == null || c.CreateDate > filterQueryDto.FromDate) &&
                                                            (filterQueryDto.ToDate == null || c.CreateDate < filterQueryDto.ToDate) &&
                                                            (filterQueryDto.PayerUsername == null ||
                                                             c.Payer.Username.ToLower().Contains(filterQueryDto.PayerUsername.ToLower())) &&
                                                            (filterQueryDto.ReceiverUsername == null || c.Receiver.Username.ToLower()
                                                             .Contains(filterQueryDto.ReceiverUsername.ToLower())) &&
                                                            (filterQueryDto.AuthorUsername == null || c.Author == null || c.Author.Username.ToLower()
                                                             .Contains(filterQueryDto.AuthorUsername.ToLower()))
                                                            , filterQueryDto, t => t.Payments, t => t.Payer, t => t.Author, t => t.Receiver);

            var response = transactions.MapTo <FinancialTransactionDto>(_mapper);

            return(Result <PagedList <FinancialTransactionDto> > .SuccessFull(response));
        }