gaoluyang
6 天以前 e40a608ef9bf51db294d8eefada6a8e2e80cebca
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import sys,json
from pathlib import Path
sys.path.insert(0,str(Path(__file__).parent/'deps'))
import openpyxl,pymysql
P=Path(__file__).parent
source=Path('D:/WechatRecord/xwechat_files/wxid_vmeut7wztkbp22_1546/temp/RWTemp/2026-10/c40afdcfa98e2b4561823e6babbefa33/来料检验单导入-已填充(1).xls')
w=openpyxl.load_workbook(source.open('rb'),data_only=True)
sheets=[]
for s in w.worksheets:
 rows=[]
 for row in s:
  rows.append([c.value.isoformat(sep=' ') if hasattr(c.value,'hour') else c.value for c in row])
 sheets.append({'name':s.title,'rows':rows})
(P/'source.json').write_text(json.dumps(sheets,ensure_ascii=False,indent=2),encoding='utf8')
print('Source:',[(s['name'],len(s['rows'])) for s in sheets])
for s in sheets:print(s['rows'][:4])
c=pymysql.connect(host='36.213.150.237',port=10000,user='root',password=sys.stdin.readline().strip(),database='mom-hm',charset='utf8mb4',connect_timeout=10,read_timeout=45,cursorclass=pymysql.cursors.DictCursor)
out={}
with c.cursor() as q:
 for t in ['mes_qc_iqc','mes_qc_iqc_line','mes_qc_template','mes_qc_template_item','mes_qc_template_indicator','mes_qc_indicator','mes_md_item','mdm_item','mdm_unit_measure','mdm_item_category','system_users','system_dict_data']:
  q.execute('SHOW CREATE TABLE `'+t+'`');out[t+'_schema']=q.fetchone()
  q.execute('SELECT * FROM `'+t+'` WHERE deleted=0');out[t]=q.fetchall()
(P/'remote-snapshot.json').write_text(json.dumps(out,ensure_ascii=False,default=str,indent=2),encoding='utf8')
print('Remote snapshot:',{k:len(v) for k,v in out.items() if isinstance(v,list)})
c.close()