Browse Source

feat(openapi): 接入 OpenAPI 用户查询服务及配置

- 新增 common-openapi 配置块,包含 urlPrefix、operationEnabled、tokenSigningKey、tokenExpiration
- 新增 TenantOpenApiUserServiceImpl 实现类,按登录名查询用户信息
- mybatis-plus mapper-locations 增加 openapi 模块 Mapper 路径
- 新增导入导出异步任务相关配置项(阈值、保留时间等)
pull/3/head
chenchuchuan 3 weeks ago
parent
commit
cee97cf13e
  1. 41
      application-tenant/tenant-admin/src/main/java/apelet/tenantadmin/openapi/service/TenantOpenApiUserServiceImpl.java
  2. 18
      application-tenant/tenant-admin/src/main/resources/tenant-admin-dev.yml

41
application-tenant/tenant-admin/src/main/java/apelet/tenantadmin/openapi/service/TenantOpenApiUserServiceImpl.java

@ -0,0 +1,41 @@ @@ -0,0 +1,41 @@
package apelet.tenantadmin.openapi.service;
import apelet.common.core.constant.ErrorCodeEnum;
import apelet.common.core.object.ResponseResult;
import apelet.common.openapi.dto.OpenApiUserInfo;
import apelet.common.openapi.service.OpenApiUserService;
import apelet.tenantadmin.upms.model.SysUser;
import apelet.tenantadmin.upms.service.SysUserService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* OpenAPI 调用用户查询实现:按登录名查 xy_sys_user(tenant-admin 接入方)。
*
* @author chenchuchuan
* @date 2026-09-02
*/
@Slf4j
@Service("tenantOpenApiUserService")
public class TenantOpenApiUserServiceImpl implements OpenApiUserService {
@Autowired
private SysUserService sysUserService;
@Override
public ResponseResult<OpenApiUserInfo> getByLoginName(String loginName, Long tenantId) {
// 复用 upms 原有按登录名查用户接口(与平台登录链路同一查询),不在此处另写条件
SysUser user = sysUserService.getSysUserByLoginName(loginName);
if (user == null) {
return ResponseResult.error(ErrorCodeEnum.DATA_NOT_EXIST, "用户不存在!");
}
OpenApiUserInfo info = new OpenApiUserInfo();
info.setUserId(user.getUserId());
info.setLoginName(user.getLoginName());
info.setShowName(user.getShowName());
// 本期应用 tenant_id 默认为空(不限租户),SysUser 无租户字段,直接回传入参租户Id
info.setTenantId(tenantId);
return ResponseResult.success(info);
}
}

18
application-tenant/tenant-admin/src/main/resources/tenant-admin-dev.yml

@ -39,6 +39,15 @@ common-mobile: @@ -39,6 +39,15 @@ common-mobile:
urlPrefix: /tenantadmin/mobile
# 在线表单业务数据上传资源路径
uploadFileBaseDir: ./zz-resource/upload-files/mobile
common-openapi:
# 注意不要以反斜杠(/)结尾。
urlPrefix: /tenantadmin/openapi
# 如果为false,OpenAPI 开放平台中所有Controller接口将不能使用。
operationEnabled: true
# JWT 签名密钥(开放 token 校验使用)。HMAC-SHA 要求密钥 >= 256bit,即至少 32 个字节。
tokenSigningKey: tenantadmin-openapi-signing-key-2026-secret-9f3a
# token 有效期(秒)。
tokenExpiration: 7200
common-online:
# 注意不要以反斜杠(/)结尾。
urlPrefix: /tenantadmin/online
@ -76,7 +85,12 @@ common-online: @@ -76,7 +85,12 @@ common-online:
- ${common-online.urlPrefix}/onlineOperation/deleteBatchOneToManyRelation/
- ${common-online.urlPrefix}/onlineOperation/uploadDatasource/
- ${common-online.urlPrefix}/onlineOperation/uploadOneToManyRelation/
# 下面这些有默认值,按需覆盖
importExportFileRetainHours: 24
# ==== 临时联调用:调到 5 行方便走异步分支,联调完记得还原(正式值 5000 / 50000)====
importAsyncRowThreshold: 5
exportAsyncRowThreshold: 5
asyncTaskRetainDays: 7
common-flow:
# 请慎重修改urlPrefix的缺省配置,注意不要以反斜杠(/)结尾。如必须修改其他路径,请同步修改数据库脚本。
urlPrefix: /tenantadmin/flow
@ -146,7 +160,7 @@ common-log: @@ -146,7 +160,7 @@ common-log:
kafkaTopic: SysOperationLog-TenantAdmin
mybatis-plus:
mapper-locations: classpath:apelet/tenantadmin/tenant/dao/mapper/*Mapper.xml,apelet/tenantadmin/upms/dao/mapper/*Mapper.xml,apelet/common/report/dao/mapper/*Mapper.xml,apelet/common/datasync/dao/mapper/*Mapper.xml,apelet/common/log/dao/mapper/*Mapper.xml,apelet/common/flow/dao/mapper/*Mapper.xml,apelet/common/online/dao/mapper/*Mapper.xml,apelet/common/generator/dao/mapper/*Mapper.xml,apelet/common/botp/dao/mapper/*Mapper.xml,apelet/tenantadmin/app/dao/mapper/*Mapper.xml,apelet/common/mobile/dao/mapper/*Mapper.xml,apelet/common/eas/dao/mapper/*Mapper.xml,classpath:mapper/*Mapper.xml
mapper-locations: classpath:apelet/tenantadmin/tenant/dao/mapper/*Mapper.xml,apelet/tenantadmin/upms/dao/mapper/*Mapper.xml,apelet/common/report/dao/mapper/*Mapper.xml,apelet/common/datasync/dao/mapper/*Mapper.xml,apelet/common/log/dao/mapper/*Mapper.xml,apelet/common/flow/dao/mapper/*Mapper.xml,apelet/common/online/dao/mapper/*Mapper.xml,apelet/common/generator/dao/mapper/*Mapper.xml,apelet/common/botp/dao/mapper/*Mapper.xml,apelet/tenantadmin/app/dao/mapper/*Mapper.xml,apelet/common/mobile/dao/mapper/*Mapper.xml,apelet/common/eas/dao/mapper/*Mapper.xml,apelet/common/openapi/dao/mapper/*Mapper.xml,classpath:mapper/*Mapper.xml
type-aliases-package: apelet.tenantadmin.*.model,apelet.common.report.model,apelet.common.datasync.model,apelet.common.log.model,apelet.common.flow.model,apelet.common.online.model,apelet.common.mobile.model,apelet.common.eas.model
global-config:
db-config:

Loading…
Cancel
Save