SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- 服务管理模块数据表
-- ----------------------------

-- 1. APP意见反馈表（业务服务）
CREATE TABLE IF NOT EXISTS `service_feedback` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '反馈ID',
  `feedback_id` varchar(64) NOT NULL COMMENT '反馈编号',
  `user_id` bigint NOT NULL COMMENT '用户ID',
  `type` varchar(20) NOT NULL COMMENT '反馈类型：suggestion-功能建议，problem-问题反馈，other-其他',
  `content` text NOT NULL COMMENT '反馈内容',
  `images` text COMMENT '反馈图片列表（JSON数组）',
  `handle_status` tinyint NOT NULL DEFAULT 0 COMMENT '处理状态：0-待处理，1-已处理',
  `handle_result` tinyint COMMENT '处理结果：1-已解决，2-已记录',
  `handle_remark` varchar(500) COMMENT '处理备注',
  `handle_time` datetime COMMENT '处理时间',
  `handler_id` bigint COMMENT '处理人ID',
  `handler_name` varchar(50) COMMENT '处理人名称',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_feedback_id` (`feedback_id`),
  KEY `idx_user_id` (`user_id`),
  KEY `idx_handle_status` (`handle_status`),
  KEY `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='APP意见反馈表';

-- 2. 服务评价表（平台服务）
CREATE TABLE IF NOT EXISTS `service_evaluation` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '评价ID',
  `evaluation_id` varchar(64) NOT NULL COMMENT '评价编号',
  `user_id` bigint NOT NULL COMMENT '用户ID',
  `order_no` varchar(64) COMMENT '订单号',
  `rating` tinyint NOT NULL COMMENT '评分：1-5星',
  `content` text COMMENT '评价内容',
  `images` text COMMENT '评价图片列表（JSON数组）',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_evaluation_id` (`evaluation_id`),
  KEY `idx_user_id` (`user_id`),
  KEY `idx_order_no` (`order_no`),
  KEY `idx_rating` (`rating`),
  KEY `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='服务评价表';

-- 3. 维保订单表（平台服务）
CREATE TABLE IF NOT EXISTS `service_maintenance_order` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '订单ID',
  `order_id` varchar(64) NOT NULL COMMENT '订单编号',
  `order_no` varchar(64) NOT NULL COMMENT '订单号',
  `vehicle_id` bigint NOT NULL COMMENT '车辆ID',
  `user_id` bigint NOT NULL COMMENT '用户ID',
  `maintenance_type` varchar(50) NOT NULL COMMENT '维保类型：maintenance-保养，repair-维修，inspection-检测',
  `content` text NOT NULL COMMENT '维保内容',
  `cost` decimal(10,2) NOT NULL COMMENT '维保费用',
  `maintenance_time` datetime NOT NULL COMMENT '维保时间',
  `shop_id` bigint COMMENT '维保门店ID',
  `shop_name` varchar(100) COMMENT '维保门店名称',
  `shop_address` varchar(200) COMMENT '维保门店地址',
  `handler_id` bigint COMMENT '维保人员ID',
  `handler_name` varchar(50) COMMENT '维保人员名称',
  `status` tinyint NOT NULL DEFAULT 0 COMMENT '订单状态：0-待处理，1-处理中，2-已完成，3-已取消',
  `remark` varchar(500) COMMENT '备注',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_order_id` (`order_id`),
  UNIQUE KEY `uk_order_no` (`order_no`),
  KEY `idx_vehicle_id` (`vehicle_id`),
  KEY `idx_user_id` (`user_id`),
  KEY `idx_status` (`status`),
  KEY `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='维保订单表';

SET FOREIGN_KEY_CHECKS = 1;

