# 构建汽车销量智能问数智能体
#### 概述
汽车销售智能问数基于汽车销售、试驾、维修保养全链路数据，提供智能问数与精准销售话术生成能力，赋能一级销售高效转化。
本案例演示"汽车销量智能问数"智能体的构建，共分为三部分：
1. [构建本体数据]（用于支持智能体基于真实业务数据开展推理）。
2. [构建智能体]。
3. [使用智能体]。
 
 #### 步骤一：构建本体数据
构建车辆本体数据，就是给车辆相关的各种数据建一套统一的"共同语言"，让原本分散在不同系统里，说法各异的销售、售后、试驾等数据能对得上、连得起来，从而方便系统一次性关联查询和智能分析。
#### 构建本体数据流程
1. 如果您已有数据库，可以在数据库中基于[车辆销售数据]构建数据，构建完成后再[创建数据连接]。
   若您没有数据库，建议参考[购买和使用RDS for MySQL数据库](https://support.huaweicloud.com/qs-rds-mysql/rds_02_0008.html)进行购买。
   
2. 创建本体模型时，需要依次执行以下操作。
   1. [创建车辆本体模型]。
   
   2. [创建本体群组]。
   
   3. [导入车辆本体]。
   
   4. [创建对象类型]。
   
   5. [创建关系类型]。
   
   6. [生成索引数据]。
   
   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/public_sys-resources/note_3.0-zh-cn.png)
   车辆本体总共包含10个对象类型和10个关系类型。为演示方便，[导入文件](https://daa-console-resource.obs.dualstack.cn-east-4.myhuaweicloud.com/demo_files/车辆销售数据本体.xlsx)中已包含9个对象类型与9个关系类型，参考[2.c]进行导入，剩余1个对象类型和1个关系类型需要您参考[2.d]、[2.e]手动创建。
   
 
 #### 创建数据连接
**前提条件**：已在数据库中创建数据表及对应车辆数据。
1. 登录数据智能平台，选择默认工作空间。
2. 在左侧导航栏中选择"数据 \> 连接管理"，进入连接管理页面。
3. 单击右上角的"创建数据连接"。 
   图1单击"创建数据连接"   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002779570714.png "点击放大")
   
   
4. 在弹出的"创建数据连接"页面中，配置接入MySQL的数据连接信息。 
   图2创建接入MySQL的数据连接   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002779411544.png "点击放大")
   **基本信息**
   - 源库类型：MySQL。
   
   - 接入网络类型：华为云。
   
   - 所属地域：数据源所在的华为云服务区域，必须与数据智能平台所在的区域一致，不支持跨区域接入。
   
   - 名称："dii_dev"。
   
   
   **配置信息**
   - 实例：数据源所属的集群或计算实例，如数据源准备中购买的RDS for MySQL数据库实例。
   
   - 主机：数据源实例的访问IP。选择"实例"后，该参数自动填写。
   
   - 端口：数据源实例的数据库监听端口。选择"实例"后，该参数自动填写。
   
   - 数据库："dii_xg"。
   
   - 用户名：用于访问数据源的登录账号，如数据源准备中数据库实例设置的账号。
   
   - 密码：登录账号对应的密码。
    
   
   
5. 单击"保存"。 
   在数据连接列表中可以查看刚刚创建的数据连接，系统将在界面直接进行连通性检测。
   若"状态"显示为"可用"，即表示连接创建成功。
   
   
 
 #### 创建车辆本体模型
1. 登录数据智能平台，选择默认工作空间。
2. 在左侧导航栏选择"本体 \> 本体管理"，进入本体模型页面。
3. 单击"新建本体模型"，创建本体模型。 
   图3创建车辆本体模型   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002806923229.png "点击放大")
   - 名称：车辆销售_V1。
   
   - 描述：车辆销售、车辆维护、客户信息维护。
   
   - AI自动构建本体（可选）："glm-5.2"。
   
   - 知识湖：使用现有知识湖"Qwen3-Reranker-4B"。
   
   
   
   
4. 单击"保存"。
 
 #### 创建本体群组
1. 登录数据智能平台，选择默认工作空间。
2. 在左侧导航栏选择"本体 \> 本体管理"，进入本体模型页面。
3. 选择已创建的"车辆销售_V1"本体模型，进入"本体群组"页签。 
   图4"车辆销售_V1"本体模型   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002777483630.png "点击放大")
   图5"本体群组"页签   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002806803309.png "点击放大")
   
   
4. 单击"新建群组"，创建车辆的本体群组。 
   1. 分别创建"车辆销售"与"车辆售后"两个本体群组。
      图6创建车辆的本体群组   
      ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002777643598.png "点击放大") 
   
   2. 选择操作列的"添加对象类型"，为"车辆销售"和"车辆售后"本体群组添加对象类型。
      图7添加"车辆销售"对象类型   
      ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002806923231.png "点击放大")
      图8添加"车辆售后"对象类型   
      ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002777483632.png "点击放大") 
   
   
   
   
 
 #### 导入车辆本体
1. 登录数据智能平台，选择默认工作空间。
2. 在左侧导航栏选择"本体 \> 本体管理"，进入本体模型页面。
3. 选择已创建的"车辆销售_V1"本体模型。 
   图9"车辆销售_V1"本体模型   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002806803311.png "点击放大")
   
   
4. 选择上方的"导入本体"，进入"导入本体"页面。 
   1. 单击"添加文件"，选择[车辆本体数据](https://daa-console-resource.obs.dualstack.cn-east-4.myhuaweicloud.com/demo_files/车辆销售数据本体.xlsx)文件并导入，单击"下一步"。
      图10选择文件   
      ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002777643600.png "点击放大") 
   
   2. 在"对象类型"和"关系类型"中，勾选全部选项，单击"下一步"。
      图11选择导入内容   
      ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002806923233.png "点击放大") 
   
   3. 查看导入结果并"确认"。
      图12导入结果   
      ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002777483634.png "点击放大") 
   
   4. 导入后您可以在总览中查看实体关系图。
      图13实体关系图   
      ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002806803313.png "点击放大") 
   
   
   
   
5. 发布对象类型和关系类型。 
   已导入"对象类型"和"关系类型"状态为"未发布"，需要发布后才能正常使用。
   返回对象类型和关系类型列表，勾选列表中的全部数据，然后单击上方的"发布"。
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/public_sys-resources/note_3.0-zh-cn.png)
   数据较多时列表会分页，请勾选所有页面中的数据。
   图14发布对象类型和关系类型   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002777643602.png "点击放大")
   
   
 
 #### 创建对象类型
以IoT设备物联网数据（dm_device_vehicle_info_r）对象进行举例创建。
1. 登录数据智能平台，选择默认工作空间。
2. 在左侧导航栏选择"本体 \> 本体管理"，进入本体模型页面。
3. 选择已创建的"车辆销售_V1"本体模型，进入"对象类型"页签。 
   图15"车辆销售_V1"本体模型   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002806923235.png "点击放大")
   图16"对象类型"页签   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002777483638.png "点击放大")
   
   
4. 单击"新建对象类型"，创建车辆的对象类型。 
   **基本信息**
   - 名称："dm_device_vehicle_info_r"。
   
   - 显示名称：IoT设备物联网数据。
   
   - 可见性：未公开。
   
   - 类别：默认"实体"。
   
   - 颜色：选择合适的颜色。
   
   - 本体群组（可选）：选择"车辆销售"，若无群组可选择"新建群组"进行创建。
   
   - 数据来源：选择"已有数据源"，勾选"dm_device_vehicle_info_r"数据中的全部字段并"确认"。
     图17选择已有数据源"dm_device_vehicle_info_r"   
     ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002806803315.png "点击放大") 
   
   
   **属性**
   - 主键：选择"vehicle_id"。
   
   - 标题：选择"total_engine_hours"。
   
   
   
   
5. 单击"确认"。
6. 发布对象类型。 
   在对象类型列表中，勾选"dm_device_vehicle_info_r"对象类型，单击上方的"发布"。
   图18发布对象类型   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002777643606.png "点击放大")
   
   
 
 #### 创建关系类型
1. 登录数据智能平台，选择默认工作空间。
2. 在左侧导航栏选择"本体 \> 本体管理"，进入本体模型页面。
3. 选择已创建的"车辆销售_V1"本体模型，进入"关系类型"页签。 
   图19"车辆销售_V1"本体模型   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002806923239.png "点击放大")
   图20"关系类型"页签   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002777483640.png "点击放大")
   
   
4. 单击"新建关系类型"，创建车辆的关系类型。 
   **基本信息**
   - 名称："vehicle2iot"。
   
   - 显示名称：车辆的物联网信息。
   
   - 可见性：未公开。
   
   - **方向**：勾选"有方向的"。
   
   - 描述：可选。
   
   
   图21新建关系类型   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002806803317.png "点击放大")
   **关系**
   车辆与IoT设备物联网数据对应关系如下图所示。
   图22车辆与IoT设备物联网数据对应关系   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002777643608.png "点击放大")
   
   
5. 单击"确认"。
6. 发布关系类型。 
   在关系类型列表中，勾选"vehicle2iot"，单击上方的"发布"。
   图23发布关系类型   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002806923241.png "点击放大")
   
   
 
 #### 生成索引数据
需要将所有的对象类型和关系类型数据全部生成索引。
**生成对象类型索引**
1. 登录数据智能平台，选择默认工作空间。
2. 在左侧导航栏选择"本体 \> 本体管理"，进入本体模型页面。
3. 选择已创建的"车辆销售_V1"本体模型，进入"对象类型"页签。
4. 在"对象类型"列表中选择"dm_device_vehicle_info_r"，进入对象类型的详情页面。
5. 在"数据"页签中，单击"索引"。 
   图24生成索引   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002779403294.png "点击放大")
   参考以上步骤完成所有对象类型的索引生成操作。
   
   
**生成关系类型索引**
1. 登录数据智能平台，选择默认工作空间。
2. 在左侧导航栏选择"本体 \> 本体管理"，进入本体模型页面。
3. 选择已创建的"车辆销售_V1"本体模型，进入"对象类型"页签。 
   图25"车辆销售_V1"本体模型   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002808762833.png "点击放大")
   图26"关系类型"页签   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002779563260.png "点击放大")
   
   
4. 在"关系类型"列表中选择"dm_device_vehicle_info_r"，进入关系类型的详情页面。
5. 在"关系"页签中，单击"索引"，等待索引完成。 
   图27生成索引   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002808882927.png "点击放大")
   参考以上步骤完成所有关系类型的索引生成操作。
   
   
 
 #### 步骤二：构建智能体
1. 登录数据智能平台，选择默认工作空间。
2. 单击"应用开发"页签下的"创建应用"。 
   图28创建应用   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002806803843.png "点击放大")
   
   
3. 进入"创建应用"页签后，选择应用类型为"智能体"。 
   填写基本信息中的"名称"，选择"业务场景"，最后单击右下角的"确定"完成智能体创建。
   图29创建智能体   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002777644136.png "点击放大")
   
   
4. 进入"汽车销量智能问数"界面，对如下参数进行设置。 
   - 模型："glm-5.2"。
   
   - 系统提示词：你是一个"汽车销量智能问数"智能体，根据客户试驾记录，用户意向，用户已有车辆维修记录，车型竞品分析生成推销话术。
   
   - 对话历史：开启对话历史，通过将对话历史消息发送给大模型来告诉大模型更多的上下文数据。
   
   - 技能：在技能中添加本体模型，依次添加[本体对象类型搜索]、[本体对象搜索]和[本体数据查询]。
     图30添加技能   
     ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002777484176.png "点击放大")
     图31本体对象类型搜索   
     ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002806923767.png "点击放大")
     图32本体对象搜索   
     ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002806803845.png "点击放大")
     图33本体数据查询   
     ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002777644138.png "点击放大") 
   
   - 开场白：您好，我是"汽车销量智能问数"智能体，您可以问我车辆销售相关的问题哦。
   
   - 引导问题：怎么对客户陈明进行新车推销。
   
   
   图34"汽车销量智能问数"智能体成品图   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002777484178.png "点击放大")
   
   
5. 分别单击右上角的"保存"、"发布版本"和"部署（生产环境）"完成智能体创建。 
   发布版本后，在右侧的"测试运行"页面验证智能体功能。
   图35测试运行   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002806923769.png "点击放大")
   
   
 
 #### 步骤三：使用智能体
1. 登录数据智能平台，选择默认工作空间。
2. 在左侧导航栏选择"应用 \> 应用中心"，进入应用中心页面。
3. 选择"汽车销量智能问数"智能体，进行问答。 
   图36应用中心   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002806803847.png "点击放大")
   
   
4. 输入问题："怎么对客户陈明进行新车推销"。 
   图37输入查询问题   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002777644140.png "点击放大")
   返回结果中包含为陈明客户量身定制的销售话术，您可查看参考。
   图38智能体返回查询结果   
   ![](https://support.huaweicloud.com/bestpractice-dataartsplatform/figure/zh-cn_image_0000002777484180.png "点击放大")
   
   
 
 #### 车辆销售数据
本数据为模拟数据，仅用于构建"汽车销量智能问数"智能体，不涉及真实业务数据。
为便于后续本体数据的构建与使用，在构建本体数据前，需提前完成数据库和表的创建，确保底层数据表结构已搭建完成。
1. 创建数据库。 
   ```
   create database dii_xg;
   ```
   
   
2. 在数据库中创建表并插入数据。 
   表名如下：
   - customer_intentions
   
   - customers
   
   - dm_device_vehicle_info_r
   
   - drive_feedbacks
   
   - payment_methods
   
   - salespersons
   
   - srv_worker_d_f
   
   - srv_workorder_d_f
   
   - vehicle_sales_records
   
   - vehicles
   
   
   
   
 
- [customer_intentions]
  ```
  /*
   Navicat Premium Dump SQL
   Source Server         : dev_dii_153
   Source Server Type    : MySQL
   Source Server Version : 50741 (5.7.41-230700-log)
   Source Host           : 192.1.1.1:20005
   Source Schema         : dii_xg
   Target Server Type    : MySQL
   Target Server Version : 50741 (5.7.41-230700-log)
   File Encoding         : 65001
   Date: 15/10/2026 15:15:08
  */
  SET NAMES utf8mb4;
  SET FOREIGN_KEY_CHECKS = 0;
  -- ----------------------------
  -- Table structure for customer_intentions
  -- ----------------------------
  DROP TABLE IF EXISTS `customer_intentions`;
  CREATE TABLE `customer_intentions`  (
    `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
    `customer_id` bigint(20) NOT NULL COMMENT '外键客户ID',
    `vehicle_id` bigint(20) NOT NULL COMMENT '外键车辆ID',
    `interest_level` int(11) NOT NULL DEFAULT 1 COMMENT '意向强度 1到4',
    `budget_range` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '预算范围',
    `status` int(11) NOT NULL DEFAULT 0 COMMENT '状态 0跟进中1已成交2已流失',
    `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '意向建立时间',
    PRIMARY KEY (`id`) USING BTREE,
    INDEX `idx_customer_id`(`customer_id`) USING BTREE,
    INDEX `idx_vehicle_id`(`vehicle_id`) USING BTREE,
    INDEX `idx_status`(`status`) USING BTREE
  ) ENGINE = InnoDB AUTO_INCREMENT = 411 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '客户意向车辆' ROW_FORMAT = Dynamic;
  -- ----------------------------
  -- Records of customer_intentions
  -- ----------------------------
  INSERT INTO `customer_intentions` VALUES (401, 201, 301, 3, '20w左右', 1, '2026-01-06 00:00:00');
  INSERT INTO `customer_intentions` VALUES (402, 202, 302, 4, '25w以内', 2, '2026-01-13 00:00:00');
  INSERT INTO `customer_intentions` VALUES (403, 203, 303, 2, '15w以内', 1, '2026-01-21 00:00:00');
  INSERT INTO `customer_intentions` VALUES (404, 204, 305, 3, '21w左右', 0, '2026-02-02 00:00:00');
  INSERT INTO `customer_intentions` VALUES (405, 205, 301, 4, '20w以内', 1, '2026-02-16 00:00:00');
  INSERT INTO `customer_intentions` VALUES (406, 206, 302, 1, '26w以内', 2, '2026-03-02 00:00:00');
  INSERT INTO `customer_intentions` VALUES (407, 207, 303, 3, '14w左右', 0, '2026-03-11 00:00:00');
  INSERT INTO `customer_intentions` VALUES (408, 208, 305, 2, '20w以内', 1, '2026-03-23 00:00:00');
  INSERT INTO `customer_intentions` VALUES (409, 209, 301, 4, '19w左右', 1, '2026-04-06 00:00:00');
  INSERT INTO `customer_intentions` VALUES (410, 210, 302, 3, '24w以内', 0, '2026-04-19 00:00:00');
  SET FOREIGN_KEY_CHECKS = 1;
  ```
- [customers]
  ```
  /*
   Navicat Premium Dump SQL
   Source Server         : dev_dii_153
   Source Server Type    : MySQL
   Source Server Version : 50741 (5.7.41-230700-log)
   Source Host           : 192.1.1.1:20005
   Source Schema         : dii_xg
   Target Server Type    : MySQL
   Target Server Version : 50741 (5.7.41-230700-log)
   File Encoding         : 65001
   Date: 15/10/2026 15:15:22
  */
  SET NAMES utf8mb4;
  SET FOREIGN_KEY_CHECKS = 0;
  -- ----------------------------
  -- Table structure for customers
  -- ----------------------------
  DROP TABLE IF EXISTS `customers`;
  CREATE TABLE `customers`  (
    `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键客户ID',
    `name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '姓名',
    `phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '手机号',
    `gender` int(11) NOT NULL DEFAULT 0 COMMENT '性别 0未知1男2女',
    `age` int(11) NULL DEFAULT NULL COMMENT '年龄',
    `source_channel` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '来源渠道',
    `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '建档时间',
    PRIMARY KEY (`id`) USING BTREE,
    INDEX `idx_phone`(`phone`) USING BTREE
  ) ENGINE = InnoDB AUTO_INCREMENT = 211 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '客户基本信息' ROW_FORMAT = Dynamic;
  -- ----------------------------
  -- Records of customers
  -- ----------------------------
  INSERT INTO `customers` VALUES (201, '陈明', '13911111111', 1, 32, '抖音', '2026-01-05 00:00:00');
  INSERT INTO `customers` VALUES (202, '刘芳', '13922222222', 2, 28, '线下', '2026-01-12 00:00:00');
  INSERT INTO `customers` VALUES (203, '杨洋', '13933333333', 1, 45, '朋友圈', '2026-01-20 00:00:00');
  INSERT INTO `customers` VALUES (204, '周静', '13944444444', 2, 35, '推荐', '2026-02-01 00:00:00');
  INSERT INTO `customers` VALUES (205, '吴刚', '13955555555', 1, 29, '抖音', '2026-02-15 00:00:00');
  INSERT INTO `customers` VALUES (206, '郑丽', '13966666666', 2, 38, '线下', '2026-03-01 00:00:00');
  INSERT INTO `customers` VALUES (207, '孙浩', '13977777777', 1, 25, '搜索', '2026-03-10 00:00:00');
  INSERT INTO `customers` VALUES (208, '朱红', '13988888888', 2, 42, '活动', '2026-03-22 00:00:00');
  INSERT INTO `customers` VALUES (209, '何平', '13999999999', 1, 33, '抖音', '2026-04-05 00:00:00');
  INSERT INTO `customers` VALUES (210, '徐杰', '13800000000', 1, 40, '线下', '2026-04-18 00:00:00');
  SET FOREIGN_KEY_CHECKS = 1;
  ```
- [dm_device_vehicle_info_r]
  ```
  /*
   Navicat Premium Dump SQL
   Source Server         : dev_dii_153
   Source Server Type    : MySQL
   Source Server Version : 50741 (5.7.41-230700-log)
   Source Host           : 192.1.1.1:20005
   Source Schema         : dii_xg
   Target Server Type    : MySQL
   Target Server Version : 50741 (5.7.41-230700-log)
   File Encoding         : 65001
   Date: 15/10/2026 15:15:39
  */
  SET NAMES utf8mb4;
  SET FOREIGN_KEY_CHECKS = 0;
  -- ----------------------------
  -- Table structure for dm_device_vehicle_info_r
  -- ----------------------------
  DROP TABLE IF EXISTS `dm_device_vehicle_info_r`;
  CREATE TABLE `dm_device_vehicle_info_r`  (
    `vehicle_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '车辆ID',
    `vincode` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '设备编号',
    `updatetime` datetime NULL DEFAULT NULL COMMENT '更新时间',
    `gpstime` datetime NULL DEFAULT NULL COMMENT 'GPS时间',
    `latitude` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '纬度',
    `longitude` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '经度',
    `total_engine_hours` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '累计工作时间',
    `total_fuel_consum` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '累计燃油消耗量',
    `total_mileage` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '累计行驶里程',
    `transmission_oil_tem` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '变速箱油温',
    `engine_rotate_speed` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '发动机转速',
    `engine_coolant_tem` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '发动机水温',
    `fuel_tem` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '燃油温度',
    `engine_oil_temperature` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '机油温度',
    `oil_pressure` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '机油压力',
    `fuel_level` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '燃油液位',
    `first_fault_work_hours` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '首次故障工时',
    INDEX `idx_vincode`(`vincode`) USING BTREE,
    INDEX `idx_updatetime`(`updatetime`) USING BTREE,
    INDEX `idx_vehicle_id`(`vehicle_id`) USING BTREE
  ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = 'IoT设备物联网数据' ROW_FORMAT = Dynamic;
  -- ----------------------------
  -- Records of dm_device_vehicle_info_r
  -- ----------------------------
  INSERT INTO `dm_device_vehicle_info_r` VALUES ('301', 'LSVW1234567890001', '2026-09-09 10:30:00', '2026-09-09 10:29:55', '31.230416', '121.473701', '3520.5', '18560.3', '125800', '85.2', '1800', '92.5', '38.1', '95.3', '4.2', '78.5', NULL);
  INSERT INTO `dm_device_vehicle_info_r` VALUES ('302', 'LSVW1234567890002', '2026-09-09 10:31:00', '2026-09-09 10:30:58', '31.198117', '121.439702', '2890.0', '14230.7', '98650', '78.6', '1500', '88.0', '35.5', '90.1', '3.8', '65.2', '2750.0');
  INSERT INTO `dm_device_vehicle_info_r` VALUES ('303', 'LSVW1234567890003', '2026-09-09 10:32:00', '2026-09-09 10:31:55', '31.165890', '121.405603', '4120.8', '22150.6', '156300', '92.3', '2100', '95.8', '40.2', '98.7', '4.5', '82.0', NULL);
  INSERT INTO `dm_device_vehicle_info_r` VALUES ('304', 'LSVW1234567890004', '2026-09-09 10:33:00', '2026-09-09 10:32:58', '31.233621', '121.501234', '1850.2', '8960.5', '62400', '72.1', '1200', '85.3', '33.0', '87.5', '3.5', '55.8', NULL);
  INSERT INTO `dm_device_vehicle_info_r` VALUES ('305', 'LSVW1234567890005', '2026-09-09 10:34:00', '2026-09-09 10:33:52', '31.201563', '121.467890', '5360.0', '28900.1', '187500', '98.5', '2200', '98.0', '42.0', '101.2', '4.8', '90.3', '4980.0');
  SET FOREIGN_KEY_CHECKS = 1;
  ```
- [drive_feedbacks]
  ```
  /*
   Navicat Premium Dump SQL
   Source Server         : dev_dii_153
   Source Server Type    : MySQL
   Source Server Version : 50741 (5.7.41-230700-log)
   Source Host           : 192.1.1.1:20005
   Source Schema         : dii_xg
   Target Server Type    : MySQL
   Target Server Version : 50741 (5.7.41-230700-log)
   File Encoding         : 65001
   Date: 15/10/2026 15:16:52
  */
  SET NAMES utf8mb4;
  SET FOREIGN_KEY_CHECKS = 0;
  -- ----------------------------
  -- Table structure for drive_feedbacks
  -- ----------------------------
  DROP TABLE IF EXISTS `drive_feedbacks`;
  CREATE TABLE `drive_feedbacks`  (
    `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
    `customer_id` bigint(20) NOT NULL COMMENT '外键客户ID',
    `salesperson_id` bigint(20) NOT NULL COMMENT '外键销售ID',
    `vehicle_id` bigint(20) NOT NULL COMMENT '外键车辆ID',
    `visit_time` datetime NOT NULL COMMENT '看车试驾时间',
    `type` int(11) NOT NULL COMMENT '类型 1静态看车2动态试驾',
    `score` int(11) NOT NULL DEFAULT 3 COMMENT '综合评分 1到5',
    `comments` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '具体评价内容',
    `pain_points` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '痛点标签',
    `next_action` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '下一步计划',
    PRIMARY KEY (`id`) USING BTREE,
    INDEX `idx_df_customer_id`(`customer_id`) USING BTREE,
    INDEX `idx_df_salesperson_id`(`salesperson_id`) USING BTREE,
    INDEX `idx_df_vehicle_id`(`vehicle_id`) USING BTREE,
    INDEX `idx_df_visit_time`(`visit_time`) USING BTREE
  ) ENGINE = InnoDB AUTO_INCREMENT = 411 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '客户看车反馈' ROW_FORMAT = Dynamic;
  -- ----------------------------
  -- Records of drive_feedbacks
  -- ----------------------------
  INSERT INTO `drive_feedbacks` VALUES (401, 201, 101, 301, '2026-01-07 00:00:00', 2, 4, '动力不错就是车机有点卡顿', '车机系统', '预约深度试驾');
  INSERT INTO `drive_feedbacks` VALUES (402, 202, 102, 302, '2026-01-14 00:00:00', 1, 5, '空间很大很喜欢这个颜色', '无', '准备谈价格');
  INSERT INTO `drive_feedbacks` VALUES (403, 203, 103, 303, '2026-01-22 00:00:00', 2, 3, '油耗比预期高了一点', '油耗', '对比竞品');
  INSERT INTO `drive_feedbacks` VALUES (404, 204, 101, 305, '2026-02-03 00:00:00', 2, 4, '配置很高就是价格稍微超预算', '价格', '申请优惠');
  INSERT INTO `drive_feedbacks` VALUES (405, 205, 102, 301, '2026-02-17 00:00:00', 1, 5, '性价比很高决定买了', '无', '办理分期');
  INSERT INTO `drive_feedbacks` VALUES (406, 206, 103, 302, '2026-03-03 00:00:00', 2, 2, '悬挂太硬过减速带颠簸', '舒适性', '放弃');
  INSERT INTO `drive_feedbacks` VALUES (407, 207, 104, 303, '2026-03-12 00:00:00', 1, 4, '内饰质感不错外观年轻', '无', '等待促销');
  INSERT INTO `drive_feedbacks` VALUES (408, 208, 101, 305, '2026-03-24 00:00:00', 2, 3, '后排空间一般主要是自己开', '空间', '再考虑');
  INSERT INTO `drive_feedbacks` VALUES (409, 209, 102, 301, '2026-04-07 00:00:00', 2, 5, '非常满意直接订车', '无', '签约');
  INSERT INTO `drive_feedbacks` VALUES (410, 210, 103, 302, '2026-04-20 00:00:00', 1, 3, '颜色选择太少想要灰色的', '颜色', '调货');
  SET FOREIGN_KEY_CHECKS = 1;
  ```
- [payment_methods]
  ```
  /*
   Navicat Premium Dump SQL
   Source Server         : dev_dii_153
   Source Server Type    : MySQL
   Source Server Version : 50741 (5.7.41-230700-log)
   Source Host           : 192.1.1.1:20005
   Source Schema         : dii_xg
   Target Server Type    : MySQL
   Target Server Version : 50741 (5.7.41-230700-log)
   File Encoding         : 65001
   Date: 15/10/2026 15:17:06
  */
  SET NAMES utf8mb4;
  SET FOREIGN_KEY_CHECKS = 0;
  -- ----------------------------
  -- Table structure for payment_methods
  -- ----------------------------
  DROP TABLE IF EXISTS `payment_methods`;
  CREATE TABLE `payment_methods`  (
    `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键',
    `code` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '支付代码',
    `name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '支付方式名称',
    `is_financial` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否涉及金融贷款 0否1是',
    `status` int(11) NOT NULL DEFAULT 1 COMMENT '状态 1启用0停用',
    PRIMARY KEY (`id`) USING BTREE,
    UNIQUE INDEX `uk_code`(`code`) USING BTREE
  ) ENGINE = InnoDB AUTO_INCREMENT = 9 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '支付方式' ROW_FORMAT = Dynamic;
  -- ----------------------------
  -- Records of payment_methods
  -- ----------------------------
  INSERT INTO `payment_methods` VALUES (1, 'FULL', '全款支付', 0, 1);
  INSERT INTO `payment_methods` VALUES (2, 'INST', '银行分期', 1, 1);
  INSERT INTO `payment_methods` VALUES (3, 'MIX', '组合支付', 1, 1);
  INSERT INTO `payment_methods` VALUES (5, 'NONE', '未支付', 0, 0);
  SET FOREIGN_KEY_CHECKS = 1;
  ```
- [salespersons]
  ```
  /*
   Navicat Premium Dump SQL
   Source Server         : dev_dii_153
   Source Server Type    : MySQL
   Source Server Version : 50741 (5.7.41-230700-log)
   Source Host           : 192.1.1.1:20005
   Source Schema         : dii_xg
   Target Server Type    : MySQL
   Target Server Version : 50741 (5.7.41-230700-log)
   File Encoding         : 65001
   Date: 15/10/2026 15:17:20
  */
  SET NAMES utf8mb4;
  SET FOREIGN_KEY_CHECKS = 0;
  -- ----------------------------
  -- Table structure for salespersons
  -- ----------------------------
  DROP TABLE IF EXISTS `salespersons`;
  CREATE TABLE `salespersons`  (
    `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键销售ID',
    `name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '姓名',
    `employee_code` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '工号',
    `phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '联系电话',
    `store_id` bigint(20) NULL DEFAULT NULL COMMENT '所属门店ID',
    `role_level` int(11) NOT NULL DEFAULT 2 COMMENT '职级 1实习2初级3高级4销售总监',
    `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '入职建档时间',
    PRIMARY KEY (`id`) USING BTREE,
    UNIQUE INDEX `uk_employee_code`(`employee_code`) USING BTREE
  ) ENGINE = InnoDB AUTO_INCREMENT = 105 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '销售人员' ROW_FORMAT = Dynamic;
  -- ----------------------------
  -- Records of salespersons
  -- ----------------------------
  INSERT INTO `salespersons` VALUES (101, '张伟', 'SZ001', '13800138001', 1, 3, '2025-01-15 00:00:00');
  INSERT INTO `salespersons` VALUES (102, '李娜', 'LN002', '13800138002', 1, 4, '2024-06-20 00:00:00');
  INSERT INTO `salespersons` VALUES (103, '王强', 'WQ003', '13800138003', 2, 2, '2025-11-10 00:00:00');
  INSERT INTO `salespersons` VALUES (104, '赵敏', 'ZM004', '13800138004', 2, 1, '2026-02-28 00:00:00');
  SET FOREIGN_KEY_CHECKS = 1;
  ```
- [srv_worker_d_f]
  ```
  /*
   Navicat Premium Dump SQL
   Source Server         : dev_dii_153
   Source Server Type    : MySQL
   Source Server Version : 50741 (5.7.41-230700-log)
   Source Host           : 192.1.1.1:20005
   Source Schema         : dii_xg
   Target Server Type    : MySQL
   Target Server Version : 50741 (5.7.41-230700-log)
   File Encoding         : 65001
   Date: 15/10/2026 15:17:34
  */
  SET NAMES utf8mb4;
  SET FOREIGN_KEY_CHECKS = 0;
  -- ----------------------------
  -- Table structure for srv_worker_d_f
  -- ----------------------------
  DROP TABLE IF EXISTS `srv_worker_d_f`;
  CREATE TABLE `srv_worker_d_f`  (
    `new_srv_workerid` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '人员ID',
    `new_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '姓名',
    `new_account_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '所属客户ID',
    `new_expertlevel` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '远程支持专家级别',
    `new_phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '联系电话',
    `new_staffstatus` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '人员状态',
    `new_station_idname` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '所属服务网点',
    PRIMARY KEY (`new_srv_workerid`) USING BTREE,
    INDEX `idx_phone`(`new_phone`) USING BTREE,
    INDEX `idx_station`(`new_station_idname`) USING BTREE
  ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '服务人员信息' ROW_FORMAT = Dynamic;
  -- ----------------------------
  -- Records of srv_worker_d_f
  -- ----------------------------
  INSERT INTO `srv_worker_d_f` VALUES ('W001', '张伟', 'ACC10001', 'L3高级专家', '13800138001', '在职', '华东服务中心-上海站');
  INSERT INTO `srv_worker_d_f` VALUES ('W002', '李娜', 'ACC10002', 'L2中级工程师', '13800138002', '在职', '华东服务中心-南京站');
  INSERT INTO `srv_worker_d_f` VALUES ('W003', '王强', 'ACC10003', 'L4资深专家', '13800138003', '在职', '华北服务中心-北京站');
  INSERT INTO `srv_worker_d_f` VALUES ('W004', '刘洋', 'ACC10004', 'L1初级工程师', '13800138004', '在职', '华南服务中心-广州站');
  INSERT INTO `srv_worker_d_f` VALUES ('W005', '陈静', 'ACC10005', 'L3高级专家', '13800138005', '在职', '华南服务中心-深圳站');
  INSERT INTO `srv_worker_d_f` VALUES ('W006', '杨帆', 'ACC10006', 'L2中级工程师', '13800138006', '休假', '西南服务中心-成都站');
  INSERT INTO `srv_worker_d_f` VALUES ('W007', '赵磊', 'ACC10007', 'L4资深专家', '13800138007', '在职', '西南服务中心-重庆站');
  INSERT INTO `srv_worker_d_f` VALUES ('W008', '孙莉', 'ACC10008', 'L1初级工程师', '13800138008', '在职', '华中服务中心-武汉站');
  INSERT INTO `srv_worker_d_f` VALUES ('W009', '周明', 'ACC10009', 'L2中级工程师', '13800138009', '离职', '华中服务中心-长沙站');
  INSERT INTO `srv_worker_d_f` VALUES ('W010', '吴芳', 'ACC10010', 'L3高级专家', '13800138010', '在职', '东北服务中心-沈阳站');
  SET FOREIGN_KEY_CHECKS = 1;
  ```
- [srv_workorder_d_f]
  ```
  /*
   Navicat Premium Dump SQL
   Source Server         : dev_dii_153
   Source Server Type    : MySQL
   Source Server Version : 50741 (5.7.41-230700-log)
   Source Host           : 192.1.1.1:20005
   Source Schema         : dii_xg
   Target Server Type    : MySQL
   Target Server Version : 50741 (5.7.41-230700-log)
   File Encoding         : 65001
   Date: 15/10/2026 15:17:47
  */
  SET NAMES utf8mb4;
  SET FOREIGN_KEY_CHECKS = 0;
  -- ----------------------------
  -- Table structure for srv_workorder_d_f
  -- ----------------------------
  DROP TABLE IF EXISTS `srv_workorder_d_f`;
  CREATE TABLE `srv_workorder_d_f`  (
    `new_srv_workorderid` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '工单ID',
    `new_address` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '详细地址',
    `new_appointmenttime` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '预约时间',
    `new_customerid` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '客户ID',
    `new_dealstatus` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '处理进度',
    `new_memo` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '用户报修内容',
    `new_srv_worker_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '服务人员ID',
    `new_type` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '服务类型',
    `vehicle_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '车辆ID',
    `new_workernote` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '人员落实及解决方法',
    PRIMARY KEY (`new_srv_workorderid`) USING BTREE,
    INDEX `idx_customerid`(`new_customerid`) USING BTREE,
    INDEX `idx_worker_id`(`new_srv_worker_id`) USING BTREE
  ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '服务工单记录' ROW_FORMAT = Dynamic;
  -- ----------------------------
  -- Records of srv_workorder_d_f
  -- ----------------------------
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260101', '上海市浦东新区张江路100号', '2026-01-05 09:00', '201', '已完成', '发动机异响，怠速时明显金属敲击声', '1', '维修', '301', '检查发现气门间隙过大，调整气门间隙后异响消除');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260102', '南京市鼓楼区中山路200号', '2026-01-06 10:00', '202', '已完成', '变速箱换挡顿挫，2挡升3挡明显', '2', '维修', '302', '更换变速箱阀体总成，路试换挡平顺');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260103', '北京市朝阳区建国路88号', '2026-01-07 14:00', '203', '已完成', '发动机水温过高，仪表报警', '3', '维修', '303', '更换节温器及水泵，冷却系统恢复正常');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260104', '广州市天河区天河路300号', '2026-01-08 09:30', '204', '已完成', '燃油液位显示不准，满油显示半箱', '4', '维修', '305', '更换燃油液位传感器，标定后显示正常');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260105', '上海市闵行区沪闵路50号', '2026-01-09 11:00', '205', '已完成', '常规保养，更换机油机滤', '5', '保养', '301', '更换5W-30机油及机油滤芯，检查全车油液正常');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260106', '南京市建邺区江东中路120号', '2026-01-10 13:30', '206', '已完成', '刹车片磨损报警', '6', '维修', '302', '更换前刹车片及刹车盘，制动性能恢复');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260107', '北京市海淀区中关村大街1号', '2026-01-11 15:00', '207', '已完成', '发动机机油压力低报警', '7', '维修', '303', '更换机油泵及机油压力传感器，压力恢复正常');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260108', '深圳市南山区科技园路66号', '2026-01-12 09:00', '208', '已完成', '发动机转速不稳，怠速波动大', '8', '维修', '305', '清洗节气门及怠速阀，更换空气流量计');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260109', '成都市武侯区人民南路四段', '2026-01-13 10:30', '209', '已完成', '常规保养及全车检查', '9', '保养', '301', '更换机油、机滤、空滤，检查底盘无异常');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260110', '重庆市渝中区解放碑民权路', '2026-01-14 14:30', '210', '已完成', '变速箱油温过高报警', '10', '维修', '302', '更换变速箱油及油冷器，油温恢复正常');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260111', '上海市浦东新区张江路100号', '2026-01-15 09:00', '201', '已完成', '上次维修后回访确认车辆状况', '1', '回访', '301', '电话回访客户，反馈车辆运行正常无异响');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260112', '北京市朝阳区建国路88号', '2026-01-16 13:00', '202', '已完成', '上次保养后回访确认', '3', '回访', '303', '客户反馈保养后油耗降低，整体满意');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260113', '深圳市福田区深南大道99号', '2026-01-17 10:00', '203', '已完成', '燃油温度传感器故障排查回访', '4', '回访', '305', '客户反馈油温显示正常，问题已解决');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260114', '南京市玄武区中山东路18号', '2026-01-18 11:30', '204', '已完成', '刹车系统维修后回访', '2', '回访', '302', '客户反馈制动正常无异响，满意度高');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260115', '上海市闵行区沪闵路50号', '2026-01-19 14:00', '205', '已完成', '常规保养回访', '5', '回访', '301', '客户反馈保养后车辆动力提升，无异常');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260116', '北京市海淀区中关村大街1号', '2026-01-20 09:30', '206', '已完成', '机油压力维修后回访', '7', '回访', '303', '客户反馈机油压力正常，报警未再出现');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260117', '深圳市南山区科技园路66号', '2026-01-21 10:00', '207', '已完成', '怠速不稳维修后回访', '8', '回访', '305', '客户反馈怠速稳定，转速表正常');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260118', '武汉市洪山区珞瑜路88号', '2026-01-22 15:30', '208', '已完成', '变速箱油温维修后回访', '9', '回访', '302', '客户反馈长时间行驶油温正常，问题已解决');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260119', '沈阳市沈河区青年大街100号', '2026-01-23 11:00', '209', '已完成', '保养后回访确认', '10', '回访', '301', '客户反馈一切正常，对服务满意');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260120', '上海市浦东新区张江路100号', '2026-01-24 09:00', '210', '已完成', '变速箱维修后回访', '1', '回访', '303', '客户反馈换挡平顺无顿挫，维修效果良好');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260121', '上海市浦东新区张江路100号', '2026-02-03 09:00', '201', '处理中', '发动机抖动明显，加速无力', '1', '维修', '301', '初步检查点火线圈及火花塞，更换后路试正常');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260122', '深圳市福田区深南大道99号', '2026-02-04 10:00', '202', '处理中', '空调制冷效果差，出风口温度高', '4', '维修', '305', '补充冷媒并更换空调滤芯，制冷效果恢复');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260123', '南京市玄武区中山东路18号', '2026-02-05 11:30', '203', '处理中', '常规保养及轮胎换位', '2', '保养', '302', '更换机油机滤，四轮换位并做动平衡');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260124', '北京市朝阳区建国路88号', '2026-02-06 14:00', '204', '处理中', '发动机故障灯亮，OBD报P0171', '3', '维修', '303', '检查为混合气过稀，清洗喷油嘴后故障消除');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260125', '上海市闵行区沪闵路50号', '2026-02-07 09:30', '205', '处理中', '常规保养，更换刹车油', '5', '保养', '301', '更换机油机滤及刹车油，排气后制动正常');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260126', '深圳市福田区深南大道99号', '2026-02-08 10:00', '206', '处理中', '冷却液泄漏，底盘有水渍', '4', '维修', '305', '更换散热器下水管及卡箍，加压检漏无渗漏');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260127', '南京市玄武区中山东路18号', '2026-02-09 11:00', '207', '处理中', '变速箱跳挡，行驶中掉挡', '2', '维修', '302', '检查变速箱控制模块，升级软件后路试正常');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260128', '北京市海淀区中关村大街1号', '2026-02-10 14:30', '208', '处理中', '发动机怠速抖动，排气管有异味', '3', '维修', '303', '更换氧传感器及三元催化清洗，尾气达标');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260129', '沈阳市沈河区青年大街100号', '2026-02-11 09:00', '209', '处理中', '常规保养，更换火花塞', '10', '保养', '301', '更换铱金火花塞及机油机滤，点火性能提升');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260130', '上海市浦东新区张江路100号', '2026-02-12 10:30', '210', '处理中', '燃油泵异响，启动困难', '1', '维修', '305', '更换燃油泵总成及燃油滤芯，启动顺畅');
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260131', '上海市浦东新区张江路100号', '2026-02-17 09:00', '201', '待处理', '发动机加速无力，油耗增加', '1', '维修', '301', NULL);
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260132', '南京市鼓楼区中山路200号', '2026-02-18 10:00', '202', '待处理', '常规保养及四轮定位', '2', '保养', '302', NULL);
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260133', '北京市朝阳区建国路88号', '2026-02-19 14:00', '203', '待处理', '变速箱异响，低速明显', '3', '维修', '303', NULL);
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260134', '广州市天河区天河路300号', '2026-02-20 09:30', '204', '待处理', '空调不制冷，压缩机不工作', '4', '维修', '305', NULL);
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260135', '上海市闵行区沪闵路50号', '2026-02-21 11:00', '205', '待处理', '常规保养，检查底盘异响', '5', '保养', '301', NULL);
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260136', '南京市建邺区江东中路120号', '2026-02-22 13:30', '206', '待处理', '刹车软，踏板行程变长', '6', '维修', '302', NULL);
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260137', '北京市海淀区中关村大街1号', '2026-02-23 15:00', '207', '待处理', '发动机机油消耗过快', '7', '维修', '303', NULL);
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260138', '深圳市南山区科技园路66号', '2026-02-24 09:00', '208', '待处理', '发动机故障灯间歇亮起', '8', '维修', '305', NULL);
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260139', '成都市武侯区人民南路四段', '2026-02-25 10:30', '209', '待处理', '常规保养，更换变速箱油', '9', '保养', '301', NULL);
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260140', '重庆市渝中区解放碑民权路', '2026-02-26 14:30', '210', '待处理', '转向助力油泄漏', '10', '维修', '302', NULL);
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260141', '上海市浦东新区张江路100号', '2026-03-03 09:00', '201', '待处理', '发动机抖动维修后回访', '1', '回访', '301', NULL);
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260142', '深圳市福田区深南大道99号', '2026-03-04 10:00', '202', '待处理', '空调维修后回访确认', '4', '回访', '305', NULL);
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260143', '南京市玄武区中山东路18号', '2026-03-05 11:30', '203', '待处理', '保养后回访满意度', '2', '回访', '302', NULL);
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260144', '北京市朝阳区建国路88号', '2026-03-06 14:00', '204', '待处理', '故障灯维修后回访', '3', '回访', '303', NULL);
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260145', '上海市闵行区沪闵路50号', '2026-03-07 09:30', '205', '待处理', '保养及刹车油更换后回访', '5', '回访', '301', NULL);
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260146', '深圳市福田区深南大道99号', '2026-03-08 10:00', '206', '待处理', '冷却液泄漏维修后回访', '4', '回访', '305', NULL);
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260147', '南京市玄武区中山东路18号', '2026-03-09 11:00', '207', '待处理', '变速箱跳挡维修后回访', '2', '回访', '302', NULL);
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260148', '北京市海淀区中关村大街1号', '2026-03-10 14:30', '208', '待处理', '怠速抖动维修后回访', '3', '回访', '303', NULL);
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260149', '沈阳市沈河区青年大街100号', '2026-03-11 09:00', '209', '待处理', '火花塞更换后回访', '10', '回访', '301', NULL);
  INSERT INTO `srv_workorder_d_f` VALUES ('WO20260150', '上海市浦东新区张江路100号', '2026-03-12 10:30', '210', '待处理', '燃油泵维修后回访', '1', '回访', '305', NULL);
  SET FOREIGN_KEY_CHECKS = 1;
  ```
- [vehicle_sales_records]
  ```
  /*
   Navicat Premium Dump SQL
   Source Server         : dev_dii_153
   Source Server Type    : MySQL
   Source Server Version : 50741 (5.7.41-230700-log)
   Source Host           : 192.1.1.1:20005
   Source Schema         : dii_xg
   Target Server Type    : MySQL
   Target Server Version : 50741 (5.7.41-230700-log)
   File Encoding         : 65001
   Date: 15/10/2026 15:18:00
  */
  SET NAMES utf8mb4;
  SET FOREIGN_KEY_CHECKS = 0;
  -- ----------------------------
  -- Table structure for vehicle_sales_records
  -- ----------------------------
  DROP TABLE IF EXISTS `vehicle_sales_records`;
  CREATE TABLE `vehicle_sales_records`  (
    `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键id',
    `vehicle_id` bigint(20) NOT NULL COMMENT '外键车辆ID',
    `customer_id` bigint(20) NOT NULL COMMENT '客户ID',
    `salesperson_id` bigint(20) NOT NULL COMMENT '销售ID',
    `sale_price` float NOT NULL DEFAULT 0 COMMENT '实际成交金额',
    `sale_date` date NOT NULL COMMENT '成交日期',
    `payment_type` int(11) NULL DEFAULT NULL COMMENT '支付方式ID',
    `installment_amount` float NULL DEFAULT 0 COMMENT '分期金额',
    PRIMARY KEY (`id`) USING BTREE,
    INDEX `idx_vs_vehicle_id`(`vehicle_id`) USING BTREE,
    INDEX `idx_vs_customer_id`(`customer_id`) USING BTREE,
    INDEX `idx_vs_salesperson_id`(`salesperson_id`) USING BTREE,
    INDEX `idx_vs_sale_date`(`sale_date`) USING BTREE
  ) ENGINE = InnoDB AUTO_INCREMENT = 751 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车辆销售记录' ROW_FORMAT = Dynamic;
  -- ----------------------------
  -- Records of vehicle_sales_records
  -- ----------------------------
  INSERT INTO `vehicle_sales_records` VALUES (701, 301, 201, 101, 195000, '2026-01-15', 2, 130000);
  INSERT INTO `vehicle_sales_records` VALUES (702, 302, 202, 102, 232000, '2026-01-18', 2, 155000);
  INSERT INTO `vehicle_sales_records` VALUES (703, 303, 203, 103, 135000, '2026-01-22', 1, 0);
  INSERT INTO `vehicle_sales_records` VALUES (704, 305, 204, 101, 202000, '2026-02-05', 2, 140000);
  INSERT INTO `vehicle_sales_records` VALUES (705, 301, 205, 102, 198000, '2026-02-12', 1, 0);
  INSERT INTO `vehicle_sales_records` VALUES (706, 302, 206, 103, 0, '2026-02-20', 0, 0);
  INSERT INTO `vehicle_sales_records` VALUES (707, 303, 207, 104, 135000, '2026-03-02', 2, 90000);
  INSERT INTO `vehicle_sales_records` VALUES (708, 305, 208, 101, 205000, '2026-03-10', 1, 0);
  INSERT INTO `vehicle_sales_records` VALUES (709, 301, 209, 102, 198000, '2026-03-15', 2, 120000);
  INSERT INTO `vehicle_sales_records` VALUES (710, 302, 210, 103, 235000, '2026-03-22', 2, 160000);
  INSERT INTO `vehicle_sales_records` VALUES (711, 301, 201, 101, 197500, '2026-04-01', 2, 135000);
  INSERT INTO `vehicle_sales_records` VALUES (712, 303, 202, 102, 138000, '2026-04-05', 1, 0);
  INSERT INTO `vehicle_sales_records` VALUES (713, 305, 203, 103, 205000, '2026-04-10', 2, 145000);
  INSERT INTO `vehicle_sales_records` VALUES (714, 302, 204, 101, 230000, '2026-04-15', 2, 150000);
  INSERT INTO `vehicle_sales_records` VALUES (715, 301, 205, 104, 198000, '2026-04-20', 1, 0);
  INSERT INTO `vehicle_sales_records` VALUES (716, 303, 206, 102, 135000, '2026-04-25', 2, 85000);
  INSERT INTO `vehicle_sales_records` VALUES (717, 305, 207, 103, 208000, '2026-05-01', 1, 0);
  INSERT INTO `vehicle_sales_records` VALUES (718, 302, 208, 101, 235000, '2026-05-08', 2, 165000);
  INSERT INTO `vehicle_sales_records` VALUES (719, 301, 209, 102, 196000, '2026-05-12', 2, 130000);
  INSERT INTO `vehicle_sales_records` VALUES (720, 303, 210, 104, 135000, '2026-05-18', 1, 0);
  INSERT INTO `vehicle_sales_records` VALUES (721, 301, 201, 101, 198500, '2026-05-22', 2, 135000);
  INSERT INTO `vehicle_sales_records` VALUES (722, 305, 202, 102, 205000, '2026-05-28', 3, 140000);
  INSERT INTO `vehicle_sales_records` VALUES (723, 302, 203, 103, 232000, '2026-06-01', 1, 0);
  INSERT INTO `vehicle_sales_records` VALUES (724, 303, 204, 101, 135000, '2026-06-05', 2, 95000);
  INSERT INTO `vehicle_sales_records` VALUES (725, 301, 205, 104, 198000, '2026-06-08', 1, 0);
  INSERT INTO `vehicle_sales_records` VALUES (726, 305, 206, 102, 202000, '2026-06-10', 2, 135000);
  INSERT INTO `vehicle_sales_records` VALUES (727, 302, 207, 103, 235000, '2026-06-12', 2, 160000);
  INSERT INTO `vehicle_sales_records` VALUES (728, 303, 208, 101, 138000, '2026-06-15', 1, 0);
  INSERT INTO `vehicle_sales_records` VALUES (729, 301, 209, 102, 197000, '2026-06-18', 2, 125000);
  INSERT INTO `vehicle_sales_records` VALUES (730, 305, 210, 104, 205000, '2026-06-20', 2, 145000);
  INSERT INTO `vehicle_sales_records` VALUES (731, 301, 202, 101, 198000, '2026-01-25', 2, 130000);
  INSERT INTO `vehicle_sales_records` VALUES (732, 302, 203, 102, 230000, '2026-02-10', 1, 0);
  INSERT INTO `vehicle_sales_records` VALUES (733, 303, 204, 103, 135000, '2026-02-18', 2, 80000);
  INSERT INTO `vehicle_sales_records` VALUES (734, 305, 205, 101, 205000, '2026-03-05', 1, 0);
  INSERT INTO `vehicle_sales_records` VALUES (735, 301, 206, 104, 195000, '2026-03-12', 2, 125000);
  INSERT INTO `vehicle_sales_records` VALUES (736, 302, 207, 102, 235000, '2026-03-20', 3, 160000);
  INSERT INTO `vehicle_sales_records` VALUES (737, 303, 208, 103, 135000, '2026-04-02', 1, 0);
  INSERT INTO `vehicle_sales_records` VALUES (738, 305, 209, 101, 202000, '2026-04-08', 2, 135000);
  INSERT INTO `vehicle_sales_records` VALUES (739, 301, 210, 102, 198000, '2026-04-12', 2, 130000);
  INSERT INTO `vehicle_sales_records` VALUES (740, 302, 201, 103, 232000, '2026-04-18', 1, 0);
  INSERT INTO `vehicle_sales_records` VALUES (741, 303, 202, 104, 135000, '2026-05-02', 2, 90000);
  INSERT INTO `vehicle_sales_records` VALUES (742, 305, 203, 101, 205000, '2026-05-10', 1, 0);
  INSERT INTO `vehicle_sales_records` VALUES (743, 301, 204, 102, 197000, '2026-05-15', 2, 125000);
  INSERT INTO `vehicle_sales_records` VALUES (744, 302, 205, 103, 235000, '2026-05-20', 2, 165000);
  INSERT INTO `vehicle_sales_records` VALUES (745, 303, 206, 101, 138000, '2026-06-02', 1, 0);
  INSERT INTO `vehicle_sales_records` VALUES (746, 305, 207, 104, 205000, '2026-06-06', 2, 140000);
  INSERT INTO `vehicle_sales_records` VALUES (747, 301, 208, 102, 198000, '2026-06-10', 3, 130000);
  INSERT INTO `vehicle_sales_records` VALUES (748, 302, 209, 103, 230000, '2026-06-14', 3, 0);
  INSERT INTO `vehicle_sales_records` VALUES (749, 303, 210, 101, 135000, '2026-06-18', 3, 85000);
  INSERT INTO `vehicle_sales_records` VALUES (750, 305, 201, 102, 202000, '2026-06-22', 2, 135000);
  SET FOREIGN_KEY_CHECKS = 1;
  ```
- [vehicles]
  ```
  /*
   Navicat Premium Dump SQL
   Source Server         : dev_dii_153
   Source Server Type    : MySQL
   Source Server Version : 50741 (5.7.41-230700-log)
   Source Host           : 192.1.1.1:20005
   Source Schema         : dii_xg
   Target Server Type    : MySQL
   Target Server Version : 50741 (5.7.41-230700-log)
   File Encoding         : 65001
   Date: 15/10/2026 15:18:12
  */
  SET NAMES utf8mb4;
  SET FOREIGN_KEY_CHECKS = 0;
  -- ----------------------------
  -- Table structure for vehicles
  -- ----------------------------
  DROP TABLE IF EXISTS `vehicles`;
  CREATE TABLE `vehicles`  (
    `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键车辆ID',
    `vincode` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '车架号',
    `brand` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '品牌',
    `model` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '车系',
    `version` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '配置年款',
    `price_guide` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '指导价',
    `price_current` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '当前售价',
    `color` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '颜色',
    `stock_status` int(11) NOT NULL DEFAULT 0 COMMENT '状态 0无车1在库2在途3已订4已售',
    `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '入库时间',
    PRIMARY KEY (`id`) USING BTREE,
    UNIQUE INDEX `uk_vin_code`(`vincode`) USING BTREE,
    INDEX `idx_brand_model`(`brand`, `model`) USING BTREE
  ) ENGINE = InnoDB AUTO_INCREMENT = 306 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '车辆信息' ROW_FORMAT = Dynamic;
  -- ----------------------------
  -- Records of vehicles
  -- ----------------------------
  INSERT INTO `vehicles` VALUES (301, 'LSVW1234567890001', '大众', '帕萨特', '380TSI豪华版', '220000.00', '198000.00', '黑色', 1, '2025-12-01 00:00:00');
  INSERT INTO `vehicles` VALUES (302, 'LSVW1234567890002', '大众', '途观L', '330TSI智尊版', '260000.00', '235000.00', '白色', 2, '2025-12-15 00:00:00');
  INSERT INTO `vehicles` VALUES (303, 'LSVW1234567890003', '大众', '高尔夫', '280TSI豪华版', '150000.00', '135000.00', '红色', 1, '2026-01-10 00:00:00');
  INSERT INTO `vehicles` VALUES (304, 'LSVW1234567890004', '斯柯达', '明锐', '280TSI旗舰版', '130000.00', '115000.00', '银色', 0, '2026-02-01 00:00:00');
  INSERT INTO `vehicles` VALUES (305, 'LSVW1234567890005', '大众', '帕萨特', '380TSI旗舰版', '230000.00', '205000.00', '黑色', 1, '2026-03-01 00:00:00');
  SET FOREIGN_KEY_CHECKS = 1;
  ```
