Emoji :calendar_spiral: Fecha

Aug 24, 2023

Emoji :busts_in_silhouette: Participantes

Emoji :goal: Objetivos

El objetivo de la sesión es poder levantar el ambiente backend de repartidores, en nuestras computadoras personales.

Emoji :speaking_head: Temas de debate

Hora

Presentador

Notas

Link de sesión

10:00am - 11.30am

  • NodeJs (actualmente se trabaja con la versión V16.17.0)

  • Git

  • Visual Studio Code

Knowledge Transfer Backend session

Emoji :thinking: Supuestos

Enlistar los supuestos que se tengan sobre usuarios, dependencias de otras apps, restricciones técnicas, reglas de negocio que influyan como supuestos para llevar a cabo la app repartidores.

Supuestos

Descripción de supuestos

1

Tener todos los permisos para este proyecto tr-spinfood-btd-backend-nodejs
En caso de ser necesario, levantar un ticket con Service Desk TI Digital@FEMSA

2

clonar proyecto con el comando

git clone https://github.com/digitaltitransversal/tr-spinfood-btd-backend-nodejs.git

git clone git@github.com:digitaltitransversal/tr-spinfood-btd-backend-nodejs.git

3

Abrir IDE de preferencia (usaremos Visual Estudio Code Version: 1.81.0 (Universal))

4

Node.js Version 16.17.1

5

DB DEV repartidores

ssh -i "postgres-bastion.pem" -L 127.0.0.1:3306:spinfood-sf-dev.cluster- cgks9ak6ogpa.us-east-1.rds.amazonaws.com:3306 ubuntu@ec2-18-234-195- 23.compute-1.amazonaws.com -p 22

5.1

psql -h spinfood-sf-dev.cluster-cgks9ak6ogpa.us-east-1.rds.amazonaws.com -U b2d -d spinfood_repartidores

6

DB QA Repartidores

ssh -i "postgres-bastion_QA.pem" -L 127.0.0.1:3306:spinfood-sf-qa.cluster- ckz3ib85zxkv.us-east-1.rds.amazonaws.com:3306 ubuntu@ec2-44-205-253- 197.compute-1.amazonaws.com -p 22

6.1

psql -h spinfood-sf-qa.cluster-ckz3ib85zxkv.us-east-1.rds.amazonaws.com -U b2d -d spinfood_repartidores

7

PEM DEV Repartidores:

repartidores.pem

8

PEM QA Repartidores:
repartidores_qa.pem

9

Variables de entorno (.env):

.env

Emoji :white_check_mark: Elementos de acción

Pasos para la instalación y compilación

DB repartidores, usan tableplus como IDE (https://tableplus.com/download)
introducción a cada tabla y contexto de atributos y elementos de las tablas con sus relaciones
introducción a la API
Contexto de las variables de entorno (.env)


Emoji :nut_and_bolt: Componentes esenciales

Emoji :id: Users.services

Se construye con un authGuard que construye con todos los atributos de un usuario, valida únicamente Si ya existe el teléfono en la tabla de repartidores, todos los endpoints bajo el prefijo de users.

Se elimina: haciendo un remote pero no funciona, está trabajado a mitad pero no está siendo implementado.

Órdenes

Se enrola la orden al repartidor con el Create.order.dto pero no se dispara desde aquí, se dispara desde el post de b2b de newOrderAsignation.

Con el BearerToken se hacen la asignación entre APIs.

Para crear orden:

  • obtiene datos del repartidor

  • query de order asignation

  • revisar si el id de la orden ya existe y fue aceptada; arroja la excepción. si ya existe la petición pero está en espera; la elimina.

  • la data de la push contiene: id orden, nombre de negocio, comentario de la orden, latitud y longitud del cliente, latitud y longitud del negocio


Emoji :open_file_folder: Archivos

Emoji :eight_pointed_black_star: Postman Repartidores

Emoji :eight_pointed_black_star: Backups DB repartidores

Emoji :eight_pointed_black_star: Documento entrega de repositorios y accesos

Emoji :eight_pointed_black_star: Manual de usuario repartidores

Emoji :eight_pointed_black_star: .env


Emoji :arrow_heading_up: Pendientes de entrega


  1. actualizar repo