123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173 |
- package com.fdkankan.ucenter.controller;
- import com.alibaba.fastjson.JSONObject;
- import com.fdkankan.common.util.JwtUtil;
- import com.fdkankan.redis.util.RedisUtil;
- import com.fdkankan.ucenter.common.BaseController;
- import com.fdkankan.ucenter.common.RedisKeyUtil;
- import com.fdkankan.ucenter.common.Result;
- import com.fdkankan.ucenter.service.impl.LoginService;
- import com.fdkankan.ucenter.vo.request.LoginParam;
- import com.fdkankan.ucenter.vo.request.RegisterParam;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.beans.factory.annotation.Value;
- import org.springframework.web.bind.annotation.*;
- /**
- * 登录
- */
- @RestController
- @RequestMapping("/ucenter/sso/user")
- public class LoginController extends BaseController {
- @Autowired
- LoginService loginService;
- @Autowired
- RedisUtil redisUtil;
- @Value("${spring.profiles.active}")
- private String environment;
- @Value("${admin.register.validCode:2a22bac40f44af4d3b5fdc20ea706fc5}")
- private String registerValidCode;
- /**
- * 登录
- * phoneNum 用户名
- * password 密码
- */
- @PostMapping("/login")
- public Result login(@RequestBody LoginParam param){
- return Result.success(loginService.login(param));
- }
- /**
- * 登录
- * phoneNum 用户名
- * password 密码
- */
- @PostMapping("/loginClear")
- public Result loginClear(@RequestBody LoginParam param){
- return Result.success(loginService.loginClear(param));
- }
- /**
- * 相机扫码登录 获取二维码
- */
- @GetMapping("/createLoginQrCode")
- public Result createLoginQrCode() throws Exception {
- return Result.success(loginService.createLoginQrCode());
- }
- /**
- * 扫码验证登录
- */
- @PostMapping("/sendUserInfo")
- public Result sendUserInfo(@RequestBody JSONObject jsonObject){
- return Result.success(loginService.sendUserInfo(jsonObject.getString("uuid")));
- }
- /**
- * 登出
- */
- @PostMapping("/logout")
- public Result logout(){
- loginService.logout(getToken());
- return Result.success();
- }
- /**
- * 检测用户名
- * phoneNum 用户名
- */
- @PostMapping("/checkUser")
- public Result checkUser(@RequestBody LoginParam param){
- loginService.checkUser(param.getPhoneNum(),true);
- return Result.success();
- }
- /**
- * 获取验证码
- * areaNum 区号
- * phoneNum 手机号码
- */
- @PostMapping("/getMsgAuthCode")
- public Result getMsgAuthCode(@RequestBody LoginParam param) throws Exception {
- loginService.getMsgAuthCode(param.getAreaNum(),param.getPhoneNum());
- return Result.success();
- }
- /**
- * 发送邮件验证码
- */
- @PostMapping("/getEmailAuthCode")
- public Result getEmailAuthCode(@RequestBody RegisterParam param) throws Exception {
- loginService.getEmailAuthCode(param.getEmail(),param.getCountry());
- return Result.success();
- }
- /**
- * 注册
- * areaNum 区号
- * phoneNum 手机号码
- */
- @PostMapping("/register")
- public Result register(@RequestBody RegisterParam param) throws Exception {
- if(param.getMsgAuthCode().equals(registerValidCode)){
- param.setClear("YES");
- }
- loginService.register(param);
- return Result.success();
- }
- /**
- * 修改密码
- */
- @PostMapping("/changePassword")
- public Result changePassword(@RequestBody RegisterParam param){
- loginService.changePassword(param);
- return Result.success();
- }
- /**
- * 检验token是否过期
- */
- @PostMapping(value = "/checkToken")
- public Result checkToken(){
- loginService.loginCheck(getToken());
- return Result.success();
- }
- /**
- * 检验验证码是否有效
- */
- @PostMapping(value = "/checkSms")
- public Result checkSms(@RequestBody RegisterParam param){
- String username = JwtUtil.getUsername(getToken());
- loginService.checkSms(param.getMsgAuthCode(),username,false);
- return Result.success();
- }
- /**
- * getToken
- */
- @PostMapping("/getToken")
- public Result getToken(@RequestBody LoginParam param){
- return Result.success(loginService.loginClear(param));
- }
- /**
- * 测试使用 获取具体验证码
- * @param user
- * @return
- */
- @RequestMapping(value = "/findMsgAuthCode", method = RequestMethod.POST)
- public Result findMsgAuthCode(@RequestBody LoginParam user) {
- String redisKey = RedisKeyUtil.PREFIX_MSG_AUTH_CODE +user.getPhoneNum();
- if(!"prod".equals(environment)){
- return Result.success(redisUtil.get(redisKey));
- }
- if("18819272208".equals(user.getPhoneNum()) || "12369874542".equals(user.getPhoneNum())){
- return Result.success(redisUtil.get(redisKey));
- }
- return Result.success();
- }
- }
|