Your IP : 216.73.216.212


Current Path : /home/a/t/a/ataenra/www/ATA/INTRANET/Admin/Gestion_ACC/AC/
Upload File :
Current File : /home/a/t/a/ataenra/www/ATA/INTRANET/Admin/Gestion_ACC/AC/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 fichier
$count =1;
if (($handle = fopen("../../../../FICHIERS/ACC/$IDpmo/Sites/$IDsite/CC/CCJ.$IDsite.csv", "r")) !== FALSE) {

    $i=0;
    while (($data = fgetcsv($handle, 1000, ";")) !== FALSE) {

    $DBCC[$i][1] = $data[0];
    $DBCC[$i][2] = $data[1];
    $DBCC[$i][3] = $data[2];
    $i++;
    $count++;
    }

}
fclose($handle);

if (($handle1 = fopen("../../../../FICHIERS/ACC/$IDpmo/Sites/$IDsite/CP/CPMJ.$IDsite.csv", "r")) !== FALSE) {

        $i=0;
        if($i<$count){
        while (($data = fgetcsv($handle1, 1000, ";")) !== FALSE) {
    
        $DBPV[$i][1] = $data[0];
        $DBPV[$i][2] = $data[1];
        $DBPV[$i][3] = $data[2];
        $i++;
        }}
    
    }

fclose($handle1);


$chemin ="../../../../FICHIERS/ACC/$IDpmo/Sites/$IDsite/AC";
if (!is_dir($chemin)) {mkdir($chemin, 0777,true);}
$csvj = new SplFileObject('../../../../FICHIERS/ACC/'.$IDpmo.'/Sites/'.$IDsite.'/AC/CCAC.'.$IDsite.'.csv', 'w');

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

$DBAC[$i][1]=$DBCC[$i][1];
$DBAC[$i][2]=$DBCC[$i][2];


$Pconso = $DBCC[$i][3];
$Pprod = $DBPV[$i][3];
$Pcalc = $Pconso-$Pprod;

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;

}

$DBAC[$i][3] = $Pfinal;
$DBAC[$i][4] = $Efinal;
$DBAC[$i][5] = $Pautoconso;
$DBAC[$i][6] = $Eautoconso;
$DBAC[$i][7] = $Pexc;
$DBAC[$i][8] = $Eexc;

$csvj->fputcsv($DBAC[$i], ';');
$i++;

}
$i=0;
foreach($DBAC as $DB1){
$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',$DBAC[$i][1]);
$UP3->bindparam(':Autoconso_heure',$DBAC[$i][2]);
$UP3->bindparam(':Puissance_Finale',$DBAC[$i][3]);
$UP3->bindparam(':Conso_kwh',$DBAC[$i][4]);
$UP3->bindparam(':Puissance_AutoConso',$DBAC[$i][5]);
$UP3->bindparam(':AutoConso_kwh',$DBAC[$i][6]);
$UP3->bindparam(':injection_Puissance',$DBAC[$i][7]);
$UP3->bindparam(':injection_kwh',$DBAC[$i][8]);
$UP3->execute();
$i++;
}


$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");

?>