This commit is contained in:
2025-11-13 15:40:19 +08:00
6 changed files with 47 additions and 7 deletions

View File

@@ -1,5 +1,6 @@
package com.sdm.common.common.mdc;
import com.sdm.common.common.ThreadLocalContext;
import feign.RequestInterceptor;
import feign.RequestTemplate;
import org.apache.commons.lang3.StringUtils;
@@ -15,5 +16,11 @@ public class FeignMdcRequestInterceptor implements RequestInterceptor {
if (StringUtils.isNotBlank(traceId)) {
template.header("X-Trace-Id", traceId);
}
// 传递tenantId
Long tenantId = ThreadLocalContext.getTenantId();
if (tenantId != null) {
template.header("tenantid", String.valueOf(tenantId));
}
}
}

View File

@@ -25,7 +25,7 @@ public class SysUserGroupResp implements Serializable {
private static final long serialVersionUID = 1L;
@Schema(description = "组唯一标识ID")
private Integer id;
private Long id;
@Schema(description = "组名")
private String groupName;
@@ -40,4 +40,4 @@ public class SysUserGroupResp implements Serializable {
@Schema(description = "更新时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime updatedTime;
}
}

View File

@@ -329,8 +329,8 @@
</select>
<select id="getUserGroupProjectStatistics" resultType="com.sdm.project.model.vo.UserGroupProjectVo">
select
nm.nodeId,
nm.user_id as userId,
nodeId,
user_id as userId
from simulation_node_member
where user_id in (
<foreach collection='userIds' item='userId' index='index' separator=','>

View File

@@ -19,6 +19,7 @@ import com.sdm.common.entity.resp.system.SysUserGroupDetailResp;
import com.sdm.common.entity.resp.system.SysUserGroupResp;
import com.sdm.system.service.ISysUserService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
@@ -90,7 +91,9 @@ public class CIDISysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser>
public SdmResponse queryUserDetail(UserQueryReq req) {
try {
req.setTenantId(ThreadLocalContext.getTenantId());
log.info("正在向CID用户详情API发送请求: {},参数: {}", cidUrl + queryUserDetail, JSONUtil.toJsonStr(req));
String userJson = HttpUtil.post(cidUrl + queryUserDetail, JSONUtil.toJsonStr(req));
log.info("收到CID用户详情API的响应: {}", userJson);
SdmResponse<CIDUserResp> CIDUserRespose = JSON.parseObject(userJson, SdmResponse.class);
if (CIDUserRespose != null) {
return CIDUserRespose;
@@ -105,7 +108,9 @@ public class CIDISysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser>
@Override
public SdmResponse listUserByIds(UserQueryReq req) {
try {
log.info("正在向CID根据ID列表查询用户API发送请求: {},参数: {}", cidUrl + listUserByIds, JSONUtil.toJsonStr(req));
String userJson = HttpUtil.post(cidUrl + listUserByIds, JSONUtil.toJsonStr(req));
log.info("收到CID根据ID列表查询用户API的响应: {}", userJson);
SdmResponse<List<CIDUserResp>> CIDUserRespose = JSON.parseObject(userJson, SdmResponse.class);
if (CIDUserRespose != null) {
return CIDUserRespose;
@@ -121,7 +126,9 @@ public class CIDISysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser>
public SdmResponse listUser(UserListReq req) {
try {
req.setTenantId(ThreadLocalContext.getTenantId());
log.info("正在向CID用户列表API发送请求: {},参数: {}", cidUrl + listUser, JSONUtil.toJsonStr(req));
String userJson = HttpUtil.post(cidUrl + listUser, JSONUtil.toJsonStr(req));
log.info("收到CID用户列表API的响应: {}", userJson);
SdmResponse<PageDataResp<List<CIDUserResp>>> cidUserAddReq = JSON.parseObject(userJson, SdmResponse.class);
return cidUserAddReq;
} catch (Exception e) {
@@ -166,7 +173,9 @@ public class CIDISysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser>
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("userId", userId);
paramMap.put("tenantId", ThreadLocalContext.getTenantId());
log.info("正在向CID用户角色API发送请求: {},参数: {}", cidUrl + queryUserRole, paramMap);
String resultJson = HttpUtil.get(cidUrl + queryUserRole, paramMap);
log.info("收到CID用户角色API的响应: {}", resultJson);
SdmResponse<CIDRoleResp> result = JSON.parseObject(resultJson, SdmResponse.class);
return result;
} catch (Exception e) {
@@ -189,7 +198,9 @@ public class CIDISysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser>
public SdmResponse<PageDataResp<List<SysUserGroupResp>>> queryGroup(GroupQueryReq req) {
try {
req.setTenantId(ThreadLocalContext.getTenantId());
log.info("正在向CID查询用户组API发送请求: {},参数: {}", cidUrl + queryGroup, JSONUtil.toJsonStr(req));
String userJson = HttpUtil.post(cidUrl + queryGroup, JSONUtil.toJsonStr(req));
log.info("收到CID查询用户组API的响应: {}", userJson);
SdmResponse<PageDataResp<List<SysUserGroupResp>>> CIDGroupRespose = JSON.parseObject(userJson, SdmResponse.class);
if (CIDGroupRespose != null) {
return CIDGroupRespose;
@@ -205,7 +216,9 @@ public class CIDISysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser>
public SdmResponse<SysUserGroupDetailResp> queryGroupDetail(QueryGroupDetailReq req) {
try {
req.setTenantId(ThreadLocalContext.getTenantId());
log.info("正在向CID查询用户组详情API发送请求: {},参数: {}", cidUrl + queryGroupDetail, JSONUtil.toJsonStr(req));
String userJson = HttpUtil.post(cidUrl + queryGroupDetail, JSONUtil.toJsonStr(req));
log.info("收到CID查询用户组详情API的响应: {}", userJson);
SdmResponse<SysUserGroupDetailResp> CIDGroupDetailRespose = JSON.parseObject(userJson, SdmResponse.class);
if (CIDGroupDetailRespose != null) {
return CIDGroupDetailRespose;
@@ -230,7 +243,9 @@ public class CIDISysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser>
@Override
public SdmResponse<CIDUserResp> queryGroupMember(GroupMemberQueryReq req) {
try {
log.info("正在向CID查询用户组成员API发送请求: {},参数: {}", cidUrl + queryGroupMember, JSONUtil.toJsonStr(req));
String userJson = HttpUtil.post(cidUrl + queryGroupMember, JSONUtil.toJsonStr(req));
log.info("收到CID查询用户组成员API的响应: {}", userJson);
SdmResponse<CIDUserResp> cIDUserResp = JSON.parseObject(userJson, SdmResponse.class);
if (cIDUserResp != null) {
return cIDUserResp;

View File

@@ -14,8 +14,10 @@ import com.sdm.system.model.req.role.QueryRoleReq;
import com.sdm.system.model.req.role.UpdateRoleReq;
import com.sdm.system.model.req.system.AssignRolePermissionReq;
import com.sdm.system.service.ISysRoleService;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import lombok.extern.slf4j.Slf4j;
import java.util.HashMap;
import java.util.List;
@@ -29,6 +31,7 @@ import java.util.Map;
* @author author
* @since 2025-09-19
*/
@Slf4j
@Service
public class CIDSysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> implements ISysRoleService {
@Value("${roleSystem.cidRole}")
@@ -58,7 +61,9 @@ public class CIDSysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> i
public SdmResponse listRoles(QueryRoleReq queryRoleReq) {
try {
queryRoleReq.setTenantId(ThreadLocalContext.getTenantId());
log.info("正在向CID角色列表API发送请求: {},参数: {}", cidUrl + listRoles, JSON.toJSONString(queryRoleReq));
String jsonResponse = HttpUtil.post(cidUrl + listRoles, JSON.toJSONString(queryRoleReq));
log.info("收到CID角色列表API的响应: {}", jsonResponse);
SdmResponse<PageDataResp<List<CIDRoleResp>>> respSdmResponse = JSON.parseObject(jsonResponse, SdmResponse.class);
return respSdmResponse;
} catch (Exception e) {
@@ -74,7 +79,9 @@ public class CIDSysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> i
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("roleCode", roleCode);
paramMap.put("tenantId", ThreadLocalContext.getTenantId());
log.info("正在向CID根据角色编码获取角色API发送请求: {},参数: {}", cidUrl + getRoleByRoleCode, paramMap);
String resultJson = HttpUtil.get(cidUrl + getRoleByRoleCode, paramMap);
log.info("收到CID根据角色编码获取角色API的响应: {}", resultJson);
SdmResponse<CIDRoleResp> respSdmResponse = JSON.parseObject(resultJson, SdmResponse.class);
return respSdmResponse;
} catch (Exception e) {
@@ -89,7 +96,9 @@ public class CIDSysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> i
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("roleId", roleId);
paramMap.put("tenantId", ThreadLocalContext.getTenantId());
log.info("正在向CID根据角色ID获取角色API发送请求: {},参数: {}", cidUrl + getRoleById, paramMap);
String resultJson = HttpUtil.get(cidUrl + getRoleById, paramMap);
log.info("收到CID根据角色ID获取角色API的响应: {}", resultJson);
SdmResponse<CIDRoleResp> respSdmResponse = JSON.parseObject(resultJson, SdmResponse.class);
return SdmResponse.success(respSdmResponse);
} catch (Exception e) {
@@ -104,7 +113,9 @@ public class CIDSysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> i
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("roleName", roleName);
paramMap.put("tenantId", ThreadLocalContext.getTenantId());
log.info("正在向CID根据角色名称获取角色API发送请求: {},参数: {}", cidUrl + getRoleByRoleName, paramMap);
String resultJson = HttpUtil.get(cidUrl + getRoleByRoleName, paramMap);
log.info("收到CID根据角色名称获取角色API的响应: {}", resultJson);
SdmResponse<CIDRoleResp> respSdmResponse = JSON.parseObject(resultJson, SdmResponse.class);
return respSdmResponse;
} catch (Exception e) {
@@ -137,4 +148,4 @@ public class CIDSysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> i
public SdmResponse getRolePermissions(Long roleId) {
return SdmResponse.success("角色创建成功");
}
}
}

View File

@@ -13,11 +13,13 @@ import com.sdm.system.model.resp.TenantResp;
import com.sdm.system.service.ISysTenantService;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import lombok.extern.slf4j.Slf4j;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Slf4j
@Service
public class CIDtenantServiceImpl extends ServiceImpl<SysTenantMapper, SysTenant> implements ISysTenantService {
@Value("${tenantSystem.cidTenant}")
@@ -55,10 +57,13 @@ public class CIDtenantServiceImpl extends ServiceImpl<SysTenantMapper, SysTenant
@Override
public SdmResponse listTenant(TenantListReq tenant) {
try {
log.info("正在向CID租户列表API发送请求: {},参数: {}", cidUrl + listTenant, JSON.toJSONString(tenant));
String CidTenantResp = HttpUtil.post(cidUrl + listTenant,JSON.toJSONString( tenant));
log.info("收到CID租户列表API的响应: {}", CidTenantResp);
SdmResponse<PageDataResp<List<TenantResp>>> SysTenants = JSON.parseObject(CidTenantResp, SdmResponse.class);
return SysTenants;
} catch (Exception e) {
log.error("查询租户列表失败", e);
return SdmResponse.failed("查询失败");
}
}
@@ -68,12 +73,14 @@ public class CIDtenantServiceImpl extends ServiceImpl<SysTenantMapper, SysTenant
try {
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("tenantId", tenantId);
log.info("正在向CID根据ID获取租户详情API发送请求: {},参数: {}", cidUrl + getTenantDetailById, paramMap);
String resultJson = HttpUtil.get(cidUrl + getTenantDetailById, paramMap);
log.info("收到CID根据ID获取租户详情API的响应: {}", resultJson);
SdmResponse<TenantResp> result = JSON.parseObject(resultJson, SdmResponse.class);
return result;
} catch (Exception e) {
log.error("查询失败");
log.error("查询租户详情失败", e);
return SdmResponse.failed("查询失败");
}
}
}
}