/**
  * On affiche la liste des sous famille à une activité de classification
  * @param objet $paramFtaModel
  * @param int $paramIdClassificationFta2
  * @param boolean $paramIsEditable
  * @return string
  */
 public static function getHtmlListeClassificationActiviteSousFamilleArcadia(FtaModel $paramFtaModel, $paramIdClassificationFta2, $paramIsEditable)
 {
     $htmlList = new HtmlListSelect();
     $paramFtaModel->setDataFtaTableToCompare();
     $idActivite = ClassificationFta2Model::getIdClassificationTypeByTypeNameAndIdClassificationFta2($paramIdClassificationFta2, ClassificationFta2Model::FIELDNAME_ID_ACTIVITE);
     $dataFieldIdArcadiaSousFamilleTMP = $paramFtaModel->getDataField(FtaModel::FIELDNAME_ID_ARCADIA_SOUS_FAMILLE);
     $arrayClassificationActiviteSousFamilleArcadia = DatabaseOperation::convertSqlStatementWithKeyAndOneFieldToArray('SELECT DISTINCT ' . ArcadiaSousFamilleModel::TABLENAME . '.' . ArcadiaSousFamilleModel::KEYNAME . ', CONCAT_WS(  \' - \',' . ArcadiaSousFamilleModel::TABLENAME . '.' . ArcadiaSousFamilleModel::KEYNAME . ',' . ArcadiaSousFamilleModel::TABLENAME . '.' . ArcadiaSousFamilleModel::FIELDNAME_NOM_ARCADIA_SOUS_FAMILLE . ') FROM ' . ArcadiaSousFamilleModel::TABLENAME . ',' . self::TABLENAME . ' WHERE ' . ArcadiaSousFamilleModel::TABLENAME . '.' . ArcadiaSousFamilleModel::KEYNAME . ' = ' . self::TABLENAME . '.' . self::FIELDNAME_ID_ARCADIA_SOUS_FAMILLE . ' AND ' . self::FIELDNAME_ID_ACTIVITE . '=' . $idActivite . ' ORDER BY ' . ArcadiaSousFamilleModel::FIELDNAME_NOM_ARCADIA_SOUS_FAMILLE);
     /**
      * 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($arrayClassificationActiviteSousFamilleArcadia) > "1") {
     //                $paramIsEditable = Chapitre::EDITABLE;
     //            } else {
     //                /**
     //                 * Enregistrement de la donnée raccourcis de classification
     //                 */
     //                if ($arrayClassificationActiviteSousFamilleArcadia) {
     //                    foreach ($arrayClassificationActiviteSousFamilleArcadia as $key => $value) {
     //                        $ftaModel->getDataField(FtaModel::FIELDNAME_ID_ARCADIA_SOUS_FAMILLE)->setFieldValue($key);
     //                        $ftaModel->saveToDatabase();
     //                    }
     //                }
     //                $paramIsEditable = Chapitre::NOT_EDITABLE;
     //            }
     //        }
     $htmlList->setArrayListContent($arrayClassificationActiviteSousFamilleArcadia);
     /**
      * On vérifie si la donnée en BDD se trouve dans le tableau
      * Sinon alors on vide la donnée de la BDD
      */
     $dataFieldIdArcadiaSousFamille = FtaController::checkDataInArrayKeyList($dataFieldIdArcadiaSousFamilleTMP, $arrayClassificationActiviteSousFamilleArcadia);
     $HtmlTableName = FtaModel::TABLENAME . '_' . FtaModel::FIELDNAME_ID_ARCADIA_SOUS_FAMILLE . '_' . $paramFtaModel->getKeyValue();
     /**
      * Vérification des règle de validation
      */
     $dataFieldIdArcadiaSousFamille->checkValidationRules();
     if ($dataFieldIdArcadiaSousFamille->getDataValidationSuccessful() == TRUE) {
         $htmlList->setIsWarningMessage($dataFieldIdArcadiaSousFamille->getDataValidationSuccessful());
         $paramFtaModel->setDataValidationSuccessfulToTrue();
     } else {
         $htmlList->setIsWarningMessage($dataFieldIdArcadiaSousFamille->getDataValidationSuccessful());
         $htmlList->setWarningMessage($dataFieldIdArcadiaSousFamille->getDataWarningMessage());
         $paramFtaModel->setDataValidationSuccessfulToFalse();
     }
     $htmlList->getAttributes()->getName()->setValue(FtaModel::FIELDNAME_ID_ARCADIA_SOUS_FAMILLE);
     $htmlList->setLabel(DatabaseDescription::getFieldDocLabel(self::TABLENAME, self::FIELDNAME_ID_ARCADIA_SOUS_FAMILLE));
     $htmlList->setIsEditable($paramIsEditable);
     $htmlList->initAbstractHtmlSelect($HtmlTableName, $htmlList->getLabel(), $dataFieldIdArcadiaSousFamille->getFieldValue(), $dataFieldIdArcadiaSousFamille->isFieldDiff(), $htmlList->getArrayListContent(), $htmlList->getIsWarningMessage(), $htmlList->getWarningMessage());
     $htmlList->getEventsForm()->setOnChangeWithAjaxAutoSave(FtaModel::TABLENAME, FtaModel::KEYNAME, $paramFtaModel->getKeyValue(), FtaModel::FIELDNAME_ID_ARCADIA_SOUS_FAMILLE);
     /**
      * Description d'un champ
      */
     $htmlList->setHelp(IntranetColumnInfoModel::getFieldDesc($dataFieldIdArcadiaSousFamille->getTableName(), $dataFieldIdArcadiaSousFamille->getFieldName(), $dataFieldIdArcadiaSousFamille->getFieldLabel(), $htmlList));
     $listeClassificationSousFamilleArcadia = $htmlList->getHtmlResult();
     return $listeClassificationSousFamilleArcadia;
 }
 /**
  * On vérifie si la classification a été modifié
  * si oui on verifie si la saisonalité est festive alors COD_FESTIF est à oui
  */
 function transformFestif()
 {
     $checkDiff = $this->getFtaModel()->getDataField(FtaModel::FIELDNAME_ID_FTA_CLASSIFICATION2)->isFieldDiff();
     if ($checkDiff or $this->getActionProposal() == self::CREATE) {
         $idClassificationFta2 = $this->getFtaModel()->getDataField(FtaModel::FIELDNAME_ID_FTA_CLASSIFICATION2)->getFieldValue();
         $idSaisonalite = ClassificationFta2Model::getIdClassificationTypeByTypeNameAndIdClassificationFta2($idClassificationFta2, ClassificationFta2Model::FIELDNAME_ID_SAISONNALITE);
         if ($idSaisonalite == ClassificationFta2Model::ID_CLASSIFICATION_FESTIF) {
             $festifValue = self::OUI;
         } else {
             $festifValue = self::NON;
         }
         $this->setXMLArcadiaFestif($festifValue);
     }
 }
示例#3
0
 /**
  * On affiche les données d'arcadia si une classification est saisi
  * Suivant la classification les champs apparaisant ne sont pas éditables
  */
 public function getHtmlArcadiaDataNotEditable()
 {
     //Initialisation des variables locales
     $htmlReturn = NULL;
     $idClassificationFta2 = $this->getModel()->getDataField(FtaModel::FIELDNAME_ID_FTA_CLASSIFICATION2)->getFieldValue();
     if ($idClassificationFta2) {
         /**
          * Enregistrement de la donnée catégorie produit optiventes
          */
         $classificationFta2Model = new ClassificationFta2Model($idClassificationFta2);
         $categorieProduitOptiventesValue = $classificationFta2Model->getDataField(ClassificationFta2Model::FIELDNAME_CATEGORIE_PRODUIT_OPTIVENTES)->getFieldValue();
         $this->getModel()->getDataField(FtaModel::FIELDNAME_ID_ARCADIA_CATEGEORIE_PRODUIT_OPTIVENTES)->setFieldValue($categorieProduitOptiventesValue);
         /**
          * On vérrifie si l'article est soumis à un eco emballage
          * suivant la classification
          */
         $idRayon = ClassificationFta2Model::getIdClassificationTypeByTypeNameAndIdClassificationFta2($idClassificationFta2, ClassificationFta2Model::FIELDNAME_ID_RAYON);
         if ($idRayon == ClassificationFta2Model::ID_CLASSIFICATION_LIBRE_SERVICE) {
             $this->getModel()->getDataField(FtaModel::FIELDNAME_ID_ARCADIA_SOUMIS_ECO_EMBALLAGE)->setFieldValue(Fta2ArcadiaController::OUI);
         } else {
             $this->getModel()->getDataField(FtaModel::FIELDNAME_ID_ARCADIA_SOUMIS_ECO_EMBALLAGE)->setFieldValue(Fta2ArcadiaController::NON);
         }
         $this->getModel()->saveToDatabase();
         /**
          * Affichage Html
          */
         $htmlCodeProduitOptiv = $this->getHtmlDataField(FtaModel::FIELDNAME_ID_ARCADIA_CATEGEORIE_PRODUIT_OPTIVENTES);
         $htmlSoumisEcoEmball = $this->getHtmlDataField(FtaModel::FIELDNAME_ID_ARCADIA_SOUMIS_ECO_EMBALLAGE);
         $htmlReturn = '<tr class=titre_principal><td class>Classification ARCADIA</td></tr>';
         $htmlReturn .= $htmlCodeProduitOptiv . $htmlSoumisEcoEmball;
     }
     return $htmlReturn;
 }
示例#4
0
 /**
  * Vérification que les champs arcadia déduit de la classifcation
  * sont correcte
  * @param type $paramIdClassificationFta2
  */
 function checkArcadiaClassifData($paramIdClassificationFta2)
 {
     /**
      * Famille Budget
      */
     $idArcadiaFamilleBudget = $this->getDataField(FtaModel::FIELDNAME_ID_ARCADIA_FAMILLE_BUDGET)->getFieldValue();
     if ($idArcadiaFamilleBudget) {
         $reqFamilleBudget = "SELECT DISTINCT " . ArcadiaFamilleBudgetModel::KEYNAME . "," . ArcadiaFamilleBudgetModel::KEYNAME . " FROM " . ArcadiaFamilleBudgetModel::TABLENAME . " ORDER BY " . ArcadiaFamilleBudgetModel::KEYNAME;
         $arrayClassificationArcadiaFamilleBudget = DatabaseOperation::convertSqlStatementWithKeyAndOneFieldToArray($reqFamilleBudget);
         if (!in_array($idArcadiaFamilleBudget, $arrayClassificationArcadiaFamilleBudget)) {
             $this->getDataField(FtaModel::FIELDNAME_ID_ARCADIA_FAMILLE_BUDGET)->setFieldValue(" ");
         }
     }
     /**
      * Famille de Ventes
      */
     $idArcadiaFamilleVente = $this->getDataField(FtaModel::FIELDNAME_ID_ARCADIA_FAMILLE_VENTE)->getFieldValue();
     if ($idArcadiaFamilleVente) {
         $idActivite = ClassificationFta2Model::getIdClassificationTypeByTypeNameAndIdClassificationFta2($paramIdClassificationFta2, ClassificationFta2Model::FIELDNAME_ID_ACTIVITE);
         $arrayClassificationFamilleVenteArcadia = DatabaseOperation::convertSqlStatementWithKeyAndOneFieldToArray('SELECT DISTINCT ' . ArcadiaFamilleVenteModel::TABLENAME . '.' . ArcadiaFamilleVenteModel::KEYNAME . ',' . ArcadiaFamilleVenteModel::TABLENAME . '.' . ArcadiaFamilleVenteModel::KEYNAME . ' FROM ' . ArcadiaFamilleVenteModel::TABLENAME . ',' . ClassificationActiviteFamilleVentesArcadiaModel::TABLENAME . ' WHERE ' . ArcadiaFamilleVenteModel::TABLENAME . '.' . ArcadiaFamilleVenteModel::KEYNAME . ' = ' . ClassificationActiviteFamilleVentesArcadiaModel::TABLENAME . '.' . ClassificationActiviteFamilleVentesArcadiaModel::FIELDNAME_ID_ARCADIA_FAMILLE_VENTE . ' AND ' . ClassificationActiviteFamilleVentesArcadiaModel::FIELDNAME_ID_ACTIVITE . '=' . $idActivite . ' ORDER BY ' . ArcadiaFamilleVenteModel::FIELDNAME_NOM_ARCADIA_FAMILLE_VENTE);
         if (!in_array($idArcadiaFamilleVente, $arrayClassificationFamilleVenteArcadia)) {
             $this->getDataField(FtaModel::FIELDNAME_ID_ARCADIA_FAMILLE_VENTE)->setFieldValue(" ");
         }
     }
     /**
      * Gamme Coop
      */
     $idArcadiaGammeCoop = $this->getDataField(FtaModel::FIELDNAME_ID_ARCADIA_GAMME_COOP)->getFieldValue();
     if ($idArcadiaGammeCoop) {
         $reqGammeCoop = "SELECT DISTINCT " . ArcadiaGammeCoopModel::KEYNAME . "," . ArcadiaGammeCoopModel::KEYNAME . " FROM " . ArcadiaGammeCoopModel::TABLENAME . " ORDER BY " . ArcadiaGammeCoopModel::KEYNAME;
         $arrayClassificationArcadiaGammeCoop = DatabaseOperation::convertSqlStatementWithKeyAndOneFieldToArray($reqGammeCoop);
         if (!in_array($idArcadiaGammeCoop, $arrayClassificationArcadiaGammeCoop)) {
             $this->getDataField(FtaModel::FIELDNAME_ID_ARCADIA_GAMME_COOP)->setFieldValue(" ");
         }
     }
     /**
      * Gamme Famille Budget
      */
     $idArcadiaGammeFamilleBudget = $this->getDataField(FtaModel::FIELDNAME_ID_ARCADIA_GAMME_FAMILLE_BUDGET)->getFieldValue();
     if ($idArcadiaGammeFamilleBudget) {
         $arrayGammeFamilleBudget = DatabaseOperation::convertSqlStatementWithKeyAndOneFieldToArray('SELECT DISTINCT ' . ArcadiaGammeFamilleBudgetModel::TABLENAME . '.' . ArcadiaGammeFamilleBudgetModel::KEYNAME . ',' . ArcadiaGammeFamilleBudgetModel::TABLENAME . '.' . ArcadiaGammeFamilleBudgetModel::KEYNAME . ' FROM ' . ArcadiaGammeFamilleBudgetModel::TABLENAME . ',' . ClassificationGammeFamilleBudgetArcadiaModel::TABLENAME . ' WHERE ' . ArcadiaGammeFamilleBudgetModel::TABLENAME . '.' . ArcadiaGammeFamilleBudgetModel::KEYNAME . ' = ' . ClassificationGammeFamilleBudgetArcadiaModel::TABLENAME . '.' . ClassificationGammeFamilleBudgetArcadiaModel::FIELDNAME_ID_ARCADIA_GAMME_FAMILLE_BUDGET . ' AND ' . ClassificationGammeFamilleBudgetArcadiaModel::FIELDNAME_ID_FTA_CLASSIFICATION2 . '=' . $paramIdClassificationFta2 . ' ORDER BY ' . ArcadiaGammeFamilleBudgetModel::KEYNAME);
         if (!in_array($idArcadiaGammeFamilleBudget, $arrayGammeFamilleBudget)) {
             $this->getDataField(FtaModel::FIELDNAME_ID_ARCADIA_GAMME_FAMILLE_BUDGET)->setFieldValue(" ");
         }
     }
     /**
      * Arcadia Marque
      */
     $idArcadiaMarque = $this->getDataField(FtaModel::FIELDNAME_ID_ARCADIA_MARQUE)->getFieldValue();
     if ($idArcadiaMarque) {
         $idMarque = ClassificationFta2Model::getIdClassificationTypeByTypeNameAndIdClassificationFta2($paramIdClassificationFta2, ClassificationFta2Model::FIELDNAME_ID_MARQUE);
         $arrayClassificationMarqueArcadia = DatabaseOperation::convertSqlStatementWithKeyAndOneFieldToArray('SELECT DISTINCT ' . ArcadiaMarqueModel::TABLENAME . '.' . ArcadiaMarqueModel::KEYNAME . ',' . ArcadiaMarqueModel::TABLENAME . '.' . ArcadiaMarqueModel::KEYNAME . ' FROM ' . ArcadiaMarqueModel::TABLENAME . ',' . ClassificationMarqueArcadiaModel::TABLENAME . ' WHERE ' . ArcadiaMarqueModel::TABLENAME . '.' . ArcadiaMarqueModel::KEYNAME . ' = ' . ClassificationMarqueArcadiaModel::TABLENAME . '.' . ClassificationMarqueArcadiaModel::FIELDNAME_ID_ARCADIA_MARQUE . ' AND ' . ClassificationMarqueArcadiaModel::FIELDNAME_ID_MARQUE . '=' . $idMarque . ' ORDER BY ' . ArcadiaMarqueModel::FIELDNAME_NOM_ARCADIA_MARQUE);
         if (!in_array($idArcadiaMarque, $arrayClassificationMarqueArcadia)) {
             $this->getDataField(FtaModel::FIELDNAME_ID_ARCADIA_MARQUE)->setFieldValue(" ");
         }
     }
     /**
      * Sous Famille
      */
     $idArcadiaSousFamille = $this->getDataField(FtaModel::FIELDNAME_ID_ARCADIA_SOUS_FAMILLE)->getFieldValue();
     if ($idArcadiaSousFamille) {
         $idActivite = ClassificationFta2Model::getIdClassificationTypeByTypeNameAndIdClassificationFta2($paramIdClassificationFta2, ClassificationFta2Model::FIELDNAME_ID_ACTIVITE);
         $arrayClassificationActiviteSousFamilleArcadia = DatabaseOperation::convertSqlStatementWithKeyAndOneFieldToArray('SELECT DISTINCT ' . ArcadiaSousFamilleModel::TABLENAME . '.' . ArcadiaSousFamilleModel::KEYNAME . ',' . ArcadiaSousFamilleModel::TABLENAME . '.' . ArcadiaSousFamilleModel::KEYNAME . ' FROM ' . ArcadiaSousFamilleModel::TABLENAME . ',' . ClassificationActiviteSousFamilleArcadiaModel::TABLENAME . ' WHERE ' . ArcadiaSousFamilleModel::TABLENAME . '.' . ArcadiaSousFamilleModel::KEYNAME . ' = ' . ClassificationActiviteSousFamilleArcadiaModel::TABLENAME . '.' . ClassificationActiviteSousFamilleArcadiaModel::FIELDNAME_ID_ARCADIA_SOUS_FAMILLE . ' AND ' . ClassificationActiviteSousFamilleArcadiaModel::FIELDNAME_ID_ACTIVITE . '=' . $idActivite . ' ORDER BY ' . ArcadiaSousFamilleModel::FIELDNAME_NOM_ARCADIA_SOUS_FAMILLE);
         if (!in_array($idArcadiaSousFamille, $arrayClassificationActiviteSousFamilleArcadia)) {
             $this->getDataField(FtaModel::FIELDNAME_ID_ARCADIA_SOUS_FAMILLE)->setFieldValue(" ");
         }
     }
 }