2222import org .lowcoder .api .home .UserHomeApiService ;
2323import org .lowcoder .api .home .UserHomepageView ;
2424import org .lowcoder .api .util .BusinessEventPublisher ;
25+ import org .lowcoder .api .util .GIDUtil ;
2526import org .lowcoder .domain .application .model .Application ;
2627import org .lowcoder .domain .application .model .ApplicationRequestType ;
2728import org .lowcoder .domain .application .model .ApplicationStatus ;
@@ -43,6 +44,7 @@ public class ApplicationController implements ApplicationEndpoints {
4344 private final ApplicationApiService applicationApiService ;
4445 private final BusinessEventPublisher businessEventPublisher ;
4546 private final SessionUserService sessionUserService ;
47+ private final GIDUtil gidUtil ;
4648
4749 @ Override
4850 public Mono <ResponseView <ApplicationView >> create (@ RequestBody CreateApplicationRequest createApplicationRequest ) {
@@ -60,14 +62,16 @@ public Mono<ResponseView<ApplicationView>> createFromTemplate(@RequestParam Stri
6062
6163 @ Override
6264 public Mono <ResponseView <Boolean >> recycle (@ PathVariable String applicationId ) {
63- return applicationApiService .recycle (applicationId )
65+ String appId = gidUtil .convertApplicationIdToObjectId (applicationId );
66+ return applicationApiService .recycle (appId )
6467 .delayUntil (__ -> businessEventPublisher .publishApplicationCommonEvent (applicationId , null , APPLICATION_RECYCLED ))
6568 .map (ResponseView ::success );
6669 }
6770
6871 @ Override
6972 public Mono <ResponseView <Boolean >> restore (@ PathVariable String applicationId ) {
70- return applicationApiService .restore (applicationId )
73+ String appId = gidUtil .convertApplicationIdToObjectId (applicationId );
74+ return applicationApiService .restore (appId )
7175 .delayUntil (__ -> businessEventPublisher .publishApplicationCommonEvent (applicationId , null , APPLICATION_RESTORE ))
7276 .map (ResponseView ::success );
7377 }
@@ -81,53 +85,60 @@ public Mono<ResponseView<List<ApplicationInfoView>>> getRecycledApplications() {
8185
8286 @ Override
8387 public Mono <ResponseView <ApplicationView >> delete (@ PathVariable String applicationId ) {
84- return applicationApiService .delete (applicationId )
88+ String appId = gidUtil .convertApplicationIdToObjectId (applicationId );
89+ return applicationApiService .delete (appId )
8590 .delayUntil (applicationView -> businessEventPublisher .publishApplicationCommonEvent (applicationView , APPLICATION_DELETE ))
8691 .map (ResponseView ::success );
8792 }
8893
8994 @ Override
9095 public Mono <ResponseView <ApplicationView >> getEditingApplication (@ PathVariable String applicationId ) {
91- return applicationApiService .getEditingApplication (applicationId )
92- .delayUntil (__ -> applicationApiService .updateUserApplicationLastViewTime (applicationId ))
96+ String appId = gidUtil .convertApplicationIdToObjectId (applicationId );
97+ return applicationApiService .getEditingApplication (appId )
98+ .delayUntil (__ -> applicationApiService .updateUserApplicationLastViewTime (appId ))
9399 .map (ResponseView ::success );
94100 }
95101
96102 @ Override
97103 public Mono <ResponseView <ApplicationView >> getPublishedApplication (@ PathVariable String applicationId ) {
98- return applicationApiService .getPublishedApplication (applicationId , ApplicationRequestType .PUBLIC_TO_ALL )
99- .delayUntil (applicationView -> applicationApiService .updateUserApplicationLastViewTime (applicationId ))
104+ String appId = gidUtil .convertApplicationIdToObjectId (applicationId );
105+ return applicationApiService .getPublishedApplication (appId , ApplicationRequestType .PUBLIC_TO_ALL )
106+ .delayUntil (applicationView -> applicationApiService .updateUserApplicationLastViewTime (appId ))
100107 .delayUntil (applicationView -> businessEventPublisher .publishApplicationCommonEvent (applicationView , APPLICATION_VIEW ))
101108 .map (ResponseView ::success );
102109 }
103110
104111 @ Override
105112 public Mono <ResponseView <ApplicationView >> getPublishedMarketPlaceApplication (@ PathVariable String applicationId ) {
106- return applicationApiService .getPublishedApplication (applicationId , ApplicationRequestType .PUBLIC_TO_MARKETPLACE )
107- .delayUntil (applicationView -> applicationApiService .updateUserApplicationLastViewTime (applicationId ))
113+ String appId = gidUtil .convertApplicationIdToObjectId (applicationId );
114+ return applicationApiService .getPublishedApplication (appId , ApplicationRequestType .PUBLIC_TO_MARKETPLACE )
115+ .delayUntil (applicationView -> applicationApiService .updateUserApplicationLastViewTime (appId ))
108116 .delayUntil (applicationView -> businessEventPublisher .publishApplicationCommonEvent (applicationView , APPLICATION_VIEW ))
109117 .map (ResponseView ::success );
110118 }
111119
112120 @ Override
113121 public Mono <ResponseView <ApplicationView >> getAgencyProfileApplication (@ PathVariable String applicationId ) {
114- return applicationApiService .getPublishedApplication (applicationId , ApplicationRequestType .AGENCY_PROFILE )
115- .delayUntil (applicationView -> applicationApiService .updateUserApplicationLastViewTime (applicationId ))
122+ String appId = gidUtil .convertApplicationIdToObjectId (applicationId );
123+ return applicationApiService .getPublishedApplication (appId , ApplicationRequestType .AGENCY_PROFILE )
124+ .delayUntil (applicationView -> applicationApiService .updateUserApplicationLastViewTime (appId ))
116125 .delayUntil (applicationView -> businessEventPublisher .publishApplicationCommonEvent (applicationView , APPLICATION_VIEW ))
117126 .map (ResponseView ::success );
118127 }
119128
120129 @ Override
121130 public Mono <ResponseView <ApplicationView >> update (@ PathVariable String applicationId ,
122131 @ RequestBody Application newApplication ) {
123- return applicationApiService .update (applicationId , newApplication )
132+ String appId = gidUtil .convertApplicationIdToObjectId (applicationId );
133+ return applicationApiService .update (appId , newApplication )
124134 .delayUntil (applicationView -> businessEventPublisher .publishApplicationCommonEvent (applicationView , APPLICATION_UPDATE ))
125135 .map (ResponseView ::success );
126136 }
127137
128138 @ Override
129139 public Mono <ResponseView <ApplicationView >> publish (@ PathVariable String applicationId ) {
130- return applicationApiService .publish (applicationId )
140+ String appId = gidUtil .convertApplicationIdToObjectId (applicationId );
141+ return applicationApiService .publish (appId )
131142 .map (ResponseView ::success );
132143 }
133144
@@ -168,33 +179,36 @@ public Mono<ResponseView<List<MarketplaceApplicationInfoView>>> getAgencyProfile
168179 public Mono <ResponseView <Boolean >> updatePermission (@ PathVariable String applicationId ,
169180 @ PathVariable String permissionId ,
170181 @ RequestBody UpdatePermissionRequest updatePermissionRequest ) {
182+ String appId = gidUtil .convertApplicationIdToObjectId (applicationId );
171183 ResourceRole role = ResourceRole .fromValue (updatePermissionRequest .role ());
172184 if (role == null ) {
173185 return ofError (INVALID_PARAMETER , "INVALID_PARAMETER" , updatePermissionRequest );
174186 }
175187
176- return applicationApiService .updatePermission (applicationId , permissionId , role )
188+ return applicationApiService .updatePermission (appId , permissionId , role )
177189 .map (ResponseView ::success );
178190 }
179191
180192 @ Override
181193 public Mono <ResponseView <Boolean >> removePermission (
182194 @ PathVariable String applicationId ,
183195 @ PathVariable String permissionId ) {
196+ String appId = gidUtil .convertApplicationIdToObjectId (applicationId );
184197
185- return applicationApiService .removePermission (applicationId , permissionId )
198+ return applicationApiService .removePermission (appId , permissionId )
186199 .map (ResponseView ::success );
187200 }
188201
189202 @ Override
190203 public Mono <ResponseView <Boolean >> grantPermission (
191204 @ PathVariable String applicationId ,
192205 @ RequestBody BatchAddPermissionRequest request ) {
206+ String appId = gidUtil .convertApplicationIdToObjectId (applicationId );
193207 ResourceRole role = ResourceRole .fromValue (request .role ());
194208 if (role == null ) {
195209 return ofError (INVALID_PARAMETER , "INVALID_PARAMETER" , request .role ());
196210 }
197- return applicationApiService .grantPermission (applicationId ,
211+ return applicationApiService .grantPermission (appId ,
198212 emptyIfNull (request .userIds ()),
199213 emptyIfNull (request .groupIds ()),
200214 role )
@@ -204,28 +218,32 @@ public Mono<ResponseView<Boolean>> grantPermission(
204218
205219 @ Override
206220 public Mono <ResponseView <ApplicationPermissionView >> getApplicationPermissions (@ PathVariable String applicationId ) {
207- return applicationApiService .getApplicationPermissions (applicationId )
221+ String appId = gidUtil .convertApplicationIdToObjectId (applicationId );
222+ return applicationApiService .getApplicationPermissions (appId )
208223 .map (ResponseView ::success );
209224 }
210225
211226 @ Override
212227 public Mono <ResponseView <Boolean >> setApplicationPublicToAll (@ PathVariable String applicationId ,
213228 @ RequestBody ApplicationPublicToAllRequest request ) {
214- return applicationApiService .setApplicationPublicToAll (applicationId , request .publicToAll ())
229+ String appId = gidUtil .convertApplicationIdToObjectId (applicationId );
230+ return applicationApiService .setApplicationPublicToAll (appId , request .publicToAll ())
215231 .map (ResponseView ::success );
216232 }
217233
218234 @ Override
219235 public Mono <ResponseView <Boolean >> setApplicationPublicToMarketplace (@ PathVariable String applicationId ,
220236 @ RequestBody ApplicationPublicToMarketplaceRequest request ) {
221- return applicationApiService .setApplicationPublicToMarketplace (applicationId , request )
237+ String appId = gidUtil .convertApplicationIdToObjectId (applicationId );
238+ return applicationApiService .setApplicationPublicToMarketplace (appId , request )
222239 .map (ResponseView ::success );
223240 }
224241
225242 @ Override
226243 public Mono <ResponseView <Boolean >> setApplicationAsAgencyProfile (@ PathVariable String applicationId ,
227244 @ RequestBody ApplicationAsAgencyProfileRequest request ) {
228- return applicationApiService .setApplicationAsAgencyProfile (applicationId , request .agencyProfile ())
245+ String appId = gidUtil .convertApplicationIdToObjectId (applicationId );
246+ return applicationApiService .setApplicationAsAgencyProfile (appId , request .agencyProfile ())
229247 .map (ResponseView ::success );
230248 }
231249
0 commit comments