コード例 #1
0
ファイル: OrdersController.cs プロジェクト: n0eR/BookStore
        public async Task <IActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var order = Mapper.Map <OrderDTO>(await OrderGetService.GetAsync(new OrderIndentityModel((int)id)));

            if (order == null)
            {
                return(NotFound());
            }

            var updateDto = new OrderUpdateDTO
            {
                Id         = order.Id,
                Arrived    = order.Arrived,
                CustomerId = order.Customer.Id,
                BookId     = order.Book.Id,
                Date       = order.Date
            };

            ViewData["BookId"]     = new SelectList(Mapper.Map <IEnumerable <BookDTO> >(await BookGetService.GetAsync()), "Id", "Title", updateDto.BookId);
            ViewData["CustomerId"] = new SelectList(Mapper.Map <IEnumerable <CustomerDTO> >(await CustomerGetService.GetAsync()), "Id", "FullName", updateDto.CustomerId);
            return(View(updateDto));
        }
コード例 #2
0
ファイル: OrdersController.cs プロジェクト: n0eR/BookStore
        public async Task <IActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var order = Mapper.Map <OrderDTO>(await OrderGetService.GetAsync(new OrderIndentityModel((int)id)));

            if (order == null)
            {
                return(NotFound());
            }

            return(View(order));
        }
コード例 #3
0
        public async Task ValidateAsync_OrderExists_DoesNothing()
        {
            // Arrange
            var orderContainer = new Mock <IOrderContainer>();

            var order           = new Order();
            var orderDataAccess = new Mock <IOrderDataAccess>();

            orderDataAccess.Setup(x => x.GetByAsync(orderContainer.Object)).ReturnsAsync(order);

            var orderGetService = new OrderGetService(orderDataAccess.Object);

            // Act
            var action = new Func <Task>(() => orderGetService.ValidateAsync(orderContainer.Object));

            // Assert
            await action.Should().NotThrowAsync <Exception>();
        }
コード例 #4
0
ファイル: CustomersController.cs プロジェクト: n0eR/BookStore
        public async Task <IActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }


            var customer = Mapper.Map <CustomerDTO>(await CustomerGetService.GetAsync(new CustomerIndentityModel((int)id)));

            if (customer == null)
            {
                return(NotFound());
            }

            ViewData["Orders"] = Mapper.Map <IEnumerable <OrderDTO> >(await OrderGetService.GetByCustomerAsync(new CustomerIndentityModel((int)id)));

            return(View(customer));
        }
コード例 #5
0
        public async Task ValidateAsync_OrderNotExists_ThrowsError()
        {
            // Arrange
            var fixture = new Fixture();
            var id      = fixture.Create <int>();

            var orderContainer = new Mock <IOrderContainer>();

            orderContainer.Setup(x => x.OrderId).Returns(id);

            var order           = new Order();
            var orderDataAccess = new Mock <IOrderDataAccess>();

            orderDataAccess.Setup(x => x.GetByAsync(orderContainer.Object)).ReturnsAsync((Order)null);

            var orderGetService = new OrderGetService(orderDataAccess.Object);

            // Act
            var action = new Func <Task>(() => orderGetService.ValidateAsync(orderContainer.Object));

            // Assert
            await action.Should().ThrowAsync <InvalidOperationException>($"Order not found by id {id}");
        }
コード例 #6
0
ファイル: OrdersApiController.cs プロジェクト: n0eR/BookStore
 public async Task <OrderDTO> Get(int id)
 {
     return(Mapper.Map <OrderDTO>(await OrderGetService.GetAsync(new OrderIndentityModel(id))));
 }
コード例 #7
0
ファイル: OrdersApiController.cs プロジェクト: n0eR/BookStore
 public async Task <IEnumerable <OrderDTO> > Get()
 {
     return(Mapper.Map <IEnumerable <OrderDTO> >(await OrderGetService.GetAsync()));
 }
コード例 #8
0
ファイル: OrdersController.cs プロジェクト: n0eR/BookStore
 public async Task <IActionResult> Index()
 {
     return(View(Mapper.Map <IEnumerable <OrderDTO> >(await OrderGetService.GetAsync())));
 }