123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239 |
- from app.api_data.order_util import *
- from model.DataBaseUtils import MysqlUtils
- from concurrent.futures import ThreadPoolExecutor
- from model.DingTalkUtils import DingTalkUtils
- from app.api_data.platform_order.audio_qiyue import AudioQiyue
- from app.api_data.platform_order.youshuge import get_youshuge_order_task
- from app.api_data.platform_order.yuewen import get_yuewen_order_task
- db = MysqlUtils()
- def get_account(plactform, id=None):
- op = f" and id={id} " if id else ''
- data = db.quchen_text.getData(f"select text from order_account_text where platform='{plactform}' {op}")
- new_data = []
- for i in data:
- new_data.append(i[0].replace('\n', '').split(","))
- return new_data
- def get_new_account(plactform):
- data = db.quchen_text.getData(
- f"select text from order_account_text where platform='{plactform}' and create_time>='{du.get_n_days(-1)}'")
- new_data = []
- for i in data:
- new_data.append(i[0].replace('\n', '').split(","))
- return new_data
- def yangguang(start=None, end=None, new=None):
- if start:
- start = start + ' 00:00:00'
- end = end + ' 23:59:59'
- else:
- start = du.getTodayOrYestoday() + ' 00:00:00'
- end = du.get_n_hours_ago(0)
- client_id = 10008097
- token = '2xa1d55tTPBjeEA8Ho'
- accounts = get_account("阳光") if new is None else get_new_account('阳光')
- if accounts.__len__() == 0:
- return
- else:
- print(f"阳光账号数:{accounts.__len__()}")
- for i in accounts:
- stage = i[0]
- vip_id = i[1]
- print(vip_id)
- get_yg_vip_channel(stage, vip_id, client_id, token)
- get_yg_data(stage, vip_id, client_id, token, start, end)
- x = 1
- while True:
- a = db.quchen_text.getOne("select count(1) from yangguang_path where update_time is null")
- print(f" vip 待处理数量 {a} 正在等待数据回调")
- if a == 0:
- break
- time.sleep(60)
- x += 1
- if x > 20:
- DingTalkUtils.send('阳光订单回调延时20min', '18860455786')
- break
- for i in accounts:
- vip_id = i[1]
- stage = i[0]
- parse_yg_data(vip_id, stage)
- def huasheng(start=None, end=None):
- if start is None:
- start = end = du.getNow()
- executor = ThreadPoolExecutor(max_workers=5)
- accounts = get_account("花生")
- if len(accounts) == 0:
- return
- else:
- print(f'花生有账号{len(accounts)}个')
- for account in accounts:
- executor.submit(get_hs_order_task, start, end, account)
- executor.shutdown()
- def qiyue(start=None, end=None, new=None):
- if start is None:
- start = end = du.getNow()
- accounts = get_account("七悦") if new is None else get_new_account('七悦')
- if len(accounts) == 0:
- return
- else:
- print(f'七悦有账号{len(accounts)}个')
- for account in accounts:
- get_qiyue_order_task(start, end, account)
- def wending(start=None, end=None, new=None):
- if start is None:
- start = end = du.getNow()
- accounts = get_account("文鼎") if new is None else get_new_account('文鼎')
- if len(accounts) == 0:
- return
- else:
- print(f'文鼎有账号{len(accounts)}个')
- for account in accounts:
- get_wd_order_task(start, end, account)
- def zhangdu(start=None, end=None, new=None):
- if start is None:
- start = end = du.getNow()
- accounts = get_account("掌读") if new is None else get_new_account('掌读')
- if len(accounts) == 0:
- return
- else:
- print(f'掌读有账号{len(accounts)}个')
- for account in accounts:
- get_zd_order_task(start, end, account)
- def zhangzhongyun(start=None, end=None, new=None):
- if start is None:
- start = du.getNow()
- end = du.get_n_days(1)
- executor = ThreadPoolExecutor(max_workers=5)
- accounts = get_account("掌中云") if new is None else get_new_account('掌中云')
- if len(accounts) == 0:
- return
- else:
- print(f'掌中云有账号{len(accounts)}个')
- for account in accounts:
- executor.submit(get_zzy_order_task, start, end, account)
- executor.shutdown()
- def yueweng(start=None, end=None):
- if start is None:
- start = end = du.getNow()
- executor = ThreadPoolExecutor(max_workers=5)
- accounts = get_account("阅文")
- if len(accounts) == 0:
- return
- else:
- print(f'阅文有账号{len(accounts)}个')
- for account in accounts:
- executor.submit(get_yuewen_order_task, start, end, account)
- executor.shutdown()
- def qiyueyousheng(start=None, end=None):
- if start is None:
- start = end = du.getNow()
- accounts = get_account("七悦有声")
- if len(accounts) == 0:
- return
- else:
- print(f'七悦有声有账号{len(accounts)}个')
- for account in accounts:
- AudioQiyue().get_order(start, end, account)
- def youshuge(start=None, end=None):
- if start is None:
- start = end = du.getNow()
- executor = ThreadPoolExecutor(max_workers=5)
- accounts = get_account("悠书阁")
- if len(accounts) == 0:
- return
- else:
- print(f'悠书阁有账号{len(accounts)}个')
- for account in accounts:
- executor.submit(get_youshuge_order_task, start, end, account)
- executor.shutdown()
- def hourly():
- # try:
- # yangguang()
- # except:
- # pass
- huasheng()
- qiyue()
- qiyueyousheng()
- wending()
- zhangdu()
- zhangzhongyun()
- yueweng()
- youshuge()
- def daily():
- st = du.get_n_days(-10)
- et = du.get_n_days(-1)
- # try:
- # yangguang(st, et)
- # except:
- # pass
- huasheng(st, et)
- qiyue(st, et)
- qiyueyousheng(st, et)
- wending(st, et)
- zhangdu(st, et)
- zhangzhongyun(st, et)
- yueweng(st, et)
- youshuge(st, et)
- def daily_yg():
- st = du.get_n_days(-10)
- et = du.get_n_days(-1)
- try:
- yangguang(st, et)
- except:
- pass
- if __name__ == '__main__':
- # a=time.time()
- # yangguang()
- # print(time.time()-a)
- # huasheng('2021-02-24','2021-02-24')
- # qiyue()
- # wending()
- # zhangdu('2020-11-01', '2020-12-20')
- # zhangzhongyun('2021-04-01', '2021-04-21')
- # youshuge()
- # yueweng()
- # huasheng()
- # qiyue()
- # qiyueyousheng()
- wending()
|