Fecha inicio: 13/12/2023
Fecha fin: 20/12/2023
Fecha respuesta: 28/12/2023
- MongoDB
- Typescript
- ExpressJS
- GraphQL
#### Descripción:
Los usuarios cliente podrán cargar productos vinculados a sus cuentas. Luego, podrán listar y/o buscar productos donde podrán visualizar el detalle de la cuenta asociada a cada producto.
Este proyecto está conectado a 2 bases de datos eiAccounts y eiInventories. La lista de productos está relacionada a la cuenta con la que se asoció al momento de la carga inicial.
- Crear una mutación para agregar una cuenta cliente
- Crear una query para listar las cuentas enviando parámetros de paginación y filtrado de búsqueda (nombre/email) usando el método aggregate de mongoose
- Crear una mutación para agregar un array de productos (debe asociarse a una cuenta cliente)
- Crear una query listar los productos enviando parámetros de paginación y filtrado de búsqueda (nombre/sku) usando el método aggregate de mongoose
- Sobre la query anterior, se debe agregar al schema del Producto, el campo Account para obtener los detalles de la cuenta asociada
Para las mutaciones agregar archivos mockups en el proyecto que sirva para la creación de cuentas y/o productos
Opcional: Se considerará el uso de enums, types en root, validaciones en queries y mutaciones y creaciones de carpetas utils o helpers
Según criterio del desarrollador
- Añadir eslint
- Añadir prettier
- Añadir test unitarios
- Añadir un logger
#### Extras:
- ¿Cómo crear un usuario en mongodb shell?
~ db.createUser({ user: 'equip', pwd: 'BackendChallenge', roles: ['readWrite', 'dbAdmin'] })
- Iniciar servicio mongdb community
brew services start [email protected]
- Detener servicio mongdb community
brew services stop [email protected]