Example #1
0
        public async Task <QueryResponseBO <WalletDetailsContract> > Handle(WalletDetailsQuery request, CancellationToken cancellationToken)
        {
            var result = await _dataLayer.TblUserWallets
                         .Where(i => i.WalletTypeId == request.WalletId)
                         .Where(i => i.UserAuth.UserName == request.UserName)
                         .Include(i => i.UserAuth)
                         .Include(i => i.WalletType)
                         .FirstOrDefaultAsync(cancellationToken: cancellationToken);

            if (result == null)
            {
                return(new()
                {
                    Message = "The requested resource was not found",
                    HttpStatusCode = HttpStatusCode.NotFound
                });
            }

            var entity = result.Adapt <WalletDetailsContract>();

            entity.WalletName = result.WalletType.Name;
            entity.WalletCode = result.WalletType.Code;

            return(new()
            {
                HttpStatusCode = HttpStatusCode.Accepted,
                Response = entity
            });
        }
Example #2
0
        public async Task <JsonResult> Get(Guid guid, string userName, int walletId)
        {
            var request = new WalletDetailsQuery
            {
                Uid      = guid,
                UserName = userName,
                WalletId = walletId
            };
            var result = await _mediator.Send(request);

            return(new(result));
        }