WeBankFinTech / DataSphereStudio

DataSphereStudio is a one stop data application development& management portal, covering scenarios including data exchange, desensitization/cleansing, analysis/mining, quality measurement, visualization, and task scheduling.
https://github.com/WeBankFinTech/DataSphereStudio-Doc
Apache License 2.0
3.04k stars 999 forks source link

[Feature] An isMicroApp field is added to the appconns interface to indicate the micro application #1087

Closed wxyn closed 1 year ago

wxyn commented 1 year ago

Search before asking

Problem Description

The pages of DSS can be embedded into third-party applications. Due to historical reasons, early applications were all embedded in iframes. Later, after technological transformation, some applications were upgraded to micro application methods. However, due to human scheduling and other reasons, not all applications have completed micro application modifications, so currently there are two types of embedding methods coexisting. In order for the front-end to better identify which method the application is embedded through, it is necessary to mark the embedding method of the application when obtaining the application menu.

Description

As a DSS user, after logging in to DSS, click the Product menu button in the upper left corner to open the product menu and trigger the front-end interface.

The front-end invokes the interface to obtain the appconn information that has been added to the DSS, and the DSS back-end returns the appconn information, in which a field is isMicroApp.

The user clicks the menu and enters an application. The front-end determines whether the application is a micro application by the value of isMicroApp field of appconn information corresponding to the menu. If yes, the application is rendered as a micro application.

Use case

No response

solutions

  1. Main logic:

1). The data on the left menu of dss is obtained from the appconns interface. Add an isMicroApp field to this interface, isMicroApp=true indicates micro application, isMicroApp=false or no such field indicates non-micro application.

2). Add a is_micro_app field to the dss_appconn table to record whether appconn is a micro front-end.

3). Every time the appconn information is obtained, the value of is_micro_app field is found in the dss_appconn table and returned to the front-end.

4). The front-end passes the isMicroApp result and decides how to render it.

  1. Time sequence diagram image

  2. Design the front and rear interfaces Interface path:/api/rest_j/_v1/dss/framework/workspace/workspaces/{workspaceId}/appconns

image

image

Anything else

No response

Are you willing to submit a PR?

zqburde commented 1 year ago

Add it in DSS1.1.2