Saltar al contenido

file_download
Proyecto final
N/A
play_circle_outline
vista previa
7 minutos

play_circle_outline
vista previa
2 minutos
play_circle_outline
vista previa
6 minutos
play_circle_outline
vista previa
9 minutos
play_circle_outline
vista previa
7 minutos
play_circle_outline
vista previa
4 minutos
play_circle_outline
Configurar modelo Document
7 minutos
play_circle_outline
Configurar modelo DocumentApproval
17 minutos
play_circle_outline
Añadir usuarios con Seeders
2 minutos

play_circle_outline
Sistema completo de autenticación mediante botones para cada rol
8 minutos

play_circle_outline
Listar documentos para cualquier rol/usuario
15 minutos
play_circle_outline
Formulario de alta de documentos
7 minutos
play_circle_outline
Validar alta de documentos
2 minutos

play_circle_outline
Passable alta de documentos
6 minutos
play_circle_outline
Proceso crear documento
5 minutos
play_circle_outline
Proceso crear secuencia de aprobaciones para cada rol
4 minutos
play_circle_outline
Acción con Pipeline para ejecutar los procesos
7 minutos
play_circle_outline
Procesar alta documentos desde controlador utilizando Actions
4 minutos

play_circle_outline
Detalle con Timeline de un Documento
11 minutos
play_circle_outline
Método para obtener aprobaciones pendientes
8 minutos
play_circle_outline
Vista completa aprobaciones pendientes con formulario
12 minutos
play_circle_outline
Validar procesamiento de aprobaciones
4 minutos

play_circle_outline
Pasable actualizar aprobaciones
2 minutos
play_circle_outline
Proceso validar aprobación
6 minutos
play_circle_outline
Proceso actualizar aprobación y side effects
8 minutos
play_circle_outline
Proceso actualizar estado del documento raíz
4 minutos
play_circle_outline
Acción con Pipeline para ejecutar los procesos
3 minutos
play_circle_outline
Procesar aprobación de documentos desde controlador
8 minutos
play_circle_outline
Tareas para que puedas mejorar el sistema
4 minutos
Vídeo de introducción Sistema de Aprobación de Documentos Laravel
play_circle_filled

Desbloquea el curso

starVer planes de suscripción
school

¿Qué aprenderás?

Los sistemas de aprobación de documentos son fundamentales en cualquier organización, pero implementar un flujo de aprobaciones secuencial y jerárquico presenta desafíos únicos que van más allá de un simple CRUD. La mayoría de implementaciones fallan en manejar correctamente la complejidad de los flujos de aprobación, estados de documentos y validaciones de permisos.

Un sistema de aprobaciones real requiere manejar múltiples estados simultáneamente, validaciones complejas de permisos por roles, flujos secuenciales donde cada paso depende del anterior, y la capacidad de devolver documentos a pasos anteriores sin romper la integridad del sistema.

Estos requisitos demandan una arquitectura sólida que maneje la complejidad sin sacrificar la mantenibilidad del código, y ese es precisamente el enfoque que implementaremos en este curso.

Utilizando el Pipeline Pattern para procesos complejos, Enums para estados tipados, y Actions para encapsular lógica de negocio, construiremos un sistema robusto que escala y se mantiene fácilmente, siguiendo las mejores prácticas de Laravel 12 y PHP 8.4.

En este curso desarrollaremos un sistema completo de aprobación de documentos con flujo secuencial y roles jerárquicos, implementando patrones de arquitectura moderna que separan claramente las responsabilidades y mantienen el código limpio y testeable.

Lo que cubriremos

🔧 Configuración del Entorno

  • Setup de Laravel 12 con PHP 8.4 y Sail

  • Configuración de base de datos con migraciones

  • Implementación de roles con datos maestros

🏗️ Arquitectura y Patrones de Diseño

  • Pipeline Pattern para procesos de aprobación complejos

  • Action Pattern para encapsular lógica de negocio

  • Implementación de Enums tipados para estados

📋 Sistema de Documentos y Estados

  • Modelos con relaciones y UUIDs

  • Estados de documento: pending, approved, rejected

  • Estados de aprobación: pending, approved, rejected, returned

  • Scopes para consultas reutilizables y optimizadas

👥 Gestión de Roles y Permisos

  • Sistema de roles jerárquicos: Employee, Supervisor, Manager, Director

  • Validaciones de permisos secuenciales

  • Restricciones por rol para diferentes acciones

🔄 Flujo de Aprobaciones Secuencial

  • Creación automática de pasos de aprobación

  • Validación de secuencia obligatoria

  • Manejo de devoluciones con reset de pasos posteriores

  • Prevención de saltos de pasos en el flujo

🎨 Interfaz de Usuario Moderna

  • UI con Tailwind CSS y componentes reutilizables

  • Timeline visual del progreso de aprobaciones

  • Formularios dinámicos con validación en tiempo real

  • Navegación contextual por roles de usuario

🧪 Testing Integral

  • Tests de feature para flujos completos

  • Validación de casos edge y escenarios complejos

  • Tests de autorización y permisos por rol

  • Cobertura completa del sistema de aprobaciones

Tecnologías que Usaremos

  • Laravel 12 con PHP 8.4 - Framework principal con tipado estricto

  • Laravel Sail - Entorno de desarrollo con Docker

  • MySQL - Base de datos relacional

  • Tailwind CSS - Framework CSS para UI moderna

  • Pipeline Pattern - Arquitectura para procesos complejos

  • PHP Enums - Estados tipados y seguros

  • UUIDs - Identificadores únicos para documentos

  • Scopes - Consultas de Eloquent reutilizables

Flujo de Trabajo Implementado

  1. Login Simulado - 4 usuarios con roles diferentes para testing

  2. Creación de Documentos - Solo empleados pueden crear documentos

  3. Aprobación Secuencial - 3 pasos obligatorios: Supervisor → Manager → Director

  4. Estados Dinámicos - Visualización en tiempo real del progreso

  5. Sistema de Comentarios - Retroalimentación en cada decisión

  6. Devoluciones Inteligentes - Reset automático de pasos posteriores

  7. Prevención de Errores - Validaciones robustas en cada acción

Resultado Final

Al finalizar este curso tendrás un sistema de aprobación de documentos completamente funcional y escalable que maneja flujos complejos, roles jerárquicos y estados avanzados, siguiendo las mejores prácticas de Laravel para arquitectura limpia y mantenible. Un sistema que puedes adaptar a cualquier flujo de aprobaciones empresariales.

assignment

Requisitos

Conocimientos Técnicos
  • PHP intermedio-avanzado - Dominio de conceptos como namespaces, traits, interfaces y PHP 8+. Si necesitas reforzar estos conceptos, recomendamos nuestra Ruta de PHP 8
  • Laravel intermedio - Experiencia con Eloquent, migraciones, middleware, Service Container y arquitectura MVC, recomendamos nuestro curso gratuito de Laravel 11
group

¿A quién va dirigido el curso?

👨‍💻 Desarrolladores Laravel Intermedio-Avanzado
  - Tienes experiencia con Laravel pero quieres aprender patrones de arquitectura avanzados
  - Conoces los conceptos básicos de Eloquent y quieres implementar relaciones complejas
  - Buscas aprender a estructurar aplicaciones empresariales de manera escalable

🏢 Desarrolladores que Trabajan con Sistemas Empresariales
  - Necesitas implementar flujos de aprobación en tu trabajo actual
  - Trabajas con sistemas que manejan roles y permisos complejos
  - Requieres entender cómo manejar estados y transiciones en aplicaciones reales

🎯 Desarrolladores que Buscan Mejores Prácticas
  - Quieres aprender a usar el Pipeline Pattern en aplicaciones reales
  - Buscas implementar arquitectura limpia con Actions y Form Requests
  - Deseas dominar el uso de Enums y tipado estricto en PHP 8.4

📚 Estudiantes Avanzados de Laravel
  - Ya completaste cursos básicos de Laravel y buscas el siguiente nivel
  - Quieres ver cómo se implementan sistemas complejos paso a paso
  - Necesitas ejemplos prácticos de testing en aplicaciones enterprise
help_outline

¿Qué hacer en caso de dudas durante el curso?

Los planes de suscripción trimestral y anual incluyen soporte a través del foro del curso.

Las dudas que se planteen en el foro del curso serán respondidas en un plazo máximo de 24 horas laborables.

Las dudas planteadas deben estar relacionadas con el contenido del curso y no con desarrollos personalizados que no estén relacionados con el curso.

card_membership

Certificado de finalización

emoji_events

Al completar todas las lecciones del curso, obtendrás un certificado de finalización en formato PDF personalizado con tu nombre y un código QR de verificación.

  • center_focus_weak Código QR con enlace al curso
  • picture_as_pdf Descargable en formato PDF
  • person Personalizado con tu nombre

star Disponible exclusivamente para suscriptores.

Especialista con +15 años de experiencia en desarrollo web Full Stack. Dominio avanzado en Laravel y Vue.js, creando aplicaciones modernas de alto rendimiento. Instructor profesional con 8 años compartiendo conocimiento a través de cursos especializados que han formado a cientos de desarrolladores.

Israel Parra

Desarrollador Full Stack & Formador

Valoraciones

5
star star star star star

1 valoraciones

star star star star star
star star star star star_border
star star star star_border star_border
star star star_border star_border star_border
star star_border star_border star_border star_border
Alan Ortega

hace 6 meses

Alan Ortega Util y practico
star star star star star
Me gusto mucho como se desarrollo el curso para el manejo de los distintos roles de usuario.
visibility Vista previa

star

¿Te gusta lo que ves? Accede a este curso completo y a más de 200 cursos con una suscripción.

launch Ver planes de suscripción