# #!/usr/bin/python3.6 # # -*- coding: utf-8 -*- # # # # Copyright (C) 2022 # # # @Time : 2022/3/9 9:20 # # @Author : ming # # @Email : zhangdongming@asj6.wecom.work # # @File : SurveysController.py # # @Software: PyCharm # import time # import json # from django.utils.decorators import method_decorator # from django.views.decorators.csrf import csrf_exempt # from django.views.generic.base import View # from Object.TokenObject import TokenObject # from Object.ResponseObject import ResponseObject # from Model.models import Surveys, SurveysTitle, Order_Model, SurveysAnswer # from Service.CommonService import CommonService # # # class SurveysView(View): # @method_decorator(csrf_exempt) # def dispatch(self, *args, **kwargs): # return super(SurveysView, self).dispatch(*args, **kwargs) # # def get(self, request, *args, **kwargs): # request.encoding = 'utf-8' # operation = kwargs.get('operation') # return self.validation(request.GET, request, operation) # # def post(self, request, *args, **kwargs): # request.encoding = 'utf-8' # operation = kwargs.get('operation') # return self.validation(request.POST, request, operation) # # def validation(self, request_dict, request, operation): # response = ResponseObject(request_dict.get('language', 'en'), 'pc') # tko = TokenObject(request.META.get('HTTP_AUTHORIZATION'), returntpye='pc') # if not tko: # return response.json(309) # if operation == 'get/info': # token = TokenObject(request.META.get('HTTP_AUTHORIZATION')) # response = ResponseObject() # if token.code != 0: # return response.json(token.code) # userID = token.userID # return self.check_stock_user(userID, request_dict, response) # if operation == 'answer/save': # token = TokenObject(request.META.get('HTTP_AUTHORIZATION')) # response = ResponseObject() # if token.code != 0: # return response.json(token.code) # ip = CommonService.get_ip_address(request) # userID = token.userID # return self.answer_save(userID, ip, request_dict, response) # if operation == 'save': # return self.save(request_dict, response) # if operation == 'edit': # return self.edit(request_dict, response) # if operation == 'list': # return self.get_list(request_dict, response) # if operation == 'title/save': # return self.title_save(request_dict, response) # if operation == 'title/edit': # return self.title_edit(request_dict, response) # if operation == 'title/del': # return self.title_del(request_dict, response) # return response.json(0) # # def check_stock_user(self, user_id, request_dict, response): # order = Order_Model.objects.filter(userID=user_id, status=1, order_type=0) # if order.count() == 0: # return response.json(10030) # try: # surveys = Surveys.objects.filter(user_type=1) # if not all(surveys): # return response.json(173) # result = surveys[0] # startTime = time.localtime(result.start_time) # endTime = time.localtime(result.end_time) # data = { # 'no': result.no, # 'userType': result.user_type, # 'startTime': time.strftime("%Y-%m-%d %H:%M:%S", startTime), # 'endTime': time.strftime("%Y-%m-%d %H:%M:%S", endTime), # 'isHide': result.is_hide, # 'page': 'http://192.168.136.198/surveys?token=' if result.is_hide == 1 else '' # } # return response.json(0, data) # except Exception as e: # print(e) # return response.json(500, repr(e)) # # def answer_save(self, userId, ip, request_dict, response): # no = request_dict.get('no', None) # if not no: # return response.json(10, 'no is null') # survey = Surveys.objects.filter(id=1) # if survey.exists(): # s_id = survey.id # survey_title = SurveysTitle.objects.filter(survey=s_id) # if survey_title.exists(): # score = request_dict.get('score', None) # topicA = request_dict.get('topicA', None) # topicB = request_dict.get('topicB', None) # topicC = request_dict.get('topicC', None) # topicD = request_dict.get('topicD', None) # topicF = request_dict.get('topicF', None) # answer = SurveysAnswer(title=survey_title.id, user=userId, ip=ip, answer_1=score, answer_2=topicA, # answer_3=topicB, answer_4=topicC, answer_5=topicD, answer_6=topicF) # result = answer.save() # print(result) # return response.json(0) # # def get_list(self, request_dict, response): # pageNo = request_dict.get('pageNo', None) # pageSize = request_dict.get('pageSize', None) # if not all([pageNo, pageSize]): # return response.json(444) # # page = int(pageNo) # line = int(pageSize) # try: # request_qs = Surveys.objects.all() # total = request_qs.count() # surveys_list = request_qs.filter().order_by('-created_time')[(page - 1) * line:page * line] # result_list = [] # for surveys in surveys_list: # start_time = time.localtime(surveys.start_time) # endT_time = time.localtime(surveys.end_time) # created_time = time.localtime(surveys.created_time) # result_list.append({ # 'id': surveys.id, # 'no': surveys.no, # 'userType': surveys.user_type, # 'startTime': time.strftime("%Y-%m-%d %H:%M:%S", start_time), # 'endTime': time.strftime("%Y-%m-%d %H:%M:%S", endT_time), # 'isHide': surveys.is_hide, # 'createdTime': time.strftime("%Y-%m-%d %H:%M:%S", created_time), # }) # return response.json(0, {'list': result_list, 'total': total}) # except Exception as e: # print(e) # return response.json(500, repr(e)) # # def save(self, request_dict, response): # no = request_dict.get('no', None) # if no: # if Surveys.objects.filter(no=no).exists(): # return response.json(10, '已存在') # no = request_dict.get('no', None) # userType = request_dict.get('userType', None) # startTime = request_dict.get('dateTime[0]', None) # endTime = request_dict.get('dateTime[1]', None) # isHide = request_dict.get('isHide', None) # isHide = 1 if isHide == 'true' else 0 # createdTime = int(time.time()) # try: # surveys = Surveys(no=no, user_type=userType, start_time=int(startTime), # end_time=endTime, is_hide=isHide, created_time=int(createdTime)) # surveys.save() # return response.json(0) # except Exception as e: # print(e) # return response.json(500, repr(e)) # return response.json(0) # # def edit(self, request_dict, response): # sur_id = request_dict.get('id', None) # if not sur_id: # return response.json(10, 'id不存在') # # userType = request_dict.get('userType', None) # startTime = request_dict.get('startTime', None) # endTime = request_dict.get('endTime', None) # isHide = request_dict.get('isHide', None) # surveys = Surveys.objects.filter(id=sur_id) # surveys.update(user_type=int(userType), start_time=int(startTime), end_time=int(endTime), is_hide=int(isHide)) # return response.json(0) # # def delete(self, request_dict, response): # sId = request_dict.get('id', None) # if not sId: # return response.json(10, 'id不存在') # Surveys.objects.filter(id=sId).delete() # response.json(0) # # def title_save(self, request_dict, response): # surveyId = request_dict.get('surveyId', None) # if not surveyId: # return response(10, 'id不存在') # content = request_dict.get('content', None) # titleType = request_dict.get('titleType', None) # isRequired = request_dict.get('isRequired', None) # createdTime = int(time.time()) # try: # surveys_title = SurveysTitle(surveys_id=surveyId, title_content=content, title_type=titleType, # is_required=isRequired, created_time=createdTime) # surveys_title.save() # return response.json(0) # except Exception as e: # print(e) # return response.json(500, repr(e)) # # def title_edit(self, request_dict, response): # title_id = request_dict.get('id', None) # if not title_id: # return response.json(10, 'id不存在') # # content = request_dict.get('content', None) # titleType = request_dict.get('titleType', None) # isRequired = request_dict.get('isRequired', None) # surveys_title = SurveysTitle.objects.filter(id=title_id) # surveys_title.update(title_content=content, title_type=int(titleType), is_required=int(isRequired)) # return response.json(0) # # def title_del(self, request_dict, response): # title_id = request_dict.get('id', None) # if not title_id: # return response.json(10, 'id不存在') # SurveysTitle.objects.filter(id=title_id).delete() # return response.json(0)