123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- package com.xc.controller;
- import com.xc.common.ServerResponse;
- import com.xc.pojo.User;
- import com.xc.service.IUserService;
- import com.xc.utils.Md5Utils;
- import com.xc.utils.PropertiesUtil;
- import com.xc.utils.TokenUtils;
- import com.xc.utils.redis.CookieUtils;
- import com.xc.utils.redis.JsonUtil;
- import com.xc.utils.redis.RedisConst;
- import com.xc.utils.redis.RedisShardedPoolUtils;
- import com.xc.vo.user.UserLoginResultVO;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import javax.servlet.http.HttpSession;
- import org.slf4j.Logger;
- import org.slf4j.LoggerFactory;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Controller;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RequestMethod;
- import org.springframework.web.bind.annotation.RequestParam;
- import org.springframework.web.bind.annotation.ResponseBody;
- import redis.clients.jedis.JedisCluster;
- import java.util.Date;
- @Controller
- @RequestMapping({"/api/user/"})
- public class UserApiController {
- private static final Logger log = LoggerFactory.getLogger(UserApiController.class);
- @Autowired
- IUserService iUserService;
- //注册
- @RequestMapping(value = {"reg.do"}, method = {RequestMethod.POST})
- @ResponseBody
- public ServerResponse reg(@RequestParam("agentCode") String agentCode, @RequestParam("phone") String phone, @RequestParam(value = "yzmCode", defaultValue = "") String yzmCode, @RequestParam("userPwd") String userPwd, HttpServletRequest httpServletRequest) {
- return this.iUserService.reg(yzmCode, agentCode, phone, userPwd, httpServletRequest);
- }
- //登录
- @RequestMapping(value = {"login.do"}, method = {RequestMethod.POST})
- @ResponseBody
- public ServerResponse login(@RequestParam("phone") String phone, @RequestParam("userPwd") String userPwd, HttpServletRequest request, HttpServletResponse response) throws Exception {
- // String pc_cookie_name = PropertiesUtil.getProperty("user.cookie.name");
- ServerResponse serverResponse = this.iUserService.login(phone, userPwd, request);
- if (serverResponse.isSuccess()) {
- // CookieUtils.writeLoginToken(response, token, pc_cookie_name);
- // String redisSetExResult = RedisShardedPoolUtils.setEx(token, JsonUtil.obj2String(serverResponse.getData()), 5400);
- // Long a = RedisShardedPoolUtils.expire(token,10);
- // System.out.println(a+"u1s1");
- // log.info("redis setex user result : {}", redisSetExResult);
- User user = (User) serverResponse.getData();
- // String tokenKey = RedisConst.getTokenRedisKey(user.getId());
- String token = TokenUtils.token(user.getPhone(), user.getUserPwd());
- UserLoginResultVO resultVO = new UserLoginResultVO();
- // resultVO.setKey(pc_cookie_name);
- resultVO.setToken(token);
- RedisShardedPoolUtils.setEx(token, JsonUtil.obj2String(serverResponse.getData()), 5400);
- return ServerResponse.createBySuccess("登陆成功", resultVO);
- }
- return serverResponse;
- }
- //注销
- @RequestMapping({"logout.do"})
- @ResponseBody
- public ServerResponse logout(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) {
- // String cookie_name = PropertiesUtil.getProperty("user.cookie.name");
- // String logintoken = CookieUtils.readLoginToken(httpServletRequest, cookie_name);
- // log.info("用户 token = {} ,退出登陆", logintoken);
- // CookieUtils.delLoginToken(httpServletRequest, httpServletResponse, cookie_name);
- String token = httpServletRequest.getHeader("token");
- RedisShardedPoolUtils.del(token);
- return ServerResponse.createBySuccess();
- }
- //查询手机号是否存在
- @RequestMapping({"checkPhone.do"})
- @ResponseBody
- public ServerResponse checkPhone(String phoneNum,@RequestParam(value = "num",defaultValue = "0")int num) {
- return this.iUserService.checkPhone(phoneNum,num);
- }
- //找回密码
- @RequestMapping({"updatePwd.do"})
- @ResponseBody
- public ServerResponse updatePwd(String phoneNum, String code, String newPwd) {
- return this.iUserService.updatePwd(phoneNum, code, newPwd);
- }
- }
|