80 lines
3.2 KiB
PHP
80 lines
3.2 KiB
PHP
|
|
<?php
|
||
|
|
|
||
|
|
namespace App\Http\Controllers\APIS\AdminApi;
|
||
|
|
|
||
|
|
use App\Http\Controllers\Controller;
|
||
|
|
use Illuminate\Http\Request;
|
||
|
|
use App\Http\Requests\CreateUserRequest;
|
||
|
|
use App\Models\User;
|
||
|
|
use App\Services\AdminService;
|
||
|
|
use Exception;
|
||
|
|
use Illuminate\Database\QueryException;
|
||
|
|
use Illuminate\Support\Facades\Log;
|
||
|
|
use Illuminate\Support\Str;
|
||
|
|
|
||
|
|
class UsersController extends Controller
|
||
|
|
{
|
||
|
|
|
||
|
|
protected $adminService;
|
||
|
|
|
||
|
|
public function __construct(AdminService $adminService)
|
||
|
|
{
|
||
|
|
$this->adminService = $adminService;
|
||
|
|
}
|
||
|
|
|
||
|
|
public function store(Request $request)
|
||
|
|
{
|
||
|
|
// dd('test');
|
||
|
|
try {
|
||
|
|
$userData = [
|
||
|
|
'email' => $request->email,
|
||
|
|
'authority' => $request->authority,
|
||
|
|
'tenantId' => $request->tenant_id,
|
||
|
|
'customerId' => $request->customer_id,
|
||
|
|
'firstName' => $request->first_name,
|
||
|
|
'lastName' => $request->last_name,
|
||
|
|
'phone' => $request->phone,
|
||
|
|
'name' => $request->name,
|
||
|
|
'description' => $request->description,
|
||
|
|
'defaultDashboardId' => $request->default_dashboard_id,
|
||
|
|
'defaultDashboardFullscreen' => $request->default_dashboard_fullscreen,
|
||
|
|
'homeDashboardId' => $request->home_dashboard_id,
|
||
|
|
'homeDashboardHideToolbar' => $request->home_dashboard_hide_toolbar,
|
||
|
|
'userCredentialsEnabled' => $request->user_credentials_enabled,
|
||
|
|
'failedLoginAttempts' => $request->failed_login_attempts,
|
||
|
|
'lastLoginTs' => $request->last_login_ts,
|
||
|
|
'version' => $request->version,
|
||
|
|
];
|
||
|
|
|
||
|
|
$response = $this->adminService->createUser($userData);
|
||
|
|
|
||
|
|
$user = new User();
|
||
|
|
$user->id = Str::uuid();
|
||
|
|
$user->created_time = now()->timestamp;
|
||
|
|
$user->tenant_id = $request->tenant_id;
|
||
|
|
$user->customer_id = $request->customer_id;
|
||
|
|
$user->email = $request->email;
|
||
|
|
$user->authority = $request->authority;
|
||
|
|
$user->first_name = $request->first_name;
|
||
|
|
$user->last_name = $request->last_name;
|
||
|
|
$user->phone = $request->phone;
|
||
|
|
$user->version = $request->version;
|
||
|
|
$user->name = $request->name;
|
||
|
|
$user->description = $request->description;
|
||
|
|
$user->default_dashboard_id = $request->default_dashboard_id;
|
||
|
|
$user->default_dashboard_fullscreen = $request->default_dashboard_fullscreen;
|
||
|
|
$user->home_dashboard_id = $request->home_dashboard_id;
|
||
|
|
$user->home_dashboard_hide_toolbar = $request->home_dashboard_hide_toolbar;
|
||
|
|
$user->user_credentials_enabled = $request->user_credentials_enabled;
|
||
|
|
$user->failed_login_attempts = $request->failed_login_attempts;
|
||
|
|
$user->last_login_ts = $request->last_login_ts;
|
||
|
|
$user->save();
|
||
|
|
|
||
|
|
return jsonResponseWithSuccessMessage(__('auth.data_fetched_successfully'), $response, 200);
|
||
|
|
} catch (QueryException $e) {
|
||
|
|
Log::error('Error in creating User ' . $e->getMessage());
|
||
|
|
return jsonResponseWithErrorMessageApi(__('auth.authentication_failed'), 401);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|