Nenhuma Descrição

model_views.py 4.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146
  1. # -*- coding: utf-8 -*-
  2. from __future__ import division
  3. import monetary
  4. from django_logit import logit
  5. from django_response import response
  6. from paginator import pagination
  7. from mch.models import AdministratorInfo, ModelInfo
  8. from utils.error.errno_utils import AdministratorStatusCode, ProductModelStatusCode
  9. @logit
  10. def model_add(request):
  11. jancode = request.POST.get('jancode', '')
  12. model_name = request.POST.get('model_name', '')
  13. model_uni_name = request.POST.get('model_uni_name', '')
  14. model_full_name = request.POST.get('model_full_name', '')
  15. image_path = request.POST.get('image_path', '')
  16. factory_yuan = request.POST.get('factory_yuan', 1000)
  17. integral = int(request.POST.get('integral', 100))
  18. category = request.POST.get('category', '')
  19. warehouse = request.POST.get('warehouse', '')
  20. admin_id = request.session.get('admin_id')
  21. try:
  22. administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True)
  23. except AdministratorInfo.DoesNotExist:
  24. return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND)
  25. ModelInfo.objects.create(
  26. brand_id=administrator.brand_id,
  27. jancode=jancode,
  28. model_name=model_name,
  29. model_uni_name=model_uni_name,
  30. model_full_name=model_full_name,
  31. category=category,
  32. warehouse=warehouse,
  33. image=image_path,
  34. factory_yuan=factory_yuan,
  35. factory_fee=monetary.Yuan2Fen(factory_yuan),
  36. integral=integral,
  37. )
  38. return response(200, 'Model Add Success', u'型号添加成功')
  39. @logit
  40. def model_delete(request):
  41. model_id = request.POST.get('model_id', '')
  42. admin_id = request.session.get('admin_id')
  43. try:
  44. administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True)
  45. except AdministratorInfo.DoesNotExist:
  46. return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND)
  47. try:
  48. modelObj = ModelInfo.objects.get(brand_id=administrator.brand_id, model_id=model_id, status=True)
  49. except ModelInfo.DoesNotExist:
  50. return response(ProductModelStatusCode.MODEL_NOT_FOUND)
  51. modelObj.status = False
  52. modelObj.save()
  53. return response(200, 'Model Delete Success', u'型号删除成功')
  54. @logit
  55. def model_update(request):
  56. jancode = request.POST.get('jancode', '')
  57. model_id = request.POST.get('model_id', '')
  58. model_name = request.POST.get('model_name', '')
  59. model_uni_name = request.POST.get('model_uni_name', '')
  60. model_full_name = request.POST.get('model_full_name', '')
  61. image_path = request.POST.get('image_path', '')
  62. factory_yuan = request.POST.get('factory_yuan', 1000)
  63. integral = int(request.POST.get('integral', 100))
  64. category = request.POST.get('category', '')
  65. warehouse = request.POST.get('warehouse', '')
  66. admin_id = request.session.get('admin_id')
  67. try:
  68. administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True)
  69. except AdministratorInfo.DoesNotExist:
  70. return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND)
  71. try:
  72. modelObj = ModelInfo.objects.get(brand_id=administrator.brand_id, model_id=model_id, status=True)
  73. except ModelInfo.DoesNotExist:
  74. return response(ProductModelStatusCode.MODEL_NOT_FOUND)
  75. if jancode:
  76. modelObj.jancode = jancode
  77. if model_name:
  78. modelObj.model_name = model_name
  79. if model_uni_name:
  80. modelObj.model_uni_name = model_uni_name
  81. if model_full_name:
  82. modelObj.model_full_name = model_full_name
  83. if category:
  84. modelObj.category = category
  85. if warehouse:
  86. modelObj.warehouse = warehouse
  87. if image_path:
  88. modelObj.distributor_province_name = image_path
  89. if factory_yuan:
  90. modelObj.factory_yuan = factory_yuan
  91. modelObj.factory_fee = monetary.Yuan2Fen(factory_yuan)
  92. if integral:
  93. modelObj.integral = integral
  94. modelObj.save()
  95. return response(200, 'Model Update Success', u'型号更新成功')
  96. @logit
  97. def model_list(request):
  98. page = request.POST.get('page', 1)
  99. num = request.POST.get('num', 20)
  100. admin_id = request.session.get('admin_id')
  101. try:
  102. administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True)
  103. except AdministratorInfo.DoesNotExist:
  104. return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND)
  105. models = ModelInfo.objects.filter(brand_id=administrator.brand_id, display=True, status=True).order_by('-pk')
  106. count = models.count()
  107. models, left = pagination(models, page, num)
  108. models = [mdl.admindata for mdl in models]
  109. return response(200, 'Get Model List Success', u'获取型号列表成功', {
  110. 'models': models,
  111. 'count': count,
  112. 'left': left,
  113. })