|
|
|
@ -0,0 +1,174 @@
|
|
|
|
|
package com.bsd.cases.controller;
|
|
|
|
|
|
|
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
|
|
import com.bsd.cases.model.CaseUsers;
|
|
|
|
|
import com.bsd.cases.service.CaseUsersService;
|
|
|
|
|
import com.bsd.cases.util.AjaxResult;
|
|
|
|
|
import com.bsd.cases.util.JWTUtil;
|
|
|
|
|
import com.bsd.cases.util.LogUtils;
|
|
|
|
|
import com.bsd.cases.util.WechatAccessUtils;
|
|
|
|
|
import io.swagger.annotations.Api;
|
|
|
|
|
import io.swagger.annotations.ApiImplicitParam;
|
|
|
|
|
import io.swagger.annotations.ApiImplicitParams;
|
|
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
|
|
import org.apache.shiro.authz.annotation.RequiresAuthentication;
|
|
|
|
|
import org.slf4j.Logger;
|
|
|
|
|
import org.springframework.http.HttpStatus;
|
|
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
|
|
|
|
|
|
|
@Api("后台登录API")
|
|
|
|
|
@RestController
|
|
|
|
|
@RequestMapping("api")
|
|
|
|
|
@CrossOrigin
|
|
|
|
|
public class CaseIndexController {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Logger logger = LogUtils.getBussinessLogger();
|
|
|
|
|
|
|
|
|
|
String mofang = "876215850057f8245d2bd82554bd7e7c";
|
|
|
|
|
String erp = "cb472ab819ba7209e37fbf0e501a2964";
|
|
|
|
|
@Resource
|
|
|
|
|
private CaseUsersService caseUsersService;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@RequiresAuthentication
|
|
|
|
|
@ApiOperation(value = "获取当前用", notes = "获取当前用户,只需要在Header设置token,不需要传参")
|
|
|
|
|
@GetMapping("user")
|
|
|
|
|
public AjaxResult currentUser() {
|
|
|
|
|
|
|
|
|
|
AjaxResult ajaxResult = new AjaxResult();
|
|
|
|
|
ajaxResult.setRetcode(AjaxResult.SUCCESS);
|
|
|
|
|
CaseUsers caseUsers = caseUsersService.currentUser();
|
|
|
|
|
ajaxResult.setData(caseUsers);
|
|
|
|
|
return ajaxResult;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ApiOperation(value = "微信登录", notes = "微信登录")
|
|
|
|
|
@ApiImplicitParams({
|
|
|
|
|
@ApiImplicitParam(name = "code", value = "微信授权code")
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
@PostMapping("autologin")
|
|
|
|
|
public AjaxResult autoLogin(String params) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
AjaxResult ajaxResult = new AjaxResult();
|
|
|
|
|
try {
|
|
|
|
|
String token = caseUsersService.autoLogin(params);
|
|
|
|
|
ajaxResult.setRetcode(AjaxResult.SUCCESS);
|
|
|
|
|
ajaxResult.setData(token);
|
|
|
|
|
ajaxResult.setRetmsg("自动登录成功");
|
|
|
|
|
} catch (RuntimeException e) {
|
|
|
|
|
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
ajaxResult.setRetmsg("自动登录失败:" + e.getMessage());
|
|
|
|
|
ajaxResult.setRetcode(AjaxResult.FAILED);
|
|
|
|
|
}
|
|
|
|
|
return ajaxResult;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ApiOperation(value = "后台登录", notes = "后台登录")
|
|
|
|
|
@ApiImplicitParams({
|
|
|
|
|
@ApiImplicitParam(name = "userName", value = "用户名"),
|
|
|
|
|
@ApiImplicitParam(name = "password", value = "密码")
|
|
|
|
|
})
|
|
|
|
|
@PostMapping("adminlogin")
|
|
|
|
|
public AjaxResult adminLogin(@RequestBody JSONObject params) {
|
|
|
|
|
|
|
|
|
|
AjaxResult ajaxResult = new AjaxResult();
|
|
|
|
|
try {
|
|
|
|
|
String userName = params.getString("userName");
|
|
|
|
|
String password = params.getString("password");
|
|
|
|
|
if (null == userName) {
|
|
|
|
|
|
|
|
|
|
ajaxResult.setRetmsg("登录失败, 用户名或密码错误!");
|
|
|
|
|
ajaxResult.setRetcode(AjaxResult.FAILED);
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
|
|
CaseUsers caseUsers = caseUsersService.findUser(userName, password);
|
|
|
|
|
ajaxResult.setData(JWTUtil.sign(caseUsers.getUserNo()));
|
|
|
|
|
ajaxResult.setRetmsg("登录成功");
|
|
|
|
|
ajaxResult.setRetcode(AjaxResult.SUCCESS);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
ajaxResult.setRetmsg("登录失败, 用户名或密码错误!");
|
|
|
|
|
ajaxResult.setRetcode(AjaxResult.FAILED);
|
|
|
|
|
}
|
|
|
|
|
return ajaxResult;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ApiOperation(value = "通过用户工号获取用户信息PC", notes = "通过用户工号获取用户信息PC")
|
|
|
|
|
@ApiImplicitParams({
|
|
|
|
|
@ApiImplicitParam(name = "userNo", value = "userNo")
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
@PostMapping("findbyuserno")
|
|
|
|
|
public AjaxResult findByUserno(@RequestBody JSONObject params) {
|
|
|
|
|
|
|
|
|
|
AjaxResult ajaxResult = new AjaxResult();
|
|
|
|
|
try {
|
|
|
|
|
CaseUsers caseUsers = caseUsersService.findByUserNo(params);
|
|
|
|
|
ajaxResult.setRetcode(AjaxResult.SUCCESS);
|
|
|
|
|
ajaxResult.setData(caseUsers);
|
|
|
|
|
ajaxResult.setRetmsg("获取用户信息成功");
|
|
|
|
|
if (caseUsers == null) {
|
|
|
|
|
|
|
|
|
|
ajaxResult.setRetcode(AjaxResult.FAILED);
|
|
|
|
|
ajaxResult.setRetmsg("查询用户信息不存在");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
} catch (RuntimeException e) {
|
|
|
|
|
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
ajaxResult.setRetmsg("用户已报名活动");
|
|
|
|
|
ajaxResult.setRetcode(AjaxResult.FAILED);
|
|
|
|
|
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
ajaxResult.setRetmsg("获取用户信息失败:" + e.getMessage());
|
|
|
|
|
ajaxResult.setRetcode(AjaxResult.FAILED);
|
|
|
|
|
}
|
|
|
|
|
return ajaxResult;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@RequestMapping("/401")
|
|
|
|
|
@ResponseStatus(HttpStatus.UNAUTHORIZED)
|
|
|
|
|
public AjaxResult unauthorized(HttpServletResponse servletResponse) {
|
|
|
|
|
|
|
|
|
|
AjaxResult ajaxResult = new AjaxResult();
|
|
|
|
|
ajaxResult.setRetmsg("用户认证失败");
|
|
|
|
|
ajaxResult.setRetcode(401);
|
|
|
|
|
return ajaxResult;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@RequestMapping("wxconfig")
|
|
|
|
|
public AjaxResult wxconfig(String url) {
|
|
|
|
|
|
|
|
|
|
AjaxResult ajaxResult = new AjaxResult();
|
|
|
|
|
try {
|
|
|
|
|
|
|
|
|
|
JSONObject jsonObject = WechatAccessUtils.share(url);
|
|
|
|
|
ajaxResult.setData(jsonObject);
|
|
|
|
|
ajaxResult.setRetcode(AjaxResult.SUCCESS);
|
|
|
|
|
ajaxResult.setRetmsg("获取微信配置成功");
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
ajaxResult.setRetmsg("自动登录失败:" + e.getMessage());
|
|
|
|
|
ajaxResult.setRetcode(AjaxResult.FAILED);
|
|
|
|
|
}
|
|
|
|
|
return ajaxResult;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|