/** * On affiche la liste des raccourcis de classification associé à une classification * @param objet $paramFtaModel * @param int $paramIdClassificationFta2 * @param boolean $paramIsEditable * @return string */ public static function getHtmlClassificationRaccourcisAssociation(FtaModel $paramFtaModel, $paramIdClassificationFta2, $paramIsEditable) { $htmlList = new HtmlListSelect(); $paramFtaModel->setDataFtaTableToCompare(); $dataFieldIdClassificationRaccourcisTMP = $paramFtaModel->getDataField(FtaModel::FIELDNAME_ID_CLASSIFICATION_RACCOURCIS); $arrayClassificationRaccourcis = DatabaseOperation::convertSqlStatementWithKeyAndOneFieldToArray('SELECT DISTINCT ' . ClassificationRaccourcisModel::TABLENAME . '.' . ClassificationRaccourcisModel::KEYNAME . ',' . ClassificationRaccourcisModel::TABLENAME . '.' . ClassificationRaccourcisModel::FIELDNAME_NOM_CLASSIFICATION_RACCOURCIS . ' FROM ' . ClassificationRaccourcisModel::TABLENAME . ',' . self::TABLENAME . ' WHERE ' . ClassificationRaccourcisModel::TABLENAME . '.' . ClassificationRaccourcisModel::KEYNAME . ' = ' . self::TABLENAME . '.' . self::FIELDNAME_ID_CLASSIFICATION_RACCOURCIS . ' AND ' . self::FIELDNAME_ID_FTA_CLASSIFICATION2 . '=' . $paramIdClassificationFta2 . ' ORDER BY ' . ClassificationRaccourcisModel::FIELDNAME_NOM_CLASSIFICATION_RACCOURCIS); /** * Si le chapitre est editable alors on vérifie si * pour une classification nous avons plusieurs raccourcis de classification associé * Si nous avons plusieur résultat alors on affiche la liste déroulante * sinon on enregistre l'unique résutat */ // if ($paramIsEditable == Chapitre::EDITABLE) { // if (count($arrayClassificationRaccourcis) > "1") { // $paramIsEditable = Chapitre::EDITABLE; // } else { // /** // * Enregistrement de la donnée raccourcis de classification // */ // if ($arrayClassificationRaccourcis) { // foreach ($arrayClassificationRaccourcis as $key => $value) { // $ftaModel->getDataField(FtaModel::FIELDNAME_ID_CLASSIFICATION_RACCOURCIS)->setFieldValue($key); // $ftaModel->saveToDatabase(); // } // } // $paramIsEditable = Chapitre::NOT_EDITABLE; // } // } $htmlList->setArrayListContent($arrayClassificationRaccourcis); /** * On vérifie si la donnée en BDD se trouve dans le tableau * Sinon alors on vide la donnée de la BDD */ $dataFieldIdClassificationRaccourcis = FtaController::checkDataInArrayKeyList($dataFieldIdClassificationRaccourcisTMP, $arrayClassificationRaccourcis); $HtmlTableName = FtaModel::TABLENAME . '_' . FtaModel::FIELDNAME_ID_CLASSIFICATION_RACCOURCIS . '_' . $paramFtaModel->getKeyValue(); /** * Vérification des règle de validation */ $dataFieldIdClassificationRaccourcis->checkValidationRules(); if ($dataFieldIdClassificationRaccourcis->getDataValidationSuccessful() == TRUE) { $htmlList->setIsWarningMessage($dataFieldIdClassificationRaccourcis->getDataValidationSuccessful()); $paramFtaModel->setDataValidationSuccessfulToTrue(); } else { $htmlList->setIsWarningMessage($dataFieldIdClassificationRaccourcis->getDataValidationSuccessful()); $htmlList->setWarningMessage($dataFieldIdClassificationRaccourcis->getDataWarningMessage()); $paramFtaModel->setDataValidationSuccessfulToFalse(); } $htmlList->setSelectedValue($dataFieldIdClassificationRaccourcis->getFieldValue()); $htmlList->getAttributes()->getName()->setValue(FtaModel::FIELDNAME_ID_CLASSIFICATION_RACCOURCIS); $htmlList->setLabel(DatabaseDescription::getFieldDocLabel(ClassificationRaccourcisAssociationModel::TABLENAME, ClassificationRaccourcisAssociationModel::FIELDNAME_ID_CLASSIFICATION_RACCOURCIS)); $htmlList->setIsEditable($paramIsEditable); $htmlList->initAbstractHtmlSelect($HtmlTableName, $htmlList->getLabel(), $dataFieldIdClassificationRaccourcis->getFieldValue(), $dataFieldIdClassificationRaccourcis->isFieldDiff(), $htmlList->getArrayListContent(), $htmlList->getIsWarningMessage(), $htmlList->getWarningMessage()); $htmlList->getEventsForm()->setOnChangeWithAjaxAutoSave(FtaModel::TABLENAME, FtaModel::KEYNAME, $paramFtaModel->getKeyValue(), FtaModel::FIELDNAME_ID_CLASSIFICATION_RACCOURCIS); /** * Description d'un champ */ $htmlList->setHelp(IntranetColumnInfoModel::getFieldDesc($dataFieldIdClassificationRaccourcis->getTableName(), $dataFieldIdClassificationRaccourcis->getFieldName(), $dataFieldIdClassificationRaccourcis->getFieldLabel(), $htmlList)); $listeClassificationRaccourcis = $htmlList->getHtmlResult(); return $listeClassificationRaccourcis; }
public static function buildChapitreDureeDeVie() { $bloc = ''; $id_fta = self::$id_fta; $synthese_action = self::$synthese_action; $isEditable = self::$is_editable; //$isEditable = TRUE; // //Identifiant FTA $ftaModel = new FtaModel($id_fta); $ftaModel->setDataFtaTableToCompare(); $ftaView = new FtaView($ftaModel); $ftaView->setIsEditable($isEditable); $ftaView->setFtaChapitreModelById(self::ID_CHAPITRE_IDENTITE); //Durée de vie Production (en jours) $bloc .= $ftaView->getHtmlDataField(FtaModel::FIELDNAME_DUREE_DE_VIE_TECHNIQUE_PRODUCTION); //Code Douane $bloc .= $ftaView->getHtmlDataField(FtaModel::FIELDNAME_CODE_DOUANE_FTA); if ($ftaView->isDataValidationSuccessful() == "0") { self::setDataValidationSuccessfulToTrue(); } return $bloc; }
// include ('./menu_principal.inc'); //Sinon, menu par défaut // } } //Fin de la sélection du mode d'affichage de la page $id_fta = Lib::getParameterFromRequest(FtaModel::KEYNAME); $synthese_action = Lib::getParameterFromRequest('synthese_action'); $id_fta_chapitre_encours = Lib::getParameterFromRequest('id_fta_chapitre_encours', '1'); $comeback = Lib::getParameterFromRequest('comeback'); $idFtaEtat = Lib::getParameterFromRequest(FtaEtatModel::KEYNAME); $abreviationFtaEtat = Lib::getParameterFromRequest(FtaEtatModel::FIELDNAME_ABREVIATION); $idFtaRole = Lib::getParameterFromRequest(FtaRoleModel::KEYNAME); /** * Initialisation */ $ftaModel = new FtaModel($id_fta); $ftaModel->setDataFtaTableToCompare(); $ftaView = new FtaView($ftaModel); $ftaView->setIsEditable(Chapitre::NOT_EDITABLE); $idFtaWorkflow = $ftaModel->getDataField(FtaModel::FIELDNAME_WORKFLOW)->getFieldValue(); $globalConfig = new GlobalConfig(); if ($globalConfig->getAuthenticatedUser()) { $idUser = $globalConfig->getAuthenticatedUser()->getKeyValue(); } else { $titre = UserInterfaceMessage::FR_WARNING_DECONNECTION_TITLE; $message = UserInterfaceMessage::FR_WARNING_DECONNECTION; Lib::showMessage($titre, $message, $redirection); } $idUser = $globalConfig->getAuthenticatedUser()->getKeyValue(); /** * Contrôle du rôle attribué */
/** * On affiche la liste des gammes famille budget associé à une classification * @param object $paramFtaModel FtaModel * @param int $paramIdClassificationFta2 * @param boolean $paramIsEditable * @return string */ public static function getHtmlClassificationGammeFamilleBudget(FtaModel $paramFtaModel, $paramIdClassificationFta2, $paramIsEditable) { $htmlList = new HtmlListSelect(); $paramFtaModel->setDataFtaTableToCompare(); $idMarque = ClassificationFta2Model::getIdClassificationTypeByTypeNameAndIdClassificationFta2($paramIdClassificationFta2, ClassificationFta2Model::FIELDNAME_ID_MARQUE); $dataFieldIdArcadiaGammeFamilleBudgetTMP = $paramFtaModel->getDataField(FtaModel::FIELDNAME_ID_ARCADIA_GAMME_FAMILLE_BUDGET); $arrayGammeFamilleBudget = DatabaseOperation::convertSqlStatementWithKeyAndOneFieldToArray('SELECT DISTINCT ' . ArcadiaGammeFamilleBudgetModel::TABLENAME . '.' . ArcadiaGammeFamilleBudgetModel::KEYNAME . ', CONCAT_WS( \' - \',' . ArcadiaGammeFamilleBudgetModel::TABLENAME . '.' . ArcadiaGammeFamilleBudgetModel::KEYNAME . ',' . ArcadiaGammeFamilleBudgetModel::FIELDNAME_NOM_ARCADIA_GAMME_FAMILLE_BUDGET . ') FROM ' . ArcadiaGammeFamilleBudgetModel::TABLENAME . ',' . self::TABLENAME . ' WHERE ' . ArcadiaGammeFamilleBudgetModel::TABLENAME . '.' . ArcadiaGammeFamilleBudgetModel::KEYNAME . ' = ' . self::TABLENAME . '.' . self::FIELDNAME_ID_ARCADIA_GAMME_FAMILLE_BUDGET . ' AND ' . self::FIELDNAME_ID_MARQUE . '=' . $idMarque . ' ORDER BY ' . ArcadiaGammeFamilleBudgetModel::KEYNAME); /** * Si le chapitre est editable alors on vérifie si * pour une classification nous avons plusieurs gamme famille budget associé * Si nous avons plusieur résultat alors on affiche la liste déroulante * sinon on enregistre l'unique résutat */ // if ($paramIsEditable == Chapitre::EDITABLE) { // if (count($arrayGammeFamilleBudget) > "1") { // $paramIsEditable = Chapitre::EDITABLE; // } else { // /** // * Enregistrement de la donnée gamme famille budget // */ // if ($arrayGammeFamilleBudget) { // foreach ($arrayGammeFamilleBudget as $key => $value) { // $ftaModel->getDataField(FtaModel::FIELDNAME_ID_ARCADIA_GAMME_FAMILLE_BUDGET)->setFieldValue($key); // $ftaModel->saveToDatabase(); // } // } // $paramIsEditable = Chapitre::NOT_EDITABLE; // } // } $htmlList->setArrayListContent($arrayGammeFamilleBudget); /** * On vérifie si la donnée en BDD se trouve dans le tableau * Sinon alors on vide la donnée de la BDD */ $dataFieldIdArcadiaGammeFamilleBudget = FtaController::checkDataInArrayKeyList($dataFieldIdArcadiaGammeFamilleBudgetTMP, $arrayGammeFamilleBudget); $HtmlTableName = FtaModel::TABLENAME . '_' . FtaModel::FIELDNAME_ID_ARCADIA_GAMME_FAMILLE_BUDGET . '_' . $paramFtaModel->getKeyValue(); /** * Vérification des règle de validation */ $dataFieldIdArcadiaGammeFamilleBudget->checkValidationRules(); if ($dataFieldIdArcadiaGammeFamilleBudget->getDataValidationSuccessful() == TRUE) { $htmlList->setIsWarningMessage($dataFieldIdArcadiaGammeFamilleBudget->getDataValidationSuccessful()); $paramFtaModel->setDataValidationSuccessfulToTrue(); } else { $htmlList->setIsWarningMessage($dataFieldIdArcadiaGammeFamilleBudget->getDataValidationSuccessful()); $htmlList->setWarningMessage($dataFieldIdArcadiaGammeFamilleBudget->getDataWarningMessage()); $paramFtaModel->setDataValidationSuccessfulToFalse(); } $htmlList->getAttributes()->getName()->setValue(FtaModel::FIELDNAME_ID_ARCADIA_GAMME_FAMILLE_BUDGET); $htmlList->setLabel(DatabaseDescription::getFieldDocLabel(FtaModel::TABLENAME, FtaModel::FIELDNAME_ID_ARCADIA_GAMME_FAMILLE_BUDGET)); $htmlList->setIsEditable($paramIsEditable); $htmlList->initAbstractHtmlSelect($HtmlTableName, $htmlList->getLabel(), $dataFieldIdArcadiaGammeFamilleBudget->getFieldValue(), $dataFieldIdArcadiaGammeFamilleBudget->isFieldDiff(), $htmlList->getArrayListContent(), $htmlList->getIsWarningMessage(), $htmlList->getWarningMessage()); $htmlList->getEventsForm()->setOnChangeWithAjaxAutoSave(FtaModel::TABLENAME, FtaModel::KEYNAME, $paramFtaModel->getKeyValue(), FtaModel::FIELDNAME_ID_ARCADIA_GAMME_FAMILLE_BUDGET); /** * Description d'un champ */ $htmlList->setHelp(IntranetColumnInfoModel::getFieldDesc($dataFieldIdArcadiaGammeFamilleBudget->getTableName(), $dataFieldIdArcadiaGammeFamilleBudget->getFieldName(), $dataFieldIdArcadiaGammeFamilleBudget->getFieldLabel(), $htmlList)); $listeGammeFamilleBudget = $htmlList->getHtmlResult(); return $listeGammeFamilleBudget; }
/** * Affiche l'historique de la Fta * @param int $paramIdFtaDossier * @param int $paramIdFtaWorkflow * @return string */ public static function getHtmlHistoriqueFta($paramIdFtaDossier, $paramIdFtaWorkflow) { /** * Historisation des changement d'état initialisé en modification */ $arrayHistoValidationFta = DatabaseOperation::convertSqlStatementWithoutKeyToArray("SELECT DISTINCT " . FtaEtatHistoriqueModel::FIELDNAME_ID_DOSSIER_FTA . "," . FtaEtatHistoriqueModel::FIELDNAME_ID_DOSSIER_VERSION_FTA . "," . FtaEtatHistoriqueModel::FIELDNAME_ID_FTA_ETAT_DEST . "," . UserModel::FIELDNAME_NOM . "," . UserModel::FIELDNAME_PRENOM . "," . FtaEtatHistoriqueModel::FIELDNAME_STATE_CHANGE_DATE . " FROM " . FtaEtatHistoriqueModel::TABLENAME . "," . UserModel::TABLENAME . " WHERE " . FtaEtatHistoriqueModel::TABLENAME . "." . FtaEtatHistoriqueModel::FIELDNAME_ID_USER . "=" . UserModel::TABLENAME . "." . UserModel::KEYNAME . " AND " . FtaEtatHistoriqueModel::FIELDNAME_ID_DOSSIER_FTA . "=" . $paramIdFtaDossier . " ORDER BY " . FtaEtatHistoriqueModel::FIELDNAME_STATE_CHANGE_DATE . " DESC "); if ($arrayHistoValidationFta) { foreach ($arrayHistoValidationFta as $rowsHistoValidationFta) { $ftaEtatModel = new FtaEtatModel($rowsHistoValidationFta[FtaEtatHistoriqueModel::FIELDNAME_ID_FTA_ETAT_DEST]); $nomFtaEtat = $ftaEtatModel->getDataField(FtaEtatModel::FIELDNAME_NOM_FTA_ETAT)->getFieldValue(); $versionEncours = "V" . $rowsHistoValidationFta[FtaEtatHistoriqueModel::FIELDNAME_ID_DOSSIER_VERSION_FTA]; $nomSignataire = $rowsHistoValidationFta[UserModel::FIELDNAME_PRENOM] . " " . $rowsHistoValidationFta[UserModel::FIELDNAME_NOM]; $dateValidation = $rowsHistoValidationFta[FtaEtatHistoriqueModel::FIELDNAME_STATE_CHANGE_DATE]; /** * Changment de format de date */ $date = FtaController::changementDuFormatDeDateFR($dateValidation); $arrayHistoModif[] = array("date" => $date, "nom" => $nomSignataire, "version" => $versionEncours, "etat" => $nomFtaEtat, "oldValue" => $oldValue, "newValue" => $newValue); } } /** * Listes des tables Fta à vérifier */ $arrayTableCheck = array(FtaModel::TABLENAME, FtaComposantModel::TABLENAME, FtaConditionnementModel::TABLENAME); /** * Historiques des changement de données par les utilisateurs */ foreach ($arrayTableCheck as $rowsTableCheck) { /** * Tableau des Fta selon le dossier encours */ $arrayIdFta = FtaModel::getArrayIdFtaByIdDossierFta($paramIdFtaDossier); foreach ($arrayIdFta as $rowsIdFta) { $idFtaEncours = $rowsIdFta[FtaModel::KEYNAME]; $ftaModelEncours = new FtaModel($idFtaEncours); $versionFta = "V" . $ftaModelEncours->getDataField(FtaModel::FIELDNAME_VERSION_DOSSIER_FTA)->getFieldValue(); /** * Listes des noms des champs avec le label de la table encours */ if ($rowsTableCheck == FtaModel::TABLENAME) { $model = new FtaModel($idFtaEncours); $model->setDataFtaTableToCompare(); $arrayChamps = DatabaseOperation::convertSqlStatementWithoutKeyToArray("SELECT DISTINCT " . IntranetColumnInfoModel::FIELDNAME_COLUMN_NAME_INTRANET_COLUMN_INFO . "," . IntranetColumnInfoModel::FIELDNAME_LABEL_INTRANET_COLUMN_INFO . "," . IntranetColumnInfoModel::FIELDNAME_ID_LISTE_CHAPITRE_HISTORIQUE . " FROM " . IntranetColumnInfoModel::TABLENAME . " WHERE " . IntranetColumnInfoModel::FIELDNAME_TABLE_NAME_INTRANET_COLUMN_INFO . "='" . $rowsTableCheck . "'" . " AND " . IntranetColumnInfoModel::FIELDNAME_IS_ENABLED_INTRANET_HISTORIQUE . "=" . IntranetColumnInfoModel::IS_ENABLED_INTRANET_HISTORIQUE_TRUE); foreach ($arrayChamps as $rowsChamps) { $check = $model->getDataField($rowsChamps[IntranetColumnInfoModel::FIELDNAME_COLUMN_NAME_INTRANET_COLUMN_INFO])->isFieldDiff(); if ($check) { $htmlObjetOld = Html::getHtmlObjectFromDataField($model->getDataToCompare()->getDataFieldByFieldName($rowsChamps[IntranetColumnInfoModel::FIELDNAME_COLUMN_NAME_INTRANET_COLUMN_INFO])); $oldValue = $htmlObjetOld->getRawContent(); $htmlObjetNew = Html::getHtmlObjectFromDataField($model->getDataField($rowsChamps[IntranetColumnInfoModel::FIELDNAME_COLUMN_NAME_INTRANET_COLUMN_INFO])); $newValue = $htmlObjetNew->getRawContent(); $label = $rowsChamps[IntranetColumnInfoModel::FIELDNAME_LABEL_INTRANET_COLUMN_INFO]; $idFtaChapitreTmp = $rowsChamps[IntranetColumnInfoModel::FIELDNAME_ID_LISTE_CHAPITRE_HISTORIQUE]; $idFtaChapitreArray = explode(',', $idFtaChapitreTmp); $idFtaChapitre = FtaWorkflowStructureModel::getIdFtaChapitreBetweenArrayByWorkflowAndArrayByColumn($paramIdFtaWorkflow, $idFtaChapitreArray); if ($idFtaChapitre) { $nomSignataire = FtaSuiviProjetModel::getUserNameByIdFtaChapitreAndIdFta($idFtaEncours, $idFtaChapitre); $dateValidation = FtaSuiviProjetModel::getValidationDateByIdFtaChapitreAndIdFta($idFtaEncours, $idFtaChapitre); $arrayHistoModif[] = array("date" => $dateValidation, "nom" => $nomSignataire, "version" => $versionFta, "etat" => $label, "oldValue" => $oldValue, "newValue" => $newValue); } } } } elseif ($rowsTableCheck == FtaComposantModel::TABLENAME) { /** * On récupère la liste des composants */ $arraIdFtaComposant = FtaComposantModel::getArrayIdFtaComposantTable($idFtaEncours); if ($arraIdFtaComposant) { foreach ($arraIdFtaComposant as $rowsIdFtaComposant) { $idFtaComposant = $rowsIdFtaComposant[FtaComposantModel::KEYNAME]; $model = new FtaComposantModel($idFtaComposant); $model->setDataFtaComposantTableToCompare(); $arrayChamps = DatabaseOperation::convertSqlStatementWithoutKeyToArray("SELECT DISTINCT " . IntranetColumnInfoModel::FIELDNAME_COLUMN_NAME_INTRANET_COLUMN_INFO . "," . IntranetColumnInfoModel::FIELDNAME_LABEL_INTRANET_COLUMN_INFO . "," . IntranetColumnInfoModel::FIELDNAME_ID_LISTE_CHAPITRE_HISTORIQUE . " FROM " . IntranetColumnInfoModel::TABLENAME . " WHERE " . IntranetColumnInfoModel::FIELDNAME_TABLE_NAME_INTRANET_COLUMN_INFO . "='" . $rowsTableCheck . "'" . " AND " . IntranetColumnInfoModel::FIELDNAME_IS_ENABLED_INTRANET_HISTORIQUE . "=" . IntranetColumnInfoModel::IS_ENABLED_INTRANET_HISTORIQUE_TRUE); foreach ($arrayChamps as $rowsChamps) { $check = $model->getDataField($rowsChamps[IntranetColumnInfoModel::FIELDNAME_COLUMN_NAME_INTRANET_COLUMN_INFO])->isFieldDiff(); if ($check) { $htmlObjetOld = Html::getHtmlObjectFromDataField($model->getDataToCompare()->getDataFieldByFieldName($rowsChamps[IntranetColumnInfoModel::FIELDNAME_COLUMN_NAME_INTRANET_COLUMN_INFO])); $oldValue = $htmlObjetOld->getRawContent(); $htmlObjetNew = Html::getHtmlObjectFromDataField($model->getDataField($rowsChamps[IntranetColumnInfoModel::FIELDNAME_COLUMN_NAME_INTRANET_COLUMN_INFO])); $newValue = $htmlObjetNew->getRawContent(); $label = $rowsChamps[IntranetColumnInfoModel::FIELDNAME_LABEL_INTRANET_COLUMN_INFO]; $idFtaChapitreTmp = $rowsChamps[IntranetColumnInfoModel::FIELDNAME_ID_LISTE_CHAPITRE_HISTORIQUE]; $idFtaChapitreArray = explode(',', $idFtaChapitreTmp); $idFtaChapitre = FtaWorkflowStructureModel::getIdFtaChapitreBetweenArrayByWorkflowAndArrayByColumn($paramIdFtaWorkflow, $idFtaChapitreArray); if ($idFtaChapitre) { $nomSignataire = FtaSuiviProjetModel::getUserNameByIdFtaChapitreAndIdFta($idFtaEncours, $idFtaChapitre); $dateValidation = FtaSuiviProjetModel::getValidationDateByIdFtaChapitreAndIdFta($idFtaEncours, $idFtaChapitre); $arrayHistoModif[] = array("date" => $dateValidation, "nom" => $nomSignataire, "version" => $versionFta, "etat" => $label, "oldValue" => $oldValue, "newValue" => $newValue); } } } } } } elseif ($rowsTableCheck == FtaConditionnementModel::TABLENAME) { $arraIdFtaConditionnment = FtaConditionnementModel::getArrayIdFtaConditionnement($idFtaEncours); /** * On récupère la liste des embalalges */ if ($arraIdFtaConditionnment) { foreach ($arraIdFtaConditionnment as $rowsIdFtaConditionnment) { $idFtaConditionnement = $rowsIdFtaConditionnment[FtaConditionnementModel::KEYNAME]; $model = new FtaConditionnementModel($idFtaConditionnement); /** * On vérifie si l'un des champs de l'emballage encours est différents de la version précedentes */ $model->setDataFtaConditionnementTableToCompare(); /** * restraiendre la liste des champs */ $arrayChamps = DatabaseOperation::convertSqlStatementWithoutKeyToArray("SELECT DISTINCT " . IntranetColumnInfoModel::FIELDNAME_COLUMN_NAME_INTRANET_COLUMN_INFO . "," . IntranetColumnInfoModel::FIELDNAME_LABEL_INTRANET_COLUMN_INFO . " FROM " . IntranetColumnInfoModel::TABLENAME . " WHERE " . IntranetColumnInfoModel::FIELDNAME_TABLE_NAME_INTRANET_COLUMN_INFO . "='" . $rowsTableCheck . "'" . " AND " . IntranetColumnInfoModel::FIELDNAME_IS_ENABLED_INTRANET_HISTORIQUE . "=" . IntranetColumnInfoModel::IS_ENABLED_INTRANET_HISTORIQUE_TRUE); foreach ($arrayChamps as $rowsChamps) { $check = $model->getDataField($rowsChamps[IntranetColumnInfoModel::FIELDNAME_COLUMN_NAME_INTRANET_COLUMN_INFO])->isFieldDiff(); if ($check) { $htmlObjetOld = Html::getHtmlObjectFromDataField($model->getDataToCompare()->getDataFieldByFieldName($rowsChamps[IntranetColumnInfoModel::FIELDNAME_COLUMN_NAME_INTRANET_COLUMN_INFO])); $oldValue = $htmlObjetOld->getRawContent(); $htmlObjetNew = Html::getHtmlObjectFromDataField($model->getDataField($rowsChamps[IntranetColumnInfoModel::FIELDNAME_COLUMN_NAME_INTRANET_COLUMN_INFO])); $newValue = $htmlObjetNew->getRawContent(); $label = $rowsChamps[IntranetColumnInfoModel::FIELDNAME_LABEL_INTRANET_COLUMN_INFO]; $idFtaChapitreTmp = $rowsChamps[IntranetColumnInfoModel::FIELDNAME_ID_LISTE_CHAPITRE_HISTORIQUE]; $idFtaChapitreArray = explode(',', $idFtaChapitreTmp); $idFtaChapitre = FtaWorkflowStructureModel::getIdFtaChapitreBetweenArrayByWorkflowAndArrayByColumn($paramIdFtaWorkflow, $idFtaChapitreArray); if ($idFtaChapitre) { $nomSignataire = FtaSuiviProjetModel::getUserNameByIdFtaChapitreAndIdFta($idFtaEncours, $idFtaChapitre); $dateValidation = FtaSuiviProjetModel::getValidationDateByIdFtaChapitreAndIdFta($idFtaEncours, $idFtaChapitre); $arrayHistoModif[] = array("date" => $dateValidation, "nom" => $nomSignataire, "version" => $versionFta, "etat" => $label, "oldValue" => $oldValue, "newValue" => $newValue); } } } } } } } } /** * Affichage du tableau */ if (is_array($arrayHistoModif)) { FtaController::arraySortByColumn($arrayHistoModif, "date"); $tableauFiche .= '<th>' . 'Date' . '</th><th>' . 'Ultilisateur' . '</th><th>' . 'Version du dossier FTA' . '</th><th>' . 'Colonne' . '</th><th>' . 'Ancienne valeur' . '</th><th>' . 'Nouvelle valeur' . '</th>'; foreach ($arrayHistoModif as $rowsHistoModif) { $tableauFiche .= '<tr class=contenu >' . '<td width=8%> ' . $rowsHistoModif["date"] . '</td>' . '<td >' . $rowsHistoModif["nom"] . '</td>' . '<td >' . $rowsHistoModif["version"] . '</td>' . '<td >' . $rowsHistoModif["etat"] . '</td>' . '<td >' . $rowsHistoModif["oldValue"] . '</td>' . '<td >' . $rowsHistoModif["newValue"] . '</td>' . '</tr >'; } } return $tableauFiche; }