# catchAdmin **Repository Path**: uniapp-view-base/catchAdmin ## Basic Information - **Project Name**: catchAdmin - **Description**: 🚀🚀 CatchAdmin 🔥是一款基于 Thinkphp6.x 和 Element UI 开发的权限管理系统,在 Thinkphp6.x Service 服务基础上,实现系统模块完全接耦。随时卸载安装模块。提供了完成的权限和数据权限等功能,大量内置的开发工具提升你的开发体验。支持云上传,短信平台的配置,敏感词,以及定时任务等等功能。官网地址: - **Primary Language**: PHP - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: https://www.catchadmin.com - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 387 - **Created**: 2022-08-19 - **Last Updated**: 2022-08-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

CatchAdmin是一款基于thinkphp frameworkelement admin开发而成的后台管理系统。因为 thinkphp 的简单高效,文档齐全。在看了很多 thinkphp 生态中的后台管理系统,发现没有一款合适的前后端分离系统。遂开发了 CatchAdmin。 基于新版 thinkphp6 服务者的特性,后台的每个模块都可以独立成一个服务,模块之间的功能职责更加清晰。同时后台也兼顾了后台开发前端页面,减少了前端页面代码的输出。将表格和表单都封装成了后台组件,可在后台中通过 Json 数据轻松渲染出前端页面,大大提高了开发效率。CatchAdmin 同时也提供 Http 客户端,Excel 的导入导出,敏感词检测,大量的内置 commands 等一系列组件工具,提高使用后台的开发体验。

文档 | 演示地址 | 接口文档 | 项目源码 | 看云分析 扩展

## 功能 - [x] `用户管理` 后台用户管理 - [x] `部门管理` 配置公司的部门结构,支持树形结构 - [x] `岗位管理` 配置后台用户的职务 - [x] `菜单管理` 配置系统菜单,按钮等等 - [x] `角色管理` 配置用户担当的角色,分配权限 - [x] `数据字典` 管理后台表结构 - [x] `操作日志` 后台用户操作记录 - [x] `登录日志` 后台系统用户的登录记录 - [x] `代码生成` 生成 API 端的 CURD 操作 - [x] `敏感词` 支持敏感词配置 - [x] `附件管理` 可管理上传的文件 - [x] `定时任务` 可管理定时任务,而不依赖于 Crontab - [x] `短信平台` 短信云管理,支持 阿里大于,腾讯云,Ucloud,Submail - [x] `云上传` 支持云上传,七牛,OSS,腾讯 - [ ] `微信管理` ## 项目地址 - [小程序前端 UniApp 项目地址](https://gitee.com/my_hujinchen/uniapp-u-view-base) - [后台前端 Vue 项目地址](https://gitee.com/my_hujinchen/catchdmin_vue) - [后端 PHP 项目地址](https://gitee.com/my_hujinchen/catchAdmin) - 这3个都是配套使用的,可以基于这基础上开发。 ## 支持创作 如果项目对你有帮助,可以订阅支持我❤️。你的每一份支持是对我最大的鼓励。开源不易,感谢支持。可以通过使用 [**🎉 爱发电**](https://afdian.net/@jaguarjack)订阅支持创作。 ## 预览
## 环境要求 - php7.1+ (需以下扩展) - [x] mbstring - [x] json - [x] openssl - [x] xml - [x] pdo - nginx - mysql ### 如何安装 > 安装之前请确保已安装 Composer #### 下载项目 - 通过 Git 下载(推荐) ```shell git clone https://gitee.com/jaguarjack/catchAdmin && cd catchAdmin curl -sS https://install.phpcomposer.com/installer | php composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ composer install --ignore-platform-reqs ``` - composer 安装 ```shell composer create-project jaguarjack/catchadmin:dev-master ``` #### 安装 下载完成之后通过命令来进行安装, 一键安装 🚀 ```shell php think catch:install ``` ## 体验地址 [体验地址](http://vue.catchadmin.com) - 账号: catch@admin.com - 密码: catchadmin [catchadmin 文档地址](http://doc.catchadmin.com) ### 系列文章 如果是刚开始使用 thinkphp6, 以下文章可能会对你有些许帮助,文章基于 RC3 版本。整体架构是不变的。 - [Tp6 启动分析](https://www.kancloud.cn/akasishikelu/thinkphp6/1129385) - [Tp6 Request 解析](https://www.kancloud.cn/akasishikelu/thinkphp6/1134496) - [TP6 应用初始化](https://www.kancloud.cn/akasishikelu/thinkphp6/1130427) - [Tp6 中间件分析](https://www.kancloud.cn/akasishikelu/thinkphp6/1136616) - [Tp6 请求流程](https://www.kancloud.cn/akasishikelu/thinkphp6/1136608) ### Who used - [uctoo 应用开发管理后台](https://gitee.com/uctoo/uctoo) ### Talking - [论坛讨论](http://bbs.catchadmin.com) - 可以提 `ISSUE`,请按照 `issue` 模板提问 - 加入 Q 群 `302266230` 前请先 star 项目支持一下, 备注填写用户名 + 平台。例如: JaguarJack Github ### Thanks - 感谢 [JetBrains](https://www.jetbrains.com) 提供生产力巨高的 `PHPStorm`和`WebStorm` > 排名不分先后 - [top-think/think](https://github.com/top-think/think) - [element-admin](https://panjiachen.gitee.io/vue-element-admin-site/zh/) - [thans/tp-jwt-auth](https://packagist.org/packages/thans/tp-jwt-auth) - [jaguarjack/think-filesystem-cloud](https://github.com/yanwenwu/think-filesystem-cloud) - [overtrue/wechat](https://github.com/overtrue/wechat) - [jaguarjack/migration-generator](https://github.com/yanwenwu/migration-generator) - [phpoffice/phpspreadsheet](https://github.com/PHPOffice/PhpSpreadsheet) # 数据迁移工具使用方法: ### 1、先通过命令 创建 Migration ```shell php think catch-migrate:create module MigrationName ``` 参数 --必选参数 module, 模块名称 --必选参数 MigrationName,大驼峰法命名 示例: ```shell php think catch-migrate:create permissions RoleHasPermissions ``` 如果已经存在migration文件,可以删除在使用命令创建,或者直接在文件中修改 ### 2、在创建完migrations,需要先设计表结构 在模块的 模块名/database/migrations/xxx.php 下的change方法中写。 ### 3、在创建表 ```shell php think catch-migrate:run module ``` 使用该命令可以在数据库生成对应的表。然后数据库的migrations这张表会默认添加一条数据。 如果已经存在对应记录的话,可以先删除那条记录后,再删除对应的表,再运行这命令。 ### 3.1、如果需要在创建表时,默认生成一些数据的话 在模块的 模块名/database/seeds/xxxSeed.php 下的run方法中写上对应的数据 命令: ```shell php think catch-seed:run module ``` ### 4、创建模型 当你创建表成功后,还需要生成对应的模型 ```shell php think create:model moduleName modelName ``` 参数 --moduelName 模块名称 --modelName 模型名称 可选参数 --softDelete 值:SOFTDELETE 软删除参数之后,使用的模型会有区别,请注意 模型名称和模块名称都是必须的,模型名称还必须是驼峰规则,不然会找不到表,例如你的表名是user_role,那么你的模型名称就应该是 UserRole 这样的驼峰命名,这是约定。