系统配置
系统配置管理是 Dux PHP Admin 的核心功能之一,提供灵活的系统参数配置、菜单管理、字典数据管理等功能。通过可视化的配置界面,管理员可以轻松管理系统的各项设置。
功能概览
核心模块
- 菜单管理:动态菜单配置,支持权限控制
- 系统设置:灵活的系统参数配置管理
- 字典管理:系统数据字典和选项数据维护
- 地区管理:完整的省市县区域数据管理
- 语言管理:多语言支持和翻译数据管理
- API管理:API密钥和接口权限管理
访问路径
- 菜单管理:
/api/system/menu
- 系统设置:
/api/system/setting
- 字典管理:
/api/system/dictionary
- 地区管理:
/api/system/area
- 语言管理:
/api/system/locale
- API管理:
/api/system/api
菜单管理
菜单管理是系统的核心配置功能,控制整个管理后台的导航结构和权限体系。
菜单功能特性
菜单类型
- 目录:菜单分组,不对应具体页面
- 菜单:具体的功能页面菜单
- 按钮:页面内的操作按钮权限
菜单属性
- 基本信息:菜单名称、图标、排序权重
- 路由配置:前端路由路径、组件加载器
- 权限配置:权限标识、所属应用
- 显示控制:是否隐藏、是否缓存
- 按钮权限:页面内的操作按钮配置
层级结构
- 无限层级:支持多层级菜单嵌套
- 树形展示:树形结构展示菜单层级
- 拖拽排序:支持拖拽调整菜单顺序
菜单数据结构
菜单表字段
菜单数据包含以下关键字段:
- 所属应用:标识菜单所属的应用模块
- 父级菜单ID:确定菜单的层级关系
- 菜单标签:菜单显示的文本内容
- 多语言标识:用于多语言环境的标识符
- 权限标识:菜单对应的权限标识符
- 路由路径:前端访问的路由路径
- 组件路径:对应的前端组件加载器
- 菜单类型:目录、菜单或按钮类型
- 菜单图标:显示的图标标识
- 排序权重:菜单显示的顺序
- 显示控制:是否隐藏和缓存设置
- 权限按钮:关联的操作按钮权限配置
菜单查询功能
系统支持多种查询条件筛选菜单:
- 按应用类型筛选(admin等)
- 按菜单类型筛选(目录、菜单、按钮)
- 按是否隐藏状态筛选
- 支持组合查询条件
菜单操作功能
菜单管理提供完整的菜单创建、编辑和删除功能。用户可以通过直观的界面配置菜单的基本信息、路由信息、权限信息和显示选项。支持拖拽排序调整菜单顺序,提供树形结构展示菜单层级关系。
权限按钮配置
菜单权限按钮配置包含按钮标签、多语言标识、权限标识符、按钮类型和显示条件等信息,为页面操作提供细粒度的权限控制。
系统设置
系统设置提供灵活的参数配置管理,支持多种数据类型和配置分组。
设置功能特性
配置类型
- 文本配置:字符串类型配置
- 数字配置:数值类型配置
- 布尔配置:开关类型配置
- JSON配置:复杂数据结构配置
- 文件配置:文件路径配置
配置属性
- 配置键名:唯一的配置标识
- 配置标题:配置项显示名称
- 配置值:具体的配置内容
- 配置类型:数据类型标识
- 是否公开:是否允许前端访问
设置数据处理
配置查询
系统设置支持多种查询方式:
- 按关键词搜索配置名称和标题
- 按公开状态筛选配置项
- 按创建时间排序显示
- 支持模糊搜索和精确匹配
配置管理
系统对配置数据进行统一管理:
- 配置名称和标题规范化
- 配置值类型转换和验证
- 公开状态标准化控制
- 前端可访问公开配置项
常用系统配置
基础配置
系统基础配置包括:
- 网站名称:系统显示的网站标题
- 网站描述:网站的基本描述信息
- 网站关键词:SEO相关的关键词设置
- 网站Logo:系统Logo图片设置
- 网站图标:浏览器标签页图标
上传配置
文件上传相关配置:
- 最大上传大小:单个文件最大允许上传大小
- 允许上传类型:系统允许的文件扩展名
- 存储驱动:文件存储的驱动类型配置
邮件配置
系统邮件发送配置:
- 邮件驱动:邮件发送服务类型
- SMTP配置:SMTP服务器连接信息
- 认证信息:邮箱用户名和密码
字典管理
字典管理用于维护系统中的选项数据和枚举值,为下拉选择、单选多选等提供数据源。
字典功能特性
字典分类
- 字典分组:按业务模块分组管理
- 字典项:具体的选项数据
- 层级结构:支持多级字典数据
- 状态控制:字典项启用禁用状态
字典应用
- 表单选项:为表单提供选项数据
- 状态映射:状态值的文本映射
- 分类数据:各种分类信息管理
- 配置选项:系统配置的可选值
字典数据结构
字典分类表
字典分类数据包含:
- 字典名称:字典的显示名称
- 字典标识:唯一的标识符
- 字典描述:字典的功能描述
- 状态:字典的启用状态
字典数据表
字典具体数据包含:
- 所属字典ID:关联的字典分类
- 父级数据ID:支持层级结构
- 显示标签:前端显示的文本
- 数据值:实际的数据值
- 排序权重:显示顺序控制
- 状态:数据项的启用状态
字典查询功能
字典管理支持多维度查询:
- 按字典分类筛选数据
- 按父级关系筛选层级数据
- 按状态筛选有效数据
- 按排序权重和ID排序显示
字典使用示例
用户状态字典
用户状态字典提供用户账号状态的标准化管理:
- 正常状态:用户可以正常使用系统
- 禁用状态:用户账号被暂时禁用
- 待审核状态:新注册用户等待管理员审核
文章分类字典
内容管理的文章分类配置:
- 技术文章:技术相关的内容分类
- 产品动态:产品更新和发布信息
- 公司新闻:企业新闻和公告信息
地区管理
地区管理提供完整的省市县区域数据,支持四级地区结构。
地区功能特性
地区层级
- 省级:省、直辖市、自治区
- 市级:地级市、区县级市
- 县级:县、区、县级市
- 乡镇级:乡镇、街道办事处
数据管理
- Excel导入:支持Excel批量导入地区数据
- 树形展示:树形结构展示地区层级
- 数据同步:支持地区数据同步更新
- 编码标准:符合国家行政区划编码标准
地区数据处理
地区查询功能
地区管理支持多种查询方式:
- 按上级地区筛选下级区域
- 按地区级别筛选对应层级
- 支持层级结构的递归查询
- 按排序权重和ID进行排序
Excel导入功能
地区管理提供Excel批量导入功能:
- 支持标准Excel格式文件导入
- 自动解析地区数据结构
- 支持数据更新和新增操作
- 导入过程中进行数据验证
地区数据应用
地区选择组件
- 级联选择:省市县三级联动选择
- 搜索功能:支持地区名称搜索
- 快速定位:热门城市快速选择
- 地图选择:结合地图进行地区选择
API接口
- 获取省份:
GET /api/system/area?level=1
- 获取城市:
GET /api/system/area?parent_id={省份ID}
- 获取区县:
GET /api/system/area?parent_id={城市ID}
语言管理
语言管理提供多语言支持,实现系统的国际化功能。
语言功能特性
语言包管理
- 语言列表:支持的语言列表管理
- 翻译数据:具体的翻译文本管理
- 分组管理:按模块分组管理翻译
- 缺失检测:检测缺失的翻译项
翻译功能
- 批量翻译:支持批量添加翻译
- 翻译导入:支持翻译文件导入
- 翻译导出:支持翻译文件导出
- 在线翻译:集成在线翻译服务
语言数据结构
语言包管理
语言包配置数据包含:
- 语言名称:语言的显示名称
- 语言代码:标准语言代码(如:zh-CN, en-US)
- 语言图标:对应的国旗或图标
- 状态:语言包的启用状态
- 默认设置:是否为系统默认语言
翻译数据管理
翻译数据包含:
- 所属语言ID:关联的语言包
- 分组名称:按模块分组管理
- 翻译键名:唯一的翻译标识
- 翻译文本:具体的翻译内容
语言使用示例
菜单翻译
系统菜单支持多语言翻译:
- 中文环境:用户管理、创建用户、编辑用户
- 英文环境:User Management、Create User、Edit User
- 翻译键名:使用统一的键名标识,如 system.user 等
API管理
API管理提供API密钥管理和接口权限控制功能。
API功能特性
密钥管理
- 密钥生成:自动生成SecretID和SecretKey
- 密钥轮换:支持密钥定期更换
- 权限控制:API访问权限设置
- 使用统计:API调用统计分析
接口管理
- 接口文档:OpenAPI自动生成文档
- 接口权限:细粒度的接口权限控制
- 调用限制:API调用频率限制
- 日志记录:API调用日志记录
API数据处理
API密钥管理
API密钥管理提供完整的密钥生命周期管理:
- 密钥生成:系统自动生成SecretID和SecretKey
- 数据格式化:统一的密钥数据格式处理
- 状态管理:密钥的启用和禁用状态控制
- 安全存储:密钥的安全存储和管理
密钥轮换功能
API管理支持密钥轮换操作:
- 重新生成:一键重新生成新的密钥对
- 安全性保障:定期更换密钥提高安全性
- 无缝切换:支持平滑的密钥切换过程
系统配置最佳实践
菜单设计原则
- 层级清晰:保持合理的菜单层级,一般不超过3级
- 权限细化:合理设置菜单和按钮权限
- 图标统一:使用统一的图标风格
- 命名规范:使用规范的权限标识命名
系统设置管理
- 分类管理:按功能模块分类配置项
- 类型规范:选择合适的配置类型
- 默认值设置:为配置项设置合理的默认值
- 权限控制:敏感配置不设为公开
字典数据维护
- 分组合理:按业务逻辑合理分组
- 编码规范:使用有意义的字典键值
- 数据同步:定期同步和更新字典数据
- 状态管理:及时维护数据状态
地区数据管理
- 数据准确:确保地区数据的准确性
- 定期更新:跟进行政区划变更
- 编码标准:使用标准的区划编码
- 性能优化:大数据量时注意查询性能
多语言支持
- 键名规范:使用规范的翻译键名
- 分组管理:按模块分组管理翻译
- 完整性检查:定期检查翻译完整性
- 编码统一:使用UTF-8编码
API安全管理
- 密钥安全:定期轮换API密钥
- 权限最小化:只授予必要的API权限
- 调用监控:监控异常API调用
- 日志审计:保留完整的调用日志
通过完善的系统配置管理,可以灵活地控制系统行为,提供个性化的管理体验,确保系统的可维护性和扩展性。