LangProjectController.py 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. #!/usr/bin/env python3
  2. # -*- coding: utf-8 -*-
  3. from django.views.generic.base import View, TemplateView
  4. from model.models import UserModel, LangProjectModel
  5. from object.ResponseObject import ResponseObject
  6. from object.TokenObject import TokenObject
  7. class LangProjectView(TemplateView):
  8. def post(self, request, *args, **kwargs):
  9. request.encoding = 'utf-8'
  10. request_dict = request.POST
  11. operation = kwargs.get('operation', None)
  12. return self.validate(request_dict, operation)
  13. def get(self, request, *args, **kwargs):
  14. request.encoding = 'utf-8'
  15. request_dict = request.GET
  16. operation = kwargs.get('operation', None)
  17. return self.validate(request_dict, operation)
  18. def validate(self, request_dict, operation):
  19. response = ResponseObject()
  20. token = request_dict.get('token', None)
  21. tko = TokenObject(token)
  22. if tko.code == 0:
  23. userID = tko.userID
  24. user_qs = UserModel.objects.filter(id=userID, username='admin')
  25. if not user_qs.exists():
  26. return response.json(403)
  27. if operation == 'query':
  28. return self.do_query(request_dict, response)
  29. else:
  30. return response.json(403)
  31. def do_query(self, request_dict, response):
  32. lp_qs = LangProjectModel.objects.filter().values()
  33. return response.json(0, list(lp_qs))