Commit bd3d2395 by suyuchen

feat(navigation): 添加服务管理菜单项

- 在侧边栏添加服务管理主菜单项 - 新增人工管理、零件管理、报价管理、服务单列表等子菜单 - 配置菜单展开收起功能 - 更新导航菜单结构以支持服务管理模块 docs(vip): 完善VIP客户服务机制文档 - 添加VIP客户服务机制建立方案说明 - 制定客户分级规则和评分标准 - 建立VIP客户管理列表页面 - 配置停机问题处理流程制定文档 feat(vip): 实现VIP客户管理系统 - 开发VIP客户管理列表页 - 实现客户级别筛选和状态管理功能 - 添加新增编辑客户信息功能 - 集成本地存储保存客户数据 - 创建导航菜单连接各VIP服务模块
parent b8a578c8
状态 条件 显示效果
状态 条件 显示效果
正常 剩余时间 > 1小时 黄色背景,正常显示
警告 0 < 剩余时间 ≤ 1小时 橙色/红色背景,警告提示
超时 剩余时间 ≤ 0 红色背景,闪烁动画
方案1:新开停机问题处理模块(列表页,工单页,详情页,统计页)
方案2:延用产品工单模块功能,增加(SLA计时字段,类型增加:停机/紧急 类型,停机/紧急类型自动添加SLA计时时间)
当前业务流程: 客户电话联系服务台客服------>客服内部联系工程师----------->工程师处理问题(电话&邮件&现场)-------------->问题解决(工单完结)
\ No newline at end of file
# 停机工单 SLA 状态规则说明
# 停机工单 SLA 状态规则说明
## 一、SLA 基本规则
### 1. SLA 时间限制
- **标准时限**:2小时(120分钟)
- **计时单位**:毫秒(ms)
- **计算公式**`SLA剩余时间 = SLA时限 - (当前时间 - 工单创建时间)`
### 2. SLA 计时起点
- **开始时间**:工单创建时立即开始计时
- **记录字段**`slaStartTime`(工单创建时间戳)
- **初始值**`slaTimeRemaining = 2小时(7200000毫秒)`
### 3. SLA 计时停止条件
- 工单状态变为 `closed`(已关闭)时停止计时
- 已关闭的工单不再更新 SLA 剩余时间
---
## 二、SLA 状态分类
### 状态1:正常(Normal)
- **条件**`剩余时间 > 1小时(3600000毫秒)`
- **显示样式**:黄色背景,正常显示
- **说明**:工单在正常处理时限内
### 状态2:警告(Warning)
- **条件**`0 < 剩余时间 ≤ 1小时(3600000毫秒)`
- **显示样式**:橙色/红色背景,警告提示
- **说明**:工单即将超时,需要紧急处理
### 状态3:超时(Timeout)
- **条件**`剩余时间 ≤ 0`
- **显示样式**:红色背景,闪烁动画
- **说明**:工单已超过 SLA 时限,需要立即处理
---
## 三、SLA 状态判断逻辑
### 代码实现逻辑
```javascript
// SLA剩余时间计算
if (工单状态 !== 'closed' && slaStartTime存在) {
已用时间 = 当前时间 - slaStartTime
剩余时间 = Math.max(0, SLA时限 - 已用时间)
}
// 状态判断
if (剩余时间 <= 0) {
状态 = '超时'
} else if (剩余时间 < 1小时) {
状态 = '警告'
} else {
状态 = '正常'
}
```
### 状态更新频率
- **更新间隔**:每1秒更新一次
- **更新范围**:所有未关闭的工单
- **实时性**:页面实时显示倒计时
---
## 四、SLA 统计规则
### 1. 超时工单统计
- **统计条件**`slaTimeRemaining <= 0 && status !== 'closed'`
- **统计位置**:列表页统计卡片、统计&分析页
- **用途**:监控 SLA 达成情况
### 2. 平均响应时间
- **计算公式**`(响应时间 - 创建时间) / 工单数量`
- **单位**:分钟
- **统计范围**:所有已响应的工单
### 3. 平均解决时间
- **计算公式**`(解决时间 - 创建时间) / 工单数量`
- **单位**:分钟
- **统计范围**:所有已解决的工单
---
## 五、SLA 状态显示规则
### 1. 列表页显示
- **位置**:每个工单卡片下方
- **格式**`⏱️ SLA计时: X小时 X分钟 X秒`
- **颜色**:根据状态自动变色
### 2. 详情页显示
- **位置**:工单基本信息区域
- **格式**:大号显示,更醒目
- **动画**:超时时闪烁提醒
### 3. 统计页显示
- **位置**:核心指标统计卡片
- **内容**:SLA超时数量统计
- **图表**:响应时间分析图表
---
## 六、特殊情况处理
### 1. 工单关闭后
- **SLA计时停止**:不再更新剩余时间
- **状态保持**:保留关闭时的 SLA 状态
- **统计计入**:计入历史统计数据
### 2. 页面刷新
- **数据恢复**:从 localStorage 恢复工单数据
- **时间重算**:根据 `slaStartTime` 重新计算剩余时间
- **状态更新**:自动更新到当前状态
### 3. 跨天/跨月
- **时间计算**:基于时间戳,不受日期影响
- **精确计算**:毫秒级精度,确保准确性
---
## 七、SLA 规则配置
### 当前配置
```javascript
slaLimit: 2 * 60 * 60 * 1000 // 2小时 = 7200000毫秒
```
### 可调整参数
- **SLA时限**:可根据业务需求调整(建议范围:1-4小时)
- **警告阈值**:当前为1小时,可调整
- **更新频率**:当前为1秒,可调整
---
## 八、SLA 状态流转图
```
工单创建
SLA开始计时(2小时倒计时)
[正常状态] 剩余时间 > 1小时
[警告状态] 剩余时间 ≤ 1小时
[超时状态] 剩余时间 ≤ 0
工单关闭 → SLA计时停止
```
---
## 九、注意事项
1. **时间精度**:使用毫秒级时间戳,确保计算准确
2. **时区问题**:使用本地时间,确保显示正确
3. **性能优化**:定时器每秒更新,注意页面性能
4. **数据持久化**:SLA状态随工单数据一起保存
5. **状态一致性**:确保所有页面 SLA 状态显示一致
---
## 十、未来优化建议
1. **分级SLA**:根据客户等级设置不同的SLA时限
2. **暂停机制**:支持暂停SLA计时(如等待客户反馈)
3. **预警通知**:SLA即将超时前自动发送通知
4. **历史记录**:记录SLA状态变化历史
5. **报表导出**:SLA达成率报表导出功能
<!DOCTYPE html>
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>服务价格标准首页 - 服务价格标准化管理系统</title>
<script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: 'Microsoft YaHei', Arial, sans-serif;
background: #f5f7fa;
min-height: 100vh;
padding: 20px;
}
.container {
max-width: 1400px;
margin: 0 auto;
}
.header {
background: white;
padding: 20px 30px;
border-radius: 8px;
box-shadow: 0 2px 8px rgba(0,0,0,0.1);
margin-bottom: 20px;
}
.header h1 {
color: #333;
font-size: 24px;
font-weight: 600;
}
.card {
background: white;
border-radius: 8px;
padding: 25px;
box-shadow: 0 2px 8px rgba(0,0,0,0.1);
margin-bottom: 20px;
}
.card-title {
font-size: 18px;
font-weight: 600;
color: #333;
margin-bottom: 20px;
padding-bottom: 12px;
border-bottom: 2px solid #409eff;
}
.stats-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: 20px;
margin-bottom: 30px;
}
.stat-card {
background: linear-gradient(135deg, #409eff 0%, #66b1ff 100%);
color: white;
padding: 25px;
border-radius: 8px;
text-align: center;
transition: transform 0.3s;
}
.stat-card:hover {
transform: translateY(-5px);
box-shadow: 0 4px 12px rgba(64, 158, 255, 0.3);
}
.stat-card.success {
background: linear-gradient(135deg, #67c23a 0%, #85ce61 100%);
}
.stat-card.warning {
background: linear-gradient(135deg, #e6a23c 0%, #ebb563 100%);
}
.stat-card.info {
background: linear-gradient(135deg, #909399 0%, #b1b3b8 100%);
}
.stat-value {
font-size: 36px;
font-weight: bold;
margin: 15px 0;
}
.stat-label {
font-size: 14px;
opacity: 0.9;
}
.whitebook-info {
background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
border: 2px solid #409eff;
border-radius: 8px;
padding: 20px;
margin-bottom: 30px;
}
.whitebook-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 15px;
}
.whitebook-title {
font-size: 20px;
font-weight: 600;
color: #333;
}
.whitebook-version {
font-size: 18px;
color: #409eff;
font-weight: bold;
}
.whitebook-status {
display: inline-block;
padding: 4px 12px;
background: #67c23a;
color: white;
border-radius: 4px;
font-size: 12px;
}
.quick-actions {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: 15px;
}
.action-btn {
padding: 20px;
background: white;
border: 2px solid #e4e7ed;
border-radius: 8px;
text-align: center;
cursor: pointer;
transition: all 0.3s;
text-decoration: none;
color: #333;
display: block;
}
.action-btn:hover {
border-color: #409eff;
background: #f0f9ff;
transform: translateY(-3px);
box-shadow: 0 4px 12px rgba(64, 158, 255, 0.2);
}
.action-icon {
font-size: 32px;
margin-bottom: 10px;
}
.action-title {
font-size: 16px;
font-weight: 600;
margin-bottom: 5px;
}
.action-desc {
font-size: 12px;
color: #909399;
}
</style>
</head>
<body>
<div id="app">
<div class="container">
<div class="header">
<h1>服务价格标准化管理系统</h1>
</div>
<!-- 白皮书信息 -->
<div class="whitebook-info">
<div class="whitebook-header">
<div>
<div class="whitebook-title">当前生效的服务价格白皮书</div>
<div style="margin-top: 10px; color: #666; font-size: 14px;">版本号:<span class="whitebook-version">{{ whitebook.version }}</span></div>
</div>
<span class="whitebook-status">{{ whitebook.status }}</span>
</div>
<div style="color: #666; font-size: 14px;">生效时间:{{ whitebook.effectiveDate }}</div>
</div>
<!-- 统计卡片 -->
<div class="stats-grid">
<div class="stat-card">
<div class="stat-label">人工费用标准数量</div>
<div class="stat-value">{{ stats.laborCount }}</div>
<div style="font-size: 12px; margin-top: 10px; opacity: 0.8;">已配置标准</div>
</div>
<div class="stat-card success">
<div class="stat-label">零件费用标准数量</div>
<div class="stat-value">{{ stats.partCount }}</div>
<div style="font-size: 12px; margin-top: 10px; opacity: 0.8;">已配置标准</div>
</div>
<div class="stat-card warning">
<div class="stat-label">已启用的报价规则</div>
<div class="stat-value">{{ stats.ruleCount }}</div>
<div style="font-size: 12px; margin-top: 10px; opacity: 0.8;">启用中</div>
</div>
</div>
<!-- 快捷入口 -->
<div class="card">
<div class="card-title">快捷入口</div>
<div class="quick-actions">
<a href="2-人工费用标准管理列表页.html" class="action-btn">
<div class="action-icon">👷</div>
<div class="action-title">人工费用管理</div>
<div class="action-desc">管理服务人工费用标准</div>
</a>
<a href="4-零件费用标准管理列表页.html" class="action-btn">
<div class="action-icon">🔧</div>
<div class="action-title">零件费用管理</div>
<div class="action-desc">管理零件费用标准</div>
</a>
<a href="6-报价规则配置列表页.html" class="action-btn">
<div class="action-icon">⚙️</div>
<div class="action-title">报价规则配置</div>
<div class="action-desc">配置报价规则</div>
</a>
<a href="10-服务价格白皮书查看页.html" class="action-btn">
<div class="action-icon">📄</div>
<div class="action-title">查看服务价格白皮书</div>
<div class="action-desc">查看完整价格标准文档</div>
</a>
</div>
</div>
</div>
</div>
<script>
const { createApp } = Vue;
createApp({
data() {
return {
whitebook: {
version: 'V1.0',
status: '生效中',
effectiveDate: '2024-01-01'
},
stats: {
laborCount: 12,
partCount: 156,
ruleCount: 8
}
}
}
}).mount('#app');
</script>
</body>
</html>
<!DOCTYPE html>
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>零件费用标准管理 - 服务价格标准化管理系统</title>
<script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: 'Microsoft YaHei', Arial, sans-serif;
background: #f5f7fa;
min-height: 100vh;
padding: 20px;
}
.container {
max-width: 1400px;
margin: 0 auto;
}
.header {
background: white;
padding: 20px 30px;
border-radius: 8px;
box-shadow: 0 2px 8px rgba(0,0,0,0.1);
margin-bottom: 20px;
}
.header-top {
display: flex;
justify-content: space-between;
align-items: center;
}
.header h1 {
color: #333;
font-size: 24px;
font-weight: 600;
}
.nav-menu {
display: flex;
gap: 10px;
}
.nav-item {
padding: 8px 16px;
background: #409eff;
color: white;
text-decoration: none;
border-radius: 6px;
font-size: 14px;
transition: all 0.3s;
}
.nav-item:hover {
background: #66b1ff;
}
.nav-item.active {
background: #67c23a;
}
.card {
background: white;
border-radius: 8px;
padding: 25px;
box-shadow: 0 2px 8px rgba(0,0,0,0.1);
margin-bottom: 20px;
}
.card-title {
font-size: 18px;
font-weight: 600;
color: #333;
margin-bottom: 20px;
padding-bottom: 12px;
border-bottom: 2px solid #409eff;
}
.toolbar {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 20px;
}
.btn {
padding: 10px 20px;
border: none;
border-radius: 6px;
cursor: pointer;
font-size: 14px;
transition: all 0.3s;
font-weight: 500;
}
.btn-primary {
background: #409eff;
color: white;
}
.btn-primary:hover {
background: #66b1ff;
}
.btn-success {
background: #67c23a;
color: white;
}
.btn-success:hover {
background: #85ce61;
}
.btn-small {
padding: 6px 12px;
font-size: 12px;
}
.data-table {
width: 100%;
border-collapse: collapse;
margin-top: 20px;
}
.data-table th,
.data-table td {
padding: 12px;
text-align: left;
border-bottom: 1px solid #e4e7ed;
}
.data-table th {
background: #f5f7fa;
font-weight: 600;
color: #333;
}
.data-table tr:hover {
background: #f5f7fa;
}
.badge {
display: inline-block;
padding: 4px 10px;
border-radius: 4px;
font-size: 12px;
font-weight: 500;
}
.badge-success {
background: #f0f9ff;
color: #67c23a;
border: 1px solid #67c23a;
}
.badge-danger {
background: #fef0f0;
color: #f56c6c;
border: 1px solid #f56c6c;
}
.action-btns {
display: flex;
gap: 8px;
}
</style>
</head>
<body>
<div id="app">
<div class="container">
<div class="header">
<div class="header-top">
<h1>零件费用标准管理</h1>
<div class="nav-menu">
<a href="1-服务价格标准首页.html" class="nav-item">首页</a>
<a href="2-人工费用标准管理列表页.html" class="nav-item">人工费用</a>
<a href="4-零件费用标准管理列表页.html" class="nav-item active">零件费用</a>
<a href="6-报价规则配置列表页.html" class="nav-item">报价规则</a>
</div>
</div>
</div>
<div class="card">
<div class="toolbar">
<div class="card-title">零件费用标准列表</div>
<div style="display: flex; gap: 10px;">
<button class="btn btn-success" @click="handleImport">批量导入</button>
<button class="btn btn-primary" @click="handleAdd">+ 新增零件</button>
</div>
</div>
<table class="data-table">
<thead>
<tr>
<th>零件编号</th>
<th>零件名称</th>
<th>型号规格</th>
<th>标准单价</th>
<th>单位</th>
<th>适用设备</th>
<th>状态</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<tr v-for="item in partList" :key="item.id">
<td>{{ item.partNo }}</td>
<td>{{ item.partName }}</td>
<td>{{ item.specification }}</td>
<td>¥{{ item.price }}</td>
<td>{{ item.unit }}</td>
<td>{{ item.applicableEquipment }}</td>
<td>
<span :class="item.status === '启用' ? 'badge badge-success' : 'badge badge-danger'">
{{ item.status }}
</span>
</td>
<td>
<div class="action-btns">
<button class="btn btn-primary btn-small" @click="handleEdit(item)">编辑</button>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<script>
const { createApp } = Vue;
createApp({
data() {
return {
partList: [
{
id: 1,
partNo: 'P001',
partName: '服务器硬盘',
specification: '2TB SATA',
price: 800,
unit: '块',
applicableEquipment: '服务器',
status: '启用'
},
{
id: 2,
partNo: 'P002',
partName: '内存条',
specification: '16GB DDR4',
price: 600,
unit: '条',
applicableEquipment: '服务器/工作站',
status: '启用'
},
{
id: 3,
partNo: 'P003',
partName: '网络交换机',
specification: '24口千兆',
price: 2000,
unit: '台',
applicableEquipment: '网络设备',
status: '启用'
},
{
id: 4,
partNo: 'P004',
partName: 'UPS电源',
specification: '3KVA',
price: 3500,
unit: '台',
applicableEquipment: '电源设备',
status: '启用'
}
]
}
},
methods: {
handleAdd() {
window.location.href = '5-零件费用标准新增编辑页.html?action=add';
},
handleEdit(item) {
window.location.href = `5-零件费用标准新增编辑页.html?action=edit&id=${item.id}`;
},
handleImport() {
alert('批量导入功能(占位)');
}
}
}).mount('#app');
</script>
</body>
</html>
<!DOCTYPE html>
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>报价规则配置 - 服务价格标准化管理系统</title>
<script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: 'Microsoft YaHei', Arial, sans-serif;
background: #f5f7fa;
min-height: 100vh;
padding: 20px;
}
.container {
max-width: 1400px;
margin: 0 auto;
}
.header {
background: white;
padding: 20px 30px;
border-radius: 8px;
box-shadow: 0 2px 8px rgba(0,0,0,0.1);
margin-bottom: 20px;
}
.header-top {
display: flex;
justify-content: space-between;
align-items: center;
}
.header h1 {
color: #333;
font-size: 24px;
font-weight: 600;
}
.nav-menu {
display: flex;
gap: 10px;
}
.nav-item {
padding: 8px 16px;
background: #409eff;
color: white;
text-decoration: none;
border-radius: 6px;
font-size: 14px;
transition: all 0.3s;
}
.nav-item:hover {
background: #66b1ff;
}
.nav-item.active {
background: #67c23a;
}
.card {
background: white;
border-radius: 8px;
padding: 25px;
box-shadow: 0 2px 8px rgba(0,0,0,0.1);
margin-bottom: 20px;
}
.card-title {
font-size: 18px;
font-weight: 600;
color: #333;
margin-bottom: 20px;
padding-bottom: 12px;
border-bottom: 2px solid #409eff;
}
.toolbar {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 20px;
}
.btn {
padding: 10px 20px;
border: none;
border-radius: 6px;
cursor: pointer;
font-size: 14px;
transition: all 0.3s;
font-weight: 500;
}
.btn-primary {
background: #409eff;
color: white;
}
.btn-primary:hover {
background: #66b1ff;
}
.btn-success {
background: #67c23a;
color: white;
}
.btn-success:hover {
background: #85ce61;
}
.btn-warning {
background: #e6a23c;
color: white;
}
.btn-warning:hover {
background: #ebb563;
}
.btn-small {
padding: 6px 12px;
font-size: 12px;
}
.data-table {
width: 100%;
border-collapse: collapse;
margin-top: 20px;
}
.data-table th,
.data-table td {
padding: 12px;
text-align: left;
border-bottom: 1px solid #e4e7ed;
}
.data-table th {
background: #f5f7fa;
font-weight: 600;
color: #333;
}
.data-table tr:hover {
background: #f5f7fa;
}
.badge {
display: inline-block;
padding: 4px 10px;
border-radius: 4px;
font-size: 12px;
font-weight: 500;
}
.badge-success {
background: #f0f9ff;
color: #67c23a;
border: 1px solid #67c23a;
}
.badge-danger {
background: #fef0f0;
color: #f56c6c;
border: 1px solid #f56c6c;
}
.action-btns {
display: flex;
gap: 8px;
}
</style>
</head>
<body>
<div id="app">
<div class="container">
<div class="header">
<div class="header-top">
<h1>报价规则配置</h1>
<div class="nav-menu">
<a href="1-服务价格标准首页.html" class="nav-item">首页</a>
<a href="2-人工费用标准管理列表页.html" class="nav-item">人工费用</a>
<a href="4-零件费用标准管理列表页.html" class="nav-item">零件费用</a>
<a href="6-报价规则配置列表页.html" class="nav-item active">报价规则</a>
</div>
</div>
</div>
<div class="card">
<div class="toolbar">
<div class="card-title">报价规则列表</div>
<button class="btn btn-primary" @click="handleAdd">+ 新增规则</button>
</div>
<table class="data-table">
<thead>
<tr>
<th>规则名称</th>
<th>适用场景</th>
<th>是否质保期外</th>
<th>状态</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<tr v-for="item in ruleList" :key="item.id">
<td>{{ item.ruleName }}</td>
<td>{{ item.scenario }}</td>
<td></td>
<td>
<span :class="item.status === '启用' ? 'badge badge-success' : 'badge badge-danger'">
{{ item.status }}
</span>
</td>
<td>
<div class="action-btns">
<button class="btn btn-primary btn-small" @click="handleEdit(item)">编辑</button>
<button
v-if="item.status === '启用'"
class="btn btn-warning btn-small"
@click="handleToggleStatus(item)">
停用
</button>
<button
v-else
class="btn btn-success btn-small"
@click="handleToggleStatus(item)">
启用
</button>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<script>
const { createApp } = Vue;
createApp({
data() {
return {
ruleList: [
{
id: 1,
ruleName: '停机服务标准报价规则',
scenario: '停机',
status: '启用'
},
{
id: 2,
ruleName: '非停机服务标准报价规则',
scenario: '非停机',
status: '启用'
},
{
id: 3,
ruleName: '紧急服务加急报价规则',
scenario: '停机',
status: '启用'
}
]
}
},
methods: {
handleAdd() {
window.location.href = '7-报价规则配置新增编辑页.html?action=add';
},
handleEdit(item) {
window.location.href = `7-报价规则配置新增编辑页.html?action=edit&id=${item.id}`;
},
handleToggleStatus(item) {
item.status = item.status === '启用' ? '停用' : '启用';
}
}
}).mount('#app');
</script>
</body>
</html>
### 方案1:新开发vip客户模块
### 方案1:新开发vip客户模块
### 方案2:使用追溯客户信息模块,原有字段增加 客户等级,客户负责人 两个字段
### 奥智客户分类建议如下:
> 客户分级规则
| 维度 | 权重 | 说明 |
|------|------|------|
| 历史交易价值 | 30% | 近3年合同总额、单笔最大订单、采购频次 |
| 战略协同性 | 25% | 是否行业龙头、有标杆效应、参与联合开发 |
| 未来潜力 | 20% | 扩产计划、新项目、技术升级意愿 |
| 合作深度 | 15% | 多产品线采购、使用自研控制系统、服务协议 |
| 服务成本与风险 | 10% | 付款及时性、售后频率、沟通效率(负向) |
> 模拟30家客户
- 等级划分:
- S级(战略伙伴):≥85分(约3–5家)
- A级(核心VIP):70–84分(约8–12家)
- B级(重要客户):<70分(其余)
> 模拟30家客户数据表
| 编号 | 客户名称(虚构) | 所在国家/地区 | 行业细分 | 近3年采购额(万元) | 是否行业龙头 | 有无扩产计划 | 产品线数量 | 付款评级 | 初评总分 | VIP等级 |
|------|------------------|---------------|----------|---------------------|--------------|--------------|------------|----------|--------|--------|
| C01 | 海亮铜业集团 | 中国浙江 | 空调铜管 | 4,200 | 是 | 是(越南新厂) | 4(轧+拉+退火+电控) | A+ | 94 | S |
| C02 | 格力精密材料 | 中国广东 | 高端铜管 | 2,800 | 是 | 是(墨西哥基地) | 3 | A | 88 | S |
| C03 | AluTech GmbH | 德国 | 电池铝壳 | 1,900 | 是(欧洲前三) | 是(匈牙利扩产) | 2 | A- | 86 | S |
| C04 | 金龙铜管股份 | 中国河南 | 制冷铜管 | 3,100 | 是 | 否 | 3 | B+ | 82 | A |
| C05 | VietCopper JSC | 越南 | 铜管代工 | 1,500 | 否 | 是(二期厂房) | 2 | A | 80 | A |
| C06 | Middle East Tube Co. | 阿联酋 | 不锈钢管 | 1,200 | 区域龙头 | 是(沙特项目) | 2 | B | 78 | A |
| C07 | 华美新材料 | 中国江苏 | 铜合金棒 | 980 | 否 | 是(新能源转型) | 2 | A | 76 | A |
| C08 | TecnoTubo Brasil | 巴西 | 铜水管 | 850 | 本土领先 | 是(政府基建订单) | 1 | B+ | 74 | A |
| C09 | 鑫源金属科技 | 中国山东 | 铝管 | 720 | 否 | 否 | 1 | B | 68 | B |
| C10 | SinoPrecision Mexico | 墨西哥 | 汽车铝管 | 680 | 否 | 是(特斯拉供应链) | 2 | B+ | 73 | A |
| C11 | Changsheng Copper | 中国安徽 | 传统铜管 | 600 | 否 | 否 | 1 | C | 62 | B |
| C12 | Gulf Metal Industries | 沙特 | 工业管材 | 580 | 区域重要 | 否 | 1 | B | 66 | B |
| C13 | NovaTube Poland | 波兰 | 精密铜管 | 520 | 中小企业 | 是(欧盟绿色补贴) | 1 | A- | 71 | A |
| C14 | 东升管业 | 中国福建 | 水暖铜管 | 490 | 否 | 否 | 1 | C+ | 58 | B |
| C15 | AsiaAlu Thailand | 泰国 | 电池壳体 | 460 | 快速成长 | 是(日资合作) | 1 | A | 70 | A |
| C16 | 长江精工材料 | 中国湖北 | 特种合金 | 430 | 否 | 否 | 1 | B | 64 | B |
| C17 | Andes Metales | 智利 | 铜棒 | 410 | 本土龙头 | 否 | 1 | B- | 65 | B |
| C18 | SunRay Metals | 土耳其 | 铜管出口商 | 390 | 区域活跃 | 是(中东订单增长) | 1 | A- | 69 | B |
| C19 | 新锐智能材料 | 中国四川 | 新能源铝管 | 370 | 初创企业 | 是(融资后扩产) | 1 | A | 72 | A |
| C20 | Baltic Copper OÜ | 爱沙尼亚 | 小批量定制 | 320 | 微型企业 | 否 | 1 | B+ | 63 | B |
| C21 | 南方精密铜业 | 中国广西 | 空调配件 | 300 | 否 | 否 | 1 | C | 55 | B |
| C22 | IndoTube PT | 印尼 | 家电铜管 | 290 | 本地主力 | 是(替代进口) | 1 | B | 67 | B |
| C23 | Helix Metals Inc. | 美国 | 航空不锈钢管 | 260 | 技术型小企 | 否 | 1 | A- | 75* | A |
| C24 | 星宇合金材料 | 中国河北 | 铜棒 | 240 | 否 | 否 | 1 | C+ | 52 | B |
| C25 | CopperLink Malaysia | 马来西亚 | 电子散热管 | 220 | 新兴企业 | 是(半导体需求) | 1 | A | 70 | A |
| C26 | Atlas Tubing Egypt | 埃及 | 建筑管材 | 190 | 区域分销商 | 否 | 1 | B- | 60 | B |
| C27 | GreenAlu Korea | 韩国 | 电池铝管 | 180 | 中小供应商 | 是(LG合作) | 1 | A | 77* | A |
| C28 | 天成金属制品 | 中国江西 | 普通铜管 | 150 | 小厂 | 否 | 1 | D | 48 | B |
| C29 | Nordic Precision AB | 瑞典 | 高端医疗管 | 130 | 极小批量 | 否 | 1 | A+ | 79* | A |
| C30 | Pacific Metals PNG | 巴布亚新几内亚 | 矿用管 | 90 | 政府项目 | 不确定 | 1 | C | 50 | B |
注:
* 的海外客户因位于高潜力市场(美、韩、北欧)或技术前沿领域(航空、医疗),在“战略协同性”和“未来潜力”上获得适度加分。
付款评级:A+/A = 准时;B+/B = 偶有延迟;C = 常延迟;D = 严重拖欠。
产品线:1 = 单台设备;2 = 2类产品;3+ = 多系统集成。
> 分级结果统计
| 等级 | 客户数量 | 占比 | 特征总结 |
|------|--------|------|--------|
| S级 | 3家(C01, C02, C03) | 10% | 全部为行业龙头 + 多产品 + 海外扩张中 |
| A级 | 11家 | 37% | 含7家中国客户 + 4家海外(越、墨、德、韩等) |
| B级 | 16家 | 53% | 多为单机采购、无明确扩产、部分付款风险 |
> VIP客户分级与SLA服务标准(按等级 + 国家/地区双维度)
| 服务项目 | S级(战略伙伴) | A级(核心VIP) | B级(重要客户) |
|--------|------------------|----------------|----------------|
| 7×24专属支持通道 | 全球统一:<br>• 中文/英文双语热线<br>• 企业微信 + WhatsApp + Teams 多通道 | 同左,响应语言按客户所在地配置 | 标准客服热线(工作日8:00–18:00) |
| 故障响应时效(远程) | 所有地区 ≤2小时<br>(含节假日) | 所有地区 ≤4小时 | • 中国大陆:≤8小时<br>• 亚洲(除中):≤12小时<br>• 欧美/中东/拉美:≤24小时 |
| 现场服务抵达时间 | • 中国大陆:≤8小时<br>• 东南亚(越南、泰国等):≤24小时<br>• 中东(阿联酋、沙特):≤48小时<br>• 欧洲(德、意、西):≤72小时<br>• 南美(巴西、墨西哥):≤96小时<br>• 其他地区:协商+加急通道 | • 中国大陆:≤24小时<br>• 重点海外区域(见上):≤5天<br>• 其他:≤7天 | • 仅限中国大陆提供现场服务<br>• 海外客户需自担差旅或转为远程指导 |
| 备件供应策略 | • 在客户所在国/区域设安全库存(如迪拜仓、胡志明仓)<br>• 关键部件预置现场<br>• 紧急空运免审批 | • 区域中心仓(上海/深圳/新加坡)直发<br>• 优先海运+空运补缺 | • 从中国总部发货<br>• 客户承担国际运费及关税 |
| 本地化服务能力 | • 配备本地认证工程师(或长期合作服务商)<br>• 支持本地语言文档(英/西/阿/越等) | • 远程指导 + 年度巡检时现场支持<br>• 提供英文操作手册 | • 仅提供中文+英文基础文档 |
| 合规与认证支持 | • 协助满足当地法规(如CE、UL、SASO、INMETRO)<br>• 提供原产地证、COO、技术合规声明 | • 提供基础认证文件包 | • 按订单单独申请,额外收费 |
| 定期巡检与培训 | • 每年≥1次本地化上门服务<br>• 可安排中方专家+本地团队联合执行 | • 每18个月1次(结合新项目交付) | • 仅限线上培训 + 远程诊断 |
<!DOCTYPE html> <!DOCTYPE html>
...@@ -964,3 +964,4 @@ ...@@ -964,3 +964,4 @@
</html> </html>
...@@ -11,6 +11,32 @@ ...@@ -11,6 +11,32 @@
<path d="M4 4h12a2 2 0 012 2v8a2 2 0 01-2 2H4a2 2 0 01-2-2V6a2 2 0 012-2z"/> <path d="M4 4h12a2 2 0 012 2v8a2 2 0 01-2 2H4a2 2 0 01-2-2V6a2 2 0 012-2z"/>
<path d="M7 9h6M7 12h4"/> <path d="M7 9h6M7 12h4"/>
</svg> </svg>
<span>服务管理</span>
</div>
<svg class="nav-arrow nav-icon" viewBox="0 0 20 20">
<path d="M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z"/>
</svg>
</div>
<div class="nav-submenu">
<a href="二维码列表页.html" class="nav-subitem ">
人工管理
</a>
<a href="设备档案1.html" class="nav-subitem ">
零件管理
</a>
<a href="设备机型.html" class="nav-subitem ">
报价管理
</a>
<a href="设备机型.html" class="nav-subitem ">
服务单列表
</a>
</div>
<div class="nav-item has-submenu expanded" onclick="toggleSubmenu(this)">
<div style="display: flex; align-items: center; gap: 12px;">
<svg class="nav-icon" viewBox="0 0 20 20">
<path d="M4 4h12a2 2 0 012 2v8a2 2 0 01-2 2H4a2 2 0 01-2-2V6a2 2 0 012-2z"/>
<path d="M7 9h6M7 12h4"/>
</svg>
<span>设备管理</span> <span>设备管理</span>
</div> </div>
<svg class="nav-arrow nav-icon" viewBox="0 0 20 20"> <svg class="nav-arrow nav-icon" viewBox="0 0 20 20">
......
<!DOCTYPE html> <!DOCTYPE html>
...@@ -824,3 +824,4 @@ ...@@ -824,3 +824,4 @@
</html> </html>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment