📝 核心函数逻辑(885行)
1. get_bk_topic()(54-132行)
· 从药爆报平台获取夜间拼团主题的提报数据
· 同时获取平台排名前500品种信息
2. get_bk_topic_mes()(134-221行)
· 从后台获取已提报活动信息
· 关联商圈覆盖率、实际库存、单店上限
· 筛选:爆款补贴或强推必补活动
3. get_drug_last_week()(224-293行)
· 获取上周六至周日的销售数据
· 按主ID分组,取参团店数最多的前2个活动
4. get_his_sale_store()(384-434行)
· 获取近3周(本周+前2周)的历史销售数据
· 计算历史补贴率:(成团价-最低补后价)/成团价
5. 主流程(462-877行)
· 并行获取:后台活动数据 + 药爆报数据 + 找货包销数据
· 合并数据:外连接药爆报和后台活动
· 添加找货包销品信息
· 标记黑名单商业
· 近30天排名关联
· 上周销售数据关联
· 初筛规则:
- 近3周最佳店数>300且≤500:提报价≤上周最佳且排名<150
- 近3周最佳店数>500且≤1000:提报价≤上周最佳×1.02
- 近3周最佳店数>1000:直接入选
· 库存满足线:感冒灵500店,排名≤50为150店,≤100为100店,其他50店
· 计算单价:提报价×(1+高上限×0.002)
· 匹配补贴:使用match_drug_BT函数计算最佳补贴
· 找货包销跟补:待售比例≥60%时建议补贴
· 输出Excel:设置格式,发送邮件
① 药爆报提报
主题:name REGEXP '夜间'(最新一期)
排除:is_del = 0(未删除)
输出:供应商、商品ID、提报单价、起拼数量、库存、排名
② 后台活动
主题:title LIKE '%%夜间拼团%%'
时间:end_date >= 当前时间
筛选:爆款补贴或强推必补活动
输出:活动ID、成团价、起拼量、实际库存、商圈数、覆盖率
③ 上周销售
时间:上周六 至 上周日
活动类型:wholesale_type = 7(拼团)
排除:combined_flag = 0(非合并订单)
输出:成团价、成团数量、参团店数、补贴后价格
④ 备注逻辑
· 端口未提报
· 活动不含单体
· 端口价格需修改
· 端口起拼数量需修改
· 实际库存与提报相差较大
· 活动覆盖省份较少
· 活动已下架/未通过准入价
· 店铺黑名单药店过多