# 智采系统-物料信息模块开发文档 > 文档版本: v1.1 > 创建日期: 2025-05-27 > 关联文档: [福安德智慧报价平台-完整开发方案.md](./福安德智慧报价平台-完整开发方案.md) --- ## 一、需求概述 ### 1.1 功能定位 智采系统-物料信息模块是整个报价平台的基础数据层,负责管理所有物料的基础信息、性能参数、历史报价记录。 ### 1.2 核心功能 - **物料信息管理**: 挂载于物料类型下,支持汇总和CRUD操作 - **物料详情展示**: 基础信息展示,支持动态更新 - **历史报价查询**: - 供应商历史报价清单(单价、供应商) - 我方给甲方的历史报价 ### 1.3 字段需求 根据业务需求,物料信息需要以下字段: | 需求字段 | 对应数据库字段 | 说明 | |---------|--------------|------| | 物料ID | material_id | 主键,自增 | | **厂家/品牌** | **brand** | **改为"厂家/品牌"** | | 规格型号 | spec | 规格型号(**保持不变**) | | 性能参数 | performance_params | JSON格式存储(**新增**) | | 材质 | material | 材质(铜/铝合金/PVC等)(**新增**) | | 用途 | purpose | 用途描述(**新增**) | | 备注 | remark | 备注(**保持不变**) | --- ## 二、数据库设计 ### 2.1 现有表结构(保持不变) ```sql CREATE TABLE `biz_material` ( `material_id` bigint NOT NULL AUTO_INCREMENT, `tenant_id` bigint NOT NULL DEFAULT '1', `category_id` bigint DEFAULT '0', `material_code` varchar(50) NOT NULL COMMENT '物料编码', `material_name` varchar(200) NOT NULL COMMENT '物料名称', `spec` varchar(500) DEFAULT '' COMMENT '规格型号', `unit` varchar(50) DEFAULT '' COMMENT '单位', `brand` varchar(100) DEFAULT '' COMMENT '品牌', `description` text COMMENT '描述', `status` char(1) DEFAULT '0', `create_by` varchar(64) DEFAULT '', `create_time` datetime DEFAULT NULL, `update_by` varchar(64) DEFAULT '', `update_time` datetime DEFAULT NULL, `remark` varchar(500) DEFAULT NULL, PRIMARY KEY (`material_id`) ) ENGINE=InnoDB COMMENT='物料'; ``` ### 2.2 扩展字段 执行SQL文件: [sql/20250527/01_material_alter.sql](../sql/20250527/01_material_alter.sql) ```sql -- 新增字段 ALTER TABLE biz_material ADD COLUMN IF NOT EXISTS performance_params TEXT COMMENT '性能参数(JSON)', ADD COLUMN IF NOT EXISTS material VARCHAR(100) DEFAULT '' COMMENT '材质', ADD COLUMN IF NOT EXISTS purpose VARCHAR(500) DEFAULT '' COMMENT '用途', ADD COLUMN IF NOT EXISTS image_url VARCHAR(500) DEFAULT '' COMMENT '物料图片URL'; -- 修改brand字段为"厂家/品牌" ALTER TABLE biz_material MODIFY COLUMN brand VARCHAR(100) COMMENT '厂家/品牌'; ``` ### 2.3 横向对比关系表 用于存储物料之间的对比关系(不同品牌、规格的同比信息): ```sql CREATE TABLE biz_material_comparison ( id BIGINT AUTO_INCREMENT PRIMARY KEY COMMENT '主键ID', tenant_id BIGINT NOT NULL DEFAULT 1 COMMENT '租户ID', material_id BIGINT NOT NULL COMMENT '当前物料ID', counterpart_id BIGINT NOT NULL COMMENT '对标物料ID', comparison_type VARCHAR(50) DEFAULT 'same_spec' COMMENT '对比类型(same_spec:同规格, similar:相似规格)', brand_level VARCHAR(50) COMMENT '品牌等级(国产一线/国产二线/进口一线/进口二线)', sort_order INT DEFAULT 0 COMMENT '排序', status CHAR(1) DEFAULT '0' COMMENT '状态(0正常 1停用)', create_by VARCHAR(64) DEFAULT '' COMMENT '创建者', create_time DATETIME COMMENT '创建时间', update_by VARCHAR(64) DEFAULT '' COMMENT '更新者', update_time DATETIME COMMENT '更新时间', remark VARCHAR(500) COMMENT '备注', UNIQUE KEY uk_material_counterpart (material_id, counterpart_id), KEY idx_material (material_id), KEY idx_counterpart (counterpart_id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='物料横向对比关系'; ``` **表设计说明**: - 不采用"对比组"模式,而是直接建立物料之间的对比关系,更灵活 - 支持同规格对比和相似规格对比 - 可维护品牌等级,用于综合评分 - 通过唯一索引防止重复添加对标物料 ### 2.3 字段对照说明 | 原字段 | 原含义 | 新含义 | 说明 | |--------|--------|--------|------| | spec | 规格型号 | **规格型号** | **保持不变** | | **brand** | **品牌** | **厂家/品牌** | **修改注释** | | remark | 备注 | **备注** | **保持不变** | | performance_params | - | 性能参数 | 新增 | | material | - | 材质 | 新增 | | purpose | - | 用途 | 新增 | | image_url | - | 物料图片URL | 新增 | ### 2.4 性能参数JSON规范 ```json // 变频器示例 { "功率": "37kW", "电压": "380V", "电流": "72A", "过载能力": "150%/60s", "通讯接口": "RS485/PROFINET", "防护等级": "IP20" } // 电缆示例 { "芯数×截面": "3×70+1×35", "额定电压": "0.6/1kV", "外径": "42mm", "载流量": "210A", "护套材质": "PVC铠装" } // PLC示例 { "CPU型号": "1515-2 PN", "内存": "500KB", "数字量输入": "1024", "数字量输出": "1024", "通讯接口": "PROFINET" } ``` --- ## 三、页面设计 ### 3.1 物料信息列表页 #### 3.1.1 页面布局 ``` ┌─────────────────────────────────────────────────────────────┐ │ 智采系统-物料信息 [返回首页] │ ├─────────────────────────────────────────────────────────────┤ │ 挂载于物料类型下面的物料信息在此进行汇总和CRUD │ ├─────────────────────────────────────────────────────────────┤ │ 搜索栏: [物料名称] [物料编码] [厂家/品牌] [分类] [搜索] [重置]│ ├─────────────────────────────────────────────────────────────┤ │ [新增] [删除] [导入] [导出] │ ├─────────────────────────────────────────────────────────────┤ │ □ | 物料ID | 厂家/品牌 | 规格型号 | 性能参数 | 材质 | 用途 | 操作 │ │ ───────────────────────────────────────────────────────── │ │ □ | M001 | 汇川 | MD500T37G | 37kW... | 铜 | 通用 | [详情][修改][删除] │ │ □ | M002 | 西门子 | G120 | 37kW... | 铝 | 风机 | [详情][修改][删除] │ ├─────────────────────────────────────────────────────────────┤ │ 分页: 1 2 3 ... 10 │ └─────────────────────────────────────────────────────────────┘ ``` #### 3.1.2 表格字段 | 字段 | 宽度 | 对应字段 | 说明 | |------|------|---------|------| | 复选框 | 55px | - | 批量操作 | | 物料ID | 100px | material_id | - | | **厂家/品牌** | 120px | **brand** | **改为"厂家/品牌"** | | **规格型号** | 150px | **spec** | **保持不变** | | 性能参数 | 200px | performance_params | 截取显示 | | 材质 | 80px | material | 新增 | | 用途 | 150px | purpose | 新增 | | 操作 | 180px | - | 详情/修改/删除 | #### 3.1.3 操作按钮 - **详情**: 跳转到物料详情页 - **修改**: 打开编辑对话框 - **删除**: 删除物料(逻辑删除) ### 3.2 新增/编辑对话框 ``` ┌─────────────────────────────────────────┐ │ 新增物料 / 修改物料 │ ├─────────────────────────────────────────┤ │ 物料编码* [________________] │ │ 物料名称* [________________] │ │ 所属分类 [下拉选择________] │ ├─────────────────────────────────────────┤ │ 厂家/品牌* [________________] │ ← brand字段(改为"厂家/品牌") │ 规格型号* [________________] │ ← spec字段(保持不变) │ 备注 [________________] │ ← remark字段(保持不变) │ 材质 [________________] │ ← material字段(新增) │ 用途 [________________] │ ← purpose字段(新增) ├─────────────────────────────────────────┤ │ 性能参数 (动态表单) │ │ ┌─────────┬─────────┬───────┐ [添加] │ │ │ 参数名 │ 参数值 │ 单位 │ │ │ │ [功率] │ [37] │ [kW] │ [删除] │ │ │ [电压] │ [380] │ [V] │ [删除] │ │ └─────────┴─────────┴───────┘ │ ├─────────────────────────────────────────┤ │ 描述 [多行文本框____________] │ ← description字段 ├─────────────────────────────────────────┤ │ [取消] [确定] │ └─────────────────────────────────────────┘ ``` ### 3.3 物料详情页 #### 3.3.1 整体布局(重新设计) 页面分为上下两部分: - **上半部分**: 可编辑的基础信息(物料编码、厂家/品牌、规格型号等 + 性能参数 + 描述) - **下半部分**: Tab切换(供应商报价历史、甲方报价历史) ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ 明纬/西门子 电源模块 24VDC/10A,输入85-264VAC,效率≥90% [返回列表] │ ├─────────────────────────────────────────────────────────────────────────────┤ │ 基础信息 [编辑] [保存] [取消] │ ├─────────────────────────────────────────────────────────────────────────────┤ │ ┌────────────┬────────────┬────────────┬────────────┬────────────┬────────┐│ │ │ 物料编码 │ M-EL-006 │ 厂家/品牌 │ 明纬/西门子│ 规格型号 │ 24VDC/10A...│ │ ├────────────┼────────────┼────────────┼────────────┼────────────┼────────┤│ │ │ 材质 │ - │ 用途 │ - │ 备注 │ - │ │ │ 单位 │ 台 │ 所属分类 │ 电源模块 │ │ │ │ └────────────┴────────────┴────────────┴────────────┴────────────┴────────┘│ ├─────────────────────────────────────────────────────────────────────────────┤ │ 性能参数 [添加] │ │ ┌────────────────┬──────────────────────────────┬────────────────┬────────┐│ │ │ 参数名 │ 参数值 │ 单位 │ 操作 ││ │ ├────────────────┼──────────────────────────────┼────────────────┼────────┤│ │ │ 输出电压 │ 24VDC │ V │ [删除] ││ │ │ 输出电流 │ 10 │ A │ [删除] ││ │ │ ... │ ... │ ... │ ... ││ │ └────────────────┴──────────────────────────────┴────────────────┴────────┘│ ├─────────────────────────────────────────────────────────────────────────────┤ │ 描述 │ │ ┌────────────────────────────────────────────────────────────────────────┐│ │ │ 明纬/西门子 电源模块 24VDC/10A,输入85-264VAC,效率≥90% ││ │ └────────────────────────────────────────────────────────────────────────┘│ ├─────────────────────────────────────────────────────────────────────────────┤ │ [供应商报价历史] [甲方报价历史] │ ├─────────────────────────────────────────────────────────────────────────────┤ │ │ │ Tab 内容区域(报价历史表格) │ │ │ └─────────────────────────────────────────────────────────────────────────────┘ ``` **布局说明**: - **顶部标题栏**: 显示物料名称和规格型号,右侧返回按钮 - **基础信息区域**: 紧凑的网格布局,一行4个字段,可直接编辑 - **性能参数区域**: 表格形式展示,支持增删改 - **描述区域**: 文本区域展示,支持编辑 - **Tab区域**: 仅保留供应商报价历史和甲方报价历史两个Tab **组件实现**: [detail.vue](../ruoyi-ui/src/views/bid/material/detail.vue) **核心功能**: 1. **基础信息网格布局**: 紧凑的flex布局,一行显示多个字段 2. **实时编辑**: 点击"编辑"按钮,所有字段变为可编辑状态 3. **实时保存**: 点击"保存"调用API,更新本地数据,无需刷新页面 4. **性能参数表格**: 支持添加/删除参数 5. **描述区域**: 多行文本编辑 **数据结构**: ```javascript // 表单数据 form: { materialCode: 'M-EL-006', materialName: '电源模块', brand: '明纬/西门子', spec: '24VDC/10A...', unit: '台', material: '', purpose: '', remark: '', description: '明纬/西门子 电源模块...' } // 性能参数数据 perfParams: [ { name: '输出电压', value: '24VDC', unit: 'V' }, { name: '输出电流', value: '10', unit: 'A' } ] ``` **保存逻辑**: ```javascript async handleSave() { const saveData = { materialId: this.materialId, ...this.form, performanceParams: JSON.stringify(this.perfParams) }; await updateMaterial(saveData); this.$message.success("保存成功"); this.isEditing = false; // 更新本地数据(无需刷新页面) this.material = { ...this.material, ...saveData }; } ``` // ... ] // 性能参数数据 perfParams: [ { name: '输出电压', value: '24VDC', unit: 'V' }, { name: '输出电流', value: '10', unit: 'A' }, // ... ] // 描述数据 description: '明纬/西门子 电源模块 24VDC/10A...' ``` **保存逻辑**: ```javascript async handleSave() { const saveData = { materialId: this.material.materialId, materialCode: this.basicInfoData[0].value, materialName: this.basicInfoData[1].value, // ... 其他字段 performanceParams: JSON.stringify(this.perfParams), description: this.description }; await updateMaterial(saveData); this.$message.success("保存成功"); this.isEditing = false; // 更新本地数据(无需刷新页面) this.$emit('update:material', { ...this.material, ...saveData }); } ``` #### 3.3.3 Tab 2: 供应商报价历史 供应商信息完整展示,调整列宽使内容在一行显示: ``` ┌─────────────────────────────────────────────────────────────────────────────────────────┐ │ 供应商报价历史 [导出Excel] │ ├─────────────────────────────────────────────────────────────────────────────────────────┤ │ 报价日期 │ 供应商信息 │ 单价(元) │ 数量 │ 交期 │ 状态 │ │ ───────────────────────────────────────────────────────────────────────────────────── │ │ 2026-05-20 │ 华顺达电子科技有限公司 │ ¥6,200.00 │ 5 │ 7天 │ [已中标] │ │ │ 联系人: 张经理 13800138000│ │ │ │ │ │ ───────────────────────────────────────────────────────────────────────────────────── │ │ 2026-05-18 │ 博远精密机械有限公司 │ ¥6,500.00 │ 5 │ 10天 │ [未中标] │ │ │ 联系人: 李工 13900139000 │ │ │ │ │ │ ───────────────────────────────────────────────────────────────────────────────────── │ │ 2026-05-15 │ 瑞达工控设备有限公司 │ ¥6,800.00 │ 5 │ 5天 │ [未中标] │ │ │ 联系人: 王总 13700137000 │ │ │ │ │ └─────────────────────────────────────────────────────────────────────────────────────────┘ ``` **表格列宽配置**: | 列名 | 宽度 | 说明 | |------|------|------| | 报价日期 | 100px | 日期格式:YYYY-MM-DD | | 供应商信息 | 280px | 供应商名称+联系人+电话,完整一行展示 | | 单价 | 120px | 右对齐,保留2位小数 | | 数量 | 80px | 居中对齐 | | 交期 | 80px | 居中对齐,带单位"天" | | 状态 | 100px | 标签形式展示 | **Vue组件实现**: ```vue ``` **数据来源**: `biz_quotation_item` → `biz_quotation` → `biz_supplier` #### 3.3.4 Tab 3: 甲方报价历史 ``` ┌─────────────────────────────────────────────────────────────┐ │ 我方给甲方的历史报价 [导出Excel] │ ├─────────────────────────────────────────────────────────────┤ │ 报价日期 甲方名称 单价(元) 折扣率 成交价 状态 │ │ ───────────────────────────────────────────────────────── │ │ 2026-05-25 福安德科技 ¥8,000 95% ¥7,600 已接受│ │ 2026-05-22 福安德科技 ¥8,200 90% ¥7,380 已拒绝│ │ 2026-04-15 某某自动化 ¥8,500 100% ¥8,500 已接受│ └─────────────────────────────────────────────────────────────┘ ``` **数据来源**: `biz_client_quote_item` → `biz_client_quote` #### 3.3.5 同品类物料横向对比(基于供应商报价) ``` ┌─────────────────────────────────────────────────────────────────────────┐ │ 同品类物料横向对比 3个物料 │ │ [选择对比物料(仅显示有报价的物料)... ] │ ├─────────────────────────────────────────────────────────────────────────┤ │ │ │ ┌─────────────────────────────┐ ┌─────────────────────────────┐ │ │ │ PLC控制器 │ │ 变频器 │ │ │ │ CPU模块... / 西门子S7-1200 │ │ 三相380V... / ABB/西门子 │ │ │ │ 3家报价 │ │ 2家报价 │ │ │ ├─────────────────────────────┤ ├─────────────────────────────┤ │ │ │ 规格型号 │ CPU模块... │ │ 规格型号 │ 三相380V... │ │ │ │ 厂家/品牌│ 西门子S7-1200 │ │ 厂家/品牌│ ABB/西门子 │ │ │ │ 材质 │ — │ │ 材质 │ — │ │ │ │ 单位 │ 套 │ │ 单位 │ 台 │ │ │ ├─────────────────────────────┤ ├─────────────────────────────┤ │ │ │ ───── 供应商报价明细 ───── │ │ ───── 供应商报价明细 ───── │ │ │ ├─────────────────────────────┤ ├─────────────────────────────┤ │ │ │ 供应商 单价 交期 │ │ 供应商 单价 交期 │ │ │ │ 广州联盟... ¥3,020 30天 │ │ 华顺达... ¥6,200 7天 │ │ │ │ 深圳华顺... ¥3,180 25天 │ │ 博远... ¥6,500 10天 │ │ │ │ 上海瑞达... ¥3,450 20天 │ │ │ │ │ ├─────────────────────────────┤ ├─────────────────────────────┤ │ │ │ 最低¥3020 │ 最高¥3450 │ │ 最低¥6200 │ 最高¥6500 │ │ │ │ 均价¥3216 │ 价差¥430(+14.2%)│ │ 均价¥6350 │ 价差¥300(+4.8%) │ │ │ └─────────────────────────────┘ └─────────────────────────────┘ │ │ │ └─────────────────────────────────────────────────────────────────────────┘ ``` **功能说明**: - **自动加载**: 进入页面自动加载同品类有报价的物料,默认选中前3个 - **实时更新**: 选择框变更时即时加载对应报价明细 - **视觉区分**: 基础信息区域(浅蓝背景)与供应商报价区域(白色背景)通过分隔线明确区分 - **报价排序**: 按单价从低到高排序,最低价绿色高亮并标记"最低"标签 - **统计汇总**: 每个物料卡片底部展示最低价、最高价、均价、价差百分比 - **错误处理**: 加载失败显示错误提示和重试按钮 - **响应式**: 适配桌面端、平板和手机屏幕 **交互流程**: 1. 用户进入物料详情页 → 系统自动加载同品类物料列表 2. 默认选中前3个物料 → 自动加载这些物料的供应商报价明细 3. 用户可在选择框中增删物料 → 报价明细实时更新 4. 加载过程中显示loading状态 → 失败显示错误提示和重试按钮 **数据来源**: - 物料信息: `biz_material` - 供应商报价: `biz_quotation_item` + `biz_quotation` + `biz_supplier` - 关联关系: `biz_rfq_item` (物料与报价明细的关联) --- ## 四、后端API设计 ### 4.1 物料管理API | 接口 | 方法 | 说明 | 权限 | |------|------|------|------| | `/bid/material/list` | GET | 物料列表 | bid:material:list | | `/bid/material/{id}` | GET | 物料详情 | bid:material:query | | `/bid/material` | POST | 新增物料 | bid:material:add | | `/bid/material` | PUT | 修改物料 | bid:material:edit | | `/bid/material/{id}` | DELETE | 删除物料 | bid:material:remove | ### 4.2 物料详情API | 接口 | 方法 | 说明 | 权限 | |------|------|------|------| | `/bid/material/{id}/detail` | GET | 物料完整详情(含性能参数) | bid:material:detail | | `/bid/material/{id}/supplier-quotes` | GET | 供应商历史报价清单 | bid:material:supplierQuotes | | `/bid/material/{id}/client-quotes` | GET | 甲方历史报价清单 | bid:material:clientQuotes | | `/bid/material/{id}/comparison` | GET | 横向对比信息 | bid:material:comparison | ### 4.3 同名称物料横向对比API(基于物料名称精确匹配) | 接口 | 方法 | 说明 | 权限 | 备注 | |------|------|------|------|------| | `/bid/material/same-name/{materialName}` | GET | 按名称精确匹配查询物料 | bid:material:list | 返回名称相同但规格/品牌不同的物料(含无报价) | | `/bid/material/quote-comparison` | POST | 获取物料报价对比明细 | bid:material:list | 根据物料ID列表返回各供应商报价 | **GET /bid/material/same-name/{materialName}?excludeId=1** 响应示例: ```json [ { "materialId": 2, "materialName": "PLC控制器", "spec": "CPU模块,数字量I/O 40点,以太网接口", "brand": "西门子S7-1200", "material": "", "purpose": "", "unit": "套", "categoryName": "控制器" }, { "materialId": 3, "materialName": "PLC控制器", "spec": "CPU模块,数字量I/O 64点,以太网接口", "brand": "三菱FX5U", "material": "", "purpose": "", "unit": "套", "categoryName": "控制器" } ] ``` **POST /bid/material/quote-comparison** 请求/响应示例: ```json // 请求 [1, 2, 3] // 响应 [ { "material_id": 1, "unit_price": 6200.00, "total_price": 31000.00, "delivery_days": 7, "quotation_id": 101, "quote_no": "Q20250520001", "submit_time": "2026-05-20T10:30:00", "quote_status": "2", "supplier_id": 5, "supplier_name": "华顺达电子科技有限公司", "supplier_contact": "张经理", "supplier_phone": "13800138000" } ] ``` ### 4.4 横向对比管理API(可维护对标关系) | 接口 | 方法 | 说明 | 权限 | |------|------|------|------| | `/bid/material/comparison` | GET | 查询对比组列表 | bid:comparison:list | | `/bid/material/comparison` | POST | 添加对标物料 | bid:comparison:add | | `/bid/material/comparison/{id}` | PUT | 修改对标信息 | bid:comparison:edit | | `/bid/material/comparison/{id}` | DELETE | 删除对标物料 | bid:comparison:remove | | `/bid/material/comparison/recommend` | GET | 获取智能推荐 | bid:comparison:recommend | --- ## 五、前端组件设计 ### 5.1 目录结构 ``` src/views/bid/material/ ├── index.vue # 物料列表页 ├── detail.vue # 物料详情页(主框架) └── components/ ├── DetailHeader.vue # 顶部信息卡片 ├── BasicInfoTab.vue # Tab1: 基础信息 ├── SupplierQuoteTab.vue # Tab2: 供应商报价 ├── ClientQuoteTab.vue # Tab3: 甲方报价 └── ComparisonTab.vue # Tab4: 横向对比 ``` ### 5.2 关键组件说明 #### 5.2.1 性能参数动态表单 ```vue ``` #### 5.2.2 横向对比组件 (ComparisonTab.vue) ```vue ``` --- ## 六、实现优先级 | 优先级 | 任务 | 涉及文件 | 预计工时 | |--------|------|---------|---------| | P0 | 数据库字段扩展 | `sql/20250527/01_material_alter.sql` | 0.5h | | P0 | 物料列表页字段更新 | `material/index.vue` | 2h | | P0 | 新增/编辑表单更新 | `material/index.vue` 对话框 | 3h | | P1 | 性能参数动态表单组件 | `components/PerformanceParamsForm.vue` | 3h | | P1 | 物料详情页框架 | `material/detail.vue` | 4h | | P1 | Tab 1: 基础信息 | `components/BasicInfoTab.vue` | 2h | | P1 | Tab 2: 供应商历史报价 | `components/SupplierQuoteTab.vue` | 3h | | P2 | Tab 3: 甲方历史报价 | `components/ClientQuoteTab.vue` | 3h | | P2 | Tab 4: 横向对比 | `components/ComparisonTab.vue` | 4h | | P2 | 横向对比管理功能 | 添加/编辑/删除对标物料 | 3h | | P3 | 智能推荐算法 | 综合评分计算 | 2h | | P3 | 后端API实现 | `BizMaterialController.java` | 4h | **总计**: 约 33.5 工时 --- ## 七、注意事项 1. **数据迁移**: 执行SQL脚本前请备份数据库 2. **字段变更**: - `spec` 字段保持为"规格型号",**不变更** - `brand` 字段改为"厂家/品牌",**变更注释** - `remark` 字段保持为"备注",**不变更** 3. **JSON存储**: 性能参数使用JSON格式,便于灵活扩展 4. **权限控制**: 详情页需要单独配置菜单权限 5. **图片上传**: 物料图片使用单独的上传接口,存储URL --- ## 八、相关文件 - SQL脚本: `sql/20250527/01_material_alter.sql` - 开发文档: `doc/智采系统-物料信息模块开发文档.md` - 完整方案: `doc/福安德智慧报价平台-完整开发方案.md`