Exemplo n.º 1
0
 /**
  * 
  * @return type
  */
 public function getHtmlCorrectionChapitre()
 {
     $return = NULL;
     $idFtaSuiviProjet = FtaSuiviProjetModel::getIdFtaSuiviProjetByIdFtaAndIdChapitre($this->ftaModel->getDataField(FtaModel::KEYNAME)->getFieldValue(), 1);
     $recordsetIdFtaSuiviProjet = new FtaSuiviProjetModel($idFtaSuiviProjet);
     $HtmlSuiviProjet = new DataFieldToHtmlTextArea($recordsetIdFtaSuiviProjet->getDataField(FtaSuiviProjetModel::FIELDNAME_CORRECTION_FTA_SUIVI_PROJET));
     $HtmlSuiviProjet->setIsEditable($this->getIsEditable());
     $return .= $HtmlSuiviProjet->getHtmlResult();
     return $return;
 }
Exemplo n.º 2
0
 /**
  * On récupère les informations des Fta 
  * @param type $paramArrayIdFta
  * @param type $paramOrderBy
  * @return type
  */
 public static function getIdFtaByUserAndWorkflow($paramArrayIdFta, $paramOrderBy, $paramDebut, $paramFtaModificatin)
 {
     if ($paramFtaModificatin) {
         $nbMaxParPage = ModuleConfig::VALUE_MAX_PAR_PAGE;
     } else {
         $nbMaxParPage = ModuleConfig::VALUE_MAX_PAR_PAGE_CONSUL;
         $paramOrderBy = FtaModel::FIELDNAME_DATE_DERNIERE_MAJ_FTA . ' DESC ';
     }
     /**
      * Attention dans la condition where de la requette ne pas mettre des conditions non présente lors de la création de la fta
      * Exemple ClassificationRaccourcisModel::TABLENAME 
      */
     if ($paramArrayIdFta) {
         $array['1'] = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT DISTINCT ' . FtaModel::TABLENAME . '.' . FtaModel::KEYNAME . ', ' . FtaEtatModel::FIELDNAME_ABREVIATION . ', ' . FtaModel::FIELDNAME_LIBELLE . ', ' . FtaWorkflowModel::FIELDNAME_DESCRIPTION_FTA_WORKFLOW . ', ' . FtaWorkflowModel::FIELDNAME_NOM_FTA_WORKFLOW . ', ' . FtaModel::FIELDNAME_NOMBRE_UVC_PAR_CARTON . ', ' . FtaModel::FIELDNAME_POIDS_ELEMENTAIRE . ', ' . FtaModel::FIELDNAME_ID_CLASSIFICATION_RACCOURCIS . ', ' . FtaModel::FIELDNAME_DESIGNATION_COMMERCIALE . ', ' . FtaModel::FIELDNAME_DOSSIER_FTA . ', ' . FtaModel::FIELDNAME_VERSION_DOSSIER_FTA . ', ' . FtaModel::FIELDNAME_CODE_ARTICLE_LDC . ', ' . FtaModel::FIELDNAME_DATE_ECHEANCE_FTA . ', ' . FtaModel::FIELDNAME_CREATEUR . ', ' . FtaModel::FIELDNAME_ID_FTA_CLASSIFICATION2 . ', ' . FtaModel::FIELDNAME_POURCENTAGE_AVANCEMENT . ', ' . FtaModel::FIELDNAME_LISTE_ID_FTA_ROLE . ', ' . GeoModel::FIELDNAME_GEO . ', ' . FtaModel::TABLENAME . '. ' . FtaModel::FIELDNAME_WORKFLOW . ' FROM ' . FtaModel::TABLENAME . ',' . UserModel::TABLENAME . ', ' . FtaEtatModel::TABLENAME . ', ' . FtaWorkflowModel::TABLENAME . ', ' . GeoModel::TABLENAME . ' WHERE ( 0 ' . FtaModel::addIdFtaLabel($paramArrayIdFta) . ')' . ' AND ' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_CREATEUR . '=' . UserModel::TABLENAME . '.' . UserModel::KEYNAME . ' AND ' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_ID_FTA_ETAT . '=' . FtaEtatModel::TABLENAME . '.' . FtaEtatModel::KEYNAME . ' AND ' . FtaWorkflowModel::TABLENAME . '.' . FtaWorkflowModel::KEYNAME . '=' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_WORKFLOW . ' AND ' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_SITE_PRODUCTION . '=' . GeoModel::TABLENAME . '.' . GeoModel::KEYNAME . ' ORDER BY ' . $paramOrderBy . ',' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_WORKFLOW . ',' . UserModel::FIELDNAME_PRENOM . ' ASC' . ',' . UserModel::FIELDNAME_NOM . ' ASC' . ',' . FtaModel::FIELDNAME_DATE_ECHEANCE_FTA . ' LIMIT ' . $nbMaxParPage . ' OFFSET ' . $paramDebut);
         $array['2'] = DatabaseOperation::getRowsNumberOverLimitInSqlStatement('SELECT SQL_CALC_FOUND_ROWS ' . FtaModel::TABLENAME . '.' . FtaModel::KEYNAME . ', ' . FtaEtatModel::FIELDNAME_ABREVIATION . ', ' . FtaModel::FIELDNAME_LIBELLE . ', ' . FtaWorkflowModel::FIELDNAME_DESCRIPTION_FTA_WORKFLOW . ', ' . FtaWorkflowModel::FIELDNAME_NOM_FTA_WORKFLOW . ', ' . FtaModel::FIELDNAME_NOMBRE_UVC_PAR_CARTON . ', ' . FtaModel::FIELDNAME_POIDS_ELEMENTAIRE . ', ' . FtaModel::FIELDNAME_ID_CLASSIFICATION_RACCOURCIS . ', ' . FtaModel::FIELDNAME_DESIGNATION_COMMERCIALE . ', ' . FtaModel::FIELDNAME_DOSSIER_FTA . ', ' . FtaModel::FIELDNAME_VERSION_DOSSIER_FTA . ', ' . FtaModel::FIELDNAME_CODE_ARTICLE_LDC . ', ' . FtaModel::FIELDNAME_ID_FTA_CLASSIFICATION2 . ', ' . FtaModel::FIELDNAME_DATE_ECHEANCE_FTA . ', ' . FtaModel::FIELDNAME_CREATEUR . ', ' . FtaModel::FIELDNAME_POURCENTAGE_AVANCEMENT . ', ' . FtaModel::FIELDNAME_LISTE_ID_FTA_ROLE . ', ' . GeoModel::FIELDNAME_GEO . ', ' . FtaModel::TABLENAME . '. ' . FtaModel::FIELDNAME_WORKFLOW . ' FROM ' . FtaModel::TABLENAME . ',' . UserModel::TABLENAME . ', ' . FtaEtatModel::TABLENAME . ', ' . FtaWorkflowModel::TABLENAME . ', ' . GeoModel::TABLENAME . ' WHERE ( 0 ' . FtaModel::addIdFtaLabel($paramArrayIdFta) . ')' . ' AND ' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_CREATEUR . '=' . UserModel::TABLENAME . '.' . UserModel::KEYNAME . ' AND ' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_ID_FTA_ETAT . '=' . FtaEtatModel::TABLENAME . '.' . FtaEtatModel::KEYNAME . ' AND ' . FtaWorkflowModel::TABLENAME . '.' . FtaWorkflowModel::KEYNAME . '=' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_WORKFLOW . ' AND ' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_SITE_PRODUCTION . '=' . GeoModel::TABLENAME . '.' . GeoModel::KEYNAME . ' ORDER BY ' . $paramOrderBy . ',' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_WORKFLOW . ',' . UserModel::FIELDNAME_PRENOM . ' ASC' . ',' . FtaModel::FIELDNAME_DATE_ECHEANCE_FTA . ' LIMIT ' . $nbMaxParPage . ' OFFSET ' . $paramDebut);
         $array['3'] = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT DISTINCT ' . FtaWorkflowModel::TABLENAME . '.*' . ' FROM ' . FtaModel::TABLENAME . ',' . FtaWorkflowModel::TABLENAME . ' WHERE ( ' . '0' . ' ' . FtaModel::addIdFtaLabel($array['1']) . ')' . ' AND ' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_WORKFLOW . '=' . FtaWorkflowModel::TABLENAME . '.' . FtaWorkflowModel::KEYNAME);
         return $array;
     }
 }
Exemplo n.º 3
0
$page_default = substr(strrchr($_SERVER['PHP_SELF'], '/'), '1', '-4');
$page_action = $page_default . '_post.php';
$page_pdf = $page_default . '_pdf.php';
$action = 'valider';
//Action proposée à la page _post.php
$method = 'POST';
//Pour une url > 2000 caractères, ne pas utiliser utiliser GET
$html_table = 'table ' . 'border=1 ' . 'width=100% ' . 'class=contenu ';
/*
 Récupération des données MySQL
*/
$new_designation_commerciale_fta = Lib::getParameterFromRequest('new_designation_commerciale_fta');
$abreviationEtatDestination = Lib::getParameterFromRequest('abreviation_etat_destination');
$idFta = Lib::getParameterFromRequest('id_fta');
$siteDeProduction = Lib::getParameterFromRequest('site_de_production');
$ftaModel = new FtaModel($idFta);
$globalConfig = new GlobalConfig();
$idUser = $globalConfig->getAuthenticatedUser()->getKeyValue();
$idFtaWorkflow = Lib::getParameterFromRequest(FtaModel::FIELDNAME_WORKFLOW);
$arrayIdFtaRoleAcces = FtaRoleModel::getArrayIdFtaRoleByIdUserAndWorkflow($idUser, $idFtaWorkflow);
$idFtaRole = $arrayIdFtaRoleAcces["0"];
/*
 Sélection du mode d'affichage
*/
switch ($output) {
    /*     * ***********
          Début Code PDF
         * *********** */
    case 'pdf':
        //Constructeur
        $pdf = new XFPDF();
 /**
  * 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;
 }
  -----------------
  -----------------------------------
  Détermination de l'action en cours
  -----------------------------------
 Cette page est appelée pour effectuer un traitement particulier
  en fonction de la variable "$action". Ensuite elle redirige le
  résultat vers une autre page.
 Le plus souvent, le traitement est délocalisé sous forme de
  fonction située dans le fichier "functions.php"
*/
/*
 Récupération des données MySQL
*/
$paramIdFta = Lib::getParameterFromRequest(FtaModel::KEYNAME);
$paramIdFtaChapitreEncours = Lib::getParameterFromRequest('id_fta_chapitre_encours');
$paramSyntheseAction = Lib::getParameterFromRequest('synthese_action');
$idFtaRole = Lib::getParameterFromRequest(FtaRoleModel::KEYNAME);
$idFtaEtat = Lib::getParameterFromRequest(FtaEtatModel::KEYNAME);
$abreviationFtaEtat = Lib::getParameterFromRequest(FtaEtatModel::FIELDNAME_ABREVIATION);
$comeback = Lib::getParameterFromRequest(FtaEtatModel::KEYNAME);
/**
 * Initialisation
 */
$ftaModel = new FtaModel($paramIdFta);
//Fonction de désactivation de la fonctionnalité Code Article Arcadia Primaire/Secondaire
$ftaModel->disabledCodePrimaire();
//Redirection
header('Location: modification_fiche.php?id_fta=' . $paramIdFta . '&id_fta_chapitre_encours=' . $paramIdFtaChapitreEncours . '&synthese_action=' . $paramSyntheseAction . '&id_fta_etat=' . $idFtaEtat . '&abreviation_fta_etat=' . $abreviationFtaEtat . '&id_fta_role=' . FtaRoleModel::ID_FTA_ROLE_COMMUN);
?>

 /**
  * Actualise l'état d'un champ verrouillé si le champ à était mise à jour.
  * @param string $paramTableName
  * @param string $paramKeyValue
  * @param string $paramFieldName
  */
 public static function doUpdateLockField($paramTableName, $paramKeyValue, $paramFieldName)
 {
     $mondelName = ModelTableAssociation::getModelName($paramTableName);
     $model = new $mondelName($paramKeyValue);
     $idFta = $model->getDataField(FtaModel::KEYNAME)->getFieldValue();
     if ($idFta) {
         $modelFta = new FtaModel($idFta);
         $idFtaDossier = $modelFta->getDossierFta();
     }
     $arrayFieldToLockChap = DatabaseOperation::convertSqlStatementWithoutKeyToArray("SELECT " . self::KEYNAME . " FROM " . self::TABLENAME . " WHERE " . self::FIELDNAME_TABLE_NAME . "=\"" . $paramTableName . "\" AND " . self::FIELDNAME_FIELD_NAME . "=\"" . $paramFieldName . "\" AND " . self::FIELDNAME_DOSSIER_FTA_PRIMAIRE . "=\"" . $idFtaDossier . "\" AND " . self::FIELDNAME_FIELD_LOCK . "=" . self::FIELD_LOCK_TRUE);
     if ($arrayFieldToLockChap) {
         DatabaseOperation::execute("UPDATE " . self::TABLENAME . " SET " . self::FIELDNAME_FIELD_CHANGE_STATE . "=" . self::CHANGE_STATE_FALSE . " WHERE " . self::FIELDNAME_TABLE_NAME . "=\"" . $paramTableName . "\" AND " . self::FIELDNAME_FIELD_NAME . "=\"" . $paramFieldName . "\" AND " . self::FIELDNAME_DOSSIER_FTA_PRIMAIRE . "=\"" . $idFtaDossier . "\"");
     }
 }
Exemplo n.º 7
0
 public static function getHtmlTable($paramIdFta, $paramChoix, $paramResultLimitByPage = self::DEFAULT_RESULT_LIMIT_BY_PAGE, $paramOrderCommon = NULL)
 {
     /*
      * Déclaration des variables locales
      */
     $largeur_html_C1 = self::HTML_CELL_WIDTH_C1;
     // largeur cellule type
     $largeur_html_C3 = self::HTML_CELL_WIDTH_C3;
     // largeur cellule type
     $compteur_ligne = 1;
     $selection_width = self::HTML_CELL_WIDTH_SELECTION;
     $lien = "";
     $tableau_fiches = "<table class=titre width=100% border=0>" . "<tr class=titre_principal><td></td><td>";
     $synthese_action = "all";
     /*
      * Initilisation
      */
     $globalConfig = new GlobalConfig();
     UserModel::checkUserSessionExpired($globalConfig);
     $idUser = $globalConfig->getAuthenticatedUser()->getKeyValue();
     $idFtaRole = FtaRoleModel::getKeyNameOfFirstRoleByIdUser($idUser);
     $ftaModel = new FtaModel($paramIdFta);
     //Chargement manuel des données pour optimiser les performances
     $abreviation_fta_etat = $ftaModel->getModelFtaEtat()->getDataField(FtaEtatModel::FIELDNAME_ABREVIATION)->getFieldValue();
     $LIBELLE = $ftaModel->getDataField(FtaModel::FIELDNAME_LIBELLE)->getFieldValue();
     $NB_UNIT_ELEM = $ftaModel->getDataField(FtaModel::FIELDNAME_NOMBRE_UVC_PAR_CARTON)->getFieldValue();
     $Poids_ELEM = $ftaModel->getDataField(FtaModel::FIELDNAME_POIDS_ELEMENTAIRE)->getFieldValue();
     $suffixe_agrologic_fta = $ftaModel->getModelClassificationRacourcis()->getNameRaccourcisClassif();
     $designation_commerciale_fta = $ftaModel->getDataField(FtaModel::FIELDNAME_DESIGNATION_COMMERCIALE)->getFieldValue();
     $id_dossier_fta = $ftaModel->getDataField(FtaModel::FIELDNAME_DOSSIER_FTA)->getFieldValue();
     $id_version_dossier_fta = $ftaModel->getDataField(FtaModel::FIELDNAME_VERSION_DOSSIER_FTA)->getFieldValue();
     $code_article_ldc = $ftaModel->getDataField(FtaModel::FIELDNAME_CODE_ARTICLE_LDC)->getFieldValue();
     $dateEcheanceFtatmp = $ftaModel->getDataField(FtaModel::FIELDNAME_DATE_ECHEANCE_FTA)->getFieldValue();
     $createur_nom = $ftaModel->getModelCreateur()->getDataField(UserModel::FIELDNAME_NOM)->getFieldValue();
     $createur_prenom = $ftaModel->getModelCreateur()->getDataField(UserModel::FIELDNAME_PRENOM)->getFieldValue();
     $workflowName = $ftaModel->getModelFtaWorkflow()->getDataField(FtaWorkflowModel::FIELDNAME_DESCRIPTION_FTA_WORKFLOW)->getFieldValue();
     $idWorkflowFtaEncours = $ftaModel->getModelFtaWorkflow()->getKeyValue();
     $nomSiteProduction = $ftaModel->getModelSiteProduction()->getDataField(GeoModel::FIELDNAME_GEO)->getFieldValue();
     $idclassification = $ftaModel->getDataField(FtaModel::FIELDNAME_ID_FTA_CLASSIFICATION2)->getFieldValue();
     $listeIdFtaRole = $ftaModel->getDataField(FtaModel::FIELDNAME_LISTE_ID_FTA_ROLE)->getFieldValue();
     $idSiteDeProduction = $ftaModel->getDataField(FtaModel::FIELDNAME_SITE_PRODUCTION)->getFieldValue();
     $idFtaEtat = $ftaModel->getDataField(FtaModel::FIELDNAME_ID_FTA_ETAT)->getFieldValue();
     /**
      * Changment du format de date en Fr
      */
     $dateEcheanceFta = FtaController::changementDuFormatDeDateFR($dateEcheanceFtatmp);
     /**
      * On obtient IdintranetAction du site de production
      */
     $idIntranetActionsSiteDeProduction = FtaActionSiteModel::getArrayIdIntranetActionByWorkflowAndSiteDeProduction($idWorkflowFtaEncours, $idSiteDeProduction);
     /**
      * On verifie si selon le workflow  et site de production en cours l'utilisateur connecté à les droits d'accès.
      * Puisqu'un utilisateur ne doit pas avoir accès aux boutons :
      * historique, transition, retirer, duplication et pourcentage d'avancement
      * si il n'a pas les accès aux site de production.
      */
     $checkAccesButtonBySiteProd = IntranetActionsModel::isAccessFtaActionByIdUserFtaWorkflowAndSiteDeProduction($idUser, $idWorkflowFtaEncours, $idIntranetActionsSiteDeProduction);
     /**
      * Donne accès aux bouton de transition 
      * pour les utilisateur se trouvant en fin de parcours de l'espace de travail
      */
     $accesTransitionButton = FtaTransitionModel::isAccesTransitionButton($idFtaRole, $idWorkflowFtaEncours);
     /*
      * Attribution des couleurs de fonds suivant l'état de la FTA
      */
     $bgcolor = self::getHtmlCellBgColor($abreviation_fta_etat);
     $bgcolorArcadia = self::getHtmlCellBgColorArcadia($paramIdFta, $bgcolor);
     $tauxRound = FtaSuiviProjetModel::getPourcentageFtaTauxValidation($ftaModel);
     /**
      * Lien vers l'historique de la Fta
      */
     $lienHistorique = self::getHtmlLinkHistorique($abreviation_fta_etat, $paramIdFta, FtaRoleModel::ID_FTA_ROLE_COMMUN, $synthese_action, $tauxRound, $checkAccesButtonBySiteProd, $idFtaEtat);
     /**
      * Gestion des icones en fonction des délais
      */
     $bgcolor_header = self::getHtmlBgColorIconHeader($abreviation_fta_etat, $paramIdFta);
     $icon_header = self::getHtmlIconEcheanceByEtatAndFta($abreviation_fta_etat, $paramIdFta);
     /**
      * Bouton d'accès au détail de la FTA
      */
     $lien .= self::getHtmlLinkModify($abreviation_fta_etat, $paramIdFta, $synthese_action, $idFtaEtat, $checkAccesButtonBySiteProd);
     /**
      * Historique de modification
      */
     $lien .= self::getHtmlLinkHistoriqueModfify($abreviation_fta_etat, $paramIdFta, $synthese_action, $idFtaEtat);
     /**
      * Bouton d'accès au rendu PDF de la FTA
      */
     $lien .= self::getHtmlLinkPDF($abreviation_fta_etat, $paramIdFta, $idWorkflowFtaEncours);
     /**
      * Bouton d'accès à la transition
      */
     $lien .= self::getHmlLinkTransiter($paramIdFta, $idFtaRole, $abreviation_fta_etat, $checkAccesButtonBySiteProd, $accesTransitionButton, $synthese_action, $tauxRound);
     /**
      * Bouton d'accès pour retirer une FTA
      */
     if (FtaRoleModel::isGestionnaire($idFtaRole) and $checkAccesButtonBySiteProd and $abreviation_fta_etat != FtaEtatModel::ETAT_ABREVIATION_VALUE_RETIRE) {
         $lien .= self::getHtmlLinkRemoveFta($paramIdFta);
         $javascript .= self::getJavascriptLinkRemoveFta($paramIdFta, $idFtaRole, $synthese_action);
     }
     /**
      * Bouton d'accès pour dupliquer  une FTA
      */
     if (FtaRoleModel::isGestionnaire($idFtaRole) and $checkAccesButtonBySiteProd) {
         $lien .= self::getHtmlLinkDuplicateFta($paramIdFta, $idFtaRole);
     }
     //Désignation commerciale
     $din = self::getStringDINCompacted($designation_commerciale_fta, $LIBELLE, $NB_UNIT_ELEM, $Poids_ELEM);
     /*
      * Noms des services dans lequel la Fta se trouve
      */
     $service = FtaRoleModel::getNameServiceEncours($listeIdFtaRole);
     //        switch (TRUE) {
     //            /**
     //             * Si la FTA est en modification et que l'utilisateur n'est pas autorisé à accéder aux boutons.
     //             */
     //            case (
     //            $abreviation_fta_etat == FtaEtatModel::ETAT_ABREVIATION_VALUE_MODIFICATION AND $checkAccesButton != FALSE
     //            ):
     //                $service = "";
     //                break;
     //
     //            /**
     //             * Si la FTA est en modification et que l'utilisateur est autorisé à accéder aux boutons.
     //             */
     //            case (
     //            $abreviation_fta_etat == FtaEtatModel::ETAT_ABREVIATION_VALUE_MODIFICATION AND $checkAccesButton != TRUE
     //            ):
     //                $service = FtaRoleModel::getNameServiceEncours($listeIdFtaRole);
     //                break;
     //            /**
     //             * Sinon:
     //             */
     //            default:
     //                $service = FtaRoleModel::getNameServiceEncours($listeIdFtaRole);
     //        }
     /**
      * Calssification
      */
     if ($idclassification) {
         $classification = ClassificationArborescenceArticleCategorieContenuModel::getElementClassificationFta($idclassification, ClassificationFta2Model::FIELDNAME_ID_PROPRIETAIRE_GROUPE);
     }
     //Nom de l'assistante de projet responsable:
     $createur_link = "\"Géré par {$createur_prenom} {$createur_nom}\"";
     $tableau_fiches .= "<tr class=contenu>\r\n                              <td {$bgcolor_header} " . $selection_width . " > {$icon_header} {$selection}</td>\r\n                              ";
     $tableau_fiches .= '<td ' . $bgcolor . ' width=8%>' . $nomSiteProduction . '<br>(' . $workflowName . ')</td>' . '<td ' . $bgcolor . ' width=3%>' . $classification . '</td>' . '<td ' . $bgcolor . ' width=3%>' . $suffixe_agrologic_fta . '</td>';
     // Raccourcie Class.
     $tableau_fiches .= "<td {$bgcolor} {$largeur_html_C1}><a title={$createur_link} />" . $din . "</a></td>" . "<td {$bgcolor} width=3%>" . $id_dossier_fta . "v" . $id_version_dossier_fta . "</td>";
     $tableau_fiches .= "<td {$bgcolorArcadia} width=\"1%\"> <b><font size=\"2\" color=\"#0000FF\">" . $code_article_ldc . "</font></b></td>";
     if ($abreviation_fta_etat == FtaEtatModel::ETAT_ABREVIATION_VALUE_MODIFICATION) {
         $tableau_fiches .= '<td ' . $bgcolor . $largeur_html_C3 . ' align=center>' . $dateEcheanceFta . '</td>';
         //échance de validation
     } else {
         $tableau_fiches .= '<td ' . $bgcolor . $largeur_html_C3 . ' align=center>' . $dateEcheanceFta . '</td>';
         //échance de validation
     }
     $tableau_fiches .= '<td ' . $bgcolor . ' width=5% align=center >' . $lienHistorique . '</td>' . '<td ' . $bgcolor . $largeur_html_C3 . ' align=center >' . $service . '</td>' . '<td ' . $bgcolor . ' width=8%' . ' align=center >' . $lien . '</td>';
     // Actions
     $tableau_fiches .= "</tr>";
     $compteur_ligne++;
     //        }//fin tant que tableau_origine
     $tableau_fiches = $javascript . $tableau_fiches . "</table>";
     //Ajoute de la fonction de traitement de masse
     if ($traitementDeMasse) {
         $liste_action_groupe = FtaTransitionModel::getListeFtaGrouper($abreviation_fta_etat);
         $tableau_fiches .= '&nbsp;
         <img src = ../lib/images/fleche_gauche_et_haut.png width = 38 height = 22 border = 0 />
         <i>Transitions groupées</i>:
         ' . $liste_action_groupe . '
         <input type = \'text\' name=\'subject\' size=\'20\' />
         <input type=image src=images/transiter.png width=20 height=20 />
         <input type=hidden name=action value=transition_groupe>
                      ';
     }
     return $tableau_fiches;
 }
Exemplo n.º 8
0
        //        {
        //           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);
$date_echeance_fta = $ftaModel->getDataField(FtaModel::FIELDNAME_DATE_ECHEANCE_FTA)->getFieldValue();
$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é
 */
if ($idFtaRole == FtaRoleModel::ID_FTA_ROLE_COMMUN) {
 /**
  * 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;
 }
Exemplo n.º 10
0
function calcul_palettisation_fta($id_fta)
{
    /*
     Valeurs de retours de la fonction:
    */
    //Emballages
    $return["uvc_emballage"] = 0;
    //Poids de l'emballage contenu dans une UVC
    $return["colis_emballage"] = 0;
    //Poids de l'emballage contenu dans un Colis
    $return["palette_emballage"] = 0;
    //Poids de l'emballage contenu dans une Palette
    //Poids net
    $return["uvc_net"];
    $return["colis_net"];
    $return["palette_net"];
    //Poids brut
    $return["uvc_brut"];
    $return["colis_brut"];
    $return["palette_brut"];
    //Palettisation
    $return["pcb"];
    $return["hauteur_colis"];
    $return["hauteur_palette"];
    $return["couche_palette"];
    //Combien de couche par palette
    $return["colis_couche"];
    //Combien de colis par couche
    $return["total_colis"];
    $return["dimension_uvc"];
    //H x L x l
    $return["dimension_colis"];
    $return["dimension_palette"];
    $return["dimension_uvc_hauteur"] = 0;
    //Hauteur en mm
    $return["dimension_uvc_longueur"] = 0;
    //Longueur en mm
    $return["dimension_uvc_largeur"] = 0;
    //Hauteur en mm
    /*
     Dictionnaire des variables:
    */
    $id_fta;
    //Identifiant de la fiche technique Article
    //$palettisation_2_3_3 = calcul_palettisation_fta_2_3_3($id_fta);         //Ancienne Données
    /*
     Corps de la fonction
    */
    //PCB
    $return["pcb"] = $temp_nb_uvc_dans_colis;
    if (!$return["pcb"]) {
        $req = "SELECT NB_UNIT_ELEM FROM fta WHERE id_fta='" . $id_fta . "' ";
        $result = DatabaseOperation::convertSqlStatementWithoutKeyToArray($req);
        foreach ($result as $value) {
            $NB_UNIT_ELEM = $value["NB_UNIT_ELEM"];
        }
        $return["pcb"] = $NB_UNIT_ELEM;
    }
    //Calcul du poids et dimension de Emballages par UVC (Type 1)
    $id_annexe_emballage_groupe_type = 1;
    $description_annexe_emballage_groupe_type = "uvc_emballage";
    $req = "SELECT * " . " FROM fta_conditionnement, annexe_emballage_groupe, annexe_emballage_groupe_type " . " WHERE id_fta=" . $id_fta . " AND annexe_emballage_groupe_type.id_annexe_emballage_groupe_type=" . $id_annexe_emballage_groupe_type . " AND fta_conditionnement.id_annexe_emballage_groupe=annexe_emballage_groupe.id_annexe_emballage_groupe " . " AND ( " . "( fta_conditionnement.id_annexe_emballage_groupe_type IS NOT NULL AND fta_conditionnement.id_annexe_emballage_groupe_type=annexe_emballage_groupe_type.id_annexe_emballage_groupe_type )" . " OR " . "( fta_conditionnement.id_annexe_emballage_groupe_type IS NULL AND annexe_emballage_groupe.id_annexe_emballage_groupe_configuration=annexe_emballage_groupe_type.id_annexe_emballage_groupe_type )" . "    ) " . " ORDER BY nom_annexe_emballage_groupe_type ";
    $arrayType1 = DatabaseOperation::convertSqlStatementWithoutKeyToArray($req);
    if ($arrayType1) {
        foreach ($arrayType1 as $rows) {
            //Calcul du poids
            $return["{$description_annexe_emballage_groupe_type}"] += $rows["poids_fta_conditionnement"] * $rows["quantite_par_couche_fta_conditionnement"] * $rows["nombre_couche_fta_conditionnement"];
            //Calcul des dimension (on recherche la taille la plus grande
            if ($return["dimension_uvc_hauteur"] < $rows["hauteur_fta_conditionnement"]) {
                $return["dimension_uvc_hauteur"] = $rows["hauteur_fta_conditionnement"];
            }
            if ($return["dimension_uvc_longueur"] < $rows["longueur_fta_conditionnement"]) {
                $return["dimension_uvc_longueur"] = $rows["longueur_fta_conditionnement"];
            }
            if ($return["dimension_uvc_largeur"] < $rows["largeur_fta_conditionnement"]) {
                $return["dimension_uvc_largeur"] = $rows["largeur_fta_conditionnement"];
            }
        }
        //$return["dimension_uvc"]=$return["dimension_uvc_hauteur"]."x".$return["dimension_uvc_longueur"]."x".$return["dimension_uvc_largeur"];
        $return["dimension_uvc"] = $return["dimension_uvc_longueur"] . "x" . $return["dimension_uvc_largeur"];
        //Si la hauteur n'est pas nulle, on l'intègre.
        if ($return["dimension_uvc_hauteur"]) {
            $return["dimension_uvc"] = $return["dimension_uvc"] . "x" . $return["dimension_uvc_hauteur"];
        }
    } else {
        //Tentative de récupération des données au format version 2.3.3
        //$return["dimension_uvc"]=$palettisation_2_3_3["dimension_uvc"];
        //$return["$description_annexe_emballage_groupe_type"]=$palettisation_2_3_3["uvc_emballage"];
    }
    //echo   "Emballage dans l'UVC: ".$return["$description_annexe_emballage_groupe_type"]."<br>";
    //Calcul du poids de Emballages par Colis (Type 2)
    $id_annexe_emballage_groupe_type = 2;
    $description_annexe_emballage_groupe_type = "colis_emballage";
    /* $req = "SELECT * "
        . "FROM fta_conditionnement, annexe_emballage_groupe, annexe_emballage_groupe_type "
        . "WHERE id_fta=$id_fta "
        . "AND annexe_emballage_groupe_type.id_annexe_emballage_groupe_type=$id_annexe_emballage_groupe_type "
        . "AND fta_conditionnement.id_annexe_emballage_groupe=annexe_emballage_groupe.id_annexe_emballage_groupe "
        . "AND fta_conditionnement.id_annexe_emballage_groupe_type=annexe_emballage_groupe_type.id_annexe_emballage_groupe_type "
        . "ORDER BY nom_annexe_emballage_groupe_type "
        ;
       */
    $req = "SELECT * " . " FROM fta_conditionnement, annexe_emballage_groupe, annexe_emballage_groupe_type " . " WHERE id_fta=" . $id_fta . " AND annexe_emballage_groupe_type.id_annexe_emballage_groupe_type=" . $id_annexe_emballage_groupe_type . " AND fta_conditionnement.id_annexe_emballage_groupe=annexe_emballage_groupe.id_annexe_emballage_groupe " . " AND ( " . "( fta_conditionnement.id_annexe_emballage_groupe_type IS NOT NULL AND fta_conditionnement.id_annexe_emballage_groupe_type=annexe_emballage_groupe_type.id_annexe_emballage_groupe_type )" . " OR " . "( fta_conditionnement.id_annexe_emballage_groupe_type IS NULL AND annexe_emballage_groupe.id_annexe_emballage_groupe_configuration=annexe_emballage_groupe_type.id_annexe_emballage_groupe_type )" . "    ) " . " ORDER BY nom_annexe_emballage_groupe_type ";
    $arrayType2 = DatabaseOperation::convertSqlStatementWithoutKeyToArray($req);
    if ($arrayType2) {
        foreach ($arrayType2 as $rows) {
            $return["{$description_annexe_emballage_groupe_type}"] += $rows["poids_fta_conditionnement"] * $rows["quantite_par_couche_fta_conditionnement"] * $rows["nombre_couche_fta_conditionnement"];
        }
    } else {
        //Tentative de récupération des données au format version 2.3.3
        //$return["$description_annexe_emballage_groupe_type"]=$palettisation_2_3_3["$description_annexe_emballage_groupe_type"];
    }
    //echo   "Emballage dans le colis (sans l'UVC): ".$return["$description_annexe_emballage_groupe_type"]."<br>";
    //$return["$description_annexe_emballage_groupe_type"]+=$return["uvc_emballage"];
    $return["{$description_annexe_emballage_groupe_type}"] += $return["uvc_emballage"] * $return["pcb"];
    //Ajout de l'emballage du Colis (Type 3)
    $id_annexe_emballage_groupe_type = 3;
    $description_annexe_emballage_groupe_type = "colis_emballage";
    /* $req = "SELECT * "
        . "FROM fta_conditionnement, annexe_emballage_groupe, annexe_emballage_groupe_type "
        . "WHERE id_fta=$id_fta "
        . "AND annexe_emballage_groupe_type.id_annexe_emballage_groupe_type=$id_annexe_emballage_groupe_type "
        . "AND fta_conditionnement.id_annexe_emballage_groupe=annexe_emballage_groupe.id_annexe_emballage_groupe "
        . "AND fta_conditionnement.id_annexe_emballage_groupe_type=annexe_emballage_groupe_type.id_annexe_emballage_groupe_type "
        . "ORDER BY nom_annexe_emballage_groupe_type "
        ;
       */
    $req = "SELECT * " . " FROM fta_conditionnement, annexe_emballage_groupe, annexe_emballage_groupe_type " . " WHERE id_fta=" . $id_fta . " AND annexe_emballage_groupe_type.id_annexe_emballage_groupe_type=" . $id_annexe_emballage_groupe_type . " AND fta_conditionnement.id_annexe_emballage_groupe=annexe_emballage_groupe.id_annexe_emballage_groupe " . " AND ( " . "( fta_conditionnement.id_annexe_emballage_groupe_type IS NOT NULL AND fta_conditionnement.id_annexe_emballage_groupe_type=annexe_emballage_groupe_type.id_annexe_emballage_groupe_type )" . " OR " . "( fta_conditionnement.id_annexe_emballage_groupe_type IS NULL AND annexe_emballage_groupe.id_annexe_emballage_groupe_configuration=annexe_emballage_groupe_type.id_annexe_emballage_groupe_type )" . "    ) " . " ORDER BY nom_annexe_emballage_groupe_type ";
    $arrayType3 = DatabaseOperation::convertSqlStatementWithoutKeyToArray($req);
    if (count($arrayType3) > 1) {
        $titre = "Cas non géré";
        $message = "Il ne doit y avoir qu'un seul emballage Colis";
        afficher_message($titre, $message, $redirection);
    } else {
        //Il ne doit exister qu'un seul emballage Colis
        if ($arrayType3) {
            foreach ($arrayType3 as $rows) {
                //echo   "Emballage du colis: ".$rows["poids_fta_conditionnement"]."<br>";
                //echo   "Emballage du colis: ".$return["colis_emballage"]."<br>";
                //echo $return["colis_emballage"];
                $return["hauteur_colis"] = $rows["hauteur_fta_conditionnement"];
                $return["colis_emballage"] += $rows["poids_fta_conditionnement"];
                $return["couche_palette"] = $rows["nombre_couche_fta_conditionnement"];
                $return["colis_couche"] = $rows["quantite_par_couche_fta_conditionnement"];
                $temp_nb_colis_dans_palette = $return["couche_palette"] * $return["colis_couche"];
                $hauteur_total_palette = $rows["hauteur_fta_conditionnement"] * $return["couche_palette"];
                if ($rows["old_dim"]) {
                    $return["dimension_colis"] = $rows["old_dim"];
                } else {
                    $return["dimension_colis"] = $rows["longueur_fta_conditionnement"] . "x" . $rows["largeur_fta_conditionnement"] . "x" . $rows["hauteur_fta_conditionnement"] . " mm";
                }
            }
            $return["colis_emballage"] += $return["uvc_emballage"] * $temp_nb_uvc_dans_colis;
            $return["total_colis"] = $temp_nb_colis_dans_palette;
        } else {
            //Tentative de récupération des données au format version 2.3.3
            /* $return["$description_annexe_emballage_groupe_type"]=$palettisation_2_3_3["$description_annexe_emballage_groupe_type"];
                          $return["hauteur_colis"]=$palettisation_2_3_3["hauteur_colis"];
                          $return["total_colis"]=$palettisation_2_3_3["total_colis"];
                          $temp_nb_colis_dans_palette=$return["total_colis"];
            
                          $return["couche_palette"]=$palettisation_2_3_3["couche_palette"];
                          $return["colis_couche"]=$palettisation_2_3_3["colis_couche"]; */
        }
    }
    //echo   "Emballage total du colis: ".$return["$description_annexe_emballage_groupe_type"]."<br>";
    //Calcul du poids des emballages d'une Palette
    $id_annexe_emballage_groupe_type = 4;
    $description_annexe_emballage_groupe_type = "palette_emballage";
    /* $req = "SELECT * "
        . "FROM fta_conditionnement, annexe_emballage_groupe, annexe_emballage_groupe_type "
        . "WHERE id_fta=$id_fta "
        . "AND annexe_emballage_groupe_type.id_annexe_emballage_groupe_type=$id_annexe_emballage_groupe_type "
        . "AND fta_conditionnement.id_annexe_emballage_groupe=annexe_emballage_groupe.id_annexe_emballage_groupe "
        . "AND fta_conditionnement.id_annexe_emballage_groupe_type=annexe_emballage_groupe_type.id_annexe_emballage_groupe_type "
        . "ORDER BY nom_annexe_emballage_groupe_type "
        ;
       */
    $req = "SELECT * " . " FROM fta_conditionnement, annexe_emballage_groupe, annexe_emballage_groupe_type " . " WHERE id_fta=" . $id_fta . " AND annexe_emballage_groupe_type.id_annexe_emballage_groupe_type=" . $id_annexe_emballage_groupe_type . " AND fta_conditionnement.id_annexe_emballage_groupe=annexe_emballage_groupe.id_annexe_emballage_groupe " . " AND ( " . "( fta_conditionnement.id_annexe_emballage_groupe_type IS NOT NULL AND fta_conditionnement.id_annexe_emballage_groupe_type=annexe_emballage_groupe_type.id_annexe_emballage_groupe_type )" . " OR " . "( fta_conditionnement.id_annexe_emballage_groupe_type IS NULL AND annexe_emballage_groupe.id_annexe_emballage_groupe_configuration=annexe_emballage_groupe_type.id_annexe_emballage_groupe_type )" . "    ) " . " ORDER BY nom_annexe_emballage_groupe_type ";
    $arrayType4 = DatabaseOperation::convertSqlStatementWithoutKeyToArray($req);
    if (count($arrayType4) > 1) {
        $titre = "Cas non géré";
        $message = "Il ne doit y avoir qu'une seule Palette";
        afficher_message($titre, $message, $redirection);
    } else {
        //Il ne doit exister qu'une seule Palette
        if ($arrayType4) {
            foreach ($arrayType4 as $rows) {
                $return["palette_emballage"] += $rows["poids_fta_conditionnement"] / 1000;
                //Converstion de gramme en Kilo
                $return["dimension_palette"] = $rows["longueur_fta_conditionnement"] . "x" . $rows["largeur_fta_conditionnement"] . "x" . $rows["hauteur_fta_conditionnement"] . " mm";
                $hauteur_palette = $rows["hauteur_fta_conditionnement"];
            }
            $return["palette_emballage"] += $return["colis_emballage"] / 1000 * $temp_nb_colis_dans_palette;
            //Conversion gramme vers Kilo
        } else {
            //Tentative de récupération des données au format version 2.3.3
            //$return["palette_emballage"]=$palettisation_2_3_3["palette_emballage"];
            //$return["dimension_palette"]=$palettisation_2_3_3["dimension_palette"];
        }
    }
    //Calcul des poids net
    $ftaModel = new FtaModel($id_fta);
    $return["uvc_net"] = $ftaModel->getDataField("Poids_ELEM")->getFieldValue() * 1000;
    //Conversion de Kg en Gramme
    //Le calcul du poids net colis est fonction de la composition colis
    //$return["colis_net"]=$return["pcb"] * $return["uvc_net"] / 1000;      //Conversion de g en Kg
    $return["colis_net"] = calcul_poids_net_colis($id_fta);
    $return["palette_net"] = $return["colis_net"] * $temp_nb_colis_dans_palette;
    //Poids brut
    $return["uvc_brut"] = $return["uvc_net"] + $return["uvc_emballage"];
    $return["colis_brut"] = $return["colis_net"] + $return["colis_emballage"] / 1000;
    $return["palette_brut"] = $return["palette_net"] + $return["palette_emballage"];
    //Palettisation
    //Hauteur palette
    $hauteur_total_palette = $hauteur_total_palette + $hauteur_palette;
    $return["hauteur_palette"] = $hauteur_total_palette / 1000;
    return $return;
}
        //        {
        //           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);
$dossierFta = $ftaModel->getDossierFta();
$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é
 */
if ($idFtaRole == FtaRoleModel::ID_FTA_ROLE_COMMUN) {
$html_table = "table " . "border=1 " . "width=100% " . "class=contenu ";
/*
 Récupération des données MySQL
*/
$idFta = Lib::getParameterFromRequest(FtaModel::KEYNAME);
$id_fta_chapitre_encours = Lib::getParameterFromRequest('id_fta_chapitre_encours');
$syntheseAction = Lib::getParameterFromRequest('synthese_action');
$comeback = Lib::getParameterFromRequest('comeback');
$idFtaEtat = Lib::getParameterFromRequest(FtaEtatModel::KEYNAME);
$abreviationFtaEtat = Lib::getParameterFromRequest(FtaEtatModel::FIELDNAME_ABREVIATION);
$idFtaRole = Lib::getParameterFromRequest(FtaRoleModel::KEYNAME);
$modeDeRecherche = Lib::getParameterFromRequest("modeDeRecherche");
/**
 * Contrôle
 */
$ftaModel = new FtaModel($idFta);
$arrayIdFtaSeondaire = $ftaModel->getArrayIdFtaSecondaireByDossierPrimaire(FtaEtatModel::ID_VALUE_MODIFICATION);
$arrayIdFtaSeondaire2 = $ftaModel->getArrayIdFtaSecondaireByDossierPrimaire(FtaEtatModel::ID_VALUE_VALIDE);
/**
 * On vérifie qu'il ne s'agit pas d'une Fta primaire
 */
if ($arrayIdFtaSeondaire or $arrayIdFtaSeondaire2) {
    $message = UserInterfaceMessage::FR_WARNING_ARTICLE_PRIMAIRE_CHECK;
    $titre = UserInterfaceMessage::FR_WARNING_ARTICLE_PRIMAIRE_TITLE;
    Lib::showMessage($titre, $message);
}
switch ($modeDeRecherche) {
    case FtaModel::FIELDNAME_DOSSIER_FTA:
        $label = FtaModel::FIELDNAME_DOSSIER_FTA;
        $titre = UserInterfaceLabel::FR_SAISI_DOSSIER_FTA;
        break;
$selection_marque = Lib::getParameterFromRequest('selection_marque2');
$selection_activite = Lib::getParameterFromRequest('selection_activite2');
$selection_rayon = Lib::getParameterFromRequest('selection_rayon2');
$selection_environnement = Lib::getParameterFromRequest('selection_environnement2');
$selection_reseau = Lib::getParameterFromRequest('selection_reseau2');
$selection_saisonnalite = Lib::getParameterFromRequest('selection_saisonnalite2');
if ($selection_saisonnalite) {
    //Enregistrement du nouvel éléments de classification
    $idClassification2 = ClassificationFta2Model::getIdFtaClassification2($selection_proprietaire1, $selection_proprietaire2, $selection_marque, $selection_activite, $selection_rayon, $selection_environnement, $selection_reseau, $selection_saisonnalite);
}
switch ($action) {
    /*
     S'il n'y a pas d'actions défini
    */
    case 'valider':
        $modelFta = new FtaModel($paramIdFta);
        $modelFta->getDataField(FtaModel::FIELDNAME_ID_FTA_CLASSIFICATION2)->setFieldValue($idClassification2);
        /**
         * Vérification que la classification est des données correspondantes Arcadia
         */
        $modelFta->checkArcadiaClassifData($idClassification2);
        $abreviationFtaEtat = $modelFta->getModelFtaEtat()->getDataField(FtaEtatModel::FIELDNAME_ABREVIATION)->getFieldValue();
        $modelFta->saveToDatabase();
        //Redirection
        header('Location: modification_fiche.php?id_fta=' . $paramIdFta . '&id_fta_chapitre_encours=' . $paramIdFtaChapitreEncours . '&synthese_action=' . $paramSyntheseAction . '&id_fta_etat=' . $idFtaEtat . '&abreviation_fta_etat=' . $abreviationFtaEtat . '&id_fta_role=' . $idFtaRole);
        break;
    case 'gestionnaire':
        $validation = DatabaseOperation::execute("UPDATE " . FtaModel::TABLENAME . " SET " . FtaModel::FIELDNAME_ID_FTA_CLASSIFICATION2 . "=" . $idClassification2 . " WHERE " . FtaModel::FIELDNAME_DOSSIER_FTA . "=" . $paramIdFta);
        //Redirection
        header('Location: modification_classification.php');
        break;
Exemplo n.º 14
0
 /**
  * Affiche la liste des espaces de travail pour lesquel l'utilisateur connecté à les droits d'accès
  * et l'identifiant de la Fta en cours
  * @param int $paramIdUser
  * @param HtmlListSelect $paramObjetList
  * @param boolean $paramIsEditable
  * @param int $paramIdFta
  * @return string
  */
 public static function showListeDeroulanteNomWorkflowByAccesAndIdFta($paramIdUser, $paramObjetList, $paramIsEditable, $paramIdFta, $paramIdRole)
 {
     $ftaModel = new FtaModel($paramIdFta);
     $arrayWorkflow = DatabaseOperation::convertSqlStatementWithKeyAndOneFieldToArray('SELECT DISTINCT ' . self::TABLENAME . '.' . self::KEYNAME . ',' . self::FIELDNAME_DESCRIPTION_FTA_WORKFLOW . ' FROM ' . self::TABLENAME . ', ' . IntranetDroitsAccesModel::TABLENAME . ', ' . FtaWorkflowStructureModel::TABLENAME . ' WHERE ' . self::FIELDNAME_DESCRIPTION_FTA_WORKFLOW . '<>\'\'' . ' AND ' . self::TABLENAME . '.' . self::FIELDNAME_ID_INTRANET_ACTIONS . '=' . IntranetDroitsAccesModel::TABLENAME . '.' . IntranetDroitsAccesModel::FIELDNAME_ID_INTRANET_ACTIONS . ' AND ' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_ROLE . '=' . $paramIdRole . ' AND ' . self::TABLENAME . '.' . self::KEYNAME . '=' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_WORKFLOW . ' AND ' . IntranetDroitsAccesModel::FIELDNAME_ID_USER . '=' . $paramIdUser . ' AND ' . IntranetDroitsAccesModel::TABLENAME . '.' . IntranetDroitsAccesModel::FIELDNAME_NIVEAU_INTRANET_DROITS_ACCES . '=' . IntranetNiveauAccesModel::NIVEAU_GENERIC_TRUE . ' ORDER BY ' . self::FIELDNAME_DESCRIPTION_FTA_WORKFLOW);
     $paramObjetList->setArrayListContent($arrayWorkflow);
     $HtmlTableName = FtaModel::TABLENAME . '_' . FtaModel::FIELDNAME_WORKFLOW . '_' . $paramIdFta;
     $paramObjetList->getAttributes()->getName()->setValue(FtaModel::FIELDNAME_WORKFLOW);
     $paramObjetList->setLabel(DatabaseDescription::getFieldDocLabel(self::TABLENAME, self::FIELDNAME_DESCRIPTION_FTA_WORKFLOW));
     $paramObjetList->setIsEditable($paramIsEditable);
     $paramObjetList->initAbstractHtmlSelect($HtmlTableName, $paramObjetList->getLabel(), $ftaModel->getDataField(FtaModel::FIELDNAME_WORKFLOW)->getFieldValue(), NULL, $paramObjetList->getArrayListContent());
     $paramObjetList->getEventsForm()->setOnChangeWithAjaxAutoSave(FtaModel::TABLENAME, FtaModel::KEYNAME, $paramIdFta, FtaModel::FIELDNAME_WORKFLOW);
     $listeSiteWorkflow = $paramObjetList->getHtmlResult();
     return $listeSiteWorkflow;
 }
Exemplo n.º 15
0
        //        {
        //           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é
Exemplo n.º 16
0
/*
 Récupération des données MySQL
*/
/*
 Création des objets HTML (listes déroulante, cases à cocher ...etc.)
*/
$id_fta = Lib::getParameterFromRequest(FtaModel::KEYNAME);
$idFtaRole = Lib::getParameterFromRequest(FtaRoleModel::KEYNAME);
$globalConfig = new GlobalConfig();
UserModel::checkUserSessionExpired($globalConfig);
$idUser = $globalConfig->getAuthenticatedUser()->getKeyValue();
$checked_vierge = '';
$checked_duplicate = '';
if ($id_fta) {
    $checked_duplicate = 'checked';
    $ftaModel = new FtaModel($id_fta);
    $idFtaWorkflow = $ftaModel->getDataField(FtaModel::FIELDNAME_WORKFLOW)->getFieldValue();
    $SiteDeProduction = $ftaModel->getDataField(FtaModel::FIELDNAME_SITE_PRODUCTION)->getFieldValue();
    $designationCommercialeFta = $ftaModel->getDataField(FtaModel::FIELDNAME_DESIGNATION_COMMERCIALE)->getFieldValue();
    $arrayIdFtaRoleAcces = FtaRoleModel::getArrayIdFtaRoleByIdUserAndWorkflow($idUser, $idFtaWorkflow);
    $idFtaRole = $arrayIdFtaRoleAcces["0"];
    $comeback = Lib::getParameterFromRequest('comeback');
    /**
     * Initialisation du bouton de retour de synthèse
     */
    if ($comeback) {
        $_SESSION["comeback_url"] = $_SERVER["HTTP_REFERER"];
    }
} else {
    $checked_vierge = 'checked';
}
Exemplo n.º 17
0
        flush();
        //        if (isset($menu))                       //Si existant, utilisation du menu demandé
        //        {                                       //en variable
        //           include ('./$menu');
        //        }
        //        else
        //        {
        //           include ('./menu_principal.inc');    //Sinon, menu par défaut
        //        }
}
//Fin de la sélection du mode d'affichage de la page
$id_fta_new = Lib::getParameterFromRequest('id_fta_new');
$id_fta_original = Lib::getParameterFromRequest('id_fta_original');
$idFtaRole = Lib::getParameterFromRequest('id_fta_role');
$ftaNewModel = new FtaModel($id_fta_new);
$ftaOrigModel = new FtaModel($id_fta_original);
/* * ***********
  Début Code PHP
 * *********** */
/*
 Initialisation des variables
*/
$page_default = substr(strrchr($_SERVER['PHP_SELF'], '/'), '1', '-4');
$page_action = $page_default . '_post.php';
$page_pdf = $page_default . '_pdf.php';
$action = 'valider';
//Action proposée à la page _post.php
$method = 'POST';
//Pour une url > 2000 caractères, ne pas utiliser utiliser GET
$html_table = 'table ' . 'border=1 ' . 'width=100% ' . 'class=contenu ';
/*
     $fieldName = $rowsFtaLock[IntranetColumnInfoModel::FIELDNAME_COLUMN_NAME_INTRANET_COLUMN_INFO];
     $label = IntranetColumnInfoModel::getLabelByTableNameAndColummName($tableName, $fieldName);
     $htmlList .= $separateur . $label;
     $separateur = "<br>";
 }
 foreach ($arrayDossierFta as $rowsDossierFta) {
     $idFta = $rowsDossierFta[FtaModel::KEYNAME];
     /**
      * Contrôle
      */
     if ($idFta == $paramIdFta) {
         $message = UserInterfaceMessage::FR_WARNING_ARTICLE_PRIMAIRE;
         $titre = UserInterfaceMessage::FR_WARNING_ARTICLE_PRIMAIRE_TITLE;
         Lib::showMessage($titre, $message);
     }
     $ftaCheckModel = new FtaModel($idFta);
     $dossierPrimaireCheck = $ftaCheckModel->getDossierPrimaire();
     if ($dossierPrimaireCheck) {
         $message = UserInterfaceMessage::FR_WARNING_ARTICLE_SECONDAIRE;
         $titre = UserInterfaceMessage::FR_WARNING_ARTICLE_SECONDAIRE_TITLE;
         Lib::showMessage($titre, $message);
     }
     $designation_commerciale_fta = $rowsDossierFta[FtaModel::FIELDNAME_DESIGNATION_COMMERCIALE];
     $id_dossier_fta = $rowsDossierFta[FtaModel::FIELDNAME_DOSSIER_FTA];
     $id_version_dossier_fta = $rowsDossierFta[FtaModel::FIELDNAME_VERSION_DOSSIER_FTA];
     $code_article_ldc = $rowsDossierFta[FtaModel::FIELDNAME_CODE_ARTICLE_LDC];
     $LIBELLE = $rowsDossierFta[FtaModel::FIELDNAME_LIBELLE];
     $NB_UNIT_ELEM = $rowsDossierFta[FtaModel::FIELDNAME_NOMBRE_UVC_PAR_CARTON];
     $Poids_ELEM = $rowsDossierFta[FtaModel::FIELDNAME_POIDS_ELEMENTAIRE];
     $abreviation_fta_etat = FtaEtatModel::getAbreviationEtatByIdEtat($rowsDossierFta[FtaModel::FIELDNAME_ID_FTA_ETAT]);
     //Désignation commerciale
        $ftaComposantView = new FtaComposantView($ftaComposantModel);
        $ftaComposantView->setIsEditable($editable);
        $ftaComposantView2 = new FtaComposantView($ftaComposantModel);
        $_SESSION['checkCreation'] = $creation;
    } else {
        $titre = "Erreur ";
        $message = "Veuillez utiliser les boutons de navigation";
        Lib::showMessage($titre, $message, $redirection);
    }
    //Ce composant sera géré dans la composition
    //$is_composition_fta_composant = 1;
    //La création d'un composant dans la composition n'inclus pas ce composant dans la nomenclature
    //$is_nomenclature_fta_nomenclature = 0;
}
//Chargement des données de la FTA
$ftaModel = new FtaModel($id_fta);
//mysql_table_load("fta");
//echo $id_fta."<br>";
$bloc = "";
//Bloc de saisie
//Désignation
//$bloc .= "<tr><td>" . DatabaseDescription::getFieldDocLabel(FtaComposantModel::TABLENAME, FtaComposantModel::FIELDNAME_NOM_FTA_COMPOSITION) . "</td><td>";
//if ($proprietaire) {
//    $bloc .= "<input type=text name=" . FtaComposantModel::FIELDNAME_NOM_FTA_COMPOSITION . " value='" . $nom_fta_composition . "' size=50/>";
//} else {
$bloc .= $ftaComposantView->getHtmlDataField(FtaComposantModel::FIELDNAME_NOM_FTA_COMPOSITION);
//}
//$bloc.="</td></tr>";
//Code Produit Agrologic
//$bloc .= "<tr><td>" . DatabaseDescription::getFieldDocLabel(FtaComposantModel::TABLENAME, FtaComposantModel::FIELDNAME_CODE_PRODUIT_AGROLOGIC_FTA_NOMENCLATURE) . "</td><td>";
//
 public function __construct(FtaModel $paramFtaModel)
 {
     $this->setFtaProcessusDelaiModel(new FtaProcessusDelaiModel());
     $this->getFtaProcessusDelaiModel()->setModelFtaById($paramFtaModel->getKeyValue());
 }
Exemplo n.º 21
0
 /**
  * Désactivation du code Primaire
  * @return int
  */
 function disabledCodePrimaire()
 {
     $dossierFtaPrimaire = $this->getDossierPrimaire();
     /**
      * Désactivation du code Primaire
      */
     $this->getDataField(FtaModel::FIELDNAME_DOSSIER_FTA_PRIMAIRE)->setFieldValue(" ");
     $this->saveToDatabase();
     /**
      * On vérifie si le dossier Primaire est toujours utilisé comme code Primaire
      */
     $arrayIdFtaByIdDossierPrimaryFta = FtaModel::getArrayIdFtaByIdDossierPrimaryFta($dossierFtaPrimaire);
     if (!$arrayIdFtaByIdDossierPrimaryFta) {
         FtaVerrouillageChampsModel::deletePrimaryFolder($dossierFtaPrimaire);
     }
 }
Exemplo n.º 22
0
$comeback = Lib::getParameterFromRequest('comeback');
/**
 * Initialisation du bouton de retour de synthèse
 */
if ($comeback) {
    $_SESSION["comeback_url"] = $_SERVER["HTTP_REFERER"];
}
$action = Lib::getParameterFromRequest('action');
$demande_abreviation_fta_transition = Lib::getParameterFromRequest('demande_abreviation_fta_transition');
$syntheseAction = Lib::getParameterFromRequest('synthese_action');
$checkPost = Lib::getParameterFromRequest('checkPost');
/*
 * Initinalisation du modele Fta
 * 
 */
$ftaModel = new FtaModel($idFta);
$globalConfig = new GlobalConfig();
UserModel::checkUserSessionExpired($globalConfig);
$idUser = $globalConfig->getAuthenticatedUser()->getKeyValue();
$idFtaWorkflow = $ftaModel->getDataField(FtaModel::FIELDNAME_WORKFLOW)->getFieldValue();
$arrayIdFtaRoleAcces = FtaRoleModel::getArrayIdFtaRoleByIdUserAndWorkflow($idUser, $idFtaWorkflow);
$idFtaRole = $arrayIdFtaRoleAcces["0"];
/**
 * Affichage commentaire à modifier
 */
$NOM_commentaire_maj_fta = $ftaModel->getHtmlCommentaireMajFta();
//$NOM_commentaire_maj_fta = str_replace('<>');
/**
 * Recupération des élement de la Fta en cours
 */
$arrayFta = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT ' . FtaModel::FIELDNAME_DOSSIER_FTA . ',' . FtaModel::FIELDNAME_DESIGNATION_COMMERCIALE . ',' . FtaModel::FIELDNAME_COMMENTAIRE_MAJ_FTA . ',' . FtaModel::FIELDNAME_LIBELLE . ',' . FtaEtatModel::FIELDNAME_NOM_FTA_ETAT . ',' . FtaEtatModel::FIELDNAME_ABREVIATION . ',' . FtaModel::FIELDNAME_WORKFLOW . ',' . FtaModel::FIELDNAME_VERSION_DOSSIER_FTA . ' FROM ' . FtaModel::TABLENAME . ',' . FtaEtatModel::TABLENAME . ' WHERE ' . FtaModel::KEYNAME . '=' . $idFta . ' AND ' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_ID_FTA_ETAT . '=' . FtaEtatModel::TABLENAME . '.' . FtaEtatModel::KEYNAME);
 */
$globalConfig = new GlobalConfig();
$idUser = $globalConfig->getAuthenticatedUser()->getKeyValue();
$nomPrenomConnect = $globalConfig->getAuthenticatedUser()->getPrenomNom();
$userModelOLD = new UserModel($createurFtaOLD);
$userModelNEW = new UserModel($createurFtaNEW);
$nomWorkflowOLD = $userModelOLD->getPrenomNom();
$nomWorkflowNEW = $userModelNEW->getPrenomNom();
$commentaire = FtaController::getCommentGestionnaireChange($nomWorkflowOLD, $nomWorkflowNEW, $nomPrenomConnect);
switch ($action) {
    /*
     S'il n'y a pas d'actions défini
    */
    case 'valider':
        if ($createurFtaOLD != $createurFtaNEW) {
            $modelFta = new FtaModel($paramIdFta);
            /**
             * Commentaire de modification du gestionnaire de la Fta
             */
            $commentaire_maj_fta = $modelFta->getDataField(FtaModel::FIELDNAME_COMMENTAIRE_MAJ_FTA)->getFieldValue();
            $modelFta->getDataField(FtaModel::FIELDNAME_COMMENTAIRE_MAJ_FTA)->setFieldValue($commentaire . $commentaire_maj_fta);
            $modelFta->getDataField(FtaModel::FIELDNAME_CREATEUR)->setFieldValue($createurFtaNEW);
            $modelFta->saveToDatabase();
            //Redirection
            header('Location: modification_fiche.php?id_fta=' . $paramIdFta . '&id_fta_chapitre_encours=' . $paramIdFtaChapitreEncours . '&synthese_action=' . $paramSyntheseAction . '&id_fta_etat=' . $idFtaEtat . '&abreviation_fta_etat=' . $abreviationFtaEtat . '&id_fta_role=' . FtaRoleModel::ID_FTA_ROLE_COMMUN);
        } else {
            $titre = UserInterfaceMessage::FR_WARNING_DATA_GESTIONNAIRE_TITLE;
            $message = UserInterfaceMessage::FR_WARNING_DATA_GESTIONNAIRE;
            Lib::showMessage($titre, $message, $redirection);
        }
        break;
Exemplo n.º 24
0
 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;
 }
//Pour une url > 2000 caractères, ne pas utiliser utiliser GET
$html_table = 'table ' . 'border=0 ' . 'width=100% ' . 'class=contenu ';
$idFta = Lib::getParameterFromRequest('id_fta');
$idAnnexeEmballageGroupeType = Lib::getParameterFromRequest(AnnexeEmballageGroupeTypeModel::KEYNAME);
$idAnnexeEmballageGroupe = Lib::getParameterFromRequest(AnnexeEmballageGroupeModel::KEYNAME);
$idAnnexeEmballage = Lib::getParameterFromRequest(AnnexeEmballageModel::KEYNAME);
$idFtaChapitreEncours = Lib::getParameterFromRequest(FtaChapitreModel::KEYNAME);
$syntheseAction = Lib::getParameterFromRequest('synthese_action');
$action = Lib::getParameterFromRequest('action');
$abreviationFtaEtat = Lib::getParameterFromRequest(FtaEtatModel::FIELDNAME_ABREVIATION);
$idFtaEtat = Lib::getParameterFromRequest(FtaEtatModel::KEYNAME);
$idFtaRole = Lib::getParameterFromRequest(FtaRoleModel::KEYNAME);
$comeback = Lib::getParameterFromRequest('comeback');
$page_reload = Lib::getParameterFromRequest('page_reload');
//Initialisation des modele
$ftaModel = new FtaModel($idFta);
$annexeEmballageGroupeTypeModel = new AnnexeEmballageGroupeTypeModel($idAnnexeEmballageGroupeType);
$annexeEmballageModel = new AnnexeEmballageModel($idAnnexeEmballage);
$annexeEmballageGroupeModel = new AnnexeEmballageGroupeModel($idAnnexeEmballageGroupe);
/**
 * jQuery
 */
//if (($idAnnexeEmballage and $idAnnexeEmballageGroupeType) and ! $idAnnexeEmballageGroupe) {
//    $idAnnexeEmballageGroupe = AnnexeEmballageGroupeModel::getIdAnnexeEmballageGroupeByIdAnnexeEmballageAndIdAnnexeGroupeType($idAnnexeEmballage, $idAnnexeEmballageGroupeType);
//
//    $annexeEmballageGroupeModel = new AnnexeEmballageGroupeModel($idAnnexeEmballageGroupe);
//}
/*
 Récupération des données MySQL
*/
$id_annexe_emballage_groupe_type = $idAnnexeEmballageGroupeType;
 if ($idFtaWorkflowOLD != $idFtaWorkflowNEW) {
     $modelFta = new FtaModel($paramIdFta);
     $idDossierFta = $modelFta->getDossierFta();
     /**
      * Liste des IdFta changeant d'espace de travail
      */
     $arrayIdFtaChange = FtaModel::getArrayIdFtaByIdDossierFta($idDossierFta);
     foreach ($arrayIdFtaChange as $rowsIdFtaChange) {
         $idFta = $rowsIdFtaChange[FtaModel::KEYNAME];
         $idFtaEtatChange = $rowsIdFtaChange[FtaModel::FIELDNAME_ID_FTA_ETAT];
         $ftaEtatModel = new FtaEtatModel($idFtaEtatChange);
         $arbreviationFta = $ftaEtatModel->getDataField(FtaEtatModel::FIELDNAME_ABREVIATION)->getFieldValue();
         /**
          * Changement de l'espace de travail
          */
         $ftaModel = new FtaModel($idFta);
         $ftaModel->getDataField(FtaModel::FIELDNAME_WORKFLOW)->setFieldValue($idFtaWorkflowNEW);
         $oldComment = $ftaModel->getDataField(FtaModel::FIELDNAME_COMMENTAIRE_MAJ_FTA)->getFieldValue();
         $ftaModel->getDataField(FtaModel::FIELDNAME_COMMENTAIRE_MAJ_FTA)->setFieldValue($commentaire . $oldComment);
         $ftaModel->saveToDatabase();
         FtaSuiviProjetModel::createNewChapitresFromNewWorkflow($idFta, $idFtaWorkflowNEW, $arbreviationFta, $idUser);
         /**
          * Suppression des chapitres de l'ancien espace de travail
          */
         FtaSuiviProjetModel::deleteOldChapitreFromOldWorkflow($idFta, $idFtaWorkflowNEW);
     }
     //Redirection
     header('Location: modification_fiche.php?id_fta=' . $paramIdFta . '&id_fta_chapitre_encours=' . $paramIdFtaChapitreEncours . '&synthese_action=' . $paramSyntheseAction . '&id_fta_etat=' . $idFtaEtat . '&abreviation_fta_etat=' . $abreviationFtaEtat . '&id_fta_role=' . FtaRoleModel::ID_FTA_ROLE_COMMUN);
 } else {
     $titre = UserInterfaceMessage::FR_WARNING_DATA_ESPACE_DE_TRAVAIL_TITLE;
     $message = UserInterfaceMessage::FR_WARNING_DATA_ESPACE_DE_TRAVAIL_CHANGEMENT;
Exemplo n.º 27
0
 /**
  * Liste des id Fta selon l'état d'avancement en exécution
  * @param type $paramSyntheseAction
  * @param type $paramRole
  * @param type $paramIdUser
  * @param type $paramIdFtaEtat
  * @param type $paramFtaModification
  * @return type
  */
 public static function getIdFtaByEtatAvancement($paramSyntheseAction, $paramRole, $paramIdUser, $paramIdFtaEtat, $paramFtaModification, $paramLieuGeo)
 {
     $idFtaEffectue = array();
     //        $compteur = "0";
     if ($_SESSION['CheckIdFtaRole'] != $paramRole or $_SESSION[UserModel::KEYNAME] != $paramIdUser) {
         Acl::setRightsAcces($paramIdUser, $paramRole);
     }
     switch ($paramSyntheseAction) {
         case FtaEtatModel::ETAT_AVANCEMENT_VALUE_ATTENTE:
             /*
              * On obtient les fta à vérifié dont tous les chapitres ne sont pas validés
              */
             $arrayTmp = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT DISTINCT ' . FtaModel::TABLENAME . '.' . FtaModel::KEYNAME . ',' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_PROCESSUS . ',' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_WORKFLOW . ' FROM ' . FtaWorkflowModel::TABLENAME . ', ' . FtaWorkflowStructureModel::TABLENAME . ', ' . FtaSuiviProjetModel::TABLENAME . ' , ' . FtaActionSiteModel::TABLENAME . ' , ' . FtaModel::TABLENAME . ' , ' . IntranetDroitsAccesModel::TABLENAME . ' , ' . IntranetActionsModel::TABLENAME . ' WHERE ' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_PROCESSUS . ' IS NOT NULL' . ' AND ' . FtaWorkflowModel::TABLENAME . '.' . FtaWorkflowModel::KEYNAME . '=' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_WORKFLOW . ' AND ' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_WORKFLOW . '=' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_WORKFLOW . ' AND ' . FtaSuiviProjetModel::TABLENAME . '.' . FtaSuiviProjetModel::FIELDNAME_ID_FTA_CHAPITRE . '=' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_CHAPITRE . ' AND ' . FtaActionSiteModel::TABLENAME . '.' . FtaActionSiteModel::FIELDNAME_ID_SITE . '=' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_SITE_PRODUCTION . ' AND ' . FtaSuiviProjetModel::TABLENAME . '.' . FtaSuiviProjetModel::FIELDNAME_ID_FTA . '=' . FtaModel::TABLENAME . '.' . FtaModel::KEYNAME . ' AND ' . FtaWorkflowModel::TABLENAME . '.' . FtaWorkflowModel::FIELDNAME_ID_INTRANET_ACTIONS . '=' . IntranetActionsModel::TABLENAME . '.' . IntranetActionsModel::FIELDNAME_PARENT_INTRANET_ACTIONS . ' AND ' . IntranetDroitsAccesModel::TABLENAME . '.' . IntranetDroitsAccesModel::FIELDNAME_ID_INTRANET_ACTIONS . '=' . IntranetActionsModel::TABLENAME . '.' . IntranetActionsModel::KEYNAME . ' AND ' . FtaActionSiteModel::TABLENAME . '.' . FtaActionSiteModel::FIELDNAME_ID_INTRANET_ACTIONS . ' IN (' . IntranetActionsModel::TABLENAME . '.' . IntranetActionsModel::KEYNAME . ')' . ' AND ' . FtaSuiviProjetModel::FIELDNAME_SIGNATURE_VALIDATION_SUIVI_PROJET . '=' . FtaSuiviProjetModel::SIGNATURE_VALIDATION_SUIVI_PROJET_FALSE . ' AND ' . IntranetDroitsAccesModel::FIELDNAME_NIVEAU_INTRANET_DROITS_ACCES . '=' . IntranetNiveauAccesModel::NIVEAU_GENERIC_TRUE . ' AND ' . IntranetDroitsAccesModel::FIELDNAME_ID_USER . '=' . $paramIdUser . ' AND ' . FtaModel::FIELDNAME_ID_FTA_ETAT . '=' . $paramIdFtaEtat . ' AND ' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_ROLE . '=' . $paramRole . ' AND ( 0 ' . IntranetActionsModel::addIdIntranetAction($_SESSION[Acl::ACL_INTRANET_ACTIONS_VALIDE]) . ')');
             if (FtaRoleModel::isGestionnaire($paramRole)) {
                 $arrayTmp = NULL;
             }
             if ($arrayTmp) {
                 foreach ($arrayTmp as $rows) {
                     $cheackIdFta = in_array($rows[FtaModel::KEYNAME], $idFtaEffectue);
                     if (!$cheackIdFta) {
                         $tauxDeValidadation = FtaProcessusModel::getValideProcessusEncours($rows[FtaModel::KEYNAME], $rows[FtaWorkflowStructureModel::FIELDNAME_ID_FTA_PROCESSUS], $rows[FtaWorkflowStructureModel::FIELDNAME_ID_FTA_WORKFLOW]);
                         if ($tauxDeValidadation != '1') {
                             $idFtaEffectue[] = $rows[FtaModel::KEYNAME];
                             //                                $compteur++;
                             //                                if ($compteur == ModuleConfig::VALUE_MAX_PAR_PAGE) {
                             //                                    break;
                             //                                }
                         }
                     }
                 }
             }
             $array = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT DISTINCT ' . FtaModel::KEYNAME . ' FROM ' . FtaModel::TABLENAME . ' WHERE ( ' . '0' . ' ' . FtaModel::addIdFta($idFtaEffectue) . ')');
             break;
         case FtaEtatModel::ETAT_AVANCEMENT_VALUE_EN_COURS:
             //Récupération des suivis de projet gérés par l'utilisateur et non validé
             /*
              * On obtient les fta à vérifié dont tous les chapitres ne sont pas validés
              */
             $arrayTmp = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT DISTINCT ' . FtaModel::TABLENAME . '.' . FtaModel::KEYNAME . ',' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_PROCESSUS . ',' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_WORKFLOW . ' FROM ' . FtaWorkflowModel::TABLENAME . ', ' . FtaWorkflowStructureModel::TABLENAME . ', ' . FtaSuiviProjetModel::TABLENAME . ' , ' . FtaActionSiteModel::TABLENAME . ' , ' . FtaModel::TABLENAME . ' , ' . IntranetDroitsAccesModel::TABLENAME . ' , ' . IntranetActionsModel::TABLENAME . ' WHERE ' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_PROCESSUS . ' IS NOT NULL' . ' AND ' . FtaWorkflowModel::TABLENAME . '.' . FtaWorkflowModel::KEYNAME . '=' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_WORKFLOW . ' AND ' . FtaActionSiteModel::TABLENAME . '.' . FtaActionSiteModel::FIELDNAME_ID_FTA_WORKFLOW . '=' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_WORKFLOW . ' AND ' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_WORKFLOW . '=' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_WORKFLOW . ' AND ' . FtaSuiviProjetModel::TABLENAME . '.' . FtaSuiviProjetModel::FIELDNAME_ID_FTA_CHAPITRE . '=' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_CHAPITRE . ' AND ' . FtaActionSiteModel::TABLENAME . '.' . FtaActionSiteModel::FIELDNAME_ID_SITE . '=' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_SITE_PRODUCTION . ' AND ' . FtaSuiviProjetModel::TABLENAME . '.' . FtaSuiviProjetModel::FIELDNAME_ID_FTA . '=' . FtaModel::TABLENAME . '.' . FtaModel::KEYNAME . ' AND ' . FtaWorkflowModel::TABLENAME . '.' . FtaWorkflowModel::FIELDNAME_ID_INTRANET_ACTIONS . '=' . IntranetActionsModel::TABLENAME . '.' . IntranetActionsModel::FIELDNAME_PARENT_INTRANET_ACTIONS . ' AND ' . IntranetDroitsAccesModel::TABLENAME . '.' . IntranetDroitsAccesModel::FIELDNAME_ID_INTRANET_ACTIONS . '=' . IntranetActionsModel::TABLENAME . '.' . IntranetActionsModel::KEYNAME . ' AND ' . FtaActionSiteModel::TABLENAME . '.' . FtaActionSiteModel::FIELDNAME_ID_INTRANET_ACTIONS . ' IN (' . IntranetActionsModel::TABLENAME . '.' . IntranetActionsModel::KEYNAME . ')' . ' AND ' . FtaSuiviProjetModel::FIELDNAME_SIGNATURE_VALIDATION_SUIVI_PROJET . '=' . FtaSuiviProjetModel::SIGNATURE_VALIDATION_SUIVI_PROJET_FALSE . ' AND ' . IntranetDroitsAccesModel::FIELDNAME_NIVEAU_INTRANET_DROITS_ACCES . '=' . IntranetNiveauAccesModel::NIVEAU_GENERIC_TRUE . ' AND ' . IntranetDroitsAccesModel::FIELDNAME_ID_USER . '=' . $paramIdUser . ' AND ' . FtaModel::FIELDNAME_ID_FTA_ETAT . '=' . $paramIdFtaEtat . ' AND ' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_ROLE . '=' . $paramRole . ' AND ( 0 ' . IntranetActionsModel::addIdIntranetAction($_SESSION[Acl::ACL_INTRANET_ACTIONS_VALIDE]) . ')');
             if ($arrayTmp) {
                 foreach ($arrayTmp as $rows) {
                     $cheackIdFta = in_array($rows[FtaModel::KEYNAME], $idFtaEffectue);
                     if (!$cheackIdFta) {
                         $tauxDeValidadation = FtaProcessusModel::getFtaProcessusNonValidePrecedent($rows[FtaModel::KEYNAME], $rows[FtaProcessusModel::KEYNAME], $rows[FtaWorkflowStructureModel::FIELDNAME_ID_FTA_WORKFLOW]);
                         /**
                          * En cas d'oublier des chef de projet qui aurait créé une fta sans validé les informations de base
                          */
                         if (FtaRoleModel::isGestionnaire($paramRole)) {
                             $chefProjet = $tauxDeValidadation == '0';
                             if ($tauxDeValidadation != '0' or $chefProjet == TRUE) {
                                 $idFtaEffectue[] = $rows[FtaModel::KEYNAME];
                                 //                                    $compteur++;
                                 //                                    if ($compteur == ModuleConfig::VALUE_MAX_PAR_PAGE) {
                                 //                                        break;
                                 //                                    }
                             }
                         } elseif ($tauxDeValidadation == '1') {
                             $idFtaEffectue[] = $rows[FtaModel::KEYNAME];
                             //                                $compteur++;
                             //                                if ($compteur == ModuleConfig::VALUE_MAX_PAR_PAGE) {
                             //                                    break;
                             //                                }
                         }
                     }
                 }
             }
             $array = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT ' . FtaModel::KEYNAME . ' FROM ' . FtaModel::TABLENAME . ' WHERE ( ' . '0' . ' ' . FtaModel::addIdFta($idFtaEffectue) . ')');
             break;
         case FtaEtatModel::ETAT_AVANCEMENT_VALUE_EFFECTUES:
             //Récupération de la liste fta pour le role concernés
             /*
              * On obtient les fta à vérifié dont tous les chapitres sont validés
              */
             $arrayTmp = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT DISTINCT ' . FtaModel::TABLENAME . '.' . FtaModel::KEYNAME . ',' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_PROCESSUS . ',' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_WORKFLOW . ' FROM ' . FtaWorkflowModel::TABLENAME . ', ' . FtaWorkflowStructureModel::TABLENAME . ', ' . FtaSuiviProjetModel::TABLENAME . ' , ' . FtaActionSiteModel::TABLENAME . ' , ' . FtaModel::TABLENAME . ' , ' . IntranetDroitsAccesModel::TABLENAME . ' , ' . IntranetActionsModel::TABLENAME . ' WHERE ' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_PROCESSUS . ' IS NOT NULL' . ' AND ' . FtaWorkflowModel::TABLENAME . '.' . FtaWorkflowModel::KEYNAME . '=' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_WORKFLOW . ' AND ' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_WORKFLOW . '=' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_WORKFLOW . ' AND ' . FtaSuiviProjetModel::TABLENAME . '.' . FtaSuiviProjetModel::FIELDNAME_ID_FTA_CHAPITRE . '=' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_CHAPITRE . ' AND ' . FtaActionSiteModel::TABLENAME . '.' . FtaActionSiteModel::FIELDNAME_ID_SITE . '=' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_SITE_PRODUCTION . ' AND ' . FtaSuiviProjetModel::TABLENAME . '.' . FtaSuiviProjetModel::FIELDNAME_ID_FTA . '=' . FtaModel::TABLENAME . '.' . FtaModel::KEYNAME . ' AND ' . FtaWorkflowModel::TABLENAME . '.' . FtaWorkflowModel::FIELDNAME_ID_INTRANET_ACTIONS . '=' . IntranetActionsModel::TABLENAME . '.' . IntranetActionsModel::FIELDNAME_PARENT_INTRANET_ACTIONS . ' AND ' . IntranetDroitsAccesModel::TABLENAME . '.' . IntranetDroitsAccesModel::FIELDNAME_ID_INTRANET_ACTIONS . '=' . IntranetActionsModel::TABLENAME . '.' . IntranetActionsModel::KEYNAME . ' AND ' . FtaActionSiteModel::TABLENAME . '.' . FtaActionSiteModel::FIELDNAME_ID_INTRANET_ACTIONS . ' IN (' . IntranetActionsModel::TABLENAME . '.' . IntranetActionsModel::KEYNAME . ')' . ' AND ' . FtaSuiviProjetModel::FIELDNAME_SIGNATURE_VALIDATION_SUIVI_PROJET . '<>' . FtaSuiviProjetModel::SIGNATURE_VALIDATION_SUIVI_PROJET_FALSE . ' AND ' . IntranetDroitsAccesModel::FIELDNAME_NIVEAU_INTRANET_DROITS_ACCES . '=' . IntranetNiveauAccesModel::NIVEAU_GENERIC_TRUE . ' AND ' . IntranetDroitsAccesModel::FIELDNAME_ID_USER . '=' . $paramIdUser . ' AND ' . FtaModel::FIELDNAME_ID_FTA_ETAT . '=' . $paramIdFtaEtat . ' AND ' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_ROLE . '=' . $paramRole . ' AND ( 0 ' . IntranetActionsModel::addIdIntranetAction($_SESSION[Acl::ACL_INTRANET_ACTIONS_VALIDE]) . ')');
             if ($arrayTmp) {
                 foreach ($arrayTmp as $rows) {
                     $cheackIdFta = in_array($rows[FtaModel::KEYNAME], $idFtaEffectue);
                     if (!$cheackIdFta) {
                         $tauxDeValidadation = FtaProcessusModel::getValideIdFtaByRoleWorkflowProcessus($rows[FtaModel::KEYNAME], $paramRole, $rows[FtaWorkflowStructureModel::FIELDNAME_ID_FTA_WORKFLOW]);
                         if ($tauxDeValidadation == '1') {
                             $idFtaEffectue[] = $rows[FtaModel::KEYNAME];
                             //                                $compteur++;
                             //                                if ($compteur == ModuleConfig::VALUE_MAX_PAR_PAGE) {
                             //                                    break;
                             //                                }
                         }
                     }
                 }
             }
             $array = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT DISTINCT ' . FtaModel::KEYNAME . ' FROM ' . FtaModel::TABLENAME . ' WHERE ( ' . '0' . ' ' . FtaModel::addIdFta($idFtaEffectue) . ')');
             break;
         case FtaEtatModel::ETAT_AVANCEMENT_VALUE_ALL:
             //Toutes les fiches de l'état sélectionné
             if ($paramFtaModification) {
                 $array = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT DISTINCT ' . FtaModel::KEYNAME . ' FROM ' . FtaModel::TABLENAME . ',' . IntranetDroitsAccesModel::TABLENAME . ',' . FtaWorkflowModel::TABLENAME . ',' . IntranetActionsModel::TABLENAME . ' , ' . FtaActionSiteModel::TABLENAME . ' WHERE ' . FtaModel::FIELDNAME_ID_FTA_ETAT . '=' . $paramIdFtaEtat . ' AND ' . IntranetDroitsAccesModel::FIELDNAME_NIVEAU_INTRANET_DROITS_ACCES . '=' . IntranetNiveauAccesModel::NIVEAU_GENERIC_TRUE . ' AND ' . IntranetDroitsAccesModel::FIELDNAME_ID_USER . '=' . $paramIdUser . ' AND ' . FtaWorkflowModel::TABLENAME . '.' . FtaWorkflowModel::FIELDNAME_ID_INTRANET_ACTIONS . '=' . IntranetActionsModel::TABLENAME . '.' . IntranetActionsModel::FIELDNAME_PARENT_INTRANET_ACTIONS . ' AND ' . IntranetDroitsAccesModel::TABLENAME . '.' . IntranetDroitsAccesModel::FIELDNAME_ID_INTRANET_ACTIONS . '=' . IntranetActionsModel::TABLENAME . '.' . IntranetActionsModel::KEYNAME . ' AND ' . FtaWorkflowModel::TABLENAME . '.' . FtaWorkflowModel::KEYNAME . '=' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_WORKFLOW . ' AND ( 0 ' . IntranetActionsModel::addIdIntranetAction($_SESSION[Acl::ACL_INTRANET_ACTIONS_VALIDE]) . ')' . ' AND ' . FtaActionSiteModel::TABLENAME . '.' . FtaActionSiteModel::FIELDNAME_ID_SITE . '=' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_SITE_PRODUCTION . ' AND ' . FtaActionSiteModel::TABLENAME . '.' . FtaActionSiteModel::FIELDNAME_ID_FTA_WORKFLOW . '=' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_WORKFLOW . ' AND ' . FtaActionSiteModel::TABLENAME . '.' . FtaActionSiteModel::FIELDNAME_ID_INTRANET_ACTIONS . ' IN (' . IntranetActionsModel::TABLENAME . '.' . IntranetActionsModel::KEYNAME . ')');
             } else {
                 $isSiteDeProd = GeoModel::isLieuGeoSiteDeProduction($paramLieuGeo);
                 if ($isSiteDeProd) {
                     $array = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT DISTINCT ' . FtaModel::KEYNAME . ' FROM ' . FtaModel::TABLENAME . ' WHERE ' . FtaModel::FIELDNAME_ID_FTA_ETAT . '=' . $paramIdFtaEtat . ' AND  ' . FtaModel::FIELDNAME_SITE_PRODUCTION . '=' . $paramLieuGeo);
                 } else {
                     $array = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT DISTINCT ' . FtaModel::KEYNAME . ' FROM ' . FtaModel::TABLENAME . ' WHERE ' . FtaModel::FIELDNAME_ID_FTA_ETAT . '=' . $paramIdFtaEtat);
                 }
             }
             break;
     }
     return $array;
 }
Exemplo n.º 28
0
 /**
  * Récupérations des paramètres
  */
 $checkArcadiaData = Fta2ArcadiaTransactionModel::isIdArcadiaTransactionActif($idFta);
 $id_fta_chapitre_encours = Lib::getParameterFromRequest('id_fta_chapitre_encours', '1');
 $synthese_action = Lib::isDefined('synthese_action');
 $comeback = Lib::isDefined('comeback');
 $idFtaEtat = Lib::isDefined(FtaEtatModel::KEYNAME);
 $abreviationFtaEtat = Lib::isDefined(FtaEtatModel::FIELDNAME_ABREVIATION);
 $idFtaRole = Lib::isDefined(FtaRoleModel::KEYNAME);
 $ftaModification = Acl::getValueAccesRights('fta_modification');
 $id_fta_chapitre = $id_fta_chapitre_encours;
 /**
  * Initilisation
  */
 $ftaModel = new FtaModel($idFta);
 //Rien ne garantie que l'utilisateur est mis un idFta existant
 $idWorkflowFtaEncours = $ftaModel->getDataField(FtaModel::FIELDNAME_WORKFLOW)->getFieldValue();
 $idSiteDeProduction = $ftaModel->getDataField(FtaModel::FIELDNAME_SITE_PRODUCTION)->getFieldValue();
 /**
  * Ticket 49823 en 3.1 activation/désactivation d'un workflow
  */
 //    FtaWorkflowModel::checkActifWorkflow($idWorkflowFtaEncours);
 /**
  * Verification des droits d'accès sur une Fta en modification
  */
 if ($idFtaEtat == FtaEtatModel::ID_VALUE_MODIFICATION and !$ftaModification) {
     $titre = UserInterfaceMessage::FR_WARNING_ACCES_RIGHTS_TITLE;
     $message = UserInterfaceMessage::FR_WARNING_ACCES_RIGHTS;
     $redirection = "index.php";
     Lib::showMessage($titre, $message, $redirection);
Exemplo n.º 29
0
  S'il n'y a pas d'actions défini
 */
 case 1:
     //Création d'une FTA Vierge
     //        $idFta = null;
     $arrayIdEtat = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT ' . FtaEtatModel::KEYNAME . ' FROM ' . FtaEtatModel::TABLENAME . ' WHERE ' . FtaEtatModel::FIELDNAME_ABREVIATION . '=\'' . $abreviationFtaEtat . '\' ');
     foreach ($arrayIdEtat as $rowsIdEtat) {
         $idFtaEtat = $rowsIdEtat[FtaEtatModel::KEYNAME];
     }
     /*
      * Initialisation de l'enregistrement de la Table FTA
      */
     $globalConfig = new GlobalConfig();
     UserModel::checkUserSessionExpired($globalConfig);
     $idUser = $globalConfig->getAuthenticatedUser()->getKeyValue();
     $idFta = FtaModel::createFta($idUser, $idFtaEtat, $idFtaWorkflow, $designationCommercialeFta, date('Y-m-d'), $siteDeProduction);
     DatabaseOperation::execute('UPDATE ' . FtaModel::TABLENAME . ' SET ' . FtaModel::FIELDNAME_DOSSIER_FTA . '=' . $idFta . ' WHERE ' . FtaModel::KEYNAME . '=' . $idFta);
     FtaSuiviProjetModel::initFtaSuiviProjet($idFta);
     //Cas d'une fiche Présentation
     /**
      * Ce cas n'est plus utiliser puisque l'espasce de travail Présentation,
      * regroupe tous les chapitres nécéssaire
      */
     if ($abreviationFtaEtat == 'P') {
         //Condition where
         $where = '';
         //Récupération des chapitres concernés par ce cycle de vie
         $arrayChapitreCycle = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT ' . FtaProcessusCycleModel::FIELDNAME_FTA_ETAT . ', ' . FtaProcessusCycleModel::FIELDNAME_PROCESSUS_INIT . ', ' . FtaProcessusCycleModel::FIELDNAME_PROCESSUS_NEXT . ' FROM ' . FtaProcessusCycleModel::TABLENAME . ' WHERE ' . FtaProcessusCycleModel::FIELDNAME_FTA_ETAT . ' = \'' . $abreviationFtaEtat . '\' AND ' . FtaProcessusCycleModel::FIELDNAME_PROCESSUS_NEXT . ' IS NOT NULL');
         foreach ($arrayChapitreCycle as $rowsChapitreCycle) {
             $where .= ' AND ' . FtaProcessusModel::TABLENAME . '.' . FtaProcessusModel::KEYNAME . ' <> ' . $rowsChapitreCycle[FtaProcessusCycleModel::FIELDNAME_PROCESSUS_NEXT];
         }
 /**
  * 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;
 }