From 976d9861ef44d414306f795828d14ee177553c2c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Ca=C3=B1izares?= Date: Sat, 25 Apr 2020 19:52:16 +0200 Subject: [PATCH 1/3] =?UTF-8?q?[AOA-117]=20A=C3=B1adido=20campo=20fecha=20?= =?UTF-8?q?en=20cada=20cita=20individual=20de=20una=20cita=20m=C3=BAltiple?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/View/Cita/add.ctp | 2 +- app/View/Cita/add_multiple.ctp | 44 ++++++++++++++++++++++--- app/View/Cita/edit.ctp | 2 +- app/webroot/js/Cita/add_multiple.js | 6 ++++ app/webroot/js/common/Cita/funciones.js | 2 +- 5 files changed, 49 insertions(+), 7 deletions(-) diff --git a/app/View/Cita/add.ctp b/app/View/Cita/add.ctp index 902bea04..f3501d37 100755 --- a/app/View/Cita/add.ctp +++ b/app/View/Cita/add.ctp @@ -118,7 +118,7 @@ $this->end();
end();
- +
- - + end();
+ +
+ + +
+
+ + + +
+
+
+
+ +
+ + +
+
+ + + +
+
+
+
diff --git a/app/webroot/js/Cita/add_multiple.js b/app/webroot/js/Cita/add_multiple.js index 151d0c73..72a05147 100755 --- a/app/webroot/js/Cita/add_multiple.js +++ b/app/webroot/js/Cita/add_multiple.js @@ -211,6 +211,9 @@ $(document).ready(function () { // Gestioanr tabla de clases de edad/sexo */ gestionarTablaNumeroAves($divEditarEspecie); + // Seleccionar hora de alta + seleccionarHora($divEditarEspecie); + // Resaltar checks seleccioandos marcarChecksSeleccioandos($divEditarEspecie); @@ -245,6 +248,9 @@ $(document).ready(function () { // Gestioanr tabla de clases de edad/sexo gestionarTablaNumeroAves($divNuevaEspecie); + // Seleccionar hora de alta + seleccionarHora($divNuevaEspecie); + // Resaltar checks seleccioandos marcarChecksSeleccioandos($divNuevaEspecie); diff --git a/app/webroot/js/common/Cita/funciones.js b/app/webroot/js/common/Cita/funciones.js index 1f267a0b..208959bf 100755 --- a/app/webroot/js/common/Cita/funciones.js +++ b/app/webroot/js/common/Cita/funciones.js @@ -64,7 +64,7 @@ function seleccionarFecha($div) function seleccionarHora($div) { - $div.find( "#horaAlta" ).timepicker({ + $div.find( ".hora-alta" ).timepicker({ timeFormat: 'HH:mm', interval: 30, dynamic: false, From dab126ba1ab6475baa1e2cd744b5d33271137e3e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Ca=C3=B1izares?= Date: Sat, 25 Apr 2020 20:02:16 +0200 Subject: [PATCH 2/3] [AOA-117] Preseleccionar la hora seleccionada del formulario general al abrir el formulario de nueva cita --- app/webroot/js/Cita/add_multiple.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/app/webroot/js/Cita/add_multiple.js b/app/webroot/js/Cita/add_multiple.js index 72a05147..2cd3d650 100755 --- a/app/webroot/js/Cita/add_multiple.js +++ b/app/webroot/js/Cita/add_multiple.js @@ -49,7 +49,9 @@ $(document).ready(function () { // Insertar especie $divNuevaCitaMultiple.find("#btnInsertarEspecie").click(function () { limpiarFormularioEspecie(); + var horaAltaGeneral = $divNuevaCitaMultiple.find('#horaAltaGeneral') .val(); var $modalNuevaEspecie = $('#modalNuevaEspecie'); + $modalNuevaEspecie.find('#horaAltaNuevaEspecie') .val(horaAltaGeneral); $modalNuevaEspecie.modal(); $modalNuevaEspecie.on('shown', function () { @@ -227,7 +229,7 @@ $(document).ready(function () { // Rich editor para las observaciones $divEditarEspecie.find('.observaciones').summernote(richTextEditorSettings); - $divEditarEspecie.find('.note-modal').remove() + $divEditarEspecie.find('.note-modal').remove(); /*****************/ /* Nueva especie */ From ddca706f719bd6f0cc099e670d89798e88c8cb92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Ca=C3=B1izares?= Date: Sun, 26 Apr 2020 08:36:19 +0200 Subject: [PATCH 3/3] =?UTF-8?q?[AOA-117]=20A=C3=B1adida=20validaci=C3=B3n?= =?UTF-8?q?=20sobre=20el=20campo=20de=20hora=20en=20una=20cita=20m=C3=BAlt?= =?UTF-8?q?iple.=20Precargar=20la=20hora=20al=20editar=20una=20cita=20m?= =?UTF-8?q?=C3=BAltiple?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Controller/CitaController.php | 54 ++++++++++++++++++----------- app/View/Cita/add_multiple.ctp | 1 + app/webroot/js/Cita/add_multiple.js | 19 ++++++++-- 3 files changed, 51 insertions(+), 23 deletions(-) diff --git a/app/Controller/CitaController.php b/app/Controller/CitaController.php index e86c7a39..eccf7bc6 100755 --- a/app/Controller/CitaController.php +++ b/app/Controller/CitaController.php @@ -562,12 +562,16 @@ public function edit() } // Hora de alta $horaAlta = $this->request->data["Cita"]["horaAlta"]; - $horaAltaFormateada = DateUtil::formatTime($horaAlta); - if ($horaAltaFormateada == false) { - $this->Session->setFlash('El formato de la hora de observación no es correcto, debe indicar una hora con formato hh:mm', 'failure'); - return; + if ($horaAlta) { + $horaAltaFormateada = DateUtil::formatTime($horaAlta); + if ($horaAltaFormateada == false) { + $this->Session->setFlash('El formato de la hora de observación no es correcto, debe indicar una hora con formato hh:mm', 'failure'); + return; + } + $cita["Cita"]["fechaAlta"] = $fechaAltaFormateada . " " . $horaAltaFormateada; + } else { + $cita["Cita"]["fechaAlta"] = $fechaAltaFormateada . " 00:00"; } - $cita["Cita"]["fechaAlta"] = $fechaAltaFormateada . " " . $horaAltaFormateada; // Especie $especieId = $this->request->data["Cita"]["especie_id"]; @@ -786,12 +790,17 @@ public function add() } // Hora de alta $horaAlta = $this->request->data["Cita"]["horaAlta"]; - $horaAltaFormateada = DateUtil::formatTime($horaAlta); - if ($horaAltaFormateada == false) { - $this->Session->setFlash('El formato de la hora de observación no es correcto, debe indicar una hora con formato hh:mm', 'failure'); - return; + if ($horaAlta) { + $horaAltaFormateada = DateUtil::formatTime($horaAlta); + if ($horaAltaFormateada == false) { + $this->Session->setFlash('El formato de la hora de observación no es correcto, debe indicar una hora con formato hh:mm', 'failure'); + return; + } + $cita["Cita"]["fechaAlta"] = $fechaAltaFormateada . " " . $horaAltaFormateada; + } else { + $cita["Cita"]["fechaAlta"] = $fechaAltaFormateada . " 00:00"; } - $this->request->data["Cita"]["fechaAlta"] = $fechaAltaFormateada . " " . $horaAltaFormateada; + // Especie $especieId = $this->request->data["Cita"]["especie_id"]; $especie = $this->Especie->obtenerTodoPorId($especieId, array( @@ -934,17 +943,6 @@ public function add_multiple() $this->Session->setFlash('El formato de la fecha de observación no es correcto, debe indicar una fecha con formato dd/mm/aaaa', 'failure'); return; } - // Hora de alta - $horaAlta = $this->request->data["Cita"]["horaAlta"]; - $horaAltaFormateada = DateUtil::formatTime($horaAlta); - if ($horaAltaFormateada == false) { - $this->Session->setFlash('El formato de la hora de observación no es correcto, debe indicar una hora con formato hh:mm', 'failure'); - return; - } - $this->request->data["Cita"]["fechaAlta"] = $fechaAltaFormateada . " " . $horaAltaFormateada; - - // Fecha creacion - $fechaActual = (new DateTime())->format('Y-m-d H:i:s'); // Citas por lugar $numeroCitasPorLugar = $this->Cita->obtenerTotalCitasPorLugar($this->request->data["Cita"]["lugar_id"]); @@ -961,6 +959,20 @@ public function add_multiple() $this->request->data["Cita"]["especie_id"] = $datosEspecie["especie_id"]; $this->request->data["Cita"]["cantidad"] = $datosEspecie["cantidad"]; + + // Hora de alta + $horaAlta = $datosEspecie["horaAlta"]; + if ($horaAlta) { + $horaAltaFormateada = DateUtil::formatTime($horaAlta); + if ($horaAltaFormateada == false) { + $this->Session->setFlash('El formato de la hora de observación no es correcto, debe indicar una hora con formato hh:mm', 'failure'); + return; + } + $this->request->data["Cita"]["fechaAlta"] = $fechaAltaFormateada . " " . $horaAltaFormateada; + } else { + $this->request->data["Cita"]["fechaAlta"] = $fechaAltaFormateada . " 00:00"; + } + $this->request->data["Cita"]["clase_reproduccion_id"] = $datosEspecie["clase_reproduccion_id"]; $this->request->data["Cita"]["indHabitatRaro"] = $datosEspecie["indHabitatRaro"]; diff --git a/app/View/Cita/add_multiple.ctp b/app/View/Cita/add_multiple.ctp index 217ffa3f..6c5750ad 100755 --- a/app/View/Cita/add_multiple.ctp +++ b/app/View/Cita/add_multiple.ctp @@ -228,6 +228,7 @@ $this->end(); + diff --git a/app/webroot/js/Cita/add_multiple.js b/app/webroot/js/Cita/add_multiple.js index 2cd3d650..aa16bc27 100755 --- a/app/webroot/js/Cita/add_multiple.js +++ b/app/webroot/js/Cita/add_multiple.js @@ -92,6 +92,9 @@ $(document).ready(function () { isdate: true, dateBeforeOrEqualToday: true }, + "data[Cita][horaAlta]": { + required: true + }, lugar: { validarLugar: true }, @@ -106,7 +109,10 @@ $(document).ready(function () { "data[Cita][fechaAlta]": { required: "Debe seleccionar una fecha de alta.", date: "Debe introducir una fecha de alta con formato correcto (dd/mm/aaaa)." - } + }, + "data[Cita][horaAlta]": { + required: "Debe seleccionar una hora de observación." + }, }, ignore: [], errorContainer: "#errorMessages", @@ -339,6 +345,9 @@ function validarFormularioEspecie($div, $formulario, errorContainer, numeroFila) especie: { validarEspeciePopup: true }, + "data[Cita][horaAlta]": { + required: true + }, "data[claseEdadSexo][][4]": { validarNumeroAves: true }, @@ -349,7 +358,10 @@ function validarFormularioEspecie($div, $formulario, errorContainer, numeroFila) messages: { "data[Cita][clase_reproduccion_id]": { required: "Debe seleccionar un dato de reproducción." - } + }, + "data[Cita][horaAlta]": { + required: "Debe seleccionar una hora de observación." + }, }, errorContainer: "#" + errorContainer, errorLabelContainer: "#" + errorContainer + " ul", @@ -389,6 +401,7 @@ function insertarFilaEspecie($div, fila) { content.push(''); content.push('' + $div.find(".especie").val() + ' ' + $div.find(".subespecie").val() + ''); content.push('' + $div.find(".totalNumeroAves").val() + ''); + content.push('' + $div.find(".hora-alta").val() + ''); content.push('' + $div.find(".datosReproduccion option:selected").text() + ''); content.push('' + ($indHabitatRaro ? 'Sí' : 'No') + ''); content.push('' + ($indCriaHabitatRaro ? 'Sí' : 'No') + ''); @@ -403,6 +416,7 @@ function insertarFilaEspecie($div, fila) { $formulario.append(''); $formulario.append(''); $formulario.append(''); + $formulario.append(''); $formulario.append(''); // Numero de aves @@ -504,6 +518,7 @@ function editarFilaEspecie(numeroFila) { $div.find('.especieId').val($('input[name="data[Especie][' + numeroFila + '][especie_id]"]').val()); $div.find('.especie').val($('input[name="data[Especie][' + numeroFila + '][especie]"]').val()); + $div.find('.hora-alta').val($('input[name="data[Especie][' + numeroFila + '][horaAlta]"]').val()); $div.find(".especieSeleccionadaContenedor").show(); $div.find(".especieSeleccionada").text($div.find('.especie').val());