Bladeren bron

#MOD 设备故障

tanbin 1 jaar geleden
bovenliggende
commit
79e5a5655a
1 gewijzigde bestanden met toevoegingen van 21 en 3 verwijderingen
  1. 21 3
      device-api-service/src/main/java/com/xy/service/DeviceFaultInfoServiceImpl.java

+ 21 - 3
device-api-service/src/main/java/com/xy/service/DeviceFaultInfoServiceImpl.java

@@ -1,9 +1,9 @@
 package com.xy.service;
 
 import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.map.MapUtil;
 import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -12,6 +12,7 @@ import com.xy.collections.map.JMap;
 import com.xy.consts.CommConsts;
 import com.xy.dto.DeviceFaultInfoDto;
 import com.xy.dto.DeviceFaultInfoFlowDto;
+import com.xy.dto.SysCodeConfigureDto;
 import com.xy.dto.SysWorkUser.ListDto;
 import com.xy.dto.SysWorkUser.SysWorkVo;
 import com.xy.dto.be.MercDto;
@@ -35,6 +36,7 @@ import org.springframework.web.bind.annotation.RequestBody;
 
 import java.time.LocalDateTime;
 import java.util.List;
+import java.util.Map;
 import java.util.stream.Collectors;
 
 import static com.xy.utils.Beans.copy;
@@ -61,6 +63,7 @@ public class DeviceFaultInfoServiceImpl extends ServiceImpl<DeviceFaultInfoMappe
     private final DeviceFaultInfoFlowServiceImpl deviceFaultInfoFlowService;
     private final SysWorkUserService sysWorkUserService;
     private final DeviceDataMapper deviceDataMapper;
+    private final SysCodeConfigureService sysCodeConfigureService;
 
     @PostMapping("countToDo")
     @ApiOperation("待处理设备故障统计")
@@ -123,14 +126,29 @@ public class DeviceFaultInfoServiceImpl extends ServiceImpl<DeviceFaultInfoMappe
         List<DeviceFaultInfoDto.Vo> records = data.getRecords();
         if (CollUtil.isNotEmpty(records)) {
             List<Long> mercIds = records.stream().map(DeviceFaultInfoDto.Vo::getMercId).distinct().collect(Collectors.toList());
+            List<String> codes = records.stream().map(DeviceFaultInfoDto.Vo::getEventCode).distinct().collect(Collectors.toList());
+            SysCodeConfigureDto.SelectList selectList = new SysCodeConfigureDto.SelectList();
+            selectList.setCodes(codes);
+            List<SysCodeConfigureDto.Vo> vos = R.feignCheckData(sysCodeConfigureService.list(selectList));
+            Map<String, SysCodeConfigureDto.Vo> sysCodeMap = MapUtil.newHashMap();
+            if(CollUtil.isNotEmpty(vos)){
+               sysCodeMap = vos.stream().collect(Collectors.toMap(SysCodeConfigureDto.Vo::getCode, i -> i));
+             }
             List<MercDto.Vo> mercs = mercService.list(new MercDto.SelectList().setMercIds(mercIds)).getData();
             JMap<Long, MercDto.Vo> longVoJMap = new JArrayList<>(mercs).toMap(MercDto.Vo::getId).cover();
-            records.forEach(r -> {
+            for (DeviceFaultInfoDto.Vo r : records) {
                 Long mercId = r.getMercId();
                 if (longVoJMap.get(mercId) != null) {
                     r.setMercName(longVoJMap.get(mercId).getName());
                 }
-            });
+                SysCodeConfigureDto.Vo sysCodeInfo = sysCodeMap.get(r.getEventCode());
+                    //故障说明与建议
+                if (sysCodeInfo != null) {
+                    r.setMsg(sysCodeInfo.getMsg());
+                    r.setPropose(sysCodeInfo.getPropose());
+                }
+            }
+
             data.setRecords(records);
         }