function validar() { global $campoError; if (!isset($_SESSION["pcpId"])) throw new Exception("La sesión ha expirado."); // Bloque 7.. if ($_POST["breveDescripcionTareas"] == "") { $campoError = "breveDescripcionTareas"; throw new Exception("Debe ingresar una Breve descripción de tareas (máximo 250 caracteres)."); } $elementosSinChequear = false; $arrElementos = array("electrico", "incendio", "extintor", "insecticida", "bencina", "raticida", "desinfectantes", "detergentes", "sodaCaustica", "desengrasante", "hipocloritoDeSodio", "amoniaco", "acidoMuriatico", "proteccionBalcones", "interiorAltura", "exteriorAltura", "escaleraBaranda", "indumentaria", "proteccionPersonal"); foreach ($arrElementos as $valor) { if (getValorCheck($valor) == NULL) { if (($valor == "extintor") and (getValorCheck("incendio") == "N") and ($_POST["extintorCual"] != "")) continue; $elementosSinChequear = true; break; } } if ($elementosSinChequear ) { $campoError = $valor; throw new Exception("Debe completar todos los campos."); } if (($_POST["incendio"] == "S") and (getValorCheck("extintor") == NULL) and ($_POST["extintorCual"] != "")) { $campoError = "incendioS"; throw new Exception("Hay inconsistencias en las respuestas de Riesgo de Incendio No y selecciono un item en \"Indique cual\""); } if ((getValorCheck("insecticida") == "N") and ($_POST["insecticidaCual"] != "")) { $campoError = "insecticidaN"; throw new Exception("Hay inconsistencias en las respuestas de Riesgo Químico Insecticidas No y completó \"¿Cuáles?\""); } if ((getValorCheck("raticida") == "N") and ($_POST["raticidaCual"] != "")) { $campoError = "raticidaN"; throw new Exception("Hay inconsistencias en las respuestas de Riesgo Químico Raticidas No y completó \"¿Cuáles?\""); } if ((getValorCheck("interiorAltura") == "N") and ($_POST["interiorAlturaCual"] != "")) { $campoError = "interiorAlturaN"; throw new Exception("Hay inconsistencias en las respuestas de Instalaciones Edilicias, Realizan tareas interiores No y completó \"¿Cuáles?\""); } if ((getValorCheck("exteriorAltura") == "N") and ($_POST["exteriorAlturaCual"] != "")) { $campoError = "exteriorAlturaN"; throw new Exception("Hay inconsistencias en las respuestas de Instalaciones Edilicias, Realizan tareas exteriores No y completó \"¿ Cuáles ?\""); } if ((getValorCheck("indumentaria") == "N") and ($_POST["indumentariaCual"] != "")) { $campoError = "indumentariaN"; throw new Exception("Hay inconsistencias en las respuestas de Ropa y elementos de trabajo, Entrega indumentaria de trabajo No y completó \"¿Cuáles?\""); } if ((getValorCheck("proteccionPersonal") == "N") and ($_POST["proteccionPersonalCual"] != "")) { $campoError = "proteccionPersonalN"; throw new Exception("Hay inconsistencias en las respuestas de Ropa y elementos de trabajo, Entrega de Elementos de protección personal No y completó \"¿Cuáles?\""); } return true; }
function validar($id, $alta, $rowCotizacion, $isSoloPCP, $idVendedor, $datosEmpleadorManual, $sumaAseguradaRC, $formaPago, $iva, $iibb) { global $campoError; global $modulo; if (!isset($_SESSION["isAgenteComercial"])) throw new Exception("Usted no tiene permiso para acceder a este módulo."); // Bloque 1.1.1.. if ($_POST["fechaSuscripcion"] == "") { $campoError = "fechaSuscripcion"; throw new Exception("Debe ingresar la Fecha de Suscripción."); } if (!isFechaValida($_POST["fechaSuscripcion"])) { $campoError = "fechaSuscripcion"; throw new Exception("La Fecha de Suscripción debe tener un formato válido."); } $params = array(":fechaalta" => $_POST["fechaSuscripcion"], ":id" => $id); if ($modulo == "R") // Si es una revisión de precio.. $sql = "SELECT 1 FROM asr_solicitudreafiliacion WHERE sr_id = :id AND TRUNC(sr_fechaalta) > TO_DATE(:fechaalta, 'DD/MM/YYYY')"; else // Si es una solicitud de cotización.. $sql = "SELECT 1 FROM asc_solicitudcotizacion WHERE sc_id = :id AND TRUNC(sc_fechaalta) > TO_DATE(:fechaalta, 'DD/MM/YYYY')"; if (existeSql($sql, $params)) { $campoError = "fechaSuscripcion"; throw new Exception("La Fecha de Suscripción no puede ser anterior a la fecha de la solicitud de cotización."); } $params = array(":fechasuscripcion" => $_POST["fechaSuscripcion"], ":fechavencimiento" => $_POST["fechaVencimiento"]); $sql = "SELECT 1 FROM DUAL WHERE TO_DATE(:fechasuscripcion, 'DD/MM/YYYY') > TO_DATE(:fechavencimiento, 'DD/MM/YYYY')"; if (existeSql($sql, $params)) { $campoError = "fechaSuscripcion"; throw new Exception("La Fecha de Suscripción no puede ser posterior a la fecha de vigencia de la cotización (".$_POST["fechaVencimiento"].")."); } if ($alta) { $params = array(":fechasuscripcion" => $_POST["fechaSuscripcion"]); $sql = "SELECT 1 FROM DUAL WHERE TO_DATE(:fechasuscripcion, 'DD/MM/YYYY') < ART.ACTUALDATE"; if (existeSql($sql, $params)) { $campoError = "fechaSuscripcion"; throw new Exception("La Fecha de Suscripción no puede ser anterior a la fecha actual."); } } else { $params = array(":fechasuscripcion" => $_POST["fechaSuscripcion"], ":id" => $id); $sql = "SELECT 1 FROM asa_solicitudafiliacion WHERE ((TO_DATE(:fechasuscripcion, 'DD/MM/YYYY') < TRUNC(sa_fechaalta)) OR (TO_DATE(:fechasuscripcion, 'DD/MM/YYYY') > ART.ACTUALDATE)) AND TRUNC(sa_fechaafiliacion) <> TO_DATE(:fechasuscripcion, 'DD/MM/YYYY') AND ".$rowCotizacion["FORMULARIOFIELD"]." = :id"; if (existeSql($sql, $params)) { $campoError = "fechaSuscripcion"; throw new Exception("La Fecha de Suscripción no puede ser ni anterior a la fecha previamente cargada ni posterior a la fecha actual."); } } // Bloque 1.2.. if ($_POST["razonSocial"] == "") { $campoError = "razonSocial"; throw new Exception("Debe ingresar el Nombre o razón social."); } if ((isset($_POST["formaJuridica"])) and ($_POST["formaJuridica"] == -1)) { $campoError = "formaJuridica"; throw new Exception("Debe seleccionar la Forma Jurídica."); } if (($_POST["fechaInicioActividad"] != "") and (!isFechaValida($_POST["fechaInicioActividad"]))) { $campoError = "fechaInicioActividad"; throw new Exception("La Fecha de inicio de actividad debe tener un formato válido."); } if ($_POST["fechaInicioActividad"] != "") { $arrFecha = explode("/", $_POST["fechaInicioActividad"]); $fec = $arrFecha[2].$arrFecha[1].$arrFecha[0]; if ($fec > date("Ymd")) { $campoError = "fechaInicioActividad"; throw new Exception("La fecha de inicio de actividad no puede ser posterior a la fecha de alta."); } } if ($_POST["calle"] == "") { $campoError = "calle"; throw new Exception("Debe ingresar la Calle."); } if ($_POST["numero"] == "") { $campoError = "numero"; throw new Exception("Debe ingresar el Número."); } if ($_POST["codigoPostal"] == "") { $campoError = "codigoPostal"; throw new Exception("Debe ingresar el Código Postal."); } if ((isset($_POST["provincia"])) and ($_POST["provincia"] == -1)) { $campoError = "provincia"; throw new Exception("Debe seleccionar la Provincia."); } if ($_POST["localidad"] == "") { $campoError = "localidad"; throw new Exception("Debe ingresar la Localidad."); } if ($_POST["email"] != "") { $params = array(":email" => $_POST["email"]); $sql = "SELECT art.varios.is_validaemail(:email) FROM DUAL"; if (valorSql($sql, "", $params) != "S") { $campoError = "email"; throw new Exception("El e-Mail debe tener un formato válido."); } } if (($_POST["establecimientos"] != "") and (!validarEntero($_POST["establecimientos"]))) { $campoError = "establecimientos"; throw new Exception("La Cantidad de establecimientos debe tener un formato válido."); } if ((!$isSoloPCP) and ($_POST["nivel"] == "")) { $campoError = "nivel"; throw new Exception("Debe indicar el Nivel de cumplimiento en Higiene y Seguridad."); } if ((!$isSoloPCP) and ($_POST["cargoResponsable"] == -1)) { $campoError = "cargoResponsable"; throw new Exception("El campo Cargo del Responsable ART es obligatorio."); } if ((!$isSoloPCP) and ($_POST["sexoResponsable"] == -1)) { $campoError = "sexoResponsable"; throw new Exception("El campo Sexo del Responsable ART es obligatorio."); } if ($_POST["emailResponsable"] != "") { $params = array(":email" => $_POST["emailResponsable"]); $sql = "SELECT art.varios.is_validaemail(:email) FROM DUAL"; if (valorSql($sql, "", $params) != "S") { $campoError = "emailResponsable"; throw new Exception("El e-Mail debe tener un formato válido."); } } // Bloque 2.. if ($_POST["fechaVigenciaDesde"] == "") { $campoError = "fechaVigenciaDesde"; throw new Exception("Debe ingresar la Vigencia Desde."); } $params = array(":fechavigenciadesde" => $_POST["fechaVigenciaDesde"]); $sql = "SELECT 1 FROM DUAL WHERE TO_DATE(:fechavigenciadesde, 'DD/MM/YYYY') < TO_DATE('01/01/1996', 'DD/MM/YYYY')"; if (existeSql($sql, $params)) { $campoError = "fechaVigenciaDesde"; throw new Exception("La vigencia no puede ser anterior al 01/01/1996."); } if ($_POST["fechaVigenciaHasta"] == "") { $campoError = "fechaVigenciaHasta"; throw new Exception("Debe ingresar la Vigencia Hasta."); } $params = array(":fechavigenciadesde" => $_POST["fechaVigenciaDesde"], ":fechasuscripcion" => $_POST["fechaSuscripcion"]); $sql = "SELECT 1 FROM DUAL WHERE TO_DATE(:fechavigenciadesde, 'DD/MM/YYYY') < TO_DATE(:fechasuscripcion, 'DD/MM/YYYY')"; if (existeSql($sql, $params)) { $campoError = "fechaVigenciaDesde"; throw new Exception("La vigencia no puede ser anterior a la fecha de suscripción."); } // Bloque 3.. if ($_POST["trabajadoresCantidad"] <= 0) { $campoError = "trabajadoresCantidad"; throw new Exception("Debe especificar la cantidad de empleados de la empresa."); } if ((!$isSoloPCP) and ($_POST["trabajadoresMasaSalarial"] <= 240)) { $campoError = "trabajadoresMasaSalarial"; throw new Exception("La masa salarial no puede ser inferior a los $240."); } // Bloque 4.. if ($isSoloPCP) { if ($alta) { $params = array(":usualta" => "W_".substr($_SESSION["usuario"], 0, 18)); $sql = "SELECT COUNT(*) FROM afi.alt_lugartrabajo_pcp WHERE lt_usualta = :usualta AND lt_idsolicitud = -1"; } else { $params = array(":idsolicitudcotizacion" => $id); $sql = "SELECT COUNT(*) FROM afi.alt_lugartrabajo_pcp, asa_solicitudafiliacion WHERE lt_idsolicitud = sa_id AND lt_fechabaja IS NULL AND sa_idsolicitudcotizacion = :idsolicitudcotizacion"; } if (valorSql($sql, "", $params, 0) < 1) { $campoError = "iframeEstablecimientos"; throw new Exception("Debe ingresar al menos un (1) lugar de trabajo."); } } // Bloque 7.. if (($isSoloPCP) and ($_POST["breveDescripcionTareas"] == "")) { $campoError = "breveDescripcionTareas"; throw new Exception("Debe ingresar una Breve descripción de tareas (máximo 250 caracteres)."); } if ($isSoloPCP) { $elementosSinChequear = false; $arrElementosPunto7 = array("electrico", "incendio", "extintor", "insecticida", "bencina", "raticida", "desinfectantes", "detergentes", "sodaCaustica", "desengrasante", "hipocloritoDeSodio", "amoniaco", "acidoMuriatico", "proteccionBalcones", "interiorAltura", "exteriorAltura", "escaleraBaranda", "indumentaria", "proteccionPersonal"); foreach ($arrElementosPunto7 as $valor) { if (getValorCheck($valor) == NULL) { if (($valor == "extintor") and (getValorCheck("incendio") == "N") and ($_POST["extintorCual"] != "")) continue; $elementosSinChequear = true; break; } } if ($elementosSinChequear ) { $campoError = $valor; throw new Exception("_Debe completar el cuestionario, 7. DESCRIPCIÓN DE TAREAS Y RIESGOS LABORALES (POSEE CARÁCTER DE DECLARACIÓN JURADA DEL EMPLEADOR)"); } } if (($isSoloPCP) and ($_POST["incendio"] == "S") and (getValorCheck("extintor") == NULL) and ($_POST["extintorCual"] != "")) { $campoError = "incendioS"; throw new Exception("Hay inconsistencias en las respuestas de Riesgo de Incendio No y selecciono un item en \"Indique cual\""); } if (($isSoloPCP) and (getValorCheck("insecticida") == "N") and ($_POST["insecticidaCual"] != "")) { $campoError = "insecticidaN"; throw new Exception("Hay inconsistencias en las respuestas de Riesgo Químico Insecticidas No y completó \"¿Cuáles?\""); } if (($isSoloPCP) and (getValorCheck("raticida") == "N") and ($_POST["raticidaCual"] != "")) { $campoError = "raticidaN"; throw new Exception("Hay inconsistencias en las respuestas de Riesgo Químico Raticidas No y completó \"¿Cuáles?\""); } if (($isSoloPCP) and (getValorCheck("interiorAltura") == "N") and ($_POST["interiorAlturaCual"] != "")) { $campoError = "interiorAlturaN"; throw new Exception("Hay inconsistencias en las respuestas de Instalaciones Edilicias, Realizan tareas interiores No y completó \"¿Cuáles?\""); } if (($isSoloPCP) and (getValorCheck("exteriorAltura") == "N") and ($_POST["exteriorAlturaCual"] != "")) { $campoError = "exteriorAlturaN"; throw new Exception("Hay inconsistencias en las respuestas de Instalaciones Edilicias, Realizan tareas exteriores No y completó \"¿ Cuáles ?\""); } if (($isSoloPCP) and (getValorCheck("indumentaria") == "N") and ($_POST["indumentariaCual"] != "")) { $campoError = "indumentariaN"; throw new Exception("Hay inconsistencias en las respuestas de Ropa y elementos de trabajo, Entrega indumentaria de trabajo No y completó \"¿Cuáles?\""); } if (($isSoloPCP) and (getValorCheck("proteccionPersonal") == "N") and ($_POST["proteccionPersonalCual"] != "")) { $campoError = "proteccionPersonalN"; throw new Exception("Hay inconsistencias en las respuestas de Ropa y elementos de trabajo, Entrega de Elementos de protección personal No y completó \"¿Cuáles?\""); } // Bloque 7.. if ($_POST["lugarSuscripcion"] == "") { $campoError = "lugarSuscripcion"; throw new Exception("Debe ingresar el Lugar."); } if ($_POST["nombreComercializador"] == "") { $campoError = "nombreComercializador"; throw new Exception("Debe ingresar el Nombre y Apellido."); } if ($_POST["vendedor"] == "") { $campoError = "vendedor"; throw new Exception("Debe ingresar el Vendedor."); } if ($idVendedor == -1) { $campoError = "vendedor"; throw new Exception("El Código de Vendedor no está dado de alta para la entidad ".$_SESSION["entidad"]."."); } if (($_SESSION["canal"] != 322) or (($_SESSION["canal"] == 322) and ($datosEmpleadorManual == "N"))) { if ($_POST["nombreEmpleador"] == "") { $campoError = "nombreEmpleador"; throw new Exception("El campo Nombre y Apellido del empleador es obligatorio."); } if ($_POST["cargoEmpleador"] < 1) { $campoError = "cargoEmpleador"; throw new Exception("El campo Cargo/Personería del empleador es obligatorio."); } if (($_POST["sexoEmpleador"] != "F") and ($_POST["sexoEmpleador"] != "M")) { $campoError = "sexoEmpleador"; throw new Exception("El campo Sexo del empleador es obligatorio."); } if ($_POST["dniTitular"] == "") { $campoError = "dniTitular"; throw new Exception("El campo D.N.I. del empleador es obligatorio."); } if (!validarEntero($_POST["dniTitular"])) { $campoError = "dniTitular"; throw new Exception("El campo D.N.I. es inválido."); } if ($_POST["telefonoEmpleador"] == "") { $campoError = "telefonoEmpleador"; throw new Exception("El campo Teléfono del empleador es obligatorio."); } if ($_POST["emailTitular"] == "") { $campoError = "emailTitular"; throw new Exception("El campo e-Mail del empleador es obligatorio."); } } if (($_POST["dniTitular"] != "") and (!validarEntero($_POST["dniTitular"]))) { $campoError = "dniTitular"; throw new Exception("El D.N.I. del empleador debe tener un formato válido."); } if ((($_SESSION["canal"] != 322) or (($_SESSION["canal"] == 322) and ($datosEmpleadorManual == "N"))) and (strlen($_POST["dniTitular"]) < 7)) { $campoError = "dniTitular"; throw new Exception("El D.N.I. del Empleador es inválido."); } if ($_POST["emailTitular"] != "") { $params = array(":email" => $_POST["emailTitular"]); $sql = "SELECT art.varios.is_validaemail(:email) FROM DUAL"; if (valorSql($sql, "", $params) != "S") { $campoError = "emailTitular"; throw new Exception("El e-Mail Titular debe tener un formato válido."); } } // Bloque 8.. if ((!$isSoloPCP) and (!isset($_POST["rgrlImpreso"]))) { $campoError = "rgrlImpreso"; throw new Exception("Debe indicar si tiene impreso el RGRL de cada establecimiento."); } // Bloque RC.. if ((isset($_POST["suscribePolizaRC"])) and ($_POST["suscribePolizaRC"] == "S")) { // Si es una solicitud de cotización y suscribe la póliza de responsibilidad civil, hay que validar lo de abajo.. if ($sumaAseguradaRC == NULL) { $campoError = "sumaAseguradaRC"; throw new Exception("Debe indicar la Suma Asegurada de la responsibilidad civil."); } if ($formaPago == NULL) { $campoError = "formaPago"; throw new Exception("Debe indicar la Forma de Pago de la responsibilidad civil."); } if ($formaPago == "TC") { if ($_POST["tarjetaCredito"] == -1) { $campoError = "tarjetaCredito"; throw new Exception("Debe seleccionar la Tarjeta de Crédito."); } if (strlen($_POST["cbu"]) < 16) { $campoError = "cbu"; throw new Exception("El Nº Tarjeta de Crédito debe tener al menos 16 caracteres."); } } if (($formaPago == "DA") and (strlen($_POST["cbu"]) != 22)) { $campoError = "cbu"; throw new Exception("El C.B.U. de la responsibilidad civil debe tener 22 caracteres."); } if ($iva == NULL) { $campoError = "iva"; throw new Exception("Debe indicar el I.V.A. de la responsibilidad civil."); } if ($iibb == NULL) { $campoError = "iibb"; throw new Exception("Debe indicar el I.I.B.B. de la responsibilidad civil."); } if ($_POST["emailPolizaRC"] == "") { $campoError = "emailPolizaRC"; throw new Exception("Debe indicar el e-Mail donde quiere recepcionar la póliza de la responsibilidad civil."); } if ($_POST["emailPolizaRC"] != "") { $params = array(":email" => $_POST["emailPolizaRC"]); $sql = "SELECT art.varios.is_validaemail(:email) FROM DUAL"; if (valorSql($sql, "", $params) != "S") { $campoError = "emailPolizaRC"; throw new Exception("La Recepción de Póliza vía e-mail debe tener un formato válido."); } } } }