fix: 修复企业微信用户查询并添加模拟登录接口
修复企业微信用户查询SQL未过滤已删除和禁用用户的问题 添加模拟企业微信登录接口用于测试环境
This commit is contained in:
parent
04fd224005
commit
929b70897f
|
@ -217,6 +217,44 @@ public class PaymentController {
|
|||
}
|
||||
}
|
||||
|
||||
@GetMapping("/login/qy/fake")
|
||||
public ResponseDTO<QyLoginDTO> fakeQyLogin(String corpid, String userid) {
|
||||
try {
|
||||
QyAccessTokenEntity qyAccessToken = accessTokenApplicationService.getByAppid("QWTONG_YS_WXSHOP", corpid);
|
||||
// 通过企业微信code获取用户ID
|
||||
// 根据企业微信用户ID查询系统用户名
|
||||
SysUserEntity sysUserEntity = sysUserQyUserApplicationService.getSysUserByQyUserid(userid);
|
||||
|
||||
SystemLoginUser loginUser = new SystemLoginUser();
|
||||
loginUser.setAdmin(false);
|
||||
loginUser.setUserId(sysUserEntity.getUserId());
|
||||
List<RouterDTO> routerTree = menuApplicationService.getRouterTree(loginUser);
|
||||
log.info("getRouterTree,userid: {}, routerTree: {}", userid, JSONUtil.toJsonStr(routerTree));
|
||||
|
||||
int isCabinetAdmin = 0;
|
||||
if (routerTree != null && !routerTree.isEmpty()) {
|
||||
isCabinetAdmin = isCabinetAdmin(routerTree)
|
||||
? 1 : 0;
|
||||
}
|
||||
|
||||
OpenidResponse openidResponse = QywxApiUtil.convertToOpenid(qyAccessToken.getAccessToken(), userid);
|
||||
|
||||
QyUserEntity qyUserEntity = qyUserApplicationService.getUserByUserIdAndCorpid(userid, corpid);
|
||||
Ab98UserEntity ab98User = null;
|
||||
if (qyUserEntity != null && qyUserEntity.getAb98UserId() != null) {
|
||||
ab98User = ab98UserApplicationService.getByAb98UserId(qyUserEntity.getAb98UserId());
|
||||
}
|
||||
|
||||
return ResponseDTO.ok(new QyLoginDTO(userid, openidResponse.getOpenid(), isCabinetAdmin,
|
||||
qyUserEntity == null ? 0 : qyUserEntity.getId(),
|
||||
qyUserEntity == null ? "" : qyUserEntity.getName(),
|
||||
ab98User));
|
||||
} catch (RestClientException e) {
|
||||
log.error("qyLogin失败", e);
|
||||
return ResponseDTO.fail(new ApiException(ErrorCode.Client.COMMON_REQUEST_PARAMETERS_INVALID, "微信服务调用失败"));
|
||||
}
|
||||
}
|
||||
|
||||
private static boolean isCabinetAdmin(List<RouterDTO> routerTree) {
|
||||
if (routerTree == null || routerTree.isEmpty()) {
|
||||
return false;
|
||||
|
|
|
@ -44,7 +44,7 @@ public interface SysUserQyUserMapper extends BaseMapper<SysUserQyUserEntity> {
|
|||
"FROM sys_user_qy_user suqy " +
|
||||
"JOIN qy_user qu ON suqy.qy_user_id = qu.id " +
|
||||
"JOIN sys_user su ON suqy.sys_user_id = su.user_id " +
|
||||
"WHERE qu.userid = #{userid}")
|
||||
"WHERE qu.userid = #{userid} AND qu.deleted = 0 AND qu.enable = 1")
|
||||
SysUserEntity selectSysUserByQyUserid(@Param("userid") String userid);
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue