Subversion Repositories eFlore/Applications.del

Compare Revisions

Ignore whitespace Rev 2020 → Rev 2021

/trunk/services/modules/0.1/statistiques/StatistiquesParAnnee.php
88,25 → 88,42
* - Nombre d'observations ayant une proposition retenue ou en consensus (parmi les observations de l'année)
*/
private function getObservations() {
$nbObsTotal = $this->getNbObsTotal();
$nbObsSansIdentOuTC = $this->getNbObsSansIdentOuTC();
$nbObsSansIdent = $this->getNbObsSansIdent();
$nbObsTC = $this->getNbObsTC();
$nbObsTCRetenue = $this->getNbObsTCRetenue();
$nbObsTCConsensus = $this->getNbObsTCConsensus();
$nbObsTCConsensusNonValide = $this->getNbObsTCConsensusNonValide();
$nbPropositionsRetenuesObsAnnee = $this->getNbPropositionsRetenuesObsAnnee();
$nbPropositionsConsensusObsAnnee = $this->getNbPropositionsConsensusObsAnnee();
return array(
'nbObsTotal' => $this->getNbObsTotal(),
'nbObsTotal' => $nbObsTotal,
'nbObsTotalMPM' => $this->getNbObsTotal(true),
'nbObsSansIdentOuTC' => $this->getNbObsSansIdentOuTC(),
'nbObsSansIdentOuTC' => $nbObsSansIdentOuTC,
'nbObsSansIdentOuTCMPM' => $this->getNbObsSansIdentOuTC(true),
'nbObsSansIdent' => $this->getNbObsSansIdent(),
'nbObsSansIdentOuTCPC' => round(($nbObsSansIdentOuTC / $nbObsTotal) * 100, 2),
'nbObsSansIdent' => $nbObsSansIdent,
'nbObsSansIdentMPM' => $this->getNbObsSansIdent(true),
'nbObsTC' => $this->getNbObsTC(),
'nbObsSansIdentPC' => round(($nbObsSansIdent / $nbObsTotal) * 100, 2),
'nbObsTC' => $nbObsTC,
'nbObsTCMPM' => $this->getNbObsTC(true),
'nbObsTCRetenue' => $this->getNbObsTCRetenue(),
'nbObsTCPC' => round(($nbObsTC / $nbObsTotal) * 100, 2),
'nbObsTCRetenue' => $nbObsTCRetenue,
'nbObsTCRetenueMPM' => $this->getNbObsTCRetenue(true),
'nbObsTCConsensus' => $this->getNbObsTCConsensus(),
'nbObsTCRetenuePC' => round(($nbObsTCRetenue / $nbObsTotal) * 100, 2),
'nbObsTCConsensus' => $nbObsTCConsensus,
'nbObsTCConsensusMPM' => $this->getNbObsTCConsensus(true),
'nbObsTCConsensusNonValide' => $this->getNbObsTCConsensusNonValide(),
'nbObsTCConsensusPC' => round(($nbObsTCConsensus / $nbObsTotal) * 100, 2),
'nbObsTCConsensusNonValide' => $nbObsTCConsensusNonValide,
'nbObsTCConsensusNonValideMPM' => $this->getNbObsTCConsensusNonValide(true),
'nbPropositionsRetenuesObsAnnee' => $this->getNbPropositionsRetenuesObsAnnee(),
'nbObsTCConsensusNonValidePC' => round(($nbObsTCConsensusNonValide / $nbObsTotal) * 100, 2),
'nbPropositionsRetenuesObsAnnee' => $nbPropositionsRetenuesObsAnnee,
'nbPropositionsRetenuesObsAnneeMPM' => $this->getNbPropositionsRetenuesObsAnnee(true),
'nbPropositionsConsensusObsAnnee' => $this->getNbPropositionsConsensusObsAnnee(),
'nbPropositionsRetenuesObsAnneePC' => round(($nbPropositionsRetenuesObsAnnee / $nbObsTotal) * 100, 2),
'nbPropositionsConsensusObsAnnee' => $nbPropositionsConsensusObsAnnee,
'nbPropositionsConsensusObsAnneeMPM' => $this->getNbPropositionsConsensusObsAnnee(true),
'nbPropositionsConsensusObsAnneePC' => round(($nbPropositionsConsensusObsAnnee / $nbObsTotal) * 100, 2),
);
}
 
399,11 → 416,15
* Nombre d'observations ayant une proposition retenue ou en consensus (parmi les observations de l'année)
*/
private function getNbPropositionsRetenuesObsAnnee($mpm=false) {
if ($this->annee == null) {
return null;
$requete = "SELECT COUNT(DISTINCT ce_observation) AS nb_total FROM del_commentaire WHERE ";
if ($this->annee != null) {
$requete .= "YEAR(date) = " . $this->annee . " AND ";
}
$requete = "SELECT COUNT(DISTINCT ce_observation) AS nb_total FROM del_commentaire WHERE YEAR(date) = " . $this->annee . " AND "
. "proposition_retenue = 1 AND ce_observation in (SELECT id_observation FROM del_observation WHERE year(date_transmission) = " . $this->annee . ")";
$requete .= "proposition_retenue = 1 AND ce_observation in (SELECT id_observation FROM del_observation ";
if ($this->annee != null) {
$requete .= "WHERE year(date_transmission) = " . $this->annee;
}
$requete .= ")";
if ($mpm) {
$requete = $this->encapsulerMPM($requete);
}
415,16 → 436,19
* Nombre de proposition en consensus faites sur les observations d'une année
*/
private function getNbPropositionsConsensusObsAnnee($mpm=false) {
if ($this->annee == null) {
return null;
$requete = "SELECT COUNT(DISTINCT ce_observation) AS nb_total FROM del_commentaire dc WHERE ce_observation in ("
. " SELECT id_observation FROM del_observation ";
if ($this->annee != null) {
$requete .= "WHERE year(date_transmission) = " . $this->annee ;
}
$requete = "SELECT COUNT(DISTINCT ce_observation) AS nb_total FROM del_commentaire dc WHERE ce_observation in ("
. " SELECT id_observation FROM del_observation WHERE year(date_transmission) = " . $this->annee . ") AND ("
$requete .= ") AND ("
. " dc.proposition_retenue = 1 OR (dc.proposition_initiale = 1"
. " AND dc.nom_sel_nn != 0 AND dc.nom_sel_nn IS NOT NULL AND dc.id_commentaire IN"
. " (SELECT ce_proposition FROM del_commentaire_vote dcv"
. " WHERE year(date) <= " . $this->annee
. " GROUP BY ce_proposition"
. " (SELECT ce_proposition FROM del_commentaire_vote dcv";
if ($this->annee != null) {
$requete .= " WHERE year(date) <= " . $this->annee;
}
$requete .= " GROUP BY ce_proposition"
. " HAVING SUM(CASE"
. " WHEN valeur = 1 AND dcv.ce_utilisateur REGEXP '^-?[0-9]+$' != 0 THEN 3"
. " WHEN valeur = 0 AND dcv.ce_utilisateur REGEXP '^-?[0-9]+$' != 0 THEN -3"