DeliveryApi: the API layer that exposes the endpoints.DeliveryDomain: the business logic layer that contains the domain models and services.DeliveryInfrastructure: the infrastructure layer that deals with data persistence using MongoDB and message queues using RabbitMQ.DeliveryBackground: the background task that updates expired deliveries state every hour.DeliveryApiTests: tests the Delivery endpoints.DeliveryDomainTests: tests the business logic.DeliveryInfrastructureTests: tests the database and message broker operations.POST /users/authenticate - Authenticate user.GET /users - Gets paged users.GET /users/{userID} - Gets the user by user id.POST /deliveries/create - Creates a new delivery.GET /deliveries - Gets paged deliveries.GET /deliveries/{deliveryId} - Gets the delivery by delivery id.PUT /deliveries/approve/{deliveryId} - Approves the delivery.PUT /deliveries/complete/{deliveryId} - Completes the delivery.PUT /deliveries/cancel/{deliveryId} - Cancels the delivery.DELETE /deliveries/{deliveryId} - Deletes the delivery by delivery id.Posted Jun 30, 2023
A containerized .NET Core application with a RESTful API for managing deliveries, utilizing MongoDB and RabbitMQ, with user authentication and authorization.
0
4