From ec4c447fcfecebce73427d54f1d3bf2ee2299675 Mon Sep 17 00:00:00 2001 From: guoshengxiong <1923636941@qq.com> Date: Sat, 18 May 2024 10:36:36 +0800 Subject: [PATCH] =?UTF-8?q?ai=E4=B8=BAnull=E7=9A=84=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/zhgd/xmgl/async/AsyncAiAnalyse.java | 11 +++++----- .../service/IDictionaryItemService.java | 3 ++- .../impl/DictionaryItemServiceImpl.java | 21 +++++++++++-------- 3 files changed, 19 insertions(+), 16 deletions(-) diff --git a/src/main/java/com/zhgd/xmgl/async/AsyncAiAnalyse.java b/src/main/java/com/zhgd/xmgl/async/AsyncAiAnalyse.java index 71139360b..47eab7d03 100644 --- a/src/main/java/com/zhgd/xmgl/async/AsyncAiAnalyse.java +++ b/src/main/java/com/zhgd/xmgl/async/AsyncAiAnalyse.java @@ -56,7 +56,8 @@ public class AsyncAiAnalyse { @Async("taskExecutor") public void sendAiAnalyse(AiAnalyseHardWareAlarmRecord aiAnalyseHardWareAlarmRecord) { try { - String title = getTitleByAlarmType(aiAnalyseHardWareAlarmRecord.getAlarmType()); + String title = getTitleByAlarmType(aiAnalyseHardWareAlarmRecord.getAlarmType(), aiAnalyseHardWareAlarmRecord.getProjectSn()); + title = title == null ? "其他类型" : title; String msg = title + ",位置" + aiAnalyseHardWareAlarmRecord.getLocation(); List systemUserList = systemUserService.list(Wrappers.lambdaQuery().eq(SystemUser::getSn, aiAnalyseHardWareAlarmRecord.getProjectSn()) .in(SystemUser::getAccountType, Arrays.asList(5, 6))); @@ -80,8 +81,8 @@ public class AsyncAiAnalyse { } } - public String getTitleByAlarmType(Integer alarmType) { - DictionaryItem dict = dictionaryItemService.getDict(DictionaryConstant.AI_ANALYSE_HARD_WARE_ALARM_RECORD_TYPE, alarmType + ""); + public String getTitleByAlarmType(Integer alarmType, String projectSn) { + DictionaryItem dict = dictionaryItemService.getDict(DictionaryConstant.AI_ANALYSE_HARD_WARE_ALARM_RECORD_TYPE, alarmType + "", projectSn); return dict != null ? dict.getName() : null; } @@ -118,10 +119,8 @@ public class AsyncAiAnalyse { * @param systemUserList 需要推送的人员集合 */ public void sendCorrectAnalyse(AiAnalyseHardWareAlarmRecord record, List systemUserList) { - - String msg = "你有一条待整改消息,位置-----" + record.getLocation(); - String title = getTitleByAlarmType(record.getAlarmType()); + String title = getTitleByAlarmType(record.getAlarmType(), record.getProjectSn()); if (CollectionUtils.isNotEmpty(systemUserList)) { for (SystemUser systemUser : systemUserList) { log.info(systemUser.getAccount() + "有一条消息,位置-----" + record.getLocation()); diff --git a/src/main/java/com/zhgd/xmgl/modules/basicdata/service/IDictionaryItemService.java b/src/main/java/com/zhgd/xmgl/modules/basicdata/service/IDictionaryItemService.java index a3fda7521..5c75096a4 100644 --- a/src/main/java/com/zhgd/xmgl/modules/basicdata/service/IDictionaryItemService.java +++ b/src/main/java/com/zhgd/xmgl/modules/basicdata/service/IDictionaryItemService.java @@ -21,9 +21,10 @@ public interface IDictionaryItemService extends IService { * * @param dictionaryEncoding * @param data + * @param projectSn * @return */ - DictionaryItem getDict(String dictionaryEncoding, String data); + DictionaryItem getDict(String dictionaryEncoding, String data, String projectSn); void add(DictionaryItem dictionaryItem); diff --git a/src/main/java/com/zhgd/xmgl/modules/basicdata/service/impl/DictionaryItemServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/basicdata/service/impl/DictionaryItemServiceImpl.java index ea49d8b6d..67b51e439 100644 --- a/src/main/java/com/zhgd/xmgl/modules/basicdata/service/impl/DictionaryItemServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/basicdata/service/impl/DictionaryItemServiceImpl.java @@ -12,7 +12,6 @@ import com.zhgd.xmgl.modules.basicdata.entity.DictionaryItem; import com.zhgd.xmgl.modules.basicdata.mapper.DictionaryItemMapper; import com.zhgd.xmgl.modules.basicdata.mapper.DictionaryMapper; import com.zhgd.xmgl.modules.basicdata.service.IDictionaryItemService; -import com.zhgd.xmgl.modules.video.entity.AiAnalyseHardWareAlarmRecord; import com.zhgd.xmgl.util.RefUtil; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -23,8 +22,6 @@ import org.springframework.web.context.request.ServletRequestAttributes; import javax.servlet.http.HttpServletRequest; import java.util.List; import java.util.Map; -import java.util.function.Consumer; -import java.util.function.Function; import java.util.stream.Collectors; @@ -57,13 +54,19 @@ public class DictionaryItemServiceImpl extends ServiceImpl dictionaryItems = dictionaryItemMapper.selectList(new LambdaQueryWrapper() - .eq(DictionaryItem::getDictionaryEncoding, dictionaryEncoding) + public DictionaryItem getDict(String dictionaryEncoding, String data, String projectSn) { + String newCode = dictionaryEncoding + "_" + projectSn; + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper() + .and(w -> w.eq(DictionaryItem::getDictionaryEncoding, dictionaryEncoding).or().eq(DictionaryItem::getDictionaryEncoding, newCode)) .eq(DictionaryItem::getIsEnable, 1) - .eq(DictionaryItem::getData, data) - ); - return CollUtil.isNotEmpty(dictionaryItems) ? dictionaryItems.get(0) : null; + .eq(DictionaryItem::getData, data); + List dictionaryItems = dictionaryItemMapper.selectList(queryWrapper); + Map map = dictionaryItems.stream().collect(Collectors.toMap(DictionaryItem::getDictionaryEncoding, dictionaryItem -> dictionaryItem, (o1, o2) -> o1)); + if (map.containsKey(newCode)) { + return map.get(newCode); + } else { + return map.get(dictionaryEncoding); + } } @Override