Commit b0c05446 authored by 李健华's avatar 李健华

修改手机号kdsp调用登出羊小咩APP

parent 738586df
......@@ -701,4 +701,39 @@ public class UserController implements IBaseController {
smsService.deleteCodeFromCache(phoneNo);
}
}
/**
* 修改手机号登出接口(KDSP调用)
*
* @yapi
*/
@RequestMapping(value = "/kdsp/logout", method = RequestMethod.POST)
public JsonResult kdspLogout(
@RequestParam(required = false, defaultValue = "1") Long channelId, String appChannel,
@RequestParam(required = false, defaultValue = "1") Long createdFrom,
@RequestParam(required = false, defaultValue = "") Long userId,
@RequestParam(required = false, defaultValue = "xyqb") String key,
@RequestParam(required = false) String dimension
) {
//查询用户
User user = userService.findById(userId);
if (Objects.isNull(user) || !user.getEnable()) {
log.error("用户不存在,或者已经注销,userId:{}", userId);
return JsonResult.buildErrorStateResult("登出失败", null);
}
Merchant merchant = merchantService.findMerchantByName(key);
if (merchant == null) {
return JsonResult.buildErrorStateResult("未知的连接", null);
}
LoginProperties loginProperties = new LoginProperties("", 4, channelId, createdFrom, appChannel, merchant.getId(), merchant.getName(), null);
try {
userService.kdspLogout(userId, loginProperties);
} catch (Exception e) {
return JsonResult.buildErrorStateResult("服务器异常,请稍后再试", null);
}
return JsonResult.buildSuccessResult("登出成功");
}
}
......@@ -42,4 +42,5 @@ public interface ISessionService {
*/
void deleteSession(String token);
void kdspDeleteSession(Long userId, LoginProperties loginProperties);
}
......@@ -282,6 +282,18 @@ public class SessionServiceImpl implements ISessionService {
}
}
@Override
public void kdspDeleteSession(Long userId, LoginProperties loginProperties) {
List<Long> createFromList = Arrays.asList(214L, 217L);
for (Long createFrom : createFromList) {
loginProperties.setCreatedFrom(createFrom);
String key = generateLoginPropertiesKey(userId, loginProperties);
String token = stringRedisTemplate.opsForValue().get(key);
deleteSession(token);
}
}
/**
* 获取用户的会话缓存Set的Redis-Key
*
......
......@@ -4,6 +4,7 @@ import cn.quantgroup.xyqb.controller.internal.user.resp.UserFullResp;
import cn.quantgroup.xyqb.entity.Merchant;
import cn.quantgroup.xyqb.entity.User;
import cn.quantgroup.xyqb.model.JsonResult;
import cn.quantgroup.xyqb.model.LoginProperties;
import cn.quantgroup.xyqb.model.UserInfo;
import javax.servlet.http.HttpServletRequest;
......@@ -102,4 +103,6 @@ public interface IUserService {
* 登出
*/
void logout(String token);
void kdspLogout(Long userId, LoginProperties loginProperties);
}
......@@ -524,4 +524,10 @@ public class UserServiceImpl implements IUserService, IBaseController {
sessionService.deleteSession(token);
}
@Override
public void kdspLogout(Long userId, LoginProperties loginProperties) {
sessionService.kdspDeleteSession(userId, loginProperties);
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment