健康一贴灵,专注医药行业管理信息化

snipe-it建表SQL

IT资产管理系统建表语句
/*
Navicat Premium Data Transfer
Source Server         : 192.168.9.10_vm_mysql
Source Server Type    : MySQL
Source Server Version : 80037
Source Host           : 192.168.9.10:3306
Source Schema         : snipeit
Target Server Type    : MySQL
Target Server Version : 80037
File Encoding         : 65001
Date: 29/12/2025 10:47:13

说明:本文件已为所有字段添加中文注释(COMMENT),便于理解 Snipe-IT 数据库结构。
*/

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for accessories (配件表)
-- ----------------------------
DROP TABLE IF EXISTS `accessories`;
CREATE TABLE `accessories`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '配件ID(主键)',
  `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '配件名称',
  `category_id` int(0) NULL DEFAULT NULL COMMENT '所属分类ID',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '创建人用户ID',
  `qty` int(0) NOT NULL DEFAULT 0 COMMENT '当前库存数量',
  `requestable` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否可被用户申请(1=是)',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `deleted_at` timestamp(0) NULL DEFAULT NULL COMMENT '软删除时间',
  `location_id` int(0) NULL DEFAULT NULL COMMENT '存放位置ID',
  `purchase_date` date NULL DEFAULT NULL COMMENT '采购日期',
  `purchase_cost` decimal(20, 2) NULL DEFAULT NULL COMMENT '采购成本',
  `order_number` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '订单编号',
  `company_id` int(0) UNSIGNED NULL DEFAULT NULL COMMENT '所属公司ID',
  `min_amt` int(0) NULL DEFAULT NULL COMMENT '最低库存警戒值',
  `manufacturer_id` int(0) NULL DEFAULT NULL COMMENT '制造商ID',
  `model_number` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '型号编号',
  `image` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '图片路径',
  `supplier_id` int(0) NULL DEFAULT NULL COMMENT '供应商ID',
  `notes` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '备注',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `accessories_company_id_index`(`company_id`) USING BTREE,
  INDEX `accessories_deleted_at_category_id_index`(`deleted_at`, `category_id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '配件表';

-- ----------------------------
-- Table structure for accessories_checkout (配件借用记录表)
-- ----------------------------
DROP TABLE IF EXISTS `accessories_checkout`;
CREATE TABLE `accessories_checkout`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '记录ID',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '操作人ID',
  `accessory_id` int(0) NULL DEFAULT NULL COMMENT '配件ID',
  `assigned_to` int(0) NULL DEFAULT NULL COMMENT '借用人ID',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '借出时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `note` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '操作备注',
  `assigned_type` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '借用人类型(如 App\\Models\\User)',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '配件借用记录表';

-- ----------------------------
-- Table structure for action_logs (操作日志表)
-- ----------------------------
DROP TABLE IF EXISTS `action_logs`;
CREATE TABLE `action_logs`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '日志ID',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '操作人用户ID',
  `action_type` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作类型(如 create, update, checkout)',
  `target_id` int(0) NULL DEFAULT NULL COMMENT '目标对象ID(如被分配的用户)',
  `target_type` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '目标对象类型',
  `location_id` int(0) NULL DEFAULT NULL COMMENT '操作发生的位置ID',
  `note` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '日志备注',
  `filename` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '关联文件名',
  `item_type` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作对象类型(如 App\\Models\\Asset)',
  `item_id` int(0) NOT NULL COMMENT '操作对象ID',
  `expected_checkin` date NULL DEFAULT NULL COMMENT '预计归还日期',
  `accepted_id` int(0) NULL DEFAULT NULL COMMENT '签收人ID',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '日志记录时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `deleted_at` timestamp(0) NULL DEFAULT NULL COMMENT '软删除时间',
  `thread_id` int(0) NULL DEFAULT NULL COMMENT '日志线程ID(用于关联多条日志)',
  `company_id` int(0) NULL DEFAULT NULL COMMENT '所属公司ID',
  `accept_signature` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '签收签名文件名',
  `log_meta` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '日志元数据(JSON)',
  `action_date` datetime(0) NULL DEFAULT NULL COMMENT '实际操作时间',
  `stored_eula` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '存储的EULA协议文本',
  `action_source` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '操作来源(gui/api)',
  `remote_ip` varchar(45) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '操作IP地址',
  `user_agent` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '浏览器标识',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `action_logs_thread_id_index`(`thread_id`) USING BTREE,
  INDEX `action_logs_created_at_index`(`created_at`) USING BTREE,
  INDEX `action_logs_item_type_item_id_action_type_index`(`item_type`, `item_id`, `action_type`) USING BTREE,
  INDEX `action_logs_target_type_target_id_action_type_index`(`target_type`, `target_id`, `action_type`) USING BTREE,
  INDEX `action_logs_target_type_target_id_index`(`target_type`, `target_id`) USING BTREE,
  INDEX `action_logs_company_id_index`(`company_id`) USING BTREE,
  INDEX `action_logs_action_type_index`(`action_type`) USING BTREE,
  INDEX `action_logs_remote_ip_index`(`remote_ip`) USING BTREE,
  INDEX `action_logs_action_date_index`(`action_date`) USING BTREE,
  INDEX `action_logs_deleted_at_index`(`deleted_at`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '系统操作日志表';

-- ----------------------------
-- Records of action_logs
-- ----------------------------
INSERT INTO `action_logs` VALUES (1, NULL, 'create', NULL, NULL, NULL, NULL, NULL, 'App\\Models\\User', 1, NULL, NULL, '2025-12-29 00:17:47', '2025-12-29 00:17:47', NULL, NULL, NULL, NULL, NULL, '2025-12-29 00:17:47', NULL, 'gui', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36');

-- ----------------------------
-- Table structure for asset_logs (资产历史日志表,旧版)
-- ----------------------------
DROP TABLE IF EXISTS `asset_logs`;
CREATE TABLE `asset_logs`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '日志ID',
  `user_id` int(0) NULL DEFAULT NULL COMMENT '操作人ID',
  `action_type` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作类型',
  `asset_id` int(0) NOT NULL COMMENT '资产ID',
  `checkedout_to` int(0) NULL DEFAULT NULL COMMENT '借出给的用户ID',
  `location_id` int(0) NULL DEFAULT NULL COMMENT '位置ID',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `deleted_at` timestamp(0) NULL DEFAULT NULL COMMENT '软删除时间',
  `asset_type` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '资产类型',
  `note` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '备注',
  `filename` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '附件文件名',
  `requested_at` datetime(0) NULL DEFAULT NULL COMMENT '申请时间',
  `accepted_at` datetime(0) NULL DEFAULT NULL COMMENT '接受时间',
  `accessory_id` int(0) NULL DEFAULT NULL COMMENT '关联配件ID',
  `accepted_id` int(0) NULL DEFAULT NULL COMMENT '签收人ID',
  `consumable_id` int(0) NULL DEFAULT NULL COMMENT '关联耗材ID',
  `expected_checkin` date NULL DEFAULT NULL COMMENT '预计归还日期',
  `component_id` int(0) NULL DEFAULT NULL COMMENT '关联组件ID',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '资产操作日志表(旧)';

-- ----------------------------
-- Table structure for asset_uploads (资产附件上传表)
-- ----------------------------
DROP TABLE IF EXISTS `asset_uploads`;
CREATE TABLE `asset_uploads`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '附件ID',
  `user_id` int(0) NULL DEFAULT NULL COMMENT '上传人ID',
  `filename` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '文件名',
  `asset_id` int(0) NOT NULL COMMENT '关联资产ID',
  `filenotes` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '文件备注',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '上传时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `deleted_at` timestamp(0) NULL DEFAULT NULL COMMENT '软删除时间',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '资产附件表';

-- ----------------------------
-- Table structure for assets (资产主表)
-- ----------------------------
DROP TABLE IF EXISTS `assets`;
CREATE TABLE `assets`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '资产ID(主键)',
  `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '资产名称',
  `asset_tag` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '资产标签(唯一标识)',
  `model_id` int(0) NULL DEFAULT NULL COMMENT '型号ID',
  `serial` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '序列号',
  `purchase_date` date NULL DEFAULT NULL COMMENT '采购日期',
  `asset_eol_date` date NULL DEFAULT NULL COMMENT '生命周期结束日期',
  `eol_explicit` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否显式设置了EOL日期',
  `purchase_cost` decimal(20, 2) NULL DEFAULT NULL COMMENT '采购成本',
  `order_number` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '订单号',
  `assigned_to` int(0) NULL DEFAULT NULL COMMENT '当前分配给的用户/对象ID',
  `notes` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '备注',
  `image` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '资产图片路径',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '创建人ID',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `physical` tinyint(1) NOT NULL DEFAULT 1 COMMENT '是否为实体资产(1=是)',
  `deleted_at` timestamp(0) NULL DEFAULT NULL COMMENT '软删除时间',
  `status_id` int(0) NULL DEFAULT NULL COMMENT '状态标签ID',
  `archived` tinyint(1) NULL DEFAULT 0 COMMENT '是否已归档',
  `warranty_months` int(0) NULL DEFAULT NULL COMMENT '保修月数',
  `depreciate` tinyint(1) NULL DEFAULT NULL COMMENT '是否启用折旧',
  `supplier_id` int(0) NULL DEFAULT NULL COMMENT '供应商ID',
  `requestable` tinyint(0) NOT NULL DEFAULT 0 COMMENT '是否可申请',
  `rtd_location_id` int(0) NULL DEFAULT NULL COMMENT '待部署位置ID',
  `_snipeit_mac_address_1` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '自定义字段:MAC地址',
  `accepted` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '是否已接受(签名状态)',
  `last_checkout` datetime(0) NULL DEFAULT NULL COMMENT '最后借出时间',
  `last_checkin` datetime(0) NULL DEFAULT NULL COMMENT '最后归还时间',
  `expected_checkin` date NULL DEFAULT NULL COMMENT '预计归还日期',
  `company_id` int(0) UNSIGNED NULL DEFAULT NULL COMMENT '所属公司ID',
  `assigned_type` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '分配对象类型',
  `last_audit_date` datetime(0) NULL DEFAULT NULL COMMENT '上次审计时间',
  `next_audit_date` date NULL DEFAULT NULL COMMENT '下次审计日期',
  `location_id` int(0) NULL DEFAULT NULL COMMENT '当前位置ID',
  `checkin_counter` int(0) NOT NULL DEFAULT 0 COMMENT '归还次数',
  `checkout_counter` int(0) NOT NULL DEFAULT 0 COMMENT '借出次数',
  `requests_counter` int(0) NOT NULL DEFAULT 0 COMMENT '申请次数',
  `byod` tinyint(1) NULL DEFAULT 0 COMMENT '是否为员工自带设备(BYOD)',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `assets_rtd_location_id_index`(`rtd_location_id`) USING BTREE,
  INDEX `assets_assigned_type_assigned_to_index`(`assigned_type`, `assigned_to`) USING BTREE,
  INDEX `assets_created_at_index`(`created_at`) USING BTREE,
  INDEX `assets_deleted_at_status_id_index`(`deleted_at`, `status_id`) USING BTREE,
  INDEX `assets_deleted_at_model_id_index`(`deleted_at`, `model_id`) USING BTREE,
  INDEX `assets_deleted_at_assigned_type_assigned_to_index`(`deleted_at`, `assigned_type`, `assigned_to`) USING BTREE,
  INDEX `assets_deleted_at_supplier_id_index`(`deleted_at`, `supplier_id`) USING BTREE,
  INDEX `assets_deleted_at_location_id_index`(`deleted_at`, `location_id`) USING BTREE,
  INDEX `assets_deleted_at_rtd_location_id_index`(`deleted_at`, `rtd_location_id`) USING BTREE,
  INDEX `assets_deleted_at_asset_tag_index`(`deleted_at`, `asset_tag`) USING BTREE,
  INDEX `assets_deleted_at_name_index`(`deleted_at`, `name`) USING BTREE,
  INDEX `assets_serial_index`(`serial`) USING BTREE,
  INDEX `assets_company_id_index`(`company_id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '资产主表';

-- ----------------------------
-- Table structure for categories (分类表)
-- ----------------------------
DROP TABLE IF EXISTS `categories`;
CREATE TABLE `categories`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '分类ID',
  `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '分类名称',
  `tag_color` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '标签颜色',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '创建人ID',
  `deleted_at` timestamp(0) NULL DEFAULT NULL COMMENT '软删除时间',
  `eula_text` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '自定义EULA协议',
  `use_default_eula` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否使用系统默认EULA',
  `require_acceptance` tinyint(1) NOT NULL DEFAULT 0 COMMENT '分配时是否需要签收确认',
  `alert_on_response` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否在用户响应时告警',
  `category_type` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT 'asset' COMMENT '分类类型(asset/accessory/license/component)',
  `checkin_email` tinyint(1) NOT NULL DEFAULT 0 COMMENT '归还时是否发送邮件',
  `image` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '图片路径',
  `notes` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '备注',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `categories_deleted_at_index`(`deleted_at`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '资产/配件/许可证分类表';

-- ----------------------------
-- Records of categories
-- ----------------------------
INSERT INTO `categories` VALUES (1, 'Misc Software', NULL, '2025-12-29 00:15:44', '2025-12-29 00:15:44', NULL, NULL, NULL, 0, 0, 0, 'license', 0, NULL, NULL);

-- ----------------------------
-- Table structure for checkout_acceptances (签收确认表)
-- ----------------------------
DROP TABLE IF EXISTS `checkout_acceptances`;
CREATE TABLE `checkout_acceptances`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '签收记录ID',
  `checkoutable_type` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '被签收对象类型',
  `checkoutable_id` bigint(0) UNSIGNED NOT NULL COMMENT '被签收对象ID',
  `assigned_to_id` int(0) NULL DEFAULT NULL COMMENT '签收人ID',
  `qty` int(0) UNSIGNED NULL DEFAULT NULL COMMENT '数量',
  `signature_filename` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '签名文件名',
  `note` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '备注',
  `alert_on_response_id` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT '响应告警ID',
  `accepted_at` timestamp(0) NULL DEFAULT NULL COMMENT '接受时间',
  `declined_at` timestamp(0) NULL DEFAULT NULL COMMENT '拒绝时间',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `deleted_at` timestamp(0) NULL DEFAULT NULL COMMENT '软删除时间',
  `stored_eula` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '存储的EULA文本',
  `stored_eula_file` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'EULA文件名',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `checkout_acceptances_checkoutable_type_checkoutable_id_index`(`checkoutable_type`, `checkoutable_id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '资产/许可证分配签收表';

-- ----------------------------
-- Table structure for checkout_requests (借用申请表)
-- ----------------------------
DROP TABLE IF EXISTS `checkout_requests`;
CREATE TABLE `checkout_requests`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '申请ID',
  `user_id` int(0) NOT NULL COMMENT '申请人ID',
  `requestable_id` int(0) NOT NULL COMMENT '申请对象ID(如资产、配件)',
  `requestable_type` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '申请对象类型',
  `quantity` int(0) NOT NULL DEFAULT 1 COMMENT '申请数量',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '申请时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `canceled_at` datetime(0) NULL DEFAULT NULL COMMENT '取消时间',
  `fulfilled_at` datetime(0) NULL DEFAULT NULL COMMENT '完成时间',
  `deleted_at` datetime(0) NULL DEFAULT NULL COMMENT '软删除时间',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `checkout_requests_user_id_requestable_id_requestable_type`(`user_id`, `requestable_id`, `requestable_type`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '借用申请记录表';

-- ----------------------------
-- Table structure for companies (公司表)
-- ----------------------------
DROP TABLE IF EXISTS `companies`;
CREATE TABLE `companies`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '公司ID',
  `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '公司名称',
  `tag_color` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '标签颜色',
  `fax` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '传真',
  `email` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '邮箱',
  `phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '电话',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `image` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '公司Logo',
  `created_by` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT '创建人ID',
  `notes` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '备注',
  PRIMARY KEY (`id`) USING BTREE,
  UNIQUE INDEX `companies_name_unique`(`name`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '公司信息表';

-- ----------------------------
-- Table structure for components (组件表)
-- ----------------------------
DROP TABLE IF EXISTS `components`;
CREATE TABLE `components`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '组件ID',
  `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '组件名称',
  `category_id` int(0) NULL DEFAULT NULL COMMENT '分类ID',
  `location_id` int(0) NULL DEFAULT NULL COMMENT '位置ID',
  `company_id` int(0) NULL DEFAULT NULL COMMENT '公司ID',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '创建人ID',
  `supplier_id` int(0) NULL DEFAULT NULL COMMENT '供应商ID',
  `qty` int(0) NOT NULL DEFAULT 1 COMMENT '库存数量',
  `order_number` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '订单号',
  `purchase_date` date NULL DEFAULT NULL COMMENT '采购日期',
  `purchase_cost` decimal(20, 2) NULL DEFAULT NULL COMMENT '采购成本',
  `model_number` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '型号编号',
  `manufacturer_id` int(0) NULL DEFAULT NULL COMMENT '制造商ID',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `deleted_at` timestamp(0) NULL DEFAULT NULL COMMENT '软删除时间',
  `min_amt` int(0) NULL DEFAULT NULL COMMENT '最低库存',
  `serial` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '序列号',
  `image` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '图片',
  `notes` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '备注',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `components_company_id_index`(`company_id`) USING BTREE,
  INDEX `components_deleted_at_category_id_index`(`deleted_at`, `category_id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '组件(硬件模块)表';

-- ----------------------------
-- Table structure for components_assets (组件-资产关联表)
-- ----------------------------
DROP TABLE IF EXISTS `components_assets`;
CREATE TABLE `components_assets`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '关联ID',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '创建人ID',
  `assigned_qty` int(0) NULL DEFAULT 1 COMMENT '分配数量',
  `component_id` int(0) NULL DEFAULT NULL COMMENT '组件ID',
  `asset_id` int(0) NULL DEFAULT NULL COMMENT '资产ID',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `note` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '备注',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '组件与资产关联表';

-- ----------------------------
-- Table structure for consumables (耗材表)
-- ----------------------------
DROP TABLE IF EXISTS `consumables`;
CREATE TABLE `consumables`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '耗材ID',
  `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '耗材名称',
  `category_id` int(0) NULL DEFAULT NULL COMMENT '分类ID',
  `location_id` int(0) NULL DEFAULT NULL COMMENT '位置ID',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '创建人ID',
  `supplier_id` int(0) NULL DEFAULT NULL COMMENT '供应商ID',
  `qty` int(0) NOT NULL DEFAULT 0 COMMENT '库存数量',
  `requestable` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否可申请',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `deleted_at` timestamp(0) NULL DEFAULT NULL COMMENT '软删除时间',
  `purchase_date` date NULL DEFAULT NULL COMMENT '采购日期',
  `purchase_cost` decimal(20, 2) NULL DEFAULT NULL COMMENT '采购成本',
  `order_number` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '订单号',
  `company_id` int(0) UNSIGNED NULL DEFAULT NULL COMMENT '公司ID',
  `min_amt` int(0) NULL DEFAULT NULL COMMENT '最低库存',
  `model_number` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '型号编号',
  `manufacturer_id` int(0) NULL DEFAULT NULL COMMENT '制造商ID',
  `item_no` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '物品编号',
  `image` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '图片',
  `notes` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '备注',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `consumables_company_id_index`(`company_id`) USING BTREE,
  INDEX `consumables_deleted_at_category_id_index`(`deleted_at`, `category_id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '耗材表';

-- ----------------------------
-- Table structure for consumables_users (耗材分配记录)
-- ----------------------------
DROP TABLE IF EXISTS `consumables_users`;
CREATE TABLE `consumables_users`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '分配记录ID',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '分配人ID',
  `consumable_id` int(0) NULL DEFAULT NULL COMMENT '耗材ID',
  `assigned_to` int(0) NULL DEFAULT NULL COMMENT '分配给的用户ID',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '分配时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `note` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '备注',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '耗材分配记录表';

-- ----------------------------
-- Table structure for custom_field_custom_fieldset (自定义字段与字段集关联表)
-- ----------------------------
DROP TABLE IF EXISTS `custom_field_custom_fieldset`;
CREATE TABLE `custom_field_custom_fieldset`  (
  `id` bigint(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '关联ID',
  `custom_field_id` int(0) NOT NULL COMMENT '自定义字段ID',
  `custom_fieldset_id` int(0) NOT NULL COMMENT '字段集ID',
  `order` int(0) NOT NULL COMMENT '显示顺序',
  `required` tinyint(1) NOT NULL COMMENT '是否必填',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '自定义字段-字段集关联表';

-- ----------------------------
-- Records of custom_field_custom_fieldset
-- ----------------------------
INSERT INTO `custom_field_custom_fieldset` VALUES (1, 1, 1, 1, 0);

-- ----------------------------
-- Table structure for custom_fields (自定义字段定义表)
-- ----------------------------
DROP TABLE IF EXISTS `custom_fields`;
CREATE TABLE `custom_fields`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '字段ID',
  `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '字段名称',
  `format` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '验证格式(如正则)',
  `element` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '输入类型(text/select等)',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '创建人ID',
  `field_values` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '可选值(用于下拉框)',
  `field_encrypted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否加密存储',
  `db_column` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '数据库列名(如 _snipeit_mac_address_1)',
  `help_text` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '帮助提示文本',
  `show_in_email` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否在邮件中显示',
  `show_in_requestable_list` tinyint(1) NULL DEFAULT 0 COMMENT '是否在可申请列表显示',
  `is_unique` tinyint(1) NULL DEFAULT 0 COMMENT '是否唯一',
  `display_in_user_view` tinyint(1) NULL DEFAULT 0 COMMENT '是否在用户视图显示',
  `auto_add_to_fieldsets` tinyint(1) NULL DEFAULT 0 COMMENT '是否自动加入字段集',
  `show_in_listview` tinyint(1) NULL DEFAULT 0 COMMENT '是否在列表视图显示',
  `display_checkin` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否在归还时显示',
  `display_checkout` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否在借出时显示',
  `display_audit` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否在审计时显示',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '自定义字段定义表';

-- ----------------------------
-- Records of custom_fields
-- ----------------------------
INSERT INTO `custom_fields` VALUES (1, 'MAC Address', 'regex:/^[a-fA-F0-9]{2}:[a-fA-F0-9]{2}:[a-fA-F0-9]{2}:[a-fA-F0-9]{2}:[a-fA-F0-9]{2}:[a-fA-F0-9]{2}$/', 'text', NULL, '2025-12-29 00:15:42', NULL, NULL, 0, '_snipeit_mac_address_1', NULL, 0, 0, 0, 0, 0, 0, 0, 0, 0);

-- ----------------------------
-- Table structure for custom_fieldsets (自定义字段集)
-- ----------------------------
DROP TABLE IF EXISTS `custom_fieldsets`;
CREATE TABLE `custom_fieldsets`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '字段集ID',
  `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '字段集名称',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '创建人ID',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '自定义字段集';

-- ----------------------------
-- Records of custom_fieldsets
-- ----------------------------
INSERT INTO `custom_fieldsets` VALUES (1, 'Asset with MAC Address', NULL, NULL, NULL);

-- ----------------------------
-- Table structure for departments (部门表)
-- ----------------------------
DROP TABLE IF EXISTS `departments`;
CREATE TABLE `departments`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '部门ID',
  `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '部门名称',
  `tag_color` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '标签颜色',
  `fax` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '传真',
  `phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '电话',
  `created_by` int(0) NOT NULL COMMENT '创建人ID',
  `company_id` int(0) NULL DEFAULT NULL COMMENT '所属公司ID',
  `location_id` int(0) NULL DEFAULT NULL COMMENT '位置ID',
  `manager_id` int(0) NULL DEFAULT NULL COMMENT '部门经理用户ID',
  `notes` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '备注',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `deleted_at` timestamp(0) NULL DEFAULT NULL COMMENT '软删除时间',
  `image` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '图片',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `departments_company_id_index`(`company_id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '部门信息表';

-- ----------------------------
-- Table structure for depreciations (折旧规则表)
-- ----------------------------
DROP TABLE IF EXISTS `depreciations`;
CREATE TABLE `depreciations`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '折旧规则ID',
  `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '规则名称',
  `months` int(0) NOT NULL COMMENT '折旧月数',
  `depreciation_min` decimal(8, 2) NULL DEFAULT NULL COMMENT '最低折旧值',
  `depreciation_type` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'amount' COMMENT '折旧类型(amount/percent)',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '创建人ID',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '资产折旧规则表';

-- ----------------------------
-- Table structure for imports (导入任务表)
-- ----------------------------
DROP TABLE IF EXISTS `imports`;
CREATE TABLE `imports`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '导入任务ID',
  `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '任务名称',
  `file_path` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '文件路径',
  `filesize` int(0) NOT NULL COMMENT '文件大小(字节)',
  `import_type` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '导入类型(asset/user等)',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `header_row` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT 'CSV首行列名',
  `first_row` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT 'CSV第一行数据示例',
  `field_map` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '字段映射(JSON)',
  `created_by` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT '创建人ID',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '数据导入任务表';

-- ----------------------------
-- Table structure for kits (资产套件表)
-- ----------------------------
DROP TABLE IF EXISTS `kits`;
CREATE TABLE `kits`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '套件ID',
  `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '套件名称',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `created_by` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT '创建人ID',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '资产套件定义表';

-- ----------------------------
-- Table structure for kits_accessories (套件-配件关联)
-- ----------------------------
DROP TABLE IF EXISTS `kits_accessories`;
CREATE TABLE `kits_accessories`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '关联ID',
  `kit_id` int(0) NULL DEFAULT NULL COMMENT '套件ID',
  `accessory_id` int(0) NULL DEFAULT NULL COMMENT '配件ID',
  `quantity` int(0) NOT NULL DEFAULT 1 COMMENT '数量',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `created_by` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT '创建人ID',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '套件-配件关联表';

-- ----------------------------
-- Table structure for kits_consumables (套件-耗材关联)
-- ----------------------------
DROP TABLE IF EXISTS `kits_consumables`;
CREATE TABLE `kits_consumables`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '关联ID',
  `kit_id` int(0) NULL DEFAULT NULL COMMENT '套件ID',
  `consumable_id` int(0) NULL DEFAULT NULL COMMENT '耗材ID',
  `quantity` int(0) NOT NULL DEFAULT 1 COMMENT '数量',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `created_by` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT '创建人ID',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '套件-耗材关联表';

-- ----------------------------
-- Table structure for kits_licenses (套件-许可证关联)
-- ----------------------------
DROP TABLE IF EXISTS `kits_licenses`;
CREATE TABLE `kits_licenses`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '关联ID',
  `kit_id` int(0) NULL DEFAULT NULL COMMENT '套件ID',
  `license_id` int(0) NULL DEFAULT NULL COMMENT '许可证ID',
  `quantity` int(0) NOT NULL DEFAULT 1 COMMENT '数量',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `created_by` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT '创建人ID',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '套件-许可证关联表';

-- ----------------------------
-- Table structure for kits_models (套件-型号关联)
-- ----------------------------
DROP TABLE IF EXISTS `kits_models`;
CREATE TABLE `kits_models`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '关联ID',
  `kit_id` int(0) NULL DEFAULT NULL COMMENT '套件ID',
  `model_id` int(0) NULL DEFAULT NULL COMMENT '资产型号ID',
  `quantity` int(0) NOT NULL DEFAULT 1 COMMENT '数量',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `created_by` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT '创建人ID',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '套件-资产型号关联表';

-- ----------------------------
-- Table structure for license_seats (许可证席位表)
-- ----------------------------
DROP TABLE IF EXISTS `license_seats`;
CREATE TABLE `license_seats`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '席位ID',
  `license_id` int(0) NULL DEFAULT NULL COMMENT '许可证ID',
  `assigned_to` int(0) NULL DEFAULT NULL COMMENT '分配给的用户ID',
  `unreassignable_seat` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否不可重新分配',
  `notes` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '备注',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '创建人ID',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `deleted_at` timestamp(0) NULL DEFAULT NULL COMMENT '软删除时间',
  `asset_id` int(0) NULL DEFAULT NULL COMMENT '关联资产ID(用于绑定)',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `license_seats_license_id_index`(`license_id`) USING BTREE,
  INDEX `license_seats_assigned_to_license_id_index`(`assigned_to`, `license_id`) USING BTREE,
  INDEX `license_seats_asset_id_license_id_index`(`asset_id`, `license_id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '许可证席位分配表';

-- ----------------------------
-- Table structure for licenses (软件许可证表)
-- ----------------------------
DROP TABLE IF EXISTS `licenses`;
CREATE TABLE `licenses`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '许可证ID',
  `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '许可证名称',
  `serial` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '序列号/密钥',
  `purchase_date` date NULL DEFAULT NULL COMMENT '采购日期',
  `purchase_cost` decimal(20, 2) NULL DEFAULT NULL COMMENT '采购成本',
  `order_number` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '订单号',
  `seats` int(0) NOT NULL DEFAULT 1 COMMENT '授权席位数',
  `notes` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '备注',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '创建人ID',
  `depreciation_id` int(0) NULL DEFAULT NULL COMMENT '折旧规则ID',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `deleted_at` timestamp(0) NULL DEFAULT NULL COMMENT '软删除时间',
  `license_name` varchar(120) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '授权人姓名',
  `license_email` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '授权邮箱',
  `depreciate` tinyint(1) NULL DEFAULT NULL COMMENT '是否折旧',
  `supplier_id` int(0) NULL DEFAULT NULL COMMENT '供应商ID',
  `expiration_date` date NULL DEFAULT NULL COMMENT '到期日期',
  `purchase_order` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '采购订单号',
  `termination_date` date NULL DEFAULT NULL COMMENT '终止日期',
  `maintained` tinyint(1) NULL DEFAULT NULL COMMENT '是否维护中',
  `reassignable` tinyint(1) NOT NULL DEFAULT 1 COMMENT '是否可重新分配',
  `company_id` int(0) UNSIGNED NULL DEFAULT NULL COMMENT '公司ID',
  `manufacturer_id` int(0) NULL DEFAULT NULL COMMENT '制造商ID',
  `category_id` int(0) NULL DEFAULT NULL COMMENT '分类ID',
  `min_amt` int(0) NULL DEFAULT NULL COMMENT '最低库存',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `licenses_company_id_index`(`company_id`) USING BTREE,
  INDEX `licenses_deleted_at_category_id_index`(`deleted_at`, `category_id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '软件许可证表';

-- ----------------------------
-- Table structure for locations (位置表)
-- ----------------------------
DROP TABLE IF EXISTS `locations`;
CREATE TABLE `locations`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '位置ID',
  `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '位置名称',
  `tag_color` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '标签颜色',
  `city` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '城市',
  `state` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '州/省',
  `country` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '国家',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '创建人ID',
  `address` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '地址1',
  `address2` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '地址2',
  `zip` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '邮编',
  `fax` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '传真',
  `phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '电话',
  `deleted_at` timestamp(0) NULL DEFAULT NULL COMMENT '软删除时间',
  `parent_id` int(0) NULL DEFAULT NULL COMMENT '父位置ID(用于层级)',
  `currency` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '货币',
  `ldap_ou` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'LDAP组织单元',
  `manager_id` int(0) NULL DEFAULT NULL COMMENT '位置负责人ID',
  `image` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '图片',
  `company_id` int(0) UNSIGNED NULL DEFAULT NULL COMMENT '所属公司ID',
  `notes` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '备注',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `locations_company_id_index`(`company_id`) USING BTREE,
  INDEX `locations_parent_id_index`(`parent_id`) USING BTREE,
  INDEX `locations_manager_id_deleted_at_index`(`manager_id`, `deleted_at`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '物理位置表';

-- ----------------------------
-- Table structure for login_attempts (登录尝试记录)
-- ----------------------------
DROP TABLE IF EXISTS `login_attempts`;
CREATE TABLE `login_attempts`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '记录ID',
  `username` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '用户名',
  `remote_ip` varchar(45) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'IP地址',
  `user_agent` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '浏览器标识',
  `successful` tinyint(1) NULL DEFAULT NULL COMMENT '是否成功(1=成功)',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '尝试时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '登录尝试记录表';

-- ----------------------------
-- Table structure for maintenances (资产维护记录)
-- ----------------------------
DROP TABLE IF EXISTS `maintenances`;
CREATE TABLE `maintenances`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '维护记录ID',
  `asset_id` int(0) UNSIGNED NOT NULL COMMENT '资产ID',
  `supplier_id` int(0) NULL DEFAULT NULL COMMENT '供应商ID',
  `asset_maintenance_type` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '维护类型(如维修/升级)',
  `name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '维护项目名称',
  `url` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '相关链接',
  `is_warranty` tinyint(1) NOT NULL COMMENT '是否在保修期内',
  `start_date` date NOT NULL COMMENT '开始日期',
  `completion_date` date NULL DEFAULT NULL COMMENT '完成日期',
  `asset_maintenance_time` int(0) NULL DEFAULT NULL COMMENT '耗时(天)',
  `notes` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '备注',
  `image` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '图片',
  `cost` decimal(20, 2) NULL DEFAULT NULL COMMENT '维护成本',
  `deleted_at` datetime(0) NULL DEFAULT NULL COMMENT '软删除时间',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '创建人ID',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '资产维护记录表';

-- ----------------------------
-- Table structure for manufacturers (制造商表)
-- ----------------------------
DROP TABLE IF EXISTS `manufacturers`;
CREATE TABLE `manufacturers`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '制造商ID',
  `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '名称',
  `tag_color` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '标签颜色',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '创建人ID',
  `deleted_at` timestamp(0) NULL DEFAULT NULL COMMENT '软删除时间',
  `url` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '官网URL',
  `support_url` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '支持网址',
  `warranty_lookup_url` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '保修查询URL',
  `support_phone` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '支持电话',
  `support_email` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '支持邮箱',
  `image` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'Logo',
  `notes` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '备注',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '制造商信息表';

-- ----------------------------
-- Table structure for migrations (Laravel迁移记录)
-- ----------------------------
DROP TABLE IF EXISTS `migrations`;
CREATE TABLE `migrations`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '迁移ID',
  `migration` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '迁移文件名',
  `batch` int(0) NOT NULL COMMENT '批次号',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 435 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT 'Laravel数据库迁移记录表';

-- ----------------------------
-- Table structure for models (资产型号表)
-- ----------------------------
DROP TABLE IF EXISTS `models`;
CREATE TABLE `models`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '型号ID',
  `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '型号名称',
  `model_number` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '型号编号',
  `min_amt` int(0) NULL DEFAULT NULL COMMENT '最低库存',
  `manufacturer_id` int(0) NULL DEFAULT NULL COMMENT '制造商ID',
  `category_id` int(0) NULL DEFAULT NULL COMMENT '分类ID',
  `require_serial` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否要求序列号',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `depreciation_id` int(0) NULL DEFAULT NULL COMMENT '折旧规则ID',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '创建人ID',
  `eol` int(0) NULL DEFAULT NULL COMMENT '生命周期(月)',
  `image` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '图片',
  `deprecated_mac_address` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否弃用MAC地址字段',
  `deleted_at` timestamp(0) NULL DEFAULT NULL COMMENT '软删除时间',
  `fieldset_id` int(0) NULL DEFAULT NULL COMMENT '关联的自定义字段集ID',
  `notes` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '备注',
  `requestable` tinyint(0) NOT NULL DEFAULT 0 COMMENT '是否可申请',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `models_deleted_at_category_id_index`(`deleted_at`, `category_id`) USING BTREE,
  INDEX `models_created_at_index`(`created_at`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '资产型号表';

-- ----------------------------
-- Table structure for models_custom_fields (型号-自定义字段关联)
-- ----------------------------
DROP TABLE IF EXISTS `models_custom_fields`;
CREATE TABLE `models_custom_fields`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '关联ID',
  `asset_model_id` int(0) NOT NULL COMMENT '资产型号ID',
  `custom_field_id` int(0) NOT NULL COMMENT '自定义字段ID',
  `default_value` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '默认值',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '型号与自定义字段默认值关联表';

-- ----------------------------
-- Table structure for oauth_access_tokens (OAuth2访问令牌)
-- ----------------------------
DROP TABLE IF EXISTS `oauth_access_tokens`;
CREATE TABLE `oauth_access_tokens`  (
  `id` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '令牌ID',
  `user_id` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT '用户ID',
  `client_id` bigint(0) UNSIGNED NOT NULL COMMENT '客户端ID',
  `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '令牌名称',
  `scopes` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '权限范围',
  `revoked` tinyint(1) NOT NULL COMMENT '是否已撤销',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `expires_at` datetime(0) NULL DEFAULT NULL COMMENT '过期时间',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `oauth_access_tokens_user_id_index`(`user_id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT 'OAuth2访问令牌表';

-- ----------------------------
-- Table structure for oauth_auth_codes (OAuth2授权码)
-- ----------------------------
DROP TABLE IF EXISTS `oauth_auth_codes`;
CREATE TABLE `oauth_auth_codes`  (
  `id` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '授权码',
  `user_id` bigint(0) UNSIGNED NOT NULL COMMENT '用户ID',
  `client_id` bigint(0) UNSIGNED NOT NULL COMMENT '客户端ID',
  `scopes` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '权限范围',
  `revoked` tinyint(1) NOT NULL COMMENT '是否已撤销',
  `expires_at` datetime(0) NULL DEFAULT NULL COMMENT '过期时间',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `oauth_auth_codes_user_id_index`(`user_id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT 'OAuth2授权码表';

-- ----------------------------
-- Table structure for oauth_clients (OAuth2客户端)
-- ----------------------------
DROP TABLE IF EXISTS `oauth_clients`;
CREATE TABLE `oauth_clients`  (
  `id` bigint(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '客户端ID',
  `user_id` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT '所属用户ID',
  `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户端名称',
  `secret` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '密钥',
  `provider` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '认证提供者',
  `redirect` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '重定向URI',
  `personal_access_client` tinyint(1) NOT NULL COMMENT '是否为个人访问客户端',
  `password_client` tinyint(1) NOT NULL COMMENT '是否为密码授权客户端',
  `revoked` tinyint(1) NOT NULL COMMENT '是否已撤销',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `oauth_clients_user_id_index`(`user_id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT 'OAuth2客户端表';

-- ----------------------------
-- Records of oauth_clients
-- ----------------------------
INSERT INTO `oauth_clients` VALUES (1, NULL, 'Snipe-IT Personal Access Client', 'Z2nYWtHt4UoBin5QvIXC0gdG60SGPffxP252Yxwa', NULL, 'http://localhost', 1, 0, 0, '2025-12-29 00:15:51', '2025-12-29 00:15:51');
INSERT INTO `oauth_clients` VALUES (2, NULL, 'Snipe-IT Password Grant Client', 'gbsgHV8n8q5op8qqrKVJsNQsmkENx4IHWyK48pnz', 'users', 'http://localhost', 0, 1, 0, '2025-12-29 00:15:51', '2025-12-29 00:15:51');

-- ----------------------------
-- Table structure for oauth_personal_access_clients (个人访问令牌客户端)
-- ----------------------------
DROP TABLE IF EXISTS `oauth_personal_access_clients`;
CREATE TABLE `oauth_personal_access_clients`  (
  `id` bigint(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '记录ID',
  `client_id` bigint(0) UNSIGNED NOT NULL COMMENT '客户端ID',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '个人访问令牌客户端关联表';

-- ----------------------------
-- Records of oauth_personal_access_clients
-- ----------------------------
INSERT INTO `oauth_personal_access_clients` VALUES (1, 1, '2025-12-29 00:15:51', '2025-12-29 00:15:51');

-- ----------------------------
-- Table structure for oauth_refresh_tokens (OAuth2刷新令牌)
-- ----------------------------
DROP TABLE IF EXISTS `oauth_refresh_tokens`;
CREATE TABLE `oauth_refresh_tokens`  (
  `id` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '刷新令牌ID',
  `access_token_id` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '关联的访问令牌ID',
  `revoked` tinyint(1) NOT NULL COMMENT '是否已撤销',
  `expires_at` datetime(0) NULL DEFAULT NULL COMMENT '过期时间',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT 'OAuth2刷新令牌表';

-- ----------------------------
-- Table structure for password_resets (密码重置表)
-- ----------------------------
DROP TABLE IF EXISTS `password_resets`;
CREATE TABLE `password_resets`  (
  `email` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '邮箱',
  `token` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '重置令牌',
  `created_at` timestamp(0) NOT NULL COMMENT '创建时间',
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '记录ID',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `password_resets_email_index`(`email`) USING BTREE,
  INDEX `password_resets_token_index`(`token`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '密码重置请求表';

-- ----------------------------
-- Table structure for permission_groups (权限组表)
-- ----------------------------
DROP TABLE IF EXISTS `permission_groups`;
CREATE TABLE `permission_groups`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '权限组ID',
  `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '组名称',
  `permissions` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '权限配置(JSON)',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '创建人ID',
  `notes` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '备注',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '用户权限组表';

-- ----------------------------
-- Table structure for report_templates (报表模板)
-- ----------------------------
DROP TABLE IF EXISTS `report_templates`;
CREATE TABLE `report_templates`  (
  `id` bigint(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '模板ID',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '创建人ID',
  `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '模板名称',
  `options` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '报表选项(JSON)',
  `deleted_at` timestamp(0) NULL DEFAULT NULL COMMENT '软删除时间',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `report_templates_created_by_index`(`created_by`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '自定义报表模板表';

-- ----------------------------
-- Table structure for requested_assets (资产申请记录)
-- ----------------------------
DROP TABLE IF EXISTS `requested_assets`;
CREATE TABLE `requested_assets`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '申请ID',
  `asset_id` int(0) NOT NULL COMMENT '资产ID',
  `user_id` int(0) NOT NULL COMMENT '申请人ID',
  `accepted_at` datetime(0) NULL DEFAULT NULL COMMENT '接受时间',
  `denied_at` datetime(0) NULL DEFAULT NULL COMMENT '拒绝时间',
  `notes` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '备注',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '用户资产申请审批记录表';

-- ----------------------------
-- Table structure for requests (资产请求表)
-- ----------------------------
DROP TABLE IF EXISTS `requests`;
CREATE TABLE `requests`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '请求ID',
  `asset_id` int(0) NOT NULL COMMENT '资产ID',
  `user_id` int(0) NULL DEFAULT NULL COMMENT '用户ID',
  `request_code` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '请求验证码',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `deleted_at` timestamp(0) NULL DEFAULT NULL COMMENT '软删除时间',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '资产请求验证码表';

-- ----------------------------
-- Table structure for saml_nonces (SAML一次性令牌)
-- ----------------------------
DROP TABLE IF EXISTS `saml_nonces`;
CREATE TABLE `saml_nonces`  (
  `id` bigint(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '记录ID',
  `nonce` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '一次性令牌',
  `not_valid_after` datetime(0) NOT NULL COMMENT '失效时间',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `saml_nonces_nonce_index`(`nonce`) USING BTREE,
  INDEX `saml_nonces_not_valid_after_index`(`not_valid_after`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT 'SAML登录防重放攻击令牌表';

-- ----------------------------
-- Table structure for settings (系统设置表)
-- ----------------------------
DROP TABLE IF EXISTS `settings`;
CREATE TABLE `settings`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '设置ID',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '创建人ID',
  `per_page` int(0) NOT NULL DEFAULT 20 COMMENT '每页显示数量',
  `site_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'Snipe IT Asset Management' COMMENT '站点名称',
  `qr_code` int(0) NULL DEFAULT NULL COMMENT '是否启用二维码',
  `qr_text` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '二维码文本',
  `display_asset_name` int(0) NULL DEFAULT NULL COMMENT '是否显示资产名称',
  `display_checkout_date` int(0) NULL DEFAULT NULL COMMENT '是否显示借出日期',
  `display_eol` int(0) NULL DEFAULT NULL COMMENT '是否显示生命周期',
  `auto_increment_assets` int(0) NOT NULL DEFAULT 0 COMMENT '是否自动递增资产编号',
  `auto_increment_prefix` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '资产编号前缀',
  `load_remote` tinyint(1) NOT NULL DEFAULT 1 COMMENT '是否加载远程内容',
  `logo` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '站点Logo',
  `header_color` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '页头颜色',
  `nav_link_color` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '#ffffff' COMMENT '导航链接颜色',
  `link_light_color` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '浅色链接颜色',
  `link_dark_color` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '深色链接颜色',
  `alert_email` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '告警通知邮箱',
  `alerts_enabled` tinyint(1) NOT NULL DEFAULT 1 COMMENT '是否启用告警',
  `default_eula_text` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '默认EULA协议文本',
  `webhook_endpoint` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT 'Webhook端点',
  `webhook_channel` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'Webhook频道',
  `webhook_botname` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'Webhook机器人名',
  `webhook_selected` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT 'slack' COMMENT 'Webhook类型(如slack)',
  `default_currency` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '默认货币',
  `custom_css` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '自定义CSS',
  `brand` tinyint(0) NOT NULL DEFAULT 1 COMMENT '是否显示品牌信息',
  `ldap_enabled` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '是否启用LDAP',
  `ldap_server` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'LDAP服务器地址',
  `ldap_uname` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'LDAP绑定用户名',
  `ldap_pword` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT 'LDAP绑定密码',
  `ldap_basedn` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'LDAP基础DN',
  `ldap_default_group` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'LDAP默认用户组',
  `ldap_filter` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT 'LDAP用户过滤器',
  `ldap_username_field` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT 'samaccountname' COMMENT 'LDAP用户名字段',
  `ldap_lname_field` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT 'sn' COMMENT 'LDAP姓字段',
  `ldap_fname_field` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT 'givenname' COMMENT 'LDAP名字段',
  `ldap_display_name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'LDAP显示名字段',
  `ldap_auth_filter_query` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT 'uid=' COMMENT 'LDAP认证过滤查询',
  `ldap_version` int(0) NULL DEFAULT 3 COMMENT 'LDAP协议版本',
  `ldap_active_flag` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'LDAP账户激活标志字段',
  `ldap_dept` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'LDAP部门字段',
  `ldap_emp_num` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'LDAP员工编号字段',
  `ldap_email` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'LDAP邮箱字段',
  `ldap_phone_field` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'LDAP电话字段',
  `ldap_mobile` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'LDAP手机字段',
  `ldap_jobtitle` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'LDAP职位字段',
  `ldap_manager` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'LDAP经理字段',
  `ldap_address` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'LDAP地址字段',
  `ldap_city` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'LDAP城市字段',
  `ldap_state` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'LDAP州字段',
  `ldap_zip` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'LDAP邮编字段',
  `ldap_country` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'LDAP国家字段',
  `ldap_location` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'LDAP位置字段',
  `full_multiple_companies_support` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否启用多公司支持',
  `scope_locations_fmcs` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否按公司限制位置',
  `ldap_server_cert_ignore` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否忽略LDAP证书',
  `locale` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT 'en-US' COMMENT '系统语言',
  `week_start` tinyint(0) NULL DEFAULT 0 COMMENT '每周开始日(0=周日)',
  `labels_per_page` tinyint(0) NOT NULL DEFAULT 30 COMMENT '每页标签数量',
  `labels_width` decimal(6, 5) NOT NULL DEFAULT 2.62500 COMMENT '标签宽度(英寸)',
  `labels_height` decimal(6, 5) NOT NULL DEFAULT 1.00000 COMMENT '标签高度(英寸)',
  `labels_pmargin_left` decimal(6, 5) NOT NULL DEFAULT 0.21975 COMMENT '标签左页边距',
  `labels_pmargin_right` decimal(6, 5) NOT NULL DEFAULT 0.21975 COMMENT '标签右页边距',
  `labels_pmargin_top` decimal(6, 5) NOT NULL DEFAULT 0.50000 COMMENT '标签上页边距',
  `labels_pmargin_bottom` decimal(6, 5) NOT NULL DEFAULT 0.50000 COMMENT '标签下页边距',
  `labels_display_bgutter` decimal(6, 5) NOT NULL DEFAULT 0.07000 COMMENT '标签块间距',
  `labels_display_sgutter` decimal(6, 5) NOT NULL DEFAULT 0.05000 COMMENT '标签列间距',
  `labels_fontsize` tinyint(0) NOT NULL DEFAULT 9 COMMENT '标签字体大小',
  `labels_pagewidth` decimal(7, 5) NOT NULL DEFAULT 8.50000 COMMENT '页面宽度(英寸)',
  `labels_pageheight` decimal(7, 5) NOT NULL DEFAULT 11.00000 COMMENT '页面高度(英寸)',
  `labels_display_name` tinyint(0) NOT NULL DEFAULT 0 COMMENT '标签是否显示名称',
  `labels_display_serial` tinyint(0) NOT NULL DEFAULT 1 COMMENT '标签是否显示序列号',
  `labels_display_tag` tinyint(0) NOT NULL DEFAULT 1 COMMENT '标签是否显示资产标签',
  `alt_barcode_enabled` tinyint(1) NULL DEFAULT 1 COMMENT '是否启用备用条码',
  `alert_interval` int(0) NULL DEFAULT 30 COMMENT '告警间隔(天)',
  `alert_threshold` int(0) NULL DEFAULT 5 COMMENT '库存告警阈值',
  `name_display_format` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT 'first_last' COMMENT '姓名显示格式',
  `email_domain` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '邮箱域名',
  `email_format` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT 'filastname' COMMENT '邮箱格式模板',
  `username_format` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT 'filastname' COMMENT '用户名格式模板',
  `is_ad` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否为Active Directory',
  `ad_domain` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'AD域名',
  `ldap_port` varchar(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '389' COMMENT 'LDAP端口',
  `ldap_tls` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否启用LDAP TLS',
  `zerofill_count` int(0) NOT NULL DEFAULT 5 COMMENT '资产编号零填充位数',
  `ldap_pw_sync` tinyint(1) NOT NULL DEFAULT 1 COMMENT '是否同步LDAP密码',
  `two_factor_enabled` tinyint(0) NULL DEFAULT NULL COMMENT '是否启用双因素认证',
  `require_accept_signature` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否要求签收签名',
  `date_display_format` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'Y-m-d' COMMENT '日期显示格式',
  `time_display_format` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'h:i A' COMMENT '时间显示格式',
  `next_auto_tag_base` bigint(0) NOT NULL DEFAULT 1 COMMENT '下一个自动资产标签序号',
  `login_note` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '登录页提示信息',
  `thumbnail_max_h` int(0) NULL DEFAULT 50 COMMENT '缩略图最大高度',
  `pwd_secure_uncommon` tinyint(1) NOT NULL DEFAULT 0 COMMENT '密码是否需非常见',
  `pwd_secure_complexity` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '密码复杂度规则',
  `pwd_secure_min` int(0) NOT NULL DEFAULT 8 COMMENT '密码最小长度',
  `audit_interval` int(0) NULL DEFAULT NULL COMMENT '审计间隔(月)',
  `audit_warning_days` int(0) NULL DEFAULT NULL COMMENT '审计到期提醒天数',
  `show_url_in_emails` tinyint(1) NOT NULL DEFAULT 0 COMMENT '邮件中是否显示URL',
  `custom_forgot_pass_url` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '自定义忘记密码链接',
  `show_alerts_in_menu` tinyint(1) NOT NULL DEFAULT 1 COMMENT '菜单中是否显示告警',
  `labels_display_company_name` tinyint(1) NOT NULL DEFAULT 0 COMMENT '标签是否显示公司名',
  `show_archived_in_list` tinyint(1) NOT NULL DEFAULT 0 COMMENT '列表中是否显示已归档项',
  `dashboard_message` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '仪表盘公告',
  `support_footer` char(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT 'on' COMMENT '页脚是否显示支持信息',
  `footer_text` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '自定义页脚文本',
  `modellist_displays` char(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT 'image,category,manufacturer,model_number' COMMENT '型号列表显示字段',
  `login_remote_user_enabled` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否启用远程用户登录',
  `login_common_disabled` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否禁用公共登录',
  `login_remote_user_custom_logout_url` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '远程用户自定义登出URL',
  `skin` char(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'UI主题',
  `show_images_in_email` tinyint(1) NOT NULL DEFAULT 1 COMMENT '邮件中是否显示图片',
  `admin_cc_email` char(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '管理员抄送邮箱',
  `admin_cc_always` tinyint(1) NOT NULL DEFAULT 1 COMMENT '是否总是抄送管理员',
  `labels_display_model` tinyint(1) NOT NULL DEFAULT 0 COMMENT '标签是否显示型号',
  `privacy_policy_link` char(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '隐私政策链接',
  `version_footer` char(5) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT 'on' COMMENT '页脚是否显示版本号',
  `unique_serial` tinyint(1) NOT NULL DEFAULT 0 COMMENT '序列号是否全局唯一',
  `logo_print_assets` tinyint(1) NOT NULL DEFAULT 0 COMMENT '打印资产标签时是否包含Logo',
  `depreciation_method` char(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT 'default' COMMENT '折旧计算方法',
  `favicon` char(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '站点图标',
  `default_avatar` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT 'default.png' COMMENT '默认用户头像',
  `email_logo` char(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '邮件Logo',
  `label_logo` char(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '标签Logo',
  `acceptance_pdf_logo` char(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '签收PDF Logo',
  `allow_user_skin` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否允许用户自定义主题',
  `show_assigned_assets` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否显示已分配资产',
  `login_remote_user_header_name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '远程用户头信息名称',
  `ad_append_domain` tinyint(1) NOT NULL DEFAULT 0 COMMENT 'AD用户名是否附加域名',
  `saml_enabled` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否启用SAML',
  `saml_idp_metadata` mediumtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT 'SAML IdP元数据',
  `saml_attr_mapping_username` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'SAML用户名属性映射',
  `saml_forcelogin` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否强制SAML登录',
  `saml_slo` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否启用SAML单点登出',
  `saml_sp_x509cert` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT 'SAML SP证书',
  `saml_sp_privatekey` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT 'SAML SP私钥',
  `saml_custom_settings` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT 'SAML自定义配置',
  `saml_sp_x509certNew` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT 'SAML SP新证书',
  `digit_separator` char(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '1,234.56' COMMENT '数字千分位分隔符',
  `ldap_client_tls_cert` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT 'LDAP客户端TLS证书',
  `ldap_client_tls_key` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT 'LDAP客户端TLS私钥',
  `dash_chart_type` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT 'name' COMMENT '仪表盘图表类型',
  `label2_enable` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否启用第二标签模板',
  `label2_template` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT 'DefaultLabel' COMMENT '第二标签模板名',
  `label2_title` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '第二标签标题',
  `label2_asset_logo` tinyint(1) NOT NULL DEFAULT 0 COMMENT '第二标签是否显示资产Logo',
  `label2_1d_type` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'C128' COMMENT '第二标签一维码类型',
  `label2_2d_type` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'QRCODE' COMMENT '第二标签二维码类型',
  `label2_2d_prefix` char(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '第二标签二维码前缀',
  `label2_2d_target` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'hardware_id' COMMENT '第二标签二维码内容',
  `label2_fields` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'name=name;serial=serial;model=model.name;' COMMENT '第二标签字段映射',
  `label2_empty_row_count` int(0) UNSIGNED NOT NULL DEFAULT 0 COMMENT '第二标签末尾空行数',
  `google_login` tinyint(1) NULL DEFAULT 0 COMMENT '是否启用Google登录',
  `google_client_id` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'Google客户端ID',
  `google_client_secret` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'Google客户端密钥',
  `profile_edit` tinyint(1) NULL DEFAULT 1 COMMENT '是否允许用户编辑个人资料',
  `require_checkinout_notes` tinyint(1) NULL DEFAULT 0 COMMENT '借出/归还是否必填备注',
  `shortcuts_enabled` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否启用快捷键',
  `due_checkin_days` int(0) NULL DEFAULT NULL COMMENT '逾期归还提醒天数',
  `ldap_invert_active_flag` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否反转LDAP激活标志',
  `manager_view_enabled` tinyint(1) NOT NULL DEFAULT 0 COMMENT '允许经理查看下属资产',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '系统全局设置表';

-- ----------------------------
-- Records of settings
-- ----------------------------
INSERT INTO `settings` VALUES (1, '2025-12-29 00:17:47', '2025-12-29 00:20:13', 1, 20, 'Snipe-IT-test', NULL, NULL, NULL, NULL, NULL, 0, NULL, 1, NULL, NULL, '#FFFFFF', '#296282', '#296282', 'chenghui@lingrui.com', 1, NULL, NULL, NULL, NULL, 'slack', 'CNY', NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, 'samaccountname', 'sn', 'givenname', NULL, 'uid=', 3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, 0, 0, 'zh-CN', 0, 30, 2.62500, 1.00000, 0.21975, 0.21975, 0.50000, 0.50000, 0.07000, 0.05000, 9, 8.50000, 11.00000, 0, 1, 1, 1, 30, 5, 'first_last', NULL, NULL, 'filastname', 0, NULL, '389', 0, 5, 1, NULL, 0, 'Y-m-d', 'g:iA', 1, NULL, 50, 0, NULL, 10, NULL, NULL, 0, NULL, 1, 0, 0, NULL, 'on', NULL, 'image,category,manufacturer,model_number', 0, 0, '', NULL, 1, NULL, 1, 0, NULL, 'on', 0, 0, 'default', NULL, 'default.png', NULL, NULL, NULL, 0, 0, '', 0, 0, NULL, NULL, 0, 0, NULL, NULL, NULL, NULL, '0', NULL, NULL, 'name', 0, 'DefaultLabel', NULL, 0, 'C128', 'QRCODE', NULL, 'hardware_id', 'name=name;serial=serial;model=model.name;', 0, 0, NULL, NULL, 1, 0, 0, NULL, 0, 0);

-- ----------------------------
-- Table structure for status_labels (状态标签表)
-- ----------------------------
DROP TABLE IF EXISTS `status_labels`;
CREATE TABLE `status_labels`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '状态ID',
  `name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '状态名称',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '创建人ID',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `deleted_at` timestamp(0) NULL DEFAULT NULL COMMENT '软删除时间',
  `deployable` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否可部署',
  `pending` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否为待处理',
  `archived` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否已归档',
  `notes` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '备注',
  `color` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '显示颜色',
  `show_in_nav` tinyint(1) NULL DEFAULT 0 COMMENT '是否在导航栏显示',
  `default_label` tinyint(1) NULL DEFAULT 0 COMMENT '是否为默认标签',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '资产状态标签表';

-- ----------------------------
-- Records of status_labels
-- ----------------------------
INSERT INTO `status_labels` VALUES (1, 'Pending', 1, NULL, NULL, NULL, 0, 1, 0, 'These assets are not yet ready to be deployed, usually because of configuration or waiting on parts.', NULL, 0, 0);
INSERT INTO `status_labels` VALUES (2, 'Ready to Deploy', 1, NULL, NULL, NULL, 1, 0, 0, 'These assets are ready to deploy.', NULL, 0, 0);
INSERT INTO `status_labels` VALUES (3, 'Archived', 1, NULL, NULL, NULL, 0, 0, 1, 'These assets are no longer in circulation or viable.', NULL, 0, 0);

-- ----------------------------
-- Table structure for suppliers (供应商表)
-- ----------------------------
DROP TABLE IF EXISTS `suppliers`;
CREATE TABLE `suppliers`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '供应商ID',
  `name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '供应商名称',
  `tag_color` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '标签颜色',
  `address` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '地址1',
  `address2` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '地址2',
  `city` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '城市',
  `state` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '州/省',
  `country` varchar(2) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '国家代码(ISO 3166-1 alpha-2)',
  `phone` varchar(35) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '电话',
  `fax` varchar(35) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '传真',
  `email` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '邮箱',
  `contact` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '联系人',
  `notes` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '备注',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '创建人ID',
  `deleted_at` timestamp(0) NULL DEFAULT NULL COMMENT '软删除时间',
  `zip` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '邮编',
  `url` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '官网URL',
  `image` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'Logo',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '供应商信息表';

-- ----------------------------
-- Table structure for telescope_entries (Laravel Telescope日志)
-- ----------------------------
DROP TABLE IF EXISTS `telescope_entries`;
CREATE TABLE `telescope_entries`  (
  `sequence` bigint(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '序列号',
  `uuid` char(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '唯一ID',
  `batch_id` char(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '批次ID',
  `family_hash` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '家族哈希',
  `should_display_on_index` tinyint(1) NOT NULL DEFAULT 1 COMMENT '是否在索引显示',
  `type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '日志类型(request/query等)',
  `content` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '日志内容(JSON)',
  `created_at` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
  PRIMARY KEY (`sequence`) USING BTREE,
  UNIQUE INDEX `telescope_entries_uuid_unique`(`uuid`) USING BTREE,
  INDEX `telescope_entries_batch_id_index`(`batch_id`) USING BTREE,
  INDEX `telescope_entries_family_hash_index`(`family_hash`) USING BTREE,
  INDEX `telescope_entries_created_at_index`(`created_at`) USING BTREE,
  INDEX `telescope_entries_type_should_display_on_index_index`(`type`, `should_display_on_index`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT 'Laravel Telescope监控日志表';

-- ----------------------------
-- Table structure for telescope_entries_tags (Telescope日志标签)
-- ----------------------------
DROP TABLE IF EXISTS `telescope_entries_tags`;
CREATE TABLE `telescope_entries_tags`  (
  `entry_uuid` char(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '日志UUID',
  `tag` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '标签名',
  PRIMARY KEY (`entry_uuid`, `tag`) USING BTREE,
  INDEX `telescope_entries_tags_tag_index`(`tag`) USING BTREE,
  CONSTRAINT `telescope_entries_tags_entry_uuid_foreign` FOREIGN KEY (`entry_uuid`) REFERENCES `telescope_entries` (`uuid`) ON DELETE CASCADE ON UPDATE RESTRICT
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT 'Telescope日志标签关联表';

-- ----------------------------
-- Table structure for telescope_monitoring (Telescope监控开关)
-- ----------------------------
DROP TABLE IF EXISTS `telescope_monitoring`;
CREATE TABLE `telescope_monitoring`  (
  `tag` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '监控标签',
  PRIMARY KEY (`tag`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT 'Telescope监控启用标签表';

-- ----------------------------
-- Table structure for throttle (登录失败限制表)
-- ----------------------------
DROP TABLE IF EXISTS `throttle`;
CREATE TABLE `throttle`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '记录ID',
  `user_id` int(0) UNSIGNED NULL DEFAULT NULL COMMENT '用户ID',
  `ip_address` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'IP地址',
  `attempts` int(0) NOT NULL DEFAULT 0 COMMENT '失败尝试次数',
  `suspended` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否被暂停',
  `banned` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否被封禁',
  `last_attempt_at` timestamp(0) NULL DEFAULT NULL COMMENT '最后尝试时间',
  `suspended_at` timestamp(0) NULL DEFAULT NULL COMMENT '暂停时间',
  `banned_at` timestamp(0) NULL DEFAULT NULL COMMENT '封禁时间',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `throttle_user_id_index`(`user_id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '登录失败次数限制表';

-- ----------------------------
-- Table structure for users (用户表)
-- ----------------------------
DROP TABLE IF EXISTS `users`;
CREATE TABLE `users`  (
  `id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '用户ID(主键)',
  `email` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '邮箱',
  `password` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '密码(哈希)',
  `permissions` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '权限(JSON)',
  `activated` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否已激活',
  `created_by` int(0) NULL DEFAULT NULL COMMENT '创建人ID',
  `activation_code` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '激活码',
  `activated_at` timestamp(0) NULL DEFAULT NULL COMMENT '激活时间',
  `last_login` timestamp(0) NULL DEFAULT NULL COMMENT '最后登录时间',
  `persist_code` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '持久化登录码',
  `reset_password_code` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '密码重置码',
  `first_name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '',
  `last_name` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '',
  `display_name` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '显示名称',
  `created_at` timestamp(0) NULL DEFAULT NULL COMMENT '创建时间',
  `updated_at` timestamp(0) NULL DEFAULT NULL COMMENT '更新时间',
  `deleted_at` timestamp(0) NULL DEFAULT NULL COMMENT '软删除时间',
  `website` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '个人网站',
  `country` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '国家',
  `gravatar` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'Gravatar头像',
  `location_id` int(0) NULL DEFAULT NULL COMMENT '位置ID',
  `phone` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '电话',
  `mobile` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '手机',
  `jobtitle` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '职位',
  `manager_id` int(0) NULL DEFAULT NULL COMMENT '上级ID',
  `employee_num` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '员工编号',
  `avatar` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '头像',
  `username` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '用户名',
  `notes` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '备注',
  `company_id` int(0) UNSIGNED NULL DEFAULT NULL COMMENT '公司ID',
  `remember_token` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '记住我令牌',
  `ldap_import` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否从LDAP导入',
  `locale` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT 'en-US' COMMENT '语言',
  `show_in_list` tinyint(1) NOT NULL DEFAULT 1 COMMENT '是否在用户列表显示',
  `two_factor_secret` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '双因素认证密钥',
  `two_factor_enrolled` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否已启用双因素认证',
  `two_factor_optin` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否选择双因素认证',
  `department_id` int(0) NULL DEFAULT NULL COMMENT '部门ID',
  `address` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '地址',
  `city` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '城市',
  `state` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '州/省',
  `zip` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '邮编',
  `skin` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'UI主题',
  `nav_link_color` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '#ffffff' COMMENT '导航链接颜色',
  `link_light_color` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '浅色链接颜色',
  `link_dark_color` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '深色链接颜色',
  `remote` tinyint(1) NULL DEFAULT 0 COMMENT '是否为远程用户',
  `start_date` date NULL DEFAULT NULL COMMENT '入职日期',
  `end_date` date NULL DEFAULT NULL COMMENT '离职日期',
  `scim_externalid` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'SCIM外部ID',
  `autoassign_licenses` tinyint(1) NOT NULL DEFAULT 1 COMMENT '是否自动分配许可证',
  `vip` tinyint(1) NULL DEFAULT 0 COMMENT '是否为VIP用户',
  `enable_sounds` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否启用声音',
  `enable_confetti` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否启用彩纸效果',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `users_activation_code_index`(`activation_code`) USING BTREE,
  INDEX `users_reset_password_code_index`(`reset_password_code`) USING BTREE,
  INDEX `users_company_id_index`(`company_id`) USING BTREE,
  INDEX `users_username_deleted_at_index`(`username`, `deleted_at`) USING BTREE,
  INDEX `users_manager_id_deleted_at_index`(`manager_id`, `deleted_at`) USING BTREE,
  INDEX `users_deleted_at_location_id_index`(`deleted_at`, `location_id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '用户信息表';

-- ----------------------------
-- Records of users
-- ----------------------------
INSERT INTO `users` VALUES (1, 'chenghui@lingrui.com', '$2y$10$rG0n5/t0MhTYy8skxvOBCuqCz8fykKYvhgKECso86Is7RvwOS010O', '{\"superuser\":1}', 1, NULL, NULL, NULL, '2025-12-29 00:30:16', NULL, NULL, '', '', NULL, '2025-12-29 00:17:47', '2025-12-29 00:30:16', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'admin', NULL, NULL, '1Otuo0ijhk0zMc1WzoDyEWCf3FPTrw3O3U6Ry7JtbJOBnqnQ2b5VorN9WJwv', 0, 'en-US', 1, NULL, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL, '#ffffff', NULL, NULL, 0, NULL, NULL, NULL, 1, 0, 0, 0);

-- ----------------------------
-- Table structure for users_groups (用户-组关联表)
-- ----------------------------
DROP TABLE IF EXISTS `users_groups`;
CREATE TABLE `users_groups`  (
  `user_id` int(0) UNSIGNED NOT NULL COMMENT '用户ID',
  `group_id` int(0) UNSIGNED NOT NULL COMMENT '组ID',
  `created_by` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT '创建人ID',
  PRIMARY KEY (`user_id`, `group_id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic COMMENT '用户与权限组关联表';

SET FOREIGN_KEY_CHECKS = 1;
View Code

 

posted @ 2025-12-29 13:47  一贴灵  阅读(2)  评论(0)    收藏  举报
学以致用,效率第一