DELETE
@@ -315,64 +304,64 @@
INSERT INTO t_block ( id
- , label
- , name
- , framework
- , content
- , assets
- , last_build_info
- , description
- , tags
- , latest_version
- , latest_history_id
- , screenshot
- , path
- , occupier_by
- , is_official
- , `public`
- , is_default
- , tiny_reserved
- , npm_name
- , i18n
- , platform_id
- , app_id
- , content_blocks
- , block_group_id
- , created_by
- , last_updated_by
- , created_time
- , last_updated_time
- , tenant_id
- , site_id)
+ , label
+ , name
+ , framework
+ , content
+ , assets
+ , last_build_info
+ , description
+ , tags
+ , latest_version
+ , latest_history_id
+ , screenshot
+ , path
+ , occupier_by
+ , is_official
+ , `public`
+ , is_default
+ , tiny_reserved
+ , npm_name
+ , i18n
+ , platform_id
+ , app_id
+ , content_blocks
+ , block_group_id
+ , created_by
+ , last_updated_by
+ , created_time
+ , last_updated_time
+ , tenant_id
+ , site_id)
VALUES ( #{id}
- , #{label}
- , #{name}
- , #{framework}
- , #{content}
- , #{assets}
- , #{lastBuildInfo}
- , #{description}
- , #{tags}
- , #{latestVersion}
- , #{latestHistoryId}
- , #{screenshot}
- , #{path}
- , #{occupierBy}
- , #{isOfficial}
- , #{publicStatus}
- , #{isDefault}
- , #{tinyReserved}
- , #{npmName}
- , #{i18n}
- , #{platformId}
- , #{appId}
- , #{contentBlocks}
- , #{blockGroupId}
- , #{createdBy}
- , #{lastUpdatedBy}
- , #{createdTime}
- , #{lastUpdatedTime}
- , #{tenantId}
- , #{siteId})
+ , #{label}
+ , #{name}
+ , #{framework}
+ , #{content}
+ , #{assets}
+ , #{lastBuildInfo}
+ , #{description}
+ , #{tags}
+ , #{latestVersion}
+ , #{latestHistoryId}
+ , #{screenshot}
+ , #{path}
+ , #{occupierBy}
+ , #{isOfficial}
+ , #{publicStatus}
+ , #{isDefault}
+ , #{tinyReserved}
+ , #{npmName}
+ , #{i18n}
+ , #{platformId}
+ , #{appId}
+ , #{contentBlocks}
+ , #{blockGroupId}
+ , #{createdBy}
+ , #{lastUpdatedBy}
+ , #{createdTime}
+ , #{lastUpdatedTime}
+ , #{tenantId}
+ , #{siteId})
From 493d1ec88a64e988e15a90b4a67e49ea1e768917 Mon Sep 17 00:00:00 2001
From: zjc <1569294420@qq.com>
Date: Sun, 3 Nov 2024 23:24:04 -0800
Subject: [PATCH 6/6] =?UTF-8?q?feat=EF=BC=9A=20Block?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../it/controller/BlockController.java | 21 +++++--------
.../it/controller/BlockGroupController.java | 26 ++++++----------
.../it/mapper/BlockGroupMapper.java | 31 ++++++++++++++++++-
.../it/mapper/BlockHistoryMapper.java | 1 -
.../it/model/dto/BlockParamDto.java | 20 ++++++++++++
.../service/material/BlockGroupService.java | 5 +--
.../it/service/material/BlockService.java | 5 +--
.../material/impl/BlockGroupServiceImpl.java | 22 +++++++------
.../material/impl/BlockServiceImpl.java | 23 +++++++++-----
9 files changed, 100 insertions(+), 54 deletions(-)
create mode 100644 src/main/java/com/tinyengine/it/model/dto/BlockParamDto.java
diff --git a/src/main/java/com/tinyengine/it/controller/BlockController.java b/src/main/java/com/tinyengine/it/controller/BlockController.java
index 620e5feb..203ae844 100644
--- a/src/main/java/com/tinyengine/it/controller/BlockController.java
+++ b/src/main/java/com/tinyengine/it/controller/BlockController.java
@@ -7,6 +7,7 @@
import com.tinyengine.it.mapper.BlockMapper;
import com.tinyengine.it.mapper.TenantMapper;
import com.tinyengine.it.model.dto.BlockDto;
+import com.tinyengine.it.model.dto.BlockParamDto;
import com.tinyengine.it.model.entity.*;
import com.tinyengine.it.service.material.BlockService;
import com.tinyengine.it.service.material.TaskRecordService;
@@ -23,7 +24,6 @@
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
-import java.util.regex.Pattern;
/**
*
@@ -51,7 +51,7 @@ public class BlockController {
/**
* 获取block列表信息
*
- * @param request request
+ * @param blockParamDto blockParamDto
* @return block列表信息
*/
@Operation(summary = "获取区块列表信息",
@@ -67,13 +67,8 @@ public class BlockController {
)
@SystemControllerLog(description = "获取区块列表api")
@GetMapping("/block/list")
- public Result> getAllBlocks(@RequestParam Map request) {
- String appId = request.get("appId");
- // 如果 appId 存在并且不匹配指定的正则表达式,则删除它
- if (appId != null && !Pattern.matches("^[1-9]+[0-9]*$", appId)) {
- request.remove("appId");
- }
- IPage blocksList = blockService.findBlocksByPagetionList(request);
+ public Result> getAllBlocks(@RequestBody BlockParamDto blockParamDto) {
+ IPage blocksList = blockService.findBlocksByPagetionList(blockParamDto);
List result = blocksList.getRecords();
return Result.success(result);
}
@@ -183,7 +178,7 @@ public Result deleteBlocks(@PathVariable Integer id) {
/**
* 生态中心区块列表分页查询
*
- * @param request request
+ * @param blockParamDto blockParamDto
* @return BlockDto
*/
@Operation(summary = "生态中心区块列表分页查询",
@@ -199,9 +194,8 @@ public Result deleteBlocks(@PathVariable Integer id) {
)
@SystemControllerLog(description = "生态中心区块列表分页查询api")
@GetMapping("/block")
- public Result> find(@RequestParam Map request) {
-
- IPage blocksIPage = blockService.findBlocksByPagetionList(request);
+ public Result> find(@RequestBody BlockParamDto blockParamDto) {
+ IPage blocksIPage = blockService.findBlocksByPagetionList(blockParamDto);
List blocksList = blocksIPage.getRecords();
List result = new ArrayList<>();
for (Block blocks : blocksList) {
@@ -252,7 +246,6 @@ public Result> allTags() {
@SystemControllerLog(description = "获取区块列表api")
@GetMapping("/block/list2")
public Result> getBlocks(@RequestBody Map request) {
-
IPage BlocksList = blockService.findBlocksByConditionPagetion(request);
return Result.success(BlocksList);
}
diff --git a/src/main/java/com/tinyengine/it/controller/BlockGroupController.java b/src/main/java/com/tinyengine/it/controller/BlockGroupController.java
index 8348be81..037291a4 100644
--- a/src/main/java/com/tinyengine/it/controller/BlockGroupController.java
+++ b/src/main/java/com/tinyengine/it/controller/BlockGroupController.java
@@ -69,7 +69,7 @@ public Result> getAllBlockGroups(@RequestParam(value = "id",
/**
* 创建区块分组
*
- * @param blockGroups blockGroups
+ * @param blockGroup blockGroup
* @return the list
*/
@Operation(summary = "创建区块分组",
@@ -85,23 +85,15 @@ public Result> getAllBlockGroups(@RequestParam(value = "id",
)
@SystemControllerLog(description = "创建区块分组")
@PostMapping("/block-groups/create")
- public Result> createBlockGroups(@Valid @RequestBody BlockGroup blockGroups) {
- List blockGroupsList = blockGroupService.findBlockGroupByCondition(blockGroups);
- if (blockGroupsList.isEmpty()) {
- blockGroupService.createBlockGroup(blockGroups);
- } else {
- return Result.failed(ExceptionEnum.CM003);
- }
- // 页面返回数据显示
- List blockGroupsListResult = blockGroupMapper.getBlockGroupsById(blockGroups.getId());
- return Result.success(blockGroupsListResult);
+ public Result> createBlockGroups(@Valid @RequestBody BlockGroup blockGroup) {
+ return blockGroupService.createBlockGroup(blockGroup);
}
/**
* 修改区块分组
*
- * @param id id
- * @param blockGroups blockGroups
+ * @param id id
+ * @param blockGroup blockGroup
* @return the list
*/
@Operation(summary = "修改区块分组",
@@ -118,11 +110,11 @@ public Result> createBlockGroups(@Valid @RequestBody BlockGr
)
@SystemControllerLog(description = "修改区块分组")
@PostMapping("/block-groups/update/{id}")
- public Result> updateBlockGroups(@Valid @PathVariable Integer id, @RequestBody BlockGroup blockGroups) {
- blockGroups.setId(id);
- blockGroupService.updateBlockGroupById(blockGroups);
+ public Result> updateBlockGroups(@Valid @PathVariable Integer id, @RequestBody BlockGroup blockGroup) {
+ blockGroup.setId(id);
+ blockGroupService.updateBlockGroupById(blockGroup);
// 页面返回数据显示
- List blockGroupsListResult = blockGroupMapper.getBlockGroupsById(blockGroups.getId());
+ List blockGroupsListResult = blockGroupMapper.getBlockGroupsById(blockGroup.getId());
return Result.success(blockGroupsListResult);
}
diff --git a/src/main/java/com/tinyengine/it/mapper/BlockGroupMapper.java b/src/main/java/com/tinyengine/it/mapper/BlockGroupMapper.java
index a125849c..c470ab8b 100644
--- a/src/main/java/com/tinyengine/it/mapper/BlockGroupMapper.java
+++ b/src/main/java/com/tinyengine/it/mapper/BlockGroupMapper.java
@@ -90,6 +90,35 @@ public interface BlockGroupMapper extends BaseMapper {
"GROUP BY bg.id")
List getBlockGroupsById(int blockGroupId);
+
+ /**
+ * 根据blockGroupIds获取区块分组信息以及关联的app和block信息
+ *
+ * @param ids the ids
+ * @return the list
+ */
+ @Results({
+ @Result(column = "app", property = "appId"),
+ @Result(column = "app", property = "app",
+ one = @One(select = "com.tinyengine.it.mapper.AppMapper.queryAppById")),
+ @Result(column = "block_group_id", javaType = List.class, property = "blocks",
+ many = @Many(select = "com.tinyengine.it.mapper.BlockMapper.findBlocksByBlockGroupId"))
+ })
+ @Select(""
+ )
+ List getBlockGroupsByIds(List ids);
+
+
/**
* 根据appId获取区块分组信息以及关联的app和block信息
*
@@ -110,7 +139,7 @@ public interface BlockGroupMapper extends BaseMapper {
"where bg.app_id = #{appId} " +
"GROUP BY bg.id")
List findGroupByAppId(int appId);
-
+
/**
* 根据区块id查询区块分组信息
diff --git a/src/main/java/com/tinyengine/it/mapper/BlockHistoryMapper.java b/src/main/java/com/tinyengine/it/mapper/BlockHistoryMapper.java
index 06ab39ae..053d6079 100644
--- a/src/main/java/com/tinyengine/it/mapper/BlockHistoryMapper.java
+++ b/src/main/java/com/tinyengine/it/mapper/BlockHistoryMapper.java
@@ -105,7 +105,6 @@ List queryBlockAndVersion(@Param("ids") List ids,
* @return the list
*/
@Select("select * from t_block_history bh " +
- "left join t_block b on bh.ref_id = b.id " +
"where bh.ref_id = #{blockId}")
List findBlockHistoriesByBlockId(int blockId);
}
\ No newline at end of file
diff --git a/src/main/java/com/tinyengine/it/model/dto/BlockParamDto.java b/src/main/java/com/tinyengine/it/model/dto/BlockParamDto.java
new file mode 100644
index 00000000..c1744218
--- /dev/null
+++ b/src/main/java/com/tinyengine/it/model/dto/BlockParamDto.java
@@ -0,0 +1,20 @@
+package com.tinyengine.it.model.dto;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import lombok.Data;
+
+@Data
+public class BlockParamDto {
+ private String appId;
+ private String sort;
+
+ @JsonProperty("name_cn")
+ private String name;
+
+ private String description;
+ private String label;
+ private String limit;
+ private String start;
+
+
+}
diff --git a/src/main/java/com/tinyengine/it/service/material/BlockGroupService.java b/src/main/java/com/tinyengine/it/service/material/BlockGroupService.java
index f086ae5c..4b5b1aab 100644
--- a/src/main/java/com/tinyengine/it/service/material/BlockGroupService.java
+++ b/src/main/java/com/tinyengine/it/service/material/BlockGroupService.java
@@ -1,5 +1,6 @@
package com.tinyengine.it.service.material;
+import com.tinyengine.it.common.base.Result;
import com.tinyengine.it.model.dto.BlockGroupDto;
import com.tinyengine.it.model.entity.BlockGroup;
@@ -56,9 +57,9 @@ public interface BlockGroupService {
* 新增表t_block_group数据
*
* @param blockGroup the block group
- * @return the integer
+ * @return the result
*/
- Integer createBlockGroup(BlockGroup blockGroup);
+ Result> createBlockGroup(BlockGroup blockGroup);
/**
* 根据ids或者appId获取区块信息
diff --git a/src/main/java/com/tinyengine/it/service/material/BlockService.java b/src/main/java/com/tinyengine/it/service/material/BlockService.java
index acb3405e..332f28eb 100644
--- a/src/main/java/com/tinyengine/it/service/material/BlockService.java
+++ b/src/main/java/com/tinyengine/it/service/material/BlockService.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.tinyengine.it.common.base.Result;
import com.tinyengine.it.model.dto.BlockDto;
+import com.tinyengine.it.model.dto.BlockParamDto;
import com.tinyengine.it.model.entity.Block;
import com.tinyengine.it.model.entity.User;
@@ -67,10 +68,10 @@ public interface BlockService {
/**
* 区块分页查询
*
- * @param request request
+ * @param blockParamDto blockParamDto
* @return the ipage
*/
- IPage findBlocksByPagetionList(Map request);
+ IPage findBlocksByPagetionList(BlockParamDto blockParamDto);
/**
* 查找表中所有tags
diff --git a/src/main/java/com/tinyengine/it/service/material/impl/BlockGroupServiceImpl.java b/src/main/java/com/tinyengine/it/service/material/impl/BlockGroupServiceImpl.java
index 12b40c5e..21f994fe 100644
--- a/src/main/java/com/tinyengine/it/service/material/impl/BlockGroupServiceImpl.java
+++ b/src/main/java/com/tinyengine/it/service/material/impl/BlockGroupServiceImpl.java
@@ -1,5 +1,7 @@
package com.tinyengine.it.service.material.impl;
+import com.tinyengine.it.common.base.Result;
+import com.tinyengine.it.common.exception.ExceptionEnum;
import com.tinyengine.it.mapper.BlockGroupMapper;
import com.tinyengine.it.model.dto.BlockGroupDto;
import com.tinyengine.it.model.entity.BlockGroup;
@@ -86,8 +88,16 @@ public Integer updateBlockGroupById(BlockGroup blockGroup) {
* @return insert number
*/
@Override
- public Integer createBlockGroup(BlockGroup blockGroup) {
- return blockGroupMapper.createBlockGroup(blockGroup);
+ public Result> createBlockGroup(BlockGroup blockGroup) {
+ List blockGroupsList = blockGroupMapper.queryBlockGroupByCondition(blockGroup);
+ if (blockGroupsList.isEmpty()) {
+ blockGroupMapper.createBlockGroup(blockGroup);
+ } else {
+ return Result.failed(ExceptionEnum.CM003);
+ }
+ // 页面返回数据显示
+ List blockGroupsListResult = blockGroupMapper.getBlockGroupsById(blockGroup.getId());
+ return Result.success(blockGroupsListResult);
}
/**
@@ -102,14 +112,8 @@ public List getBlockGroupByIdsOrAppId(List ids, Integer
// 此接收到的两个参数不一定同时存在
BlockGroup blockGroups = new BlockGroup();
List blockGroupsListResult = new ArrayList<>();
- List blockGroupsListTemp = new ArrayList<>();
if (ids != null) {
- for (Integer id : ids) {
- blockGroups.setId(id);
- blockGroupsListTemp = blockGroupMapper.getBlockGroupsById(id);
- blockGroupsListResult.addAll(blockGroupsListTemp);
- }
-
+ blockGroupsListResult = blockGroupMapper.getBlockGroupsByIds(ids);
}
if (appId != null) {
blockGroupsListResult = blockGroupMapper.findGroupByAppId(appId);
diff --git a/src/main/java/com/tinyengine/it/service/material/impl/BlockServiceImpl.java b/src/main/java/com/tinyengine/it/service/material/impl/BlockServiceImpl.java
index 402f75c6..95836b4e 100644
--- a/src/main/java/com/tinyengine/it/service/material/impl/BlockServiceImpl.java
+++ b/src/main/java/com/tinyengine/it/service/material/impl/BlockServiceImpl.java
@@ -15,6 +15,7 @@
import com.tinyengine.it.mapper.BlockMapper;
import com.tinyengine.it.mapper.UserMapper;
import com.tinyengine.it.model.dto.BlockDto;
+import com.tinyengine.it.model.dto.BlockParamDto;
import com.tinyengine.it.model.entity.App;
import com.tinyengine.it.model.entity.Block;
import org.springframework.beans.BeanUtils;
@@ -34,6 +35,7 @@
import java.io.*;
import java.util.*;
+import java.util.regex.Pattern;
import java.util.stream.Collectors;
import java.util.stream.Stream;
@@ -276,18 +278,23 @@ public boolean isBlock(Map, ?> schema) {
/**
* 生态中心区块列表分页查询
*
- * @param request request
+ * @param blockParamDto blockParamDto
* @return block
*/
@Override
- public IPage findBlocksByPagetionList(Map request) {
+ public IPage findBlocksByPagetionList(BlockParamDto blockParamDto) {
+ String appId = blockParamDto.getAppId();
+ // 如果 appId 存在并且不匹配指定的正则表达式,则删除它
+ if (appId != null && !Pattern.matches("^[1-9]+[0-9]*$", appId)) {
+ blockParamDto.setAppId(null);//设置成null达到map中remove的效果
+ }
// 获取查询条件
- String sort = request.get("sort"); // nodejs中页面传参"updated_at:DESC"
- String nameCn = request.get("name_cn");
- String description = request.get("description");
- String label = request.get("label");
- int limit = request.get("limit") != null ? Integer.parseInt(request.get("limit")) : 0;
- int start = request.get("start") != null ? Integer.parseInt(request.get("start")) : 0;
+ String sort = blockParamDto.getSort(); // nodejs中页面传参"updated_at:DESC"
+ String nameCn = blockParamDto.getName();
+ String description = blockParamDto.getDescription();
+ String label = blockParamDto.getLabel();
+ int limit = blockParamDto.getLimit() != null ? Integer.parseInt(blockParamDto.getLimit()) : 0;
+ int start = blockParamDto.getStart() != null ? Integer.parseInt(blockParamDto.getStart()) : 0;
// 把start、limit转为java分页的pageNum、pageSize
int pageNum = start == 0 && limit == 0 ? 1 : (start / limit) + 1;
int pageSize = limit == 0 ? 10 : limit;