File size: 2,480 Bytes
e657e99
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
from django.contrib import admin
from api.models import (
    Project, DataFile, PreprocessingTask, AnalysisTask, ExportTask,
    #ThirdPartyUserMapping, TokenStorage
)

@admin.register(Project)
class ProjectAdmin(admin.ModelAdmin):
    list_display = ('name', 'user', 'status', 'created_at', 'last_modified')
    list_filter = ('status', 'created_at')
    search_fields = ('name', 'description', 'user__username')
    date_hierarchy = 'created_at'

@admin.register(DataFile)
class DataFileAdmin(admin.ModelAdmin):
    list_display = ('filename', 'project', 'uploaded_at', 'wavenumber_min', 'wavenumber_max')
    list_filter = ('uploaded_at',)
    search_fields = ('filename', 'project__name')

@admin.register(PreprocessingTask)
class PreprocessingTaskAdmin(admin.ModelAdmin):
    list_display = ('id', 'project', 'status', 'created_at', 'completed_at')
    list_filter = ('status', 'created_at')
    search_fields = ('project__name',)

@admin.register(AnalysisTask)
class AnalysisTaskAdmin(admin.ModelAdmin):
    list_display = ('id', 'project', 'analysis_type', 'status', 'created_at', 'completed_at')
    list_filter = ('status', 'analysis_type', 'created_at')
    search_fields = ('project__name',)

@admin.register(ExportTask)
class ExportTaskAdmin(admin.ModelAdmin):
    list_display = ('id', 'project', 'format', 'status', 'created_at', 'completed_at')
    list_filter = ('status', 'format', 'created_at')
    search_fields = ('project__name',)


# @admin.register(ThirdPartyUserMapping)
# class ThirdPartyUserMappingAdmin(admin.ModelAdmin):
#     list_display = ('third_party_username', 'third_party_user_id', 'user', 'created_at')
#     list_filter = ('created_at', 'updated_at')
#     search_fields = ('third_party_username', 'third_party_user_id', 'user__username')
#     readonly_fields = ('created_at', 'updated_at')
#     date_hierarchy = 'created_at'


# @admin.register(TokenStorage)
# class TokenStorageAdmin(admin.ModelAdmin):
#     list_display = ('third_party_username', 'third_party_user_id', 'user', 'created_at', 'last_used')
#     list_filter = ('created_at', 'last_used')
#     search_fields = ('third_party_username', 'third_party_user_id', 'user__username', 'token')
#     readonly_fields = ('created_at', 'last_used')
#     date_hierarchy = 'created_at'
    
#     def get_readonly_fields(self, request, obj=None):
#         if obj:  # 编辑现有对象时
#             return self.readonly_fields + ('token',)
#         return self.readonly_fields