EmailUserController.py 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. import boto3
  2. from boto3 import Session
  3. from django.views import View
  4. from model.models import EmailSortModel, EmailConfigModel
  5. from Utils.NeteaseMail import NeteaseMail
  6. from django.views.generic import TemplateView
  7. from object.ResponseObject import ResponseObject
  8. from model.models import EmailConfigModel
  9. class EmailUserView(TemplateView):
  10. def get(self, request, *args, **kwargs):
  11. request.encoding = 'utf-8'
  12. operation = kwargs.get('operation')
  13. return self.validation(request.GET, request, operation)
  14. def post(self, request, *args, **kwargs):
  15. request.encoding = 'utf-8'
  16. operation = kwargs.get('operation')
  17. return self.validation(request.POST, request, operation)
  18. def validation(self, request_dict, request, operation):
  19. response = ResponseObject()
  20. if operation is None:
  21. return response.json(444, 'error path')
  22. else:
  23. if operation == 'do_add':
  24. return self.do_add(request_dict, response)
  25. elif operation == 'do_delete':
  26. return self.do_delete(request_dict, response)
  27. elif operation == 'do_update':
  28. return self.do_update(request_dict, response)
  29. elif operation == 'do_query':
  30. return self.do_query(request_dict, response)
  31. def do_add(self, request_dict, response):
  32. fromaddr = request_dict.get('fromaddr', None)
  33. password = request_dict.get('password', None)
  34. emailservername = request_dict.get('emailservername', None)
  35. emailserver = request_dict.get('emailserver', None)
  36. emailserverport = request_dict.get('emailserverport', None)
  37. emailserverportagreement = request_dict.get('emailserverportagreement', None)
  38. emailtag = request_dict.get('emailtag', None)
  39. emailproject_id = request_dict.get('emailproject_id', None)
  40. emailsort_id = request_dict.get('emailsort_id', None)
  41. addlist = EmailConfigModel.objects.create(fromaddr=fromaddr, password=password, emailservername=emailservername,
  42. emailserver=emailserver, emailserverport=emailserverport,
  43. emailserverportagreement=emailserverportagreement,
  44. emailtag=emailtag, emailproject_id=emailproject_id,
  45. emailsort_id=emailsort_id)
  46. addlist.save()
  47. return response.json(0)
  48. def do_delete(self, request_dict, response):
  49. emailid = request_dict.get('emailid', None)
  50. if emailid:
  51. EmailConfigModel.objects.filter(emailid=emailid).delete()
  52. return response.json(0)
  53. else:
  54. return response.json(444, 'id does not exist')
  55. def do_update(self, request_dict, response):
  56. emailid = request_dict.get('emailid', None)
  57. fromaddr = request_dict.get('fromaddr', None)
  58. password = request_dict.get('password', None)
  59. emailservername = request_dict.get('emailservername', None)
  60. emailserver = request_dict.get('emailserver', None)
  61. emailserverport = request_dict.get('emailserverport', None)
  62. emailserverportagreement = request_dict.get('emailserverportagreement', None)
  63. emailtag = request_dict.get('emailtag', None)
  64. emailproject_id = request_dict.get('emailproject_id', None)
  65. emailsort_id = request_dict.get('emailsort_id', None)
  66. EmailConfigModel.objects.filter(emailid=emailid).update(
  67. fromaddr=fromaddr, password=password,
  68. emailservername=emailservername,
  69. emailserver=emailserver, emailserverport=emailserverport,
  70. emailserverportagreement=emailserverportagreement,
  71. emailtag=emailtag, emailproject_id=emailproject_id,
  72. emailsort_id=emailsort_id)
  73. return response.json(0)
  74. def do_query(self, request_dict, response):
  75. a = EmailConfigModel.objects.all()
  76. b = {}
  77. c = []
  78. for i in a:
  79. b['emailid'] = i.emailid
  80. b['fromaddr'] = i.fromaddr
  81. b['password'] = i.password
  82. b['emailservername'] = i.emailservername
  83. b['emailserver'] = i.emailserver
  84. b['emailserverport'] = i.emailserverport
  85. b['emailserverportagreement'] = i.emailserverportagreement
  86. b['emailtag'] = i.emailtag
  87. b['emailproject_id'] = i.emailproject_id
  88. b['emailsort_id'] = i.emailsort_id
  89. c.append(b.copy())
  90. return response.json(0, c)