1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| import sys,json
| from pathlib import Path
| from collections import Counter
| P=Path(__file__).parent
| sys.stdout.reconfigure(encoding='utf8')
| sys.path.insert(0,str(P.parent/'iqc-import-20261012/deps'))
| import pymysql
| c=pymysql.connect(host='36.213.150.237',port=10000,user='root',password=sys.stdin.readline().strip(),database='mom-hm',charset='utf8mb4',cursorclass=pymysql.cursors.DictCursor)
| with c.cursor() as q:
| q.execute("SELECT * FROM system_dict_data WHERE deleted=0 AND dict_type='crm_follow_up_type' ORDER BY sort,id");d=q.fetchall()
| q.execute('SELECT * FROM crm_follow_up_record WHERE deleted=0 AND biz_type=2 ORDER BY id');r=q.fetchall()
| (P/'follow-types-snapshot.json').write_text(json.dumps({'dicts':d,'records':r},ensure_ascii=False,default=str,indent=2),encoding='utf8')
| print('字典',json.dumps([{k:x[k] for k in ['id','label','value','status']} for x in d],ensure_ascii=False))
| print('类型分布',Counter(str(x['type']) for x in r))
| examples={}
| for x in r:
| key=(str(x['type']),str(x['content'])[:36]);examples.setdefault(key,x)
| print('内容示例',json.dumps([{k:x[k] for k in ['id','type','content','creator']} for x in list(examples.values())[:90]],ensure_ascii=False))
| c.close()
|
|