初始化本地仓库

This commit is contained in:
2026-08-31 11:33:59 +08:00
commit 663f74b633
2390 changed files with 402918 additions and 0 deletions
@@ -0,0 +1,55 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\enum\system;
use core\interface\IEnum;
/**
* 业务终端枚举
*/
enum BusinessPlatform: string implements IEnum
{
case ADMIN = 'admin'; // 管理后台
case WEB = 'web'; // Web网站
case API = 'api'; // API服务
case MOBILE = 'mobile'; // 移动端
/**
* 获取终端描述
*/
public function label(): string
{
return match ($this) {
self::ADMIN => '管理后台',
self::WEB => 'Web网站',
self::API => 'API服务',
self::MOBILE => '移动端',
};
}
/**
* 获取颜色标识
*
* @return string
*/
public function color(): string
{
return match ($this) {
self::ADMIN => 'blue',
self::WEB => 'pink',
self::API => 'cyan',
self::MOBILE => 'purple',
};
}
}
+42
View File
@@ -0,0 +1,42 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\enum\system;
enum CloudStorage: string
{
case LOCAL = 'local';
case OSS = 'oss';
case COS = 'cos';
case QINIU = 'qiniu';
case S3 = 's3';
/**
* 获取人类可读标签
*
* @param bool $english 是否返回英文标签
*
* @return string
*/
public function label(bool $english = false): string
{
return match ($this) {
self::LOCAL => '私有云(本地)',
self::OSS => '阿里云',
self::COS => '腾讯云',
self::QINIU => '七牛云',
self::S3 => '亚马逊(S3)',
};
}
}
@@ -0,0 +1,54 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: https://madong.tech
*/
namespace app\enum\system;
enum DataPermission: int
{
// 基础权限类型
case ALL = 1;
case CUSTOM = 2;
case CURRENT_DEPT = 3;
case CURRENT_DEPT_WITH_CHILDREN = 4;
case SELF = 5;
case HYBRID = 6;
/**
*
* 获取人类可读的标签
*/
public function label(): string
{
return match ($this) {
self::ALL => '全部数据权限',
self::CUSTOM => '自定义数据权限',
self::CURRENT_DEPT => '本部门数据权限',
self::CURRENT_DEPT_WITH_CHILDREN => '本部门及以下数据权限',
self::SELF => '本人数据权限',
self::HYBRID => '部门及以下或本人数据权限'
};
}
// 颜色映射(兼容Ant Design色系)
public function color(): string
{
return match ($this) {
self::ALL => 'green',
self::CUSTOM => 'default',
self::CURRENT_DEPT => 'orange',
self::CURRENT_DEPT_WITH_CHILDREN => 'cyan',
self::SELF => 'error',
self::HYBRID => 'default'
};
}
}
+36
View File
@@ -0,0 +1,36 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\enum\system;
use core\interface\IEnum;
enum DbType: string implements IEnum
{
case MYSQL = 'mysql';
case PGSQL = 'pgsql';
case SQLITE = 'sqlite';
case SQL_SERVER = 'sqlsrv';
case ORACLE = 'oci';
public function label(): string
{
return match($this) {
self::MYSQL => 'mysql',
self::PGSQL => 'pgsql',
self::SQLITE => 'sqlite',
self::SQL_SERVER => 'sqlsrv',
self::ORACLE => 'oci',
};
}
}
+37
View File
@@ -0,0 +1,37 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\enum\system;
use core\interface\IEnum;
/**
* 字典数据类型枚举
*
* @author Mr.April
* @since 1.0
*/
enum DictDataType:int implements IEnum
{
case STRING=1;
case INTEGER=2;
public function label(): string
{
return match($this) {
self::STRING => '字符串',
self::INTEGER => '整型',
};
}
}
+44
View File
@@ -0,0 +1,44 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\enum\system;
use core\interface\IEnum;
enum LockedStatus: int implements IEnum
{
case LOCKED = 1; // 锁定状态
case UNLOCKED = 0; // 未锁定状态
/**
* 获取人类可读的标签
*/
public function label(): string
{
return match ($this) {
self::LOCKED => '是', // 锁定状态显示"是"
self::UNLOCKED => '否', // 未锁定状态显示"否"
};
}
/**
* 获取对应的颜色值
*/
public function color(): string
{
return match ($this) {
self::LOCKED => '#FF5252', // 锁定状态显示红色
self::UNLOCKED => '#4CAF50',// 未锁定状态显示绿色
};
}
}
+36
View File
@@ -0,0 +1,36 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\enum\system;
use core\interface\IEnum;
enum MenuOpenType:int implements IEnum
{
case NONE = 0; // 无
case COMPONENT = 1; // 组件
case INTERNAL_LINK = 2; // 内链
case EXTERNAL_LINK = 3; // 外链
public function label(): string
{
return match($this) {
self::NONE => '无',
self::COMPONENT => '组件',
self::INTERNAL_LINK => '内链',
self::EXTERNAL_LINK => '外链',
};
}
}
+75
View File
@@ -0,0 +1,75 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\enum\system;
/**
* 菜单源类型
*
* @author Mr.April
* @since 1.0
*/
enum MenuSource: string
{
case SYSTEM = 'system';
case AUTO_GENERATE = 'auto_generate';
/**
* 转换为可读类型名称
* @return string
*/
public function label(): string
{
return match($this) {
self::SYSTEM => '系统菜单',
self::AUTO_GENERATE => '自动生成',
};
}
/**
* 获取颜色标识
*
* @return string
*/
public function color(): string
{
return match ($this) {
self::SYSTEM => 'blue',
self::AUTO_GENERATE => 'green',
};
}
/**
* 获取所有枚举值
*
* @return array
*/
public static function values(): array
{
return array_column(self::cases(), 'value');
}
/**
* 获取所有枚举标签
*
* @return array
*/
public static function labels(): array
{
$labels = [];
foreach (self::cases() as $case) {
$labels[$case->value] = $case->label();
}
return $labels;
}
}
+59
View File
@@ -0,0 +1,59 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\enum\system;
/**
* 菜单类型
*
* @author Mr.April
* @since 1.0
*/
enum MenuType: int
{
case CATALOG = 1;
case MENU = 2;
case BUTTON = 3;
case API = 4;
/**
* 转换为可读类型名称
*
* @return string
*/
public function label(): string
{
return match ($this) {
self::CATALOG => '目录',
self::MENU => '菜单',
self::BUTTON => '按钮',
self::API => '接口',
};
}
/**
* 获取颜色标识
*
* @return string
*/
public function color(): string
{
return match ($this) {
self::CATALOG => 'blue',
self::MENU => 'pink',
self::BUTTON => 'cyan',
self::API => 'purple',
};
}
}
+34
View File
@@ -0,0 +1,34 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\enum\system;
use core\interface\IEnum;
/**
* 消息事件-枚举
*
* @author Mr.April
* @since 1.0
*/
enum MessageEvent: string implements IEnum
{
case DEFAULT = 'message';
public function label(): string
{
return match ($this) {
self::DEFAULT => '默认',
};
}
}
@@ -0,0 +1,42 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\enum\system;
enum MessagePriority: int
{
case EMERGENCY = 1; // 紧急 - 最高优先级
case URGENT = 2; // 急迫
case NORMAL = 3; // 普通 - 默认优先级
//定义一个方法以获取状态的描述
public function label(): string
{
return match ($this) {
self::EMERGENCY => '紧急',
self::URGENT => '急迫',
self::NORMAL => '普通'
};
}
//定义一个方法设置标签颜色-如果没有定义自动生成
public function color(): string
{
return match ($this) {
self::EMERGENCY => 'red',
self::URGENT => 'orange',
self::NORMAL => 'blue'
};
}
}
+39
View File
@@ -0,0 +1,39 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\enum\system;
enum MessageStatus: string
{
case UNREAD = 'unread';
case READ = 'read';
//定义一个方法以获取状态的描述
public function label(): string
{
return match ($this) {
self::UNREAD => '未读',
self::READ => '已读',
};
}
// 设置标签颜色
public function color(): string
{
return match ($this) {
self::UNREAD => 'orange',
self::READ => 'green',
};
}
}
+50
View File
@@ -0,0 +1,50 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\enum\system;
enum MessageType: int
{
case SYSTEM_MESSAGE = 1;//系统消息
case ANNOUNCEMENT = 2;//公告
case OPERATION_LOG = 3;//操作日志
case WARNING = 4;//警告
case USER_PRIVATE_MESSAGE = 5;//用户私信
case WORKFLOW_MESSAGE = 6;//工作流消息
// 定义一个方法以获取状态的描述
public function label(): string
{
return match ($this) {
self::SYSTEM_MESSAGE => '系统',
self::ANNOUNCEMENT => '公告',
self::OPERATION_LOG => '操作日志',
self::WARNING => '警告',
self::USER_PRIVATE_MESSAGE => '私信',
self::WORKFLOW_MESSAGE => '工作流',
};
}
// 设置标签颜色
public function color(): string
{
return match ($this) {
self::SYSTEM_MESSAGE => 'blue', // 系统消息
self::ANNOUNCEMENT => 'green', // 公告
self::OPERATION_LOG => 'grey', // 操作日志
self::WARNING => 'orange', // 警告
self::USER_PRIVATE_MESSAGE => 'purple', // 私信
self::WORKFLOW_MESSAGE => 'cyan', // 工作流
};
}
}
+41
View File
@@ -0,0 +1,41 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\enum\system;
enum NoticeType: string
{
case ANNOUNCEMENT = 'announcement';
case NOTICE = 'notice';
//定义一个方法以获取状态的描述
public function label(): string
{
return match ($this) {
self::ANNOUNCEMENT => '公告',
self::NOTICE => '通知',
};
}
// 设置标签颜色
public function color(): string
{
return match ($this) {
self::ANNOUNCEMENT => '#2196F3',
self::NOTICE => '#4CAF50',
};
}
}
@@ -0,0 +1,42 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: https://madong.tech
*/
namespace app\enum\system;
/**
*
* 操作结果枚举
* @author Mr.April
* @since 1.0
*/
enum OperationResult:int
{
case SUCCESS = 0;
case FAILURE = -1;
public function label(): string
{
return match($this) {
self::SUCCESS => '成功',
self::FAILURE => '失败'
};
}
public function color():string{
return match($this) {
self::SUCCESS => 'success',
self::FAILURE => 'error'
};
}
}
+60
View File
@@ -0,0 +1,60 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: https://madong.tech
*/
namespace app\enum\system;
use core\interface\IEnum;
/**
* Casbin 策略前缀
*
* @author Mr.April
* @since 1.0
*/
enum PolicyPrefix: string implements IEnum
{
// 核心权限类型
case ROLE = 'role:'; // 角色权限 例: role:admin
case SUBSCRIPTION = 'sub:'; // 租户订阅套餐权限 例: sub:enterprise
case TENANT_PACKAGE = 'tenant_pkg:'; // 租户专属套餐 例: tenant_pkg:basic
case TIER = 'tier:'; // 套餐等级权限 例: tier:gold
case DEV = 'dev:'; // 开发相关权限 例: dev:crontab
// 特殊权限类型
case DOMAIN = 'domain:'; // 租户域标识 例: domain:1
case USER = 'user:'; // 用户直接权限 例: user:1001
case MENU = "menu:";
case ROUTE = "route:";
case BUTTON = "button:";
/**
* 获取人类可读的标签
*/
public function label(): string
{
return match ($this) {
self::ROLE => '角色权限',
self::SUBSCRIPTION => '租户订阅套餐权限',
self::TENANT_PACKAGE => '租户专属套餐',
self::TIER => '套餐等级权限',
self::DEV => '开发相关权限',
self::DOMAIN => '租户域标识',
self::USER => '用户直接权限',
self::MENU => '菜单资源标识',
self::ROUTE => '路由资源标识',
self::BUTTON => '按钮资源标识'
};
}
}
+41
View File
@@ -0,0 +1,41 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\enum\system;
use core\interface\IEnum;
/**
* HTTP请求方式枚举
*
* @author Mr.April
* @since 1.0
*/
enum RequestMethod: string implements IEnum
{
case GET = 'GET'; // HTTP GET方法
case POST = 'POST'; // HTTP POST方法
case PUT = 'PUT'; // HTTP PUT方法
case DELETE = 'DELETE'; // HTTP DELETE方法
public function label(): string
{
return match ($this) {
self::GET => 'GET',
self::POST => 'POST',
self::PUT => 'PUT',
self::DELETE => 'DELETE',
};
}
}
+38
View File
@@ -0,0 +1,38 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\enum\system;
use core\interface\IEnum;
/**
* 角色类型枚举
*
* @author Mr.April
* @since 1.0
*/
enum RoleType :int implements IEnum
{
// 枚举成员定义
case NORMAL = 1;
case DATA = 2;
public function label(): string
{
return match ($this){
self::NORMAL=>'普通角色',
self::DATA=>'数据角色',
};
}
}
+40
View File
@@ -0,0 +1,40 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\enum\system;
use core\interface\IEnum;
/**
* 性别枚举
* 对应数据字典 sex
*
* @author Mr.April
* @since 1.0
*/
enum Sex: int implements IEnum
{
case MALE = 1; // 男
case FEMALE = 2; // 女
case UNKNOWN = 0; // 未知
public function label(): string
{
return match ($this) {
self::MALE => '男',
self::FEMALE => '女',
self::UNKNOWN => '未知',
};
}
}
@@ -0,0 +1,49 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\enum\system;
/**
* 定时任务枚举类
*
* @author Mr.April
* @since 1.0
*/
enum TaskScheduleCycle: int
{
// 固定时间间隔
case DAILY = 1; // 86400 秒(24小时)
case HOURLY = 2; // 3600 秒
case WEEKLY = 3; // 604800 秒(7天)
case MONTHLY = 4; // 2592000 秒(30天近似值)
case YEARLY = 5; // 31536000 秒(365天近似值)
// 可变时间间隔(需配合数值参数使用)
case N_HOURS = 6;
case N_MINUTES = 7;
case N_SECONDS = 8;
public function label(): string
{
return match($this) {
self::DAILY => '每天',
self::HOURLY => '每小时',
self::WEEKLY => '每周',
self::MONTHLY => '每月',
self::YEARLY => '每年',
self::N_HOURS => 'N小时',
self::N_MINUTES => 'N分钟',
self::N_SECONDS => 'N秒',
};
}
}
@@ -0,0 +1,38 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\enum\system;
enum TaskScheduleMode: int
{
case CYCLE = 1; // 循环模式
case ONCE = 0; // 单次模式
public function label(): string
{
return match ($this) {
self::CYCLE => '循环',
self::ONCE => '单次',
};
}
// 设置标签颜色
public function color(): string
{
return match ($this) {
self::CYCLE => '#2196F3',
self::ONCE => '#4CAF50',
};
}
}
@@ -0,0 +1,35 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\enum\system;
enum TaskScheduleType: int
{
case TASK_URL = 1;
case TASK_EVAL = 2;
case TASK_SHELL = 3;
CASE TASK_SCHEDULE= 4;
public function label(): string
{
return match ($this) {
self::TASK_URL => 'HTTP 请求(GET/POST)',
self::TASK_EVAL => 'PHP 代码执行',
self::TASK_SHELL => '系统命令执行',
self::TASK_SCHEDULE=>'任务调度'
};
}
}
@@ -0,0 +1,50 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\enum\system;
use core\interface\IEnum;
/**
* 租户成员类型
*
* @author Mr.April
* @since 1.0
*/
enum TenantAdminType: int implements IEnum
{
// 枚举成员定义
case ADMIN = 1;
case NORMAL_ADMIN = 2;
/**
* 获取显示标签
*/
public function label(): string
{
return match ($this) {
self::ADMIN => '管理员',
self::NORMAL_ADMIN => '普通成员',
};
}
// 设置标签颜色
public function color(): string
{
return match ($this) {
self::ADMIN => '#2196F3',
self::NORMAL_ADMIN => '#4CAF50',
};
}
}
+37
View File
@@ -0,0 +1,37 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: http://www.madong.tech
*/
namespace app\enum\system;
use core\interface\IEnum;
enum UserAdminType:int implements IEnum
{
// 枚举成员定义
case SUPER_ADMIN = 1;
case NORMAL_ADMIN = 2;
public const CODE = 'sys_user_admin_type';
/**
* 获取显示标签
*/
public function label(): string
{
return match($this) {
self::SUPER_ADMIN => '超级管理员',
self::NORMAL_ADMIN => '普通管理员',
};
}
}
+40
View File
@@ -0,0 +1,40 @@
<?php
declare(strict_types=1);
/**
*+------------------
* madong
*+------------------
* Copyright (c) https://gitee.com/motion-code All rights reserved.
*+------------------
* Author: Mr. April (405784684@qq.com)
*+------------------
* Official Website: https://madong.tech
*/
namespace app\enum\system;
enum Week: int
{
// 定义枚举项
case Monday = 1;
case Tuesday = 2;
case Wednesday = 3;
case Thursday = 4;
case Friday = 5;
case Saturday = 6;
case Sunday = 0;
// 获取中文标签
public function label(): string
{
return match($this) {
self::Monday => '周一',
self::Tuesday => '周二',
self::Wednesday => '周三',
self::Thursday => '周四',
self::Friday => '周五',
self::Saturday => '周六',
self::Sunday => '周日',
};
}
}