Преглед изворни кода

欧洲服使用环境变量配置

locky пре 2 дана
родитељ
комит
fdb8f0ff07
36 измењених фајлова са 301 додато и 123 уклоњено
  1. 2 0
      .gitignore
  2. 4 2
      AdminController/AlgorithmShopManageController.py
  3. 5 2
      AdminController/DeviceManagementController.py
  4. 4 1
      AdminController/EvaluationActivityController.py
  5. 4 1
      AdminController/LogManagementController.py
  6. 4 2
      AdminController/MessageMangementController.py
  7. 5 2
      AdminController/UserManageController.py
  8. 4 1
      AdminController/VersionManagementController.py
  9. 0 2
      Ansjer/cn_config/config_formal.py
  10. 16 17
      Ansjer/cn_config/config_test.py
  11. 136 14
      Ansjer/cn_config/test_settings.py
  12. 0 3
      Ansjer/config.py
  13. 1 2
      Ansjer/eur_config/config_formal.py
  14. 30 17
      Ansjer/eur_config/formal_settings.py
  15. 2 16
      Ansjer/local_config/config_local.py
  16. 0 2
      Ansjer/pushconfig.py
  17. 1 2
      Ansjer/us_config/config_formal.py
  18. 0 2
      Ansjer/us_config/config_test.py
  19. 4 1
      Controller/AWS/KVSController.py
  20. 5 3
      Controller/AppLogController.py
  21. 4 2
      Controller/CloudPhoto/CloudPhotoController.py
  22. 4 1
      Controller/CloudStorage.py
  23. 4 3
      Controller/Cron/CronCloudPhotoController.py
  24. 5 2
      Controller/Cron/CronTaskController.py
  25. 4 1
      Controller/DetectControllerV2.py
  26. 6 3
      Controller/DeviceLogController.py
  27. 8 5
      Controller/FeedBack.py
  28. 4 1
      Controller/PcInfo.py
  29. 4 2
      Controller/S3GetStsController.py
  30. 7 2
      Controller/TestApi.py
  31. 4 1
      Controller/UserController.py
  32. 4 3
      Controller/UserDevice/UserDeviceShareController.py
  33. 4 1
      Controller/UserManger.py
  34. 4 1
      Object/AWS/S3Email.py
  35. 4 1
      Roomumy/Controller/BabyController.py
  36. 4 2
      Roomumy/Controller/TimeAlbumController.py

+ 2 - 0
.gitignore

@@ -20,3 +20,5 @@
 
 /PushModel/
 /SerialModel/
+/Roomumy/migrations
+.env

+ 4 - 2
AdminController/AlgorithmShopManageController.py

@@ -18,8 +18,10 @@ from Object.AWS.AmazonS3Util import AmazonS3Util
 from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
 
-from Ansjer.config import CONFIG_INFO, CONFIG_EUR, CONFIG_US, CONFIG_TEST, CONFIG_CN, AWS_ACCESS_KEY_ID, \
-    AWS_SECRET_ACCESS_KEY, AWS_SES_ACCESS_REGION
+from Ansjer.config import CONFIG_INFO, CONFIG_EUR, CONFIG_US, CONFIG_TEST, CONFIG_CN, AWS_SES_ACCESS_REGION
+from django.conf import settings
+AWS_ACCESS_KEY_ID = settings.AWS_ACCESS_KEY_ID
+AWS_SECRET_ACCESS_KEY = settings.AWS_SECRET_ACCESS_KEY
 
 
 class AlgorithmShopManageView(View):

+ 5 - 2
AdminController/DeviceManagementController.py

@@ -18,8 +18,7 @@ from django.views.generic.base import View
 
 from Ansjer.config import LOGGER, SERIAL_DOMAIN_NAME, HUAWEICLOUD_AK, HUAWEICLOUD_SK, HUAWEICLOUD_OBS_SERVER, \
     HUAWEICLOUD_BAIDU_BIG_MODEL_LICENSE_BUKET,CONFIG_INFO, CONFIG_TEST, CONFIG_CN, CONFIG_US, CONFIG_EUR
-from Ansjer.config import OSS_STS_ACCESS_KEY, OSS_STS_ACCESS_SECRET, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, \
-    AWS_SES_ACCESS_REGION
+from Ansjer.config import OSS_STS_ACCESS_KEY, OSS_STS_ACCESS_SECRET, AWS_SES_ACCESS_REGION
 from Ansjer.config import SERVER_DOMAIN_TEST, SERVER_DOMAIN_CN, SERVER_DOMAIN_US, SERVER_DOMAIN_EUR
 from Model.models import Device_Info, UidSetModel, LogModel, UID_Bucket, Unused_Uid_Meal, StsCrdModel, \
     VodHlsModel, ExperienceContextModel, DeviceTypeModel, UidUserModel, ExperienceAiModel, AiService, \
@@ -36,6 +35,9 @@ from Service.CommonService import CommonService
 from Service.EquipmentInfoService import EquipmentInfoService
 from Service.ModelService import ModelService
 from Service.VodHlsService import SplitVodHlsObject
+from django.conf import settings
+AWS_ACCESS_KEY_ID = settings.AWS_ACCESS_KEY_ID
+AWS_SECRET_ACCESS_KEY = settings.AWS_SECRET_ACCESS_KEY
 
 
 class DeviceManagement(View):
@@ -266,6 +268,7 @@ class DeviceManagement(View):
                             device_info_list["datas"][k]['fields']['isAlexa'] = isAlexa
                             device_info_list["datas"][k]['fields']['cloudVod'] = cloud_vod
                             device_info_list["datas"][k]['fields']['ip'] = uid_set_qs[0]['ip']
+                            device_info_list["datas"][k]['fields']['ucode'] = uid_set_qs[0]['ucode']
                             device_info_list["datas"][k]['fields']['version'] = uid_set_qs[0]['version']
                         uid_bucket_qs = UID_Bucket.objects.filter(
                             uid=device_info_list["datas"][k]['fields']['UID']).values('status')

+ 4 - 1
AdminController/EvaluationActivityController.py

@@ -12,8 +12,11 @@ from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
 from Ansjer.config import SERVER_DOMAIN, LOGGER, HUAWEICLOUD_AK, HUAWEICLOUD_SK, HUAWEICLOUD_OBS_SERVER, \
     HUAWEICLOUD_SERVER_BUKET
-from Ansjer.cn_config.config_formal import SECRET_ACCESS_KEY, ACCESS_KEY_ID, REGION_NAME
+from Ansjer.cn_config.config_formal import REGION_NAME
 from django.db import transaction
+from django.conf import settings
+ACCESS_KEY_ID = settings.ACCESS_KEY_ID
+SECRET_ACCESS_KEY = settings.SECRET_ACCESS_KEY
 
 
 class EvaluationActivityView(View):

+ 4 - 1
AdminController/LogManagementController.py

@@ -13,7 +13,10 @@ from Service.CommonService import CommonService
 from Model.models import Device_Info, RequestRecordModel, iotdeviceInfoModel, Access_Log, DeviceLogModel, LogModel, \
     AppLogModel, AppScannedSerial, StsFrequency, DeviceDomainRegionModel, IPAddr, CountryModel, RegionModel, \
     AbnormalEvent, DeviceTypeModel, AbnormalEventCode, DeviceScheme, ProductsScheme
-from Ansjer.config import REGION_NAME, ACCESS_KEY_ID, SECRET_ACCESS_KEY, LOG_BUCKET
+from Ansjer.config import REGION_NAME, LOG_BUCKET
+from django.conf import settings
+ACCESS_KEY_ID = settings.ACCESS_KEY_ID
+SECRET_ACCESS_KEY = settings.SECRET_ACCESS_KEY
 
 
 class LogManagementView(View):

+ 4 - 2
AdminController/MessageMangementController.py

@@ -11,8 +11,7 @@ from obs import ObsClient
 
 from Ansjer.config import CONFIG_EUR, CONFIG_US, HUAWEICLOUD_PUSH_BUKET, HUAWEICLOUD_AK, HUAWEICLOUD_SK, \
     HUAWEICLOUD_OBS_SERVER
-from Ansjer.config import OSS_STS_ACCESS_KEY, OSS_STS_ACCESS_SECRET, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, \
-    SERVER_TYPE
+from Ansjer.config import OSS_STS_ACCESS_KEY, OSS_STS_ACCESS_SECRET, SERVER_TYPE
 from Controller.DetectControllerV2 import DetectControllerViewV2
 from Model import models
 from Model.models import Device_Info, VodBucketModel, DeviceTypeModel
@@ -23,6 +22,9 @@ from Object.TokenObject import TokenObject
 from Object.utils import LocalDateTimeUtil
 from Service.EquipmentInfoService import EquipmentInfoService
 from Service.VodHlsService import SplitVodHlsObject
+from django.conf import settings
+AWS_ACCESS_KEY_ID = settings.AWS_ACCESS_KEY_ID
+AWS_SECRET_ACCESS_KEY = settings.AWS_SECRET_ACCESS_KEY
 
 
 class MassageView(View):

+ 5 - 2
AdminController/UserManageController.py

@@ -12,8 +12,8 @@ from django.views.decorators.csrf import csrf_exempt
 from django.views.generic import TemplateView
 
 from AgentModel.models import AgentCustomerInfo, AgentCustomerCard, AgentCloudServicePackage, AgentCustomerPackage
-from Ansjer.config import SERVER_DOMAIN, OSS_STS_ACCESS_KEY, OSS_STS_ACCESS_SECRET, AWS_ACCESS_KEY_ID, \
-    AWS_SECRET_ACCESS_KEY, AWS_SES_ACCESS_REGION, DETECT_PUSH_DOMAINS
+from Ansjer.config import SERVER_DOMAIN, OSS_STS_ACCESS_KEY, OSS_STS_ACCESS_SECRET, AWS_SES_ACCESS_REGION, \
+    DETECT_PUSH_DOMAINS
 from Controller.CheckUserData import DataValid, RandomStr
 from Model.models import Device_User, Role, UserExModel, CountryModel, MenuModel, FeedBackModel, StatResModel, \
     SysMassModel, App_Info, SysMsgModel, DeviceSuperPassword, CustomizedPush, DeviceTypeModel, CustomCustomerOrderInfo
@@ -25,6 +25,9 @@ from Object.TokenObject import TokenObject
 from Service.CommonService import CommonService
 from Service.ModelService import ModelService
 from django.views.generic import View
+from django.conf import settings
+AWS_ACCESS_KEY_ID = settings.AWS_ACCESS_KEY_ID
+AWS_SECRET_ACCESS_KEY = settings.AWS_SECRET_ACCESS_KEY
 
 
 # 登录

+ 4 - 1
AdminController/VersionManagementController.py

@@ -14,7 +14,7 @@ from django.db import transaction
 from django.views.generic.base import View
 from packaging import version as pacVer
 
-from Ansjer.config import BASE_DIR, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY
+from Ansjer.config import BASE_DIR
 from Ansjer.config import LOGGER, CONFIG_TEST, SERVER_DOMAIN_OTA, CONFIG_CN, CONFIG_INFO
 from Model.models import Equipment_Version, App_Info, AppSetModel, App_Colophon, Pc_Info, CountryModel, \
     Device_Info, UidSetModel, Device_User, IPAddr, DeviceVersionInfo, iotdeviceInfoModel
@@ -23,6 +23,9 @@ from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
 from Object.UrlTokenObject import UrlTokenObject
 from Service.CommonService import CommonService
+from django.conf import settings
+AWS_ACCESS_KEY_ID = settings.AWS_ACCESS_KEY_ID
+AWS_SECRET_ACCESS_KEY = settings.AWS_SECRET_ACCESS_KEY
 
 
 class VersionManagement(View):

+ 0 - 2
Ansjer/cn_config/config_formal.py

@@ -13,8 +13,6 @@ AWS相关
 AWS_ARN_S3 = 'arn:aws-cn:s3'
 REGION_NAME = 'cn-northwest-1'
 KVS_REGION = 'cn-north-1'
-ACCESS_KEY_ID = 'AKIA2MMWBR4D3I4YNHSP'
-SECRET_ACCESS_KEY = '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'
 
 # 存储桶
 PUSH_BUCKET = 'push'                                # 推送存储桶

+ 16 - 17
Ansjer/cn_config/config_test.py

@@ -10,26 +10,25 @@ AWS相关
 """
 # ======================================================================================================================
 # aws api key
-# AWS_ARN_S3 = 'arn:aws-cn:s3'
-# REGION_NAME = 'cn-northwest-1'
-# ACCESS_KEY_ID = 'AKIA2MMWBR4D3I4YNHSP'
-# SECRET_ACCESS_KEY = '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'
-AWS_ARN_S3 = 'arn:aws:s3'
-REGION_NAME = 'us-east-1'
-REGION_NAME2 = 'us-west-1'
-ACCESS_KEY_ID = 'AKIA2E67UIMD45Y3HL53'
-SECRET_ACCESS_KEY = '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'
+AWS_ARN_S3 = 'arn:aws-cn:s3'
+REGION_NAME = 'cn-northwest-1'
+REGION_NAME2 = 'cn-north-1'
+KVS_REGION = 'cn-north-1'
+
+# AWS_ARN_S3 = 'arn:aws:s3'
+# REGION_NAME = 'us-east-1'
+# REGION_NAME2 = 'us-west-1'
 
 # 存储桶
-PUSH_BUCKET = 'foreignpush'                                # 推送存储桶
-PUSH_INACCURATE_BUCKET = 'push-inaccurate'          # 推送不准确存储桶
-AVATAR_BUCKET = 'avatar-us'                         # 头像存储桶
-LOG_BUCKET = 'ansjer-statres'                       # 日志存储桶
-PUSH_CLOUD_PHOTO = 'push-cloud-photo'               # 推送云相册存储桶
+PUSH_BUCKET = 'foreignpush'  # 推送存储桶
+PUSH_INACCURATE_BUCKET = 'push-inaccurate'  # 推送不准确存储桶
+AVATAR_BUCKET = 'avatar-us'  # 头像存储桶
+LOG_BUCKET = 'ansjer-statres'  # 日志存储桶
+PUSH_CLOUD_PHOTO = 'push-cloud-photo'  # 推送云相册存储桶
 
 # redis节点
 SERVER_HOST = '127.0.0.1'
-PUSH_REDIS_ADDRESS = '127.0.0.1'
+PUSH_REDIS_ADDRESS = 'redis-3fc62615-87dc-45d8-930b-0871651f6453.cn-south-1.dcs.myhuaweicloud.com'
 # ======================================================================================================================
 
 # 域名
@@ -38,8 +37,8 @@ SERVER_DOMAIN = 'http://test.zositechc.cn/'
 SERVER_DOMAIN_SSL = 'https://test.zositechc.cn/'
 SERVER_DOMAIN_OTA = 'http://test.ota.zositechc.cn/'
 NGINX_RTMP_STAT = 'http://test.zositechc.cn/stat/'
-DETECT_PUSH_DOMAIN = 'http://test.push.dvema.com/'
-DETECT_PUSH_DOMAINS = 'https://test.push.dvema.com/'
+DETECT_PUSH_DOMAIN = 'http://test.push.zositechc.cn/'
+DETECT_PUSH_DOMAINS = 'https://test.push.zositechc.cn/'
 DETECT_PUSH_DOMAIN_JIUAN = 'http://jiuan.push.dvema.com/'
 DETECT_PUSH_DOMAINS_JIUAN = 'https://jiuan.push.dvema.com/'
 TUTK_PUSH_DOMAIN = 'http://push.iotcplatform.com/tpns'

+ 136 - 14
Ansjer/cn_config/test_settings.py

@@ -1,5 +1,18 @@
 import os
 from Ansjer.config import BASE_DIR
+import environ
+
+env = environ.Env(
+    DEBUG=(bool, False)
+)
+# 读取 .env 文件
+environ.Env.read_env(os.path.join(BASE_DIR, '.env'))
+
+ACCESS_KEY_ID = env('ACCESS_KEY_ID', default='')
+SECRET_ACCESS_KEY = env('SECRET_ACCESS_KEY', default='')
+AWS_ACCESS_KEY_ID = env.list('AWS_ACCESS_KEY_ID', default=[])
+AWS_SECRET_ACCESS_KEY = env.list('AWS_SECRET_ACCESS_KEY', default=[])
+
 
 SECRET_KEY = 'c7ki2_gkg4#sjfm-u1%$s#&n#szf01f*v69rwv2qsf#-zmm@tl'
 DEBUG = True
@@ -19,7 +32,11 @@ INSTALLED_APPS = [
     'imagekit',
     'Model',
     'PushModel',
-    'django_apscheduler'
+    'django_apscheduler',
+    'AgentModel',
+    'django_celery_beat',
+    'Roomumy',
+    'VodHlsOssModel'
 ]
 
 MIDDLEWARE = [
@@ -74,16 +91,34 @@ TEMPLATES = [
 WSGI_APPLICATION = 'Ansjer.cn_config.test_wsgi.application'
 
 # 业务数据库
-DATABASE_DATA = 'ansjer_server_test'
-SERVER_HOST = '124.70.222.33'
-DATABASES_USER = 'root'
-DATABASES_PASS = 'Ansjer123'
+DATABASE_DATA = env('DATABASE_DATA')
+SERVER_HOST = env('SERVER_HOST')
+DATABASES_USER = env('DATABASES_USER')
+DATABASES_PASS = env('DATABASES_PASS')
 
 # 推送数据库
-DATABASE_DATA2 = 'ansjer_push_test'
-SERVER_HOST2 = '124.70.222.33'
-DATABASES_USER2 = 'root'
-DATABASES_PASS2 = 'Ansjer123'
+DATABASE_DATA2 = env('DATABASE_DATA2')
+SERVER_HOST2 = env('SERVER_HOST2')
+DATABASES_USER2 = env('DATABASES_USER2')
+DATABASES_PASS2 = env('DATABASES_PASS2')
+
+# 业务代理客户数据库
+DATABASE_DATA3 = env('DATABASE_DATA3')
+SERVER_HOST3 = env('SERVER_HOST3')
+DATABASES_USER3 = env('DATABASES_USER3')
+DATABASES_PASS3 = env('DATABASES_PASS3')
+
+# 袋鼠妈妈数据库
+DATABASE_DATA4 = env('DATABASE_DATA4')
+SERVER_HOST4 = env('SERVER_HOST4')
+DATABASES_USER4 = env('DATABASES_USER4')
+DATABASES_PASS4 = env('DATABASES_PASS4')
+
+# OSS云存分表数据库
+DATABASE_DATA5 = env('DATABASE_DATA5')
+SERVER_HOST5 = env('SERVER_HOST5')
+DATABASES_USER5 = env('DATABASES_USER5')
+DATABASES_PASS5 = env('DATABASES_PASS5')
 
 DATABASES = {
     'default': {
@@ -116,6 +151,51 @@ DATABASES = {
             'init_command': "SET sql_mode='STRICT_TRANS_TABLES'"
         }
     },
+    'mysql03': {
+        'ENGINE': 'django.db.backends.mysql',
+        'NAME': DATABASE_DATA3,
+        'USER': DATABASES_USER3,
+        'PASSWORD': DATABASES_PASS3,
+        'HOST': SERVER_HOST3,
+        'PORT': '3306',
+        'AUTOCOMMIT': True,
+        'CONN_MAX_AGE': 60,
+        'OPTIONS': {
+            'charset': 'utf8mb4',
+            'use_unicode': True,
+            'init_command': "SET sql_mode='STRICT_TRANS_TABLES'"
+        }
+    },
+    'mysql04': {
+        'ENGINE': 'django.db.backends.mysql',
+        'NAME': DATABASE_DATA4,
+        'USER': DATABASES_USER4,
+        'PASSWORD': DATABASES_PASS4,
+        'HOST': SERVER_HOST4,
+        'PORT': '3306',
+        'AUTOCOMMIT': True,
+        'CONN_MAX_AGE': 60,
+        'OPTIONS': {
+            'charset': 'utf8mb4',
+            'use_unicode': True,
+            'init_command': "SET sql_mode='STRICT_TRANS_TABLES'"
+        }
+    },
+    'mysql05': {
+        'ENGINE': 'django.db.backends.mysql',
+        'NAME': DATABASE_DATA5,
+        'USER': DATABASES_USER5,
+        'PASSWORD': DATABASES_PASS5,
+        'HOST': SERVER_HOST5,
+        'PORT': '3306',
+        'AUTOCOMMIT': True,
+        'CONN_MAX_AGE': 60,
+        'OPTIONS': {
+            'charset': 'utf8mb4',
+            'use_unicode': True,
+            'init_command': "SET sql_mode='STRICT_TRANS_TABLES'"
+        }
+    },
 }
 
 DATABASE_ROUTERS = ['Ansjer.database_router.DatabaseAppsRouter']
@@ -123,6 +203,9 @@ DATABASE_APPS_MAPPING = {
     'Model': 'default',
     'django_apscheduler': 'default',
     'PushModel': 'mysql02',
+    'AgentModel': 'mysql03',
+    'Roomumy': 'mysql04',
+    'VodHlsOssModel': 'mysql05'
 }
 
 AUTH_PASSWORD_VALIDATORS = [
@@ -140,6 +223,17 @@ AUTH_PASSWORD_VALIDATORS = [
     },
 ]
 
+# celery配置,需要以CELERY_开头
+# 设置broker
+CELERY_BROKER_URL = 'redis://127.0.0.1:6379/0'
+# 设置结果存储
+CELERY_RESULT_BACKEND = 'redis://127.0.0.1:6379/1'
+
+# 配置定时任务
+CELERY_TIMEZONE = 'Asia/Shanghai'
+DJANGO_CELERY_BEAT_TZ_AWARE = True
+CELERY_BEAT_SCHEDULER = 'django_celery_beat.schedulers:DatabaseScheduler'
+
 LANGUAGE_CODE = 'en-us'
 TIME_ZONE = 'Asia/Shanghai'
 # TIME_ZONE = 'UTC'
@@ -237,7 +331,7 @@ LOGGING = {
             'level': 'INFO',
             'class': 'logging.handlers.RotatingFileHandler',
             'filename': BASE_DIR + '/static/log/info/info.log',
-            'backupCount': 10,
+            'backupCount': 3,
             'maxBytes': 1024 * 1024 * 2 * 1024,  # 2G
             'formatter': 'standard',
             'encoding': 'utf-8',
@@ -246,17 +340,35 @@ LOGGING = {
             'level': 'INFO',
             'class': 'logging.handlers.RotatingFileHandler',
             'filename': BASE_DIR + '/static/log/error_code/error_code.log',
-            'backupCount': 10,
+            'backupCount': 3,
+            'maxBytes': 1024 * 1024 * 2 * 1024,  # 2G
+            'formatter': 'standard',
+            'encoding': 'utf-8',
+        },
+        'success_code': {
+            'level': 'INFO',
+            'class': 'logging.handlers.RotatingFileHandler',
+            'filename': BASE_DIR + '/static/log/success_code/success_code.log',
+            'backupCount': 3,
             'maxBytes': 1024 * 1024 * 2 * 1024,  # 2G
             'formatter': 'standard',
             'encoding': 'utf-8',
         },
         'pay': {
             'level': 'INFO',
-            'class': 'logging.handlers.TimedRotatingFileHandler',
+            'class': 'logging.handlers.RotatingFileHandler',
             'filename': BASE_DIR + '/static/log/pay/info.log',
-            'backupCount': 60,
-            'when': 'D',
+            'backupCount': 3,
+            'maxBytes': 1024 * 1024 * 2 * 1024,  # 2G
+            'formatter': 'standard',
+            'encoding': 'utf-8',
+        },
+        'apple_pay': {
+            'level': 'INFO',
+            'class': 'logging.handlers.RotatingFileHandler',
+            'filename': BASE_DIR + '/static/log/apple_pay/apple_pay.log',
+            'backupCount': 3,
+            'maxBytes': 1024 * 1024 * 2 * 1024,  # 2G
             'formatter': 'standard',
             'encoding': 'utf-8',
         },
@@ -287,11 +399,21 @@ LOGGING = {
             'level': 'INFO',
             'propagate': False
         },
+        'success_code': {
+            'handlers': ['success_code'],
+            'level': 'INFO',
+            'propagate': False
+        },
         'pay': {
             'handlers': ['pay'],
             'level': 'INFO',
             'propagate': False
         },
+        'apple_pay': {
+            'handlers': ['apple_pay'],
+            'level': 'INFO',
+            'propagate': False
+        },
         'token': {
             'handlers': ['token'],
             'level': 'INFO',

+ 0 - 3
Ansjer/config.py

@@ -113,8 +113,6 @@ OSS_STS_ACCESS_SECRET = '71uIjpsqVOmF7DAITRyRuc259jHOjO'
 OSS_ROLE_ARN = 'acs:ram::1901342792446414:role/stsoss'
 
 # aws api key
-AWS_ACCESS_KEY_ID = ['AKIA2MMWBR4D3I4YNHSP', 'AKIA2E67UIMD45Y3HL53']  # 0国内, 1国外
-AWS_SECRET_ACCESS_KEY = ['5Q9LsKwa0Q9IRntwDWDzIgDOdT5zayt4M+qJKmuw', 'ckYLg4Lo9ZXJIcJEAKkzf2rWvs8Xth1FCjqiAqUw']
 AWS_ARN = ['arn:aws-cn:s3', 'arn:aws:s3']
 
 # 尚云服务器CRCKey
@@ -533,7 +531,6 @@ CT_USER_ID = 'C8EQeMCNNroW0J5jTc3r0NVHU6Ii2NpU'
 CT_PASSWORD = 'Pngt1r1S1cRouEyw'
 CT_SECRET_KEY = 'i7CYm8s2T'
 
-
 # amazon电子邮件
 SES_SENDER = 'rdpublic@ansjer.com'  # 邮箱名
 SES_SENDERNAME = 'rdpublic@ansjer.com'

+ 1 - 2
Ansjer/eur_config/config_formal.py

@@ -12,8 +12,7 @@ AWS相关
 # aws api key
 AWS_ARN_S3 = 'arn:aws:s3'
 REGION_NAME = 'us-east-1'
-ACCESS_KEY_ID = 'AKIA2E67UIMD45Y3HL53'
-SECRET_ACCESS_KEY = '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'
+KVS_REGION = 'eu-west-1'
 
 # 存储桶名
 PUSH_BUCKET = 'foreignpush'                         # 推送存储桶

+ 30 - 17
Ansjer/eur_config/formal_settings.py

@@ -1,5 +1,17 @@
 import os
 from Ansjer.config import BASE_DIR
+import environ
+
+env = environ.Env(
+    DEBUG=(bool, False)
+)
+# 读取 .env 文件
+environ.Env.read_env(os.path.join(BASE_DIR, '.env'))
+
+ACCESS_KEY_ID = env('ACCESS_KEY_ID', default='')
+SECRET_ACCESS_KEY = env('SECRET_ACCESS_KEY', default='')
+AWS_ACCESS_KEY_ID = env.list('AWS_ACCESS_KEY_ID', default=[])
+AWS_SECRET_ACCESS_KEY = env.list('AWS_SECRET_ACCESS_KEY', default=[])
 
 SECRET_KEY = 'c7ki2_gkg4#sjfm-u1%$s#&n#szf01f*v69rwv2qsf#-zmm@tl'
 # DEBUG = True
@@ -76,28 +88,29 @@ TEMPLATES = [
 
 WSGI_APPLICATION = 'Ansjer.eur_config.formal_wsgi.application'
 
-# 服务器类型
-DATABASE_DATA = 'Ansjer81'
-SERVER_HOST = '10.80.1.118'
-DATABASES_USER = 'root'
-DATABASES_PASS = '47vo87fikT19cekVoSq1..'
+# 业务数据库
+DATABASE_DATA = env('DATABASE_DATA')
+SERVER_HOST = env('SERVER_HOST')
+DATABASES_USER = env('DATABASES_USER')
+DATABASES_PASS = env('DATABASES_PASS')
 
-DATABASE_DATA2 = 'Ansjer81'
-SERVER_HOST2 = '10.80.1.216'
-DATABASES_USER2 = 'root'
-DATABASES_PASS2 = '5T0LVKsXwHFkYNTTa5UG..'
+# 推送数据库
+DATABASE_DATA2 = env('DATABASE_DATA2')
+SERVER_HOST2 = env('SERVER_HOST2')
+DATABASES_USER2 = env('DATABASES_USER2')
+DATABASES_PASS2 = env('DATABASES_PASS2')
 
 # 业务代理客户数据库
-DATABASE_DATA3 = 'pro_asj_agent'
-SERVER_HOST3 = '10.80.1.118'
-DATABASES_USER3 = 'root'
-DATABASES_PASS3 = '47vo87fikT19cekVoSq1..'
+DATABASE_DATA3 = env('DATABASE_DATA3')
+SERVER_HOST3 = env('SERVER_HOST3')
+DATABASES_USER3 = env('DATABASES_USER3')
+DATABASES_PASS3 = env('DATABASES_PASS3')
 
 # 袋鼠妈妈数据库
-DATABASE_DATA4 = 'pro_roomumy'
-SERVER_HOST4 = '10.80.1.118'
-DATABASES_USER4 = 'root'
-DATABASES_PASS4 = '47vo87fikT19cekVoSq1..'
+DATABASE_DATA4 = env('DATABASE_DATA4')
+SERVER_HOST4 = env('SERVER_HOST4')
+DATABASES_USER4 = env('DATABASES_USER4')
+DATABASES_PASS4 = env('DATABASES_PASS4')
 
 DATABASES = {
     'default': {

+ 2 - 16
Ansjer/local_config/config_local.py

@@ -12,8 +12,6 @@ AWS相关
 # aws api key
 AWS_ARN_S3 = 'arn:aws-cn:s3'
 REGION_NAME = 'cn-northwest-1'
-ACCESS_KEY_ID = 'AKIA2MMWBR4D3I4YNHSP'
-SECRET_ACCESS_KEY = '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'
 
 # 存储桶
 PUSH_BUCKET = 'push'                                # 推送存储桶
@@ -36,8 +34,8 @@ DOMAIN_HOST = '127.0.0.1'
 SERVER_DOMAIN = 'http://127.0.0.1:8000/'
 SERVER_DOMAIN_SSL = 'http://127.0.0.1:8000/'
 NGINX_RTMP_STAT = 'http://127.0.0.1:8000/stat'
-DETECT_PUSH_DOMAIN = 'http://test.push.dvema.com/'
-DETECT_PUSH_DOMAINS = 'https://test.push.dvema.com/'
+DETECT_PUSH_DOMAIN = 'http://test.push.zositechc.cn/'
+DETECT_PUSH_DOMAINS = 'https://test.push.zositechc.cn/'
 DETECT_PUSH_DOMAIN_JIUAN = 'http://jiuan.push.dvema.com/'
 DETECT_PUSH_DOMAINS_JIUAN = 'https://jiuan.push.dvema.com/'
 TUTK_PUSH_DOMAIN = 'http://push.iotcplatform.com/tpns'
@@ -101,15 +99,3 @@ OCI_CONFIG = {
     }
 }
 OCI_NAMESPACE_NAME = 'cnmlmfa4fooi'
-
-# 域名
-DOMAIN_HOST = 'test.zositechc.cn'
-SERVER_DOMAIN = 'http://test.zositechc.cn/'
-SERVER_DOMAIN_SSL = 'https://test.zositechc.cn/'
-SERVER_DOMAIN_OTA = 'http://test.ota.zositechc.cn/'
-NGINX_RTMP_STAT = 'http://test.zositechc.cn/stat/'
-DETECT_PUSH_DOMAIN = 'http://test.push.dvema.com/'
-DETECT_PUSH_DOMAINS = 'https://test.push.dvema.com/'
-DETECT_PUSH_DOMAIN_JIUAN = 'http://jiuan.push.dvema.com/'
-DETECT_PUSH_DOMAINS_JIUAN = 'https://jiuan.push.dvema.com/'
-TUTK_PUSH_DOMAIN = 'http://push.iotcplatform.com/tpns'

+ 0 - 2
Ansjer/pushconfig.py

@@ -57,8 +57,6 @@ OSS_STS_ACCESS_SECRET = '71uIjpsqVOmF7DAITRyRuc259jHOjO'
 OSS_ROLE_ARN = 'acs:ram::1901342792446414:role/stsoss'
 
 # aws api key
-AWS_ACCESS_KEY_ID = ['AKIA2MMWBR4D3I4YNHSP', 'AKIA2E67UIMD45Y3HL53']  # 0国内, 1国外
-AWS_SECRET_ACCESS_KEY = ['5Q9LsKwa0Q9IRntwDWDzIgDOdT5zayt4M+qJKmuw', 'ckYLg4Lo9ZXJIcJEAKkzf2rWvs8Xth1FCjqiAqUw']
 AWS_ARN = ['arn:aws-cn:s3', 'arn:aws:s3']
 
 

+ 1 - 2
Ansjer/us_config/config_formal.py

@@ -12,8 +12,7 @@ AWS相关
 # aws api key
 AWS_ARN_S3 = 'arn:aws:s3'
 REGION_NAME = 'us-east-1'
-ACCESS_KEY_ID = 'AKIA2E67UIMD45Y3HL53'
-SECRET_ACCESS_KEY = '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'
+KVS_REGION = 'us-east-1'
 
 # 存储桶
 PUSH_BUCKET = 'foreignpush'                         # 推送存储桶

+ 0 - 2
Ansjer/us_config/config_test.py

@@ -144,8 +144,6 @@ TUTK_PUSH_DOMAIN = 'http://push.iotcplatform.com/tpns'
 # aws api key
 AWS_ARN_S3 = 'arn:aws:s3'
 REGION_NAME = 'us-east-1'
-ACCESS_KEY_ID = 'AKIA2E67UIMD45Y3HL53'
-SECRET_ACCESS_KEY = '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'
 
 # 存储桶名
 AVATAR_BUCKET = 'avatar-us'         # 头像存储桶

+ 4 - 1
Controller/AWS/KVSController.py

@@ -16,8 +16,11 @@ from Model.models import KVS, Device_User, Device_Info
 from Object.AWS.AmazonKinesisVideoUtil import AmazonKinesisVideoObject, AmazonKVAMObject
 from Object.RedisObject import RedisObject
 from Object.ResponseObject import ResponseObject
-from Ansjer.config import ACCESS_KEY_ID, SECRET_ACCESS_KEY, REGION_NAME, SERVER_DOMAIN
+from Ansjer.config import REGION_NAME, SERVER_DOMAIN
 from Object.TokenObject import TokenObject
+from django.conf import settings
+ACCESS_KEY_ID = settings.ACCESS_KEY_ID
+SECRET_ACCESS_KEY = settings.SECRET_ACCESS_KEY
 
 
 class UserRelatedView(View):

+ 5 - 3
Controller/AppLogController.py

@@ -7,13 +7,15 @@ import botocore
 import oss2
 from django.views.generic.base import View
 
-from Ansjer.config import OSS_STS_ACCESS_KEY, OSS_STS_ACCESS_SECRET, REGION_NAME, ACCESS_KEY_ID, SECRET_ACCESS_KEY, \
-    LOG_BUCKET
+from Ansjer.config import OSS_STS_ACCESS_KEY, OSS_STS_ACCESS_SECRET, REGION_NAME, LOG_BUCKET
 from Model.models import AppLogModel
 from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
 from Service.CommonService import CommonService
 from Service.ModelService import ModelService
+from django.conf import settings
+ACCESS_KEY_ID = settings.ACCESS_KEY_ID
+SECRET_ACCESS_KEY = settings.SECRET_ACCESS_KEY
 
 
 class AppLogView(View):
@@ -154,7 +156,7 @@ class AppLogView(View):
                     AppLogModel.objects.filter(id=id).delete()
                 except Exception as e:
                     print(repr(e))
-                    return response.json(500, repr(e))
+                    return response.json(500, 'error_line:{}, error_msg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
                 else:
                     return response.json(0)
             else:

+ 4 - 2
Controller/CloudPhoto/CloudPhotoController.py

@@ -13,13 +13,15 @@ from django.db import transaction
 from django.views import View
 
 from Ansjer.cn_config.config_test import PUSH_CLOUD_PHOTO
-from Ansjer.config import ACCESS_KEY_ID, SECRET_ACCESS_KEY, REGION_NAME
+from Ansjer.config import REGION_NAME
 from Model.models import DeviceCloudPhotoInfo, Device_Info, CloudPhotoBGM, DevicePicturePushInfo
 from Object.AWS.AmazonS3Util import AmazonS3Util
 from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
 from Object.utils import LocalDateTimeUtil
-
+from django.conf import settings
+ACCESS_KEY_ID = settings.ACCESS_KEY_ID
+SECRET_ACCESS_KEY = settings.SECRET_ACCESS_KEY
 LOGGER = logging.getLogger('info')
 
 

+ 4 - 1
Controller/CloudStorage.py

@@ -23,7 +23,7 @@ from django.http import JsonResponse, HttpResponseRedirect, HttpResponse
 from django.views.generic.base import View
 
 from AdminController.CloudServiceManage.AgentOrderController import AgentOrderView
-from Ansjer.config import SERVER_DOMAIN, PAYPAL_CRD, SERVER_DOMAIN_SSL, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, \
+from Ansjer.config import SERVER_DOMAIN, PAYPAL_CRD, SERVER_DOMAIN_SSL, \
     AWS_ARN, OAUTH_ACCESS_TOKEN_SECRET, DETECT_PUSH_DOMAINS, CONFIG_INFO, CONFIG_CN, BINOCULAR_DEVICE_TYPE, CONFIG_US, \
     CONFIG_TEST, CONFIG_EUR
 from Controller.CheckUserData import DataValid
@@ -52,6 +52,9 @@ from Service.VodHlsService import SplitVodHlsObject
 ssl._create_default_https_context = ssl._create_unverified_context
 LOGGER = logging.getLogger('info')
 
+from django.conf import settings
+AWS_ACCESS_KEY_ID = settings.AWS_ACCESS_KEY_ID
+AWS_SECRET_ACCESS_KEY = settings.AWS_SECRET_ACCESS_KEY
 
 # 设备信息添加
 class CloudStorageView(View):

+ 4 - 3
Controller/Cron/CronCloudPhotoController.py

@@ -16,14 +16,15 @@ import cv2
 from django.db import transaction
 from django.views import View
 
-from Ansjer.config import PUSH_CLOUD_PHOTO, ACCESS_KEY_ID, SECRET_ACCESS_KEY, REGION_NAME, PUSH_BUCKET
+from Ansjer.config import PUSH_CLOUD_PHOTO, REGION_NAME, PUSH_BUCKET
 from Model.models import UidSetModel, DeviceCloudPhotoInfo, DevicePicturePushInfo
 from Object.AWS.AmazonS3Util import AmazonS3Util
 from Object.RedisObject import RedisObject
 from Object.ResponseObject import ResponseObject
 from Object.utils import LocalDateTimeUtil
-from Service.EquipmentInfoService import EquipmentInfoService
-
+from django.conf import settings
+ACCESS_KEY_ID = settings.ACCESS_KEY_ID
+SECRET_ACCESS_KEY = settings.SECRET_ACCESS_KEY
 LOGGER = logging.getLogger('info')
 UID_KEY = 'ANSJER:UID:SET:INFO'
 

+ 5 - 2
Controller/Cron/CronTaskController.py

@@ -23,8 +23,8 @@ from django.db.models import Q, Sum, Count
 from django.views import View
 
 from Ansjer.config import USED_SERIAL_REDIS_LIST, UNUSED_SERIAL_REDIS_LIST, CONFIG_INFO, CONFIG_US, \
-    RESET_REGION_ID_SERIAL_REDIS_LIST, LOGGER, PAYPAL_CRD, CONFIG_EUR, DETECT_PUSH_DOMAINS, ACCESS_KEY_ID, \
-    SECRET_ACCESS_KEY, REGION_NAME, CONFIG_CN
+    RESET_REGION_ID_SERIAL_REDIS_LIST, LOGGER, PAYPAL_CRD, CONFIG_EUR, DETECT_PUSH_DOMAINS, \
+    REGION_NAME, CONFIG_CN
 from Model.models import Device_User, Device_Info, UidSetModel, UID_Bucket, Unused_Uid_Meal, Order_Model, StsCrdModel, \
     VodHlsModel, ExperienceContextModel, AiService, VodHlsSummary, VideoPlaybackTimeModel, DeviceUserSummary, \
     CountryModel, DeviceTypeModel, OrdersSummary, DeviceInfoSummary, CompanySerialModel, \
@@ -44,6 +44,9 @@ from Object.UnicomObject import UnicomObjeect
 from Object.WechatPayObject import WechatPayObject
 from Object.AliPayObject import AliPayObject
 from dateutil.relativedelta import relativedelta
+from django.conf import settings
+ACCESS_KEY_ID = settings.ACCESS_KEY_ID
+SECRET_ACCESS_KEY = settings.SECRET_ACCESS_KEY
 
 
 class CronDelDataView(View):

+ 4 - 1
Controller/DetectControllerV2.py

@@ -12,7 +12,7 @@ from django.views.generic.base import View
 from obs import ObsClient
 
 from Ansjer.config import DETECT_PUSH_DOMAIN, DETECT_PUSH_DOMAINS, DETECT_PUSH_DOMAIN_JIUAN, DETECT_PUSH_DOMAINS_JIUAN, \
-    OSS_STS_ACCESS_KEY, OSS_STS_ACCESS_SECRET, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, LOGGER, ALGORITHM_COMBO_TYPES, \
+    OSS_STS_ACCESS_KEY, OSS_STS_ACCESS_SECRET, LOGGER, ALGORITHM_COMBO_TYPES, \
     HUAWEICLOUD_AK, HUAWEICLOUD_SK, HUAWEICLOUD_OBS_SERVER, HUAWEICLOUD_PUSH_BUKET
 from Ansjer.config import PUSH_BUCKET, CONFIG_INFO, CONFIG_CN, CONFIG_EUR, CONFIG_US
 from Ansjer.config import PUSH_REDIS_ADDRESS
@@ -28,6 +28,9 @@ from Object.utils import LocalDateTimeUtil
 from Service.CommonService import CommonService
 from Service.EquipmentInfoService import EquipmentInfoService
 from Service.VodHlsService import SplitVodHlsObject
+from django.conf import settings
+AWS_ACCESS_KEY_ID = settings.AWS_ACCESS_KEY_ID
+AWS_SECRET_ACCESS_KEY = settings.AWS_SECRET_ACCESS_KEY
 
 
 class DetectControllerViewV2(View):

+ 6 - 3
Controller/DeviceLogController.py

@@ -7,7 +7,10 @@ from django.views.generic.base import View
 from Model.models import DeviceLogModel
 from Service.CommonService import CommonService
 from Object.ResponseObject import ResponseObject
-from Ansjer.config import REGION_NAME, ACCESS_KEY_ID, SECRET_ACCESS_KEY, LOG_BUCKET
+from Ansjer.config import REGION_NAME, LOG_BUCKET
+from django.conf import settings
+ACCESS_KEY_ID = settings.ACCESS_KEY_ID
+SECRET_ACCESS_KEY = settings.SECRET_ACCESS_KEY
 
 
 class DeviceLogView(View):
@@ -76,7 +79,7 @@ class DeviceLogView(View):
             return response.json(0, {'put_url_list': put_url_list})
         except Exception as e:
             print(e)
-            return response.json(500, repr(e))
+            return response.json(500, 'error_line:{}, error_msg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
 
     def uploaded(self, request, request_dict, response):
         uid = request_dict.get('uid', None)
@@ -102,4 +105,4 @@ class DeviceLogView(View):
             return response.json(0)
         except Exception as e:
             print(e)
-            return response.json(500, repr(e))
+            return response.json(500, 'error_line:{}, error_msg:{}'.format(e.__traceback__.tb_lineno, repr(e)))

+ 8 - 5
Controller/FeedBack.py

@@ -6,7 +6,7 @@ import oss2
 from django.db import transaction
 from django.views.generic.base import View
 
-from Ansjer.config import ACCESS_KEY_ID, SECRET_ACCESS_KEY, REGION_NAME, PUSH_BUCKET, PUSH_INACCURATE_BUCKET
+from Ansjer.config import REGION_NAME, PUSH_BUCKET, PUSH_INACCURATE_BUCKET
 from Ansjer.config import OSS_STS_ACCESS_KEY, OSS_STS_ACCESS_SECRET, LOGGER
 from Model.models import FeedBackModel, StatResModel, PushInaccurateFeedback, SysMsgModel
 from Object.AWS.AmazonS3Util import AmazonS3Util
@@ -16,6 +16,9 @@ from Object.utils import LocalDateTimeUtil
 from Service.CommonService import CommonService
 from Service.ModelService import ModelService
 from Service.EquipmentInfoService import EquipmentInfoService
+from django.conf import settings
+ACCESS_KEY_ID = settings.ACCESS_KEY_ID
+SECRET_ACCESS_KEY = settings.SECRET_ACCESS_KEY
 
 
 class FeedBackView(View):
@@ -213,7 +216,7 @@ class FeedBackView(View):
             print('----------')
 
         except Exception as e:
-            return response.json(500, repr(e))
+            return response.json(500, 'error_line:{}, error_msg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
         else:
             return response.json(0)
 
@@ -239,7 +242,7 @@ class FeedBackView(View):
                 try:
                     fb_qs = FeedBackModel.objects.filter()
                 except Exception as e:
-                    return response.json(500, repr(e))
+                    return response.json(500, 'error_line:{}, error_msg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
                 print('----------')
                 if filter_data:
                     fb_qs = fb_qs.filter(**filter_data)
@@ -292,7 +295,7 @@ class FeedBackView(View):
                 fb_qs.delete()
                 print('----------')
             except Exception as e:
-                return response.json(500, repr(e))
+                return response.json(500, 'error_line:{}, error_msg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
             else:
                 return response.json(0)
         else:
@@ -367,7 +370,7 @@ class FeedBackView(View):
             else:
                 return response.json(174)
         except Exception as e:
-            return response.json(500, repr(e))
+            return response.json(500, 'error_line:{}, error_msg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
 
     @staticmethod
     def push_inaccurate(user_id, request_dict, response):

+ 4 - 1
Controller/PcInfo.py

@@ -16,13 +16,16 @@ from Model.models import Pc_Info, PctestlogModel, AVSSVersion
 from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
 from Service.CommonService import CommonService
-from Ansjer.config import AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_ARN, BASE_DIR
+from Ansjer.config import AWS_ARN, BASE_DIR
 import boto3
 import botocore
 from botocore import client
 from wsgiref.util import FileWrapper
 from zlib import crc32
 from typing import Union
+from django.conf import settings
+AWS_ACCESS_KEY_ID = settings.AWS_ACCESS_KEY_ID
+AWS_SECRET_ACCESS_KEY = settings.AWS_SECRET_ACCESS_KEY
 
 
 class PcInfo(View):

+ 4 - 2
Controller/S3GetStsController.py

@@ -9,13 +9,15 @@ import boto3
 from django.http import HttpResponse, JsonResponse
 from django.views import View
 
-from Ansjer.config import AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_ARN
+from Ansjer.config import AWS_ARN
 from Controller.DeviceConfirmRegion import Device_Region
 from Model.models import Device_User, Device_Info, iotdeviceInfoModel, UIDCompanySerialModel, \
     SerialNumberModel
 from Object.IOTCore.IotObject import IOTClient
 from Object.ResponseObject import ResponseObject
-from Service.CommonService import CommonService
+from django.conf import settings
+AWS_ACCESS_KEY_ID = settings.AWS_ACCESS_KEY_ID
+AWS_SECRET_ACCESS_KEY = settings.AWS_SECRET_ACCESS_KEY
 
 
 class S3GetStsView(View):

+ 7 - 2
Controller/TestApi.py

@@ -46,8 +46,7 @@ from django.utils.decorators import method_decorator
 from django.views.decorators.csrf import csrf_exempt
 from django.views.generic.base import View
 from django.contrib.auth.hashers import make_password  # 对密码加密模块
-from Ansjer.config import OSS_STS_ACCESS_KEY, OSS_STS_ACCESS_SECRET, AWS_ACCESS_KEY_ID, \
-    AWS_SECRET_ACCESS_KEY, SERVER_TYPE, AWS_SES_ACCESS_REGION
+from Ansjer.config import OSS_STS_ACCESS_KEY, OSS_STS_ACCESS_SECRET, SERVER_TYPE, AWS_SES_ACCESS_REGION
 from Model.models import Order_Model, Store_Meal, DeviceLogModel, VodBucketModel, \
     TestSerialRepetition, UIDCompanySerialModel, CompanySerialModel, LogModel, AbnormalOrder
 from Object.ResponseObject import ResponseObject
@@ -57,6 +56,12 @@ from Object.m3u8generate import PlaylistGenerator
 from Model.models import Device_Info, UID_Bucket, UID_Preview, UidSetModel
 from Ansjer.config import SERVER_DOMAIN_SSL
 
+from django.conf import settings
+ACCESS_KEY_ID = settings.ACCESS_KEY_ID
+SECRET_ACCESS_KEY = settings.SECRET_ACCESS_KEY
+AWS_ACCESS_KEY_ID = settings.AWS_ACCESS_KEY_ID
+AWS_SECRET_ACCESS_KEY = settings.AWS_SECRET_ACCESS_KEY
+
 SERVER_DOMAIN = 'http://test.dvema.com/'
 ACCESS_KEY = "AKIA2E67UIMD3CYTIWPA"
 SECRET_KEY = "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"

+ 4 - 1
Controller/UserController.py

@@ -27,7 +27,7 @@ from ratelimit import limits
 
 from Ansjer.config import AuthCode_Expire, SERVER_DOMAIN, TUTK_PUSH_DOMAIN, \
     LOGGER, CONFIG_US, APP_MAPPING, DETECT_PUSH_DOMAINS
-from Ansjer.config import BASE_DIR, CONFIG_EUR, CONFIG_INFO, SERVER_DOMAIN_EUR, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY
+from Ansjer.config import BASE_DIR, CONFIG_EUR, CONFIG_INFO, SERVER_DOMAIN_EUR
 from Controller.CheckUserData import DataValid, date_handler, RandomStr
 from Controller.UserDevice.UserSubscriptionController import UserSubscriptionControllerView
 from Model.models import Device_User, Role, UidPushModel, UserOauth2Model, UserExModel, Device_Info, UidSetModel, \
@@ -44,6 +44,9 @@ from Service.CommonService import CommonService
 from Service.ModelService import ModelService
 from Service.TemplateService import TemplateService
 from Object.AWS.S3Email import S3Email
+from django.conf import settings
+AWS_ACCESS_KEY_ID = settings.AWS_ACCESS_KEY_ID
+AWS_SECRET_ACCESS_KEY = settings.AWS_SECRET_ACCESS_KEY
 
 
 # 获取验证码

+ 4 - 3
Controller/UserDevice/UserDeviceShareController.py

@@ -24,11 +24,12 @@ from Object.ContentSecurityObject import ContentSecurity
 from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
 from Service.UserDeviceService import UserDeviceService
-from Ansjer.config import CONFIG_CN, CONFIG_INFO, CONFIG_TEST, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, \
-    AWS_SES_ACCESS_REGION, AWS_IOT_SES_ACCESS_CHINA_REGION
+from Ansjer.config import CONFIG_CN, CONFIG_INFO, CONFIG_TEST
 from Model.models import DeviceWallpaper
 from Object.AWS.AmazonS3Util import AmazonS3Util
-
+from django.conf import settings
+AWS_ACCESS_KEY_ID = settings.AWS_ACCESS_KEY_ID
+AWS_SECRET_ACCESS_KEY = settings.AWS_SECRET_ACCESS_KEY
 LOGGER = logging.getLogger('info')
 
 

+ 4 - 1
Controller/UserManger.py

@@ -11,7 +11,7 @@ from django.views.decorators.csrf import csrf_exempt
 from django.views.generic import TemplateView, View
 
 from Ansjer.cn_config.config_test import REGION_NAME2
-from Ansjer.config import BASE_DIR, ACCESS_KEY_ID, SECRET_ACCESS_KEY, REGION_NAME, AVATAR_BUCKET, CONFIG_INFO, \
+from Ansjer.config import BASE_DIR, REGION_NAME, AVATAR_BUCKET, CONFIG_INFO, \
     CONFIG_CN, CONFIG_TEST, LOGGER
 from Ansjer.config import SERVER_DOMAIN
 from Model.models import Role, Device_User, UserOauth2Model, UserExModel, CountryLanguageModel, LanguageModel, App_Info
@@ -21,6 +21,9 @@ from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
 from Service.CommonService import CommonService
 from Service.ModelService import ModelService
+from django.conf import settings
+ACCESS_KEY_ID = settings.ACCESS_KEY_ID
+SECRET_ACCESS_KEY = settings.SECRET_ACCESS_KEY
 
 
 class showUserMoreView(TemplateView):

+ 4 - 1
Object/AWS/S3Email.py

@@ -5,7 +5,10 @@ from email.mime.text import MIMEText
 
 import boto3
 
-from Ansjer.config import AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, LOGGER
+from Ansjer.config import LOGGER
+from django.conf import settings
+AWS_ACCESS_KEY_ID = settings.AWS_ACCESS_KEY_ID
+AWS_SECRET_ACCESS_KEY = settings.AWS_SECRET_ACCESS_KEY
 
 
 class S3Email:

+ 4 - 1
Roomumy/Controller/BabyController.py

@@ -11,13 +11,16 @@ import time
 
 from django.db import transaction
 from django.views import View
-from Ansjer.cn_config.config_formal import SECRET_ACCESS_KEY, ACCESS_KEY_ID, REGION_NAME
+from Ansjer.cn_config.config_formal import REGION_NAME
 from Model.models import Device_Info
 
 from Object.AWS.AmazonS3Util import AmazonS3Util
 from Roomumy.models import BabyUser, BabyGrowthStandard, DevelopmentalPoints
 from Service.CommonService import CommonService
 from Ansjer.config import LOGGER
+from django.conf import settings
+ACCESS_KEY_ID = settings.ACCESS_KEY_ID
+SECRET_ACCESS_KEY = settings.SECRET_ACCESS_KEY
 
 
 class BabyView(View):

+ 4 - 2
Roomumy/Controller/TimeAlbumController.py

@@ -6,11 +6,13 @@ import botocore
 from django.core.paginator import Paginator
 from django.views import View
 from obs import ObsClient
-from Ansjer.config import HUAWEICLOUD_AK, HUAWEICLOUD_SK, HUAWEICLOUD_OBS_SERVER, CONFIG_INFO, CONFIG_CN, CONFIG_TEST, \
-    AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY
+from Ansjer.config import HUAWEICLOUD_AK, HUAWEICLOUD_SK, HUAWEICLOUD_OBS_SERVER, CONFIG_INFO, CONFIG_CN, CONFIG_TEST
 
 from Roomumy.models import TimeAlbum, AlbumMedia, TimeDiary, DiaryAlbumMediaRelation
 from Service.CommonService import CommonService
+from django.conf import settings
+AWS_ACCESS_KEY_ID = settings.AWS_ACCESS_KEY_ID
+AWS_SECRET_ACCESS_KEY = settings.AWS_SECRET_ACCESS_KEY
 
 
 class TimeAlbumView(View):