feat: support create app with namespace_code #976

This commit is contained in:
tjq 2024-11-22 22:03:06 +08:00
parent 508127426f
commit 92ddc6af4d
4 changed files with 19 additions and 0 deletions

View File

@ -82,6 +82,11 @@ public class AppInfoController {
@ApiPermission(name = "App-Save", roleScope = RoleScope.APP, dynamicPermissionPlugin = ModifyOrCreateDynamicPermission.class, grandPermissionPlugin = SaveAppGrantPermissionPlugin.class)
public ResultDTO<AppInfoVO> saveAppInfo(@RequestBody ModifyAppInfoRequest req) {
// 根据 ns code 填充 namespaceId自动化创建过程中固定的 namespace-code 对用户更友好
if (StringUtils.isNotEmpty(req.getNamespaceCode())) {
namespaceWebService.findByCode(req.getNamespaceCode()).ifPresent(x -> req.setNamespaceId(x.getId()));
}
req.valid();
AppInfoDO appInfoDO;

View File

@ -17,7 +17,11 @@ public class ModifyAppInfoRequest {
private Long id;
private String appName;
/**
* namespace 唯一标识任选其一传递即可
*/
private Long namespaceId;
private String namespaceCode;
private String oldPassword;
private String password;

View File

@ -22,6 +22,8 @@ public interface NamespaceWebService {
Optional<NamespaceDO> findById(Long id);
Optional<NamespaceDO> findByCode(String code);
Page<NamespaceDO> list(QueryNamespaceRequest queryNamespaceRequest);
List<NamespaceDO> listAll();

View File

@ -114,6 +114,14 @@ public class NamespaceWebServiceImpl implements NamespaceWebService {
return namespaceRepository.findById(id);
}
@Override
public Optional<NamespaceDO> findByCode(String code) {
if (StringUtils.isEmpty(code)) {
return Optional.empty();
}
return namespaceRepository.findByCode(code);
}
@Override
public Page<NamespaceDO> list(QueryNamespaceRequest queryNamespaceRequest) {
String codeLike = queryNamespaceRequest.getCodeLike();