admin.py 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. from django.contrib import admin
  2. from .models import CountReason, CountTask, CountTaskDetail
  3. @admin.register(CountReason)
  4. class CountReasonAdmin(admin.ModelAdmin):
  5. list_display = ("code", "description", "is_active", "sort", "update_time")
  6. list_filter = ("is_active",)
  7. search_fields = ("code", "description")
  8. ordering = ("sort", "code")
  9. class CountTaskDetailInline(admin.TabularInline):
  10. model = CountTaskDetail
  11. extra = 0
  12. readonly_fields = (
  13. "container_code",
  14. "goods_code",
  15. "book_qty",
  16. "initial_count_qty",
  17. "recount_qty",
  18. "final_qty",
  19. "variance_qty",
  20. "status",
  21. )
  22. @admin.register(CountTask)
  23. class CountTaskAdmin(admin.ModelAdmin):
  24. list_display = (
  25. "doc_no",
  26. "task_type",
  27. "status",
  28. "total_details",
  29. "counted_details",
  30. "variance_details",
  31. "create_time",
  32. )
  33. list_filter = ("task_type", "status")
  34. search_fields = ("doc_no",)
  35. readonly_fields = ("total_details", "counted_details", "variance_details")
  36. inlines = (CountTaskDetailInline,)
  37. @admin.register(CountTaskDetail)
  38. class CountTaskDetailAdmin(admin.ModelAdmin):
  39. list_display = (
  40. "task",
  41. "container_code",
  42. "goods_code",
  43. "book_qty",
  44. "initial_count_qty",
  45. "recount_qty",
  46. "variance_qty",
  47. "status",
  48. )
  49. list_filter = ("status",)
  50. search_fields = ("container_code", "goods_code", "task__doc_no")