LangArea.py 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. #!/usr/bin/env python3
  2. # -*- coding: utf-8 -*-
  3. """
  4. @Copyright (C) ansjer cop Video Technology Co.,Ltd.All rights reserved.
  5. @AUTHOR: ASJRD018
  6. @NAME: langer
  7. @software: PyCharm
  8. @DATE: 2019/6/4 11:44
  9. @Version: python3.6
  10. @MODIFY DECORD:ansjer dev
  11. @file: LangArea.py
  12. @Contact: chanjunkai@163.com
  13. """
  14. import json
  15. from django.http import HttpResponse
  16. from django.views.generic import TemplateView
  17. from django.views.decorators.csrf import csrf_exempt
  18. from django.utils.decorators import method_decorator
  19. from object.ResponseObject import ResponseObject
  20. from django.contrib.auth.hashers import make_password, check_password
  21. from model.models import UserModel, LangSetModel, LangAreaModel
  22. import time
  23. from object.TokenObject import TokenObject
  24. # http://127.0.0.1:8000/user/register?username=admin&password=admin
  25. class LangAreaView(TemplateView):
  26. def post(self, request, *args, **kwargs):
  27. request.encoding = 'utf-8'
  28. operation = kwargs.get('operation', None)
  29. request_dict = json.loads(request.body.decode('utf-8'))
  30. return self.validate(request_dict, operation)
  31. def get(self, request, *args, **kwargs):
  32. request.encoding = 'utf-8'
  33. request_dict = request.GET
  34. operation = kwargs.get('operation', None)
  35. return self.validate(request_dict, operation)
  36. def validate(self, request_dict, operation):
  37. response = ResponseObject()
  38. token = request_dict.get('token', None)
  39. tko = TokenObject(token)
  40. if tko.code == 0:
  41. userID = tko.userID
  42. if operation == 'add':
  43. return self.do_add(request_dict, response)
  44. elif operation == 'update':
  45. return self.do_update(request_dict, response)
  46. elif operation == 'delete':
  47. return self.do_delete(request_dict, response)
  48. elif operation == 'query':
  49. return self.do_query(request_dict, response, userID)
  50. else:
  51. return response.json(414)
  52. else:
  53. return response.json(tko.code)
  54. def do_add(self, request_dict, response):
  55. lang = request_dict.get('lang', None)
  56. if lang:
  57. nowTime = int(time.time())
  58. create_dict = {
  59. 'lang': lang,
  60. 'addTime': nowTime,
  61. 'updTime': nowTime
  62. }
  63. try:
  64. LangAreaModel.objects.create(**create_dict)
  65. except Exception as e:
  66. return response.json(404, repr(e))
  67. else:
  68. return response.json(0)
  69. else:
  70. return response.json(414)
  71. def do_update(self, request_dict, response):
  72. lang = request_dict.get('lang', None)
  73. id = request_dict.get('id', None)
  74. nowTime = int(time.time())
  75. update_dict = {
  76. 'lang': lang,
  77. 'updTime': nowTime
  78. }
  79. try:
  80. LangAreaModel.objects.filter(id=id).update(**update_dict)
  81. except Exception as e:
  82. return response.json(404, repr(e))
  83. else:
  84. return response.json(0)
  85. def do_delete(self, request_dict, response):
  86. id = request_dict.get('id', None)
  87. try:
  88. LangAreaModel.objects.filter(id=id).delete()
  89. except Exception as e:
  90. return response.json(404, repr(e))
  91. else:
  92. return response.json(0)
  93. def do_query(self, request_dict, response, userID):
  94. page = int(request_dict.get('page', None))
  95. line = int(request_dict.get('line', None))
  96. if page and line:
  97. LangAreaModel.objects.filter()
  98. else:
  99. return response.json(444, 'page,line')