Applied manual JWT check and restored all driver fields62

This commit is contained in:
Hamza-Ayed
2026-04-25 14:21:32 +03:00
parent ee9c0f3a04
commit a724680755
3 changed files with 29 additions and 0 deletions

View File

@@ -149,4 +149,31 @@ class ProfileController extends Controller
return response()->json(['status' => 'success', 'message' => 'Email updated']);
}
/**
* POST /v2/profile/driver/shamcash
*/
public function updateShamCash(Request $request): JsonResponse
{
$id = $request->attributes->get('_jwt_user_id');
$driver = Driver::active()->byId($id)->first();
if (!$driver) {
return response()->json(['status' => 'failure', 'message' => 'Not found'], 404);
}
$accountBank = $request->input('accountBank') ?? $request->input('accountNumber');
$bankCode = $request->input('bankCode') ?? $request->input('paymentProvider');
if (!$accountBank || !$bankCode) {
return response()->json(['status' => 'failure', 'message' => 'Missing fields'], 400);
}
$driver->update([
'accountBank' => $this->enc->encrypt($accountBank),
'bankCode' => $bankCode,
]);
return response()->json(['status' => 'success', 'message' => 'Sham Cash details updated']);
}
}

View File

@@ -41,6 +41,7 @@ class Driver extends Model
public const ENCRYPTED_FIELDS = [
'first_name', 'last_name', 'phone', 'gender', 'email',
'national_number', 'name_arabic', 'address', 'birthdate',
'accountBank',
];
// ── Relationships ──

View File

@@ -111,6 +111,7 @@ Route::prefix('v2')->middleware(['hmac.auth', 'jwt.auth'])->group(function () {
Route::get('/profile/driver', [ProfileController::class, 'driver']);
Route::match(['post', 'put'], '/profile/passenger', [ProfileController::class, 'updatePassenger']);
Route::match(['post', 'put'], '/profile/driver/email', [ProfileController::class, 'updateDriverEmail']);
Route::post('/profile/driver/shamcash', [ProfileController::class, 'updateShamCash']);
// ── Wallet ──
// All wallet operations (balance, funds, transactions) are handled by the