Quellcode durchsuchen

ci: 更新数据库表结构和模型

- 修改了多个模型文件中的字段注释和填充字段
- 更新了数据库表结构,包括添加新表和调整现有表的索引
- 优化了部分代码格式和注释
notfff vor 7 Monaten
Ursprung
Commit
8dcddf3c1c

+ 1 - 1
app/Module/Farm/Models/FarmHarvestLog.php

@@ -7,7 +7,7 @@ use Illuminate\Database\Eloquent\Relations\HasMany;
 
 /**
  * 收获记录模型
- * field start
+ * field start 
  * @property  int  $id  主键ID
  * @property  int  $user_id  用户ID
  * @property  int  $land_id  土地ID

+ 3 - 3
app/Module/Mex/Databases/GenerateSql/mex_orders.sql

@@ -8,7 +8,7 @@ CREATE TABLE `kku_mex_orders` (
   `id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '订单ID,主键',
   `user_id` bigint NOT NULL COMMENT '用户ID',
   `item_id` int NOT NULL COMMENT '商品ID,关联物品表',
-  `currency_type` int NOT NULL DEFAULT 2 COMMENT '币种类型,关联FUND_CURRENCY_TYPE枚举,默认2为钻石',
+  `currency_type` int NOT NULL DEFAULT '2' COMMENT '币种类型,关联FUND_CURRENCY_TYPE枚举,默认2为钻石',
   `order_type` enum('BUY','SELL') COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '订单类型:BUY买入,SELL卖出',
   `quantity` int NOT NULL COMMENT '订单数量',
   `price` decimal(15,5) NOT NULL COMMENT '订单价格,支持5位小数',
@@ -24,9 +24,9 @@ CREATE TABLE `kku_mex_orders` (
   PRIMARY KEY (`id`) USING BTREE,
   KEY `idx_user_id` (`user_id`) USING BTREE,
   KEY `idx_item_id` (`item_id`) USING BTREE,
-  KEY `idx_currency_type` (`currency_type`) USING BTREE COMMENT '币种类型索引',
   KEY `idx_order_type` (`order_type`) USING BTREE,
   KEY `idx_status` (`status`) USING BTREE,
   KEY `idx_created_at` (`created_at`) USING BTREE,
-  KEY `idx_status_price_created` (`status`,`price`,`created_at`) USING BTREE COMMENT '撮合排序复合索引'
+  KEY `idx_status_price_created` (`status`,`price`,`created_at`) USING BTREE COMMENT '撮合排序复合索引',
+  KEY `idx_currency_type` (`currency_type`) USING BTREE COMMENT '币种类型索引'
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='农贸市场订单表';

+ 3 - 3
app/Module/Mex/Databases/GenerateSql/mex_transactions.sql

@@ -11,7 +11,7 @@ CREATE TABLE `kku_mex_transactions` (
   `buyer_id` bigint NOT NULL COMMENT '买方用户ID',
   `seller_id` bigint NOT NULL COMMENT '卖方用户ID',
   `item_id` int NOT NULL COMMENT '商品ID,关联物品表',
-  `currency_type` int NOT NULL DEFAULT 2 COMMENT '币种类型,关联FUND_CURRENCY_TYPE枚举,默认2为钻石',
+  `currency_type` int NOT NULL DEFAULT '2' COMMENT '币种类型,关联FUND_CURRENCY_TYPE枚举,默认2为钻石',
   `quantity` int NOT NULL COMMENT '成交数量',
   `price` decimal(15,5) NOT NULL COMMENT '成交价格',
   `total_amount` decimal(20,5) NOT NULL COMMENT '成交总金额',
@@ -25,8 +25,8 @@ CREATE TABLE `kku_mex_transactions` (
   KEY `idx_buyer_id` (`buyer_id`) USING BTREE,
   KEY `idx_seller_id` (`seller_id`) USING BTREE,
   KEY `idx_item_id` (`item_id`) USING BTREE,
-  KEY `idx_currency_type` (`currency_type`) USING BTREE COMMENT '币种类型索引',
   KEY `idx_transaction_type` (`transaction_type`) USING BTREE,
   KEY `idx_created_at` (`created_at`) USING BTREE,
-  KEY `idx_is_admin_operation` (`is_admin_operation`) USING BTREE
+  KEY `idx_is_admin_operation` (`is_admin_operation`) USING BTREE,
+  KEY `idx_currency_type` (`currency_type`) USING BTREE COMMENT '币种类型索引'
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='农贸市场成交记录表';

+ 2 - 2
app/Module/Mex/Models/MexOrder.php

@@ -9,7 +9,7 @@ use UCore\ModelCore;
 
 /**
  * 农贸市场订单模型
- * field start
+ * field start 
  * @property  int  $id  订单ID,主键
  * @property  int  $user_id  用户ID
  * @property  int  $item_id  商品ID,关联物品表
@@ -32,7 +32,7 @@ class MexOrder extends ModelCore
 {
     protected $table = 'mex_orders';
 
-    // attrlist start
+    // attrlist start 
     protected $fillable = [
         'id',
         'user_id',

+ 2 - 2
app/Module/Mex/Models/MexTransaction.php

@@ -9,7 +9,7 @@ use UCore\ModelCore;
 /**
  * 农贸市场成交记录模型
  *
- * field start
+ * field start 
  * @property  int  $id  成交记录ID,主键
  * @property  int  $buy_order_id  买单ID,关联mex_orders表
  * @property  int  $sell_order_id  卖单ID,关联mex_orders表
@@ -30,7 +30,7 @@ class MexTransaction extends ModelCore
 {
     protected $table = 'mex_transactions';
 
-    // attrlist start
+    // attrlist start 
     protected $fillable = [
         'id',
         'buy_order_id',

+ 6 - 0
app/Module/OpenAPI/Databases/GenerateSql/README.md

@@ -0,0 +1,6 @@
+# 自动生成的SQL文件目录
+
+**警告:这是自动生成的目录,请勿手动修改此目录下的任何文件!**
+
+此目录下的SQL文件由系统自动生成,用于记录数据库表结构。
+如需修改表结构,请修改对应的模型文件,然后重新运行生成命令。

+ 38 - 0
app/Module/OpenAPI/Databases/GenerateSql/openapi_apps.sql

@@ -0,0 +1,38 @@
+-- ******************************************************************
+-- 表 kku_openapi_apps 的创建SQL
+-- 对应的Model: App\Module\OpenAPI\Models\OpenApiApp
+-- 警告: 此文件由系统自动生成,禁止修改!
+-- ******************************************************************
+
+CREATE TABLE `kku_openapi_apps` (
+  `id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `app_id` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '应用ID',
+  `app_secret` text COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '应用密钥(加密存储)',
+  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '应用名称',
+  `description` text COLLATE utf8mb4_unicode_ci COMMENT '应用描述',
+  `website` varchar(500) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '应用网站',
+  `logo` varchar(500) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '应用Logo',
+  `callback_url` varchar(500) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '回调地址',
+  `contact_email` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '联系邮箱',
+  `status` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'PENDING' COMMENT '应用状态',
+  `auth_type` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'API_KEY' COMMENT '认证类型',
+  `scopes` json DEFAULT NULL COMMENT '权限范围',
+  `rate_limits` json DEFAULT NULL COMMENT '限流配置',
+  `ip_whitelist` json DEFAULT NULL COMMENT 'IP白名单',
+  `user_id` int NOT NULL DEFAULT '0' COMMENT '创建用户ID',
+  `user_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '创建用户名称',
+  `approved_at` timestamp NULL DEFAULT NULL COMMENT '审核时间',
+  `approved_by` int DEFAULT NULL COMMENT '审核人ID',
+  `approved_note` text COLLATE utf8mb4_unicode_ci COMMENT '审核备注',
+  `expires_at` timestamp NULL DEFAULT NULL COMMENT '过期时间',
+  `last_used_at` timestamp NULL DEFAULT NULL COMMENT '最后使用时间',
+  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+  `updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+  PRIMARY KEY (`id`),
+  UNIQUE KEY `uk_app_id` (`app_id`),
+  KEY `idx_user_id` (`user_id`),
+  KEY `idx_status` (`status`),
+  KEY `idx_auth_type` (`auth_type`),
+  KEY `idx_expires_at` (`expires_at`),
+  KEY `idx_created_at` (`created_at`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='开放API应用表';

+ 26 - 0
app/Module/OpenAPI/Databases/GenerateSql/openapi_keys.sql

@@ -0,0 +1,26 @@
+-- ******************************************************************
+-- 表 kku_openapi_keys 的创建SQL
+-- 对应的Model: App\Module\OpenAPI\Models\OpenApiKey
+-- 警告: 此文件由系统自动生成,禁止修改!
+-- ******************************************************************
+
+CREATE TABLE `kku_openapi_keys` (
+  `id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `app_id` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '应用ID',
+  `key_id` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '密钥ID',
+  `key_secret` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '密钥Secret(加密存储)',
+  `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '密钥名称',
+  `description` text COLLATE utf8mb4_unicode_ci COMMENT '密钥描述',
+  `scopes` json DEFAULT NULL COMMENT '权限范围',
+  `status` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'ACTIVE' COMMENT '密钥状态',
+  `last_used_at` timestamp NULL DEFAULT NULL COMMENT '最后使用时间',
+  `expires_at` timestamp NULL DEFAULT NULL COMMENT '过期时间',
+  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+  `updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+  PRIMARY KEY (`id`),
+  UNIQUE KEY `uk_key_id` (`key_id`),
+  KEY `idx_app_id` (`app_id`),
+  KEY `idx_status` (`status`),
+  KEY `idx_expires_at` (`expires_at`),
+  KEY `idx_last_used_at` (`last_used_at`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='API密钥表';

+ 32 - 0
app/Module/OpenAPI/Databases/GenerateSql/openapi_logs.sql

@@ -0,0 +1,32 @@
+-- ******************************************************************
+-- 表 kku_openapi_logs 的创建SQL
+-- 对应的Model: App\Module\OpenAPI\Models\OpenApiLog
+-- 警告: 此文件由系统自动生成,禁止修改!
+-- ******************************************************************
+
+CREATE TABLE `kku_openapi_logs` (
+  `id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+  `app_id` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '应用ID',
+  `request_id` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '请求ID',
+  `method` varchar(10) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '请求方法',
+  `uri` varchar(500) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '请求路径',
+  `headers` json DEFAULT NULL COMMENT '请求头',
+  `query_params` json DEFAULT NULL COMMENT '查询参数',
+  `body` text COLLATE utf8mb4_unicode_ci COMMENT '请求体',
+  `response_status` int NOT NULL DEFAULT '0' COMMENT '响应状态码',
+  `response_headers` json DEFAULT NULL COMMENT '响应头',
+  `response_body` text COLLATE utf8mb4_unicode_ci COMMENT '响应体',
+  `response_time` int NOT NULL DEFAULT '0' COMMENT '响应时间(毫秒)',
+  `ip_address` varchar(45) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT 'IP地址',
+  `user_agent` text COLLATE utf8mb4_unicode_ci COMMENT 'User Agent',
+  `error_message` text COLLATE utf8mb4_unicode_ci COMMENT '错误信息',
+  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+  PRIMARY KEY (`id`),
+  KEY `idx_app_id` (`app_id`),
+  KEY `idx_request_id` (`request_id`),
+  KEY `idx_method` (`method`),
+  KEY `idx_response_status` (`response_status`),
+  KEY `idx_response_time` (`response_time`),
+  KEY `idx_ip_address` (`ip_address`),
+  KEY `idx_created_at` (`created_at`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='API调用日志表';

+ 2 - 13
app/Module/OpenAPI/Models/OpenApiRateLimit.php

@@ -22,19 +22,8 @@ use UCore\ModelCore;
  */
 class OpenApiRateLimit extends ModelCore
 {
-    // field start
-    protected $fillable = [
-        'app_id',
-        'ip_address',
-        'endpoint',
-        'limit_type',
-        'window_start',
-        'request_count',
-        'is_blocked',
-        'user_agent',
-        'headers',
-    ];
-    // field end
+    // field start 
+ * field end
 
     /**
      * 数据类型转换

+ 3 - 3
app/Module/OpenAPI/Models/OpenApiScope.php

@@ -7,7 +7,7 @@ use App\Module\OpenAPI\Enums\SCOPE_TYPE;
 
 /**
  * OpenAPI权限范围模型
- * 
+ *
  * @property int $id
  * @property string $app_id 应用ID
  * @property string $scope 权限范围
@@ -133,7 +133,7 @@ class OpenApiScope extends ModelCore
             'TRADE' => '交易管理',
             'ADMIN' => '系统管理',
             'SPECIAL' => '特殊权限',
-            default => $this->category,
+            'default' => $this->category
         ];
     }
 
@@ -237,7 +237,7 @@ class OpenApiScope extends ModelCore
      */
     public function extend(int $days): void
     {
-        $newExpiresAt = $this->expires_at 
+        $newExpiresAt = $this->expires_at
             ? $this->expires_at->addDays($days)
             : now()->addDays($days);