/*
 Navicat Premium Data Transfer

 Source Server         : [demo]digital_operation
 Source Server Type    : MySQL
 Source Server Version : 80032
 Source Host           : 121.204.252.205:3306
 Source Schema         : apimngr

 Target Server Type    : MySQL
 Target Server Version : 80032
 File Encoding         : 65001

 Date: 12/01/2024 21:05:22
*/

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

drop database if exists apimngr;
create database apimngr;
use apimngr;

-- ----------------------------
-- Table structure for t_api
-- ----------------------------
DROP TABLE IF EXISTS `t_api`;
CREATE TABLE `t_api` (
  `api_id` int NOT NULL AUTO_INCREMENT COMMENT '编号',
  `api_name` varchar(100) NOT NULL COMMENT '接口名称',
  `url` varchar(200) NOT NULL COMMENT '请求地址',
  `cgi_url` varchar(200) DEFAULT NULL,
  `api_type_id` int DEFAULT NULL,
  `call_limit` varchar(50) DEFAULT NULL COMMENT '调用量限制',
  `qps_limit` varchar(50) DEFAULT NULL COMMENT 'QPS限制',
  `status` int DEFAULT NULL COMMENT '新- 状态  0 未发布  1 已发布    弃用-    0=免费使用 1=付费开通 2=测试使用 3=VIP使用',
  `description` varchar(100) DEFAULT NULL COMMENT '描述',
  `version` varchar(30) DEFAULT NULL,
  `doc_url` varchar(100) DEFAULT NULL,
  `create_by` varchar(20) DEFAULT NULL,
  `create_time` datetime DEFAULT NULL,
  `update_time` datetime DEFAULT NULL,
  `browser_count` int NOT NULL DEFAULT '0',
  `ext_json` longtext CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci,
  `apply_user_id` int DEFAULT NULL COMMENT '申请人id',
  `mobile` varchar(20) DEFAULT NULL COMMENT '联系方式',
  `apply_status` int DEFAULT NULL COMMENT '申请状态：0未审核  1已审核 ',
  `apply_time` datetime DEFAULT NULL COMMENT '申请时间',
  `disagree_reason` varchar(500) DEFAULT NULL,
  `is_apply` int DEFAULT NULL COMMENT '是否是申请新增：0否 1是',
  PRIMARY KEY (`api_id`)
) ENGINE=InnoDB AUTO_INCREMENT=124 DEFAULT CHARSET=utf8mb3 COMMENT='接口表';

-- ----------------------------
-- Table structure for t_api_auth_apply
-- ----------------------------
DROP TABLE IF EXISTS `t_api_auth_apply`;
CREATE TABLE `t_api_auth_apply` (
  `id` int NOT NULL AUTO_INCREMENT,
  `user_id` int DEFAULT NULL COMMENT '用户ID\n',
  `api_id` int DEFAULT NULL COMMENT '接口id',
  `apply_use` varchar(500) NOT NULL COMMENT '申请用途',
  `status` int DEFAULT NULL COMMENT '审核状态:0 未审核、1 已审核',
  `apply_time` datetime DEFAULT NULL COMMENT '申请时间',
  `examine_user_id` int DEFAULT NULL COMMENT '审核用户ID\n',
  `examine_content` int DEFAULT NULL COMMENT '审核内容:0 不同意、0 已同意',
  `disagree_reason` varchar(500) DEFAULT NULL COMMENT '不通过原因',
  `examine_time` datetime DEFAULT NULL COMMENT '审核时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='接口申请权限';

-- ----------------------------
-- Table structure for t_api_collect
-- ----------------------------
DROP TABLE IF EXISTS `t_api_collect`;
CREATE TABLE `t_api_collect` (
  `id` int NOT NULL AUTO_INCREMENT,
  `user_id` int DEFAULT NULL COMMENT '用户ID\n',
  `api_id` int DEFAULT NULL COMMENT '接口id',
  `is_collect` int DEFAULT NULL COMMENT '是否收藏:1 是、0 否',
  `create_time` datetime DEFAULT NULL,
  `modify_time` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=15 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='接口收藏';

-- ----------------------------
-- Table structure for t_api_log
-- ----------------------------
DROP TABLE IF EXISTS `t_api_log`;
CREATE TABLE `t_api_log` (
  `apilog_id` int NOT NULL AUTO_INCREMENT COMMENT '主键id',
  `app_id` int DEFAULT NULL COMMENT '应用id',
  `api_id` int DEFAULT NULL COMMENT '接口id',
  `call_result` int DEFAULT NULL COMMENT '调用结果 1=成功 0=失败',
  `invoke_time` varchar(50) NOT NULL,
  `response_time` varchar(100) DEFAULT NULL COMMENT '接口返回时间',
  `img_url` varchar(500) DEFAULT NULL COMMENT '图片路径',
  `err_code` varchar(30) DEFAULT NULL COMMENT '错误码',
  `invoke_date` datetime DEFAULT NULL COMMENT '调用时间',
  `user_id` int DEFAULT NULL COMMENT '用户id',
  `user_name` varchar(100) DEFAULT NULL COMMENT '用户姓名',
  `params` varchar(2000) DEFAULT NULL,
  `province` varchar(50) DEFAULT NULL COMMENT '省份',
  PRIMARY KEY (`apilog_id`,`invoke_time`)
) ENGINE=InnoDB AUTO_INCREMENT=2837 DEFAULT CHARSET=utf8mb3 COMMENT='接口日志表';

-- ----------------------------
-- Table structure for t_api_log_day
-- ----------------------------
DROP TABLE IF EXISTS `t_api_log_day`;
CREATE TABLE `t_api_log_day` (
  `user_id` int NOT NULL COMMENT '开发者id',
  `user_name` varchar(100) DEFAULT NULL COMMENT '开发者名称',
  `app_id` int NOT NULL COMMENT '应用id',
  `app_name` varchar(100) DEFAULT NULL COMMENT '应用名称',
  `api_id` int NOT NULL COMMENT '接口id',
  `api_name` varchar(255) DEFAULT NULL COMMENT '应用名称',
  `total` int DEFAULT NULL COMMENT '调用成功次数',
  `failed` int DEFAULT NULL COMMENT '调用失败次数',
  `qps` int DEFAULT NULL COMMENT 'qps峰值',
  `day` varchar(50) DEFAULT NULL COMMENT '日期'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='接口日志--日表';

-- ----------------------------
-- Table structure for t_api_log_hour
-- ----------------------------
DROP TABLE IF EXISTS `t_api_log_hour`;
CREATE TABLE `t_api_log_hour` (
  `app_id` int NOT NULL COMMENT '应用id',
  `api_id` int NOT NULL COMMENT '接口id',
  `success` int DEFAULT NULL COMMENT '成功次数',
  `failed` int DEFAULT NULL COMMENT '失败次数',
  `qps` int DEFAULT NULL COMMENT 'qps峰值',
  `day` varchar(30) DEFAULT NULL COMMENT '日期 yyyy-mm-dd hh:mm'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='接口日志--时表';

-- ----------------------------
-- Table structure for t_api_log_test
-- ----------------------------
DROP TABLE IF EXISTS `t_api_log_test`;
CREATE TABLE `t_api_log_test` (
  `apilog_id` int NOT NULL AUTO_INCREMENT,
  `app_id` int DEFAULT NULL,
  `api_id` int DEFAULT NULL,
  `call_result` int DEFAULT NULL,
  `invoke_time` bigint NOT NULL,
  `response_time` varchar(100) DEFAULT NULL,
  `img_url` varchar(500) DEFAULT NULL,
  `err_code` varchar(30) DEFAULT NULL,
  `invoke_date` datetime DEFAULT NULL,
  `user_id` int DEFAULT NULL,
  `user_name` varchar(100) DEFAULT NULL,
  `params` varchar(2000) DEFAULT NULL,
  PRIMARY KEY (`apilog_id`),
  KEY `app_id` (`app_id`) USING BTREE,
  KEY `user_id` (`user_id`) USING BTREE,
  KEY `call_result_index` (`call_result`),
  KEY `api_id_index` (`api_id`),
  KEY `err_code_index` (`err_code`),
  KEY `ind_invoke_time` (`invoke_time`),
  KEY `ind2` (`call_result`,`invoke_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3;

-- ----------------------------
-- Table structure for t_api_need_apply
-- ----------------------------
DROP TABLE IF EXISTS `t_api_need_apply`;
CREATE TABLE `t_api_need_apply` (
  `id` int NOT NULL AUTO_INCREMENT,
  `user_id` int DEFAULT NULL COMMENT '用户ID\n',
  `api_id` int DEFAULT NULL COMMENT '接口id',
  `mobile` varchar(20) NOT NULL COMMENT '联系方式',
  `field_json` varchar(1000) NOT NULL COMMENT '联系方式',
  `description` varchar(500) NOT NULL COMMENT '描述',
  `status` int DEFAULT NULL COMMENT '审核状态:审核状态:0 未审核、1 已审核待开发 2已审核已完成 3审核不通过',
  `apply_time` datetime DEFAULT NULL COMMENT '申请时间',
  `examine_user_id` int DEFAULT NULL COMMENT '审核用户ID\n',
  `disagree_reason` varchar(500) DEFAULT NULL COMMENT '不通过原因',
  `examine_time` datetime DEFAULT NULL COMMENT '审核时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='接口申请开发';

-- ----------------------------
-- Table structure for t_api_type
-- ----------------------------
DROP TABLE IF EXISTS `t_api_type`;
CREATE TABLE `t_api_type` (
  `apitype_id` int NOT NULL AUTO_INCREMENT COMMENT '编号',
  `type_name` varchar(100) NOT NULL COMMENT '类型名称',
  `description` varchar(100) DEFAULT NULL COMMENT '备注',
  PRIMARY KEY (`apitype_id`)
) ENGINE=InnoDB AUTO_INCREMENT=29 DEFAULT CHARSET=utf8mb3 COMMENT='接口类型表';

-- ----------------------------
-- Table structure for t_api_version
-- ----------------------------
DROP TABLE IF EXISTS `t_api_version`;
CREATE TABLE `t_api_version` (
  `id` int NOT NULL AUTO_INCREMENT,
  `api_id` int NOT NULL,
  `old_version` varchar(50) DEFAULT NULL,
  `create_time` datetime DEFAULT NULL,
  `create_by` varchar(100) DEFAULT NULL,
  `remark` varchar(500) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=42 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

-- ----------------------------
-- Table structure for t_app
-- ----------------------------
DROP TABLE IF EXISTS `t_app`;
CREATE TABLE `t_app` (
  `app_id` int NOT NULL AUTO_INCREMENT COMMENT '编号',
  `name` varchar(50) NOT NULL COMMENT '应用名称',
  `user_id` int NOT NULL COMMENT '关联用户id',
  `app_type_id` int NOT NULL COMMENT '应用类型id',
  `api_key` varchar(100) NOT NULL COMMENT 'API Key',
  `secret_key` varchar(100) NOT NULL COMMENT 'Secret Key',
  `create_time` varchar(50) DEFAULT NULL COMMENT '创建时间',
  `update_time` varchar(50) DEFAULT NULL COMMENT '更新时间',
  `status` int DEFAULT NULL COMMENT '应用状态（1=正常 0=停用 2=待审核）',
  `description` varchar(100) DEFAULT NULL COMMENT '应用描述',
  `expire_date` varchar(50) DEFAULT NULL COMMENT '到期日期',
  PRIMARY KEY (`app_id`)
) ENGINE=InnoDB AUTO_INCREMENT=310 DEFAULT CHARSET=utf8mb3 COMMENT='应用表';

-- ----------------------------
-- Table structure for t_app_api
-- ----------------------------
DROP TABLE IF EXISTS `t_app_api`;
CREATE TABLE `t_app_api` (
  `appapi_id` int NOT NULL AUTO_INCREMENT COMMENT '主键id',
  `app_id` int NOT NULL COMMENT '应用id',
  `api_id` int NOT NULL COMMENT '接口id',
  `enable` int NOT NULL COMMENT '启用/停用  0 启用 1 停用',
  `status` int NOT NULL COMMENT '状态 0=待审核 1=正常使用 2=待支付 3=停用',
  `call_limit` varchar(50) DEFAULT NULL COMMENT '调用量限制',
  `qps_limit` varchar(50) DEFAULT NULL COMMENT 'QPS限制',
  `qps_apply_id` varchar(50) DEFAULT NULL COMMENT '更高QPS申请id',
  `used` varchar(50) DEFAULT NULL,
  PRIMARY KEY (`appapi_id`)
) ENGINE=InnoDB AUTO_INCREMENT=2797 DEFAULT CHARSET=utf8mb3 COMMENT='接口权限表';

-- ----------------------------
-- Table structure for t_app_type
-- ----------------------------
DROP TABLE IF EXISTS `t_app_type`;
CREATE TABLE `t_app_type` (
  `apptype_id` int NOT NULL AUTO_INCREMENT COMMENT '主键id',
  `type_name` varchar(100) NOT NULL COMMENT '应用类型名称',
  `description` varchar(100) DEFAULT NULL COMMENT '备注',
  PRIMARY KEY (`apptype_id`)
) ENGINE=InnoDB AUTO_INCREMENT=20 DEFAULT CHARSET=utf8mb3 COMMENT='应用类型表';

-- ----------------------------
-- Table structure for t_auth
-- ----------------------------
DROP TABLE IF EXISTS `t_auth`;
CREATE TABLE `t_auth` (
  `auth_id` int NOT NULL AUTO_INCREMENT COMMENT '权限id',
  `role_id` int NOT NULL COMMENT '角色id',
  `api_id` int NOT NULL COMMENT '接口id',
  `accredit_status` int NOT NULL COMMENT '授权状态 0 未授权 1 已授权 2 待授权',
  `apply_time` datetime DEFAULT NULL COMMENT '申请授权时间',
  `user_id` varchar(255) DEFAULT NULL COMMENT '申请人id',
  PRIMARY KEY (`auth_id`)
) ENGINE=InnoDB AUTO_INCREMENT=1134 DEFAULT CHARSET=utf8mb3;

-- ----------------------------
-- Table structure for t_code_info
-- ----------------------------
DROP TABLE IF EXISTS `t_code_info`;
CREATE TABLE `t_code_info` (
  `err_code` varchar(30) NOT NULL COMMENT '错误码',
  `err_detail` varchar(200) DEFAULT NULL COMMENT '错误详情',
  `err_description` varchar(200) DEFAULT NULL COMMENT '错误描述',
  `feedback` varchar(200) DEFAULT NULL COMMENT '处理意见',
  KEY `err_code_index` (`err_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3;

-- ----------------------------
-- Table structure for t_qps_apply
-- ----------------------------
DROP TABLE IF EXISTS `t_qps_apply`;
CREATE TABLE `t_qps_apply` (
  `qps_id` int NOT NULL AUTO_INCREMENT COMMENT '编号',
  `max_qps` varchar(50) NOT NULL COMMENT '预估最高QPS',
  `call_times` varchar(50) DEFAULT NULL COMMENT '预估每日调用量',
  `areas` varchar(200) DEFAULT NULL COMMENT '接入地域比例',
  `company_name` varchar(100) DEFAULT NULL COMMENT '公司名称',
  `phone` varchar(30) DEFAULT NULL COMMENT '联系电话',
  `email` varchar(100) DEFAULT NULL COMMENT '联系邮箱',
  `description` varchar(2000) DEFAULT NULL COMMENT '应用介绍',
  `apply_reason` varchar(1000) DEFAULT NULL COMMENT '提升配额原因',
  `apply_status` tinyint DEFAULT NULL COMMENT '申请状态 0=默认配额 1=审核通过 2=审核中 3=审核拒绝',
  PRIMARY KEY (`qps_id`)
) ENGINE=InnoDB AUTO_INCREMENT=81 DEFAULT CHARSET=utf8mb3 COMMENT='更高QPS申请';

-- ----------------------------
-- Table structure for t_role
-- ----------------------------
DROP TABLE IF EXISTS `t_role`;
CREATE TABLE `t_role` (
  `role_id` int NOT NULL AUTO_INCREMENT,
  `role_name` varchar(50) NOT NULL COMMENT '角色名字',
  `role_type` int NOT NULL COMMENT '角色类型',
  `description` varchar(100) DEFAULT NULL COMMENT '备注',
  PRIMARY KEY (`role_id`)
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8mb3 COMMENT='角色表';

INSERT INTO `apimngr`.`t_role`(`role_id`, `role_name`, `role_type`, `description`) VALUES (1, '管理员', 1, NULL);
INSERT INTO `apimngr`.`t_role`(`role_id`, `role_name`, `role_type`, `description`) VALUES (2, '开发者', 2, '123');
INSERT INTO `apimngr`.`t_role`(`role_id`, `role_name`, `role_type`, `description`) VALUES (5, '测试用户', 2, '开放一些测试的未发布的接口');
INSERT INTO `apimngr`.`t_role`(`role_id`, `role_name`, `role_type`, `description`) VALUES (6, '应用开发者', 2, '应用');
INSERT INTO `apimngr`.`t_role`(`role_id`, `role_name`, `role_type`, `description`) VALUES (7, '测试角色', 2, '测试角色测试角色测试角色测试角色测试角色测试角色测试角色测试角色测试角色测试角色测试角色测试角色测试角色测试角色测试角色测试角色测试角色测试角色测试角色测试角色测试角色测试角色测试角色测试角色测试角色');
-- ----------------------------
-- Table structure for t_sms_log
-- ----------------------------
DROP TABLE IF EXISTS `t_sms_log`;
CREATE TABLE `t_sms_log` (
  `sms_id` int NOT NULL AUTO_INCREMENT,
  `phone` varchar(30) NOT NULL COMMENT '电话号码',
  `code` varchar(20) NOT NULL COMMENT '验证码',
  `create_time` varchar(30) NOT NULL COMMENT '创建时间',
  `status` tinyint NOT NULL COMMENT '状态',
  PRIMARY KEY (`sms_id`)
) ENGINE=InnoDB AUTO_INCREMENT=1045 DEFAULT CHARSET=utf8mb3;

-- ----------------------------
-- Table structure for t_system_log
-- ----------------------------
DROP TABLE IF EXISTS `t_system_log`;
CREATE TABLE `t_system_log` (
  `id` int NOT NULL AUTO_INCREMENT,
  `log_account` varchar(100) NOT NULL COMMENT '日志账号',
  `log_content` varchar(200) NOT NULL COMMENT '日志内容',
  `log_ip` varchar(100) DEFAULT NULL COMMENT 'ip地址',
  `log_time` datetime DEFAULT NULL COMMENT '日期时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=271838 DEFAULT CHARSET=utf8mb3 COMMENT='系统日志表';

-- ----------------------------
-- Table structure for t_user
-- ----------------------------
DROP TABLE IF EXISTS `t_user`;
CREATE TABLE `t_user` (
  `user_id` int NOT NULL AUTO_INCREMENT,
  `user_name` varchar(100) NOT NULL COMMENT '姓名',
  `account` varchar(50) NOT NULL COMMENT '账号',
  `phone` varchar(30) NOT NULL COMMENT '电话',
  `password_hash` varchar(100) NOT NULL COMMENT '密码',
  `email` varchar(50) NOT NULL COMMENT '邮箱',
  `status` int DEFAULT NULL COMMENT '用户状态（1=免费用户 0=异常用户 2=付费用户 3=VIP用户 4=测试用户)',
  `role_id` int NOT NULL COMMENT '角色',
  `description` varchar(100) DEFAULT NULL COMMENT '备注',
  `company_name` varchar(100) DEFAULT NULL,
  `company_info` varchar(1000) DEFAULT NULL,
  PRIMARY KEY (`user_id`)
) ENGINE=InnoDB AUTO_INCREMENT=71 DEFAULT CHARSET=utf8mb3 COMMENT='用户表';

INSERT INTO `t_user`(`user_id`, `user_name`, `account`, `phone`, `password_hash`, `email`, `status`, `role_id`, `description`, `company_name`, `company_info`) VALUES (1, '平台管理员', 'admin', '13382890928', 'a3f4c511243abf2522465a603ab46f53', '536818@qq.com', 1, 1, NULL, NULL, NULL);
INSERT INTO `t_user`(`user_id`, `user_name`, `account`, `phone`, `password_hash`, `email`, `status`, `role_id`, `description`, `company_name`, `company_info`) VALUES (2, '测试开发者', 'test', '13771111749', 'e10adc3949ba59abbe56e057f20f883e', '88933120@qq.com', 1, 2, '12', 'null', 'null');

SET FOREIGN_KEY_CHECKS = 1;
