Skip to content

Yair

View of Yair Tasks
Activity Description
Status
Advance
Owner
Comments
Definición de la Arquitectura General
No se ha documentado de manera oficial, pero si se definió que no fuera monolitica, sino tipo REST-API
Front-End
Back-End
AJAX Comms
Se ha ido agregando aquí mismo en conforme se ha requerido definir
DB Diagram en
Se hizo, pero hay varias retros, se tiene que generar una segunda revisión, gracias a la definición del DB Emularon on ayudo bastante, ahorita vamos en la revisión 6 con funcionalidad manual y considerando los flujos de datos para hacer el cálculo basado en un Kanban
Agregar 3 tablas nuevas
Project Planning
El software realmente no es tan amigable y tan rápido, es pesado y a comparación de Coda, Jira no es tan eficiente
Dado que Iván no ha estado disponible, pasamos las tareas a
DB Emulator on
Se ha avanzado bastante en cuanto a la concepción de la idea, pero faltan detalles
Kanban Method Definition
Para generar la lógica de negocio, requerimos documentar de manera sencilla como funcionará la generación de la lista de supermercado basandonos en el método de kanban
Git & GitHub Strategy for Front-End
Aunque ya tenemos ciertas políticas y una serie de buenas prácticas, necesitamos documentar y ejecutar de manera organizada el REPO !!!
Tenemos un Diagrama para explicarlo
Pero requerimos de un control de las derivaciones y plantillas
Ya se generó el REPO
Esta es una actividad ciclica que termina hasta el final del proyecto
Falta hacer la última derivación
Hacer pruebas e integrar ya una versión de DEV
Si ya no hay más optimizaciones se va a main
AJAX End-Points JSON Definition
Dado que será una arquitectura REST-API (y no molitica con Templates) requerimos comunicar de manera asincrona:
Front-End, Back-End &Ajax
JQuery, JSON & EndPoint Views
Que debe de entregar cada End-Point de acuerdo a cada requerimiento:
End-Points vs QueryParams → hasta donde uno / hasta donde otro ??
Generar la lista
Se hicieron los más urgentes, faltan los demás
Se han estado haciendo las validaciones en Postman, lo cual es más eficiente, ya que tenemos los resultados en tiempo real
AJAX Documentation
Postman Config
Postman Testings
Se va a estar haciendo la documentación de los End-Points
Los mentores van a estar haciendo la revisión
Necesitamos un minimo de integración del back-end para hacerlo
ya se configuro el workspace, se organizo por Apps y End-Points - ok
AJAX Programming
Forms for Login
Forms Validation
(autenticar e ingresar)
/api/users/id/
/api/core/login
/api/core/register
/api/core/logout
backend → agregar los respectivos end-points
validar que no se repitan los usernames
validar que no se repitan los email
AJAX Programming
User Profile
(3 Views & 3 End-Points
retrieve / create / update
/api/users/id/profile/
ajax
json
crud
html classes and ids
AJAX Programming
JQuery
Planificador de Menú
(Carrusel)
falta el corazón favoritos
Crear Default CARD para fechas que no tienen menú + modal
Crear el link para ir a selección de receta cuando no hay en el menú
/api/users/id/planner/id/menu/
ajax → se tiene el retrieve - ok / falta el post y updates
→ falta el update / manejador de eventos
ok - json → falta del BE el user_recipe → solo index, faltan datos !!!
ok → también falto favorite
carrusel component → se deja como deuda técnica y se sigue con cards
→ se le agrega un day-picker para navegar através de los días
crud → solo agregar o remover de la lista de menú / falta update
html classes and ids
falta href para navegación a detalle menú
AJAX Programming
Visualizar una receta
Necesitamos saber si viene de completar menú / o de visualizar receta
Discriminar el salvar hacia favoritos, NO a menú
/api/users/id/planner/id/menu/id/
ok - ajax → container handler / botón de agregar receta
necesitamos saber de donde viene ??? query params ??
ok - json → falta tiempo de prep / recipe detail en todos los items
okvalidar con BE por que se trae tanto detalle, no se necesita
ok - crud → solo retrieve
html classes and ids → standar acorde al algoritmo
AJAX Programming
User Favorites
retrieve
/api/users/id/favorites/id/
ok - ajax → generación de algoritmo template
ok - json
crud → falta hacer la función para update favorite: True | False
html classes and ids
Git & GitHub Strategy
for Back-End
Generar la estrategia para el repo en Git-Hub del Back-End
Ya se generó el repo y se pusieron las reglas principales del pull-request
Esta actividad es ciclica y no termina sino hasta el final del proyecto
Falta hacer la última derivación
Hacer pruebas e integrar ya una versión de DEV
Si ya no hay más optimizaciones se va a main
Back-End DJANGO Master Template
También se va a hacer una plantilla base para la parte de Back-End
Se esta haciendo el CookBook
DJANGO Configs
Incluye lo siguiente:
.gitignore
Envs
Settings
Admins
Falta, por retro de David esto va al último
Token
Auth
DJANGO Admin Config
Hay que generar las vistas minimas necesarias para la carga de datos
registro
users
supermarket
recipes
DJANGO Apps
Donde estandarizaremos y modularizaremos a tráves de Apps las funciones especificas de una Aplicación
Manejo de las recetas
Manejo de los usuarios
Manejo del supply chain
DJANGO DB Models
Para hacer toda la interacción con la Base de Datos
ok - Falta users auth → OneToOneField()
ok - sintaxis → ej. planner_id → django conflicts
ok - Fields config → not null, max_length, unique, min-max, default,
ok - Falta function → str() → para conversión de obj. to str
ok - Falta foreign Keys → import models, on_delete, related_name
ok - Falta validar campos JSON → utensilios y preferencias: Se define agregar tablas → done
ok - En base a la interacción con POSTMAN y con los resultados se valida que ha quedado de manera funcional y estable
Database Prototype testings in sqlite3
Se requiere hacer pruebas primero, antes de liberarse a la base de datos formal en Postresql
ok - Hay que validar modelos, relaciones, campos
ok - falta agregar nuevas tablas
ok - migracion
ok - carga de datos para más pruebas
ok - back-ups
ok - testings con el ORM
DJANGO Serializers
Donde daremos validación y formato en las transacciones entre la DB, las vistas y los End-Points
implementar validación de semanas y fechas
validación no puede haber números negativos
DJANGO Views
Donde tendremos la lógica de negocio y la publicación de los End-Points
implementar validación de semanas y fechas
validación no puede haber números negativos
Falta implementar CRUD en las que apliquen
DJANGO URLs
Donde tendremos todos los enrutamientos y la logica de Direccionamiento
admin
api básicos
DJANGO API
Interfase estándar al exterior, pero todo la lógica de negocio y datos sensibles estarán encapsulados sin ser expuestos
Implementación del REST Framework - ok
Sugerencias de Recetas para el usuario
Generador de menú semanal | quincenal para el usuario
Métodos de busqueda para el usuario - ok
Método Kanban para generar la lista del supermercado
DJANGO End-Points
Security Config
Permissions Configuration
permissions. py
DJANGO End-Points
User Login
/api/users/login/
crud → post - ok
token, id, username - ok
logout
permisos
DJANGO End-Points
List of Users
/api/users/
List - ok
create
DJANGO End-Points
User ID Details
/api/users/id/
details - ok
retrieve
DJANGO End-Points
User Full Profile
Retrieve OK
/api/users/id/profile/
details - ok
people - ok
food - ok
appliance - ok
update
DJANGO End-Points
User Profile
CRUD (Post / Retrieve)
/api/users/profiles/qty/
/api/users/profiles/apps/
/api/users/profiles/food/
DJANGO End-Points
User Suggestions
/api/users/profiles/suggestion/
DJANGO End-Points
List of User Planners
/api/users/id/planner/
pk - ok
list - ok
create
DJANGO End-Points
User Planner ID Details
/api/users/id/planner/id/
user id - ok
pk - pk - ok
detail - ok
update
DJANGO End-Points
User Menu
Consulta por fecha exacta dentro de un periodo
Consultar fecha actual vs inicio periodo
/api/users/id/planner/id/menu/
user id - ok
planner id - ok
menu - pk - ok
list - ok
create
DJANGO End-Points
User Menu Item
Consulta por fecha exacta dentro de un periodo
Consultar fecha actual vs inicio periodo
/api/users/id/planner/id/menu/id/
user id - ok
planner id - ok
menu id - ok
menu item pk - ok
detail - ok
create
update
DJANGO End-Points
User Sprmkt List
retrieve
/api/users/id/planner/id/menu/sprmkt_list/
user id - ok
planner id - ok
detail - ok
update - (checkbox selection)
DJANGO End-Points
User Favorite Recipes
retrieve
/api/users/id/favorites/
user id - ok
list - ok
update
checked
favorites - (hearth selection)
DJANGO End-Points
Recipe List
/api/recipes/
list - ok
categoria
ordering
DJANGO End-Points
Recipe Search
/api/recipes/?search=
list - ok
search - by title & meal type - ok
grouping - ok
ordering - ok
DJANGO End-Points
Recipe ID Details
/api/recipes/id/
categoria
details
DJANGO End-Points
Recipe Full Viewer
/api/recipes/id/viewer/
categoria - ok
details - ok
ingredients - bug: cannot import unitconvertion
appliances - ok
procedure - ok
DJANGO End-Points
Recipe List by Ingredient
/api/recipes/ingredients/
ingredient categories list (9)
DJANGO End-Points
Recipe Detail by Ingredient ID
Search by ingredient, not by recipe
/api/recipes/ingredients/?search=
ingredient categories list
recipe list by category id
list
Git & GitHub Strategy
for Database Backup
Se define un tercer repo para tener aparte con su control de versionamiento los respealdos de la base de datos
Esta en modo prototipo - ok
Después en modo DEV
y por último main
Data Entry for DataBase
pre-loading
SQLite3
Necesitamos precargar la base de datos con información funcional
ok - Precarga de datos base como unidades, tipo de empaque, dptos. etc.
nth - Falto considerar la temporada en la parte frutas y verduras
ok - falta considerar condimentos y cereales, no cuadra con gluten
ng - se define pollo, pavo, etc. → aves
ok - falta considerar pescados y mariscos
ok - sprmkt
ok - recipes
ok - users
Database DEV release
PostgreSQL
Una vez que se hayan realizado ciertas pruebas, los modelados esten estables y los datos sean congruentes se hará un pre-release en modo DEV ante de Producción:
Models - ok → nth → un solo menú, una lista del super por planner job
Django Admin - ok
ORM - ok
End-Points
Procesamiento Interno
Data Entry for DB Dev Released
PostgreSQL
Para tener una sola fuente de verdad, el plan es que la DB este en AWS y de manera remota se este llenando y no tener diferentes versiones de los fixtures
Database Cloud Deploy
Necesitamos que realmente sea en la nube, y no de manera local
Database Prod. Oficial Release
Una vez que se hayan hecho todos los testings, y que ya sepamos a que nube vamos a subir la base de datos
Configuración de AWS para BACK-END
Todavia no llegamos a esta parte, pero aqui es desde donde se hara el montaje y despliegue del back-end
Web Scraping Testing
Yair ha estado trabajando en esto, se han obtenido resultados, pero falta limpiar más la información y automatizarla
No results from filter
Want to print your doc?
This is not the way.
Try clicking the ··· in the right corner or using a keyboard shortcut (
CtrlP
) instead.