$dateDataProWeb) { $_return["contrat"] = $_return["actif"] = $_return["RHBase"] = $_return["loginIdRH"] = $_return["jourEntreeRH"] = "N/A"; array_push($_return["errorJson"], "absent"); } else { $_return["loginIdRH"] = (empty($verifRH["loginId"]) or $verifRH["loginId"] == $_return["loginId"]) ? NULL : $verifRH["loginId"]; $_return["jourEntreeRH"] = (empty($verifRH["jourEntree"]) or self::convertDateMoisAnJour($verifRH["jourEntree"]) == $_return["jourEntree"]) ? NULL : self::convertDateMoisAnJour($verifRH["jourEntree"]); $_return["jourSortie"] = (isset($verifRH["jourSortie"])) ? $verifRH["jourSortie"] : $_return["jourSortie"]; $_return["RHBase"] = (isset($verifRH["jourSortie"]) or empty($verifRH["id"])) ? 0 : 1; $_return["actif"] = (isset($verifRH["jourSortie"]) or empty($verifRH["id"])) ? 0 : 1; $_return["contrat"] = (isset($verifRH["contrat"])) ? $verifRH["contrat"] : 0; // ---- if (!self::checkValuesNom($_return["nom"])) { $_return["error"] = 1; array_push($_return["errorJson"], "nom"); } if (!self::checkValuesPrenom($_return["prenom"])) { $_return["error"] = 1; array_push($_return["errorJson"], "prenom"); } if (!self::checkValuesloginId($_return["loginId"], $_return["loginIdRH"])) { $_return["error"] = 1; array_push($_return["errorJson"], "loginId"); } if (!self::checkValuesJourEntree($_return["jourEntree"])) { $_return["error"] = 1; array_push($_return["errorJson"], "jourEntree"); } if ($_return["jourEntreeRH"] != NULL and $_return["jourEntree"] != "N/A") { $_return["error"] = 1; array_push($_return["errorJson"], "jourEntree"); } if ($_return["jourEntree"] != "N/A") { // On ignore les nouveaux salariés qui se sont inscrits post import du fichier RH if ($dateDataRH > $dateDataProWeb) { if (!self::checkValuesRHBase($_return["RHBase"], $_return["actif"], $_return["jourSortie"])) { $_return["error"] = 1; array_push($_return["errorJson"], "RHBase"); } } } // if ($_return["contrat"] == 0 AND $_return["jourSortie"] == "N/A") { // $_return["error"] = 1; // array_push($_return["errorJson"], "contrat"); // } } $_return["errorJson"] = (!empty($_return["errorJson"][0])) ? json_encode($_return["errorJson"]) : NULL; return $_return; } // Les initialisations private static function archiveExcelValuesDate(string $_string) { if(!isset($_string) or $_string == "00-00-0000"){ return "N/A"; } else { return str_replace(" 00:00:00", "", $_string); } } private static function archiveExcelValuesSexe(string $_string) { return (empty($_string)) ? "N/A" : $_string; } private static function archiveExcelValuesloginId(string $_string) { return core::cleanAccent($_string); } private static function archiveExcelValuesNom(string $_string) { return core::cleanAccent($_string); } private static function archiveExcelValuesPrenom(string $_string) { return core::cleanAccent($_string); } private static function archiveExcelValuesActif(string $_string) { if ($_string == "Actif") { return 1; } elseif ($_string == "Inactif") { return 0; } else { return "N/A"; } } private static function archiveExcelValuesLieu(string $_string) { return (empty($_string)) ? "N/A" : $_string; } // Les checks public static function checkSalarieByLoginId(string $_loginId, string $_nom = NULL, string $_prenom = NULL) { // Récupération des données de l'excel au format Json if ($_nom == NULL) { db::query("SELECT id, loginId, jourEntree, jourSortie, contrat FROM " . DB_T_SALARIES . " WHERE loginId = :loginId"); } else { db::query("SELECT id, loginId, jourEntree, jourSortie, contrat FROM " . DB_T_SALARIES . " WHERE loginId = :loginId OR (nom = :nom AND prenom = :prenom)"); db::bind(':nom', $_nom); db::bind(':prenom', $_prenom); } db::bind(':loginId', $_loginId); return db::single(); } private static function checkValuesActif(string $_string) { return ($_string == "N/A") ? FALSE : TRUE; } private static function checkValuesloginId(string $_idLogin, string $_idLoginRH = NULL) { if ($_idLoginRH != NULL) { if (empty(self::checkSalarieByLoginId($_idLogin)["id"])) { return FALSE; } elseif (core::checkStringOnly($_idLogin)) { return FALSE; } elseif (strlen($_idLogin) > 10) { return FALSE; } elseif (empty($_idLogin)) { return FALSE; } else { return TRUE; } } else { return TRUE; } } private static function checkValuesRHBase(string $_string, int $_actif, string $_sortie) { return ($_string == 0 and $_actif == 1 and $_sortie == "N/A") ? FALSE : TRUE; } private static function checkValuesJourEntree(string $_string) { return ($_string == "N/A") ? FALSE : TRUE; } private static function checkValuesJourSortie(string $_string, int $_actif) { return ($_string != "N/A" and $_actif == 1) ? FALSE : TRUE; } private static function checkValuesNom(string $_string) { return (empty($_string)) ? FALSE : TRUE; } private static function checkValuesPrenom(string $_string) { return (empty($_string)) ? FALSE : TRUE; } private static function checkValuesSexe(string $_string) { return ($_string == NULL or ($_string != "M." and $_string != "Mme")) ? FALSE : TRUE; } private static function checkValuesLieu(string $_string) { return (empty($_string)) ? FALSE : TRUE; } public static function downloadExcel(int $_id, string $_file) { $data = base64_decode(self::getExcelById($_id)["file"]); $fileTemp = fopen(DIR_TEMP . $_file, "w"); file_put_contents(DIR_TEMP . $_file, $data); fclose($fileTemp); return DIR_TEMP . $_file; } }