Merge branch 'master' of https://gitlab.com/kluppsoftware/smart-energia-api
This commit is contained in:
commit
7d604b1322
@ -5,20 +5,18 @@ declare(strict_types=1);
|
|||||||
namespace App\Http\Controllers;
|
namespace App\Http\Controllers;
|
||||||
|
|
||||||
use App\Http\Requests\ImportUsersWithSmartUsersRequest;
|
use App\Http\Requests\ImportUsersWithSmartUsersRequest;
|
||||||
use App\Models\User;
|
|
||||||
use App\Traits\ApiResponse;
|
use App\Traits\ApiResponse;
|
||||||
use App\Http\Resources\UserResource;
|
use App\Http\Resources\UserResource;
|
||||||
use App\Http\Requests\StoreUserRequest;
|
use App\Http\Requests\StoreUserRequest;
|
||||||
use App\Imports\UsersWithSmartUsersImport;
|
use App\Imports\UsersWithSmartUsersImport;
|
||||||
use App\Repositories\Users\UserContractInterface;
|
use App\Repositories\Users\UserContractInterface;
|
||||||
|
|
||||||
use Illuminate\Support\Str;
|
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use Illuminate\Http\Response;
|
use Illuminate\Http\Response;
|
||||||
use Illuminate\Http\JsonResponse;
|
use Illuminate\Http\JsonResponse;
|
||||||
use Illuminate\Support\Facades\Storage;
|
use Illuminate\Support\Facades\Storage;
|
||||||
use Illuminate\Support\Facades\Hash;
|
|
||||||
|
|
||||||
|
// use Maatwebsite\Excel\Excel as ExcelType;
|
||||||
use Maatwebsite\Excel\Facades\Excel;
|
use Maatwebsite\Excel\Facades\Excel;
|
||||||
|
|
||||||
class UserController extends Controller
|
class UserController extends Controller
|
||||||
@ -133,26 +131,43 @@ class UserController extends Controller
|
|||||||
|
|
||||||
public function importUserControll(ImportUsersWithSmartUsersRequest $request): JsonResponse
|
public function importUserControll(ImportUsersWithSmartUsersRequest $request): JsonResponse
|
||||||
{
|
{
|
||||||
/**
|
try {
|
||||||
* @var \Illuminate\Http\UploadedFile $file
|
/**
|
||||||
*/
|
* @var \Illuminate\Http\UploadedFile $file
|
||||||
$file_users = $request->file('file_users');
|
*/
|
||||||
/**
|
$file_users = $request->file('file_users');
|
||||||
* @var \Illuminate\Http\UploadedFile $file
|
/**
|
||||||
*/
|
* @var \Illuminate\Http\UploadedFile $file
|
||||||
$file_logos = $request->file('file_logos');
|
*/
|
||||||
|
$file_logos = $request->file('file_logos');
|
||||||
|
|
||||||
$driver = 'imports';
|
$driver = 'imports';
|
||||||
$user_imports_path = $file_users->store($driver);
|
$user_imports_path = $file_users->store($driver);
|
||||||
|
$filename = \preg_replace("/imports\//", "", $user_imports_path);
|
||||||
|
|
||||||
$filename = preg_replace("/imports\//", "", $user_imports_path);
|
// $mimeType = $file_users->getMimeType();
|
||||||
|
// $type = match($mimeType) {
|
||||||
|
// "text/csv" => ExcelType::CSV,
|
||||||
|
// "application/vnd.oasis.opendocument.spreadsheet" => ExcelType::ODS,
|
||||||
|
// "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" => ExcelType::XLSX,
|
||||||
|
// "application/vnd.ms-excel" => ExcelType::XLS,
|
||||||
|
// default => ExcelType::XLSX,
|
||||||
|
// };
|
||||||
|
|
||||||
Excel::import(new UsersWithSmartUsersImport($file_logos), $user_imports_path, $driver);
|
Excel::import(
|
||||||
|
import: new UsersWithSmartUsersImport($file_logos),
|
||||||
|
filePath: $filename,
|
||||||
|
disk: $driver,
|
||||||
|
// readerType: $type
|
||||||
|
);
|
||||||
|
|
||||||
Storage::disk($driver)->delete($filename);
|
return response()
|
||||||
|
->json(['message' => 'Dados importados com sucesso!'])
|
||||||
return response()
|
->setStatusCode(Response::HTTP_CREATED);
|
||||||
->json(['message' => 'Dados importados com sucesso!'])
|
} catch (\Throwable $th) {
|
||||||
->setStatusCode(Response::HTTP_CREATED);
|
throw $th;
|
||||||
|
} finally {
|
||||||
|
Storage::disk($driver)->delete($filename);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -24,7 +24,7 @@ class ImportUsersWithSmartUsersRequest extends FormRequest
|
|||||||
public function rules()
|
public function rules()
|
||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
'file_users' => 'required|file|mimetypes:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.ms-excel,text/csv',
|
'file_users' => 'required|file|mimetypes:text/csv,application/vnd.oasis.opendocument.spreadsheet,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.ms-excel',
|
||||||
'file_logos' => 'required|file|mimetypes:application/zip',
|
'file_logos' => 'required|file|mimetypes:application/zip',
|
||||||
'password' => function($attr, $value, $fail) {
|
'password' => function($attr, $value, $fail) {
|
||||||
if($value !== '78s7*a77xghhsa5219129382(*728292SPsk%%%shssajlk') $fail('Senha inválida');
|
if($value !== '78s7*a77xghhsa5219129382(*728292SPsk%%%shssajlk') $fail('Senha inválida');
|
||||||
|
|||||||
2
composer.lock
generated
2
composer.lock
generated
@ -4,7 +4,7 @@
|
|||||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||||
"This file is @generated automatically"
|
"This file is @generated automatically"
|
||||||
],
|
],
|
||||||
"content-hash": "8e17c44a97324e1633a29b15ecc14816",
|
"content-hash": "1f36b276eeb3b2bf2ebbb68446d3f120",
|
||||||
"packages": [
|
"packages": [
|
||||||
{
|
{
|
||||||
"name": "aws/aws-crt-php",
|
"name": "aws/aws-crt-php",
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user