From 436d29cf2007dc792dc72d1656c05774e17a4b32 Mon Sep 17 00:00:00 2001 From: Klupp Dev Server Date: Thu, 27 Apr 2023 22:55:55 +0200 Subject: [PATCH] =?UTF-8?q?Atualiza=C3=A7=C3=B5es=20API=20-=20Corre=C3=A7?= =?UTF-8?q?=C3=B5es?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Controllers/FileController.php | 33 ++++++++++ app/Http/Controllers/UserController.php | 4 +- .../Med5min/Med5minRepository.php | 66 +++++++++++++------ routes/api.php | 1 + 4 files changed, 83 insertions(+), 21 deletions(-) create mode 100644 app/Http/Controllers/FileController.php diff --git a/app/Http/Controllers/FileController.php b/app/Http/Controllers/FileController.php new file mode 100644 index 0000000..91c184a --- /dev/null +++ b/app/Http/Controllers/FileController.php @@ -0,0 +1,33 @@ +hasFile('file')) { + return $this->errorResponse( false, 'É necessário enviar um arquivo de imagem', 500); + } + + $file = $request->file('file'); + + $path = $file->storeAs('avatars', $file->hashName(),'s3'); + + $url = ''; + try{ + $url = Storage::disk('s3')->url($path); + }catch(\Exception $e){ + return response()->json([ + 'erro' => 'Não foi possível salvar o arquivo' + ], 500); + } + + return response()->json([ + 'url' => $url + ], 201); + } +} diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index 9324b8d..2f463d5 100644 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -100,7 +100,9 @@ class UserController extends Controller public function update(Request $request, $id): JsonResponse { try { - $response = $this->user->update($request->all(), $id); + $data = $request->all(); + $data['password'] = bcrypt($request->password); + $response = $this->user->update($data, $id); return (new UserResource($response)) ->response() ->setStatusCode(Response::HTTP_ACCEPTED); diff --git a/app/Repositories/Med5min/Med5minRepository.php b/app/Repositories/Med5min/Med5minRepository.php index 15b1144..c706fcc 100644 --- a/app/Repositories/Med5min/Med5minRepository.php +++ b/app/Repositories/Med5min/Med5minRepository.php @@ -170,22 +170,38 @@ class Med5minRepository extends AbstractRepository implements Med5minContractInt $fields = [ 'med_5min.ponto', - 'med_5min.dia_num', - DB::raw("( - med_5min.dia_num::INTEGER - extract(day from ( - (date('1899-12-30') + interval '1' day * med_5min.dia_num) - - - to_date( - concat( - extract( YEAR from date '1899-12-30' + cast (med_5min.dia_num as integer)), - '/', - extract( month from date '1899-12-30' + cast (med_5min.dia_num as integer)) - ), - 'YYYY/MM' - ) - )) - ) as dia_data"), - DB::raw("TO_CHAR((date('1899-12-30') + interval '1' day * med_5min.dia_num), 'DD/MM/YYYY') as day_formatted"), + //'med_5min.dia_num', + // DB::raw("( + // med_5min.dia_num::INTEGER - extract(day from ( + // (date('1899-12-30') + interval '1' day * med_5min.dia_num) + // - + // to_date( + // concat( + // extract( YEAR from date '1899-12-30' + cast (med_5min.dia_num as integer)), + // '/', + // extract( month from date '1899-12-30' + cast (med_5min.dia_num as integer)) + // ), + // 'YYYY/MM' + // ) + // )) + // ) as dia_data"), + // 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.dia_num::INTEGER - extract(day from ( + (date('1899-12-30') + interval '1' day * med_5min.dia_num) + - + to_date( + concat( + extract( YEAR from date '1899-12-30' + cast (med_5min.dia_num as integer)), + '/', + extract( month from date '1899-12-30' + cast (med_5min.dia_num as integer)) + ), + 'YYYY/MM' + ) + )) + ) as dia_num_month + "), + DB::raw("TO_CHAR((date('1899-12-30') + interval '1' day * med_5min.dia_num), '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") ]; @@ -196,11 +212,17 @@ class Med5minRepository extends AbstractRepository implements Med5minContractInt $groupBy = $this->groupField($typeField, $type); - return $this->execute($fields, $params) - ->groupBy($groupBy) - ->orderBy(DB::raw("med_5min.dia_num, med_5min.ponto")) - ->get(); + $result = $this->execute($fields, $params) + ->groupBy($groupBy) + ->orderBy(DB::raw("dia_num_month, med_5min.ponto")) + ->get(); + foreach($result as $row) { + $row['dia_num'] = $row['dia_num_month']; + unset($row['dia_num_month']); + } + + return $result; } public static function filterRow($params, $field = 'dia_num'): array @@ -273,6 +295,10 @@ class Med5minRepository extends AbstractRepository implements Med5minContractInt array_splice($fields, 3); } + if($type === '1_mes') { + $fields = ["med_5min.ponto", "dia_num_month", "day_formatted"]; + } + if ($typeField === false) { $item = ['dem_cont', 'dem_tolerancia']; return collect($fields)->merge($item)->all(); diff --git a/routes/api.php b/routes/api.php index 3413bfd..89e4d6b 100644 --- a/routes/api.php +++ b/routes/api.php @@ -52,6 +52,7 @@ Route::middleware(['auth:sanctum', 'ability:Admin'])->group(function () { Route::post('aboutUs', [\App\Http\Controllers\AboutUsController::class, 'store']); + Route::post('sendFile', [\App\Http\Controllers\FileController::class, 'store']); }); Route::middleware(['auth:sanctum', 'ability:Client'])->group(function () {