No Description

model_views.py 5.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  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. image2_path = request.POST.get('image2_path', '')
  17. factory_yuan = request.POST.get('factory_yuan', 1000)
  18. integral = int(request.POST.get('integral', 100))
  19. category = request.POST.get('category', '')
  20. warehouse = request.POST.get('warehouse', '')
  21. admin_id = request.session.get('admin_id')
  22. is_important = request.POST.get('is_important', 0)
  23. try:
  24. administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True)
  25. except AdministratorInfo.DoesNotExist:
  26. return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND)
  27. ModelInfo.objects.create(
  28. brand_id=administrator.brand_id,
  29. jancode=jancode,
  30. model_name=model_name,
  31. model_uni_name=model_uni_name,
  32. model_full_name=model_full_name,
  33. category=category,
  34. warehouse=warehouse,
  35. image=image_path,
  36. image2=image2_path,
  37. factory_yuan=factory_yuan,
  38. factory_fee=monetary.Yuan2Fen(factory_yuan),
  39. integral=integral,
  40. is_important=is_important,
  41. )
  42. return response(200, 'Model Add Success', u'型号添加成功')
  43. @logit
  44. def model_delete(request):
  45. model_id = request.POST.get('model_id', '')
  46. admin_id = request.session.get('admin_id')
  47. try:
  48. administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True)
  49. except AdministratorInfo.DoesNotExist:
  50. return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND)
  51. try:
  52. modelObj = ModelInfo.objects.get(brand_id=administrator.brand_id, model_id=model_id, status=True)
  53. except ModelInfo.DoesNotExist:
  54. return response(ProductModelStatusCode.MODEL_NOT_FOUND)
  55. modelObj.status = False
  56. modelObj.save()
  57. return response(200, 'Model Delete Success', u'型号删除成功')
  58. @logit
  59. def model_update(request):
  60. jancode = request.POST.get('jancode', '')
  61. model_id = request.POST.get('model_id', '')
  62. model_name = request.POST.get('model_name', '')
  63. model_uni_name = request.POST.get('model_uni_name', '')
  64. model_full_name = request.POST.get('model_full_name', '')
  65. image_path = request.POST.get('image_path', '')
  66. image2_path = request.POST.get('image2_path', '')
  67. factory_yuan = request.POST.get('factory_yuan', 1000)
  68. integral = int(request.POST.get('integral', 100))
  69. category = request.POST.get('category', '')
  70. warehouse = request.POST.get('warehouse', '')
  71. admin_id = request.session.get('admin_id')
  72. is_important = request.POST.get('is_important', 0)
  73. try:
  74. administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True)
  75. except AdministratorInfo.DoesNotExist:
  76. return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND)
  77. try:
  78. modelObj = ModelInfo.objects.get(brand_id=administrator.brand_id, model_id=model_id, status=True)
  79. except ModelInfo.DoesNotExist:
  80. return response(ProductModelStatusCode.MODEL_NOT_FOUND)
  81. if jancode:
  82. modelObj.jancode = jancode
  83. if model_name:
  84. modelObj.model_name = model_name
  85. if model_uni_name:
  86. modelObj.model_uni_name = model_uni_name
  87. if model_full_name:
  88. modelObj.model_full_name = model_full_name
  89. if category:
  90. modelObj.category = category
  91. if warehouse:
  92. modelObj.warehouse = warehouse
  93. if image_path:
  94. modelObj.image = image_path
  95. if image2_path:
  96. modelObj.image2 = image2_path
  97. if factory_yuan:
  98. modelObj.factory_yuan = factory_yuan
  99. modelObj.factory_fee = monetary.Yuan2Fen(factory_yuan)
  100. if integral:
  101. modelObj.integral = integral
  102. modelObj.is_important = is_important
  103. modelObj.save()
  104. return response(200, 'Model Update Success', u'型号更新成功')
  105. @logit
  106. def model_list(request):
  107. page = request.POST.get('page', 1)
  108. num = request.POST.get('num', 20)
  109. admin_id = request.session.get('admin_id')
  110. try:
  111. administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True)
  112. except AdministratorInfo.DoesNotExist:
  113. return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND)
  114. models = ModelInfo.objects.filter(brand_id=administrator.brand_id, display=True, status=True).order_by('-pk')
  115. count = models.count()
  116. models, left = pagination(models, page, num)
  117. models = [mdl.admindata for mdl in models]
  118. return response(200, 'Get Model List Success', u'获取型号列表成功', {
  119. 'models': models,
  120. 'count': count,
  121. 'left': left,
  122. })