diff --git a/src/app/admin/rentals/[id]/page.tsx b/src/app/admin/rentals/[id]/page.tsx index 550d9e6..bf66288 100644 --- a/src/app/admin/rentals/[id]/page.tsx +++ b/src/app/admin/rentals/[id]/page.tsx @@ -289,6 +289,13 @@ export default function RentalDetailPage() { const [lockReason, setLockReason] = useState(''); const [rejectNote, setRejectNote] = useState(''); const [showRejectModal, setShowRejectModal] = useState(false); + const [showDamageModal, setShowDamageModal] = useState(false); + const [showSmsModal, setShowSmsModal] = useState(false); + const [damageDesc, setDamageDesc] = useState(''); + const [damageSeverity, setDamageSeverity] = useState<'minor' | 'moderate' | 'severe'>('minor'); + const [smsText, setSmsText] = useState(''); + const [damages, setDamages] = useState(mockDamageHistory); + const [documents, setDocuments] = useState(mockDocuments); const [acceptPermission, setAcceptPermission] = useState(false); const [rejectPermission, setRejectPermission] = useState(false); @@ -447,6 +454,21 @@ export default function RentalDetailPage() { setNewNote(''); }; + const handleReportDamage = () => { + if (!damageDesc.trim()) return; + setDamages(prev => [...prev, { id: `DMG-${Date.now()}`, date: new Date().toISOString().split('T')[0], description: damageDesc, severity: damageSeverity, status: 'reported' }]); + setDamageDesc(''); + setDamageSeverity('minor'); + setShowDamageModal(false); + }; + + const handleSendSms = () => { + if (!smsText.trim()) return; + alert(`SMS sent to ${rental.userPhone}: ${smsText}`); + setSmsText(''); + setShowSmsModal(false); + }; + const statusBadge = getStatusBadge(rental.status); const typeBadge = getTypeBadge(rental.type); const paymentBadge = getPaymentStatusBadge(rental.paymentStatus); @@ -601,6 +623,9 @@ export default function RentalDetailPage() { SMS + @@ -783,12 +808,12 @@ export default function RentalDetailPage() {

Damage History

-
- {mockDamageHistory.map(damage => ( + {damages.map(damage => (

{damage.description}

@@ -830,9 +855,17 @@ export default function RentalDetailPage() {

{doc.uploadedAt}

- + +
))} @@ -990,6 +1023,87 @@ export default function RentalDetailPage() { )} + + {showDamageModal && ( +
+
+
+

+ Report Damage +

+ +
+
+
+ +