|
@@ -6,6 +6,7 @@ import shutil
|
|
|
import time
|
|
|
import traceback
|
|
|
|
|
|
+from django.core import serializers
|
|
|
from django.http import HttpResponse
|
|
|
from django.utils.decorators import method_decorator
|
|
|
from django.views.decorators.csrf import csrf_exempt
|
|
@@ -20,7 +21,8 @@ from Object.ResponseObject import ResponseObject
|
|
|
from Object.TokenObject import TokenObject
|
|
|
from var_dump import var_dump
|
|
|
|
|
|
-from Service.ModelService import ModelService
|
|
|
+from Service.CommonService import CommonService
|
|
|
+from Service.ModelService import ModelService, ZositechHelpModel
|
|
|
|
|
|
|
|
|
class FAQUploadView(View):
|
|
@@ -168,9 +170,9 @@ class FAQView(View):
|
|
|
def validate(self, request_dict, operation):
|
|
|
token = TokenObject(request_dict.get('token', None))
|
|
|
response = ResponseObject()
|
|
|
- if token.code != 0:
|
|
|
- return response.json(token.code)
|
|
|
-
|
|
|
+ if operation != 'zositechHelp':
|
|
|
+ if token.code != 0:
|
|
|
+ return response.json(token.code)
|
|
|
if operation == 'add':
|
|
|
return self.do_add(token, request_dict, response)
|
|
|
elif operation == 'query':
|
|
@@ -179,6 +181,10 @@ class FAQView(View):
|
|
|
return self.do_update(token, request_dict, response)
|
|
|
elif operation == 'delete':
|
|
|
return self.do_delete(token.userID, request_dict, response)
|
|
|
+ elif operation == 'zositechHelp':
|
|
|
+ return self.do_zositechHelp(request_dict, response)
|
|
|
+ elif operation == 'synZositechHelp':
|
|
|
+ return self.do_synZositechHelp(request_dict, response)
|
|
|
else:
|
|
|
return response.json(404)
|
|
|
|
|
@@ -321,4 +327,64 @@ class FAQView(View):
|
|
|
else:
|
|
|
return response.json(0)
|
|
|
else:
|
|
|
- return response.json(444)
|
|
|
+ return response.json(444)
|
|
|
+
|
|
|
+ def do_zositechHelp(self, request_dict, response):
|
|
|
+
|
|
|
+ locale = request_dict.get('locale', None)
|
|
|
+ label_names = request_dict.get('label_names', None)
|
|
|
+ origin = request_dict.get('origin', None)
|
|
|
+ help_qs = None
|
|
|
+ if label_names:
|
|
|
+ help = ZositechHelpModel.objects.filter(locale=locale, label_names__contains=label_names,
|
|
|
+ origin=origin).values()
|
|
|
+ else:
|
|
|
+ help = ZositechHelpModel.objects.filter(locale=locale, origin=origin).values()
|
|
|
+
|
|
|
+ if help.exists():
|
|
|
+ # send_dict = CommonService.qs_to_dict(help)
|
|
|
+ send_dict = list(help)
|
|
|
+
|
|
|
+ return response.json(0, send_dict)
|
|
|
+
|
|
|
+ else:
|
|
|
+ return response.json(444)
|
|
|
+
|
|
|
+ def do_synZositechHelp(self, request_dict, response):
|
|
|
+ zhresults = request_dict.get('zhresults', None).replace("\'", "XX??????XX")
|
|
|
+ #.replace("\"", "XX??????XX").replace("\'", "\"").replace("XX??????XX", "\'")
|
|
|
+ zhresults = json.loads(zhresults)
|
|
|
+
|
|
|
+ enresults = request_dict.get('enresults', None).replace("\'", "XX??????XX")
|
|
|
+ enresults = json.loads(enresults)
|
|
|
+ for data in zhresults['results']:
|
|
|
+ labname = ""
|
|
|
+ if data['label_names']:
|
|
|
+ for lab in data['label_names']:
|
|
|
+ if lab:
|
|
|
+ labname += ","
|
|
|
+ labname = lab
|
|
|
+ if not labname:
|
|
|
+ labname = None
|
|
|
+ ZositechHelpModel.objects.create(**{
|
|
|
+ 'locale': data['locale'],
|
|
|
+ 'label_names': labname,
|
|
|
+ 'origin': 'web_widget',
|
|
|
+ 'content': json.dumps(data).replace("\'", "\"").replace("XX??????XX", "\'")
|
|
|
+ })
|
|
|
+ for data in enresults['results']:
|
|
|
+ labname = ""
|
|
|
+ if data['label_names']:
|
|
|
+ for lab in data['label_names']:
|
|
|
+ if lab:
|
|
|
+ labname += ","
|
|
|
+ labname = lab
|
|
|
+ if not labname:
|
|
|
+ labname = None
|
|
|
+ ZositechHelpModel.objects.create(**{
|
|
|
+ 'locale': data['locale'],
|
|
|
+ 'label_names': labname,
|
|
|
+ 'origin': 'web_widget',
|
|
|
+ 'content': json.dumps(data).replace("\'", "\"").replace("XX??????XX", "\'")
|
|
|
+ })
|
|
|
+ return response.json(0)
|