profile update
This commit is contained in:
@@ -28,6 +28,7 @@ class CardOrderController extends Controller
|
|||||||
CardOrder::query()
|
CardOrder::query()
|
||||||
->with(['branch', 'cardState', 'cardType'])
|
->with(['branch', 'cardState', 'cardType'])
|
||||||
->where('user_id', auth()->id())
|
->where('user_id', auth()->id())
|
||||||
|
->latest()
|
||||||
->get()
|
->get()
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25,6 +25,7 @@ class CardTransactionsController extends Controller
|
|||||||
return response()->json(
|
return response()->json(
|
||||||
CardTransaction::query()
|
CardTransaction::query()
|
||||||
->where('user_id', auth()->id())
|
->where('user_id', auth()->id())
|
||||||
|
->latest()
|
||||||
->get()
|
->get()
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
namespace App\Http\Controllers;
|
namespace App\Http\Controllers;
|
||||||
|
|
||||||
use App\Http\Requests\UpdateUserProfileRequest;
|
use App\Http\Requests\UpdateUserProfileRequest;
|
||||||
|
use App\Http\Resources\ProfileResponse;
|
||||||
use Illuminate\Http\JsonResponse;
|
use Illuminate\Http\JsonResponse;
|
||||||
|
|
||||||
class ProfileController extends Controller
|
class ProfileController extends Controller
|
||||||
@@ -15,12 +16,7 @@ class ProfileController extends Controller
|
|||||||
/** @var \App\Models\User */
|
/** @var \App\Models\User */
|
||||||
$user = auth()->user();
|
$user = auth()->user();
|
||||||
|
|
||||||
return response()->json([
|
return response()->json(new ProfileResponse($user));
|
||||||
'name' => $user->name,
|
|
||||||
'phone' => $user->phone,
|
|
||||||
'passport_serie' => $user->getOption('passport_serie'),
|
|
||||||
'passport_id' => $user->getOption('passport_id'),
|
|
||||||
]);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -36,6 +32,9 @@ class ProfileController extends Controller
|
|||||||
'phone' => $request->phone,
|
'phone' => $request->phone,
|
||||||
'options->passport_serie' => $request->passport_serie,
|
'options->passport_serie' => $request->passport_serie,
|
||||||
'options->passport_id' => $request->passport_id,
|
'options->passport_id' => $request->passport_id,
|
||||||
|
'options->card_number' => $request->card_number,
|
||||||
|
'options->card_month' => $request->card_month,
|
||||||
|
'options->card_year' => $request->card_year,
|
||||||
];
|
];
|
||||||
|
|
||||||
if ($request->password) {
|
if ($request->password) {
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
namespace App\Http\Requests;
|
namespace App\Http\Requests;
|
||||||
|
|
||||||
|
use App\Modules\DateHelper\Repositories\DateHelperRepository;
|
||||||
use App\Repos\System\Settings\Legal\PassportRepo;
|
use App\Repos\System\Settings\Legal\PassportRepo;
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Validation\Rule;
|
use Illuminate\Validation\Rule;
|
||||||
@@ -47,14 +48,29 @@ class UpdateUserProfileRequest extends FormRequest
|
|||||||
*
|
*
|
||||||
* @example I-AS
|
* @example I-AS
|
||||||
*/
|
*/
|
||||||
'passport_serie' => ['nullable', 'string', Rule::in(array_keys(PassportRepo::values()))],
|
'passport_serie' => ['sometimes', 'string', Rule::in(array_keys(PassportRepo::values()))],
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Passport id
|
* Passport id
|
||||||
*
|
*
|
||||||
* @example 100999
|
* @example 100999
|
||||||
*/
|
*/
|
||||||
'passport_id' => ['nullable', 'numeric', 'digits:6'],
|
'passport_id' => ['sometimes', 'numeric', 'digits:6'],
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @example 9934612100000543
|
||||||
|
*/
|
||||||
|
'card_number' => ['sometimes', 'digits:16'],
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @example 12
|
||||||
|
*/
|
||||||
|
'card_month' => ['sometimes', Rule::in(array_keys(DateHelperRepository::staticNumberMonths()))],
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @example 2049
|
||||||
|
*/
|
||||||
|
'card_year' => ['sometimes', Rule::in(array_keys(DateHelperRepository::staticNumberYears()))],
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
30
app/Http/Resources/ProfileResponse.php
Normal file
30
app/Http/Resources/ProfileResponse.php
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Resources;
|
||||||
|
|
||||||
|
use Illuminate\Http\Request;
|
||||||
|
use Illuminate\Http\Resources\Json\JsonResource;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @mixin \App\Models\User
|
||||||
|
*/
|
||||||
|
class ProfileResponse extends JsonResource
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Transform the resource into an array.
|
||||||
|
*
|
||||||
|
* @return array<string, mixed>
|
||||||
|
*/
|
||||||
|
public function toArray(Request $request): array
|
||||||
|
{
|
||||||
|
return [
|
||||||
|
'name' => $this->name,
|
||||||
|
'phone' => $this->phone,
|
||||||
|
'passport_serie' => $this->getOption('passport_serie'),
|
||||||
|
'passport_id' => $this->getOption('passport_id'),
|
||||||
|
'card_number' => $this->getOption('card_number'),
|
||||||
|
'card_month' => $this->getOption('card_month'),
|
||||||
|
'card_year' => $this->getOption('card_year'),
|
||||||
|
];
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -3,6 +3,7 @@
|
|||||||
namespace App\Modules\ApiAuth\Controllers;
|
namespace App\Modules\ApiAuth\Controllers;
|
||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
|
use App\Http\Resources\ProfileResponse;
|
||||||
use App\Models\User;
|
use App\Models\User;
|
||||||
use App\Modules\ApiAuth\Requests\AuthLoginRequest;
|
use App\Modules\ApiAuth\Requests\AuthLoginRequest;
|
||||||
use App\Modules\ApiAuth\Requests\AuthRegisterRequest;
|
use App\Modules\ApiAuth\Requests\AuthRegisterRequest;
|
||||||
@@ -62,12 +63,7 @@ class ApiAuthController extends Controller
|
|||||||
'success' => true,
|
'success' => true,
|
||||||
'token' => $user->createToken(bin2hex(random_bytes(20)))->plainTextToken,
|
'token' => $user->createToken(bin2hex(random_bytes(20)))->plainTextToken,
|
||||||
'message' => __('successfully verified'),
|
'message' => __('successfully verified'),
|
||||||
'user' => [
|
'user' => new ProfileResponse($user),
|
||||||
'name' => $user->name,
|
|
||||||
'phone' => $user->phone,
|
|
||||||
'passport_serie' => $user->getOption('passport_serie'),
|
|
||||||
'passport_id' => $user->getOption('passport_id'),
|
|
||||||
],
|
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user