配置文件注解
<ul>
<li><a href="#database_conf">1.数据库配置</a></li>
<li><a href="#data_conf">2.数据分析配置</a></li>
<li><a href="#oss_conf">3.OSS配置</a></li>
<li><a href="#timing_task_conf">4.定时任务</a></li>
<li><a href="#earning_grant_conf">5.收益发放配置</a></li>
</ul>
<p><br><h3 id="database_conf">1.数据库配置</h3></p>
<ul>
<li>
<p>文件路径:</p>
<blockquote>
<p><code>dao/conf/conf_deault.py, dao/conf/conf_override.py</code></p>
</blockquote>
</li>
<li>
<p>备注:</p>
<blockquote>
<p>conf_default.py与conf_override.py文件皆为数据库配置文件
默认default文件不修改, 所有数据库配置文件需要更改皆在conf_override内替换
default文件内value为None的key,需要在conf_override.py文件中进行覆盖</p>
</blockquote>
</li>
<li>配置内容:
<blockquote>
<pre><code>configs = {
# mysql配置
'mysql': {
'host': '172.16.1.79', # 地址
'user': 'oss', # 用户
'database': 'oss_dev', # 数据库
'password': '123456' # 密码
},
# redis数据库配置
'redis': {
'host': '172.16.1.79', # 地址
'db': 1 # 数据库
}
}</code></pre>
</blockquote></li>
</ul>
<p><br><h3 id="data_conf">2.数据分析配置</h3></p>
<ol>
<li>
<p>文件路径:</p>
<blockquote>
<p><code>DDD/external/EghData/egh_data_conf.py</code></p>
</blockquote>
</li>
<li>
<p>备注:</p>
<blockquote>
<p>此配置为数据分析请求配置文件</p>
</blockquote>
</li>
<li>
<p>配置内容:</p>
<blockquote>
<pre><code>egh_data_conf = {
"egh_data_address": "egh_data_address",
"aes_key": "aes_key",
"aes_iv": "aes_iv",
"app_code": "app_code"
}</code></pre>
</blockquote>
</li>
<li>配置参数详解:
1.<code>egh_data_address</code>: 数据分析请求接口</li>
</ol>
<p> 2.<code>aes_key</code>: 注册数据分析时返回的加密参数</p>
<p> 3.<code>aes_iv</code>: 注册数据分析时返回的加密参数</p>
<p> 4.<code>app_code</code>: 注册数据分析时返回的加密参数</p>
<p><br><h3 id="oss_conf">3.OSS配置</h3></p>
<ol>
<li>
<p>文件路径:</p>
<blockquote>
<p><code>DDD/external/OssAPIService/oss_task_conf.py</code></p>
</blockquote>
</li>
<li>
<p>备注:</p>
<blockquote>
<p>此配置为自动支付与发放批次生成支付批次时参数</p>
</blockquote>
</li>
<li>
<p>配置内容:</p>
<blockquote>
<pre><code>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"
}
}</code></pre>
<p><strong>double underscores</strong></p>
</blockquote>
</li>
<li>配置参数详解:
1.<code>task_time.push_time</code>: 原提现批次推送时间(作废)</li>
</ol>
<p> 2.<code>task_time.confirm_time</code>: 原提现批次确认时间(作废)</p>
<p> 3.<code>task_time.pull_time</code>: 原提现批次拉取时间(作废)</p>
<p> 4.<code>task_time.pull_interval</code>: 原提现批次拉取间隔时间(作废)</p>
<p> 5.<code>task_interval.create_withdrawl_bat_task_interval_time</code>: 提现记录创建批次时间.
> 参数值为列表, 执行时间为初始时间+遍历参数值
> 列表内容为执行时间间隔, 如填写5, 则代表定时任务执行时间+5分钟后创建批次()
> 与<a href="#timing_task_conf">定时任务配置相关</a>, 初始时间为定时任务执行时间.列表内如填写n个则代表执行n次, 执行时间分别为初始时间+参数值.</p>
<p> 6.<code>task_interval.bat_push_and_audit_task_interval_time</code>: 推送提现批次至OSS时间, 其余同上.</p>
<p> 7.<code>task_interval.bat_grant_task_interval_time</code>: 提现批次支付时间, 其余同上.</p>
<p> 8.<code>task_interval.bat_pull_task_interval_time</code>: 提现批次支付时间, 其余同上.</p>
<p> 9.<code>oss_conf.oss_address</code>: OSS开放接口地址.</p>
<p> 10.<code>oss_conf.notify_url</code>: EGH开放回单回调地址.</p>
<p> 11.<code>oss_conf.aes_key</code>: 开放接口加密参数.</p>
<p> 12.<code>oss_conf.ase_iv</code>: 开放接口加密参数.</p>
<p> 13.<code>oss_conf.app_code</code>: 开放接口加密参数.</p>
<p><br><h3 id="timing_task_conf">4.定时任务配置</h3></p>
<ol>
<li>
<p>文件路径:</p>
<blockquote>
<p><code>manager/celery_flask/celery_config.py</code>, <code>manager/conf/conf_default.py</code></p>
</blockquote>
</li>
<li>
<p>备注:</p>
<blockquote>
<p>celery_config配置为定时任务配置
conf_default为定时任务执行时间配置</p>
</blockquote>
</li>
<li>
<p>配置内容:
celery_config.py</p>
<blockquote>
<pre><code>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',
}</code></pre>
<p>conf_default.py</p>
<pre><code>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
},
}
}</code></pre>
</blockquote>
</li>
<li>配置参数详解(<font color="red">参数过多,只对需要经常修改以及比较重要的参数进行注解</font>):
1.<code>celery_config.py/celery_config.beat_schedule</code>: 定时任务配置
> 定时任务字典, key为定时任务名称, value为定时任务配置
> <code>task</code>: 定时任务执行函数地址
> <font id="schedule"><code>schedule</code></font>: 定时任务执行时间, 格式为 <code>time_config('polling_task')</code>, polling_task与<a href="#celery_time_conf">定时任务执行时间配置</a>相关, 为<a href="#celery_time_conf">定时任务执行时间配置</a>的<code>key</code>
> <code>args</code>: 定时任务执行参数(默认为())</li>
</ol>
<p> 2.<code>conf_default.py/configs.celery</code>: <font id="celery_time_conf"> 定时任务执行时间配置</font>
> 定时任务字典, <code>key</code>为定时任务配置的 <a href="#schedule">schedule</a>内的参数, <code>value</code>为定时任务时间配置字典
> <code>model</code>: 任务执行时间配置类型 1:每天的 <a href="#exc_at">exc_at</a> 时间执行,2:间隔 <a href="#interval">interval</a> 时间执行一次
> <font id="exc_at"><code>exc_at</code></font>: 定时任务执行时间
> <font id="interval"><code>interval</code></font>: 定时任务间隔执行时间, 单位:秒, 例: 60 * 60 * 4 则为4小时
> <code>long_after</code>;从任务表中取多久之后的任务,单位:秒</p>
<ol>
<li>现有celery启动定时任务统计:
1.<code>polling_task</code>: 轮询定时任务
2.<code>create_auto_grant_batch_task</code>: 正常提现创建批次与自动支付定时任务
3.<code>create_pay_withdrawl_bat_auto_grant_batch_task</code>: 修改收款账户创建批次与自动支付定时任务</li>
</ol>
<p><br><h3 id="earning_grant_conf">5.收益发放配置</h3></p>
<ol>
<li>
<p>文件路径:</p>
<blockquote>
<p><code>service/conf/config.ini</code></p>
</blockquote>
</li>
<li>
<p>备注:</p>
<blockquote>
<p>此配置为收益发放配置与其小程序等配置</p>
</blockquote>
</li>
<li>
<p>配置内容:</p>
<blockquote>
<pre><code>[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"</code></pre>
</blockquote>
</li>
<li>配置参数详解:
1.<code>error_min</code>: 校验误差范围</li>
</ol>
<p> 2.<code>error_max</code>: 校验误差范围</p>
<p> 3.<code>daily_limit</code>: 每日限额(失效)</p>
<p> 4.<code>fee_rate</code>: 提现手续费</p>
<p> 5.<code>online_status</code>: 上线完整状态</p>
<p> 6.<code>alipay_btn</code>: 微信真实用户可访问内容</p>
<p> 7.<code>bankcard_btn</code>: 微信真实用户可访问内容</p>
<p> 8.<code>withdrawal_btn</code>: 微信真实用户可访问内容</p>
<p> 9.<code>acctinfo_btn</code>: 微信真实用户可访问内容</p>
<p> 10.<code>etr_stl_mode_btn</code>: 微信真实用户可访问内容</p>
<p> 11.<code>withdrawal</code>: 小程序功能设置信息</p>
<p> 12.<code>bankcard</code>: 小程序功能设置信息</p>
<p> 13.<code>alipay</code>: 小程序功能设置信息</p>
<p> 14.<code>acctinfo</code>: 小程序功能设置信息</p>
<p> 15.<code>etr_stl_mode</code>: 小程序功能设置信息</p>
<p> 16.<code>etr_rate</code>: 小程序功能设置信息</p>
<p> 17.<code>auto_grant</code>: 自动收益发放</p>
<p> 18.<code>day_grant_date</code>: 收益发放当天统计时间点</p>