Rephrase the route of the api referring to the query power factor this with a calculation error, corrected.

This commit is contained in:
Djonathan 2022-06-30 19:16:31 -03:00
parent a0e414d81f
commit 862ecdd352
2 changed files with 14 additions and 15 deletions

View File

@ -37,18 +37,17 @@ class Med5minRepository extends AbstractRepository implements Med5minContractInt
[
"med_5min.ponto",
"med_5min.dia_num",
DB::raw("TO_CHAR((date('1899-12-30') + interval '1' day * med_5min.dia_num), 'DD/MM/YYYY') as day_formatted"),
DB::raw("(med_5min.minuto/60) AS hora"),
DB::raw("SUM(med_5min.ativa_consumo) AS consumo"),
DB::raw("SUM(med_5min.reativa_consumo+med_5min.reativa_geracao) AS reativa"),
DB::raw("(SUM(med_5min.ativa_consumo) / NULLIF(( (SUM(med_5min.ativa_consumo)^2) + (SUM(med_5min.reativa_consumo+med_5min.reativa_geracao)^2) ), 0))*100 as FP"),
DB::raw("(SUM(med_5min.ativa_consumo)/(SUM(med_5min.ativa_consumo)^2 +SUM(med_5min.reativa_consumo+med_5min.reativa_geracao)^2)) as FP"),
DB::raw("0.92 as F_ref")
];
$params = static::filterRow($params);
return $this->execute($fields, $params)
->groupBy(["med_5min.minuto", "med_5min.ponto", "med_5min.dia_num"])
->groupBy(["med_5min.dia_num", "med_5min.ponto"])
->orderBy(DB::raw("med_5min.dia_num, med_5min.ponto"))
->distinct()
->get();
@ -61,7 +60,7 @@ class Med5minRepository extends AbstractRepository implements Med5minContractInt
[
"med_5min.ponto",
"med_5min.dia_num",
DB::raw("TO_CHAR((date('1899-12-30') + interval '1' day * med_5min.dia_num), 'DD/MM/YYYY') as day_formatted"),
DB::raw("TO_CHAR((date('1899-12-31') + interval '1' day * med_5min.dia_num), 'DD/MM/YYYY') as day_formatted"),
DB::raw("(med_5min.minuto/60) AS hora"),
DB::raw("SUM(med_5min.ativa_consumo) AS dem_reg"),
DB::raw("(CASE WHEN ((med_5min.minuto/60) >= 18 AND (med_5min.minuto/60) <= 21) THEN dados_cadastrais.demanda_p ELSE dados_cadastrais.demanda_fp END) as dem_cont")
@ -106,7 +105,7 @@ class Med5minRepository extends AbstractRepository implements Med5minContractInt
[
'med_5min.ponto',
'med_5min.dia_num',
DB::raw("TO_CHAR((date('1899-12-30') + interval '1' day * med_5min.dia_num), 'DD/MM/YYYY') as day_formatted"),
DB::raw("TO_CHAR((date('1899-12-31') + interval '1' day * med_5min.dia_num), 'DD/MM/YYYY') as day_formatted"),
DB::raw("(med_5min.minuto/60) AS hora"),
DB::raw("MOD(med_5min.minuto,60) AS minut"),
DB::raw("SUM(med_5min.ativa_consumo) AS consumo"),
@ -126,7 +125,7 @@ class Med5minRepository extends AbstractRepository implements Med5minContractInt
[
'med_5min.ponto',
'med_5min.dia_num',
DB::raw("TO_CHAR((date('1899-12-30') + interval '1' day * med_5min.dia_num), 'DD/MM/YYYY') as day_formatted"),
DB::raw("TO_CHAR((date('1899-12-31') + interval '1' day * med_5min.dia_num), 'DD/MM/YYYY') as day_formatted"),
DB::raw("(med_5min.minuto/60) AS hora"),
DB::raw("((MOD(med_5min.minuto,60)/15)+1)*15 AS minut"),
DB::raw("SUM(med_5min.ativa_consumo) AS consumo"),
@ -145,7 +144,7 @@ class Med5minRepository extends AbstractRepository implements Med5minContractInt
[
'med_5min.ponto',
'med_5min.dia_num',
DB::raw("TO_CHAR((date('1899-12-30') + interval '1' day * med_5min.dia_num), 'DD/MM/YYYY') as day_formatted"),
DB::raw("TO_CHAR((date('1899-12-31') + interval '1' day * med_5min.dia_num), 'DD/MM/YYYY') as day_formatted"),
DB::raw("(med_5min.minuto/60) AS hora"),
DB::raw("SUM(med_5min.ativa_consumo) AS consumo"),
DB::raw("SUM(med_5min.reativa_consumo+med_5min.reativa_geracao) AS reativa")
@ -163,7 +162,7 @@ class Med5minRepository extends AbstractRepository implements Med5minContractInt
[
'med_5min.ponto',
'med_5min.dia_num',
DB::raw("TO_CHAR((date('1899-12-30') + interval '1' day * med_5min.dia_num), 'DD/MM/YYYY') as day_formatted"),
DB::raw("TO_CHAR((date('1899-12-31') + interval '1' day * med_5min.dia_num), 'DD/MM/YYYY') as day_formatted"),
DB::raw("SUM(med_5min.ativa_consumo) AS consumo"),
DB::raw("SUM(med_5min.reativa_consumo+med_5min.reativa_geracao) AS reativa")
];
@ -179,7 +178,7 @@ class Med5minRepository extends AbstractRepository implements Med5minContractInt
$arr['filters'] = collect($params['filters'])
->map(function ($value) use ($field) {
if ($value['field'] === $field) {
Arr::set($value, "field", "(date('1899-12-30') + interval '1' DAY * med_5min.{$value['field']})");
Arr::set($value, "field", "(date('1899-12-31') + interval '1' DAY * med_5min.{$value['field']})");
$value['row'] = true;
}
return $value;

View File

@ -148,8 +148,8 @@ class PldRepository extends AbstractRepository implements PldContractInterface
public function getConsumptionByDaily($params, $field = "mes_ref"): Collection|array
{
$fields = [
DB::raw("TO_CHAR((date('1899-12-30') + interval '1' day * pld.dia_num), 'DD') as day_formatted"),
DB::raw("(date('1899-12-30') + interval '1' day * pld.dia_num) as day_calc"),
DB::raw("TO_CHAR((date('1899-12-31') + interval '1' day * pld.dia_num), 'DD') as day_formatted"),
DB::raw("(date('1899-12-31') + interval '1' day * pld.dia_num) as day_calc"),
'pld.submercado as submarket',
DB::raw("SUM(pld.valor) as value"),
DB::raw("TO_CHAR(TO_DATE(pld.mes_ref, 'YYMM'), 'MM/YYYY') as year_month"),
@ -173,9 +173,9 @@ class PldRepository extends AbstractRepository implements PldContractInterface
public function getConsumptionBySchedule($params, $field = "dia_num"): Collection|array
{
$fields = [
DB::raw("TO_CHAR((date('1899-12-30') + interval '1' day * pld.dia_num), 'DD') as day_formatted"),
DB::raw("TO_CHAR((date('1899-12-31') + interval '1' day * pld.dia_num), 'DD') as day_formatted"),
'hora as hour',
DB::raw("(date('1899-12-30') + interval '1' day * pld.dia_num) as day_calc"),
DB::raw("(date('1899-12-31') + interval '1' day * pld.dia_num) as day_calc"),
'pld.submercado as submarket',
DB::raw("SUM(pld.valor) as value"),
DB::raw("TO_CHAR(TO_DATE(pld.mes_ref, 'YYMM'), 'MM/YYYY') as year_month"),
@ -185,7 +185,7 @@ class PldRepository extends AbstractRepository implements PldContractInterface
$i = 0;
foreach ($params['filters'] as $param) {
if ($param['field'] === $field) {
$params['filters'][$i]['field'] = "(date('1899-12-30') + interval '1' day * pld.{$param['field']})";
$params['filters'][$i]['field'] = "(date('1899-12-31') + interval '1' day * pld.{$param['field']})";
}
$i++;
}