Initial commit: 视频主设备管理系统 - 完整DRF后端项目
This commit is contained in:
65
device_management/admin.py
Normal file
65
device_management/admin.py
Normal file
@@ -0,0 +1,65 @@
|
||||
from django.contrib import admin
|
||||
from .models import (
|
||||
Device, DeviceSerial, DeviceIP, MaintenanceRecord, DeviceAttachment
|
||||
)
|
||||
|
||||
|
||||
class DeviceSerialInline(admin.TabularInline):
|
||||
model = DeviceSerial
|
||||
extra = 1
|
||||
|
||||
|
||||
class DeviceIPInline(admin.TabularInline):
|
||||
model = DeviceIP
|
||||
extra = 1
|
||||
|
||||
|
||||
class MaintenanceRecordInline(admin.TabularInline):
|
||||
model = MaintenanceRecord
|
||||
extra = 1
|
||||
|
||||
|
||||
class DeviceAttachmentInline(admin.TabularInline):
|
||||
model = DeviceAttachment
|
||||
extra = 1
|
||||
|
||||
|
||||
@admin.register(Device)
|
||||
class DeviceAdmin(admin.ModelAdmin):
|
||||
list_display = [
|
||||
'id', 'device_name', 'location', 'building', 'status',
|
||||
'responsible_person', 'enable_date', 'service_duration_days'
|
||||
]
|
||||
list_filter = ['status', 'location', 'building']
|
||||
search_fields = ['device_name', 'location', 'brand', 'model']
|
||||
inlines = [DeviceSerialInline, DeviceIPInline, MaintenanceRecordInline, DeviceAttachmentInline]
|
||||
date_hierarchy = 'enable_date'
|
||||
|
||||
|
||||
@admin.register(DeviceSerial)
|
||||
class DeviceSerialAdmin(admin.ModelAdmin):
|
||||
list_display = ['id', 'device', 'serial_number', 'serial_type', 'is_primary']
|
||||
list_filter = ['serial_type', 'is_primary']
|
||||
search_fields = ['serial_number']
|
||||
|
||||
|
||||
@admin.register(DeviceIP)
|
||||
class DeviceIPAdmin(admin.ModelAdmin):
|
||||
list_display = ['id', 'device', 'ip_address', 'ip_type', 'is_primary']
|
||||
list_filter = ['ip_type', 'is_primary']
|
||||
search_fields = ['ip_address']
|
||||
|
||||
|
||||
@admin.register(MaintenanceRecord)
|
||||
class MaintenanceRecordAdmin(admin.ModelAdmin):
|
||||
list_display = ['id', 'device', 'maintenance_date', 'maintenance_by', 'cost']
|
||||
list_filter = ['maintenance_date', 'maintenance_by']
|
||||
search_fields = ['fault_description', 'repair_content']
|
||||
date_hierarchy = 'maintenance_date'
|
||||
|
||||
|
||||
@admin.register(DeviceAttachment)
|
||||
class DeviceAttachmentAdmin(admin.ModelAdmin):
|
||||
list_display = ['id', 'device', 'file_name', 'file_type', 'uploaded_at']
|
||||
list_filter = ['file_type', 'uploaded_at']
|
||||
search_fields = ['file_name']
|
||||
Reference in New Issue
Block a user