/** * 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; } }