/rent-truck

Aplicación para gestión de alquiler de vehículos de carga

Primary LanguageTypeScript

Alquiler de camiones para trasteos

Esta es una aplicación que ayuda a gestionar el alquiler de diferentes tipos de vehículos para realizar trasteos

Installation

Below is an example of how you can instruct your audience on installing and setting up your app. This template doesn't rely on any external dependencies or services._

  1. Clone the repo
    git clone https://github.com/your_username_/Project-Name.git
  2. Usa el comando npm install para instalar las dependencias con node v18
    npm install
  3. Enter your API in config.js
    const API_KEY = 'ENTER YOUR API';
  4. Run project
    npm run dev
  5. Run tests
    npm run test

Comandos prisma

  1. Sincronizar la base de datos con el esquema
    npx prisma db push
  2. Abre playground de base de datos
    npx prisma studio
  3. Create the migration:
    npx prisma migrate dev --name init
  4. Recreate migration:
    npx prisma migrate dev

Requerimientos

  • Agregar, actualizar usuarios
    • Evitar almacenar dos usuarios con el mismo email
  • Agregar, actualizar vehiculos
    • Evitar almacenar dos vehiculos con la misma placa
  • Rentar un vehiculo
    • Maximo de horas permitidas debe ser 8h
    • Minimo de horas permitidas debe ser 2h
    • No es posible almacenar una renta con una fecha expirada. ej: 2018-05-03 (fecha pasada)
    • Validar que solo sea posible rentar un vehiculo en las franjas horarias disponibles. horarios permitidos (min 4am, max 4pm)
    • Solo es posible arrendar un vehiculo en dias laborales (Lunes-Viernes)
    • Validar que un vehiculo no se pueda rentar mas de una vez en la misma franja horaria

Tests

  • Un usuario no puede ser almacenado si el email ya existe en la base de datos
  • Un vehiculo no puede ser almacenado si la placa ya existe en la base de datos
  • [] Un vehiculo no puede ser rentado si es un dia festivo
  • [] Un vehiculo no puede ser rentado despues de las 4pm
  • [] Un vehiculo no puede ser rentado si el horario se cruza con un servicio ya asignado
  • [] Un vehiculo no puede ser rentado en una fecha pasada

Built With

This section should list any major frameworks/libraries used to bootstrap your project. Leave any add-ons/plugins for the acknowledgements section. Here are a few examples.

  • Nodejs
  • Express framework
  • Prisma ORM
  • Valibot

Contributing

Las solicitudes de extracción son bienvenidas. Para cambios importantes, abra un problema primero para discutir lo que le gustaría cambiar.

Asegúrese de actualizar las pruebas según corresponda.

License

Distributed under the MIT License. See LICENSE.txt for more information.

Contact

Santiago Rodriguz - srodriguezm95@gmail.com

Project Link: https://github.com/santrodriguez-dev/rent-truck