📋 报价单管理
📦 销售单← 返回主页
+ 新建报价单 📊 Excel 快报
共 {{ items.length }} 单
📦 明细 🏗 工程报价模式(位置+材料+加工分开) + 从库存选件号 + 加材料行 + 加安装/辅料行
《一》材料小计:¥{{ matSubtotal.toFixed(2) }} 《二》加工费小计:¥{{ procSubtotal.toFixed(2) }} 《三》安装+辅料:¥{{ installSubtotal.toFixed(2) }} 合计:¥{{ formTotal.toLocaleString('zh-CN',{maximumFractionDigits:2}) }}
小计 ¥{{ formTotal.toLocaleString('zh-CN', {maximumFractionDigits:2}) }}
仅显示「在库」件号
单号:{{ viewDialog.data.quote_no }}状态:{{ statusLabel(viewDialog.data.status) }}
客户:{{ viewDialog.data.customer_name }} ({{ viewDialog.data.contact||'-' }}, {{ viewDialog.data.phone||'-' }})
日期:{{ viewDialog.data.quote_date }} 有效期至:{{ viewDialog.data.valid_until || '—' }}
销售员:{{ viewDialog.data.salesperson }} 税率:{{ viewDialog.data.tax_rate }}%
备注:{{ viewDialog.data.notes }}
合计 ¥{{ (viewDialog.data.total_amount||0).toLocaleString('zh-CN',{maximumFractionDigits:2}) }}
📂 选择 xlsx 文件 支持 .xlsx / .xls,选完会自动识别表头
系统识别到表头在第 {{ excelDlg.preview.header_row_idx + 1 }} 行,共 {{ excelDlg.preview.total_data_rows }} 行数据。请检查每列对应的字段(可改 / 可设忽略),然后下一步。
Excel 表头 → 系统字段 前 3 行示例
C{{ col.col_idx + 1 }} {{ col.header_text || '(空)' }} {{ (r.cells[col.col_idx]||'').toString().slice(0,16) }}
💡 至少要映射 1 个字段(如「品种」+「单价」+「数量」是最低要求);未映射的列会被忽略
📋
即将生成报价单,包含 {{ excelDlg.preview.total_data_rows }} 行明细
客户:{{ getCustomerName(excelDlg.customer_id) }}
映射字段:{{ Object.values(excelDlg.mapping).filter(v=>v&&v!=='__skip__').length }} 个