# sun admin **Repository Path**: a36/sun-admin ## Basic Information - **Project Name**: sun admin - **Description**: SunAdmin是一个使用前后端分离方式开发的管理系统模板,包含日常开发中最常用的用户、单位和角色管理等功能,包含桌面端和移动端等,使我们开发管理系统时只需关注实际业务,快速的开发出一个优秀且规范的产品。 开发工具:phpstorm vscode 技术栈:laravel thinkphp vue3 elementplus vant - **Primary Language**: PHP - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2023-04-11 - **Last Updated**: 2025-12-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # sun admin #### 介绍 sun admin是一个使用前后端分离方式开发的管理系统模板,包含日常开发中最常用的用户、单位和角色管理等功能,包含桌面端和移动端等,使我们开发管理系统时只需关注实际业务,快速的开发出一个优秀且规范的产品。 开发工具:phpstorm vscode 技术栈:thinkphp queue workman vue3 element plus vant dayjs axios #### 软件架构 sun admin后端使用的是thinkphp开发,分为模型层、服务层、验证器、控制器层。服务层实现了自动增删改查,不用为每个服务对象单独的定义繁琐的增删改查方法,使开发效率大大提升。后端结合了workman,实现了websocket服务,使后端程序可以实时的与前端用户通信,实现消息提醒。后端引入了queue队列,使耗时的操作移动到队列中来执行,提升用户体验。 sun admin前端采用了vue3 setup组合式的方式开发,用到了vue router路由,pinia存储,dayjs处理时间,sass写样式,axios网络请求,echarts画图进行开发。前端使用的当前流行的element plus组件库开发,使开发出来的成品样式更统一。 #### 安装教程 使用docker部署,在前后端项目根目录已经有Dockerfile文件,在项目根目录有.gitlab-ci.yml和docker-compose.yml配置文件,运行docker compose up -d可以一键部署项目,也支持gitlab cicd流水线的方式部署更新项目。 #### 使用说明 前后端有template目录,在目录中有常用的模板文件,开发时只需要复制模板文件拿来改改就可以快速开发出功能模块。 #### 开发规范 1、命名习惯:从大到小,前缀区分分类,后缀标识状态。 2、HTML/CSS/URL:小写字母+中横线命名 3、库/表/字段/模块化/常量分隔:小写字母+下划线 4、文件夹/文件:小写字母+下划线(中横线有减号的意义) 5、类/Vue组件:大驼峰 6、属性/方法/函数:小驼峰 7、常量/单词缩写:大写 8、事件处理程序直接调用业务方法(不使用handle)。 9、js模块开发,文件内定义使用原名,import时如果重名采用 模块_原函数名()的方法命名。 10、控制器、脚本、队列按照功能划分。 11、模型、服务、验证器、实体等按资源划分。 12、为了提升开发效率,防止类引用时重名,类一般加类后缀,但像控制器、队列、脚本一般不被调用,所以一般不加后缀。加不加后缀都没有问题,只是为了提升开发效率,提升开发时方便度。 13、如果某模块类名与外层类名明显相同,则内层类名带上模块名,方便引入,也是提升开发引入类的效率。 14、市长应该在市长文件夹外和市文件夹在同一级别。 15、css命名方法使用BEM块元素修饰符的方法,提高模块化,防止重名。 16、基础逻辑在服务层中实现,控制器只是处理请求和响应,不参与逻辑实现。