wip
This commit is contained in:
44
app/Http/Controllers/ProfileController.php
Normal file
44
app/Http/Controllers/ProfileController.php
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Controllers;
|
||||||
|
|
||||||
|
use Illuminate\Http\JsonResponse;
|
||||||
|
use Illuminate\Http\Request;
|
||||||
|
use Illuminate\Validation\Rule;
|
||||||
|
|
||||||
|
class ProfileController extends Controller
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Users profile
|
||||||
|
*/
|
||||||
|
public function index(): JsonResponse
|
||||||
|
{
|
||||||
|
$user = auth()->user();
|
||||||
|
|
||||||
|
return response()->rest([
|
||||||
|
'first_name' => $user->first_name,
|
||||||
|
'last_name' => $user->last_name,
|
||||||
|
'phone_number' => $user->phone_number,
|
||||||
|
'address' => $user->options->get('address'),
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Store
|
||||||
|
*/
|
||||||
|
public function store(Request $request)
|
||||||
|
{
|
||||||
|
$request->validate([
|
||||||
|
'name' => ['required', 'string', 'max:255'],
|
||||||
|
'phone_number' => ['required', 'int', 'between:61000000,71999999', Rule::unique('users', 'phone_number')->ignore(auth()->id())],
|
||||||
|
'address' => ['required', 'string', 'max:255'],
|
||||||
|
]);
|
||||||
|
|
||||||
|
auth()->user()->update([
|
||||||
|
'first_name' => $request->name,
|
||||||
|
'phone_number' => $request->phone_number,
|
||||||
|
]);
|
||||||
|
|
||||||
|
return response()->rest();
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -9,6 +9,8 @@ use App\Modules\ApiAuth\Requests\AuthRegisterRequest;
|
|||||||
use App\Modules\ApiAuth\Requests\AuthVerifyRequest;
|
use App\Modules\ApiAuth\Requests\AuthVerifyRequest;
|
||||||
use App\Repos\UserRepo;
|
use App\Repos\UserRepo;
|
||||||
use Illuminate\Http\JsonResponse;
|
use Illuminate\Http\JsonResponse;
|
||||||
|
use Illuminate\Support\Facades\Hash;
|
||||||
|
use Illuminate\Validation\ValidationException;
|
||||||
|
|
||||||
class ApiAuthController extends Controller
|
class ApiAuthController extends Controller
|
||||||
{
|
{
|
||||||
@@ -31,6 +33,14 @@ class ApiAuthController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function login(AuthLoginRequest $request): JsonResponse
|
public function login(AuthLoginRequest $request): JsonResponse
|
||||||
{
|
{
|
||||||
|
$user = User::where('phone', $request->phone)->first();
|
||||||
|
|
||||||
|
if (! $user || ! Hash::check($request->password, $user->password)) {
|
||||||
|
throw ValidationException::withMessages([
|
||||||
|
'email' => ['The provided credentials are incorrect.'],
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
sendSMSVerification($request->phone);
|
sendSMSVerification($request->phone);
|
||||||
|
|
||||||
return response()->json([
|
return response()->json([
|
||||||
|
|||||||
@@ -21,6 +21,13 @@ class AuthLoginRequest extends FormRequest
|
|||||||
* @example 65707012
|
* @example 65707012
|
||||||
*/
|
*/
|
||||||
'phone' => ['required', 'integer', 'between:61000000,71999999'],
|
'phone' => ['required', 'integer', 'between:61000000,71999999'],
|
||||||
|
|
||||||
|
/**
|
||||||
|
* User's password
|
||||||
|
*
|
||||||
|
* @example MahmytAllaberdiyevPassword
|
||||||
|
*/
|
||||||
|
'password' => ['required', 'string', 'max:255'],
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,7 +17,6 @@ class AuthRegisterRequest extends FormRequest
|
|||||||
/**
|
/**
|
||||||
* Phone number to authenticate
|
* Phone number to authenticate
|
||||||
*
|
*
|
||||||
* @var int
|
|
||||||
* @example 65707012
|
* @example 65707012
|
||||||
*/
|
*/
|
||||||
'phone' => ['required', 'integer', 'between:61000000,71999999', 'unique:users,phone'],
|
'phone' => ['required', 'integer', 'between:61000000,71999999', 'unique:users,phone'],
|
||||||
@@ -25,10 +24,16 @@ class AuthRegisterRequest extends FormRequest
|
|||||||
/**
|
/**
|
||||||
* User's name
|
* User's name
|
||||||
*
|
*
|
||||||
* @var string
|
|
||||||
* @example Mahmyt Allaberdiyev
|
* @example Mahmyt Allaberdiyev
|
||||||
*/
|
*/
|
||||||
'name' => ['required', 'string', 'max:255'],
|
'name' => ['required', 'string', 'max:255'],
|
||||||
|
|
||||||
|
/**
|
||||||
|
* User's password
|
||||||
|
*
|
||||||
|
* @example MahmytAllaberdiyevPassword
|
||||||
|
*/
|
||||||
|
'password' => ['required', 'string', 'max:255'],
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,7 +3,6 @@
|
|||||||
namespace App\Modules\VisaMasterPaymentOrder\Nova\Resources\Concerns;
|
namespace App\Modules\VisaMasterPaymentOrder\Nova\Resources\Concerns;
|
||||||
|
|
||||||
use App\Modules\VisaMasterPaymentOrder\Models\VisaMasterPaymentOrder;
|
use App\Modules\VisaMasterPaymentOrder\Models\VisaMasterPaymentOrder;
|
||||||
use App\Modules\VisaMasterPaymentOrder\Nova\Resources\VisaMasterPaymentOrderFileFields;
|
|
||||||
use App\Nova\Resources\Branch\Branch;
|
use App\Nova\Resources\Branch\Branch;
|
||||||
use App\Repos\Order\OrderRepo;
|
use App\Repos\Order\OrderRepo;
|
||||||
use App\Repos\System\Settings\Legal\PassportRepo;
|
use App\Repos\System\Settings\Legal\PassportRepo;
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ class UserRepo
|
|||||||
'name' => $request->name,
|
'name' => $request->name,
|
||||||
'username' => static::generateUsername($request->name),
|
'username' => static::generateUsername($request->name),
|
||||||
'locale' => app()->getLocale(),
|
'locale' => app()->getLocale(),
|
||||||
'password' => Str::random(6),
|
'password' => $request->password,
|
||||||
'active' => true,
|
'active' => true,
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
use App\Http\Controllers\ProfileController;
|
||||||
use App\Modules\ApiAuth\Controllers\ApiAuthController;
|
use App\Modules\ApiAuth\Controllers\ApiAuthController;
|
||||||
use Illuminate\Support\Facades\Route;
|
use Illuminate\Support\Facades\Route;
|
||||||
|
|
||||||
@@ -23,6 +24,6 @@ Route::middleware('auth:sanctum')
|
|||||||
|
|
||||||
Route::middleware(['auth:sanctum', 'banned'])->group(function () {
|
Route::middleware(['auth:sanctum', 'banned'])->group(function () {
|
||||||
// Profile...
|
// Profile...
|
||||||
// Route::get('profile', [ProfileController::class, 'index']);
|
Route::get('profile', [ProfileController::class, 'index']);
|
||||||
// Route::post('profile', [ProfileController::class, 'store']);
|
Route::post('profile', [ProfileController::class, 'store']);
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user