Correction cumul par tache dans les rapports ref: #54
This commit is contained in:
@@ -572,7 +572,6 @@ class ReportController extends AbstractController
|
|||||||
}
|
}
|
||||||
$tbproject["before"][$event->getStart()->format("Y")][$event->getStart()->format("Ym")]["duration"]=$tbproject["before"][$event->getStart()->format("Y")][$event->getStart()->format("Ym")]["duration"]+$event->getDuration();
|
$tbproject["before"][$event->getStart()->format("Y")][$event->getStart()->format("Ym")]["duration"]=$tbproject["before"][$event->getStart()->format("Y")][$event->getStart()->format("Ym")]["duration"]+$event->getDuration();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Somme astreinte validé avant la date
|
// Somme astreinte validé avant la date
|
||||||
$end=new \Datetime('first day of this month');
|
$end=new \Datetime('first day of this month');
|
||||||
$end->sub(new \DateInterval('P'.$nbmonth.'M'));
|
$end->sub(new \DateInterval('P'.$nbmonth.'M'));
|
||||||
@@ -605,13 +604,9 @@ class ReportController extends AbstractController
|
|||||||
// Somme event validé par semaine
|
// Somme event validé par semaine
|
||||||
$start=new \Datetime('first day of this month');
|
$start=new \Datetime('first day of this month');
|
||||||
$start->sub(new \DateInterval('P'.$nbmonth.'M'));
|
$start->sub(new \DateInterval('P'.$nbmonth.'M'));
|
||||||
$start->modify('previous monday');
|
|
||||||
$start->setTime(0,0,0);
|
$start->setTime(0,0,0);
|
||||||
$endmonth = new \Datetime('first day of this month');
|
$endmonth = new \Datetime('first day of this month');
|
||||||
$endmonth->add(new \DateInterval('P1M'));
|
$endmonth->add(new \DateInterval('P1M'));
|
||||||
$endmonth->modify('next monday');
|
|
||||||
$end->setTime(23,59,0);
|
|
||||||
|
|
||||||
$eventsbyweek = $em
|
$eventsbyweek = $em
|
||||||
->createQueryBuilder('event')
|
->createQueryBuilder('event')
|
||||||
->select('event')
|
->select('event')
|
||||||
@@ -619,7 +614,7 @@ class ReportController extends AbstractController
|
|||||||
->from('App:Event','event')
|
->from('App:Event','event')
|
||||||
->Where('task.project=:project')
|
->Where('task.project=:project')
|
||||||
->andWhere('event.task=task')
|
->andWhere('event.task=task')
|
||||||
->andWhere('event.end >=:start')
|
->andWhere('event.end >:start')
|
||||||
->andWhere('event.end <:end')
|
->andWhere('event.end <:end')
|
||||||
->andWhere('event.validate=:validate')
|
->andWhere('event.validate=:validate')
|
||||||
->setParameter('project',$project)
|
->setParameter('project',$project)
|
||||||
@@ -641,12 +636,9 @@ class ReportController extends AbstractController
|
|||||||
// Somme astreintes validé par semaine
|
// Somme astreintes validé par semaine
|
||||||
$start=new \Datetime('first day of this month');
|
$start=new \Datetime('first day of this month');
|
||||||
$start->sub(new \DateInterval('P'.$nbmonth.'M'));
|
$start->sub(new \DateInterval('P'.$nbmonth.'M'));
|
||||||
$start->modify('previous monday');
|
|
||||||
$start->setTime(0,0,0);
|
$start->setTime(0,0,0);
|
||||||
$endmonth = new \Datetime('first day of this month');
|
$endmonth = new \Datetime('first day of this month');
|
||||||
$endmonth->add(new \DateInterval('P1M'));
|
$endmonth->add(new \DateInterval('P1M'));
|
||||||
$endmonth->modify('next monday');
|
|
||||||
$end->setTime(23,59,0);
|
|
||||||
|
|
||||||
$penaltybyweek = $em
|
$penaltybyweek = $em
|
||||||
|
|
||||||
@@ -733,16 +725,15 @@ class ReportController extends AbstractController
|
|||||||
// Init des taches par mois
|
// Init des taches par mois
|
||||||
$endmonth=clone $start;
|
$endmonth=clone $start;
|
||||||
$endmonth->add(new \DateInterval('P1M'));
|
$endmonth->add(new \DateInterval('P1M'));
|
||||||
|
$ev = $em
|
||||||
$events = $em
|
|
||||||
->createQueryBuilder('event')
|
->createQueryBuilder('event')
|
||||||
->select('task.id, task.name, SUM(event.duration) as somme')
|
->select('event')
|
||||||
->from('App:Task','task')
|
->from('App:Task','task')
|
||||||
->from('App:Event','event')
|
->from('App:Event','event')
|
||||||
->Where('task.project=:project')
|
->Where('task.project=:project')
|
||||||
->andWhere('event.task=task')
|
->andWhere('event.task=task')
|
||||||
->andWhere('event.end >=:start')
|
->andWhere('event.end >:start')
|
||||||
->andWhere('event.end <:end')
|
->andWhere('event.end <=:end')
|
||||||
->andWhere('event.validate=:validate')
|
->andWhere('event.validate=:validate')
|
||||||
->setParameter('project',$project)
|
->setParameter('project',$project)
|
||||||
->setParameter('validate',true)
|
->setParameter('validate',true)
|
||||||
@@ -750,6 +741,24 @@ class ReportController extends AbstractController
|
|||||||
->setParameter('end',$endmonth)
|
->setParameter('end',$endmonth)
|
||||||
->groupBy('task.id')
|
->groupBy('task.id')
|
||||||
->getQuery()->getResult();
|
->getQuery()->getResult();
|
||||||
|
dump($ev);
|
||||||
|
$events = $em
|
||||||
|
->createQueryBuilder('event')
|
||||||
|
->select('task.id, task.name, SUM(event.duration) as somme')
|
||||||
|
->from('App:Task','task')
|
||||||
|
->from('App:Event','event')
|
||||||
|
->Where('task.project=:project')
|
||||||
|
->andWhere('event.task=task')
|
||||||
|
->andWhere('event.end >:start')
|
||||||
|
->andWhere('event.end <=:end')
|
||||||
|
->andWhere('event.validate=:validate')
|
||||||
|
->setParameter('project',$project)
|
||||||
|
->setParameter('validate',true)
|
||||||
|
->setParameter('start',$start)
|
||||||
|
->setParameter('end',$endmonth)
|
||||||
|
->groupBy('task.id')
|
||||||
|
->getQuery()->getResult();
|
||||||
|
dump($events);
|
||||||
foreach($events as $event) {
|
foreach($events as $event) {
|
||||||
$tbtask= [
|
$tbtask= [
|
||||||
"id"=>$event["id"],
|
"id"=>$event["id"],
|
||||||
@@ -765,10 +774,10 @@ class ReportController extends AbstractController
|
|||||||
// Formater les jours
|
// Formater les jours
|
||||||
$start=new \Datetime('first day of this month');
|
$start=new \Datetime('first day of this month');
|
||||||
$start->sub(new \DateInterval('P'.$nbmonth.'M'));
|
$start->sub(new \DateInterval('P'.$nbmonth.'M'));
|
||||||
|
$start->setTime(0,0,0);
|
||||||
$end=new \Datetime('first day of this month');
|
$end=new \Datetime('first day of this month');
|
||||||
$end->add(new \DateInterval('P'.$nbmonth.'M'));
|
$end->add(new \DateInterval('P'.$nbmonth.'M'));
|
||||||
$end->sub(new \DateInterval('P1D'));
|
$end->sub(new \DateInterval('P1D'));
|
||||||
|
|
||||||
while($start<$end) {
|
while($start<$end) {
|
||||||
$tbday=[
|
$tbday=[
|
||||||
"date"=>clone $start,
|
"date"=>clone $start,
|
||||||
@@ -802,7 +811,6 @@ class ReportController extends AbstractController
|
|||||||
$end->add(new \DateInterval('P'.$nbmonth.'M'));
|
$end->add(new \DateInterval('P'.$nbmonth.'M'));
|
||||||
$end->sub(new \DateInterval('P1D'));
|
$end->sub(new \DateInterval('P1D'));
|
||||||
$end->setTime(23,59,0);
|
$end->setTime(23,59,0);
|
||||||
|
|
||||||
foreach($users as $user) {
|
foreach($users as $user) {
|
||||||
$tbevents = $this->getEventuser($user,$start,$end,true);
|
$tbevents = $this->getEventuser($user,$start,$end,true);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user