|
@@ -18,10 +18,7 @@ import com.qmth.themis.business.entity.TBUserRole;
|
|
|
import com.qmth.themis.business.enums.FieldUniqueEnum;
|
|
|
import com.qmth.themis.business.enums.MqTagEnum;
|
|
|
import com.qmth.themis.business.enums.SystemOperationEnum;
|
|
|
-import com.qmth.themis.business.service.CacheService;
|
|
|
-import com.qmth.themis.business.service.MqDtoService;
|
|
|
-import com.qmth.themis.business.service.TBUserRoleService;
|
|
|
-import com.qmth.themis.business.service.TBUserService;
|
|
|
+import com.qmth.themis.business.service.*;
|
|
|
import com.qmth.themis.business.util.*;
|
|
|
import com.qmth.themis.common.enums.ExceptionResultEnum;
|
|
|
import com.qmth.themis.common.enums.Platform;
|
|
@@ -76,6 +73,9 @@ public class TBUserController {
|
|
|
@Resource
|
|
|
MqUtil mqUtil;
|
|
|
|
|
|
+ @Resource
|
|
|
+ TBSessionService tbSessionService;
|
|
|
+
|
|
|
@ApiOperation(value = "用户登录接口")
|
|
|
@RequestMapping(value = "/login/account", method = RequestMethod.POST)
|
|
|
@ApiResponses({@ApiResponse(code = 200, message = "用户信息", response = TBUser.class)})
|
|
@@ -550,7 +550,7 @@ public class TBUserController {
|
|
|
}
|
|
|
//mq发送消息start
|
|
|
MqDto mqDto = new MqDto(mqUtil.getMqGroupDomain().getTopic(), MqTagEnum.USER.name(), SystemOperationEnum.LOGOUT,
|
|
|
- MqTagEnum.USER, String.valueOf(tbUser.getId()), tbUser.getLoginName());
|
|
|
+ MqTagEnum.USER, String.valueOf(tbUser.getId()), tbSession.getId());
|
|
|
mqDtoService.assembleSendOneWayMsg(mqDto);
|
|
|
//mq发送消息end
|
|
|
return ResultUtil.ok(true);
|
|
@@ -659,6 +659,7 @@ public class TBUserController {
|
|
|
String sessionId = SessionUtil
|
|
|
.digest(tbUser.getId(), Math.abs(authDto.getRoleCodes().toString().hashCode()),
|
|
|
s.name());
|
|
|
+ tbSessionService.removeById(sessionId);
|
|
|
redisUtil.deleteUserSession(sessionId);
|
|
|
}
|
|
|
cacheService.removeAccountCache(tbUser.getId());
|
|
@@ -739,6 +740,7 @@ public class TBUserController {
|
|
|
String sessionId = SessionUtil
|
|
|
.digest(tbUser.getId(), Math.abs(authDto.getRoleCodes().toString().hashCode()),
|
|
|
s.name());
|
|
|
+ tbSessionService.removeById(sessionId);
|
|
|
redisUtil.deleteUserSession(sessionId);
|
|
|
}
|
|
|
}
|