Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Motorcycle Rental by Delivery Driver #10

Open
chariondm opened this issue Mar 14, 2024 · 0 comments
Open

Motorcycle Rental by Delivery Driver #10

chariondm opened this issue Mar 14, 2024 · 0 comments
Assignees
Labels
enhancement New feature or request

Comments

@chariondm
Copy link
Owner

chariondm commented Mar 14, 2024

As a delivery driver,
I want to rent a motorcycle for a specified period,
So that I can use it for my deliveries during that time.

Acceptance Criteria:

  • The driver must be licensed in category A to rent a motorcycle.
  • The rental agreement must specify the start, end date, and expected return time.
    • The start of rental date always starts after the rental agreement is created.
  • Only available motorcycles at the specified time can be rented.
  • The system must calculate the total cost of the rental based on the rental plan and any additional fees incurred.
  • The driver must receive a notification of the successful rental initiation and the final rental cost.

Note:

  • Eu como entregador quero alugar uma moto por um período.
    • Os planos disponíveis para locação são:
      • 7 dias com um custo de R$30,00 por dia
      • 15 dias com um custo de R$28,00 por dia
      • 30 dias com um custo de R$22,00 por dia
    • A locação obrigatóriamente tem que ter uma data de inicio e uma data de término e outra data de previsão de término.
    • O inicio da locação obrigatóriamente é o primeiro dia após a data de criação.
    • O entregador só conseguirá concluir na locação caso exista motos disponíveis.
    • Somente entregadores habilitados na categoria A podem efetuar uma locação
@chariondm chariondm added the enhancement New feature or request label Mar 14, 2024
@chariondm chariondm self-assigned this Mar 21, 2024
chariondm added a commit that referenced this issue Mar 22, 2024
Include a comprehensive Design Document for the new Rental Module in the Moto Delivery Manager system. This document outlines the module's objectives, system components, operation flow, architectural considerations, implementation details, and concludes with a summary of the module's impact on the system. The DesignDoc aligns with the latest system specifications and introduces asynchronous processing with AWS SQS, Restful API usage, and a clear depiction of the rental lifecycle management.

refs.: #10, #11 and #22
chariondm added a commit that referenced this issue Mar 22, 2024
Include a comprehensive Design Document for the new Rental Module in the Moto Delivery Manager system. This document outlines the module's objectives, system components, operation flow, architectural considerations, implementation details, and concludes with a summary of the module's impact on the system. The DesignDoc aligns with the latest system specifications and introduces asynchronous processing with AWS SQS, Restful API usage, and a clear depiction of the rental lifecycle management.

refs.: #10, #11 and #22
chariondm added a commit that referenced this issue Mar 24, 2024
… queuing with AWS SQS integration

- Add AwsSQSMessageBroker project for message queuing via AWS SQS.
- Update init-localstack.sh to include rental agreement request queues for LocalStack setup.
- Introduce new API endpoints in DeliveryDriverHttpApiAdapter for queuing rental agreement requests.
- Expand application core with use cases and validators for rental agreement request processing.
- Adjust DeliveryDriverRepository to support new rental management functionalities.
- Add unit tests for rental agreement request validation and execution.

This commit introduces the capability for delivery drivers to queue rental agreement requests, leveraging AWS SQS for asynchronous message processing. The changes include updates to the application core, adapters, and unit tests to ensure functionality and maintainability.

#10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: In progress
Development

When branches are created from issues, their pull requests are automatically linked.

1 participant