Просмотр исходного кода

升级Python版本及Python库

peng 2 лет назад
Родитель
Сommit
2281fbe7dc

+ 5 - 27
AdminController/UserManageController.py

@@ -12,47 +12,25 @@
 @Contact: chanjunkai@163.com
 @Contact: chanjunkai@163.com
 """
 """
 import datetime
 import datetime
-import traceback
 import time
 import time
-import logging
-import jwt
 import oss2
 import oss2
-import simplejson
-import simplejson as json
-import requests
-import xlwt
 from django.contrib.auth.hashers import make_password, check_password  # 对密码加密模块
 from django.contrib.auth.hashers import make_password, check_password  # 对密码加密模块
 from django.db import transaction
 from django.db import transaction
 from django.db.models import Q
 from django.db.models import Q
-from django.http import HttpResponseRedirect
 from django.utils.decorators import method_decorator
 from django.utils.decorators import method_decorator
 from django.utils.timezone import utc
 from django.utils.timezone import utc
 from django.views.decorators.csrf import csrf_exempt
 from django.views.decorators.csrf import csrf_exempt
 from django.views.generic import TemplateView
 from django.views.generic import TemplateView
-from jwt.algorithms import RSAAlgorithm
-from ratelimit.decorators import ratelimit
-
-from Ansjer.config import AuthCode_Expire, SERVER_DOMAIN, APNS_CONFIG, JPUSH_CONFIG, FCM_CONFIG, TUTK_PUSH_DOMAIN, \
-    OSS_STS_ACCESS_KEY, OSS_STS_ACCESS_SECRET
-from Controller.CheckUserData import DataValid, date_handler, RandomStr
-from Model.models import Device_User, Role, UidPushModel, UserOauth2Model, UserExModel, Device_Info, UidSetModel, \
-    UserAppFrequencyModel, CountryIPModel, CountryModel, UidChannelSetModel, MenuModel, FeedBackModel, StatResModel, \
+
+from Ansjer.config import SERVER_DOMAIN, OSS_STS_ACCESS_KEY, OSS_STS_ACCESS_SECRET
+from Controller.CheckUserData import DataValid
+from Model.models import Device_User, Role, UserExModel, CountryModel, MenuModel, FeedBackModel, StatResModel, \
     SysMassModel, App_Info, SysMsgModel
     SysMassModel, App_Info, SysMsgModel
-from Object.AWS.SesClassObject import SesClassObject
-from Object.AliSmsObject import AliSmsObject
-from Object.RedisObject import RedisObject
 from Object.ResponseObject import ResponseObject
 from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
 from Object.TokenObject import TokenObject
 from Service.CommonService import CommonService
 from Service.CommonService import CommonService
 from Service.ModelService import ModelService
 from Service.ModelService import ModelService
-from Service.TemplateService import TemplateService
 from django.views.generic import View
 from django.views.generic import View
-import base64
-import random
-from io import BytesIO
-from PIL import Image, ImageDraw, ImageFont
-from django.shortcuts import HttpResponse
-from Ansjer.config import BASE_DIR
 
 
 
 
 # 登录
 # 登录
@@ -382,7 +360,7 @@ class UserManagement(View):
                     'data_joined': device_user.data_joined.strftime("%Y-%m-%d %H:%M:%S"),
                     'data_joined': device_user.data_joined.strftime("%Y-%m-%d %H:%M:%S"),
                     'last_login': device_user.last_login.strftime("%Y-%m-%d %H:%M:%S"),
                     'last_login': device_user.last_login.strftime("%Y-%m-%d %H:%M:%S"),
                     'appBundleId': app_bundle_id,
                     'appBundleId': app_bundle_id,
-                    'countryName':countryName
+                    'countryName': countryName
                 })
                 })
             print('user_list: ', user_list)
             print('user_list: ', user_list)
             return response.json(0, {'list': user_list, 'total': total})
             return response.json(0, {'list': user_list, 'total': total})

+ 5 - 5
Ansjer/cn_config/formal_settings.py

@@ -6,6 +6,8 @@ SECRET_KEY = 'c7ki2_gkg4#sjfm-u1%$s#&n#szf01f*v69rwv2qsf#-zmm@tl'
 DEBUG = False
 DEBUG = False
 ALLOWED_HOSTS = ['*']
 ALLOWED_HOSTS = ['*']
 
 
+DEFAULT_AUTO_FIELD = 'django.db.models.AutoField'
+
 INSTALLED_APPS = [
 INSTALLED_APPS = [
     'django.contrib.admin',
     'django.contrib.admin',
     'django.contrib.auth',
     'django.contrib.auth',
@@ -44,7 +46,7 @@ ADDR_URL = []
 ANONYMOUS_USER_ID = -1  # 支持匿名用户.
 ANONYMOUS_USER_ID = -1  # 支持匿名用户.
 
 
 STATIC_URL = '/static/'
 STATIC_URL = '/static/'
-STATICFILES_DIRS = (os.path.join(BASE_DIR,'static'),)
+STATICFILES_DIRS = (os.path.join(BASE_DIR, 'static'),)
 
 
 # 上传路径根目录
 # 上传路径根目录
 MEDIA_ROOT = os.path.join(BASE_DIR, 'static/Upgrate')
 MEDIA_ROOT = os.path.join(BASE_DIR, 'static/Upgrate')
@@ -114,8 +116,6 @@ DATABASE_APPS_MAPPING = {
     'PushModel': 'mysql02',
     'PushModel': 'mysql02',
 }
 }
 
 
-
-
 AUTH_PASSWORD_VALIDATORS = [
 AUTH_PASSWORD_VALIDATORS = [
     {
     {
         'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
         'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
@@ -254,7 +254,7 @@ LOGGING = {
         # log 调用时需要当作参数传入
         # log 调用时需要当作参数传入
         'info': {
         'info': {
             'handlers': ['info'],
             'handlers': ['info'],
-            'level':'INFO',
+            'level': 'INFO',
             'propagate': False
             'propagate': False
         },
         },
         'pay': {
         'pay': {
@@ -268,4 +268,4 @@ LOGGING = {
         #     'level': 'DEBUG',
         #     'level': 'DEBUG',
         # },
         # },
     }
     }
-}
+}

+ 7 - 6
Ansjer/cn_config/test_settings.py

@@ -1,12 +1,13 @@
 import os
 import os
 from Ansjer.config import BASE_DIR
 from Ansjer.config import BASE_DIR
 
 
-
 SECRET_KEY = 'c7ki2_gkg4#sjfm-u1%$s#&n#szf01f*v69rwv2qsf#-zmm@tl'
 SECRET_KEY = 'c7ki2_gkg4#sjfm-u1%$s#&n#szf01f*v69rwv2qsf#-zmm@tl'
 DEBUG = True
 DEBUG = True
 # DEBUG = False
 # DEBUG = False
 ALLOWED_HOSTS = ['*']
 ALLOWED_HOSTS = ['*']
 
 
+DEFAULT_AUTO_FIELD = 'django.db.models.AutoField'
+
 INSTALLED_APPS = [
 INSTALLED_APPS = [
     'django.contrib.admin',
     'django.contrib.admin',
     'django.contrib.auth',
     'django.contrib.auth',
@@ -27,7 +28,7 @@ MIDDLEWARE = [
     'django.middleware.security.SecurityMiddleware',
     'django.middleware.security.SecurityMiddleware',
     'django.contrib.sessions.middleware.SessionMiddleware',
     'django.contrib.sessions.middleware.SessionMiddleware',
     'django.middleware.common.CommonMiddleware',
     'django.middleware.common.CommonMiddleware',
-    'MiddleWare.requestRecord.RequestRecordMiddleware',     # 记录请求信息
+    'MiddleWare.requestRecord.RequestRecordMiddleware',  # 记录请求信息
     # 'django.middleware.csrf.CsrfViewMiddleware',
     # 'django.middleware.csrf.CsrfViewMiddleware',
     'corsheaders.middleware.CorsPostCsrfMiddleware',
     'corsheaders.middleware.CorsPostCsrfMiddleware',
     'django.contrib.auth.middleware.AuthenticationMiddleware',
     'django.contrib.auth.middleware.AuthenticationMiddleware',
@@ -264,13 +265,13 @@ LOGGING = {
         # log 调用时需要当作参数传入
         # log 调用时需要当作参数传入
         'info': {
         'info': {
             'handlers': ['info'],
             'handlers': ['info'],
-            'level':'INFO',
+            'level': 'INFO',
             'propagate': False
             'propagate': False
         },
         },
 
 
-        'device_info':{
+        'device_info': {
             'handlers': ['device_info'],
             'handlers': ['device_info'],
-            'level':'INFO',
+            'level': 'INFO',
             'propagate': False
             'propagate': False
         },
         },
         'pay': {
         'pay': {
@@ -284,4 +285,4 @@ LOGGING = {
         #     'level': 'DEBUG',
         #     'level': 'DEBUG',
         # },
         # },
     }
     }
-}
+}

+ 4 - 4
Ansjer/eur_config/formal_settings.py

@@ -6,6 +6,8 @@ SECRET_KEY = 'c7ki2_gkg4#sjfm-u1%$s#&n#szf01f*v69rwv2qsf#-zmm@tl'
 DEBUG = False
 DEBUG = False
 ALLOWED_HOSTS = ['*']
 ALLOWED_HOSTS = ['*']
 
 
+DEFAULT_AUTO_FIELD = 'django.db.models.AutoField'
+
 INSTALLED_APPS = [
 INSTALLED_APPS = [
     'django.contrib.admin',
     'django.contrib.admin',
     'django.contrib.auth',
     'django.contrib.auth',
@@ -72,7 +74,6 @@ TEMPLATES = [
 
 
 WSGI_APPLICATION = 'Ansjer.eur_config.formal_wsgi.application'
 WSGI_APPLICATION = 'Ansjer.eur_config.formal_wsgi.application'
 
 
-
 # 服务器类型
 # 服务器类型
 DATABASE_DATA = 'Ansjer81'
 DATABASE_DATA = 'Ansjer81'
 SERVER_HOST = 'server-eur.chi0brrjyz8l.eu-west-1.rds.amazonaws.com'
 SERVER_HOST = 'server-eur.chi0brrjyz8l.eu-west-1.rds.amazonaws.com'
@@ -112,7 +113,6 @@ DATABASE_APPS_MAPPING = {
     'PushModel': 'mysql02',
     'PushModel': 'mysql02',
 }
 }
 
 
-
 AUTH_PASSWORD_VALIDATORS = [
 AUTH_PASSWORD_VALIDATORS = [
     {
     {
         'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
         'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
@@ -252,7 +252,7 @@ LOGGING = {
         # log 调用时需要当作参数传入
         # log 调用时需要当作参数传入
         'info': {
         'info': {
             'handlers': ['info'],
             'handlers': ['info'],
-            'level':'INFO',
+            'level': 'INFO',
             'propagate': False
             'propagate': False
         },
         },
         'pay': {
         'pay': {
@@ -266,4 +266,4 @@ LOGGING = {
         #     'level': 'DEBUG',
         #     'level': 'DEBUG',
         # },
         # },
     }
     }
-}
+}

+ 3 - 6
Ansjer/local_config/local_settings.py

@@ -1,15 +1,12 @@
 import os
 import os
 from Ansjer.config import BASE_DIR
 from Ansjer.config import BASE_DIR
 
 
-
 SECRET_KEY = 'c7ki2_gkg4#sjfm-u1%$s#&n#szf01f*v69rwv2qsf#-zmm@tl'
 SECRET_KEY = 'c7ki2_gkg4#sjfm-u1%$s#&n#szf01f*v69rwv2qsf#-zmm@tl'
 DEBUG = True
 DEBUG = True
 # DEBUG = False
 # DEBUG = False
 ALLOWED_HOSTS = ['*']
 ALLOWED_HOSTS = ['*']
 
 
-
-
-
+DEFAULT_AUTO_FIELD = 'django.db.models.AutoField'
 
 
 ADDR_URL = []
 ADDR_URL = []
 ANONYMOUS_USER_ID = -1  # 支持匿名用户
 ANONYMOUS_USER_ID = -1  # 支持匿名用户
@@ -72,7 +69,7 @@ MIDDLEWARE = [
     'django.middleware.security.SecurityMiddleware',
     'django.middleware.security.SecurityMiddleware',
     'django.contrib.sessions.middleware.SessionMiddleware',
     'django.contrib.sessions.middleware.SessionMiddleware',
     'django.middleware.common.CommonMiddleware',
     'django.middleware.common.CommonMiddleware',
-    'MiddleWare.requestRecord.RequestRecordMiddleware',     # 记录请求信息
+    'MiddleWare.requestRecord.RequestRecordMiddleware',  # 记录请求信息
     # 'django.middleware.csrf.CsrfViewMiddleware',
     # 'django.middleware.csrf.CsrfViewMiddleware',
     'corsheaders.middleware.CorsPostCsrfMiddleware',
     'corsheaders.middleware.CorsPostCsrfMiddleware',
     'django.contrib.auth.middleware.AuthenticationMiddleware',
     'django.contrib.auth.middleware.AuthenticationMiddleware',
@@ -282,7 +279,7 @@ LOGGING = {
         # log 调用时需要当作参数传入
         # log 调用时需要当作参数传入
         'info': {
         'info': {
             'handlers': ['info'],
             'handlers': ['info'],
-            'level':'INFO',
+            'level': 'INFO',
             'propagate': False
             'propagate': False
         }
         }
     }
     }

+ 2 - 0
Ansjer/us_config/formal_settings.py

@@ -6,6 +6,8 @@ SECRET_KEY = 'c7ki2_gkg4#sjfm-u1%$s#&n#szf01f*v69rwv2qsf#-zmm@tl'
 DEBUG = False
 DEBUG = False
 ALLOWED_HOSTS = ['*']
 ALLOWED_HOSTS = ['*']
 
 
+DEFAULT_AUTO_FIELD = 'django.db.models.AutoField'
+
 INSTALLED_APPS = [
 INSTALLED_APPS = [
     'django.contrib.admin',
     'django.contrib.admin',
     'django.contrib.auth',
     'django.contrib.auth',

+ 2 - 3
Controller/AdminManage.py

@@ -1,16 +1,15 @@
 # -*- coding: utf-8 -*-
 # -*- coding: utf-8 -*-
 import time
 import time
-from datetime import date, timedelta, timezone as asj_timezone
+from datetime import timedelta, timezone as asj_timezone
 
 
 import boto3
 import boto3
 import xlwt
 import xlwt
-from django.db.models import Count,Q
+from django.db.models import Count, Q
 from django.http import HttpResponse
 from django.http import HttpResponse
 from django.views.decorators.csrf import csrf_exempt
 from django.views.decorators.csrf import csrf_exempt
 from django.views.generic import TemplateView
 from django.views.generic import TemplateView
 from django.utils.decorators import method_decorator
 from django.utils.decorators import method_decorator
 from django.contrib.auth.hashers import make_password  # 对密码加密模块
 from django.contrib.auth.hashers import make_password  # 对密码加密模块
-from openpyxl import workbook
 
 
 from Model.models import Device_Info, Role, UserExModel, User_Brand, UidSetModel, AppFrequencyYearStatisticsModel, \
 from Model.models import Device_Info, Role, UserExModel, User_Brand, UidSetModel, AppFrequencyYearStatisticsModel, \
     AppFrequencyStatisticsModel, EquipmentInfoExStatisticsModel, Equipment_Info
     AppFrequencyStatisticsModel, EquipmentInfoExStatisticsModel, Equipment_Info

+ 4 - 4
Controller/AppInfo.py

@@ -1,7 +1,7 @@
 import time
 import time
 import traceback
 import traceback
 import os
 import os
-from django.shortcuts import render_to_response
+from django.shortcuts import render
 from django.utils.decorators import method_decorator
 from django.utils.decorators import method_decorator
 from django.views.decorators.csrf import csrf_exempt
 from django.views.decorators.csrf import csrf_exempt
 from django.views.generic.base import View
 from django.views.generic.base import View
@@ -275,9 +275,9 @@ class AppVersionView(View):
         lang = request_dict.get('lang', None)
         lang = request_dict.get('lang', None)
         # print (appBundleId)
         # print (appBundleId)
         # if lang == 'cn':
         # if lang == 'cn':
-        #     return render_to_response('appVersionLists_cn.html')
+        #     return render('appVersionLists_cn.html')
         # else:
         # else:
-        #     return render_to_response('appVersionLists_en.html')
+        #     return render('appVersionLists_en.html')
         queryset = App_Colophon.objects.filter(lang=lang, app_id__appBundleId=appBundleId,
         queryset = App_Colophon.objects.filter(lang=lang, app_id__appBundleId=appBundleId,
                                                app_id__app_type=app_type).order_by('-version_time', '-newApp_version')
                                                app_id__app_type=app_type).order_by('-version_time', '-newApp_version')
         queryset_dict = CommonService.qs_to_dict(queryset).get('datas')
         queryset_dict = CommonService.qs_to_dict(queryset).get('datas')
@@ -291,7 +291,7 @@ class AppVersionView(View):
             version_time = v['fields']['version_time']
             version_time = v['fields']['version_time']
             version_time = time.strftime("%Y-%m-%d", time.localtime(version_time))
             version_time = time.strftime("%Y-%m-%d", time.localtime(version_time))
             v['fields']['version_time'] = version_time
             v['fields']['version_time'] = version_time
-        return render_to_response('appVerList.html', locals())
+        return render('appVerList.html', locals())
 
 
 
 
 class AppIdDataView(View):
 class AppIdDataView(View):

+ 1 - 1
Controller/DynamoDBLog.py

@@ -69,7 +69,7 @@ class DynamoDBLog(View):
         search_value = request_dict.get('search_value',None)
         search_value = request_dict.get('search_value',None)
         check_perm = ModelService.check_perm(userID=userID,permID=30)
         check_perm = ModelService.check_perm(userID=userID,permID=30)
         if check_perm is True:
         if check_perm is True:
-            if search_value is None or search_value is '':
+            if search_value is None or search_value == '':
                 return response.json(0, {'datas': {}, 'count': 0})
                 return response.json(0, {'datas': {}, 'count': 0})
             else:
             else:
                 if DOMAIN_HOST == 'www.zositechc.cn':
                 if DOMAIN_HOST == 'www.zositechc.cn':

+ 2 - 2
Controller/UserBrandController.py

@@ -618,7 +618,7 @@ class UserBrandInfo(View):
             check_perm = ModelService.check_perm(userID=userID, permID=30)
             check_perm = ModelService.check_perm(userID=userID, permID=30)
             page_value = []
             page_value = []
             if check_perm is True:
             if check_perm is True:
-                if username is None or username is '':
+                if username is None or username == '':
                     # table_Limit_value = my.get_page_line(page,line,user_brand,None,page_value)
                     # table_Limit_value = my.get_page_line(page,line,user_brand,None,page_value)
                     # # 页面减1
                     # # 页面减1
                     # page = page-1
                     # page = page-1
@@ -689,7 +689,7 @@ class UserBrandInfo(View):
             check_perm = ModelService.check_perm(userID=userID, permID=30)
             check_perm = ModelService.check_perm(userID=userID, permID=30)
             page_value = []
             page_value = []
             if check_perm is True:
             if check_perm is True:
-                if username is None or username is '':
+                if username is None or username == '':
                     return response.json(0, {'datas': {}, 'count': 0})
                     return response.json(0, {'datas': {}, 'count': 0})
                 else:
                 else:
                     # 查询
                     # 查询

+ 0 - 2
Model/models.py

@@ -4,7 +4,6 @@ from django.contrib.auth.models import BaseUserManager, AbstractBaseUser
 from django.db import models
 from django.db import models
 from django.utils import six
 from django.utils import six
 from django.utils import timezone
 from django.utils import timezone
-from django.utils.encoding import python_2_unicode_compatible
 from imagekit.models import ProcessedImageField
 from imagekit.models import ProcessedImageField
 from imagekit.processors import ResizeToFill
 from imagekit.processors import ResizeToFill
 
 
@@ -59,7 +58,6 @@ class UserManager(BaseUserManager):
                                 user_isValid, **extra_fields)
                                 user_isValid, **extra_fields)
 
 
 
 
-@python_2_unicode_compatible
 class Permissions(models.Model):
 class Permissions(models.Model):
     permName = models.CharField(blank=True, null=True, max_length=32, unique=True, verbose_name=u'权限名称')
     permName = models.CharField(blank=True, null=True, max_length=32, unique=True, verbose_name=u'权限名称')
     description = models.CharField(blank=True, null=True, max_length=128, verbose_name=u'描述信息', default='')
     description = models.CharField(blank=True, null=True, max_length=128, verbose_name=u'描述信息', default='')

BIN
requirements.txt