src/Controller/GraphJpgraphController.php line 2620
<?php
namespace App\Controller;
use App\Entity\Intervention;
use App\Repository\InterventionRepository;
use App\Repository\LieuRepository;
use JpGraph\JpGraph;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
use Amenadiel\JpGraph\Graph;
use Amenadiel\JpGraph\Plot;
use Amenadiel\JpGraph\Themes;
use App\Entity\Lieu;
use App\Entity\Position;
use App\Entity\Secteur;
use App\Repository\ClientRepository;
use App\Repository\FaclieuRepository;
use App\Repository\FactuRepository;
use App\Repository\InterfaitRepository;
use App\Repository\SecteurposiRepository;
use App\Repository\SecteurRepository;
use App\service\produitService;
use App\service\servicedivers;
use DateTimeImmutable;
use PhpParser\Node\Stmt\Foreach_;
use Symfony\Component\HttpFoundation\Request;
//require_once ('jpgraph/jpgraph.php');
//require_once ('jpgraph/jpgraph_bar.php');
#[Route('/graph', name: 'graph_')]
class GraphJpgraphController extends AbstractController
{
#[Route('/inter/{id}/{pdf}', name: 'inter')]
public function index(Intervention $intervention,string $pdf,LieuRepository $lieuRepository,InterfaitRepository $interfaitRepository,InterventionRepository $interventionRepository)
{
$servicedivers= new servicedivers();
$lieu=$lieuRepository->getlieuid($intervention->getContrat());
$dateini=date_timestamp_get($intervention->getdate());
$moiact=date('n',$dateini);
$inter=$interventionRepository->getInterventionIdcontrat($intervention->getContrat());
$date=time();
$d=[];
// $d[]=date('d/m/y',time());
foreach ($inter as $k) {
$a=date_timestamp_get($k->getdate());
// $d[]=date('d/m/y',$a);
if($date>$a){
$date=$a;
}
}
// $d[]=date('d/m/y',$date);
// $d[]=date('d/m/y',$dateini);
//
$moid=date('m',$dateini);
$and=date('y',$dateini);
// $d[]=$moid;
// $d[]=$and;
$valdeb=$moid+($and*12);
// $d[]=$valdeb;
$moi=date('m',$date);
$an=date('y',$date);
// $d[]=$moi;
// $d[]=$an;
$valfin=$moi+($an*12);
$moi=($valdeb-$valfin)+1;
// $d[]=$valfin;
// $d[]=$moi;
$mod="deux";
if($moi<=6){
$mod="6m";
}elseif($moi<=12){
$mod="an";
}
// $d[]=$mod;
//dd($d);
$anact=date('y',$dateini);
$anact++;
$anact--;
//$titre="intervention"." ".$numcontre;
$titre="intervention du ".date('d/m/y',date_timestamp_get($intervention->getdate()));
$mois=array("jan","fev","mars","avr","mai",'juin',"juil","aout","sept","oct","nov","dec");
$i=11;
//echo $moiact." nnn";
$moiact--;
$moisanscol=array(array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0));
$moisanscol6=array(array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0));
$moisanscolpres=array(array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0));
$moisfini=array("","","","","","","","","","","","");
//$d[]=$moiact;
switch ($mod) {
case "6m":
while($i>=0){
// echo $mois[$moiact]." nn";
$moisfini[($i-1)]=$mois[$moiact];
$a=$moiact+1;
$moisanscol6[$i]=array($a,$anact,2);
$moisanscol6[($i-1)]=array($a,$anact,1);
$moiact--;
if($moiact==-1){
$moiact=11;$anact--;
}
$i--;$i--;
}
break;
case "an":
while($i>=0){
// echo $mois[$moiact]." nn";
$moisfini[$i]=$mois[$moiact];
$a=$moiact+1;
$moisanscol[$i]=array($a,$anact);
$moiact--;
if($moiact==-1){
$moiact=11;$anact--;
}
$i--;
}
break;
default:
//2 anx
while($i>=0){
// echo $mois[$moiact]." nn";
$moisfini[$i]=$mois[$moiact];
$a=$moiact+1;
$moisanscol[$i]=array($a,$anact);
$moisanscolpres[$i]=array($a,($anact-1));
$moiact--;
if($moiact==-1){
$moiact=11;$anact--;
}
$i--;
}
break;
}
//$d[]=$moisfini;
//$d[]=$moisanscol;
//$d[]=$moisanscolpres;
//dd($d);
$data1ya=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yc=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yd=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1ye=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2ya=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yc=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yd=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2ye=[0,0,0,0,0,0,0,0,0,0,0,0];
$con1=[0,0,0,0,0,0,0,0,0,0,0,0];
$con2=[0,0,0,0,0,0,0,0,0,0,0,0];
$grigno=0;$remi=0;$reste=0;$conso=0;$plushaut=0;$plushautli=0;$diver=0;
$produitser= new produitService();$datr=[];$da=0;
foreach ($inter as $re) {
// dd($re);$da
$grigno=0;$remi=0;$reste=0;$chan=0;$conso=0;$diver=0;
$interfa=$interfaitRepository->getinterfait($re->getId());
$datr[$da]=[];
$datr[$da]['inter']=$re;
$datr[$da]['interfait']=$interfa;$dat=[];
foreach ($interfa as $interfai) {
if($interfai->getClientfait()==0){}
if($interfai->getinter()>=0){
// $dat[]=["grigno"=>$interfai->getGrign(),"remi"=>$interfai->getRemit(),"reste"=>$interfai->getReste(),"chan"=>$interfai->getChan(),"conso"=>$interfai->getConso()];
$grigno=$grigno+$interfai->getGrign();
$remi=$remi+$interfai->getRemit();
$reste=$reste+$interfai->getReste();
$chan=$chan+$interfai->getChan();
$diver=$diver+$interfai->getConso();
//$interfai->getProduit()
$conso=$conso+$produitser->getidvol($interfai->getProduit());
$dat[]=["consot"=>$conso,"chan"=>$interfai->getChan(),"reste"=>$interfai->getReste(),"remi"=>$interfai->getRemit(),"conso"=>$interfai->getConso(),"prod"=>$interfai->getProduit(),"prod2"=>$produitser->getidvol($interfai->getProduit())];
}
} $dateinter=date_timestamp_get($re->getdate());
$datr[$da]['date']=date('d/m/y',$dateinter);
$datr[$da]['retour1']=$dat;
$datr[$da]['retour']=["grigno"=>$grigno,"remi"=>$remi,"reste"=>$reste,"chan"=>$chan,"conso"=>$conso];
for($i=0; $i<=11;$i++){
switch ($mod) {
case "6m":
// dd($dateinter);
if($moisanscol6[$i][0]==date('m',$dateinter) && $moisanscol6[$i][1]==date('y',$dateinter) ){
$day15=0;
$d=date('d',$dateinter);
// echo $d." l ";
if(1<=$d && $d<=15){
$day15=1;
}elseif(16<=$d && $d<=31){
$day15=2;
}
// echo $day15." l ".$re['id']." ffff<br>";
if($moisanscol6[$i][2]==$day15){
$data1ya[$i]=$reste+$data1ya[$i];
$data1yb[$i]=$grigno+$data1yb[$i];
$data1yc[$i]=$remi+$data1yc[$i];
$data1yd[$i]=$chan+$data1yd[$i];
$data1ye[$i]=$diver+$data1ye[$i];
//echo $con1[$i];
$con1[$i]=$con1[$i]+$conso;
// echo " + ".$conso." = ".$con1[$i]." - ".$i."<br>";
}
}
$a=$data1ya[$i]+$data1yb[$i]+$data1yc[$i]+$data1yd[$i]+$data1ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
if($plushautli<=$con1[$i]){
$plushautli=$con1[$i];}
break;
case "an":
if($moisanscol[$i][0]==date('m',$dateinter) && $moisanscol[$i][1]==date('y',$dateinter) ){
$data1ya[$i]=$reste+$data1ya[$i];
$data1yb[$i]=$grigno+$data1yb[$i];
$data1yc[$i]=$remi+$data1yc[$i];
$data1yd[$i]=$chan+$data1yd[$i];
$data1ye[$i]=$diver+$data1ye[$i];
$con1[$i]=$con1[$i]+$conso;
}
// echo $con1[$i]." b ".$data1ya[$i]." f ".$remi." ".$grigno." ".$re['id']." ".$i." <br>";
$a=$data1ya[$i]+$data1yb[$i]+$data1yc[$i]+$data1yd[$i]+$data1ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
if($plushautli<=$con1[$i]){
$plushautli=$con1[$i];}
break;
default:
//2 anx
if($moisanscol[$i][0]==date('m',$dateinter) && $moisanscol[$i][1]==date('y',$dateinter) ){
$data1ya[$i]=$reste+$data1ya[$i];
$data1yb[$i]=$grigno+$data1yb[$i];
$data1yc[$i]=$remi+$data1yc[$i];
$data1yd[$i]=$chan+$data1yd[$i];
$data1ye[$i]=$diver+$data1ye[$i];
$con1[$i]=$con1[$i]+$conso;
}
if($moisanscolpres[$i][0]==date('m',$dateinter) && $moisanscolpres[$i][1]==date('y',$dateinter) ){
$data2ya[$i]=$reste+$data2ya[$i];
$data2yb[$i]=$grigno+$data2yb[$i];
$data2yc[$i]=$remi+$data2yc[$i];
$data2yd[$i]=$chan+$data2yd[$i];
$data2ye[$i]=$diver+$data2ye[$i];
$con2[$i]=$con2[$i]+$conso;
}
// echo $con1[$i]." b ".$data1ya[$i]." f ".$remi." ".$grigno." ".$re['id']." ".$i." <br>";
$a=$data1ya[$i]+$data1yb[$i]+$data1yc[$i]+$data1yd[$i]+$data1ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
$a=$data2ya[$i]+$data2yb[$i]+$data2yc[$i]+$data2yd[$i]+$data2ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
if($plushautli<=$con1[$i]){
$plushautli=$con1[$i];}
if($plushautli<=$con2[$i]){
$plushautli=$con2[$i];}
break;
}
// echo $con1[$i]." h ".$con2[$i]." l ".$plushautli." id ".$re['id']."<br>";
}
$da++;
}
$datr[]=[$data1ya,$data1yb,$data1yc,$data1yd,$con1];
$datr[]=[$data2ya,$data2yb,$data2yc,$data2yd,$con2];
//dd($datr);
$plushautli=$plushautli+100;
$aacol=$servicedivers->grahi($plushautli);
$ak=$aacol*6;
//echo $aacol." b ";
// echo $aacol2." ".$aava." <br>";
//echo $aacol."<br>".$aacol2;
$a3=array(0,0,0,0,0,0,0,0);
for($i=1;$i<=6;$i++){
$a3[$i]=$aacol*$i;
}
$v=$plushaut/3;//valeur max
if($v>=1){
$vm=$plushautli/$v;//valeur divition
$con1[0]=$con1[0]/$vm;
$con1[1]=$con1[1]/$vm;
$con1[2]=$con1[2]/$vm;
$con1[3]=$con1[3]/$vm;
$con1[4]=$con1[4]/$vm;
$con1[5]=$con1[5]/$vm;
$con1[6]=$con1[6]/$vm;
$con1[7]=$con1[7]/$vm;
$con1[8]=$con1[8]/$vm;
$con1[9]=$con1[9]/$vm;
$con1[10]=$con1[10]/$vm;
$con1[11]=$con1[11]/$vm;
$con2[0]=$con2[0]/$vm;
$con2[1]=$con2[1]/$vm;
$con2[2]=$con2[2]/$vm;
$con2[3]=$con2[3]/$vm;
$con2[4]=$con2[4]/$vm;
$con2[5]=$con2[5]/$vm;
$con2[6]=$con2[6]/$vm;
$con2[7]=$con2[7]/$vm;
$con2[8]=$con2[8]/$vm;
$con2[9]=$con2[9]/$vm;
$con2[10]=$con2[10]/$vm;
$con2[11]=$con2[11]/$vm;}
$plushaut=$plushaut+100;
$aacol=$servicedivers->grahi($plushaut);
$aacol2=$aacol/2;
// echo $aacol2." ".$aava." <br>";
//echo $aacol."<br>".$aacol2;
$a1=array(0,0,0,0,0,0,0,0);
$a2=array($aacol2,0,0,0,0,0,0);
for($i=1;$i<=6;$i++){
$a1[$i]=$aacol*$i;
$a2[$i]=$aacol2+($aacol*($i-1));
}
/*
switch ($mod) {
case "6m":
case "an":
$con1=$servicedivers->aligngraph($con1);
$b1plota = new Plot\BarPlot($data1ya);
$b1plotb = new Plot\BarPlot($data1yb);
$b1plotc = new Plot\BarPlot($data1yc);
$b1plotd = new Plot\BarPlot($data1yd);
$b1plot = new Plot\AccBarPlot(array($b1plotc,$b1plotd,$b1plotb,$b1plota));
//$gbplot = new GroupBarPlot($b1plot);
$lplot1 = new Plot\LinePlot($con1);
$graph->Add($b1plot);
$graph->AddY2($lplot1);
break;
default:
$con2=$servicedivers->aligngraph($con2);
$con1=$servicedivers->aligngraph($con1);
$b1plota = new Plot\BarPlot($data1ya);
$b1plotb = new Plot\BarPlot($data1yb);
$b1plotc = new Plot\BarPlot($data1yc);
$b1plotd = new Plot\BarPlot($data1yd);
$b2plota = new Plot\BarPlot($data2ya);
$b2plotb = new Plot\BarPlot($data2yb);
$b2plotc = new Plot\BarPlot($data2yc);
$b2plotd = new Plot\BarPlot($data2yd);
$b1plot = new Plot\AccBarPlot(array($b1plotc,$b1plotd,$b1plotb,$b1plota));
$b2plot = new Plot\AccBarPlot(array($b2plotc,$b2plotd,$b2plotb,$b2plota));
$gbplot = new Plot\GroupBarPlot(array($b1plot,$b2plot));
$lplot1 = new Plot\LinePlot($con1);
$lplot2 = new Plot\LinePlot($con2);
$graph->Add($gbplot);
$graph->AddY2($lplot1);
$graph->AddY2($lplot2);
break;
}
*/
//dd($data1ya);
// Create the graph.
$graph = new Graph\Graph(700, 350);
$graph->SetScale('textlin');
$graph->SetMarginColor('white');
$graph->yaxis->SetTickPositions($a1,$a2);
//$graph->y2axis->SetTickPositions($a3);
$graph->SetBox(false);
// Setup title
$graph->title->Set($titre);
// Create the first bar
switch ($mod) {
default:
$bplotb = new Plot\BarPlot($data2ya);
$bplotb->SetFillGradient("#239B56", "#239B56", GRAD_VERT);
$bplotb->SetColor("#239B56");
$bplotb->SetLegend("asia");
// Create the second bar
$bplot2b = new Plot\BarPlot($data2yb);
$bplot2b->SetFillGradient("#C0392B", "#C0392B", GRAD_VERT);
$bplot2b->SetColor("#C0392B");
$bplot2b->SetLegend("euro ");
$bplot3b = new Plot\BarPlot($data2yc);
$bplot3b->SetFillGradient("#2874A6", "#2874A6", GRAD_VERT);
$bplot3b->SetColor("#2874A6");
$bplot3b->SetLegend("mouche");
$bplot4b = new Plot\BarPlot($data2yd);
$bplot4b->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot4b->SetColor("#717D7E");/**/
$bplot4b->SetLegend("papillon");
$bplot5b = new Plot\BarPlot($data2ye);
$bplot5b->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot5b->SetColor("#717D7E");/**/
$bplot5b->SetLegend("orien");
// And join them in an accumulated bar
// And join them in an accumulated bar
$p2 = new Plot\LinePlot($con2);
$p2->mark->SetType(MARK_FILLEDCIRCLE);
$p2->mark->SetFillColor('green');
$p2->mark->SetWidth(4);
$p2->SetColor('yellow');
$p2->SetCenter();
$p2->SetLegend("prod");
$bplot = new Plot\BarPlot($data1ya);
$bplot->SetFillGradient("#239B56", "#239B56", GRAD_VERT);
$bplot->SetColor("#239B56");
$bplot->SetLegend("asia ");
// Create the second bar
$bplot2 = new Plot\BarPlot($data1yb);
$bplot2->SetFillGradient("#C0392B", "#C0392B", GRAD_VERT);
$bplot2->SetColor("#C0392B");
$bplot2->SetLegend("euro");
$bplot3 = new Plot\BarPlot($data1yc);
$bplot3->SetFillGradient("#2874A6", "#2874A6", GRAD_VERT);
$bplot3->SetColor("#2874A6");
$bplot3->SetLegend("mouche");
$bplot4 = new Plot\BarPlot($data1yd);
$bplot4->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot4->SetColor("#717D7E");
$bplot4->SetLegend("papillon");/**/
$bplot5 = new Plot\BarPlot($data1ye);
$bplot5->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot5->SetColor("#717D7E");
$bplot5->SetLegend("orien");/**/
$p1 = new Plot\LinePlot($con1);
$p1->mark->SetType(MARK_FILLEDCIRCLE);
$p1->mark->SetFillColor('blue');
$p1->mark->SetWidth(4);
$p1->SetColor('blue');
$p1->SetCenter();
$p1->SetLegend("prod");;
$accbplot = new Plot\AccBarPlot([$bplot5,$bplot4,$bplot3, $bplot2,$bplot]);
$accbplotb = new Plot\AccBarPlot([ $bplot5b,$bplot4b,$bplot3b,$bplot2b,$bplotb]);
$bar = new plot\GroupBarPlot(array($accbplot,$accbplotb));
//$graph->Add($accbplot);
$graph->Add($bar);
$graph->Add($p1);
$graph->Add($p2);
break;
case "6m":
case "an":
$bplot = new Plot\BarPlot($data1ya);
$bplot->SetFillGradient("#239B56", "#239B56", GRAD_VERT);
$bplot->SetColor("#239B56");
$bplot->SetLegend("asia ");
// Create the second bar
$bplot2 = new Plot\BarPlot($data1yb);
$bplot2->SetFillGradient("#C0392B", "#C0392B", GRAD_VERT);
$bplot2->SetColor("#C0392B");
$bplot2->SetLegend("euro");
$bplot3 = new Plot\BarPlot($data1yc);
$bplot3->SetFillGradient("#2874A6", "#2874A6", GRAD_VERT);
$bplot3->SetColor("#2874A6");
$bplot3->SetLegend("mouche");
$bplot4 = new Plot\BarPlot($data1yd);
$bplot4->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot4->SetColor("#717D7E");
$bplot4->SetLegend("papillon");/**/
$bplot5 = new Plot\BarPlot($data1ye);
$bplot5->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot5->SetColor("#717D7E");
$bplot5->SetLegend("orien");/**/
$p1 = new Plot\LinePlot($con1);
$p1->mark->SetType(MARK_FILLEDCIRCLE);
$p1->mark->SetFillColor('blue');
$p1->mark->SetWidth(4);
$p1->SetColor('blue');
$p1->SetCenter();
$p1->SetLegend("prod");;
$accbplot = new Plot\AccBarPlot([$bplot5,$bplot4,$bplot3, $bplot2,$bplot]);
$graph->Add($accbplot);
$graph->Add($p1);
break;
}
//dd($con1);
$graph->SetMargin(40,20,46,80);
$graph->xaxis->SetTickLabels($moisfini);
if($pdf=="oui"){
switch ($mod) {
case "6m":
$fichiergrah=$this->getParameter('grapph_directory').$intervention->getId().uniqid()."grapmois.png";
$fichiergrah2=$this->getParameter('grapph_directory_dos').$intervention->getId().uniqid()."grapmois.png";
break;
case "an":
$fichiergrah=$this->getParameter('grapph_directory').$intervention->getId().uniqid()."grapan.png";
$fichiergrah2=$this->getParameter('grapph_directory_dos').$intervention->getId().uniqid()."grapan.png";
break;
default:
$fichiergrah=$this->getParameter('grapph_directory').$intervention->getId().uniqid()."grap2an.png";
$fichiergrah2=$this->getParameter('grapph_directory_dos').$intervention->getId().uniqid()."grap2an.png";
break;
}
if(file_exists($fichiergrah)){
unlink($fichiergrah) ;
}
$graph->Stroke($fichiergrah);
// dd($fichiergrah);
return $fichiergrah;
}else{
$graph->Stroke();
}
//$graph->Stroke();
/* return $this->render('graph_jpgraph/index.html.twig', [
'controller_name' => 'GraphJpgraphController',
]);*/
}
#[Route('/secteur/{id}/{ids}/{pdf}', name: 'secteur')]
public function secteur(Secteur $secteur,
string $ids,
string $pdf,
LieuRepository $lieuRepository,
InterfaitRepository $interfaitRepository,
InterventionRepository $interventionRepository,
SecteurposiRepository $secteurposiRepository,
)
{
$intervention=$interventionRepository->find($ids);
$servicedivers= new servicedivers();
$lieu=$lieuRepository->getlieuid($intervention->getContrat());
$dateini=date_timestamp_get($intervention->getdate());
$moiact=date('n',$dateini);
$inter=$interventionRepository->getInterventionIdcontrat($intervention->getContrat());
$date=time();
$d=[];
// $d[]=date('d/m/y',time());
foreach ($inter as $k) {
$a=date_timestamp_get($k->getdate());
// $d[]=date('d/m/y',$a);
if($date>$a){
$date=$a;
}
}
// $d[]=date('d/m/y',$date);
// $d[]=date('d/m/y',$dateini);
//
$moid=date('m',$dateini);
$and=date('y',$dateini);
// $d[]=$moid;
// $d[]=$and;
$valdeb=$moid+($and*12);
// $d[]=$valdeb;
$moi=date('m',$date);
$an=date('y',$date);
// $d[]=$moi;
// $d[]=$an;
$valfin=$moi+($an*12);
$moi=($valdeb-$valfin)+1;
// $d[]=$valfin;
// $d[]=$moi;
$mod="deux";
if($moi<=6){
$mod="6m";
}elseif($moi<=12){
$mod="an";
}
// $d[]=$mod;
// dd($d);
$anact=date('y',$dateini);
$anact++;
$anact--;
//$titre="intervention"." ".$numcontre;
$titre="secteur ".$secteur->getSecteur()." : intervention du ".date('d/m/y',date_timestamp_get($intervention->getdate()));
$mois=array("jan","fev","mars","avr","mai",'juin',"juil","aout","sept","oct","nov","dec");
$i=11;
//echo $moiact." nnn";
$moiact--;
$moisanscol=array(array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0));
$moisanscol6=array(array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0));
$moisanscolpres=array(array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0));
$moisfini=array("","","","","","","","","","","","");
//$d[]=$moiact;
switch ($mod) {
case "6m":
while($i>=0){
// echo $mois[$moiact]." nn";
$moisfini[($i-1)]=$mois[$moiact];
$a=$moiact+1;
$moisanscol6[$i]=array($a,$anact,2);
$moisanscol6[($i-1)]=array($a,$anact,1);
$moiact--;
if($moiact==-1){
$moiact=11;$anact--;
}
$i--;$i--;
}
break;
case "an":
while($i>=0){
// echo $mois[$moiact]." nn";
$moisfini[$i]=$mois[$moiact];
$a=$moiact+1;
$moisanscol[$i]=array($a,$anact);
$moiact--;
if($moiact==-1){
$moiact=11;$anact--;
}
$i--;
}
break;
default:
//2 anx
while($i>=0){
// echo $mois[$moiact]." nn";
$moisfini[$i]=$mois[$moiact];
$a=$moiact+1;
$moisanscol[$i]=array($a,$anact);
$moisanscolpres[$i]=array($a,($anact-1));
$moiact--;
if($moiact==-1){
$moiact=11;$anact--;
}
$i--;
}
break;
}
//$d[]=$moisfini;
//$d[]=$moisanscol;
//dd($d);
$data1ya=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yc=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yd=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1ye=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2ya=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yc=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yd=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2ye=[0,0,0,0,0,0,0,0,0,0,0,0];
$con1=[0,0,0,0,0,0,0,0,0,0,0,0];
$con2=[0,0,0,0,0,0,0,0,0,0,0,0];
$grigno=0;$remi=0;$reste=0;$conso=0;$plushaut=0;$plushautli=0;$divers=0;
$produitser= new produitService();$datr=[];$da=0;
foreach ($inter as $re) {
// dd($re);$da
$grigno=0;$remi=0;$reste=0;$chan=0;$conso=0;$divers=0;
$interfa=$interfaitRepository->getinterfait($re->getId());
$datr[$da]=[];
$datr[$da]['inter']=$re;
$datr[$da]['interfait']=$interfa;
foreach ($interfa as $interfai) {
if ($secteurposiRepository->valPosiSecteur($interfai->getPosi(),$secteur->getId())) {
if($interfai->getClientfait()==0){}
if($interfai->getinter()>=0){
$prod =$interfai->getProduit();
$grigno=$grigno+$interfai->getGrign();
$remi=$remi+$interfai->getRemit();
$reste=$reste+$interfai->getReste();
$chan=$chan+$interfai->getChan();
$divers=$divers+$interfai->getConso();
$conso=$conso+$produitser->getidvol($interfai->getProduit());
}
}
} $dateinter=date_timestamp_get($re->getdate());
$datr[$da]['date']=date('d/m/y',$dateinter);
for($i=0; $i<=11;$i++){
switch ($mod) {
case "6m":
// dd($dateinter);
if($moisanscol6[$i][0]==date('m',$dateinter) && $moisanscol6[$i][1]==date('y',$dateinter) ){
$day15=0;
$d=date('d',$dateinter);
// echo $d." l ";
if(1<=$d && $d<=15){
$day15=1;
}elseif(16<=$d && $d<=31){
$day15=2;
}
// echo $day15." l ".$re['id']." ffff<br>";
if($moisanscol6[$i][2]==$day15){
$data1ya[$i]=$reste+$data1ya[$i];
$data1yb[$i]=$grigno+$data1yb[$i];
$data1yc[$i]=$remi+$data1yc[$i];
$data1yd[$i]=$chan+$data1yd[$i];
$data1ye[$i]=$divers+$data1ye[$i];
//echo $con1[$i];
$con1[$i]=$con1[$i]+$conso;
// echo " + ".$conso." = ".$con1[$i]." - ".$i."<br>";
}
}
$a=$data1ya[$i]+$data1yb[$i]+$data1yc[$i]+$data1yd[$i]+$data1ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
if($plushautli<=$con1[$i]){
$plushautli=$con1[$i];}
break;
case "an":
if($moisanscol[$i][0]==date('m',$dateinter) && $moisanscol[$i][1]==date('y',$dateinter) ){
$data1ya[$i]=$reste+$data1ya[$i];
$data1yb[$i]=$grigno+$data1yb[$i];
$data1yc[$i]=$remi+$data1yc[$i];
$data1yd[$i]=$chan+$data1yd[$i];
$data1ye[$i]=$divers+$data1ye[$i];
$con1[$i]=$con1[$i]+$conso;
}
// echo $con1[$i]." b ".$data1ya[$i]." f ".$remi." ".$grigno." ".$re['id']." ".$i." <br>";
$a=$data1ya[$i]+$data1yb[$i]+$data1yc[$i]+$data1yd[$i]+$data1ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
if($plushautli<=$con1[$i]){
$plushautli=$con1[$i];}
break;
default:
//2 anx
if($moisanscol[$i][0]==date('m',$dateinter) && $moisanscol[$i][1]==date('y',$dateinter) ){
$data1ya[$i]=$reste+$data1ya[$i];
$data1yb[$i]=$grigno+$data1yb[$i];
$data1yc[$i]=$remi+$data1yc[$i];
$data1yd[$i]=$chan+$data1yd[$i];
$data1ye[$i]=$divers+$data1ye[$i];
$con1[$i]=$con1[$i]+$conso;
}
if($moisanscolpres[$i][0]==date('m',$dateinter) && $moisanscolpres[$i][1]==date('y',$dateinter) ){
$data2ya[$i]=$reste+$data2ya[$i];
$data2yb[$i]=$grigno+$data2yb[$i];
$data2yc[$i]=$remi+$data2yc[$i];
$data2yd[$i]=$chan+$data2yd[$i];
$data2ye[$i]=$divers+$data2ye[$i];
$con2[$i]=$con2[$i]+$conso;
}
// echo $con1[$i]." b ".$data1ya[$i]." f ".$remi." ".$grigno." ".$re['id']." ".$i." <br>";
$a=$data1ya[$i]+$data1yb[$i]+$data1yc[$i]+$data1yd[$i]+$data1ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
$a=$data2ya[$i]+$data2yb[$i]+$data2yc[$i]+$data2yd[$i]+$data2ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
if($plushautli<=$con1[$i]){
$plushautli=$con1[$i];}
if($plushautli<=$con2[$i]){
$plushautli=$con2[$i];}
break;
}
// echo $con1[$i]." h ".$con2[$i]." l ".$plushautli." id ".$re['id']."<br>";
}
$da++;
}
$v=$plushaut/3;//valeur max
if($v>=1){
$vm=$plushautli/$v;//valeur divition
$con1[0]=$con1[0]/$vm;
$con1[1]=$con1[1]/$vm;
$con1[2]=$con1[2]/$vm;
$con1[3]=$con1[3]/$vm;
$con1[4]=$con1[4]/$vm;
$con1[5]=$con1[5]/$vm;
$con1[6]=$con1[6]/$vm;
$con1[7]=$con1[7]/$vm;
$con1[8]=$con1[8]/$vm;
$con1[9]=$con1[9]/$vm;
$con1[10]=$con1[10]/$vm;
$con1[11]=$con1[11]/$vm;
$con2[0]=$con2[0]/$vm;
$con2[1]=$con2[1]/$vm;
$con2[2]=$con2[2]/$vm;
$con2[3]=$con2[3]/$vm;
$con2[4]=$con2[4]/$vm;
$con2[5]=$con2[5]/$vm;
$con2[6]=$con2[6]/$vm;
$con2[7]=$con2[7]/$vm;
$con2[8]=$con2[8]/$vm;
$con2[9]=$con2[9]/$vm;
$con2[10]=$con2[10]/$vm;
$con2[11]=$con2[11]/$vm;}
//dd($datr);
$plushautli=$plushautli+100;
$aacol=$servicedivers->grahi($plushautli);
$ak=$aacol*6;
//echo $aacol." b ";
// echo $aacol2." ".$aava." <br>";
//echo $aacol."<br>".$aacol2;
$a3=array(0,0,0,0,0,0,0,0);
for($i=1;$i<=6;$i++){
$a3[$i]=$aacol*$i;
}
$plushaut=$plushaut+100;
$aacol=$servicedivers->grahi($plushaut);
$aacol2=$aacol/2;
// echo $aacol2." ".$aava." <br>";
//echo $aacol."<br>".$aacol2;
$a1=array(0,0,0,0,0,0,0,0);
$a2=array($aacol2,0,0,0,0,0,0);
for($i=1;$i<=6;$i++){
$a1[$i]=$aacol*$i;
$a2[$i]=$aacol2+($aacol*($i-1));
}
$datay1 = [13, 8, 19, 7, 17, 6];
$datay2 = [4, 5, 2, 7, 5, 25];
//dd($data1ya);
// Create the graph.
$graph = new Graph\Graph(700, 350);
$graph->SetScale('textlin');
$graph->SetMarginColor('white');
$graph->yaxis->SetTickPositions($a1,$a2);
//$graph->y2axis->SetTickPositions($a3);
$graph->SetBox(false);
// Setup title
$graph->title->Set($titre);
// Create the first bar
switch ($mod) {
default:
$bplotb = new Plot\BarPlot($data2ya);
$bplotb->SetFillGradient("#239B56", "#239B56", GRAD_VERT);
$bplotb->SetColor("#239B56");
$bplotb->SetLegend("asia");
// Create the second bar
$bplot2b = new Plot\BarPlot($data2yb);
$bplot2b->SetFillGradient("#C0392B", "#C0392B", GRAD_VERT);
$bplot2b->SetColor("#C0392B");
$bplot2b->SetLegend("euro ");
$bplot3b = new Plot\BarPlot($data2yc);
$bplot3b->SetFillGradient("#2874A6", "#2874A6", GRAD_VERT);
$bplot3b->SetColor("#2874A6");
$bplot3b->SetLegend("mouche");
$bplot4b = new Plot\BarPlot($data2yd);
$bplot4b->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot4b->SetColor("#717D7E");/**/
$bplot4b->SetLegend("papillon");
$bplot5b = new Plot\BarPlot($data2ye);
$bplot5b->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot5b->SetColor("#717D7E");/**/
$bplot5b->SetLegend("orien");
// And join them in an accumulated bar
// And join them in an accumulated bar
$p2 = new Plot\LinePlot($con2);
$p2->mark->SetType(MARK_FILLEDCIRCLE);
$p2->mark->SetFillColor('green');
$p2->mark->SetWidth(4);
$p2->SetColor('yellow');
$p2->SetCenter();
$p2->SetLegend("prod");
$bplot = new Plot\BarPlot($data1ya);
$bplot->SetFillGradient("#239B56", "#239B56", GRAD_VERT);
$bplot->SetColor("#239B56");
$bplot->SetLegend("asia ");
// Create the second bar
$bplot2 = new Plot\BarPlot($data1yb);
$bplot2->SetFillGradient("#C0392B", "#C0392B", GRAD_VERT);
$bplot2->SetColor("#C0392B");
$bplot2->SetLegend("euro");
$bplot3 = new Plot\BarPlot($data1yc);
$bplot3->SetFillGradient("#2874A6", "#2874A6", GRAD_VERT);
$bplot3->SetColor("#2874A6");
$bplot3->SetLegend("mouche");
$bplot4 = new Plot\BarPlot($data1yd);
$bplot4->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot4->SetColor("#717D7E");
$bplot4->SetLegend("papillon");/**/
$bplot5 = new Plot\BarPlot($data1ye);
$bplot5->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot5->SetColor("#717D7E");
$bplot5->SetLegend("orien");/**/
$p1 = new Plot\LinePlot($con1);
$p1->mark->SetType(MARK_FILLEDCIRCLE);
$p1->mark->SetFillColor('blue');
$p1->mark->SetWidth(4);
$p1->SetColor('blue');
$p1->SetCenter();
$p1->SetLegend("prod");;
$accbplot = new Plot\AccBarPlot([$bplot5,$bplot4,$bplot3, $bplot2,$bplot]);
$accbplotb = new Plot\AccBarPlot([$bplot5b, $bplot4b,$bplot3b,$bplot2b,$bplotb]);
//$graph->Add($accbplot);
//$graph->Add($accbplotb);
$bar = new plot\GroupBarPlot(array($accbplot,$accbplotb));
//$graph->Add($accbplot);
$graph->Add($bar);
$graph->Add($p1);
$graph->Add($p2);
break;
case "6m":
case "an":
$bplot = new Plot\BarPlot($data1ya);
$bplot->SetFillGradient("#239B56", "#239B56", GRAD_VERT);
$bplot->SetColor("#239B56");
$bplot->SetLegend("asia ");
// Create the second bar
$bplot2 = new Plot\BarPlot($data1yb);
$bplot2->SetFillGradient("#C0392B", "#C0392B", GRAD_VERT);
$bplot2->SetColor("#C0392B");
$bplot2->SetLegend("euro");
$bplot3 = new Plot\BarPlot($data1yc);
$bplot3->SetFillGradient("#2874A6", "#2874A6", GRAD_VERT);
$bplot3->SetColor("#2874A6");
$bplot3->SetLegend("mouche");
$bplot4 = new Plot\BarPlot($data1yd);
$bplot4->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot4->SetColor("#717D7E");
$bplot4->SetLegend("papillon");/**/
$bplot5 = new Plot\BarPlot($data1ye);
$bplot5->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot5->SetColor("#717D7E");
$bplot5->SetLegend("orien");/**/
$p1 = new Plot\LinePlot($con1);
$p1->mark->SetType(MARK_FILLEDCIRCLE);
$p1->mark->SetFillColor('blue');
$p1->mark->SetWidth(4);
$p1->SetColor('blue');
$p1->SetCenter();
$p1->SetLegend("prod");;
$accbplot = new Plot\AccBarPlot([$bplot5,$bplot4,$bplot3, $bplot2,$bplot]);
$graph->Add($accbplot);
$graph->Add($p1);
break;
}
//dd($con1);
$graph->SetMargin(40,20,46,80);
$graph->xaxis->SetTickLabels($moisfini);
if($pdf=="oui"){
switch ($mod) {
case "6m":
$fichiergrah=$this->getParameter('grapph_directory')."secteur".$secteur->getId()."-".$intervention->getId().uniqid()."grapmois.png";
$fichiergrah2=$this->getParameter('grapph_directory_dos')."secteur".$secteur->getId()."-".$intervention->getId().uniqid()."grapmois.png";
break;
case "an":
$fichiergrah=$this->getParameter('grapph_directory')."secteur".$secteur->getId()."-".$intervention->getId().uniqid()."grapan.png";
$fichiergrah2=$this->getParameter('grapph_directory_dos')."secteur".$secteur->getId()."-".$intervention->getId().uniqid()."grapan.png";
break;
default:
$fichiergrah=$this->getParameter('grapph_directory')."secteur".$secteur->getId()."-".$intervention->getId().uniqid()."grap2an.png";
$fichiergrah2=$this->getParameter('grapph_directory_dos')."secteur".$secteur->getId()."-".$intervention->getId().uniqid()."grap2an.png";
break;
}
if(file_exists($fichiergrah)){
unlink($fichiergrah) ;
}
$graph->Stroke($fichiergrah);
return $fichiergrah2;
}else{
$graph->Stroke();
}
//$graph->Stroke();
/* return $this->render('graph_jpgraph/index.html.twig', [
'controller_name' => 'GraphJpgraphController',
]);*/
}
#[Route('/posi/{id}/{ids}/{pdf}', name: 'posi')]
public function posi(Position $position,
string $ids,
string $pdf,Request $request,
LieuRepository $lieuRepository,
InterfaitRepository $interfaitRepository,
InterventionRepository $interventionRepository,
SecteurposiRepository $secteurposiRepository,
)
{
$posi1 = $request->query->getInt('posi1',0);
$posi2 = $request->query->getInt('posi2',0);
$posi3 = $request->query->getInt('posi3',0);
$posi4 = $request->query->getInt('posi4',0);
$posi5 = $request->query->getInt('posi5',0);
$posi6 = $request->query->getInt('posi6',0);
$posi7 = $request->query->getInt('posi7',0);
$posi8 = $request->query->getInt('posi8',0);
$posi9 = $request->query->getInt('posi9',0);
$posi10 = $request->query->getInt('posi10',0);
$posi11 = $request->query->getInt('posi11',0);
$posi12 = $request->query->getInt('posi12',0);
$posi13 = $request->query->getInt('posi13',0);
$posi14 = $request->query->getInt('posi14',0);
$posi15 = $request->query->getInt('posi15',0);
$posi16 = $request->query->getInt('posi16',0);
$posi17 = $request->query->getInt('posi17',0);
$posi18 = $request->query->getInt('posi18',0);
$posi19 = $request->query->getInt('posi19',0);
$posi=array();
$posi[]=$position->getId();
if($posi1!=0){$posi[]=$posi1;}
if($posi2!=0){$posi[]=$posi2;}
if($posi3!=0){$posi[]=$posi3;}
if($posi4!=0){$posi[]=$posi4;}
if($posi5!=0){$posi[]=$posi5;}
if($posi6!=0){$posi[]=$posi6;}
if($posi7!=0){$posi[]=$posi7;}
if($posi8!=0){$posi[]=$posi8;}
if($posi9!=0){$posi[]=$posi9;}
if($posi10!=0){$posi[]=$posi10;}
if($posi11!=0){$posi[]=$posi11;}
if($posi12!=0){$posi[]=$posi12;}
if($posi13!=0){$posi[]=$posi13;}
if($posi14!=0){$posi[]=$posi14;}
if($posi15!=0){$posi[]=$posi15;}
if($posi16!=0){$posi[]=$posi16;}
if($posi17!=0){$posi[]=$posi17;}
if($posi18!=0){$posi[]=$posi18;}
if($posi19!=0){$posi[]=$posi19;}
$intervention=$interventionRepository->find($ids);
$servicedivers= new servicedivers();
$lieu=$lieuRepository->getlieuid($intervention->getContrat());
$dateini=date_timestamp_get($intervention->getdate());
$moiact=date('n',$dateini);
$inter=$interventionRepository->getInterventionIdcontrat($intervention->getContrat());
$date=time();
$d=[];
// $d[]=date('d/m/y',time());
foreach ($inter as $k) {
$a=date_timestamp_get($k->getdate());
// $d[]=date('d/m/y',$a);
if($date>$a){
$date=$a;
}
}
// $d[]=date('d/m/y',$date);
// $d[]=date('d/m/y',$dateini);
//
$moid=date('m',$dateini);
$and=date('y',$dateini);
// $d[]=$moid;
// $d[]=$and;
$valdeb=$moid+($and*12);
// $d[]=$valdeb;
$moi=date('m',$date);
$an=date('y',$date);
// $d[]=$moi;
// $d[]=$an;
$valfin=$moi+($an*12);
$moi=($valdeb-$valfin)+1;
// $d[]=$valfin;
// $d[]=$moi;
$mod="deux";
if($moi<=6){
$mod="6m";
}elseif($moi<=12){
$mod="an";
}
// $d[]=$mod;
// dd($d);
$anact=date('y',$dateini);
$anact++;
$anact--;
//$titre="intervention"." ".$numcontre;
$titre="position ".$position->getNumero();
$mois=array("jan","fev","mars","avr","mai",'juin',"juil","aout","sept","oct","nov","dec");
$i=11;
//echo $moiact." nnn";
$moiact--;
$moisanscol=array(array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0));
$moisanscol6=array(array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0));
$moisanscolpres=array(array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0));
$moisfini=array("","","","","","","","","","","","");
//$d[]=$moiact;
switch ($mod) {
case "6m":
while($i>=0){
// echo $mois[$moiact]." nn";
$moisfini[($i-1)]=$mois[$moiact];
$a=$moiact+1;
$moisanscol6[$i]=array($a,$anact,2);
$moisanscol6[($i-1)]=array($a,$anact,1);
$moiact--;
if($moiact==-1){
$moiact=11;$anact--;
}
$i--;$i--;
}
break;
case "an":
while($i>=0){
// echo $mois[$moiact]." nn";
$moisfini[$i]=$mois[$moiact];
$a=$moiact+1;
$moisanscol[$i]=array($a,$anact);
$moiact--;
if($moiact==-1){
$moiact=11;$anact--;
}
$i--;
}
break;
default:
//2 anx
while($i>=0){
// echo $mois[$moiact]." nn";
$moisfini[$i]=$mois[$moiact];
$a=$moiact+1;
$moisanscol[$i]=array($a,$anact);
$moisanscolpres[$i]=array($a,($anact-1));
$moiact--;
if($moiact==-1){
$moiact=11;$anact--;
}
$i--;
}
break;
}
//$d[]=$moisfini;
//$d[]=$moisanscol;
//dd($d);
$data1ya=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yc=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yd=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2ya=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yc=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yd=[0,0,0,0,0,0,0,0,0,0,0,0];
$con1=[0,0,0,0,0,0,0,0,0,0,0,0];
$con2=[0,0,0,0,0,0,0,0,0,0,0,0];
$grigno=0;$remi=0;$reste=0;$conso=0;$plushaut=0;$plushautli=0;$divers=0;
$produitser= new produitService();$datr=[];$da=0;
foreach ($inter as $re) {
// dd($re);$da
$grigno=0;$remi=0;$reste=0;$chan=0;$conso=0;$divers=0;
$interfa=$interfaitRepository->getinterfait($re->getId());
$datr[$da]=[];
$datr[$da]['inter']=$re;
$datr[$da]['interfait']=$interfa;
foreach ($interfa as $interfai) {
$valider=0;
foreach ($posi as $posipp) {
if($posipp==$interfai->getPosi()){
$valider=1;
}
}
//if ($interfai->getPosi()==$position->getId()) {
if ($valider==1) {
if($interfai->getClientfait()==0){}
if($interfai->getinter()>=0){
$prod =$interfai->getProduit();
$grigno=$grigno+$interfai->getGrign();
$remi=$remi+$interfai->getRemit();
$reste=$reste+$interfai->getReste();
$chan=$chan+$interfai->getChan();
$divers=$divers+$interfai->getConso();
$conso=$conso+$produitser->getidvol($interfai->getProduit());
}
}
} $dateinter=date_timestamp_get($re->getdate());
$datr[$da]['date']=date('d/m/y',$dateinter);
for($i=0; $i<=11;$i++){
switch ($mod) {
case "6m":
// dd($dateinter);
if($moisanscol6[$i][0]==date('m',$dateinter) && $moisanscol6[$i][1]==date('y',$dateinter) ){
$day15=0;
$d=date('d',$dateinter);
// echo $d." l ";
if(1<=$d && $d<=15){
$day15=1;
}elseif(16<=$d && $d<=31){
$day15=2;
}
// echo $day15." l ".$re['id']." ffff<br>";
if($moisanscol6[$i][2]==$day15){
$data1ya[$i]=$reste+$data1ya[$i];
$data1yb[$i]=$grigno+$data1yb[$i];
$data1yc[$i]=$remi+$data1yc[$i];
$data1yd[$i]=$chan+$data1yd[$i];
$data1ye[$i]=$divers+$data1yd[$i];
//echo $con1[$i];
$con1[$i]=$con1[$i]+$conso;
// echo " + ".$conso." = ".$con1[$i]." - ".$i."<br>";
}
}
$a=$data1ya[$i]+$data1yb[$i]+$data1yc[$i]+$data1yd[$i];
if($plushaut<=$a){
$plushaut=$a;}
if($plushautli<=$con1[$i]){
$plushautli=$con1[$i];}
break;
case "an":
if($moisanscol[$i][0]==date('m',$dateinter) && $moisanscol[$i][1]==date('y',$dateinter) ){
$data1ya[$i]=$reste+$data1ya[$i];
$data1yb[$i]=$grigno+$data1yb[$i];
$data1yc[$i]=$remi+$data1yc[$i];
$data1yd[$i]=$chan+$data1yd[$i];
$data1ye[$i]=$divers+$data1yd[$i];
$con1[$i]=$con1[$i]+$conso;
}
// echo $con1[$i]." b ".$data1ya[$i]." f ".$remi." ".$grigno." ".$re['id']." ".$i." <br>";
$a=$data1ya[$i]+$data1yb[$i]+$data1yc[$i]+$data1yd[$i]+$data1ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
if($plushautli<=$con1[$i]){
$plushautli=$con1[$i];}
break;
default:
//2 anx
if($moisanscol[$i][0]==date('m',$dateinter) && $moisanscol[$i][1]==date('y',$dateinter) ){
$data1ya[$i]=$reste+$data1ya[$i];
$data1yb[$i]=$grigno+$data1yb[$i];
$data1yc[$i]=$remi+$data1yc[$i];
$data1yd[$i]=$chan+$data1yd[$i];
$data1ye[$i]=$divers+$data1yd[$i];
$con1[$i]=$con1[$i]+$conso;
}
if($moisanscolpres[$i][0]==date('m',$dateinter) && $moisanscolpres[$i][1]==date('y',$dateinter) ){
$data2ya[$i]=$reste+$data2ya[$i];
$data2yb[$i]=$grigno+$data2yb[$i];
$data2yc[$i]=$remi+$data2yc[$i];
$data2yd[$i]=$chan+$data2yd[$i];
$data2ye[$i]=$divers+$data2yd[$i];
$con2[$i]=$con2[$i]+$conso;
}
// echo $con1[$i]." b ".$data1ya[$i]." f ".$remi." ".$grigno." ".$re['id']." ".$i." <br>";
$a=$data1ya[$i]+$data1yb[$i]+$data1yc[$i]+$data1yd[$i]+$data1ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
$a=$data2ya[$i]+$data2yb[$i]+$data2yc[$i]+$data2yd[$i]+$data2ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
if($plushautli<=$con1[$i]){
$plushautli=$con1[$i];}
if($plushautli<=$con2[$i]){
$plushautli=$con2[$i];}
break;
}
// echo $con1[$i]." h ".$con2[$i]." l ".$plushautli." id ".$re['id']."<br>";
}
$da++;
}
$v=$plushaut/3;//valeur max
if($v>=1){
$vm=$plushautli/$v;//valeur divition
$con1[0]=$con1[0]/$vm;
$con1[1]=$con1[1]/$vm;
$con1[2]=$con1[2]/$vm;
$con1[3]=$con1[3]/$vm;
$con1[4]=$con1[4]/$vm;
$con1[5]=$con1[5]/$vm;
$con1[6]=$con1[6]/$vm;
$con1[7]=$con1[7]/$vm;
$con1[8]=$con1[8]/$vm;
$con1[9]=$con1[9]/$vm;
$con1[10]=$con1[10]/$vm;
$con1[11]=$con1[11]/$vm;
$con2[0]=$con2[0]/$vm;
$con2[1]=$con2[1]/$vm;
$con2[2]=$con2[2]/$vm;
$con2[3]=$con2[3]/$vm;
$con2[4]=$con2[4]/$vm;
$con2[5]=$con2[5]/$vm;
$con2[6]=$con2[6]/$vm;
$con2[7]=$con2[7]/$vm;
$con2[8]=$con2[8]/$vm;
$con2[9]=$con2[9]/$vm;
$con2[10]=$con2[10]/$vm;
$con2[11]=$con2[11]/$vm;}
//dd($datr);
$plushautli=$plushautli+100;
$aacol=$servicedivers->grahi($plushautli);
$ak=$aacol*6;
//echo $aacol." b ";
// echo $aacol2." ".$aava." <br>";
//echo $aacol."<br>".$aacol2;
$a3=array(0,0,0,0,0,0,0,0);
for($i=1;$i<=6;$i++){
$a3[$i]=$aacol*$i;
}
$plushaut=$plushaut+100;
$aacol=$servicedivers->grahi($plushaut);
$aacol2=$aacol/2;
// echo $aacol2." ".$aava." <br>";
//echo $aacol."<br>".$aacol2;
$a1=array(0,0,0,0,0,0,0,0);
$a2=array($aacol2,0,0,0,0,0,0);
for($i=1;$i<=6;$i++){
$a1[$i]=$aacol*$i;
$a2[$i]=$aacol2+($aacol*($i-1));
}
$datay1 = [13, 8, 19, 7, 17, 6];
$datay2 = [4, 5, 2, 7, 5, 25];
//dd($data1ya);
// Create the graph.
$graph = new Graph\Graph(700, 350);
$graph->SetScale('textlin');
$graph->SetMarginColor('white');
$graph->yaxis->SetTickPositions($a1,$a2);
//$graph->y2axis->SetTickPositions($a3);
$graph->SetBox(false);
// Setup title
$graph->title->Set($titre);
// Create the first bar
switch ($mod) {
default:
$bplotb = new Plot\BarPlot($data2ya);
$bplotb->SetFillGradient("#239B56", "#239B56", GRAD_VERT);
$bplotb->SetColor("#239B56");
$bplotb->SetLegend("asia");
// Create the second bar
$bplot2b = new Plot\BarPlot($data2yb);
$bplot2b->SetFillGradient("#C0392B", "#C0392B", GRAD_VERT);
$bplot2b->SetColor("#C0392B");
$bplot2b->SetLegend("euro ");
$bplot3b = new Plot\BarPlot($data2yc);
$bplot3b->SetFillGradient("#2874A6", "#2874A6", GRAD_VERT);
$bplot3b->SetColor("#2874A6");
$bplot3b->SetLegend("mouche");
$bplot4b = new Plot\BarPlot($data2yd);
$bplot4b->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot4b->SetColor("#717D7E");/**/
$bplot4b->SetLegend("papillon");
$bplot5b = new Plot\BarPlot($data2ye);
$bplot5b->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot5b->SetColor("#717D7E");/**/
$bplot5b->SetLegend("orien");
// And join them in an accumulated bar
// And join them in an accumulated bar
$p2 = new Plot\LinePlot($con2);
$p2->mark->SetType(MARK_FILLEDCIRCLE);
$p2->mark->SetFillColor('green');
$p2->mark->SetWidth(4);
$p2->SetColor('yellow');
$p2->SetCenter();
$p2->SetLegend("prod");
$bplot = new Plot\BarPlot($data1ya);
$bplot->SetFillGradient("#239B56", "#239B56", GRAD_VERT);
$bplot->SetColor("#239B56");
$bplot->SetLegend("asia ");
// Create the second bar
$bplot2 = new Plot\BarPlot($data1yb);
$bplot2->SetFillGradient("#C0392B", "#C0392B", GRAD_VERT);
$bplot2->SetColor("#C0392B");
$bplot2->SetLegend("euro");
$bplot3 = new Plot\BarPlot($data1yc);
$bplot3->SetFillGradient("#2874A6", "#2874A6", GRAD_VERT);
$bplot3->SetColor("#2874A6");
$bplot3->SetLegend("mouche");
$bplot4 = new Plot\BarPlot($data1yd);
$bplot4->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot4->SetColor("#717D7E");
$bplot4->SetLegend("papillon");/**/
$bplot5 = new Plot\BarPlot($data1ye);
$bplot5->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot5->SetColor("#717D7E");
$bplot5->SetLegend("orien");/**/
$p1 = new Plot\LinePlot($con1);
$p1->mark->SetType(MARK_FILLEDCIRCLE);
$p1->mark->SetFillColor('blue');
$p1->mark->SetWidth(4);
$p1->SetColor('blue');
$p1->SetCenter();
$p1->SetLegend("prod");;
$accbplot = new Plot\AccBarPlot([$bplot5,$bplot4,$bplot3, $bplot2,$bplot]);
$accbplotb = new Plot\AccBarPlot([ $bplot5b,$bplot4b,$bplot3b,$bplot2b,$bplotb]);
//$graph->Add($accbplot);
//$graph->Add($accbplotb);
$bar = new plot\GroupBarPlot(array($accbplot,$accbplotb));
//$graph->Add($accbplot);
$graph->Add($bar);
$graph->Add($p1);
$graph->Add($p2);
break;
case "6m":
case "an":
$bplot = new Plot\BarPlot($data1ya);
$bplot->SetFillGradient("#239B56", "#239B56", GRAD_VERT);
$bplot->SetColor("#239B56");
$bplot->SetLegend("asia ");
// Create the second bar
$bplot2 = new Plot\BarPlot($data1yb);
$bplot2->SetFillGradient("#C0392B", "#C0392B", GRAD_VERT);
$bplot2->SetColor("#C0392B");
$bplot2->SetLegend("euro");
$bplot3 = new Plot\BarPlot($data1yc);
$bplot3->SetFillGradient("#2874A6", "#2874A6", GRAD_VERT);
$bplot3->SetColor("#2874A6");
$bplot3->SetLegend("mouche");
$bplot4 = new Plot\BarPlot($data1yd);
$bplot4->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot4->SetColor("#717D7E");
$bplot4->SetLegend("papillon");/**/
$bplot5 = new Plot\BarPlot($data1ye);
$bplot5->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot5->SetColor("#717D7E");
$bplot5->SetLegend("orien");/**/
$p1 = new Plot\LinePlot($con1);
$p1->mark->SetType(MARK_FILLEDCIRCLE);
$p1->mark->SetFillColor('blue');
$p1->mark->SetWidth(4);
$p1->SetColor('blue');
$p1->SetCenter();
$p1->SetLegend("prod");;
$accbplot = new Plot\AccBarPlot([$bplot4,$bplot4,$bplot3, $bplot2,$bplot]);
$graph->Add($accbplot);
$graph->Add($p1);
break;
}
//dd($con1);
$graph->SetMargin(40,20,46,80);
$graph->xaxis->SetTickLabels($moisfini);
if($pdf=="oui"){
switch ($mod) {
case "6m":
$fichiergrah=$this->getParameter('grapph_directory')."multigrah-".$intervention->getId().uniqid()."grapmois.png";
$fichiergrah2=$this->getParameter('grapph_directory_dos')."multigrah-".$intervention->getId().uniqid()."grapmois.png";
break;
case "an":
$fichiergrah=$this->getParameter('grapph_directory')."multigrah-".$intervention->getId().uniqid()."grapan.png";
$fichiergrah2=$this->getParameter('grapph_directory_dos')."multigrah-".$intervention->getId().uniqid()."grapan.png";
break;
default:
$fichiergrah=$this->getParameter('grapph_directory')."multigrah-".$intervention->getId().uniqid()."grap2an.png";
$fichiergrah2=$this->getParameter('grapph_directory_dos')."multigrah-".$intervention->getId().uniqid()."grap2an.png";
break;
}
if(file_exists($fichiergrah)){
unlink($fichiergrah) ;
}
$graph->Stroke($fichiergrah);
return $fichiergrah2;
}else{
$graph->Stroke();
}
}
#[Route('/faclieu/{id}/{pdf}/{idfac}', name: 'faclieu')]
public function donner(Lieu $lieu,string $pdf,int $idfac,
FactuRepository $factuRepository,
LieuRepository $lieuRepository,
InterfaitRepository $interfaitRepository,
InterventionRepository $interventionRepository)
{
$intervention=$interventionRepository->getdernierparlieu($lieu);
// dd($intervention);
$factu=$factuRepository->find($idfac);
$servicedivers= new servicedivers();
if($intervention->getContrat()<=0){
$intervention= new Intervention();$date= new DateTimeImmutable();
$intervention->setDate($date);$intervention->setContrat(0);
}
// $lieu=$lieuRepository->find($intervention->getContrat());
$dateini=date_timestamp_get($intervention->getdate());
$moiact=date('n',$dateini);
$interf=$interventionRepository->getInterventionIdcontrat($intervention->getContrat());
$inter=[];
foreach ($interf as $k) {
if($k->getFact()==$idfac){
$inter[]=$k;}
}
$date=time();
$d=[];
// $d[]=date('d/m/y',time());
foreach ($inter as $k) {
$a=date_timestamp_get($k->getdate());
// $d[]=date('d/m/y',$a);
if($date>$a){
$date=$a;
}
}
// $d[]=date('d/m/y',$date);
// $d[]=date('d/m/y',$dateini);
//
$moid=date('m',$dateini);
$and=date('y',$dateini);
// $d[]=$moid;
// $d[]=$and;
$valdeb=$moid+($and*12);
// $d[]=$valdeb;
$moi=date('m',$date);
$an=date('y',$date);
// $d[]=$moi;
// $d[]=$an;
$valfin=$moi+($an*12);
$moi=($valdeb-$valfin)+1;
// $d[]=$valfin;
// $d[]=$moi;
$mod="deux";
if($moi<=6){
$mod="6m";
}elseif($moi<=12){
$mod="an";
}
// $d[]=$mod;
//dd($d);
$anact=date('y',$dateini);
$anact++;
$anact--;
//$titre="intervention"." ".$numcontre;
$titre="dernier relever le ".date('d/m/y',date_timestamp_get($intervention->getdate()));
$mois=array("jan","fev","mars","avr","mai",'juin',"juil","aout","sept","oct","nov","dec");
$i=11;
//echo $moiact." nnn";
$moiact--;
$moisanscol=array(array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0));
$moisanscol6=array(array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0));
$moisanscolpres=array(array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0));
$moisfini=array("","","","","","","","","","","","");
//$d[]=$moiact;
switch ($mod) {
case "6m":
while($i>=0){
// echo $mois[$moiact]." nn";
$moisfini[($i-1)]=$mois[$moiact];
$a=$moiact+1;
$moisanscol6[$i]=array($a,$anact,2);
$moisanscol6[($i-1)]=array($a,$anact,1);
$moiact--;
if($moiact==-1){
$moiact=11;$anact--;
}
$i--;$i--;
}
break;
case "an":
while($i>=0){
// echo $mois[$moiact]." nn";
$moisfini[$i]=$mois[$moiact];
$a=$moiact+1;
$moisanscol[$i]=array($a,$anact);
$moiact--;
if($moiact==-1){
$moiact=11;$anact--;
}
$i--;
}
break;
default:
//2 anx
while($i>=0){
// echo $mois[$moiact]." nn";
$moisfini[$i]=$mois[$moiact];
$a=$moiact+1;
$moisanscol[$i]=array($a,$anact);
$moisanscolpres[$i]=array($a,($anact-1));
$moiact--;
if($moiact==-1){
$moiact=11;$anact--;
}
$i--;
}
break;
}
//$d[]=$moisfini;
//$d[]=$moisanscol;
//$d[]=$moisanscolpres;
//dd($d);
$data1ya=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yc=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yd=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1ye=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2ya=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yc=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yd=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2ye=[0,0,0,0,0,0,0,0,0,0,0,0];
$con1=[0,0,0,0,0,0,0,0,0,0,0,0];
$con2=[0,0,0,0,0,0,0,0,0,0,0,0];
$grigno=0;$remi=0;$reste=0;$conso=0;$plushaut=0;$plushautli=0;$diver=0;
$produitser= new produitService();$datr=[];$da=0;
foreach ($inter as $re) {
// dd($re);$da
$grigno=0;$remi=0;$reste=0;$chan=0;$conso=0;$diver=0;
$interfa=$interfaitRepository->getinterfait($re->getId());
$datr[$da]=[];
$datr[$da]['inter']=$re;
$datr[$da]['interfait']=$interfa;$dat=[];
foreach ($interfa as $interfai) {
if($interfai->getClientfait()==0){}
if($interfai->getinter()>=0){
// $dat[]=["grigno"=>$interfai->getGrign(),"remi"=>$interfai->getRemit(),"reste"=>$interfai->getReste(),"chan"=>$interfai->getChan(),"conso"=>$interfai->getConso()];
$grigno=$grigno+$interfai->getGrign();
$remi=$remi+$interfai->getRemit();
$reste=$reste+$interfai->getReste();
$chan=$chan+$interfai->getChan();
$diver=$diver+$interfai->getConso();
//$interfai->getProduit()
$conso=$conso+$produitser->getidvol($interfai->getProduit());
$dat[]=["consot"=>$conso,"chan"=>$interfai->getChan(),"reste"=>$interfai->getReste(),"remi"=>$interfai->getRemit(),"conso"=>$interfai->getConso(),"prod"=>$interfai->getProduit(),"prod2"=>$produitser->getidvol($interfai->getProduit())];
}
} $dateinter=date_timestamp_get($re->getdate());
$datr[$da]['date']=date('d/m/y',$dateinter);
$datr[$da]['retour1']=$dat;
$datr[$da]['retour']=["grigno"=>$grigno,"remi"=>$remi,"reste"=>$reste,"chan"=>$chan,"conso"=>$conso];
for($i=0; $i<=11;$i++){
switch ($mod) {
case "6m":
// dd($dateinter);
if($moisanscol6[$i][0]==date('m',$dateinter) && $moisanscol6[$i][1]==date('y',$dateinter) ){
$day15=0;
$d=date('d',$dateinter);
// echo $d." l ";
if(1<=$d && $d<=15){
$day15=1;
}elseif(16<=$d && $d<=31){
$day15=2;
}
// echo $day15." l ".$re['id']." ffff<br>";
if($moisanscol6[$i][2]==$day15){
$data1ya[$i]=$reste+$data1ya[$i];
$data1yb[$i]=$grigno+$data1yb[$i];
$data1yc[$i]=$remi+$data1yc[$i];
$data1yd[$i]=$chan+$data1yd[$i];
$data1ye[$i]=$diver+$data1ye[$i];
//echo $con1[$i];
$con1[$i]=$con1[$i]+$conso;
// echo " + ".$conso." = ".$con1[$i]." - ".$i."<br>";
}
}
$a=$data1ya[$i]+$data1yb[$i]+$data1yc[$i]+$data1yd[$i]+$data1ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
if($plushautli<=$con1[$i]){
$plushautli=$con1[$i];}
break;
case "an":
if($moisanscol[$i][0]==date('m',$dateinter) && $moisanscol[$i][1]==date('y',$dateinter) ){
$data1ya[$i]=$reste+$data1ya[$i];
$data1yb[$i]=$grigno+$data1yb[$i];
$data1yc[$i]=$remi+$data1yc[$i];
$data1yd[$i]=$chan+$data1yd[$i];
$data1ye[$i]=$diver+$data1ye[$i];
$con1[$i]=$con1[$i]+$conso;
}
// echo $con1[$i]." b ".$data1ya[$i]." f ".$remi." ".$grigno." ".$re['id']." ".$i." <br>";
$a=$data1ya[$i]+$data1yb[$i]+$data1yc[$i]+$data1yd[$i]+$data1ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
if($plushautli<=$con1[$i]){
$plushautli=$con1[$i];}
break;
default:
//2 anx
if($moisanscol[$i][0]==date('m',$dateinter) && $moisanscol[$i][1]==date('y',$dateinter) ){
$data1ya[$i]=$reste+$data1ya[$i];
$data1yb[$i]=$grigno+$data1yb[$i];
$data1yc[$i]=$remi+$data1yc[$i];
$data1yd[$i]=$chan+$data1yd[$i];
$data1ye[$i]=$diver+$data1ye[$i];
$con1[$i]=$con1[$i]+$conso;
}
if($moisanscolpres[$i][0]==date('m',$dateinter) && $moisanscolpres[$i][1]==date('y',$dateinter) ){
$data2ya[$i]=$reste+$data2ya[$i];
$data2yb[$i]=$grigno+$data2yb[$i];
$data2yc[$i]=$remi+$data2yc[$i];
$data2yd[$i]=$chan+$data2yd[$i];
$data2ye[$i]=$diver+$data2ye[$i];
$con2[$i]=$con2[$i]+$conso;
}
// echo $con1[$i]." b ".$data1ya[$i]." f ".$remi." ".$grigno." ".$re['id']." ".$i." <br>";
$a=$data1ya[$i]+$data1yb[$i]+$data1yc[$i]+$data1yd[$i]+$data1ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
$a=$data2ya[$i]+$data2yb[$i]+$data2yc[$i]+$data2yd[$i]+$data2ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
if($plushautli<=$con1[$i]){
$plushautli=$con1[$i];}
if($plushautli<=$con2[$i]){
$plushautli=$con2[$i];}
break;
}
// echo $con1[$i]." h ".$con2[$i]." l ".$plushautli." id ".$re['id']."<br>";
}
$da++;
}
$datr[]=[$data1ya,$data1yb,$data1yc,$data1yd,$con1];
$datr[]=[$data2ya,$data2yb,$data2yc,$data2yd,$con2];
//dd($datr);
$plushautli=$plushautli+100;
$aacol=$servicedivers->grahi($plushautli);
$ak=$aacol*6;
//echo $aacol." b ";
// echo $aacol2." ".$aava." <br>";
//echo $aacol."<br>".$aacol2;
$a3=array(0,0,0,0,0,0,0,0);
for($i=1;$i<=6;$i++){
$a3[$i]=$aacol*$i;
}
$v=$plushaut/3;//valeur max
if($v>=1){
$vm=$plushautli/$v;//valeur divition
$con1[0]=$con1[0]/$vm;
$con1[1]=$con1[1]/$vm;
$con1[2]=$con1[2]/$vm;
$con1[3]=$con1[3]/$vm;
$con1[4]=$con1[4]/$vm;
$con1[5]=$con1[5]/$vm;
$con1[6]=$con1[6]/$vm;
$con1[7]=$con1[7]/$vm;
$con1[8]=$con1[8]/$vm;
$con1[9]=$con1[9]/$vm;
$con1[10]=$con1[10]/$vm;
$con1[11]=$con1[11]/$vm;
$con2[0]=$con2[0]/$vm;
$con2[1]=$con2[1]/$vm;
$con2[2]=$con2[2]/$vm;
$con2[3]=$con2[3]/$vm;
$con2[4]=$con2[4]/$vm;
$con2[5]=$con2[5]/$vm;
$con2[6]=$con2[6]/$vm;
$con2[7]=$con2[7]/$vm;
$con2[8]=$con2[8]/$vm;
$con2[9]=$con2[9]/$vm;
$con2[10]=$con2[10]/$vm;
$con2[11]=$con2[11]/$vm;
}
$plushaut=$plushaut+100;
$aacol=$servicedivers->grahi($plushaut);
$aacol2=$aacol/2;
// echo $aacol2." ".$aava." <br>";
//echo $aacol."<br>".$aacol2;
$a1=array(0,0,0,0,0,0,0,0);
$a2=array($aacol2,0,0,0,0,0,0);
for($i=1;$i<=6;$i++){
$a1[$i]=$aacol*$i;
$a2[$i]=$aacol2+($aacol*($i-1));
}
// Create the graph.
$graph = new Graph\Graph(700, 350);
$graph->SetScale('textlin');
$graph->SetMarginColor('white');
$graph->yaxis->SetTickPositions($a1,$a2);
//$graph->y2axis->SetTickPositions($a3);
$graph->SetBox(false);
// Setup title
$graph->title->Set($titre);
// Create the first bar
switch ($mod) {
default:
$bplotb = new Plot\BarPlot($data2ya);
$bplotb->SetFillGradient("#239B56", "#239B56", GRAD_VERT);
$bplotb->SetColor("#239B56");
$bplotb->SetLegend("asia");
// Create the second bar
$bplot2b = new Plot\BarPlot($data2yb);
$bplot2b->SetFillGradient("#C0392B", "#C0392B", GRAD_VERT);
$bplot2b->SetColor("#C0392B");
$bplot2b->SetLegend("euro ");
$bplot3b = new Plot\BarPlot($data2yc);
$bplot3b->SetFillGradient("#2874A6", "#2874A6", GRAD_VERT);
$bplot3b->SetColor("#2874A6");
$bplot3b->SetLegend("mouche");
$bplot4b = new Plot\BarPlot($data2yd);
$bplot4b->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot4b->SetColor("#717D7E");/**/
$bplot4b->SetLegend("papillon");
$bplot5b = new Plot\BarPlot($data2ye);
$bplot5b->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot5b->SetColor("#717D7E");/**/
$bplot5b->SetLegend("orien");
// And join them in an accumulated bar
// And join them in an accumulated bar
$p2 = new Plot\LinePlot($con2);
$p2->mark->SetType(MARK_FILLEDCIRCLE);
$p2->mark->SetFillColor('green');
$p2->mark->SetWidth(4);
$p2->SetColor('yellow');
$p2->SetCenter();
$p2->SetLegend("prod");
$bplot = new Plot\BarPlot($data1ya);
$bplot->SetFillGradient("#239B56", "#239B56", GRAD_VERT);
$bplot->SetColor("#239B56");
$bplot->SetLegend("asia ");
// Create the second bar
$bplot2 = new Plot\BarPlot($data1yb);
$bplot2->SetFillGradient("#C0392B", "#C0392B", GRAD_VERT);
$bplot2->SetColor("#C0392B");
$bplot2->SetLegend("euro");
$bplot3 = new Plot\BarPlot($data1yc);
$bplot3->SetFillGradient("#2874A6", "#2874A6", GRAD_VERT);
$bplot3->SetColor("#2874A6");
$bplot3->SetLegend("mouche");
$bplot4 = new Plot\BarPlot($data1yd);
$bplot4->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot4->SetColor("#717D7E");
$bplot4->SetLegend("papillon");/**/
$bplot5 = new Plot\BarPlot($data1ye);
$bplot5->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot5->SetColor("#717D7E");
$bplot5->SetLegend("orien");/**/
$p1 = new Plot\LinePlot($con1);
$p1->mark->SetType(MARK_FILLEDCIRCLE);
$p1->mark->SetFillColor('blue');
$p1->mark->SetWidth(4);
$p1->SetColor('blue');
$p1->SetCenter();
$p1->SetLegend("prod");;
$accbplot = new Plot\AccBarPlot([$bplot5,$bplot4,$bplot3, $bplot2,$bplot]);
$accbplotb = new Plot\AccBarPlot([ $bplot5b,$bplot4b,$bplot3b,$bplot2b,$bplotb]);
$bar = new plot\GroupBarPlot(array($accbplot,$accbplotb));
//$graph->Add($accbplot);
$graph->Add($bar);
$graph->Add($p1);
$graph->Add($p2);
break;
case "6m":
case "an":
$bplot = new Plot\BarPlot($data1ya);
$bplot->SetFillGradient("#239B56", "#239B56", GRAD_VERT);
$bplot->SetColor("#239B56");
$bplot->SetLegend("asia ");
// Create the second bar
$bplot2 = new Plot\BarPlot($data1yb);
$bplot2->SetFillGradient("#C0392B", "#C0392B", GRAD_VERT);
$bplot2->SetColor("#C0392B");
$bplot2->SetLegend("euro");
$bplot3 = new Plot\BarPlot($data1yc);
$bplot3->SetFillGradient("#2874A6", "#2874A6", GRAD_VERT);
$bplot3->SetColor("#2874A6");
$bplot3->SetLegend("mouche");
$bplot4 = new Plot\BarPlot($data1yd);
$bplot4->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot4->SetColor("#717D7E");
$bplot4->SetLegend("papillon");/**/
$bplot5 = new Plot\BarPlot($data1ye);
$bplot5->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot5->SetColor("#717D7E");
$bplot5->SetLegend("orien");/**/
$p1 = new Plot\LinePlot($con1);
$p1->mark->SetType(MARK_FILLEDCIRCLE);
$p1->mark->SetFillColor('blue');
$p1->mark->SetWidth(4);
$p1->SetColor('blue');
$p1->SetCenter();
$p1->SetLegend("prod");;
$accbplot = new Plot\AccBarPlot([$bplot5,$bplot4,$bplot3, $bplot2,$bplot]);
$graph->Add($accbplot);
$graph->Add($p1);
break;
}
$graph->SetMargin(40,20,46,80);
$graph->xaxis->SetTickLabels($moisfini);
if($pdf=="oui"){
switch ($mod) {
case "6m":
$fichiergrah=$this->getParameter('grapph_directory').$intervention->getId().uniqid()."donnergrapmoism.png";
$fichiergrah2=$this->getParameter('grapph_directory_dos').$intervention->getId().uniqid()."donnergrapmoism.png";
break;
case "an":
$fichiergrah=$this->getParameter('grapph_directory').$intervention->getId().uniqid()."donnergrapanm.png";
$fichiergrah2=$this->getParameter('grapph_directory_dos').$intervention->getId().uniqid()."donnergrapanm.png";
break;
default:
$fichiergrah=$this->getParameter('grapph_directory').$intervention->getId().uniqid()."donnergrap2anm.png";
$fichiergrah2=$this->getParameter('grapph_directory_dos').$intervention->getId().uniqid()."donnergrap2anm.png";
break;
}
if(file_exists($fichiergrah)){
unlink($fichiergrah) ;
}
$graph->Stroke($fichiergrah);
// dd($fichiergrah);
return $fichiergrah;
}else{
$graph->Stroke();
}
//$graph->Stroke();
/* return $this->render('graph_jpgraph/index.html.twig', [
'controller_name' => 'GraphJpgraphController',
]);*/
}
#[Route('/facpro/{pdf}/{idfac}/{idproduit}', name: 'facpro')]
public function produit(string $pdf,int $idfac,
int $idproduit,FactuRepository $factuRepository,
LieuRepository $lieuRepository,
InterfaitRepository $interfaitRepository,
ClientRepository $clientRepository,
FaclieuRepository $faclieuRepository,
InterventionRepository $interventionRepository)
{
$inter=[];
if($idfac==0){
$interf=$interventionRepository->touteinter();
foreach ($interf as $k) {
$inter[]=$k;
}
}else{
$factu=$factuRepository->getidfactuform($idfac, $clientRepository, $lieuRepository, $faclieuRepository);
foreach ($factu['lieuinfo'] as $k) {
# code...
$interf=$interventionRepository->getInterventionIdcontrat($k['lieuid']);
foreach ($interf as $k) {
if($k->getFact()==$idfac){
$inter[]=$k;}
}
}
}
//dd($inter);
$dateinitila=new Intervention;
foreach ($inter as $k) {
if($dateinitila->getDate()<=$k->getDate()){
$dateinitila=$k;
}
}
// dd($intervention);
$factu=$factuRepository->find($idfac);
$servicedivers= new servicedivers();
$dateini=date_timestamp_get($dateinitila->getdate());
$moiact=date('n',$dateini);
$date=time();
$d=[];
// $d[]=date('d/m/y',time());
foreach ($inter as $k) {
$a=date_timestamp_get($k->getdate());
// $d[]=date('d/m/y',$a);
if($date>$a){
$date=$a;
}
}
// $d[]=date('d/m/y',$date);
// $d[]=date('d/m/y',$dateini);
//
$moid=date('m',$dateini);
$and=date('y',$dateini);
// $d[]=$moid;
// $d[]=$and;
$valdeb=$moid+($and*12);
// $d[]=$valdeb;
$moi=date('m',$date);
$an=date('y',$date);
// $d[]=$moi;
// $d[]=$an;
$valfin=$moi+($an*12);
$moi=($valdeb-$valfin)+1;
// $d[]=$valfin;
// $d[]=$moi;
$mod="deux";
if($moi<=6){
$mod="6m";
}elseif($moi<=12){
$mod="an";
}
// $d[]=$mod;
//dd($d);
$anact=date('y',$dateini);
$anact++;
$anact--;
//$titre="intervention"." ".$numcontre;
$titre="dernier relever le ".date('d/m/y',date_timestamp_get($dateinitila->getdate()));
$mois=array("jan","fev","mars","avr","mai",'juin',"juil","aout","sept","oct","nov","dec");
$i=11;
//echo $moiact." nnn";
$moiact--;
$moisanscol=array(array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0));
$moisanscol6=array(array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0));
$moisanscolpres=array(array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0));
$moisfini=array("","","","","","","","","","","","");
//$d[]=$moiact;
switch ($mod) {
case "6m":
while($i>=0){
// echo $mois[$moiact]." nn";
$moisfini[($i-1)]=$mois[$moiact];
$a=$moiact+1;
$moisanscol6[$i]=array($a,$anact,2);
$moisanscol6[($i-1)]=array($a,$anact,1);
$moiact--;
if($moiact==-1){
$moiact=11;$anact--;
}
$i--;$i--;
}
break;
case "an":
while($i>=0){
// echo $mois[$moiact]." nn";
$moisfini[$i]=$mois[$moiact];
$a=$moiact+1;
$moisanscol[$i]=array($a,$anact);
$moiact--;
if($moiact==-1){
$moiact=11;$anact--;
}
$i--;
}
break;
default:
//2 anx
while($i>=0){
// echo $mois[$moiact]." nn";
$moisfini[$i]=$mois[$moiact];
$a=$moiact+1;
$moisanscol[$i]=array($a,$anact);
$moisanscolpres[$i]=array($a,($anact-1));
$moiact--;
if($moiact==-1){
$moiact=11;$anact--;
}
$i--;
}
break;
}
//$d[]=$moisfini;
//$d[]=$moisanscol;
//$d[]=$moisanscolpres;
//dd($d);
$data1ya=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yc=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yd=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1ye=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2ya=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yc=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yd=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2ye=[0,0,0,0,0,0,0,0,0,0,0,0];
$con1=[0,0,0,0,0,0,0,0,0,0,0,0];
$con2=[0,0,0,0,0,0,0,0,0,0,0,0];
$grigno=0;$remi=0;$reste=0;$conso=0;$plushaut=0;$plushautli=0;$diver=0;
$produitser= new produitService();$datr=[];$da=0;
$int=[];
$int2=[];
foreach ($inter as $re) {
// dd($re);$da
//$int[]=$re;
$grigno=0;$remi=0;$reste=0;$chan=0;$conso=0;$diver=0;
$interfa=$interfaitRepository->getinterfait($re->getId());
$datr[$da]=[];
$datr[$da]['inter']=$re;
$datr[$da]['interfait']=$interfa;$dat=[];
foreach ($interfa as $interfai) {
if($interfai->getProdavan()==$idproduit) {
if($interfai->getClientfait()==0){}
if($interfai->getinter()>=0){
//$int2[]=$interfai;
// $dat[]=["grigno"=>$interfai->getGrign(),"remi"=>$interfai->getRemit(),"reste"=>$interfai->getReste(),"chan"=>$interfai->getChan(),"conso"=>$interfai->getConso()];
$grigno=$grigno+$interfai->getGrign();
$remi=$remi+$interfai->getRemit();
$reste=$reste+$interfai->getReste();
$chan=$chan+$interfai->getChan();
$diver=$diver+$interfai->getConso();
//$interfai->getProduit()
$conso=$conso+$produitser->getidvol($interfai->getProduit());
$dat[]=["consot"=>$conso,"chan"=>$interfai->getChan(),"reste"=>$interfai->getReste(),"remi"=>$interfai->getRemit(),"conso"=>$interfai->getConso(),"prod"=>$interfai->getProduit(),"prod2"=>$produitser->getidvol($interfai->getProduit())];
}
}
} $dateinter=date_timestamp_get($re->getdate());
$datr[$da]['date']=date('d/m/y',$dateinter);
$datr[$da]['retour1']=$dat;
$datr[$da]['retour']=["grigno"=>$grigno,"remi"=>$remi,"reste"=>$reste,"chan"=>$chan,"conso"=>$conso];
for($i=0; $i<=11;$i++){
switch ($mod) {
case "6m":
// dd($dateinter);
if($moisanscol6[$i][0]==date('m',$dateinter) && $moisanscol6[$i][1]==date('y',$dateinter) ){
$day15=0;
$d=date('d',$dateinter);
// echo $d." l ";
if(1<=$d && $d<=15){
$day15=1;
}elseif(16<=$d && $d<=31){
$day15=2;
}
// echo $day15." l ".$re['id']." ffff<br>";
if($moisanscol6[$i][2]==$day15){
$data1ya[$i]=$reste+$data1ya[$i];
$data1yb[$i]=$grigno+$data1yb[$i];
$data1yc[$i]=$remi+$data1yc[$i];
$data1yd[$i]=$chan+$data1yd[$i];
$data1ye[$i]=$diver+$data1ye[$i];
//echo $con1[$i];
$con1[$i]=$con1[$i]+$conso;
// echo " + ".$conso." = ".$con1[$i]." - ".$i."<br>";
}
}
$a=$data1ya[$i]+$data1yb[$i]+$data1yc[$i]+$data1yd[$i]+$data1ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
if($plushautli<=$con1[$i]){
$plushautli=$con1[$i];}
break;
case "an":
if($moisanscol[$i][0]==date('m',$dateinter) && $moisanscol[$i][1]==date('y',$dateinter) ){
$data1ya[$i]=$reste+$data1ya[$i];
$data1yb[$i]=$grigno+$data1yb[$i];
$data1yc[$i]=$remi+$data1yc[$i];
$data1yd[$i]=$chan+$data1yd[$i];
$data1ye[$i]=$diver+$data1ye[$i];
$con1[$i]=$con1[$i]+$conso;
}
// echo $con1[$i]." b ".$data1ya[$i]." f ".$remi." ".$grigno." ".$re['id']." ".$i." <br>";
$a=$data1ya[$i]+$data1yb[$i]+$data1yc[$i]+$data1yd[$i]+$data1ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
if($plushautli<=$con1[$i]){
$plushautli=$con1[$i];}
break;
default:
//2 anx
if($moisanscol[$i][0]==date('m',$dateinter) && $moisanscol[$i][1]==date('y',$dateinter) ){
$data1ya[$i]=$reste+$data1ya[$i];
$data1yb[$i]=$grigno+$data1yb[$i];
$data1yc[$i]=$remi+$data1yc[$i];
$data1yd[$i]=$chan+$data1yd[$i];
$data1ye[$i]=$diver+$data1ye[$i];
$con1[$i]=$con1[$i]+$conso;
}
if($moisanscolpres[$i][0]==date('m',$dateinter) && $moisanscolpres[$i][1]==date('y',$dateinter) ){
$data2ya[$i]=$reste+$data2ya[$i];
$data2yb[$i]=$grigno+$data2yb[$i];
$data2yc[$i]=$remi+$data2yc[$i];
$data2yd[$i]=$chan+$data2yd[$i];
$data2ye[$i]=$diver+$data2ye[$i];
$con2[$i]=$con2[$i]+$conso;
}
// echo $con1[$i]." b ".$data1ya[$i]." f ".$remi." ".$grigno." ".$re['id']." ".$i." <br>";
$a=$data1ya[$i]+$data1yb[$i]+$data1yc[$i]+$data1yd[$i]+$data1ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
$a=$data2ya[$i]+$data2yb[$i]+$data2yc[$i]+$data2yd[$i]+$data2ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
if($plushautli<=$con1[$i]){
$plushautli=$con1[$i];}
if($plushautli<=$con2[$i]){
$plushautli=$con2[$i];}
break;
}
// echo $con1[$i]." h ".$con2[$i]." l ".$plushautli." id ".$re['id']."<br>";
}
$da++;
}
//dd($int,$int2);
$datr[]=[$data1ya,$data1yb,$data1yc,$data1yd,$con1];
$datr[]=[$data2ya,$data2yb,$data2yc,$data2yd,$con2];
//dd($datr);
$plushautli=$plushautli+100;
$aacol=$servicedivers->grahi($plushautli);
$ak=$aacol*6;
//echo $aacol." b ";
// echo $aacol2." ".$aava." <br>";
//echo $aacol."<br>".$aacol2;
$a3=array(0,0,0,0,0,0,0,0);
for($i=1;$i<=6;$i++){
$a3[$i]=$aacol*$i;
}
$v=$plushaut/3;//valeur max
if($v>=1){
$vm=$plushautli/$v;//valeur divition
$con1[0]=$con1[0]/$vm;
$con1[1]=$con1[1]/$vm;
$con1[2]=$con1[2]/$vm;
$con1[3]=$con1[3]/$vm;
$con1[4]=$con1[4]/$vm;
$con1[5]=$con1[5]/$vm;
$con1[6]=$con1[6]/$vm;
$con1[7]=$con1[7]/$vm;
$con1[8]=$con1[8]/$vm;
$con1[9]=$con1[9]/$vm;
$con1[10]=$con1[10]/$vm;
$con1[11]=$con1[11]/$vm;
$con2[0]=$con2[0]/$vm;
$con2[1]=$con2[1]/$vm;
$con2[2]=$con2[2]/$vm;
$con2[3]=$con2[3]/$vm;
$con2[4]=$con2[4]/$vm;
$con2[5]=$con2[5]/$vm;
$con2[6]=$con2[6]/$vm;
$con2[7]=$con2[7]/$vm;
$con2[8]=$con2[8]/$vm;
$con2[9]=$con2[9]/$vm;
$con2[10]=$con2[10]/$vm;
$con2[11]=$con2[11]/$vm;
}
$plushaut=$plushaut+100;
$aacol=$servicedivers->grahi($plushaut);
$aacol2=$aacol/2;
// echo $aacol2." ".$aava." <br>";
//echo $aacol."<br>".$aacol2;
$a1=array(0,0,0,0,0,0,0,0);
$a2=array($aacol2,0,0,0,0,0,0);
for($i=1;$i<=6;$i++){
$a1[$i]=$aacol*$i;
$a2[$i]=$aacol2+($aacol*($i-1));
}
// Create the graph.
$graph = new Graph\Graph(700, 350);
$graph->SetScale('textlin');
$graph->SetMarginColor('white');
$graph->yaxis->SetTickPositions($a1,$a2);
//$graph->y2axis->SetTickPositions($a3);
$graph->SetBox(false);
// Setup title
$graph->title->Set($titre);
// Create the first bar
switch ($mod) {
default:
$bplotb = new Plot\BarPlot($data2ya);
$bplotb->SetFillGradient("#239B56", "#239B56", GRAD_VERT);
$bplotb->SetColor("#239B56");
$bplotb->SetLegend("asia");
// Create the second bar
$bplot2b = new Plot\BarPlot($data2yb);
$bplot2b->SetFillGradient("#C0392B", "#C0392B", GRAD_VERT);
$bplot2b->SetColor("#C0392B");
$bplot2b->SetLegend("euro ");
$bplot3b = new Plot\BarPlot($data2yc);
$bplot3b->SetFillGradient("#2874A6", "#2874A6", GRAD_VERT);
$bplot3b->SetColor("#2874A6");
$bplot3b->SetLegend("mouche");
$bplot4b = new Plot\BarPlot($data2yd);
$bplot4b->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot4b->SetColor("#717D7E");/**/
$bplot4b->SetLegend("papillon");
$bplot5b = new Plot\BarPlot($data2ye);
$bplot5b->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot5b->SetColor("#717D7E");/**/
$bplot5b->SetLegend("orien");
// And join them in an accumulated bar
// And join them in an accumulated bar
$p2 = new Plot\LinePlot($con2);
$p2->mark->SetType(MARK_FILLEDCIRCLE);
$p2->mark->SetFillColor('green');
$p2->mark->SetWidth(4);
$p2->SetColor('yellow');
$p2->SetCenter();
$p2->SetLegend("prod");
$bplot = new Plot\BarPlot($data1ya);
$bplot->SetFillGradient("#239B56", "#239B56", GRAD_VERT);
$bplot->SetColor("#239B56");
$bplot->SetLegend("asia ");
// Create the second bar
$bplot2 = new Plot\BarPlot($data1yb);
$bplot2->SetFillGradient("#C0392B", "#C0392B", GRAD_VERT);
$bplot2->SetColor("#C0392B");
$bplot2->SetLegend("euro");
$bplot3 = new Plot\BarPlot($data1yc);
$bplot3->SetFillGradient("#2874A6", "#2874A6", GRAD_VERT);
$bplot3->SetColor("#2874A6");
$bplot3->SetLegend("mouche");
$bplot4 = new Plot\BarPlot($data1yd);
$bplot4->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot4->SetColor("#717D7E");
$bplot4->SetLegend("papillon");/**/
$bplot5 = new Plot\BarPlot($data1ye);
$bplot5->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot5->SetColor("#717D7E");
$bplot5->SetLegend("orien");/**/
$p1 = new Plot\LinePlot($con1);
$p1->mark->SetType(MARK_FILLEDCIRCLE);
$p1->mark->SetFillColor('blue');
$p1->mark->SetWidth(4);
$p1->SetColor('blue');
$p1->SetCenter();
$p1->SetLegend("prod");;
$accbplot = new Plot\AccBarPlot([$bplot5,$bplot4,$bplot3, $bplot2,$bplot]);
$accbplotb = new Plot\AccBarPlot([ $bplot5b,$bplot4b,$bplot3b,$bplot2b,$bplotb]);
$bar = new plot\GroupBarPlot(array($accbplot,$accbplotb));
//$graph->Add($accbplot);
$graph->Add($bar);
$graph->Add($p1);
$graph->Add($p2);
break;
case "6m":
case "an":
$bplot = new Plot\BarPlot($data1ya);
$bplot->SetFillGradient("#239B56", "#239B56", GRAD_VERT);
$bplot->SetColor("#239B56");
$bplot->SetLegend("asia ");
// Create the second bar
$bplot2 = new Plot\BarPlot($data1yb);
$bplot2->SetFillGradient("#C0392B", "#C0392B", GRAD_VERT);
$bplot2->SetColor("#C0392B");
$bplot2->SetLegend("euro");
$bplot3 = new Plot\BarPlot($data1yc);
$bplot3->SetFillGradient("#2874A6", "#2874A6", GRAD_VERT);
$bplot3->SetColor("#2874A6");
$bplot3->SetLegend("mouche");
$bplot4 = new Plot\BarPlot($data1yd);
$bplot4->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot4->SetColor("#717D7E");
$bplot4->SetLegend("papillon");/**/
$bplot5 = new Plot\BarPlot($data1ye);
$bplot5->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot5->SetColor("#717D7E");
$bplot5->SetLegend("orien");/**/
$p1 = new Plot\LinePlot($con1);
$p1->mark->SetType(MARK_FILLEDCIRCLE);
$p1->mark->SetFillColor('blue');
$p1->mark->SetWidth(4);
$p1->SetColor('blue');
$p1->SetCenter();
$p1->SetLegend("prod");;
$accbplot = new Plot\AccBarPlot([$bplot5,$bplot4,$bplot3, $bplot2,$bplot]);
$graph->Add($accbplot);
$graph->Add($p1);
break;
}
//dd($con1);
$graph->SetMargin(40,20,46,80);
$graph->xaxis->SetTickLabels($moisfini);
if($pdf=="oui"){
switch ($mod) {
case "6m":
$fichiergrah=$this->getParameter('grapph_directory').$dateinitila->getId().uniqid().uniqid()."produitgrapmoism.png";
$fichiergrah2=$this->getParameter('grapph_directory_dos').$dateinitila->getId().uniqid().uniqid()."produitgrapmoism.png";
break;
case "an":
$fichiergrah=$this->getParameter('grapph_directory').$dateinitila->getId().uniqid().uniqid()."produitgrapanm.png";
$fichiergrah2=$this->getParameter('grapph_directory_dos').$dateinitila->getId().uniqid().uniqid()."produitgrapanm.png";
break;
default:
$fichiergrah=$this->getParameter('grapph_directory').$dateinitila->getId().uniqid().uniqid()."produitgrap2anm.png";
$fichiergrah2=$this->getParameter('grapph_directory_dos').$dateinitila->getId().uniqid().uniqid()."produitgrap2anm.png";
break;
}
if(file_exists($fichiergrah)){
unlink($fichiergrah) ;
}
$graph->Stroke($fichiergrah);
return $fichiergrah;
}else{
$graph->Stroke();
}
//$graph->Stroke();
/* return $this->render('graph_jpgraph/index.html.twig', [
'controller_name' => 'GraphJpgraphController',
]);*/
}
#[Route('/facconte/{pdf}/{idfac}/{idproduit}', name: 'facconte')]
public function conte(string $pdf,int $idfac,
int $idproduit,FactuRepository $factuRepository,
LieuRepository $lieuRepository,
InterfaitRepository $interfaitRepository,
ClientRepository $clientRepository,
FaclieuRepository $faclieuRepository,
InterventionRepository $interventionRepository)
{
/* $factu=$factuRepository->getidfactuform($idfac, $clientRepository, $lieuRepository, $faclieuRepository);
$inter=[];
foreach ($factu['lieuinfo'] as $k) {
# code...
$interf=$interventionRepository->getInterventionIdcontrat($k['lieuid']);
foreach ($interf as $k) {
if($k->getFact()==$idfac){
$inter[]=$k;}
}
}
*/
$inter=[];
if($idfac==0){
$interf=$interventionRepository->touteinter();
foreach ($interf as $k) {
$inter[]=$k;
}
}else{
$factu=$factuRepository->getidfactuform($idfac, $clientRepository, $lieuRepository, $faclieuRepository);
foreach ($factu['lieuinfo'] as $k) {
# code...
$interf=$interventionRepository->getInterventionIdcontrat($k['lieuid']);
foreach ($interf as $k) {
if($k->getFact()==$idfac){
$inter[]=$k;}
}
}
}
// dd($inter);
$dateinitila=new Intervention;
foreach ($inter as $k) {
if($dateinitila->getDate()<=$k->getDate()){
$dateinitila=$k;
}
}
//dd($inter);
// dd($intervention);
$factu=$factuRepository->find($idfac);
$servicedivers= new servicedivers();
$dateini=date_timestamp_get($dateinitila->getdate());
$moiact=date('n',$dateini);
$date=time();
$d=[];
// $d[]=date('d/m/y',time());
foreach ($inter as $k) {
$a=date_timestamp_get($k->getdate());
// $d[]=date('d/m/y',$a);
if($date>$a){
$date=$a;
}
}
// $d[]=date('d/m/y',$date);
// $d[]=date('d/m/y',$dateini);
//
$moid=date('m',$dateini);
$and=date('y',$dateini);
// $d[]=$moid;
// $d[]=$and;
$valdeb=$moid+($and*12);
// $d[]=$valdeb;
$moi=date('m',$date);
$an=date('y',$date);
// $d[]=$moi;
// $d[]=$an;
$valfin=$moi+($an*12);
$moi=($valdeb-$valfin)+1;
// $d[]=$valfin;
// $d[]=$moi;
$mod="deux";
if($moi<=6){
$mod="6m";
}elseif($moi<=12){
$mod="an";
}
// $d[]=$mod;
//dd($d);
$anact=date('y',$dateini);
$anact++;
$anact--;
//$titre="intervention"." ".$numcontre;
$titre="dernier relever le ".date('d/m/y',date_timestamp_get($dateinitila->getdate()));
$mois=array("jan","fev","mars","avr","mai",'juin',"juil","aout","sept","oct","nov","dec");
$i=11;
//echo $moiact." nnn";
$moiact--;
$moisanscol=array(array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0));
$moisanscol6=array(array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0),array(0,0,0));
$moisanscolpres=array(array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0),array(0,0));
$moisfini=array("","","","","","","","","","","","");
//$d[]=$moiact;
switch ($mod) {
case "6m":
while($i>=0){
// echo $mois[$moiact]." nn";
$moisfini[($i-1)]=$mois[$moiact];
$a=$moiact+1;
$moisanscol6[$i]=array($a,$anact,2);
$moisanscol6[($i-1)]=array($a,$anact,1);
$moiact--;
if($moiact==-1){
$moiact=11;$anact--;
}
$i--;$i--;
}
break;
case "an":
while($i>=0){
// echo $mois[$moiact]." nn";
$moisfini[$i]=$mois[$moiact];
$a=$moiact+1;
$moisanscol[$i]=array($a,$anact);
$moiact--;
if($moiact==-1){
$moiact=11;$anact--;
}
$i--;
}
break;
default:
//2 anx
while($i>=0){
// echo $mois[$moiact]." nn";
$moisfini[$i]=$mois[$moiact];
$a=$moiact+1;
$moisanscol[$i]=array($a,$anact);
$moisanscolpres[$i]=array($a,($anact-1));
$moiact--;
if($moiact==-1){
$moiact=11;$anact--;
}
$i--;
}
break;
}
//$d[]=$moisfini;
//$d[]=$moisanscol;
//$d[]=$moisanscolpres;
//dd($d);
$data1ya=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yc=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1yd=[0,0,0,0,0,0,0,0,0,0,0,0];
$data1ye=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2ya=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yc=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yb=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2yd=[0,0,0,0,0,0,0,0,0,0,0,0];
$data2ye=[0,0,0,0,0,0,0,0,0,0,0,0];
$con1=[0,0,0,0,0,0,0,0,0,0,0,0];
$con2=[0,0,0,0,0,0,0,0,0,0,0,0];
$grigno=0;$remi=0;$reste=0;$conso=0;$plushaut=0;$plushautli=0;$diver=0;
$produitser= new produitService();$datr=[];$da=0;
$int=[];
$int2=[];
foreach ($inter as $re) {
// dd($re);$da
$int[]=$re;
$grigno=0;$remi=0;$reste=0;$chan=0;$conso=0;$diver=0;
$interfa=$interfaitRepository->getinterfait($re->getId());
$datr[$da]=[];
$datr[$da]['inter']=$re;
$datr[$da]['interfait']=$interfa;$dat=[];
foreach ($interfa as $interfai) {
if($interfai->getPiegeancien()==$idproduit) {
if($interfai->getClientfait()==0){}
if($interfai->getinter()>=0){
$int2[]=$interfai;
// $dat[]=["grigno"=>$interfai->getGrign(),"remi"=>$interfai->getRemit(),"reste"=>$interfai->getReste(),"chan"=>$interfai->getChan(),"conso"=>$interfai->getConso()];
$grigno=$grigno+$interfai->getGrign();
$remi=$remi+$interfai->getRemit();
$reste=$reste+$interfai->getReste();
$chan=$chan+$interfai->getChan();
$diver=$diver+$interfai->getConso();
//$interfai->getProduit()
$conso=$conso+$produitser->getidvol($interfai->getProduit());
// $dat[]=["consot"=>$conso,"chan"=>$interfai->getChan(),"reste"=>$interfai->getReste(),"remi"=>$interfai->getRemit(),"conso"=>$interfai->getConso(),"prod"=>$interfai->getProduit(),"prod2"=>$produitser->getidvol($interfai->getProduit())];
}
}
} $dateinter=date_timestamp_get($re->getdate());
// $datr[$da]['date']=date('d/m/y',$dateinter);
// $datr[$da]['retour1']=$dat;
// $datr[$da]['retour']=["grigno"=>$grigno,"remi"=>$remi,"reste"=>$reste,"chan"=>$chan,"conso"=>$conso];
for($i=0; $i<=11;$i++){
switch ($mod) {
case "6m":
// dd($dateinter);
if($moisanscol6[$i][0]==date('m',$dateinter) && $moisanscol6[$i][1]==date('y',$dateinter) ){
$day15=0;
$d=date('d',$dateinter);
// echo $d." l ";
if(1<=$d && $d<=15){
$day15=1;
}elseif(16<=$d && $d<=31){
$day15=2;
}
// echo $day15." l ".$re['id']." ffff<br>";
if($moisanscol6[$i][2]==$day15){
$data1ya[$i]=$reste+$data1ya[$i];
$data1yb[$i]=$grigno+$data1yb[$i];
$data1yc[$i]=$remi+$data1yc[$i];
$data1yd[$i]=$chan+$data1yd[$i];
$data1ye[$i]=$diver+$data1ye[$i];
//echo $con1[$i];
$con1[$i]=$con1[$i]+$conso;
// echo " + ".$conso." = ".$con1[$i]." - ".$i."<br>";
}
}
$a=$data1ya[$i]+$data1yb[$i]+$data1yc[$i]+$data1yd[$i]+$data1ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
if($plushautli<=$con1[$i]){
$plushautli=$con1[$i];}
break;
case "an":
if($moisanscol[$i][0]==date('m',$dateinter) && $moisanscol[$i][1]==date('y',$dateinter) ){
$data1ya[$i]=$reste+$data1ya[$i];
$data1yb[$i]=$grigno+$data1yb[$i];
$data1yc[$i]=$remi+$data1yc[$i];
$data1yd[$i]=$chan+$data1yd[$i];
$data1ye[$i]=$diver+$data1ye[$i];
$con1[$i]=$con1[$i]+$conso;
}
// echo $con1[$i]." b ".$data1ya[$i]." f ".$remi." ".$grigno." ".$re['id']." ".$i." <br>";
$a=$data1ya[$i]+$data1yb[$i]+$data1yc[$i]+$data1yd[$i]+$data1ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
if($plushautli<=$con1[$i]){
$plushautli=$con1[$i];}
break;
default:
//2 anx
if($moisanscol[$i][0]==date('m',$dateinter) && $moisanscol[$i][1]==date('y',$dateinter) ){
$data1ya[$i]=$reste+$data1ya[$i];
$data1yb[$i]=$grigno+$data1yb[$i];
$data1yc[$i]=$remi+$data1yc[$i];
$data1yd[$i]=$chan+$data1yd[$i];
$data1ye[$i]=$diver+$data1ye[$i];
$con1[$i]=$con1[$i]+$conso;
}
if($moisanscolpres[$i][0]==date('m',$dateinter) && $moisanscolpres[$i][1]==date('y',$dateinter) ){
$data2ya[$i]=$reste+$data2yc[$i];
$data2yb[$i]=$grigno+$data2yb[$i];
$data2yc[$i]=$remi+$data2ya[$i];
$data2yd[$i]=$chan+$data2yd[$i];
$data2ye[$i]=$diver+$data2ye[$i];
$con2[$i]=$con2[$i]+$conso;
}
// echo $con1[$i]." b ".$data1ya[$i]." f ".$remi." ".$grigno." ".$re['id']." ".$i." <br>";
$a=$data1ya[$i]+$data1yb[$i]+$data1yc[$i]+$data1yd[$i]+$data1ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
$a=$data2ya[$i]+$data2yb[$i]+$data2yc[$i]+$data2yd[$i]+$data2ye[$i];
if($plushaut<=$a){
$plushaut=$a;}
if($plushautli<=$con1[$i]){
$plushautli=$con1[$i];}
if($plushautli<=$con2[$i]){
$plushautli=$con2[$i];}
break;
}
// echo $con1[$i]." h ".$con2[$i]." l ".$plushautli." id ".$re['id']."<br>";
}
$da++;
}
//dd($int,$int2);
//dd($data1ya,$data1yb,$data1yc,$data1yd,$data1ye);
//$datr[]=[$data1ya,$data1yb,$data1yc,$data1yd,$con1];
//$datr[]=[$data2ya,$data2yb,$data2yc,$data2yd,$con2];
//dd($datr);
$plushautli=$plushautli+100;
$aacol=$servicedivers->grahi($plushautli);
$ak=$aacol*6;
//echo $aacol." b ";
// echo $aacol2." ".$aava." <br>";
//echo $aacol."<br>".$aacol2;
$a3=array(0,0,0,0,0,0,0,0);
for($i=1;$i<=6;$i++){
$a3[$i]=$aacol*$i;
}
$v=$plushaut/3;//valeur max
if($v>=1){
$vm=$plushautli/$v;//valeur divition
$con1[0]=$con1[0]/$vm;
$con1[1]=$con1[1]/$vm;
$con1[2]=$con1[2]/$vm;
$con1[3]=$con1[3]/$vm;
$con1[4]=$con1[4]/$vm;
$con1[5]=$con1[5]/$vm;
$con1[6]=$con1[6]/$vm;
$con1[7]=$con1[7]/$vm;
$con1[8]=$con1[8]/$vm;
$con1[9]=$con1[9]/$vm;
$con1[10]=$con1[10]/$vm;
$con1[11]=$con1[11]/$vm;
$con2[0]=$con2[0]/$vm;
$con2[1]=$con2[1]/$vm;
$con2[2]=$con2[2]/$vm;
$con2[3]=$con2[3]/$vm;
$con2[4]=$con2[4]/$vm;
$con2[5]=$con2[5]/$vm;
$con2[6]=$con2[6]/$vm;
$con2[7]=$con2[7]/$vm;
$con2[8]=$con2[8]/$vm;
$con2[9]=$con2[9]/$vm;
$con2[10]=$con2[10]/$vm;
$con2[11]=$con2[11]/$vm;
}
$plushaut=$plushaut+100;
$aacol=$servicedivers->grahi($plushaut);
$aacol2=$aacol/2;
// echo $aacol2." ".$aava." <br>";
//echo $aacol."<br>".$aacol2;
$a1=array(0,0,0,0,0,0,0,0);
$a2=array($aacol2,0,0,0,0,0,0);
for($i=1;$i<=6;$i++){
$a1[$i]=$aacol*$i;
$a2[$i]=$aacol2+($aacol*($i-1));
}
// Create the graph.
$graph = new Graph\Graph(700, 350);
$graph->SetScale('textlin');
$graph->SetMarginColor('white');
$graph->yaxis->SetTickPositions($a1,$a2);
//$graph->y2axis->SetTickPositions($a3);
$graph->SetBox(false);
// Setup title
$graph->title->Set($titre);
// Create the first bar
switch ($mod) {
default:
$bplotb = new Plot\BarPlot($data2ya);
$bplotb->SetFillGradient("#239B56", "#239B56", GRAD_VERT);
$bplotb->SetColor("#239B56");
$bplotb->SetLegend("asia");
// Create the second bar
$bplot2b = new Plot\BarPlot($data2yb);
$bplot2b->SetFillGradient("#C0392B", "#C0392B", GRAD_VERT);
$bplot2b->SetColor("#C0392B");
$bplot2b->SetLegend("euro ");
$bplot3b = new Plot\BarPlot($data2yc);
$bplot3b->SetFillGradient("#2874A6", "#2874A6", GRAD_VERT);
$bplot3b->SetColor("#2874A6");
$bplot3b->SetLegend("mouche");
$bplot4b = new Plot\BarPlot($data2yd);
$bplot4b->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot4b->SetColor("#717D7E");/**/
$bplot4b->SetLegend("papillon");
$bplot5b = new Plot\BarPlot($data2ye);
$bplot5b->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot5b->SetColor("#717D7E");/**/
$bplot5b->SetLegend("orien");
// And join them in an accumulated bar
// And join them in an accumulated bar
$p2 = new Plot\LinePlot($con2);
$p2->mark->SetType(MARK_FILLEDCIRCLE);
$p2->mark->SetFillColor('green');
$p2->mark->SetWidth(4);
$p2->SetColor('yellow');
$p2->SetCenter();
$p2->SetLegend("prod");
$bplot = new Plot\BarPlot($data1ya);
$bplot->SetFillGradient("#239B56", "#239B56", GRAD_VERT);
$bplot->SetColor("#239B56");
$bplot->SetLegend("asia ");
// Create the second bar
$bplot2 = new Plot\BarPlot($data1yb);
$bplot2->SetFillGradient("#C0392B", "#C0392B", GRAD_VERT);
$bplot2->SetColor("#C0392B");
$bplot2->SetLegend("euro");
$bplot3 = new Plot\BarPlot($data1yc);
$bplot3->SetFillGradient("#2874A6", "#2874A6", GRAD_VERT);
$bplot3->SetColor("#2874A6");
$bplot3->SetLegend("mouche");
$bplot4 = new Plot\BarPlot($data1yd);
$bplot4->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot4->SetColor("#717D7E");
$bplot4->SetLegend("papillon");/**/
$bplot5 = new Plot\BarPlot($data1ye);
$bplot5->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot5->SetColor("#717D7E");
$bplot5->SetLegend("orien");/**/
$p1 = new Plot\LinePlot($con1);
$p1->mark->SetType(MARK_FILLEDCIRCLE);
$p1->mark->SetFillColor('blue');
$p1->mark->SetWidth(4);
$p1->SetColor('blue');
$p1->SetCenter();
$p1->SetLegend("prod");;
$accbplot = new Plot\AccBarPlot([$bplot5,$bplot4,$bplot3, $bplot2,$bplot]);
$accbplotb = new Plot\AccBarPlot([ $bplot5b,$bplot4b,$bplot3b,$bplot2b,$bplotb]);
$bar = new plot\GroupBarPlot(array($accbplot,$accbplotb));
//$graph->Add($accbplot);
$graph->Add($bar);
$graph->Add($p1);
$graph->Add($p2);
break;
case "6m":
case "an":
$bplot = new Plot\BarPlot($data1ya);
$bplot->SetFillGradient("#239B56", "#239B56", GRAD_VERT);
$bplot->SetColor("#239B56");
$bplot->SetLegend("asia ");
// Create the second bar
$bplot2 = new Plot\BarPlot($data1yb);
$bplot2->SetFillGradient("#C0392B", "#C0392B", GRAD_VERT);
$bplot2->SetColor("#C0392B");
$bplot2->SetLegend("euro");
$bplot3 = new Plot\BarPlot($data1yc);
$bplot3->SetFillGradient("#2874A6", "#2874A6", GRAD_VERT);
$bplot3->SetColor("#2874A6");
$bplot3->SetLegend("mouche");
$bplot4 = new Plot\BarPlot($data1yd);
$bplot4->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot4->SetColor("#717D7E");
$bplot4->SetLegend("papillon");/**/
$bplot5 = new Plot\BarPlot($data1ye);
$bplot5->SetFillGradient("#717D7E", "#717D7E", GRAD_VERT);
$bplot5->SetColor("#717D7E");
$bplot5->SetLegend("orien");/**/
$p1 = new Plot\LinePlot($con1);
$p1->mark->SetType(MARK_FILLEDCIRCLE);
$p1->mark->SetFillColor('blue');
$p1->mark->SetWidth(4);
$p1->SetColor('blue');
$p1->SetCenter();
$p1->SetLegend("prod");;
$accbplot = new Plot\AccBarPlot([$bplot5,$bplot4,$bplot3, $bplot2,$bplot]);
$graph->Add($accbplot);
$graph->Add($p1);
break;
}
//dd($con1);
$graph->SetMargin(40,20,46,80);
$graph->xaxis->SetTickLabels($moisfini);
if($pdf=="oui"){
switch ($mod) {
case "6m":
$fichiergrah=$this->getParameter('grapph_directory').$dateinitila->getId().uniqid()."contegrapmoism.png";
$fichiergrah2=$this->getParameter('grapph_directory_dos').$dateinitila->getId().uniqid()."contegrapmoism.png";
break;
case "an":
$fichiergrah=$this->getParameter('grapph_directory').$dateinitila->getId().uniqid()."contegrapanm.png";
$fichiergrah2=$this->getParameter('grapph_directory_dos').$dateinitila->getId().uniqid()."contegrapanm.png";
break;
default:
$fichiergrah=$this->getParameter('grapph_directory').$dateinitila->getId().uniqid()."contegrap2anm.png";
$fichiergrah2=$this->getParameter('grapph_directory_dos').$dateinitila->getId().uniqid()."contegrap2anm.png";
break;
}
if(file_exists($fichiergrah)){
unlink($fichiergrah) ;
}
$graph->Stroke($fichiergrah);
return $fichiergrah;
}else{
$graph->Stroke();
}
//$graph->Stroke();
/* return $this->render('graph_jpgraph/index.html.twig', [
'controller_name' => 'GraphJpgraphController',
]);*/
}
}