拍爱

admin.py 3.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. # -*- coding: utf-8 -*-
  2. from djadmin import DeleteModelAdmin
  3. from django.conf import settings
  4. from django.contrib import admin
  5. from django.contrib.auth.hashers import check_password, make_password
  6. from pysnippets.strsnippets import strip
  7. from mch.models import BrandInfo, DistributorInfo, LatestAppInfo, ModelImageInfo, ModelInfo, OperatorInfo
  8. class OperatorInfoAdmin(DeleteModelAdmin, admin.ModelAdmin):
  9. list_display = ('operator_id', 'phone', 'password', 'encryption', 'name', 'brand_id', 'brand_name', 'user_status', 'status', 'created_at', 'updated_at')
  10. list_filter = ('user_status', 'status', 'brand_name')
  11. readonly_fields = ('encryption', 'brand_name')
  12. def save_model(self, request, obj, form, change):
  13. obj.phone = strip(obj.phone)
  14. obj.password = strip(obj.password)
  15. if obj.password:
  16. obj.encryption = make_password(obj.password, settings.MAKE_PASSWORD_SALT, settings.MAKE_PASSWORD_HASHER)
  17. obj.password = ''
  18. obj.brand_id = strip(obj.brand_id)
  19. try:
  20. obj.brand_name = BrandInfo.objects.get(brand_id=obj.brand_id).brand_name
  21. except BrandInfo.DoesNotExist:
  22. obj.brand_name = ''
  23. obj.save()
  24. class BrandInfoAdmin(DeleteModelAdmin, admin.ModelAdmin):
  25. list_display = ('brand_id', 'brand_name', 'brand_descr', 'brand_logo', 'position', 'status', 'created_at', 'updated_at')
  26. class ModelInfoAdmin(DeleteModelAdmin, admin.ModelAdmin):
  27. list_display = ('brand_id', 'brand_name', 'model_id', 'model_name', 'model_descr', 'position', 'status', 'created_at', 'updated_at')
  28. list_filter = ('brand_name', 'status')
  29. def save_model(self, request, obj, form, change):
  30. obj.brand_id = strip(obj.brand_id)
  31. try:
  32. obj.brand_name = BrandInfo.objects.get(brand_id=obj.brand_id).brand_name
  33. except BrandInfo.DoesNotExist:
  34. obj.brand_name = ''
  35. obj.save()
  36. class ModelImageInfoAdmin(DeleteModelAdmin, admin.ModelAdmin):
  37. list_display = ('model_id', 'model_name', 'image', 'url', 'position', 'status', 'created_at', 'updated_at')
  38. list_filter = ('model_name', 'status')
  39. def save_model(self, request, obj, form, change):
  40. obj.model_id = strip(obj.model_id)
  41. try:
  42. obj.model_name = ModelInfo.objects.get(model_id=obj.model_id).model_name
  43. except BrandInfo.DoesNotExist:
  44. obj.model_name = ''
  45. obj.save()
  46. class DistributorInfoAdmin(DeleteModelAdmin, admin.ModelAdmin):
  47. list_display = ('brand_id', 'brand_name', 'distributor_id', 'distributor_name', 'distributor_descr', 'position', 'status', 'created_at', 'updated_at')
  48. list_filter = ('brand_name', 'status')
  49. def save_model(self, request, obj, form, change):
  50. obj.brand_id = strip(obj.brand_id)
  51. try:
  52. obj.brand_name = BrandInfo.objects.get(brand_id=obj.brand_id).brand_name
  53. except BrandInfo.DoesNotExist:
  54. obj.brand_name = ''
  55. obj.save()
  56. class LatestAppInfoAdmin(admin.ModelAdmin):
  57. list_display = ('latest_adr_version_code', 'latest_adr_version_name', 'latest_adr_app', 'latest_adr_url', 'status', 'created_at', 'updated_at')
  58. list_filter = ('status', )
  59. def save_model(self, request, obj, form, change):
  60. obj.latest_adr_version_name = strip(obj.latest_adr_version_name)
  61. obj.latest_adr_app = strip(obj.latest_adr_app)
  62. obj.latest_adr_url = strip(obj.latest_adr_url)
  63. obj.save()
  64. admin.site.register(OperatorInfo, OperatorInfoAdmin)
  65. admin.site.register(BrandInfo, BrandInfoAdmin)
  66. admin.site.register(ModelInfo, ModelInfoAdmin)
  67. admin.site.register(ModelImageInfo, ModelImageInfoAdmin)
  68. admin.site.register(DistributorInfo, DistributorInfoAdmin)
  69. admin.site.register(LatestAppInfo, LatestAppInfoAdmin)