diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c176ece --- /dev/null +++ b/.gitignore @@ -0,0 +1,24 @@ +# Entornos y dependencias +node_modules/ +__pycache__/ +*.pyc +*.pyo +.venv/ +env/ + +# Logs +*.log + +# Sistema operativo +.DS_Store +Thumbs.db + +# Archivos de entorno (variables sensibles) +.env +.env.local + +# VS Code (configuración local del usuario) +.vscode/ + +# Docker +*.pid diff --git a/data/datos.db b/data/datos.db index 113e80e..e1ed5e7 100644 Binary files a/data/datos.db and b/data/datos.db differ diff --git a/data/historial.db b/data/historial.db new file mode 100644 index 0000000..8f67e8f Binary files /dev/null and b/data/historial.db differ diff --git a/frontend/css/styles.css b/frontend/css/styles.css index 77117d2..4d92c5d 100644 --- a/frontend/css/styles.css +++ b/frontend/css/styles.css @@ -297,6 +297,16 @@ body { cursor: not-allowed; } +.form-group input[type="number"]::-webkit-outer-spin-button, +.form-group input[type="number"]::-webkit-inner-spin-button { + -webkit-appearance: none; + margin: 0; +} + +.form-group input[type="number"] { + -moz-appearance: textfield; +} + .form-group input, .form-group select { padding: 0.65rem 0.75rem; diff --git a/frontend/index.html b/frontend/index.html index c49493f..d06914c 100644 --- a/frontend/index.html +++ b/frontend/index.html @@ -175,7 +175,7 @@
- +
@@ -189,6 +189,10 @@
+
+ + +
@@ -219,6 +223,7 @@

Historial de cambios y movimientos.

+
diff --git a/frontend/js/app.js b/frontend/js/app.js index 6a1fb4f..6bf5a15 100644 --- a/frontend/js/app.js +++ b/frontend/js/app.js @@ -51,6 +51,7 @@ document.addEventListener('DOMContentLoaded', function () { horas_mensuales: '', dia_inicio_mes: '', dia_fin_mes: '', + tiempo_almuerzo: '', valor_hora_ordinaria: '', valor_hora_extra: '', valor_hora_extra_nocturna: '' @@ -214,6 +215,9 @@ document.addEventListener('DOMContentLoaded', function () { const inputHorasSemanales = document.getElementById('cfg-horas-semanales'); const inputHorasMensuales = document.getElementById('cfg-horas-mensuales'); + const inputDiaInicio = document.getElementById('cfg-dia-inicio'); + const inputDiaFin = document.getElementById('cfg-dia-fin'); + const inputTiempoAlmuerzo = document.getElementById('cfg-tiempo-almuerzo'); const inputHoraOrdinaria = document.getElementById('cfg-hora-ordinaria'); const inputHoraExtra = document.getElementById('cfg-hora-extra'); const inputHoraExtraNocturna = document.getElementById('cfg-hora-extra-nocturna'); @@ -249,6 +253,7 @@ document.addEventListener('DOMContentLoaded', function () { document.getElementById('cfg-horas-mensuales').value = configuracionGlobal.horas_mensuales; document.getElementById('cfg-dia-inicio').value = configuracionGlobal.dia_inicio_mes; document.getElementById('cfg-dia-fin').value = configuracionGlobal.dia_fin_mes; + document.getElementById('cfg-tiempo-almuerzo').value = configuracionGlobal.tiempo_almuerzo; document.getElementById('cfg-hora-ordinaria').value = configuracionGlobal.valor_hora_ordinaria ? formatearPesosSinDecimales(configuracionGlobal.valor_hora_ordinaria) : ''; calcularCamposDependientes(); } @@ -262,9 +267,10 @@ document.addEventListener('DOMContentLoaded', function () { salario_minimo: limpiarFormatoPesos(document.getElementById('cfg-salario-minimo').value), auxilio_transporte: limpiarFormatoPesos(document.getElementById('cfg-auxilio-transporte').value), horas_semanales: document.getElementById('cfg-horas-semanales').value, - horas_mensuales: document.getElementById('cfg-horas-mensuales').value, + horas_mensuales: limpiarFormatoPesos(document.getElementById('cfg-horas-mensuales').value), dia_inicio_mes: document.getElementById('cfg-dia-inicio').value, dia_fin_mes: document.getElementById('cfg-dia-fin').value, + tiempo_almuerzo: document.getElementById('cfg-tiempo-almuerzo').value, valor_hora_ordinaria: limpiarFormatoPesos(document.getElementById('cfg-hora-ordinaria').value), valor_hora_extra: limpiarFormatoPesos(document.getElementById('cfg-hora-extra').value), valor_hora_extra_nocturna: limpiarFormatoPesos(document.getElementById('cfg-hora-extra-nocturna').value)