Example #1
0
 /**
  * Tableau des emballages du Colis
  * @param int $paramIdFta
  * @param int $paramChapitre
  * @param string $paramSyntheseAction
  * @param int $paramIdFtaEtat
  * @param string $paramAbreviationEtat
  * @param int $paramIdFtaRole
  * @return string
  */
 public function getHtmlEmballageDuColis($paramIdFta, $paramChapitre, $paramSyntheseAction, $paramIdFtaEtat, $paramAbreviationEtat, $paramIdFtaRole)
 {
     $annexeEmballageGroupeTypeModel = new AnnexeEmballageGroupeTypeModel(AnnexeEmballageGroupeTypeModel::EMBALLAGE_DU_COLIS);
     /*
      * Récuperation des élements clé de la table fta_conditionnement
      */
     $FtaConditionnement = $annexeEmballageGroupeTypeModel->getIdAnnexeEmballageGroupeTypeDuColisFromFtaConditionnement();
     if ($FtaConditionnement) {
         $arrayFtaConditionnementtmp = array();
         $tablesNameAndIdForeignKeyOfFtaConditionnementtmp = array();
         foreach ($FtaConditionnement as $rowsFtaConditionnement) {
             $idFtaCondtionnement = $rowsFtaConditionnement[FtaConditionnementModel::KEYNAME];
             $idAnnexeEmballage = $rowsFtaConditionnement[FtaConditionnementModel::FIELDNAME_ID_ANNEXE_EMBALLAGE];
             $idAnnexeEmballageGroupeType = $rowsFtaConditionnement[FtaConditionnementModel::FIELDNAME_ID_ANNEXE_EMBALLAGE_GROUPE_TYPE];
             $arrayIdFtaCondtionnement[] = $idFtaCondtionnement;
             /*
              * Initialisation des modèles 
              */
             $annexeEmballageGroupeTypeModel2 = new AnnexeEmballageGroupeTypeModel(AnnexeEmballageGroupeTypeModel::EMBALLAGE_DU_COLIS);
             $ftaConditionnmentModel = new FtaConditionnementModel($idFtaCondtionnement);
             /*
              * Tableau de données
              */
             $arrayFtaConditionnementTmp = $ftaConditionnmentModel->getArrayFtaConditonnementDuColis();
             $arrayFtaConditionnement = array_replace_recursive($arrayFtaConditionnementtmp, $arrayFtaConditionnementTmp);
             $arrayFtaConditionnementtmp = $arrayFtaConditionnement;
             /*
              * Cette array doit être utilisé de cette manière 
              * Array (
              * nom de table,
              * clé étrangère de la table présenté
              * valeur de la clé étrangère);
              */
             $tablesNameAndIdForeignKeyOfFtaConditionnementTmp = FtaConditionnementModel::getTablesNameAndIdForeignKeyOfFtaConditionnement($paramIdFta, $idAnnexeEmballage, $idAnnexeEmballageGroupeType, $idFtaCondtionnement);
             $tablesNameAndIdForeignKeyOfFtaConditionnement = $tablesNameAndIdForeignKeyOfFtaConditionnementtmp + $tablesNameAndIdForeignKeyOfFtaConditionnementTmp;
             $tablesNameAndIdForeignKeyOfFtaConditionnementtmp = $tablesNameAndIdForeignKeyOfFtaConditionnement;
             /*
             
              /*
             * Vérifie si pour la Fta en cours les données Fta conditionement sont renseigné
             */
             if ($arrayFtaConditionnement) {
                 $rightToAdd = FALSE;
             } else {
                 $rightToAdd = TRUE;
             }
         }
         $className = $ftaConditionnmentModel->getClassName();
         $label = $annexeEmballageGroupeTypeModel2->getDataField(AnnexeEmballageGroupeTypeModel::FIELDNAME_NOM_ANNEXE_EMBALLAGE_GROUPE_TYPE)->getFieldValue();
         $ftaConditionnmentModel->setIsEditable($this->getIsEditable());
         $htmlEmballageDuColis = new HtmlSubForm_RNN($arrayFtaConditionnement, $className, $label, $tablesNameAndIdForeignKeyOfFtaConditionnement, FtaConditionnementModel::FONCTIONNAME_VERSIONNING);
         $htmlEmballageDuColis->setIsEditable($this->getIsEditable());
         $htmlEmballageDuColis->setRightToAdd($rightToAdd);
         $htmlEmballageDuColis->setLienAjouter(FtaConditionnementModel::getAddLinkAfterConditionnement($paramIdFta, $paramChapitre, AnnexeEmballageGroupeTypeModel::EMBALLAGE_DU_COLIS, $paramSyntheseAction, $paramIdFtaEtat, $paramAbreviationEtat, $paramIdFtaRole));
         $htmlEmballageDuColis->setLien(FtaConditionnementModel::getAddLinkBeforeConditionnement($paramIdFta, $paramChapitre, AnnexeEmballageGroupeTypeModel::EMBALLAGE_DU_COLIS, $paramSyntheseAction, $paramIdFtaEtat, $paramAbreviationEtat, $paramIdFtaRole));
         $htmlEmballageDuColis->setLienSuppression(FtaConditionnementModel::getDeleteLinkConditionnement($paramIdFta, $paramChapitre, $arrayIdFtaCondtionnement, $paramSyntheseAction, $paramIdFtaEtat, $paramAbreviationEtat, $paramIdFtaRole));
         $htmlEmballageDuColis->setTableLabel($ftaConditionnmentModel->getTableConditionnementLabelDuColis());
         /**
          * Vérrouille tous les champs du tableau emballage colis 
          * quand une données est renseigné
          */
         $htmlEmballageDuColis->setContentLocked(TRUE);
         $return .= $htmlEmballageDuColis->getHtmlResult();
         if (count($FtaConditionnement) > "1") {
             $return .= "<tr class=contenu><td bgcolor=#FFAA55 align=\"center\" valign=\"middle\">";
             $return .= UserInterfaceMessage::FR_WARNING_NOT_HANDLE_TITLE;
             $return .= "</td><td bgcolor=#FFAA55 align=\"center\" valign=\"middle\">" . "<h4>" . UserInterfaceMessage::FR_WARNING_EMBALLAGE_COLIS . "</h4></td></tr>";
         }
     } else {
         /*
          * Initialisation des modèles 
          */
         $annexeEmballageGroupeTypeModel2 = new AnnexeEmballageGroupeTypeModel('3');
         $label = $annexeEmballageGroupeTypeModel2->getDataField(AnnexeEmballageGroupeTypeModel::FIELDNAME_NOM_ANNEXE_EMBALLAGE_GROUPE_TYPE)->getFieldValue();
         $htmlEmballageDuColis = new HtmlSubForm_RNN($arrayFtaConditionnement, $className, $label, $tablesNameAndIdForeignKeyOfFtaConditionnement, FtaConditionnementModel::FONCTIONNAME_VERSIONNING);
         $htmlEmballageDuColis->setIsEditable($this->getIsEditable());
         $htmlEmballageDuColis->setRightToAdd(TRUE);
         $htmlEmballageDuColis->setLien(FtaConditionnementModel::getAddLinkBeforeConditionnement($paramIdFta, $paramChapitre, AnnexeEmballageGroupeTypeModel::EMBALLAGE_DU_COLIS, $paramSyntheseAction, $paramIdFtaEtat, $paramAbreviationEtat, $paramIdFtaRole));
         $return .= $htmlEmballageDuColis->getHtmlResult();
     }
     /**
      * Initialisation du résultat des règles de validation
      */
     $this->setDataValidationSuccessful($htmlEmballageDuColis->isDataValidationSuccessful());
     return $return;
 }