feat(maintenance): Update maintenance mode status schema and UI logic
This commit is contained in:
parent
ba209593f5
commit
83743343c9
|
|
@ -52,6 +52,8 @@ export default function MaintenancePage() {
|
|||
return <div className="text-center py-8">Loading maintenance status...</div>
|
||||
}
|
||||
|
||||
const isEnabled = status?.status === 'ACTIVE'
|
||||
|
||||
return (
|
||||
<div className="space-y-6">
|
||||
<h2 className="text-3xl font-bold">Maintenance Mode</h2>
|
||||
|
|
@ -60,8 +62,8 @@ export default function MaintenancePage() {
|
|||
<CardHeader>
|
||||
<div className="flex items-center justify-between">
|
||||
<CardTitle>Maintenance Status</CardTitle>
|
||||
<Badge variant={status?.enabled ? 'destructive' : 'default'}>
|
||||
{status?.enabled ? 'Enabled' : 'Disabled'}
|
||||
<Badge variant={isEnabled ? 'destructive' : 'default'}>
|
||||
{isEnabled ? 'Enabled' : 'Disabled'}
|
||||
</Badge>
|
||||
</div>
|
||||
</CardHeader>
|
||||
|
|
@ -74,12 +76,12 @@ export default function MaintenancePage() {
|
|||
</p>
|
||||
</div>
|
||||
<Switch
|
||||
checked={status?.enabled || false}
|
||||
checked={isEnabled}
|
||||
onCheckedChange={handleToggle}
|
||||
/>
|
||||
</div>
|
||||
|
||||
{!status?.enabled && (
|
||||
{!isEnabled && (
|
||||
<div className="space-y-2">
|
||||
<Label htmlFor="message">Maintenance Message (Optional)</Label>
|
||||
<Input
|
||||
|
|
@ -94,7 +96,7 @@ export default function MaintenancePage() {
|
|||
</div>
|
||||
)}
|
||||
|
||||
{status?.enabled && status?.message && (
|
||||
{isEnabled && status?.message && (
|
||||
<div>
|
||||
<Label>Current Message</Label>
|
||||
<p className="text-sm mt-2">{status.message}</p>
|
||||
|
|
@ -105,4 +107,3 @@ export default function MaintenancePage() {
|
|||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -30,10 +30,15 @@ export interface SystemInfo {
|
|||
}
|
||||
|
||||
export interface MaintenanceStatus {
|
||||
enabled: boolean
|
||||
id: string
|
||||
status: 'ACTIVE' | 'INACTIVE'
|
||||
message?: string
|
||||
scheduledStart?: string
|
||||
scheduledEnd?: string
|
||||
scheduledAt?: string | null
|
||||
startedAt?: string | null
|
||||
endedAt?: string | null
|
||||
enabledBy?: string
|
||||
createdAt: string
|
||||
updatedAt: string
|
||||
}
|
||||
|
||||
class SystemService {
|
||||
|
|
@ -57,7 +62,7 @@ class SystemService {
|
|||
* Get maintenance mode status
|
||||
*/
|
||||
async getMaintenanceStatus(): Promise<MaintenanceStatus> {
|
||||
const response = await apiClient.get<MaintenanceStatus>('/admin/maintenance/status')
|
||||
const response = await apiClient.get<MaintenanceStatus>('/admin/maintenance')
|
||||
return response.data
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user