from django.contrib import admin from gvsds.apps.stats.models import ( StatMetric, StatDimension, StatRecord, StatRanking, StatConfig, ) @admin.register(StatMetric) class StatMetricAdmin(admin.ModelAdmin): list_display = ('MetricCode', 'MetricName', 'MetricType', 'Unit', 'MetricStatus', 'TenantUUID', 'CreateTime') list_filter = ('MetricType', 'MetricStatus') search_fields = ('MetricCode', 'MetricName', 'TenantUUID') readonly_fields = ('MetricUUID', 'CreateTime') @admin.register(StatDimension) class StatDimensionAdmin(admin.ModelAdmin): list_display = ('DimensionCode', 'DimensionName', 'DimensionStatus', 'TenantUUID', 'CreateTime') list_filter = ('DimensionStatus',) search_fields = ('DimensionCode', 'DimensionName', 'TenantUUID') readonly_fields = ('DimensionUUID', 'CreateTime') @admin.register(StatRecord) class StatRecordAdmin(admin.ModelAdmin): list_display = ('PeriodType', 'PeriodKey', 'Metric', 'DimensionValues', 'Value', 'TenantUUID', 'CreateTime') list_filter = ('PeriodType', 'Metric') search_fields = ('PeriodKey', 'TenantUUID') readonly_fields = ('RecordUUID', 'CreateTime', 'UpdateTime') @admin.register(StatRanking) class StatRankingAdmin(admin.ModelAdmin): list_display = ('RankingPeriod', 'RankingDate', 'Metric', 'TargetID', 'Rank', 'RankValue', 'TenantUUID', 'CreateTime') list_filter = ('RankingPeriod', 'Metric') search_fields = ('TargetID', 'TargetName', 'TenantUUID') readonly_fields = ('RankingUUID', 'CreateTime') @admin.register(StatConfig) class StatConfigAdmin(admin.ModelAdmin): list_display = ('Metric', 'AutoReset', 'EnableRanking', 'RetentionDays', 'ConfigStatus', 'TenantUUID', 'CreateTime') list_filter = ('AutoReset', 'EnableRanking', 'ConfigStatus') search_fields = ('TenantUUID',) readonly_fields = ('ConfigUUID', 'CreateTime')