Your IP : 216.73.216.65


Current Path : /home/ataenra/www/ATA/INTRANET/Admin/Gestion_ACC/
Upload File :
Current File : /home/ataenra/www/ATA/INTRANET/Admin/Gestion_ACC/CalculAutoConsoarray.php

<?php

require "../../../Outils/co.php";
$IDsite = $_GET['ID'];
$IDpmo = $_GET['IDpmo'];

$list0 = $dbco->prepare("SELECT ID_acc_site FROM gest_acc_autoconso_heures WHERE ID_acc_site='$IDsite'"); 
$list0->execute();
$R0 = $list0->fetch(PDO::FETCH_OBJ);

if(isset($R0->ID_acc_site)){
    $del=$dbco->prepare("DELETE FROM `gest_acc_autoconso_heures` WHERE ID_acc_site='$IDsite'");
    $del->execute();
}


//Nouveau select 

//Tableau 1 les consos
$list1 = $dbco->prepare("SELECT conso_jour, conso_puissance, conso_heure FROM gest_acc_conso_heures WHERE ID_acc_site='$IDsite' AND conso_jour LIKE '2024-%%' ORDER BY conso_jour, conso_heure ASC");
$list1->execute();

$i=1;
while ($R1 = $list1->fetch(PDO::FETCH_OBJ)) { 

$DBCC[$i][1] = $R1->conso_jour;
$DBCC[$i][2] = $R1->conso_heure;
$DBCC[$i][3] = $R1->conso_puissance;
$i++;
}

//tableau 2 la production    
$list2 = $dbco->prepare("SELECT prod_jour, prod_heure, prod_puissance FROM gest_acc_prod_heures WHERE ID_acc_site='$IDsite' AND prod_jour LIKE '2024-%%' ORDER BY prod_jour, prod_heure ASC"); 
$list2->execute();
$u=1;
while ($R2 = $list2->fetch(PDO::FETCH_OBJ)) { 

$DBPV[$u][1] = $R1->prod_jour;
$DBPV[$u][2] = $R1->prod_heure;
$DBPV[$u][3] = $R1->prod_puissance;
$u++;
}    


//Intersection des tableaux
$result = array_intersect($DBCC, $DBPV);
print_r($result);






die();


$i=1;
foreach($DBCC as $DB){

$DBAC[$i][1] = 




}









$Pconso = $R1->conso_puissance;
if(isset($R2->prod_jour)){$Pprod = $R2->prod_puissance;}else{$Pprod = 0;}

//Calcul CONSO - PRODUCTION
$Pcalc = ($Pconso-$Pprod);

//Si conso superieur à la production => Reste de la Conso
if($Pcalc > 0){
    $Pfinal = $Pcalc; 
    $Efinal = $Pfinal/1000; 
    $Pautoconso=$Pprod; 
    $Eautoconso=$Pprod/1000;
    $Pexc =0;
    $Eexc =0;
 }

//Si conso = la production => Reste de la Conso
if($Pcalc == 0){
    $Pfinal = 0; 
    $Efinal = 0; 
    $Pautoconso=$Pconso; 
    $Eautoconso=$Pautoconso/1000;
    $Pexc = 0;
    $Eexc = 0;
}
//Si conso inférieure à la production => Conso = 0 + Autoconsommation = Conso de base + Excedent.
if($Pcalc < 0){
    $Pfinal = 0; 
    $Efinal = 0; 
    $Pautoconso=$Pconso;
    $Eautoconso=$Pautoconso/1000;
    $Pexc =($Pcalc*-1);
    $Eexc = $Pexc/1000;

}

//echo $Pconso ."Puissance Consommée instantannée <br />\n";
//echo $Pprod ."Puissance Produite instantannée <br />\n";
//echo $Pcalc ."Calcul consommation - production <br />\n";
//echo $Pfinal ."Puissance soutirée <br />\n";
//echo $Efinal ."Energie soutirée<br />\n";
//echo $Pautoconso ."Puissance autoconso <br />\n";
//echo $Eautoconso ."Energie autoconso<br />\n";
//echo $Pexc ."Puissance injectée <br />\n";
//echo $Eexc ."Energie injectée <br />\n";


$UP3 = $dbco->prepare("INSERT INTO gest_acc_autoconso_heures (ID_acc_site, Autoconso_jour, Autoconso_heure, Puissance_Finale, Conso_kwh, Puissance_AutoConso, AutoConso_kwh, injection_Puissance, injection_kwh) VALUES (:ID_acc_site, :Autoconso_jour, :Autoconso_heure, :Puissance_Finale, :Conso_kwh, :Puissance_AutoConso, :AutoConso_kwh, :injection_Puissance, :injection_kwh)");
$UP3->bindparam(':ID_acc_site',$IDsite);
$UP3->bindparam(':Autoconso_jour',$R1->conso_jour);
$UP3->bindparam(':Autoconso_heure',$R1->conso_heure);
$UP3->bindparam(':Puissance_Finale',$Pfinal);
$UP3->bindparam(':Conso_kwh',$Efinal);
$UP3->bindparam(':Puissance_AutoConso',$Pautoconso);
$UP3->bindparam(':AutoConso_kwh',$Eautoconso);
$UP3->bindparam(':injection_Puissance',$Pexc);
$UP3->bindparam(':injection_kwh',$Eexc);
$UP3->execute();




//Echo "<p>Calculs Validés<br />\n";
//echo "<p>ligne $row: <br /></p>\n";



}
$UP6 = $dbco->prepare('UPDATE gest_acc_sites SET AC = :AC WHERE ID_acc_site = :ID_acc_site');
$UP6->bindvalue('AC','Oui');
$UP6->bindvalue('ID_acc_site',$IDsite);
$UP6->execute();

header("location:../../Gestion_ACC/acc_config_sites.php?IDpmo=$IDpmo");

?>