作者 crossoverJie

:recycle: Refactoring code.联调成功4

... ... @@ -15,5 +15,10 @@ public final class Constant {
*/
public final static String ACCOUNT_PREFIX = "cim-account:";
/**
* 路由信息前缀
*/
public final static String ROUTE_PREFIX = "cim-route:";
}
... ...
... ... @@ -34,93 +34,94 @@ public class RouteController {
private final static Logger LOGGER = LoggerFactory.getLogger(RouteController.class);
@Autowired
private ServerCache serverCache ;
private ServerCache serverCache;
@Autowired
private AccountService accountService;
@ApiOperation("群聊 API")
@RequestMapping(value = "groupRoute",method = RequestMethod.POST)
@RequestMapping(value = "groupRoute", method = RequestMethod.POST)
@ResponseBody()
public BaseResponse<NULLBody> groupRoute(@RequestBody GroupReqVO groupReqVO){
public BaseResponse<NULLBody> groupRoute(@RequestBody GroupReqVO groupReqVO) {
BaseResponse<NULLBody> res = new BaseResponse();
LOGGER.info("msg=[{}]", groupReqVO.toString());
res.setCode(StatusEnum.SUCCESS.getCode()) ;
res.setMessage(StatusEnum.SUCCESS.getMessage()) ;
return res ;
res.setCode(StatusEnum.SUCCESS.getCode());
res.setMessage(StatusEnum.SUCCESS.getMessage());
return res;
}
/**
* 私聊路由
*
* @param p2pRequest
* @return
*/
@ApiOperation("私聊 API")
@RequestMapping(value = "p2pRoute",method = RequestMethod.POST)
@RequestMapping(value = "p2pRoute", method = RequestMethod.POST)
@ResponseBody()
public BaseResponse<NULLBody> p2pRoute(@RequestBody P2PReqVO p2pRequest){
public BaseResponse<NULLBody> p2pRoute(@RequestBody P2PReqVO p2pRequest) {
BaseResponse<NULLBody> res = new BaseResponse();
res.setCode(StatusEnum.SUCCESS.getCode()) ;
res.setMessage(StatusEnum.SUCCESS.getMessage()) ;
return res ;
res.setCode(StatusEnum.SUCCESS.getCode());
res.setMessage(StatusEnum.SUCCESS.getMessage());
return res;
}
/**
* 获取一台 CIM server
*
* @return
*/
@ApiOperation("登录并获取服务器")
@RequestMapping(value = "login",method = RequestMethod.POST)
@RequestMapping(value = "login", method = RequestMethod.POST)
@ResponseBody()
public BaseResponse<CIMServerResVO> login(@RequestBody LoginReqVO loginReqVO) throws Exception {
BaseResponse<CIMServerResVO> res = new BaseResponse();
//登录校验
boolean login = accountService.login(loginReqVO);
if (login){
if (login) {
String server = serverCache.selectServer();
String[] serverInfo = server.split(":");
CIMServerResVO vo = new CIMServerResVO(serverInfo[0],Integer.parseInt(serverInfo[1])) ;
CIMServerResVO vo = new CIMServerResVO(serverInfo[0], Integer.parseInt(serverInfo[1]));
//保存路由信息
accountService.saveRouteInfo(vo) ;
accountService.saveRouteInfo(loginReqVO,server);
res.setDataBody(vo);
res.setCode(StatusEnum.SUCCESS.getCode()) ;
res.setMessage(StatusEnum.SUCCESS.getMessage()) ;
}else {
res.setCode(StatusEnum.FAIL.getCode()) ;
res.setMessage(StatusEnum.FAIL.getMessage()) ;
res.setCode(StatusEnum.SUCCESS.getCode());
res.setMessage(StatusEnum.SUCCESS.getMessage());
} else {
res.setCode(StatusEnum.FAIL.getCode());
res.setMessage(StatusEnum.FAIL.getMessage());
}
return res ;
return res;
}
/**
* 注册账号
*
* @return
*/
@ApiOperation("注册账号")
@RequestMapping(value = "registerAccount",method = RequestMethod.POST)
@RequestMapping(value = "registerAccount", method = RequestMethod.POST)
@ResponseBody()
public BaseResponse<RegisterInfoResVO> registerAccount(@RequestBody RegisterInfoReqVO registerInfoReqVO) throws Exception {
BaseResponse<RegisterInfoResVO> res = new BaseResponse();
long userId = System.currentTimeMillis();
RegisterInfoResVO info = new RegisterInfoResVO(userId,registerInfoReqVO.getUserName()) ;
RegisterInfoResVO info = new RegisterInfoResVO(userId, registerInfoReqVO.getUserName());
info = accountService.register(info);
res.setDataBody(info);
res.setCode(StatusEnum.SUCCESS.getCode()) ;
res.setMessage(StatusEnum.SUCCESS.getMessage()) ;
return res ;
res.setCode(StatusEnum.SUCCESS.getCode());
res.setMessage(StatusEnum.SUCCESS.getMessage());
return res;
}
}
... ...
package com.crossoverjie.cim.route.service;
import com.crossoverjie.cim.route.vo.req.LoginReqVO;
import com.crossoverjie.cim.route.vo.res.CIMServerResVO;
import com.crossoverjie.cim.route.vo.res.RegisterInfoResVO;
/**
... ... @@ -31,8 +30,9 @@ public interface AccountService {
/**
* 保存路由信息
* @param vo
* @param msg 服务器信息
* @param loginReqVO 用户信息
* @throws Exception
*/
void saveRouteInfo(CIMServerResVO vo) throws Exception ;
void saveRouteInfo(LoginReqVO loginReqVO ,String msg) throws Exception ;
}
... ...
... ... @@ -2,7 +2,6 @@ package com.crossoverjie.cim.route.service.impl;
import com.crossoverjie.cim.route.service.AccountService;
import com.crossoverjie.cim.route.vo.req.LoginReqVO;
import com.crossoverjie.cim.route.vo.res.CIMServerResVO;
import com.crossoverjie.cim.route.vo.res.RegisterInfoResVO;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
... ... @@ -11,6 +10,7 @@ import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import static com.crossoverjie.cim.route.constant.Constant.ACCOUNT_PREFIX;
import static com.crossoverjie.cim.route.constant.Constant.ROUTE_PREFIX;
/**
* Function:
... ... @@ -32,7 +32,7 @@ public class AccountServiceRedisImpl implements AccountService {
String name = redisTemplate.opsForValue().get(info.getUserName()) ;
if (null == name){
//为了方便查询,冗余一份
//为了方便查询,冗余一份
redisTemplate.opsForValue().set(key, info.getUserName());
redisTemplate.opsForValue().set(info.getUserName(),key);
}else {
... ... @@ -59,7 +59,8 @@ public class AccountServiceRedisImpl implements AccountService {
}
@Override
public void saveRouteInfo(CIMServerResVO vo) throws Exception {
public void saveRouteInfo(LoginReqVO loginReqVO,String msg) throws Exception {
String key = ROUTE_PREFIX + loginReqVO.getUserId() ;
redisTemplate.opsForValue().set(key,msg) ;
}
}
... ...