Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit7b86625

Browse files
Thomasludomikula
Thomas
authored andcommitted
Add two API
- /api/bundles/addApp- /api/bundles/moveApp
1 parente7a58b0 commit7b86625

File tree

8 files changed

+77
-20
lines changed

8 files changed

+77
-20
lines changed

‎server/api-service/lowcoder-domain/src/main/java/org/lowcoder/domain/bundle/service/BundleElementRelationService.java‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ public interface BundleElementRelationService {
1111
Mono<Boolean>deleteByBundleIds(List<String>bundleIds);
1212

1313
Mono<Boolean>deleteByElementId(StringelementId);
14+
Mono<Boolean>deleteByBundleIdAndElementId(StringbundleId,StringelementId);
1415

1516
Mono<Void>create(StringbundleId,StringelementId);
1617

‎server/api-service/lowcoder-domain/src/main/java/org/lowcoder/domain/bundle/service/BundleElementRelationServiceImpl.java‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,11 @@ public Mono<Boolean> deleteByElementId(String elementId) {
2828
returnbiRelationService.removeAllBiRelationsByTargetId(BUNDLE_ELEMENT,elementId);
2929
}
3030

31+
@Override
32+
publicMono<Boolean>deleteByBundleIdAndElementId(StringbundleId,StringelementId) {
33+
returnbiRelationService.removeAllBiRelationsBySourceIdAndTargetId(BUNDLE_ELEMENT,bundleId,elementId);
34+
}
35+
3136
@Override
3237
publicMono<Void>create(StringbundleId,StringelementId) {
3338
returnbiRelationService.getBySourceId(BUNDLE_ELEMENT,bundleId)

‎server/api-service/lowcoder-infra/src/main/java/org/lowcoder/infra/birelation/BiRelationService.java‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,8 @@ Mono<Boolean> updateRelation(BiRelationBizType bizType, String sourceId, String
4545

4646
Mono<Boolean>removeAllBiRelationsByTargetId(BiRelationBizTypebizType,StringtargetId);
4747

48+
Mono<Boolean>removeAllBiRelationsBySourceIdAndTargetId(BiRelationBizTypebizType,StringsourceId,StringtargetId);
49+
4850
Mono<Boolean>removeAllBiRelations(BiRelationBizTypebizType,List<String>sourceIds);
4951

5052
Mono<BiRelation>getBiRelation(BiRelationBizTypebizType,StringsourceId,StringtargetId);

‎server/api-service/lowcoder-infra/src/main/java/org/lowcoder/infra/birelation/BiRelationServiceImpl.java‎

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,15 @@ public Mono<Boolean> removeAllBiRelationsByTargetId(BiRelationBizType bizType, S
143143
returnmongoUpsertHelper.remove(query,BiRelation.class);
144144
}
145145

146+
@Override
147+
publicMono<Boolean>removeAllBiRelationsBySourceIdAndTargetId(BiRelationBizTypebizType,StringsourceId,StringtargetId) {
148+
Queryquery =newQuery();
149+
query.addCriteria(where(BIZ_TYPE).is(bizType));
150+
query.addCriteria(where(SOURCE_ID).is(sourceId));
151+
query.addCriteria(where(TARGET_ID).is(targetId));
152+
returnmongoUpsertHelper.remove(query,BiRelation.class);
153+
}
154+
146155
@Override
147156
publicMono<Boolean>removeAllBiRelations(BiRelationBizTypebizType,List<String>sourceIds) {
148157
Queryquery =newQuery();

‎server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/bundle/BundleApiService.java‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
importjakarta.annotation.Nonnull;
44
importjakarta.annotation.Nullable;
5-
importorg.lowcoder.api.application.ApplicationEndpoints;
65
importorg.lowcoder.api.bundle.view.BundleInfoView;
76
importorg.lowcoder.api.bundle.view.BundlePermissionView;
87
importorg.lowcoder.domain.application.model.ApplicationType;
@@ -11,7 +10,6 @@
1110
importorg.lowcoder.domain.permission.model.ResourceAction;
1211
importorg.lowcoder.domain.permission.model.ResourcePermission;
1312
importorg.lowcoder.domain.permission.model.ResourceRole;
14-
importorg.lowcoder.sdk.config.dynamic.Conf;
1513
importreactor.core.publisher.Flux;
1614
importreactor.core.publisher.Mono;
1715

@@ -35,7 +33,9 @@ public interface BundleApiService {
3533

3634
Mono<BundleInfoView>update(Bundlebundle);
3735

38-
Mono<Void>move(StringapplicationLikeId,@NullableStringtargetBundled);
36+
Mono<Void>moveApp(StringapplicationId,StringfromBundled,StringtoBundleId);
37+
38+
Mono<Void>addApp(StringapplicationId,StringtoBundleId);
3939

4040
Flux<?>getElements(@NullableStringbundleId,@NullableApplicationTypeapplicationType);
4141

‎server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/bundle/BundleApiServiceImpl.java‎

Lines changed: 29 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
importlombok.RequiredArgsConstructor;
66
importorg.apache.commons.collections4.CollectionUtils;
77
importorg.apache.commons.lang3.StringUtils;
8-
importorg.lowcoder.api.application.ApplicationEndpoints;
98
importorg.lowcoder.api.bundle.BundleEndpoints.CreateBundleRequest;
109
importorg.lowcoder.api.application.view.ApplicationInfoView;
1110
importorg.lowcoder.api.application.view.ApplicationPermissionView;
@@ -259,21 +258,44 @@ public Mono<BundleInfoView> update(Bundle bundle) {
259258
}
260259

261260
/**
262-
* @param targetBundleId null means root bundle
261+
* @param applicationId app id to move
262+
* @param fromBundleId bundle id to remove app from
263+
* @param toBundleId bundle id to move app to
263264
*/
264265
@Override
265-
publicMono<Void>move(StringapplicationLikeId,@NullableStringtargetBundleId) {
266+
publicMono<Void>moveApp(StringapplicationId,StringfromBundleId,StringtoBundleId) {
266267
returnsessionUserService.getVisitorId()
267268
// check permissions
268-
.delayUntil(userId ->resourcePermissionService.checkResourcePermissionWithError(userId,applicationLikeId,
269+
.delayUntil(userId ->resourcePermissionService.checkResourcePermissionWithError(userId,applicationId,
269270
ResourceAction.MANAGE_APPLICATIONS))
270271
// remove old relations
271-
.then(bundleElementRelationService.deleteByElementId(applicationLikeId))
272+
.then(bundleElementRelationService.deleteByBundleIdAndElementId(fromBundleId,applicationId))
272273
.flatMap(b -> {
273-
if (StringUtils.isBlank(targetBundleId)) {
274+
if (StringUtils.isBlank(toBundleId)) {
274275
returnMono.empty();
275276
}
276-
returnbundleElementRelationService.create(targetBundleId,applicationLikeId);
277+
returnbundleElementRelationService.create(toBundleId,applicationId);
278+
})
279+
.then();
280+
}
281+
282+
/**
283+
* @param applicationId app id to add
284+
* @param toBundleId bundle id to add app to
285+
*/
286+
@Override
287+
publicMono<Void>addApp(StringapplicationId,StringtoBundleId) {
288+
returnsessionUserService.getVisitorId()
289+
// check permissions
290+
.delayUntil(userId ->resourcePermissionService.checkResourcePermissionWithError(userId,applicationId,
291+
ResourceAction.MANAGE_APPLICATIONS))
292+
// remove old relations
293+
.then(bundleElementRelationService.deleteByBundleIdAndElementId(toBundleId,applicationId))
294+
.flatMap(b -> {
295+
if (StringUtils.isBlank(toBundleId)) {
296+
returnMono.empty();
297+
}
298+
returnbundleElementRelationService.create(toBundleId,applicationId);
277299
})
278300
.then();
279301
}

‎server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/bundle/BundleController.java‎

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
packageorg.lowcoder.api.bundle;
22

33
importlombok.RequiredArgsConstructor;
4-
importorg.lowcoder.api.application.ApplicationEndpoints;
54
importorg.lowcoder.api.bundle.view.BundleInfoView;
65
importorg.lowcoder.api.bundle.view.BundlePermissionView;
76
importorg.lowcoder.api.bundle.view.MarketplaceBundleInfoView;
@@ -98,14 +97,22 @@ public Mono<ResponseView<List<?>>> getElements(@RequestParam(value = "id", requi
9897
}
9998

10099
@Override
101-
publicMono<ResponseView<Void>>move(@PathVariable("id")StringapplicationLikeId,
102-
@RequestParam(value ="targetBundleId",required =false)StringtargetBundleId) {
103-
returnbundleApiService.move(applicationLikeId,targetBundleId)
100+
publicMono<ResponseView<Void>>moveApp(@PathVariable("id")StringapplicationId,
101+
@RequestParam(value ="fromBundleId")StringfromBundleId,
102+
@RequestParam(value ="toBundleId")StringtoBundleId) {
103+
returnbundleApiService.moveApp(applicationId,fromBundleId,toBundleId)
104104
//TODO: Event Type not defined yet
105105
// .then(businessEventPublisher.publishBundleCommonEvent(applicationLikeId, targetBundleId, BUNDLE_MOVE))
106106
.then(Mono.fromSupplier(() ->ResponseView.success(null)));
107107
}
108108

109+
@Override
110+
publicMono<ResponseView<Void>>addApp(@PathVariable("id")StringapplicationId,
111+
@RequestParam(value ="toBundleId")StringtoBundleId) {
112+
returnbundleApiService.addApp(applicationId,toBundleId)
113+
.then(Mono.fromSupplier(() ->ResponseView.success(null)));
114+
}
115+
109116
@Override
110117
publicMono<ResponseView<Void>>reorder(@PathVariable("bundleId")StringbundleId,
111118
@RequestParam(value ="elementIds",required =true)List<String>elementIds) {

‎server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/bundle/BundleEndpoints.java‎

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
importio.swagger.v3.oas.annotations.Operation;
55
importjakarta.annotation.Nullable;
66
importorg.apache.commons.lang3.BooleanUtils;
7-
importorg.lowcoder.api.application.ApplicationEndpoints;
87
importorg.lowcoder.api.bundle.view.BundleInfoView;
98
importorg.lowcoder.api.bundle.view.BundlePermissionView;
109
importorg.lowcoder.api.bundle.view.MarketplaceBundleInfoView;
@@ -126,13 +125,25 @@ public Mono<ResponseView<List<?>>> getElements(@RequestParam(value = "id", requi
126125

127126
@Operation(
128127
tags =TAG_BUNDLE_MANAGEMENT,
129-
operationId ="moveBundle",
130-
summary ="Move Bundle",
128+
operationId ="moveApp",
129+
summary ="MoveApp toBundle",
131130
description ="Relocate an application to a different bundle in Lowcoder using its unique ID."
132131
)
133-
@PutMapping("/move/{id}")
134-
publicMono<ResponseView<Void>>move(@PathVariable("id")StringapplicationLikeId,
135-
@RequestParam(value ="targetBundleId",required =false)StringtargetBundleId);
132+
@PutMapping("/moveApp/{id}")
133+
publicMono<ResponseView<Void>>moveApp(@PathVariable("id")StringapplicationId,
134+
@RequestParam(value ="fromBundleId")StringfromBundleId,
135+
@RequestParam(value ="toBundleId")StringtoBundleId);
136+
137+
@Operation(
138+
tags =TAG_BUNDLE_MANAGEMENT,
139+
operationId ="addApp",
140+
summary ="Add App to Bundle",
141+
description ="Add an application to a bundle in Lowcoder using its unique ID."
142+
)
143+
144+
@PutMapping("/addApp/{id}")
145+
publicMono<ResponseView<Void>>addApp(@PathVariable("id")StringapplicationId,
146+
@RequestParam(value ="toBundleId")StringtoBundleId);
136147

137148
@Operation(
138149
tags =TAG_BUNDLE_MANAGEMENT,

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp