diff --git a/application/pom.xml b/application/pom.xml
index 84bc59f..0bc6af1 100644
--- a/application/pom.xml
+++ b/application/pom.xml
@@ -133,6 +133,13 @@
com.thing.modules
filter-rule
+
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ test
+
@@ -146,6 +153,13 @@
org.apache.maven.plugins
maven-compiler-plugin
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+ true
+
+
diff --git a/common/util/src/main/java/com/thing/common/util/thread/TBExecutors.java b/common/util/src/main/java/com/thing/common/util/thread/TBExecutors.java
deleted file mode 100644
index 7534947..0000000
--- a/common/util/src/main/java/com/thing/common/util/thread/TBExecutors.java
+++ /dev/null
@@ -1,37 +0,0 @@
-
-package com.thing.common.util.thread;
-
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.ForkJoinPool;
-
-public class TBExecutors {
-
- /**
- *从ExecutorService分叉以提供线程轮询名称的方法
- *
- * 创建一个线程池,保持足够的线程来支持
- * 给定的并行性级别,并且可能使用多个队列来
- * 减少争用。并行度级别对应于
- * 最大数量的线程积极参与,或可
- * 参与,任务处理。线程的实际数量可能
- * 动态增长和收缩。偷工作的人不会
- * 保证提交任务的顺序
- * 执行。
- *
- * @param parallelism the targeted parallelism level
- * @param namePrefix used to define thread name
- * @return the newly created thread pool
- * @throws IllegalArgumentException if {@code parallelism <= 0}
- * @since 1.8
- */
- public static ExecutorService newWorkStealingPool(int parallelism, String namePrefix) {
- return new ForkJoinPool(parallelism,
- new ForkJoinWorkerThreadFactory(namePrefix),
- null, true);
- }
-
- public static ExecutorService newWorkStealingPool(int parallelism, Class clazz) {
- return newWorkStealingPool(parallelism, clazz.getSimpleName());
- }
-
-}
diff --git a/modules/filter-rule/pom.xml b/modules/filter-rule/pom.xml
index 14f28b5..a3161b8 100644
--- a/modules/filter-rule/pom.xml
+++ b/modules/filter-rule/pom.xml
@@ -21,5 +21,11 @@
com.thing.modules
thing
+
+ org.springframework.boot
+ spring-boot-dependencies
+ ${spring-boot.version}
+ pom
+
\ No newline at end of file
diff --git a/modules/filter-rule/src/main/java/com/thing/filter/rule/listener/FilterLogSaveEventListener.java b/modules/filter-rule/src/main/java/com/thing/filter/rule/listener/FilterLogSaveEventListener.java
index 5e51953..88fcac2 100644
--- a/modules/filter-rule/src/main/java/com/thing/filter/rule/listener/FilterLogSaveEventListener.java
+++ b/modules/filter-rule/src/main/java/com/thing/filter/rule/listener/FilterLogSaveEventListener.java
@@ -2,13 +2,12 @@ package com.thing.filter.rule.listener;
import static com.thing.filter.rule.event.FilterSuccessEvent.FILTER_SUCCESS;
-import com.mybatisflex.core.keygen.impl.SnowFlakeIDKeyGenerator;
-
import com.thing.common.core.enumeration.AggType;
import com.thing.common.core.utils.DateTimeUtils;
import com.thing.common.core.utils.MapUtil;
import com.thing.common.data.tskv.TsKvDTO;
import com.thing.common.data.tskv.TsKvEntity;
+import com.thing.common.orm.utils.IdGenerator;
import com.thing.common.tskv.event.FilterLogSaveEvent;
import com.thing.common.tskv.service.TsKvService;
import com.thing.filter.rule.dto.FilterRuleDTO;
@@ -19,21 +18,18 @@ import com.thing.filter.rule.event.FilterSuccessEvent;
import com.thing.filter.rule.service.FilterLogService;
import com.thing.filter.rule.service.FilterRuleService;
import com.thing.queue.util.Topics;
-
+import java.time.LocalDateTime;
+import java.util.*;
+import java.util.function.Function;
+import java.util.stream.Collectors;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
-
import org.apache.commons.lang3.tuple.Pair;
import org.springframework.context.ApplicationEventPublisher;
import org.springframework.context.event.EventListener;
import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
-import java.time.LocalDateTime;
-import java.util.*;
-import java.util.function.Function;
-import java.util.stream.Collectors;
-
/**
* @author siyang
* @date 2024-03-21
@@ -200,7 +196,7 @@ public class FilterLogSaveEventListener {
.appendSourceInfo(detail, tskv.getTs(), tskv.getVal())
.setStatus(LogStatus.MISMATCH.getCode());
filterLog
- .setId(new SnowFlakeIDKeyGenerator().nextId())
+ .setId(IdGenerator.nextId())
.setTenantCode(detail.getTenantCode())
.setCompanyId(detail.getCompanyId())
.setDeptId(detail.getDeptId())
diff --git a/modules/filter-rule/src/main/java/com/thing/filter/rule/service/impl/FilterLogServiceImpl.java b/modules/filter-rule/src/main/java/com/thing/filter/rule/service/impl/FilterLogServiceImpl.java
index 7a221ee..7ec16b2 100644
--- a/modules/filter-rule/src/main/java/com/thing/filter/rule/service/impl/FilterLogServiceImpl.java
+++ b/modules/filter-rule/src/main/java/com/thing/filter/rule/service/impl/FilterLogServiceImpl.java
@@ -1,6 +1,8 @@
package com.thing.filter.rule.service.impl;
-import cn.hutool.core.map.MapUtil;
+
+import static com.thing.filter.rule.entity.table.FilterLogEntityTableDef.FILTER_LOG_ENTITY;
+import static com.thing.filter.rule.entity.table.FilterRuleEntityTableDef.FILTER_RULE_ENTITY;
import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.query.QueryWrapper;
@@ -13,16 +15,12 @@ import com.thing.filter.rule.enumeration.LogStatus;
import com.thing.filter.rule.mapper.FilterLogMapper;
import com.thing.filter.rule.service.FilterLogService;
import com.thing.sys.security.context.UserContext;
-
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.stereotype.Service;
-
import java.util.List;
import java.util.Map;
import java.util.Objects;
-
-import static com.thing.filter.rule.entity.table.FilterLogEntityTableDef.FILTER_LOG_ENTITY;
-import static com.thing.filter.rule.entity.table.FilterRuleEntityTableDef.FILTER_RULE_ENTITY;
+import org.apache.commons.collections4.MapUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.stereotype.Service;
/**
* 过滤日志
@@ -38,8 +36,8 @@ public class FilterLogServiceImpl extends BaseServiceImpl params) {
- String filterRuleName = MapUtil.getStr(params, "filterRuleName");
- Integer status = MapUtil.getInt(params, "status");
+ String filterRuleName = MapUtils.getString(params, "filterRuleName");
+ Integer status = MapUtils.getInteger(params, "status");
return QueryWrapper.create()
.select(
FILTER_RULE_ENTITY.NAME.as("filter_rule_name"),
diff --git a/modules/filter-rule/src/main/java/com/thing/filter/rule/service/impl/FilterRuleServiceImpl.java b/modules/filter-rule/src/main/java/com/thing/filter/rule/service/impl/FilterRuleServiceImpl.java
index 855e2c7..944e0ea 100644
--- a/modules/filter-rule/src/main/java/com/thing/filter/rule/service/impl/FilterRuleServiceImpl.java
+++ b/modules/filter-rule/src/main/java/com/thing/filter/rule/service/impl/FilterRuleServiceImpl.java
@@ -3,9 +3,6 @@ package com.thing.filter.rule.service.impl;
import static com.thing.filter.rule.entity.table.FilterRuleDetailEntityTableDef.FILTER_RULE_DETAIL_ENTITY;
import static com.thing.filter.rule.entity.table.FilterRuleEntityTableDef.FILTER_RULE_ENTITY;
-import cn.hutool.core.map.MapUtil;
-import com.mybatisflex.core.keygen.impl.SnowFlakeIDKeyGenerator;
-
import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.query.QueryWrapper;
import com.thing.common.cache.constants.CacheNameEnum;
@@ -15,6 +12,7 @@ import com.thing.common.core.utils.ConvertUtils;
import com.thing.common.core.utils.FormulaUtil;
import com.thing.common.core.web.response.PageData;
import com.thing.common.orm.service.impl.BaseServiceImpl;
+import com.thing.common.orm.utils.IdGenerator;
import com.thing.filter.rule.dto.FilterRuleDTO;
import com.thing.filter.rule.dto.FilterRuleDetailDTO;
import com.thing.filter.rule.entity.FilterRuleDetailEntity;
@@ -22,19 +20,17 @@ import com.thing.filter.rule.entity.FilterRuleEntity;
import com.thing.filter.rule.mapper.FilterRuleMapper;
import com.thing.filter.rule.service.FilterRuleDetailService;
import com.thing.filter.rule.service.FilterRuleService;
-
import com.thing.sys.security.context.UserContext;
+import java.util.*;
+import java.util.stream.Collectors;
import lombok.RequiredArgsConstructor;
-
+import org.apache.commons.collections4.MapUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.cache.annotation.CacheEvict;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
-import java.util.*;
-import java.util.stream.Collectors;
-
/**
* 过滤规则表
*
@@ -50,9 +46,9 @@ public class FilterRuleServiceImpl extends BaseServiceImpl params) {
- String name = MapUtil.getStr(params, "name");
- String thingKeyword = MapUtil.getStr(params, "thingKeyword");
- String attrKeyword = MapUtil.getStr(params, "attrKeyword");
+ String name = MapUtils.getString(params, "name");
+ String thingKeyword = MapUtils.getString(params, "thingKeyword");
+ String attrKeyword = MapUtils.getString(params, "attrKeyword");
QueryWrapper wrapper =
QueryWrapper.create()
.select(FILTER_RULE_ENTITY.ALL_COLUMNS)
@@ -190,7 +186,7 @@ public class FilterRuleServiceImpl extends BaseServiceImpl details = filterRule.getDetails();
diff --git a/modules/thing/src/main/java/com/thing/device/analysisdata/service/impl/AnalysisDataServiceImpl.java b/modules/thing/src/main/java/com/thing/device/analysisdata/service/impl/AnalysisDataServiceImpl.java
index f2913aa..739412b 100644
--- a/modules/thing/src/main/java/com/thing/device/analysisdata/service/impl/AnalysisDataServiceImpl.java
+++ b/modules/thing/src/main/java/com/thing/device/analysisdata/service/impl/AnalysisDataServiceImpl.java
@@ -247,6 +247,7 @@ public class AnalysisDataServiceImpl implements AnalysisDataService {
if(first.isPresent()){
IotThingSourceDTO iotThingSourceDTO = first.get();
relationDTO.setThingAttrUnit(iotThingSourceDTO.getThingAttrUnit());
+ relationDTO.setDataDealConfig(iotThingSourceDTO.getDataDealConfig());
}});
viewSourceDTO.setDictList(relationDTOList);
return viewSourceDTO;
diff --git a/modules/thing/src/main/java/com/thing/device/menu/controller/IotThingMenuConfigController.java b/modules/thing/src/main/java/com/thing/device/menu/controller/IotThingMenuConfigController.java
index f330eb7..dc79ffc 100644
--- a/modules/thing/src/main/java/com/thing/device/menu/controller/IotThingMenuConfigController.java
+++ b/modules/thing/src/main/java/com/thing/device/menu/controller/IotThingMenuConfigController.java
@@ -1,6 +1,7 @@
package com.thing.device.menu.controller;
import cn.hutool.core.util.ObjectUtil;
+import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.thing.common.core.annotation.LogOperation;
import com.thing.common.core.constants.Constant;
@@ -13,6 +14,8 @@ import com.thing.common.core.web.response.PageData;
import com.thing.common.core.web.response.Result;
import com.thing.device.menu.dto.IotThingMenuConfigDTO;
import com.thing.device.menu.service.IotThingMenuConfigService;
+import com.thing.thing.relation.root.dto.IotThingRelationRootDTO;
+import com.thing.thing.relation.root.service.IotThingRelationRootService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Parameters;
@@ -30,6 +33,7 @@ import java.util.Map;
public class IotThingMenuConfigController {
private final IotThingMenuConfigService iotThingMenuConfigService;
+ private final IotThingRelationRootService relationRootService;
@GetMapping("page")
@Operation(summary = "分页")
@@ -70,6 +74,18 @@ public class IotThingMenuConfigController {
}
}
}
+ if (ObjectUtil.isNotNull(data) && ObjectUtil.isNotNull(data.getMenuConfig())) {
+ JSONArray jsonArray = JSONArray.parseArray(data.getMenuConfig());
+ if (jsonArray != null && !jsonArray.isEmpty()) {
+ for (int i = 0; i < jsonArray.size(); i++) {
+ JSONObject jsonObject = jsonArray.getJSONObject(i);
+ Long id = jsonObject.getLong("id");
+ IotThingRelationRootDTO relationRootDTO = relationRootService.findById(id);
+ jsonObject.put("name", relationRootDTO.getName());
+ }
+ data.setMenuConfig(jsonArray.toString());
+ }
+ }
return new Result().ok(data);
}
diff --git a/modules/thing/src/main/java/com/thing/thing/api/service/impl/IotThingApiServiceImpl.java b/modules/thing/src/main/java/com/thing/thing/api/service/impl/IotThingApiServiceImpl.java
index 666e486..32f3297 100644
--- a/modules/thing/src/main/java/com/thing/thing/api/service/impl/IotThingApiServiceImpl.java
+++ b/modules/thing/src/main/java/com/thing/thing/api/service/impl/IotThingApiServiceImpl.java
@@ -319,6 +319,7 @@ public class IotThingApiServiceImpl extends BaseServiceImpl
org.springframework.boot
spring-boot-starter-parent
- 3.2.2
+ 3.3.2