added debugging on the admin confirm
All checks were successful
Build frontend / build (push) Successful in 41s
All checks were successful
Build frontend / build (push) Successful in 41s
This commit is contained in:
@ -1177,12 +1177,6 @@ const RequestCard = ({ request, onConfirmDeposit, onViewDetails, confirmingDepos
|
||||
)}
|
||||
</div>
|
||||
|
||||
{canConfirmDeposit && (
|
||||
<div className="rounded-xl bg-indigo-50 px-4 py-3 text-sm text-indigo-800">
|
||||
يظهر زر تأكيد العربون فقط عندما تكون حالة الحجز <span className="font-bold">depositPaid (2)</span>.
|
||||
</div>
|
||||
)}
|
||||
|
||||
{Number(request.status) === RESERVATION_STATUS.depositConfirmed && (
|
||||
<div className="rounded-xl bg-green-50 px-4 py-3 text-sm text-green-800">
|
||||
تم تأكيد العربون من قبل الإدارة.
|
||||
@ -1372,11 +1366,21 @@ export default function BookingRequests() {
|
||||
|
||||
const handleDepositConfirmation = async (request) => {
|
||||
if (!AuthService.isAdmin()) {
|
||||
console.warn('[Admin] Deposit confirmation blocked: current user is not admin', {
|
||||
user: AuthService.getUser(),
|
||||
roles: AuthService.getRoles?.(),
|
||||
request,
|
||||
});
|
||||
toast.error('هذا الإجراء متاح للإدارة فقط');
|
||||
return;
|
||||
}
|
||||
|
||||
if (Number(request?.status) !== RESERVATION_STATUS.depositPaid) {
|
||||
console.warn('[Admin] Deposit confirmation blocked: reservation is not in depositPaid state', {
|
||||
requestId: request?.id,
|
||||
reservationId: request?.reservationId,
|
||||
status: request?.status,
|
||||
});
|
||||
toast.error('يمكن تأكيد العربون فقط عندما تكون الحالة depositPaid');
|
||||
return;
|
||||
}
|
||||
@ -1391,7 +1395,25 @@ export default function BookingRequests() {
|
||||
const parsedAdminId = Number(adminUser?.id);
|
||||
const adminId = Number.isFinite(parsedAdminId) ? parsedAdminId : adminUser?.id;
|
||||
|
||||
console.log('[Admin] Preparing admin confirm deposit request', {
|
||||
requestId: request?.id,
|
||||
reservationId,
|
||||
adminId,
|
||||
adminUser,
|
||||
status: request?.status,
|
||||
endpoint: '/Reservations/AdminConfirmDeposit/admin-confirm-deposit',
|
||||
payload: {
|
||||
reservationId,
|
||||
adminId,
|
||||
comment: null,
|
||||
},
|
||||
});
|
||||
|
||||
if (adminId == null || adminId === '') {
|
||||
console.warn('[Admin] Deposit confirmation blocked: adminId is missing', {
|
||||
adminUser,
|
||||
parsedAdminId,
|
||||
});
|
||||
toast.error('لم نتمكن من تحديد هوية المدير');
|
||||
return;
|
||||
}
|
||||
@ -1401,6 +1423,15 @@ export default function BookingRequests() {
|
||||
try {
|
||||
const result = await adminConfirmDeposit(reservationId, adminId, null);
|
||||
|
||||
console.log('[Admin] Deposit confirmation response', {
|
||||
requestId: request?.id,
|
||||
reservationId,
|
||||
status: result?.status,
|
||||
ok: result?.ok,
|
||||
message: result?.message,
|
||||
data: result?.data,
|
||||
});
|
||||
|
||||
if (!result.ok) {
|
||||
throw new Error(result.message || result.data?.message || `HTTP ${result.status}`);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user