master
zyy 5 years ago
parent da6cd7e05f
commit 65215bb542

@ -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;
}
}

@ -15,6 +15,8 @@ public interface CaseUsersService {
CaseUsers selectByUserNoOrOpenId(String key);
CaseUsers findByUserNo(JSONObject jsonObject);
CaseUsers findByUserNo(String userNo);
CaseUsers currentUser();
@ -29,7 +31,6 @@ public interface CaseUsersService {
List<ImportPO> importFromExcel(String uploadPath, String fileName) throws IOException;
CaseUsers detail(JSONObject params);
void delete(JSONObject params);

Loading…
Cancel
Save