This is an automated email from the ASF dual-hosted git repository.

benjobs pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/incubator-streampark.git


The following commit(s) were added to refs/heads/dev by this push:
     new e8edfc49c [Feature] Add an interface that returns all variables to 
support a better user experience when referencing variables on the front end 
(#1929)
e8edfc49c is described below

commit e8edfc49c12b8805a6bfe7167f189be1f296ab00
Author: macksonmu <[email protected]>
AuthorDate: Mon Oct 31 12:13:09 2022 +0800

    [Feature] Add an interface that returns all variables to support a better 
user experience when referencing variables on the front end (#1929)
    
    * [Feature] Put the variable menu under StreamPark in pgsql-data.sql and 
1.2.4.sql #1889
    
    * [Feature] Supports viewing which applications a variable is referenced by 
#1876
    
    * [Feature] Add an interface that returns all variables to support a better 
user experience when referencing variables on the front end #1780
---
 .../src/api/system/variable.ts                         |  2 +-
 .../console/core/controller/VariableController.java    | 13 +++++++------
 .../streampark/console/core/mapper/VariableMapper.java |  4 +---
 .../console/core/service/VariableService.java          |  8 ++++++++
 .../console/core/service/impl/VariableServiceImpl.java | 18 +++++++++++++++++-
 .../src/main/resources/mapper/core/VariableMapper.xml  | 11 +++++++++++
 .../streampark-console-webapp/src/api/index.js         |  2 +-
 7 files changed, 46 insertions(+), 12 deletions(-)

diff --git 
a/streampark-console/streampark-console-newui/src/api/system/variable.ts 
b/streampark-console/streampark-console-newui/src/api/system/variable.ts
index 77e2a5c54..54e1341a7 100644
--- a/streampark-console/streampark-console-newui/src/api/system/variable.ts
+++ b/streampark-console/streampark-console-newui/src/api/system/variable.ts
@@ -21,7 +21,7 @@ import { BasicTableParams } from '../model/baseModel';
 import { VariableDeleteParam, VariableListRecord, VariableParam } from 
'./model/variableModel';
 
 enum VARIABLE_API {
-  LIST = '/variable/list',
+  LIST = '/variable/page',
   DEPEND = '/variable/dependApps',
   UPDATE = '/variable/update',
   POST = '/variable/post',
diff --git 
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/controller/VariableController.java
 
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/controller/VariableController.java
index ce52a0bea..92dd3fb77 100644
--- 
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/controller/VariableController.java
+++ 
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/controller/VariableController.java
@@ -56,21 +56,22 @@ public class VariableController {
      * @param variable
      * @return
      */
-    @PostMapping("list")
+    @PostMapping("page")
     @RequiresPermissions("variable:view")
-    public RestResponse variableList(RestRequest restRequest, Variable 
variable) {
+    public RestResponse page(RestRequest restRequest, Variable variable) {
         IPage<Variable> variableList = variableService.page(variable, 
restRequest);
         return RestResponse.success(variableList);
     }
 
     /**
-     * Get all variables under the current team.
+     * Get variables through team and search keywords.
      * @param teamId
+     * @param keyword Fuzzy search keywords through variable code or 
description, Nullable.
      * @return
      */
-    @PostMapping("all")
-    public RestResponse all(@RequestParam Long teamId) {
-        List<Variable> variableList = variableService.findByTeamId(teamId);
+    @PostMapping("list")
+    public RestResponse variableList(@RequestParam Long teamId, String 
keyword) {
+        List<Variable> variableList = variableService.findByTeamId(teamId, 
keyword);
         return RestResponse.success(variableList);
     }
 
diff --git 
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/VariableMapper.java
 
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/VariableMapper.java
index 1676a8eba..fd60c541b 100644
--- 
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/VariableMapper.java
+++ 
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/VariableMapper.java
@@ -23,13 +23,11 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.apache.ibatis.annotations.Param;
-import org.apache.ibatis.annotations.Select;
 
 import java.util.List;
 
 public interface VariableMapper extends BaseMapper<Variable> {
     IPage<Variable> page(Page<Variable> page, @Param("variable") Variable 
variable);
 
-    @Select("select * from t_variable where team_id = #{teamId}")
-    List<Variable> selectByTeamId(@Param("teamId") Long teamId);
+    List<Variable> selectByTeamId(@Param("teamId") Long teamId, 
@Param("keyword") String keyword);
 }
diff --git 
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/VariableService.java
 
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/VariableService.java
index 1cd21a8d2..ec7b51701 100644
--- 
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/VariableService.java
+++ 
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/VariableService.java
@@ -44,6 +44,14 @@ public interface VariableService extends IService<Variable> {
      */
     List<Variable> findByTeamId(Long teamId);
 
+    /**
+     * Get variables through team and search keywords.
+     * @param teamId
+     * @param keyword Fuzzy search keywords through variable code or 
description, Nullable.
+     * @return
+     */
+    List<Variable> findByTeamId(Long teamId, String keyword);
+
     long countByTeamId(Long teamId);
 
     /**
diff --git 
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/VariableServiceImpl.java
 
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/VariableServiceImpl.java
index 8676b903e..a74bc5267 100644
--- 
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/VariableServiceImpl.java
+++ 
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/VariableServiceImpl.java
@@ -122,9 +122,25 @@ public class VariableServiceImpl extends 
ServiceImpl<VariableMapper, Variable> i
             .eq(Variable::getTeamId, teamId));
     }
 
+    /**
+     * get variables through team
+     * @param teamId
+     * @return
+     */
     @Override
     public List<Variable> findByTeamId(Long teamId) {
-        return baseMapper.selectByTeamId(teamId);
+        return findByTeamId(teamId, null);
+    }
+
+    /**
+     * Get variables through team and search keywords.
+     * @param teamId
+     * @param keyword Fuzzy search keywords through variable code or 
description, Nullable.
+     * @return
+     */
+    @Override
+    public List<Variable> findByTeamId(Long teamId, String keyword) {
+        return baseMapper.selectByTeamId(teamId, keyword);
     }
 
     /**
diff --git 
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/VariableMapper.xml
 
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/VariableMapper.xml
index 397731bfb..8e7172555 100644
--- 
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/VariableMapper.xml
+++ 
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/VariableMapper.xml
@@ -45,4 +45,15 @@
         </where>
     </select>
 
+    <select id="selectByTeamId" resultType="variable">
+        select *
+        from t_variable
+        <where>
+            team_id = #{teamId}
+            <if test="keyword != null and keyword != ''">
+                and variable_code like concat('%', #{keyword}, '%') or 
description like concat('%', #{keyword}, '%')
+            </if>
+        </where>
+    </select>
+
 </mapper>
diff --git a/streampark-console/streampark-console-webapp/src/api/index.js 
b/streampark-console/streampark-console-webapp/src/api/index.js
index 1bc16589a..6da2a102b 100644
--- a/streampark-console/streampark-console-webapp/src/api/index.js
+++ b/streampark-console/streampark-console-webapp/src/api/index.js
@@ -211,7 +211,7 @@ export default {
     ROUTER: '/menu/router'
   },
   Variable: {
-    LIST: '/variable/list',
+    LIST: '/variable/page',
     DEPEND: '/variable/dependApps',
     UPDATE: '/variable/update',
     POST: '/variable/post',

Reply via email to