@@ -0,0 +1,25 @@
|
||||
import json,openpyxl
|
||||
from openpyxl.styles import Font,PatternFill,Alignment
|
||||
T=json.load(open('total.json',encoding='utf-8'))
|
||||
f='D:/DCDC/BOM/PhoneRail-R2_BOM_淘宝比价.xlsx'; wb=openpyxl.load_workbook(f)
|
||||
if '淘宝采购成本' in wb.sheetnames: del wb['淘宝采购成本']
|
||||
ws=wb.create_sheet('淘宝采购成本',1)
|
||||
ws.append(['一套(1 底板 + 5 刀片)淘宝采购成本 —— 2026-09-13 逐页点选规格实测'])
|
||||
ws.append(['方案 A:全部淘宝','货款 ¥%.2f'%T['goods'],'运费 ¥%.2f(%d 家店)'%(T['shipsum'],len(T['ship'])),'合计 ¥%.2f'%(T['goods']+T['shipsum'])])
|
||||
ws.append(['方案 B:8 颗关键 IC 走立创、其余淘宝','货款 ¥%.2f'%T['alt'],'淘宝运费 ¥%.2f(立创运费另计)'%T['sh_alt'],'合计 ¥%.2f'%(T['alt']+T['sh_alt'])])
|
||||
ws.append(['关键 IC = TPS54622 / TPS25940 / INA226 / USB2517 / DAC63204 / PCA9555 / LM61495 / ESP32 模组;这 8 项淘宝 ¥%.2f,立创 ¥%.2f'%(sum(r['cost'] for r in T['rows'] if r['key']),sum(r['lcsc_cost'] for r in T['rows'] if r['key']))])
|
||||
ws.append([])
|
||||
hdr=['型号','立创料号','需求数','店铺','选中规格','规格价¥','每份数量','买几份','小计¥','立创单价×需求¥','关键IC','商品链接','备注']
|
||||
ws.append(hdr)
|
||||
for c in ws[ws.max_row]: c.font=Font(bold=True,color='FFFFFF'); c.fill=PatternFill('solid',fgColor='305496')
|
||||
hr=ws.max_row
|
||||
for r in sorted(T['rows'],key=lambda r:-r['cost']):
|
||||
ws.append([r['mid'],r['sid'] if r['sid']!='C9900163599' else 'C2913202',r['need'],r['shop'],r['sku'],r['price'],r['pack'],r['packs'],r['cost'],r['lcsc_cost'],'是' if r['key'] else '',r['url'],r['note']])
|
||||
c=ws.cell(ws.max_row,12); c.hyperlink=c.value; c.value='打开'; c.font=Font(color='0563C1',underline='single')
|
||||
ws.append([]); ws.append(['运费(每家店取最高一项)'])
|
||||
for k,v in sorted(T['ship'].items(),key=lambda x:-x[1]): ws.append(['',k,v,T['shipnote'].get(k,'')])
|
||||
for i,w in enumerate([24,11,7,22,28,8,8,7,9,12,6,8,30],1): ws.column_dimensions[openpyxl.utils.get_column_letter(i)].width=w
|
||||
ws['A1'].font=Font(bold=True,size=12)
|
||||
for r in (2,3): ws.cell(r,4).font=Font(bold=True,color='C00000')
|
||||
ws.freeze_panes=ws.cell(hr+1,2)
|
||||
wb.save(f); print('saved')
|
||||
在新工单中引用
屏蔽一个用户