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

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

parent 738586df
...@@ -701,4 +701,39 @@ public class UserController implements IBaseController { ...@@ -701,4 +701,39 @@ public class UserController implements IBaseController {
smsService.deleteCodeFromCache(phoneNo); 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 { ...@@ -42,4 +42,5 @@ public interface ISessionService {
*/ */
void deleteSession(String token); void deleteSession(String token);
void kdspDeleteSession(Long userId, LoginProperties loginProperties);
} }
...@@ -282,6 +282,18 @@ public class SessionServiceImpl implements ISessionService { ...@@ -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 * 获取用户的会话缓存Set的Redis-Key
* *
......
...@@ -4,6 +4,7 @@ import cn.quantgroup.xyqb.controller.internal.user.resp.UserFullResp; ...@@ -4,6 +4,7 @@ import cn.quantgroup.xyqb.controller.internal.user.resp.UserFullResp;
import cn.quantgroup.xyqb.entity.Merchant; import cn.quantgroup.xyqb.entity.Merchant;
import cn.quantgroup.xyqb.entity.User; import cn.quantgroup.xyqb.entity.User;
import cn.quantgroup.xyqb.model.JsonResult; import cn.quantgroup.xyqb.model.JsonResult;
import cn.quantgroup.xyqb.model.LoginProperties;
import cn.quantgroup.xyqb.model.UserInfo; import cn.quantgroup.xyqb.model.UserInfo;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
...@@ -102,4 +103,6 @@ public interface IUserService { ...@@ -102,4 +103,6 @@ public interface IUserService {
* 登出 * 登出
*/ */
void logout(String token); void logout(String token);
void kdspLogout(Long userId, LoginProperties loginProperties);
} }
...@@ -524,4 +524,10 @@ public class UserServiceImpl implements IUserService, IBaseController { ...@@ -524,4 +524,10 @@ public class UserServiceImpl implements IUserService, IBaseController {
sessionService.deleteSession(token); 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