PROMPT PARA POSITRON - ShinyApp Evaluador de Volantes de Pago

Decreto 1279 de 2002 - Carta MEM 2026-EE-138853

Copia y pega este prompt en el Copilot Chat de Positron (Ctrl+Alt+I o Cmd+Ctrl+I en Mac).


PROMPT COMPLETO (Copia todo el bloque siguiente)

Crea una aplicacion Shiny completa en un solo archivo app.R para evaluar volantes de pago de docentes universitarios de Colombia, conforme al Decreto 1279 de 2002 y la Carta MEM 2026-EE-138853 del Ministerio de Educacion Nacional.

=== DATOS DEL CASO DE DEMOSTRACION ===
La app debe incluir datos demo precargados del profesor Justo Rafael Fuentes Cuello de la Universidad de Sucre:
- Entidad: Universidad de Sucre, NIT: 892200323
- Periodo: 01-02-2026 a 28-02-2026
- Nombre: Justo Rafael Fuentes Cuello, Documento: 6820995
- Categoria: Profesor Titular, Labor: DOCENTE TIEMPO COMPLETO
- Salario Basico: $12.261.127
- Total de Puntos: 548.4
- Dias Trabajados: 30
- Vinculacion: 16-03-1988 (indefinido)
- Unidades: Departamento de Ingenieria Agricola, Facultad de Ingenieria
- Total Devengados: $14.713.352 (Gastos Representacion $6.130.564, Sueldo Basico $6.130.563, Exclusividad $2.452.225)
- Total Deducidos: $7.274.925 (incluye retencion, salud, pension, libranzas con saldos)
- Neto a Pagar: $7.438.427
- Banco: Banco Davivienda, Cuenta: 206500022408

=== REQUISITOS FUNCIONALES ===
1. CARGA DE DATOS:
   - fileInput para subir volantes de pago en PDF (usar pdftools si esta disponible, si no, mostrar mensaje informativo)
   - Formulario completo de ingreso manual con todos los campos del docente
   - Boton "Cargar Datos Demo" que precarga todos los datos del Prof. Fuentes Cuello
   - Boton "Analizar Volante" que procesa los datos

2. PESTANAS DE RESULTADOS (5 pestanas con navegacion por actionLinks):
   a) RESUMEN: 
      - Alerta visual CONFORME (verde) o NO CONFORME (rojo) segun topes
      - 4 tarjetas: Puntos Actuales, Tope Maximo, Margen/Exceso, Uso del Tope (%)
      - Barra de progreso visual del uso del tope
      - Tabla resumen con info del docente
   
   b) DECRETO 1279:
      - Topes por factor del Capitulo II (Art. 6-10): Titulos (318 pts), Categoria, Experiencia, Productividad
      - Tabla con los 5 tipos de categoria y sus topes: Profesor Titular (96/120/540), Profesor Asociado (74/90/320), Profesor Asistente (58/45/160), Instructor Asistente (58/45/110), Profesor Auxiliar (37/20/80)
      - Factores del Capitulo III (Art. 12-18): Titulos, Categoria, Productividad, Direccion academico-administrativa, Desempeno destacado, Experiencia calificada
      - Calcular tope total: 140 (posgrado) + puntos_categoria + puntos_experiencia + puntos_productividad
   
   c) CARTA MEM:
      - Header con gradiente oscuro
      - Info-box sobre la Carta MEM 2026-EE-138853 (21 abril 2026)
      - Resultado de conformidad con iconos
      - Citas de la carta sobre topes, derechos adquiridos y rol del CSU
      - Observaciones sobre derechos adquiridos (Capitulo II vs III)
      - Recomendacion personalizada segun conformidad
   
   d) TIEMPO DE SERVICIO:
      - Calculo automatico desde fecha de vinculacion hasta hoy (anos, meses, dias)
      - Tarjetas con desglose del tiempo
      - Relacion con Art. 9 del Decreto 1279 (tope de experiencia por categoria)
      - Tabla de topes de experiencia por categoria
      - Linea de tiempo visual: Vinculacion -> 5 anos -> 10 anos -> Hoy
   
   e) FINANCIERO:
      - 3 tarjetas: Total Devengados (azul), Total Deducidos (rojo), Neto (verde)
      - Grafico de pastel interactivo con plotly (donut chart)
      - Tabla de conceptos devengados y deducidos

3. GENERAR REPORTE:
   - downloadButton que genere reporte HTML completo descargable
   - El reporte debe incluir: info del docente, tiempo de servicio, resumen financiero, evaluacion Decreto 1279, analisis Carta MEM, fundamentacion legal, conclusiones y recomendaciones

=== REGLAS DEL DECRETO 1279 PARA EL CODIGO ===
- Calcular tope: tope_total = 140 + puntos_categoria + puntos_experiencia + puntos_productividad
- Evaluar conformidad: si puntos_actuales <= tope_total -> CONFORME, else -> NO CONFORME
- Porcentaje uso: (puntos / tope) * 100
- Colores: conforme=#166534 (verde), no_conforme=#991b1b (rojo), tope=#92400e (amber)

=== TOPES DE CATEGORIA (hardcodear en data.frame) ===
Profesor Titular:        categoria=96,  experiencia=120, productividad=540
Profesor Asociado:       categoria=74,  experiencia=90,  productividad=320
Profesor Asistente:      categoria=58,  experiencia=45,  productividad=160
Instructor Asistente:    categoria=58,  experiencia=45,  productividad=110
Profesor Auxiliar:       categoria=37,  experiencia=20,  productividad=80

=== REQUISITOS TECNICOS ===
- Usar shinyjs para mostrar/ocultar secciones
- Usar bslib o estilos CSS inline profesionales
- Usar Font Awesome icons (via CDN) en todos los headers
- Usar DT para tablas
- Usar plotly para graficos interactivos
- Usar actionLink para navegacion entre pestanas (NO usar tabsetPanel)
- Todo en un solo archivo app.R
- UI fluida y responsiva (max-width: 1400px)
- Footer con creditos al Ministerio de Educacion Nacional
- Si pdftools no esta instalado, mostrar mensaje amigable y permitir ingreso manual
- Sin errores de sintaxis: NO usar for/while/if dentro de la UI; usar lapply() y estructuras ternarias en su lugar

=== ESTILOS VISUALES REQUERIDOS ===
- Header: gradiente linear de #1e293b a #0f172a, color blanco
- Tarjetas stat-card: fondo #f8fafc, borde #e2e8f0, border-radius 10px
- Resultados conforme: fondo #f0fdf4, borde #86efac
- Resultados no conforme: fondo #fef2f2, borde #fca5a5
- Info carta MEM: fondo #eff6ff, borde #bfdbfe, color #1e40af
- Boton analizar: fondo #1e293b, texto blanco
- Boton reporte: fondo #dc2626, texto blanco
- Nav tabs: borde inferior, active con #1e293b

=== FUNDAMENTACION LEGAL PARA EL REPORTE ===
- Decreto 1279 de 2002: Regimen salarial docentes universidades estatales
- Carta MEM Radicado 2026-EE-138853 (21 abril 2026): Respuestas Mesa 10
- Ley 4 de 1992: Regimen salarial empleados publicos
- Ley 30 de 1992: Regimen salarial profesores universidades estatales
- Articulo 334 Constitucion Politica: Equidad y sostenibilidad fiscal

=== INSTRUCCION FINAL ===
Genera el archivo app.R completo, funcional y listo para ejecutar con shiny::runApp(). El codigo debe estar bien indentado, comentado, sin errores de sintaxis, y debe funcionar correctamente con los datos demo del profesor Fuentes Cuello mostrando resultado CONFORME (548.4 puntos dentro del tope de 896 para Profesor Titular).

COMO USAR ESTE PROMPT EN POSITRON

Paso 1: Abrir Copilot Chat

  • Presiona Ctrl+Alt+I (Windows/Linux) o Cmd+Ctrl+I (Mac)
  • Se abre el panel de chat en la derecha

Paso 2: Pegar el prompt

  • Copia TODO el bloque verde de arriba (desde “Crea una aplicacion…” hasta “…tope de 896”)
  • Pegalo en el chat de Copilot
  • Presiona Enter

Paso 3: Esperar la generacion

  • Copilot procesara durante 30-60 segundos
  • Generara el archivo app.R completo
  • Lee el codigo antes de aceptarlo

Paso 4: Crear el archivo

  • Crea nuevo archivo: app.R
  • Pega el codigo generado
  • Guarda: Ctrl+S

Paso 5: Instalar paquetes y ejecutar

En la terminal de Positron:

install.packages(c("shiny", "shinyjs", "bslib", "DT", "plotly", "htmltools", "stringr", "lubridate"))

Luego ejecuta:

shiny::runApp("app.R")

VARIANTE CORTA (si Copilot tiene limite de tokens)

Si el prompt completo es muy largo, usa esta version resumida:

Crea una Shiny App en app.R para evaluar volantes de pago docentes segun Decreto 1279 de 2002 y Carta MEM 2026-EE-138853. 

La app debe tener:
1. Formulario manual + boton "Cargar Demo" con datos de Justo Rafael Fuentes Cuello (Universidad de Sucre, Profesor Titular, 548.4 puntos, salario $12.261.127, vinculado 16-03-1988)
2. Boton "Analizar" que muestre 5 pestanas: Resumen (conformidad+stats), Decreto 1279 (topes por factor), Carta MEM (analisis legal), Tiempo Servicio (calculo automatico), Financiero (grafico plotly)
3. Topes hardcodeados: Titular(96/120/540), Asociado(74/90/320), Asistente(58/45/160), Instructor(58/45/110), Auxiliar(37/20/80). Tope total = 140+96+120+540 = 796 (para Titular)
4. Reporte HTML descargable con fundamentacion legal
5. Usar shinyjs, DT, plotly, actionLinks para tabs, estilos CSS inline profesionales, Font Awesome. Todo en app.R. Sin for/if en UI (usar lapply). Mostrar CONFORME para el demo (548.4 < 796).

Genera app.R listo para ejecutar.

CONSEJOS PARA MEJORES RESULTADOS CON COPILOT

1. Si el codigo tiene errores

Pega el error en el chat:

El codigo generado da este error: "Error in ..."
Corrigelo y muestra solo la seccion corregida.

2. Si falta funcionalidad

Agrega una seccion de "Conceptos Deducidos" con tabla detallada que incluya libranzas con sus saldos.

3. Si quieres mejorar el diseno

Mejora los estilos CSS usando un gradiente moderno en el header y tarjetas con sombra suave (box-shadow).

4. Si quieres agregar validaciones

Agrega validaciones: si el nombre esta vacio o puntos <= 0, mostrar mensaje de error con showNotification().

CHECKLIST POST-GENERACION

Despues de que Copilot genere el codigo, verifica:


SOLUCION DE PROBLEMAS COMUNES CON COPILOT

Problema Solucion
Copilot genera codigo incompleto Pide “Continua desde donde quedaste”
Codigo con errores de sintaxis Pide “Revisa que todos los parentesis y llaves esten balanceados”
No genera los estilos CSS Pide “Agrega estilos CSS inline profesionales con colores especificos”
Tabs no funcionan Pide “Usa actionLink con shinyjs::show/hide en lugar de tabsetPanel”
Faltan datos demo Pide “Incluye datos demo del profesor Justo Rafael Fuentes Cuello hardcodeados”

EJEMPLO DE DIALOGO CON COPILOT

Tu:

Crea una Shiny App para evaluar volantes de pago segun Decreto 1279 de 2002. Incluye datos demo del profesor Justo Rafael Fuentes Cuello (Profesor Titular, 548.4 puntos, Universidad de Sucre). La app debe evaluar si el docente esta dentro de los topes salariales y generar un reporte. Usa estilos CSS profesionales.

Copilot: (Genera app.R)

Tu: (si hay errores)

El codigo tiene un error: "Error in value[[3L]](cond): Error sourcing app.R". 
Probablemente hay un for loop o if statement dentro de la UI. 
Reemplaza todos los for/if en la UI por lapply() o div() condicionales. 
Muestra solo el codigo corregido.

Copilot: (Genera version corregida)


Este prompt esta optimizado para funcionar con GitHub Copilot en Positron. Puedes ajustarlo segun las necesidades especificas de tu clase.