赞
踩
1.需求定义:外包项目如雨后春笋,开发工期被迫压缩,为了开发人员专注开发项目业务,早点下班能陪老婆、孩子。
2.产品定位: 简约后台管理系统
3.项目特点:此项目代码清晰、界面简洁、springboot + layuiadmin 构建的单体后台管理系统。
JDK >= 1.8
MySQL >= 5.7
Maven >= 3.0
redis >= 6.0.6
minio 版本无要求
1、推荐使用IDEA开发工具运行此项目
2、在mysql中创建crud数据库后,项目启动时候表结构会自动创建
3、针对各环境修改对应配置文件:application-dev.yml开发环境、application-prod.yml生产环境、application-test.yml测试环境
4、运行项目中CrudApplication.java启动类
1.控制层接口版本管理、包装响应Result返回值进行全局处理,使用@ResponseResultBody注解
2.定义接口版本,在方法中配置@ApiVersion注解
3.想要实现客户端不需要登录就可以访问后端接口,只需要在控制层的JAVA方法中加入@PassToken注解,然后该接口可以跳过jwt安全认证
4.在JAVA方法中加入@CrudLog注解可以将用户操作后台管理系统中操作日志记录到数据库sys_log日志表中
// BusinessType.INSERT 新增操作
// BusinessType.UPDATE 更新操作
// BusinessType.DELETE 删除操作
@CrudLog(title = "详细描述",businessType = BusinessType.INSERT)
5.代码中设置Security权限
@PreAuthorize("hasAuthority('权限标识')") // JAVA代码方法上加入注解
sec:authorize="hasAuthority('权限标识')" // thymeleaf声明
6.客户端向header处放入token值后发起请求,后端拦截客户端请求,获取并解析header中token,拿到用户的userId放入Map中,然后通过以下方法可以获取用户ID。
Long userId = ApiContext.getUserId();
7.将list转化tree结构方法
ListToTree treeBuilder = new ListToTreeImpl();
treeBuilder.toTree(menus);
8.调用发送阿里云Email邮件方法
SampleEmail.sample(邮件地址,标题,内容);
9.调用上传文件到阿里云oss或minio服务器方法
SampleOSS.upload(文件流, 自定义上传路径);
10.调用发送阿里云短信方法
SampleSms.sendSms(手机号,模版号,签名);
11.导出Excel文件
//导出Excel EasyExcel.write(response.getOutputStream()) //自动关闭流 .autoCloseStream(Boolean.FALSE) //指定excel文件的type .excelType(ExcelTypeEnum.XLSX) // 标题头 .head(导出类.class) //给定工作表名称 .sheet(fileName) //给定样式 .registerWriteHandler(EasyExcelUtil.getStyleStrategy()) //给定导出数据 .doWrite(datas); // excel数据转换成系统字典 @ExcelProperty(value = {"用户性别"}, index = 0, converter = BaseDictDataConverter.class) // key = 字典KEY @DictType(key = ConfigConsts.DICT_KEY_SEX)
12.字典组件
layui.config({
base: '/static/layuiadmin/' //静态资源所在路径
}).extend({
index: 'lib/index' //主入口模块
}).use(["crud"],function(){
let crud = layui.crud;
// 获取枚举
crud.getDictValue('字典类型',枚举值);
// radio赋值
crud.setRadio("id节点","字典类型","默认值");
// select赋值
crud.setSelect("id节点","字典类型",'默认值');
})
13.下拉框多选组件
crud.initXmSelect("自定义select接口","id节点");
14.图片上传组件
crud.uploadImg("id节点");
15.向导页面组件
按钮设置点击事件
$('按钮ID节点').on('click', function () {
// 树结构向导
crud.treeWizard("自定义select接口",function (result) {
form.val('表单的lay-filter属性值', {
赋值id值: result.id,
赋值name值: result.name
});
});
});
登陆功能
账号:admin 密码:123456
首页
用户管理模块
角色管理模块
部门管理
岗位管理
菜单管理模块
swagger接口文档
druid监控
账号:admin 密码:admin
定时任务
字典管理
代码生成
工作流
登录日志管理
操作日志管理
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。