李进 před 2 roky
rodič
revize
febf546b4b

+ 24 - 3
device-api-service/src/main/java/com/xy/service/DeviceQualityServiceImpl.java

@@ -11,6 +11,7 @@ import com.xy.dto.DeviceQualityDto;
 import com.xy.dto.DeviceQualityValueDto;
 import com.xy.entity.DeviceInfo;
 import com.xy.entity.DeviceQuality;
+import com.xy.entity.DeviceQualityValue;
 import com.xy.entity.SysDictRedis;
 import com.xy.mapper.DeviceInfoMapper;
 import com.xy.mapper.DeviceQualityMapper;
@@ -48,6 +49,21 @@ public class DeviceQualityServiceImpl extends ServiceImpl<DeviceQualityMapper, D
 
     private DeviceQualityValueServiceImpl deviceQualityValueService;
 
+    private void queryDeviceQualityValue(List<DeviceQualityDto.Vo> list) {
+        if (Emptys.check(list)) {
+            JList<Integer> qualityIds = new JArrayList<>(list).getProperty(DeviceQualityDto.Vo::getQualityId);
+            List<DeviceQualityValue> deviceQualityValues = deviceQualityValueService.list(new LambdaQueryWrapper<DeviceQualityValue>().in(DeviceQualityValue::getQualityId, qualityIds));
+            JMap<Integer, DeviceQualityValue> deviceQualityValueMap = new JArrayList<>(deviceQualityValues).toMap(DeviceQualityValue::getQualityId).cover();
+            list.forEach(vo -> {
+                DeviceQualityValue deviceQualityValue = deviceQualityValueMap.get(vo.getQualityId());
+                if (deviceQualityValue == null) {
+                    return;
+                }
+                vo.setDeviceQualityValue(copy(DeviceQualityValueDto.Vo.class, deviceQualityValue));
+            });
+        }
+    }
+
     @PostMapping("page")
     @ApiOperation("分页查询")
     public R<PageBean<DeviceQualityDto.Vo>> page(@RequestBody DeviceQualityDto.Page page) {
@@ -58,7 +74,10 @@ public class DeviceQualityServiceImpl extends ServiceImpl<DeviceQualityMapper, D
                 .build()
                 .orderByDesc(!Emptys.check(pageBean.getOrders()), DeviceQuality::getCreateTime);
         IPage<DeviceQuality> iPage = page(toIPage(pageBean), lambdaQueryWrapper);
-        return R.ok(toPageBean(DeviceQualityDto.Vo.class, iPage));
+        PageBean<DeviceQualityDto.Vo> voPageBean = toPageBean(DeviceQualityDto.Vo.class, iPage);
+        List<DeviceQualityDto.Vo> list = voPageBean.getRecords();
+        queryDeviceQualityValue(list);
+        return R.ok(voPageBean);
     }
 
     @PostMapping("list")
@@ -68,8 +87,10 @@ public class DeviceQualityServiceImpl extends ServiceImpl<DeviceQualityMapper, D
                 .in(DeviceQuality::getQualityId, selectList.getQualityIds())
                 .in(DeviceQuality::getDeviceId, selectList.getDeviceIds())
                 .build();
-        List<DeviceQuality> list = list(lambdaQueryWrapper);
-        return R.ok(copy(DeviceQualityDto.Vo.class, list));
+        List<DeviceQuality> deviceQualities = list(lambdaQueryWrapper);
+        List<DeviceQualityDto.Vo> list = copy(DeviceQualityDto.Vo.class, deviceQualities);
+        queryDeviceQualityValue(list);
+        return R.ok(copy(DeviceQualityDto.Vo.class, deviceQualities));
     }
 
     @PostMapping("update")