Subversion Repositories Applications.gtt

Compare Revisions

Ignore whitespace Rev 109 → Rev 110

/trunk/actions/GttCtrlActionGestion.class.php
174,6 → 174,7
'id' => $Projet->getIdProjet(),
'valeur' => $Projet->getIdProjet(),
'nom' => $Projet->getNom(),
'desc' => $Projet->getDescription(),
'date' => $aso_tps_w);
248,24 → 249,26
$param = array($GLOBALS['_GTT_']['Utilisateur']->getIdUtilisateur(), $aso_semaine[1]['mysql'], $aso_semaine[7]['mysql']);
$tab_tp = $TravailProjet->consulter($cmd, $param);
 
// Récupération des infos sur l'utilisateur courrant
$tps_w_jour = $GLOBALS['_GTT_']['Utilisateur']->getTempsDeTravailJour();
// Création d'un utilisateur pour les mises à jour des CP et RTT
$Utilisateur = new Utilisateur();
$Utilisateur->initialiser();
$Utilisateur->setIdUtilisateur($GLOBALS['_GTT_']['Utilisateur']->getIdUtilisateur());
$Utilisateur->setQuotaHeuresSupp($GLOBALS['_GTT_']['Utilisateur']->getQuotaHeuresSupp());
$Utilisateur->setCongesPayes($GLOBALS['_GTT_']['Utilisateur']->getCongesPayes());
$Utilisateur->setTempsDeTravailJour(null);
$Utilisateur->setTempsDeTravailMois(null);
$Utilisateur->setMarkAdmin(null);
$Utilisateur->setMarkRecapitulatif(null);
 
// Initialisation de la variable pour la gestion des heures sup
$jours_w_semaine = array_flip(explode(',', GTT_SEMAINE_JOUR_W_NBRE));
$jours_w_semaine = array('1' => 'lundi', '2' => 'mardi','3' => 'mercredi', '4' => 'jeudi', '5' => 'vendredi', '6' => 'samedi', '7' => 'dimanche');
foreach ($jours_w_semaine as $c => $v) {
$jours_w_semaine[$c] = array('act' => 0, 'pre' => 0, 'act_a' => 0, 'pre_a' => 0, 'mod' => false);
$methode = 'getTdt'.ucfirst($v);
trigger_error(print_r($methode, true), E_USER_NOTICE);
$jours_w_semaine[$c] = array( 'act' => 0,
'pre' => 0,
'act_a' => 0,
'pre_a' => 0,
'mod' => false,
'tdt' => $GLOBALS['_GTT_']['Utilisateur']->$methode());
}
 
trigger_error('ici'.print_r($jours_w_semaine, true), E_USER_NOTICE);
// Ajout ou Mise à jour des durées de travail
if (isset($_POST['pr'])) {
foreach($_POST['pr'] as $projet_id => $jours) {
412,8 → 415,8
// Gestion de la mise à jour des heures sup
foreach ($jours_w_semaine as $c => $j) {
if (($j['pre'] != 0 || $j['act'] != 0) ) {// Modification sur le temps travaillé pour le jour courant
$heure_sup_pre = $j['pre'] - ($tps_w_jour - $j['pre_a']);// -7 = 0 - 7
$heure_sup_act = $j['act'] - ($tps_w_jour - $j['act_a']);// -5 = 2 - 7
$heure_sup_pre = $j['pre'] - ($j['tdt'] - $j['pre_a']);// -7 = 0 - 7
$heure_sup_act = $j['act'] - ($j['tdt'] - $j['act_a']);// -5 = 2 - 7
$heure_sup_dif = $heure_sup_act - $heure_sup_pre ;// 2 = -5 - -7
if ($j['mod'] == false) {// Première fois que l'on modifie le jour
if ($heure_sup_act < 0) {
/trunk/actions/GttCtrlActionStatTableauGlobal.class.php
107,7 → 107,9
'nom' => $Categorie->getLibelle(),
'total' => 0);
}
$aso_stat['categories'][$Categorie->getIdCategorie()]['projets'][$Projet->getIdProjet()]['nom'] = $Projet->getNom();
$aso_stat['categories'][$Categorie->getIdCategorie()]['projets'][$Projet->getIdProjet()] =
array( 'nom' => $Projet->getNom(),
'desc' => $Projet->getDescription());
foreach ($tab_tp as $TP) {
if ($TP->getIdProjet() == $Projet->getIdProjet()) {
/trunk/actions/GttCtrlActionAdminUtilisateur.class.php
130,6 → 130,15
$aso_admin_utilisateur['messages'][] = 'Il est impossible que le temps de travail soit supérieur à 24h !';
$bool = false;
}
$aso_champs_tdt = array('ut_tdt_lundi' => 'Lundi', 'ut_tdt_mardi' => 'Mardi', 'ut_tdt_mercredi' => 'Mercredi',
'ut_tdt_jeudi' => 'Jeudi', 'ut_tdt_vendredi' => 'Vendredi', 'ut_tdt_samedi' => 'Samedi',
'ut_tdt_dimanche' => 'Dimanche');
foreach ($aso_champs_tdt as $champ_id => $libelle) {
if ($_POST[$champ_id] > $_POST['ut_temps_de_travail_jour']) {
$aso_admin_utilisateur['messages'][] = "Le champ temps de travail du $libelle ne doit pas être supérieur à la durée maximum du temps de travail journalier !";
$bool = false;
}
}
$aso_champs_obligatoires = array('ut_nom' => 'Nom', 'ut_prenom' => 'Prénom', 'ut_email' => 'Courriel', 'ut_mot_de_passe' => 'Mot de passe');
foreach ($aso_champs_obligatoires as $champ_id => $libelle) {
if (empty($_POST[$champ_id])) {
185,6 → 194,13
$Utilisateur->setCongesPayes($_POST['ut_conges_payes']);
$Utilisateur->setTempsDeTravailJour($_POST['ut_temps_de_travail_jour']);
$Utilisateur->setTempsDeTravailMois($_POST['ut_temps_de_travail_mois']);
$Utilisateur->setTdtLundi($_POST['ut_tdt_lundi']);
$Utilisateur->setTdtMardi($_POST['ut_tdt_mardi']);
$Utilisateur->setTdtMercredi($_POST['ut_tdt_mercredi']);
$Utilisateur->setTdtJeudi($_POST['ut_tdt_jeudi']);
$Utilisateur->setTdtVendredi($_POST['ut_tdt_vendredi']);
$Utilisateur->setTdtSamedi($_POST['ut_tdt_samedi']);
$Utilisateur->setTdtDimanche($_POST['ut_tdt_dimanche']);
$Utilisateur->setQuotaHeuresSupp($_POST['ut_quota_heures_supp']);
if (!isset($_POST['ut_mark_admin'])) {
$_POST['ut_mark_admin'] = 0;
216,6 → 232,14
$Utilisateur->setCongesPayes($_POST['ut_conges_payes']);
$Utilisateur->setTempsDeTravailJour($_POST['ut_temps_de_travail_jour']);
$Utilisateur->setTempsDeTravailMois($_POST['ut_temps_de_travail_mois']);
$Utilisateur->setTdtLundi($_POST['ut_tdt_lundi']);
$Utilisateur->setTdtMardi($_POST['ut_tdt_mardi']);
$Utilisateur->setTdtMercredi($_POST['ut_tdt_mercredi']);
$Utilisateur->setTdtJeudi($_POST['ut_tdt_jeudi']);
$Utilisateur->setTdtVendredi($_POST['ut_tdt_vendredi']);
$Utilisateur->setTdtSamedi($_POST['ut_tdt_samedi']);
$Utilisateur->setTdtDimanche($_POST['ut_tdt_dimanche']);
$Utilisateur->setQuotaHeuresSupp($_POST['ut_quota_heures_supp']);
if (!isset($_POST['ut_mark_admin'])) {
$_POST['ut_mark_admin'] = 0;
/trunk/actions/GttCtrlActionStatTableauCharge.class.php
9,7 → 9,10
 
public function executer()
{
$aso_stat = array();
//+-------------------------------------------------------------------------------------------------+
// GESTION D'INFO GLOBALES
//+-------------------------------------------------------------------------------------------------+
$aso_stat = array('total_w' => 0,'total_a' => 0, 'total' => 0);
$this->getRegistre()->setTitre('Plan de charge');
 
//+-------------------------------------------------------------------------------------------------+
69,7 → 72,7
foreach ($tab_semaine_jours as $num => $Day) {
// Nous prenons en compte uniquement les jours du mois courant
if ($Day->thisMonth() == $_GET['mois']) {
$element = array();
$element = array('travail' => 0, 'absence' => 0, 'w_et_a' => 0);
$element['jour'] = $Day->thisDay();
$element['jour_nom'] = $Calendrier->getNomJours($num);
$element['class'] = 'jour';
144,18 → 147,38
$j = date('Y-m-d', strtotime($TP->getIdDateTravail()));
if ($TP->getIdProjet() == $Projet->getIdProjet()) {
// Récupération des infos sur les catégories
if (!isset($aso_stat['categorie_totaux'][$Categorie->getLibelle()][$j])) {
$aso_stat['categorie_totaux'][$Categorie->getLibelle()][$j] = 0;
if (!isset($aso_stat['categories'][$Categorie->getLibelle()][$j])) {
$aso_stat['categories'][$Categorie->getLibelle()][$j] = 0;
}
$aso_stat['categorie_totaux'][$Categorie->getLibelle()][$j] += $TP->getDuree();
$aso_stat['categories'][$Categorie->getLibelle()][$j] += $TP->getDuree();
if (!isset($aso_stat['categories'][$Categorie->getLibelle()]['total'])) {
$aso_stat['categories'][$Categorie->getLibelle()]['total'] = 0;
}
$aso_stat['categories'][$Categorie->getLibelle()]['total'] += $TP->getDuree();
// Récupération du total de travail
$aso_stat['total_w'] += $TP->getDuree();
// Récupération du total de temps global (travail+absence)
$aso_stat['total'] += $TP->getDuree();
// Récupération d'info sur le temps travaillé
$aso_stat['elements'][$j]['travail'] += $TP->getDuree();
 
// Récupération du total travail + absence par jour
$aso_stat['elements'][$j]['w_et_a'] += $TP->getDuree();
// Récupération des infos sur les projets
if (!isset($aso_stat['projets'][$Categorie->getLibelle()][$Projet->getIdProjet()])) {
$aso_stat['projets'][$Categorie->getLibelle()][$Projet->getIdProjet()] = array(
'id' => $Projet->getIdProjet(),
'nom' => $Projet->getNom(),
'duree' => array());
'desc' => $Projet->getDescription(),
'duree' => array(),
'total' => 0);
}
$aso_stat['projets'][$Categorie->getLibelle()][$Projet->getIdProjet()]['duree'][$j] = $TP->getDuree();
$aso_stat['projets'][$Categorie->getLibelle()][$Projet->getIdProjet()]['total'] += $TP->getDuree();
}
}
}
181,19 → 204,34
$aso_stat['ab_total'] = '';
if ($tab_am) {
foreach ($tab_am as $AM) {
$aso_stat['absences'][$AM->getIdAbsenceMotif()] = $AM->getLibelle();
//$aso_gestion['ab'][$AM->getIdAbsenceMotif()] = 0;
// Initialisation du tableau des types d'absences
$aso_stat['absences'][$AM->getIdAbsenceMotif()]['nom'] = $AM->getLibelle();
if (!isset($aso_stat['absences'][$AM->getIdAbsenceMotif()]['total'])) {
$aso_stat['absences'][$AM->getIdAbsenceMotif()]['total'] = 0;
}
 
if ($tab_a) {
foreach ($tab_a as $A) {
if ($A->getIdAbsenceMotif() == $AM->getIdAbsenceMotif() && $A->getDuree() != 0) {
$j = date('Y-m-d', strtotime($A->getIdDateAbsence()));
 
// Récupération des infos sur les absences
$aso_stat['ab'][$AM->getIdAbsenceMotif()][$j] = $A->getDuree();
// Récupération du total des absences par jour
$aso_stat['elements'][$j]['absence'] += $A->getDuree();
// Récupération du total travail + absence par jour
$aso_stat['elements'][$j]['w_et_a'] += $A->getDuree();
 
// Récupération du total pour chaque type d'absence
$aso_stat['absences'][$AM->getIdAbsenceMotif()]['total'] += $A->getDuree();
 
// Récupération du total des absences
if (!isset($aso_stat['ab_total'][$j])) {
$aso_stat['ab_total'][$j] = 0;
}
$aso_stat['ab_total'][$j] += $A->getDuree();
$aso_stat['total_a'] += $A->getDuree();
// Récupération du total de temps global (travail+absence)
$aso_stat['total'] += $A->getDuree();
}
}
}
203,8 → 241,7
$aso_stat['messages'][] = 'Aucune absence de mentionnée en '.$aso_stat['mois']['mois'].' '.$aso_stat['mois']['annee'];
}
trigger_error('<pre>'.print_r($aso_stat, true).'</pre>', E_USER_NOTICE);
//trigger_error('<pre>'.print_r($aso_stat, true).'</pre>', E_USER_NOTICE);
$this->getRegistre()->ajouterDonnee('stat_tableau_charge', $aso_stat);
}
}