Example #1
0
        public async Task <ActionResult <IAsyncEnumerable <SupplierDto> > > GetAll()
        {
            var query  = new GetAllSuppliersQuery();
            var result = await mediator.Send(query);

            return(result.Success
                ? (ActionResult <IAsyncEnumerable <SupplierDto> >)Ok(result.Data.Select(SupplierDto.FromCoreSupplierDTO))
                : BadRequest(result.ErrorMessages));
        }
Example #2
0
        public async Task <IActionResult> GetSuppliers()
        {
            FirebaseUser         user  = HttpContext.GetFirebaseUser();
            GetAllSuppliersQuery model = new GetAllSuppliersQuery()
            {
                firebaseId = user.UserId
            };
            ResultWrapper <GetAllSuppliersOutput> result = new ResultWrapper <GetAllSuppliersOutput>();

            result = await _mediator.Send(model);

            return(Ok(result));
        }
        public async Task <ResultWrapper <GetAllSuppliersOutput> > Handle(GetAllSuppliersQuery request, CancellationToken cancellationToken)
        {
            ResultWrapper <GetAllSuppliersOutput> result = new ResultWrapper <GetAllSuppliersOutput>();

            var tDataList = await _dbContext.TUser.Where(x => x.Role == Infrastructure.AppEnums.RoleEnum.Supplier).ToListAsync();

            var list = tDataList.Select(x => new PublicListItem()
            {
                Enabled  = x.Enabled,
                Selected = x.FireBaseId == request.firebaseId,
                Text     = $"{x.RestaurantName}-{x.FirstName} {x.LastName} [{x.Email}]",
                Value    = x.Id.ToString(),
                Image    = string.Empty
            })
                       .ToList();

            result.Status = true;
            result.Result = new GetAllSuppliersOutput()
            {
                list = list
            };

            return(result);
        }
        public async Task TestCreateSuccess()
        {
            var cmd = new CreateSupplierCommand
            {
                Email = "*****@*****.**",
                Name  = "Pascal",
                Phone = "+41 79 456 45 45"
            };

            await using var context = DatabaseHelper.CreateInMemoryDatabaseContext(nameof(TestCreateSuccess));
            var cmdHandler  = new CreateSupplierCommandHandler(context);
            var cmdResponse = await cmdHandler.Handle(cmd, CancellationToken.None);

            var supplierId = cmdResponse.Data;

            Assert.True(cmdResponse.Success);
            var queryOneHandler = new GetSupplierByIdQueryHandler(context);
            var queryOne        = new GetSupplierByIdQuery {
                Id = supplierId
            };
            var queryOneResponse = await queryOneHandler.Handle(queryOne, CancellationToken.None);

            Assert.True(queryOneResponse.Success);
            Assert.Equal(supplierId, queryOneResponse.Data.Id);
            Assert.Equal(cmd.Email, queryOneResponse.Data.Email);
            Assert.Equal(cmd.Name, queryOneResponse.Data.Name);
            Assert.Equal(cmd.Phone, queryOneResponse.Data.Phone);

            var queryAll         = new GetAllSuppliersQuery();
            var queryAllHandler  = new GetAllSuppliersQueryHandler(context);
            var queryAllResponse = await queryAllHandler.Handle(queryAll, CancellationToken.None);

            Assert.True(queryAllResponse.Success);
            Assert.NotEmpty(queryAllResponse.Data);
            Assert.Contains(queryAllResponse.Data, s => s.Id.Equals(supplierId));
        }
Example #5
0
 public async Task <IList <Supplier> > Handle(GetAllSuppliersQuery request, CancellationToken cancellationToken)
 {
     return(await _context.Suppliers.AsNoTracking().ToListAsync(cancellationToken));
 }
Example #6
0
 public Task <List <SupplierDto> > Handle(GetAllSuppliersQuery query)
 => _ctx.Suppliers.ProjectToListAsync <SupplierDto>(_mapper.ConfigurationProvider);