|
@@ -44,6 +44,7 @@ import java.util.Date;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* @Description: 硫含量
|
|
@@ -221,6 +222,28 @@ public class So2Controller extends BaseController {
|
|
|
return AjaxResult.success(result);
|
|
|
}
|
|
|
|
|
|
+ @GetMapping("/static/semDevice")
|
|
|
+ @ApiOperation("设备安装位置及设备类型统计")
|
|
|
+ public AjaxResult semDevice() {
|
|
|
+ if (redisCache.hasKey(CacheConstants.DEVICE_SEM_STATIC)) {
|
|
|
+ return AjaxResult.success(redisCache.getCacheMap(CacheConstants.DEVICE_SEM_STATIC));
|
|
|
+ }
|
|
|
+ Map<String, Integer[]> result = new HashMap<>();
|
|
|
+ Map<Object, Object> aisDevice = aisDatabase.queryDeviceStatic().stream().collect(Collectors.toMap(s -> s.get("point"), v -> v.get("count")));
|
|
|
+ Map<Object, Object> so2Device = so2Service.queryDeviceStatic().stream().collect(Collectors.toMap(s -> s.get("point"), v -> v.get("count")));
|
|
|
+ Map<Object, Object> heiyanDevice = heiYanService.queryDeviceStatic().stream().collect(Collectors.toMap(s -> s.get("point"), v -> v.get("count")));
|
|
|
+ result.put("南京三桥", new Integer[]{Convert.toInt(aisDevice.getOrDefault("南京三桥", 0)), Convert.toInt(so2Device.getOrDefault("南京三桥", 0)), Convert.toInt(heiyanDevice.getOrDefault("南京三桥", 0))});
|
|
|
+ result.put("南京四桥", new Integer[]{Convert.toInt(aisDevice.getOrDefault("南京四桥", 0)), Convert.toInt(so2Device.getOrDefault("南京四桥", 0)), Convert.toInt(heiyanDevice.getOrDefault("南京四桥", 0))});
|
|
|
+ result.put("润扬大桥", new Integer[]{Convert.toInt(aisDevice.getOrDefault("润扬大桥", 0)), Convert.toInt(so2Device.getOrDefault("润扬大桥", 0)), Convert.toInt(heiyanDevice.getOrDefault("润扬大桥", 0))});
|
|
|
+ result.put("泰州大桥", new Integer[]{Convert.toInt(aisDevice.getOrDefault("泰州大桥", 0)), Convert.toInt(so2Device.getOrDefault("泰州大桥", 0)), Convert.toInt(heiyanDevice.getOrDefault("泰州大桥", 0))});
|
|
|
+ result.put("江阴大桥", new Integer[]{Convert.toInt(aisDevice.getOrDefault("江阴大桥", 0)), Convert.toInt(so2Device.getOrDefault("江阴大桥", 0)), Convert.toInt(heiyanDevice.getOrDefault("江阴大桥", 0))});
|
|
|
+ result.put("苏通大桥", new Integer[]{Convert.toInt(aisDevice.getOrDefault("苏通大桥", 0)), Convert.toInt(so2Device.getOrDefault("苏通大桥", 0)), Convert.toInt(heiyanDevice.getOrDefault("苏通大桥", 0))});
|
|
|
+
|
|
|
+ redisCache.setCacheMap(CacheConstants.DEVICE_SEM_STATIC, result);
|
|
|
+ redisCache.expire(CacheConstants.DEVICE_SEM_STATIC, 86400);
|
|
|
+ return AjaxResult.success(result);
|
|
|
+ }
|
|
|
+
|
|
|
@GetMapping("/static/deviceType")
|
|
|
@ApiOperation("设备类型统计")
|
|
|
public AjaxResult deviceTypeStatic() {
|