嗨玩后端开发规范

数据库表调整记录


配置文件注解

<br><h3 id="database_conf">1.数据库配置</h3>

  • 文件路径: > dao/conf/conf_deault.py, dao/conf/conf_override.py

  • 备注: > conf_default.py与conf_override.py文件皆为数据库配置文件 > 默认default文件不修改, 所有数据库配置文件需要更改皆在conf_override内替换 > default文件内value为None的key,需要在conf_override.py文件中进行覆盖

  • 配置内容: > ``` configs = {   # mysql配置   'mysql': {     'host': '172.16.1.79',  # 地址     'user': 'oss',  # 用户     'database': 'oss_dev',  # 数据库     'password': '123456'  # 密码   },   # redis数据库配置   'redis': {     'host': '172.16.1.79',  # 地址     'db': 1  # 数据库   } }

<br><h3 id="data_conf">2.数据分析配置</h3>

  1. 文件路径: > DDD/external/EghData/egh_data_conf.py

  2. 备注: > 此配置为数据分析请求配置文件

  3. 配置内容: > ``` egh_data_conf = {     "egh_data_address": "egh_data_address",     "aes_key": "aes_key",     "aes_iv": "aes_iv",     "app_code": "app_code" }

  4. 配置参数详解:   1.egh_data_address: 数据分析请求接口

  2.aes_key: 注册数据分析时返回的加密参数

  3.aes_iv: 注册数据分析时返回的加密参数

  4.app_code: 注册数据分析时返回的加密参数

<br><h3 id="oss_conf">3.OSS配置</h3>

  1. 文件路径: > DDD/external/OssAPIService/oss_task_conf.py

  2. 备注: > 此配置为自动支付与发放批次生成支付批次时参数

  3. 配置内容: > ``` oss_task_conf = {   "task_time": {     # 推送任务每日执行时间     "push_time": "17:05:00",     # 确认批次任务每日执行时间     "confirm_time": "17:10:00",     # 获取任务每日执行时间     "pull_time": "17:15:00",     # 获取任务执行失败下次执行间隔时间 当前结束时间+pull_interval     "pull_interval": 4,   },   "task_interval":    {     # 创建批次定时任务间隔时间     "create_withdrawl_bat_task_interval_time": [5],     # 推送批次间隔时间     "bat_push_and_audit_task_interval_time": [10],     # 批次发放间隔时间     "bat_grant_task_interval_time": [20],     # 批次拉取间隔时间     "bat_pull_task_interval_time": [30, 40],   },   "oss_conf": {     "oss_address": "oss_address",     "notify_url": "notify_url",     "aes_key": "aes_key",     "ase_iv": "ase_iv",     "app_code": "app_code"   } }

    
    __double underscores__
  4. 配置参数详解:   1.task_time.push_time: 原提现批次推送时间(作废)

  2.task_time.confirm_time: 原提现批次确认时间(作废)

  3.task_time.pull_time: 原提现批次拉取时间(作废)

  4.task_time.pull_interval: 原提现批次拉取间隔时间(作废)

  5.task_interval.create_withdrawl_bat_task_interval_time: 提现记录创建批次时间.   > 参数值为列表, 执行时间为初始时间+遍历参数值   > 列表内容为执行时间间隔, 如填写5, 则代表定时任务执行时间+5分钟后创建批次()   > 与定时任务配置相关, 初始时间为定时任务执行时间.列表内如填写n个则代表执行n次, 执行时间分别为初始时间+参数值.

  6.task_interval.bat_push_and_audit_task_interval_time: 推送提现批次至OSS时间, 其余同上.

  7.task_interval.bat_grant_task_interval_time: 提现批次支付时间, 其余同上.

  8.task_interval.bat_pull_task_interval_time: 提现批次支付时间, 其余同上.

  9.oss_conf.oss_address: OSS开放接口地址.

  10.oss_conf.notify_url: EGH开放回单回调地址.

  11.oss_conf.aes_key: 开放接口加密参数.

  12.oss_conf.ase_iv: 开放接口加密参数.

  13.oss_conf.app_code: 开放接口加密参数.

<br><h3 id="timing_task_conf">4.定时任务配置</h3>

  1. 文件路径: > manager/celery_flask/celery_config.py, manager/conf/conf_default.py

  2. 备注: > celery_config配置为定时任务配置 > conf_default为定时任务执行时间配置

  3. 配置内容: celery_config.py > ``` celery_config = {   # Broker 地址   "broker": f"redis://{configs['redis']['host']}:{configs['redis']['port']}/3",   # 结果存储地址   "backend": f"redis://{configs['redis']['host']}:{configs['redis']['port']}/4",   # 任务路径   "include": ['manager.celery_flask.celery_tasks'],   # 定时任务   "beat_schedule": {     # 轮询定时任务     'polling_task': {       'task': 'manager.celery_flask.celery_tasks.polling_task',       'schedule': time_config('polling_task'),       'args': ()     },     # 创建自动支付任务     'create_auto_grant_batch_task': {       'task': 'manager.celery_flask.celery_tasks.create_auto_grant_batch_task',       'schedule': time_config('create_auto_grant_batch_task'),       'args': ()     },     # 创建修改收款账户定时自动支付任务     'create_pay_withdrawl_bat_auto_grant_batch_task': {       'task': 'manager.celery_flask.celery_tasks.create_pay_withdrawl_bat_auto_grant_batch_task',       'schedule': time_config('create_pay_withdrawl_bat_auto_grant_batch_task'),       'args': ()     },   },   # 任务序列化方式   "task_serializer": 'pickle',   # 任务执行结果序列化方式   "result_serializer": 'json',   # 指定任务接受的内容类型(序列化)   "accept_content": ['json', 'pickle'],   # 是否使用UTC   "enable_utc": False,   # 时区   "timezone": 'Asia/Shanghai', }

    conf_default.py

    configs = {   # 阿里云配置   'aliyun': {     'access_key_id': 'access_key_id',     'access_secret': 'access_secret',     'region_id': 'region_id',     'sign_name': 'sign_name'   },   # 小程序配置   'wechat': {     'appid': 'appid',     'secret': 'secret'   },   # 3c校验配置   'mobile3c': {     'get_way': 'get_way',     'app_code': 'app_code'   },   # 2c校验配置   'idcardnum2c': {     'get_way': 'get_way',     'app_code': 'app_code'   },   # 银行卡校验配置   'bankcardnum3c': {     'get_way': 'get_way',     'app_code': 'app_code'   },   # 开户行校验地址   'bankaddress': {     'get_way': 'get_way',     'app_code': 'app_code'   },   'celery': {     # 轮询任务时间设置     'polling_task':       {         # 轮询任务执行时间配置类型1:每天的00:00执行,2:间隔多长时间执行一次         'model': 2,         # 每天的几点几分,执行该轮询任务         'exc_at': '18:54',         # 间隔多长时间执行一次,单位:秒         'interval': 60,         # 从任务表中取多久之后的任务,单位:秒         'long_after': 3600 1       },     # 自动支付     'create_auto_grant_batch_task':       {         'model': 2,         'exc_at': '22:00',         'interval': 60 60 4,         'long_after': 3600 1       },     # 修改收款账户自动支付     'create_pay_withdrawl_bat_auto_grant_batch_task':       {         'model': 1,         'exc_at': '17:55',         'interval': 60 60 4,         'long_after': 3600 * 1       },   } }

  4. 配置参数详解(<font color="red">参数过多,只对需要经常修改以及比较重要的参数进行注解</font>):   1.celery_config.py/celery_config.beat_schedule: 定时任务配置   > 定时任务字典, key为定时任务名称, value为定时任务配置   > task: 定时任务执行函数地址   > <font id="schedule">schedule</font>: 定时任务执行时间, 格式为 time_config('polling_task'), polling_task与定时任务执行时间配置相关, 为定时任务执行时间配置key   > args: 定时任务执行参数(默认为())

  2.conf_default.py/configs.celery: <font id="celery_time_conf"> 定时任务执行时间配置</font>   > 定时任务字典, key为定时任务配置的 schedule内的参数, value为定时任务时间配置字典   > model: 任务执行时间配置类型 1:每天的 exc_at 时间执行,2:间隔 interval 时间执行一次   > <font id="exc_at">exc_at</font>: 定时任务执行时间   > <font id="interval">interval</font>: 定时任务间隔执行时间, 单位:秒, 例: 60 * 60 * 4 则为4小时   > long_after;从任务表中取多久之后的任务,单位:秒

  1. 现有celery启动定时任务统计:   1.polling_task: 轮询定时任务   2.create_auto_grant_batch_task: 正常提现创建批次与自动支付定时任务   3.create_pay_withdrawl_bat_auto_grant_batch_task: 修改收款账户创建批次与自动支付定时任务

<br><h3 id="earning_grant_conf">5.收益发放配置</h3>

  1. 文件路径: > service/conf/config.ini

  2. 备注: > 此配置为收益发放配置与其小程序等配置

  3. 配置内容: > ``` [stl] error_min = 1 error_max = 3 [wallet] daily_limit = 10000 fee_rate = 0 [online] online_status = 2 [wechat_secret_info] alipay_btn = "添加支付宝" bankcard_btn = "添加银行卡" withdrawal_btn = "申请提现" acctinfo_btn = "修改账户信息" etr_stl_mode_btn = "艺人结算方式修改" [applet_btn] withdrawal = 1 bankcard = 1 alipay = 1 acctinfo = 1 etr_stl_mode = 1 etr_rate = 0

    收益发放配置

    [earning_grant] auto_grant = 1 day_grant_date = "17:00:00"

  4. 配置参数详解:   1.error_min: 校验误差范围

  2.error_max: 校验误差范围

  3.daily_limit: 每日限额(失效)

  4.fee_rate: 提现手续费

  5.online_status: 上线完整状态

  6.alipay_btn: 微信真实用户可访问内容

  7.bankcard_btn: 微信真实用户可访问内容

  8.withdrawal_btn: 微信真实用户可访问内容

  9.acctinfo_btn: 微信真实用户可访问内容

  10.etr_stl_mode_btn: 微信真实用户可访问内容

  11.withdrawal: 小程序功能设置信息

  12.bankcard: 小程序功能设置信息

  13.alipay: 小程序功能设置信息

  14.acctinfo: 小程序功能设置信息

  15.etr_stl_mode: 小程序功能设置信息

  16.etr_rate: 小程序功能设置信息

  17.auto_grant: 自动收益发放

  18.day_grant_date: 收益发放当天统计时间点

页面列表

ITEM_HTML