Examen Programador JR
Examen Programador JR
Objetivo.
Desarrollar una interfaz gráfica, que realice inserción, consulta, búsqueda, borrado, activación y
desactivación de productos, diseñar una base de datos relacional para el manejo de productos.
La tabla principal se deberá llamar “productos” la cual deberá contener los siguientes campos:
1. id
2. nombre
3. sku
4. descripción
5. estatus
Se deberá crear una tabla satélite para controlar los precios e I.V.A. de los mismos que se llamara
“productos_precios” y deberá contener los siguientes campos:
1. id
2. id_producto
3. precio_lista
4. precio_especial
5. descuento
6. porcentaje_iva
7. status
Se creara una tabla para el control de inventario la cual se llamara “productos_stock” y deberá
contener los siguientes campos:
1. id
2. id_producto
3. sku
4. cantidad
5. status
Definición de frontend.
Para la interfaz gráfica se deberá utilizar html, jquery y bootstrap y se deberá crear de acuerdo a los
siguientes requerimientos:
1. La interfaz principal deberá listar en todo momento los registros de la base de datos, en caso
contrario la leyenda “Aún no hay productos en el sistema”, esto se deberá realizar con una
tabla responsiva y dinámica usando jquery y bootstrap, la tabla que muestra los registros deberá
actualizarse vía AJAX cada 50 segundos.
3. El “Buscador” deberá hacer busquedas sobre el sku, nombre y descripción del producto de
manera asíncrona y listar los resultados de manera dinámica en la tabla
4. La sección de acciones deberá incluir botones para el borrado lógico del producto, la
desactivación y reactivación del mismo siguiendo los siguientes estatus:
0=Borrado
1=Activo
2=Inactivo
Definición de backend.
Para el backend vamos a emular una estructura de MVC no muy elaborada para la cual se creara una
archivo llamado “funciones.js” del lado del frontend que a su vez llamara al archivo “aciones.php” el
cual recibira todas las peticiones de la interfaz y a su vez ejecutara los métodos que se crearan para el
CRUD en la clase que se nombrará “class.productos.php”, se pueden apoyar con el siguiente ejemplo
gráfico.
Importante.
Se tomara como un plus, las validaciones tanto del formulario, prevención de inyeccion de sql y
validaciones de procesamiento en javascript/jQuery.