前台:
1、社团信息浏览搜索、社团活动风采、新闻信息浏览搜索。
2、学生注册登录。
3、登录后可自己申请创建社团,也可申请加入其他社团活动。
4、管理自己社团的申请人员。
5个人信息修改及留言等。
后台:
后台管理员除了基本的系统管理功能(脚手架里的功能,这里不赘述)外,还有社团审核管理、活动新闻管理、学生管理、留言管理、活动申请审核、活动经费管理等等。
用户信息测试接口:
/**
* 测试接口
*
*/
@RestController
@RequestMapping("/api")
@Api(tags="测试接口")
public class ApiTestController {
@Login
@GetMapping("userInfo")
@ApiOperation(value="获取用户信息", response=UserEntity.class)
public R userInfo(@ApiIgnore @LoginUser UserEntity user){
return R.ok().put("user", user);
}
@Login
@GetMapping("userId")
@ApiOperation("获取用户ID")
public R userInfo(@ApiIgnore @RequestAttribute("userId") Integer userId){
return R.ok().put("userId", userId);
}
@GetMapping("notToken")
@ApiOperation("忽略Token验证测试")
public R notToken(){
return R.ok().put("msg", "无需token也能访问。。。");
}
}
注册接口:
/**
* 注册接口
*
*/
@RestController
@RequestMapping("/api")
@Api(tags="注册接口")
public class ApiRegisterController {
@Autowired
private UserService userService;
@PostMapping("register")
@ApiOperation("注册")
public R register(@RequestBody RegisterForm form){
//表单校验
ValidatorUtils.validateEntity(form);
UserEntity user = new UserEntity();
user.setMobile(form.getMobile());
user.setUsername(form.getMobile());
user.setPassword(DigestUtils.sha256Hex(form.getPassword()));
user.setCreateTime(new Date());
userService.save(user);
return R.ok();
}
}
登录接口:
/**
* 登录接口
*
*/
@RestController
@RequestMapping("/api")
@Api(tags="登录接口")
public class ApiLoginController {
@Autowired
private UserService userService;
@Autowired
private TokenService tokenService;
@PostMapping("login")
@ApiOperation("登录")
public R login(@RequestBody LoginForm form){
//表单校验
ValidatorUtils.validateEntity(form);
//用户登录
Map<String, Object> map = userService.login(form);
return R.ok(map);
}
@Login
@PostMapping("logout")
@ApiOperation("退出")
public R logout(@ApiIgnore @RequestAttribute("userId") long userId){
tokenService.expireToken(userId);
return R.ok();
}
}