diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java index 422f1e3..d15850f 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -64,5 +64,7 @@ return ReturnUtil.success(super.packForBT(alarmRecordsService.page(page, queryWrapper))); } + + } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java index 422f1e3..d15850f 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -64,5 +64,7 @@ return ReturnUtil.success(super.packForBT(alarmRecordsService.page(page, queryWrapper))); } + + } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java index 3f0c56f..c3f47ef 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -172,7 +172,15 @@ DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); List list = deviceService.selectDataScopePage(dataScope, page, "", "", deviceRequest.getBeginTime(), deviceRequest.getEndTime(), deviceRequest.getKeywords(), deviceRequest.getIsOnline()); list.forEach(deviceDto -> { - deviceDto.setOnlineStateName(dictService.getDictNameByCode(ModularDictConst.ONLINESTATUS, deviceDto.getOnlineState())); + + // 查询最新数据和时间 + String latestTime = noiseService.getLatestNoiseDateTime(deviceDto.getDevcode()); + if (latestTime != null) { + Noise latest = noiseService.getLatestNoiseData(deviceDto.getDevcode(), latestTime); + deviceDto.setLatestData(latest.getDdata()); + deviceDto.setLatestTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(latest.getUptime())); + } +// deviceDto.setOnlineStateName(dictService.getDictNameByCode(ModularDictConst.ONLINESTATUS, deviceDto.getOnlineState())); }); //获取导出文件header super.exportExcel(DeviceDto.class, list, DeviceExportHeadersEnum.DEVICE_EXPORT.getFileName()); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java index 422f1e3..d15850f 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -64,5 +64,7 @@ return ReturnUtil.success(super.packForBT(alarmRecordsService.page(page, queryWrapper))); } + + } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java index 3f0c56f..c3f47ef 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -172,7 +172,15 @@ DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); List list = deviceService.selectDataScopePage(dataScope, page, "", "", deviceRequest.getBeginTime(), deviceRequest.getEndTime(), deviceRequest.getKeywords(), deviceRequest.getIsOnline()); list.forEach(deviceDto -> { - deviceDto.setOnlineStateName(dictService.getDictNameByCode(ModularDictConst.ONLINESTATUS, deviceDto.getOnlineState())); + + // 查询最新数据和时间 + String latestTime = noiseService.getLatestNoiseDateTime(deviceDto.getDevcode()); + if (latestTime != null) { + Noise latest = noiseService.getLatestNoiseData(deviceDto.getDevcode(), latestTime); + deviceDto.setLatestData(latest.getDdata()); + deviceDto.setLatestTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(latest.getUptime())); + } +// deviceDto.setOnlineStateName(dictService.getDictNameByCode(ModularDictConst.ONLINESTATUS, deviceDto.getOnlineState())); }); //获取导出文件header super.exportExcel(DeviceDto.class, list, DeviceExportHeadersEnum.DEVICE_EXPORT.getFileName()); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/NoiseController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/NoiseController.java index 0b690bd..c6346eb 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/NoiseController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/NoiseController.java @@ -2,7 +2,6 @@ import cn.hutool.core.lang.Assert; import cn.hutool.core.util.ObjectUtil; -import com.alibaba.fastjson.JSONArray; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; @@ -17,15 +16,13 @@ import com.casic.missiles.modular.system.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import org.apache.commons.math3.complex.Complex; -import org.apache.commons.math3.transform.DftNormalization; -import org.apache.commons.math3.transform.FastFourierTransformer; -import org.apache.commons.math3.transform.TransformType; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; import javax.validation.Valid; -import java.util.Arrays; import java.util.List; import java.util.Objects; @@ -81,6 +78,13 @@ } + @PostMapping("/test") + public void test(){ + String msg="{\"mType\":\"Data\",\"devType\":\"Noise\",\"devCode\":\"212023010005\",\"mBody\":{\"cell\":99,\"datas\":[{\"noiseVal\":800,\"noiseFreq\":1545,\"uptime\":\"20240604091300\"}],\"logTime\":\"20240604091300\",\"bType\":\"NoiseDigData\"},\"ts\":1566454417130}"; + noiseService.processData(msg); + } + + // /** // * 获取相关仪上传数据分页列表 // */ diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java index 422f1e3..d15850f 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -64,5 +64,7 @@ return ReturnUtil.success(super.packForBT(alarmRecordsService.page(page, queryWrapper))); } + + } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java index 3f0c56f..c3f47ef 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -172,7 +172,15 @@ DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); List list = deviceService.selectDataScopePage(dataScope, page, "", "", deviceRequest.getBeginTime(), deviceRequest.getEndTime(), deviceRequest.getKeywords(), deviceRequest.getIsOnline()); list.forEach(deviceDto -> { - deviceDto.setOnlineStateName(dictService.getDictNameByCode(ModularDictConst.ONLINESTATUS, deviceDto.getOnlineState())); + + // 查询最新数据和时间 + String latestTime = noiseService.getLatestNoiseDateTime(deviceDto.getDevcode()); + if (latestTime != null) { + Noise latest = noiseService.getLatestNoiseData(deviceDto.getDevcode(), latestTime); + deviceDto.setLatestData(latest.getDdata()); + deviceDto.setLatestTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(latest.getUptime())); + } +// deviceDto.setOnlineStateName(dictService.getDictNameByCode(ModularDictConst.ONLINESTATUS, deviceDto.getOnlineState())); }); //获取导出文件header super.exportExcel(DeviceDto.class, list, DeviceExportHeadersEnum.DEVICE_EXPORT.getFileName()); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/NoiseController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/NoiseController.java index 0b690bd..c6346eb 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/NoiseController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/NoiseController.java @@ -2,7 +2,6 @@ import cn.hutool.core.lang.Assert; import cn.hutool.core.util.ObjectUtil; -import com.alibaba.fastjson.JSONArray; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; @@ -17,15 +16,13 @@ import com.casic.missiles.modular.system.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import org.apache.commons.math3.complex.Complex; -import org.apache.commons.math3.transform.DftNormalization; -import org.apache.commons.math3.transform.FastFourierTransformer; -import org.apache.commons.math3.transform.TransformType; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; import javax.validation.Valid; -import java.util.Arrays; import java.util.List; import java.util.Objects; @@ -81,6 +78,13 @@ } + @PostMapping("/test") + public void test(){ + String msg="{\"mType\":\"Data\",\"devType\":\"Noise\",\"devCode\":\"212023010005\",\"mBody\":{\"cell\":99,\"datas\":[{\"noiseVal\":800,\"noiseFreq\":1545,\"uptime\":\"20240604091300\"}],\"logTime\":\"20240604091300\",\"bType\":\"NoiseDigData\"},\"ts\":1566454417130}"; + noiseService.processData(msg); + } + + // /** // * 获取相关仪上传数据分页列表 // */ diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/NoiseMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/NoiseMapper.java index e74bc19..f2fa1da 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/NoiseMapper.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/NoiseMapper.java @@ -18,8 +18,8 @@ * @since 2024-02-28 */ public interface NoiseMapper extends BaseMapper { - @Select("SELECT DDATA FROM `data_noise` where DEVCODE= #{devCode} order by UPTIME desc limit 1") - String getLastVaule(@Param("devCode") String devCode); + @Select("SELECT DDATA FROM `data_noise` where DEVCODE= #{devCode} order by UPTIME desc limit 2") + List getLastVaule(@Param("devCode") String devCode); String findLatestTimeByDevCode(@Param("devCode") String devCode); Noise selectLatestByDevCode(@Param("devCode") String devCode, diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java index 422f1e3..d15850f 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -64,5 +64,7 @@ return ReturnUtil.success(super.packForBT(alarmRecordsService.page(page, queryWrapper))); } + + } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java index 3f0c56f..c3f47ef 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -172,7 +172,15 @@ DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); List list = deviceService.selectDataScopePage(dataScope, page, "", "", deviceRequest.getBeginTime(), deviceRequest.getEndTime(), deviceRequest.getKeywords(), deviceRequest.getIsOnline()); list.forEach(deviceDto -> { - deviceDto.setOnlineStateName(dictService.getDictNameByCode(ModularDictConst.ONLINESTATUS, deviceDto.getOnlineState())); + + // 查询最新数据和时间 + String latestTime = noiseService.getLatestNoiseDateTime(deviceDto.getDevcode()); + if (latestTime != null) { + Noise latest = noiseService.getLatestNoiseData(deviceDto.getDevcode(), latestTime); + deviceDto.setLatestData(latest.getDdata()); + deviceDto.setLatestTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(latest.getUptime())); + } +// deviceDto.setOnlineStateName(dictService.getDictNameByCode(ModularDictConst.ONLINESTATUS, deviceDto.getOnlineState())); }); //获取导出文件header super.exportExcel(DeviceDto.class, list, DeviceExportHeadersEnum.DEVICE_EXPORT.getFileName()); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/NoiseController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/NoiseController.java index 0b690bd..c6346eb 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/NoiseController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/NoiseController.java @@ -2,7 +2,6 @@ import cn.hutool.core.lang.Assert; import cn.hutool.core.util.ObjectUtil; -import com.alibaba.fastjson.JSONArray; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; @@ -17,15 +16,13 @@ import com.casic.missiles.modular.system.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import org.apache.commons.math3.complex.Complex; -import org.apache.commons.math3.transform.DftNormalization; -import org.apache.commons.math3.transform.FastFourierTransformer; -import org.apache.commons.math3.transform.TransformType; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; import javax.validation.Valid; -import java.util.Arrays; import java.util.List; import java.util.Objects; @@ -81,6 +78,13 @@ } + @PostMapping("/test") + public void test(){ + String msg="{\"mType\":\"Data\",\"devType\":\"Noise\",\"devCode\":\"212023010005\",\"mBody\":{\"cell\":99,\"datas\":[{\"noiseVal\":800,\"noiseFreq\":1545,\"uptime\":\"20240604091300\"}],\"logTime\":\"20240604091300\",\"bType\":\"NoiseDigData\"},\"ts\":1566454417130}"; + noiseService.processData(msg); + } + + // /** // * 获取相关仪上传数据分页列表 // */ diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/NoiseMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/NoiseMapper.java index e74bc19..f2fa1da 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/NoiseMapper.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/NoiseMapper.java @@ -18,8 +18,8 @@ * @since 2024-02-28 */ public interface NoiseMapper extends BaseMapper { - @Select("SELECT DDATA FROM `data_noise` where DEVCODE= #{devCode} order by UPTIME desc limit 1") - String getLastVaule(@Param("devCode") String devCode); + @Select("SELECT DDATA FROM `data_noise` where DEVCODE= #{devCode} order by UPTIME desc limit 2") + List getLastVaule(@Param("devCode") String devCode); String findLatestTimeByDevCode(@Param("devCode") String devCode); Noise selectLatestByDevCode(@Param("devCode") String devCode, diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/DeviceDto.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/DeviceDto.java index aa4e488..210513c 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/DeviceDto.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/DeviceDto.java @@ -48,7 +48,9 @@ private String onlineState; private String onlineStateName; + @ExcelProperty("最新数据") private String latestData; + @ExcelProperty("最新上传时间") private String latestTime; private String wellId; diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java index 422f1e3..d15850f 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -64,5 +64,7 @@ return ReturnUtil.success(super.packForBT(alarmRecordsService.page(page, queryWrapper))); } + + } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java index 3f0c56f..c3f47ef 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -172,7 +172,15 @@ DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); List list = deviceService.selectDataScopePage(dataScope, page, "", "", deviceRequest.getBeginTime(), deviceRequest.getEndTime(), deviceRequest.getKeywords(), deviceRequest.getIsOnline()); list.forEach(deviceDto -> { - deviceDto.setOnlineStateName(dictService.getDictNameByCode(ModularDictConst.ONLINESTATUS, deviceDto.getOnlineState())); + + // 查询最新数据和时间 + String latestTime = noiseService.getLatestNoiseDateTime(deviceDto.getDevcode()); + if (latestTime != null) { + Noise latest = noiseService.getLatestNoiseData(deviceDto.getDevcode(), latestTime); + deviceDto.setLatestData(latest.getDdata()); + deviceDto.setLatestTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(latest.getUptime())); + } +// deviceDto.setOnlineStateName(dictService.getDictNameByCode(ModularDictConst.ONLINESTATUS, deviceDto.getOnlineState())); }); //获取导出文件header super.exportExcel(DeviceDto.class, list, DeviceExportHeadersEnum.DEVICE_EXPORT.getFileName()); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/NoiseController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/NoiseController.java index 0b690bd..c6346eb 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/NoiseController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/NoiseController.java @@ -2,7 +2,6 @@ import cn.hutool.core.lang.Assert; import cn.hutool.core.util.ObjectUtil; -import com.alibaba.fastjson.JSONArray; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; @@ -17,15 +16,13 @@ import com.casic.missiles.modular.system.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import org.apache.commons.math3.complex.Complex; -import org.apache.commons.math3.transform.DftNormalization; -import org.apache.commons.math3.transform.FastFourierTransformer; -import org.apache.commons.math3.transform.TransformType; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; import javax.validation.Valid; -import java.util.Arrays; import java.util.List; import java.util.Objects; @@ -81,6 +78,13 @@ } + @PostMapping("/test") + public void test(){ + String msg="{\"mType\":\"Data\",\"devType\":\"Noise\",\"devCode\":\"212023010005\",\"mBody\":{\"cell\":99,\"datas\":[{\"noiseVal\":800,\"noiseFreq\":1545,\"uptime\":\"20240604091300\"}],\"logTime\":\"20240604091300\",\"bType\":\"NoiseDigData\"},\"ts\":1566454417130}"; + noiseService.processData(msg); + } + + // /** // * 获取相关仪上传数据分页列表 // */ diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/NoiseMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/NoiseMapper.java index e74bc19..f2fa1da 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/NoiseMapper.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/NoiseMapper.java @@ -18,8 +18,8 @@ * @since 2024-02-28 */ public interface NoiseMapper extends BaseMapper { - @Select("SELECT DDATA FROM `data_noise` where DEVCODE= #{devCode} order by UPTIME desc limit 1") - String getLastVaule(@Param("devCode") String devCode); + @Select("SELECT DDATA FROM `data_noise` where DEVCODE= #{devCode} order by UPTIME desc limit 2") + List getLastVaule(@Param("devCode") String devCode); String findLatestTimeByDevCode(@Param("devCode") String devCode); Noise selectLatestByDevCode(@Param("devCode") String devCode, diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/DeviceDto.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/DeviceDto.java index aa4e488..210513c 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/DeviceDto.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/DeviceDto.java @@ -48,7 +48,9 @@ private String onlineState; private String onlineStateName; + @ExcelProperty("最新数据") private String latestData; + @ExcelProperty("最新上传时间") private String latestTime; private String wellId; diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/INoiseService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/INoiseService.java index 742369d..b8b570f 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/INoiseService.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/INoiseService.java @@ -3,6 +3,8 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.modular.system.model.Noise; +import java.util.List; + /** *

* 噪声记录仪上传数据 服务类 @@ -15,7 +17,7 @@ void processData(String recordValue); - String getLastVaule(String devCode); + List getLastVaule(String devCode); String getLatestNoiseDateTime(String devCode); Noise getLatestNoiseData(String devCode, String latestTime); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java index 422f1e3..d15850f 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/AlarmRecordsController.java @@ -64,5 +64,7 @@ return ReturnUtil.success(super.packForBT(alarmRecordsService.page(page, queryWrapper))); } + + } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java index 3f0c56f..c3f47ef 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/BusDeviceController.java @@ -172,7 +172,15 @@ DataScope dataScope = permissionService.getAuthService().getLoginUserDataScope(); List list = deviceService.selectDataScopePage(dataScope, page, "", "", deviceRequest.getBeginTime(), deviceRequest.getEndTime(), deviceRequest.getKeywords(), deviceRequest.getIsOnline()); list.forEach(deviceDto -> { - deviceDto.setOnlineStateName(dictService.getDictNameByCode(ModularDictConst.ONLINESTATUS, deviceDto.getOnlineState())); + + // 查询最新数据和时间 + String latestTime = noiseService.getLatestNoiseDateTime(deviceDto.getDevcode()); + if (latestTime != null) { + Noise latest = noiseService.getLatestNoiseData(deviceDto.getDevcode(), latestTime); + deviceDto.setLatestData(latest.getDdata()); + deviceDto.setLatestTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(latest.getUptime())); + } +// deviceDto.setOnlineStateName(dictService.getDictNameByCode(ModularDictConst.ONLINESTATUS, deviceDto.getOnlineState())); }); //获取导出文件header super.exportExcel(DeviceDto.class, list, DeviceExportHeadersEnum.DEVICE_EXPORT.getFileName()); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/NoiseController.java b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/NoiseController.java index 0b690bd..c6346eb 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/controller/NoiseController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/controller/NoiseController.java @@ -2,7 +2,6 @@ import cn.hutool.core.lang.Assert; import cn.hutool.core.util.ObjectUtil; -import com.alibaba.fastjson.JSONArray; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; @@ -17,15 +16,13 @@ import com.casic.missiles.modular.system.util.ReturnUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import org.apache.commons.math3.complex.Complex; -import org.apache.commons.math3.transform.DftNormalization; -import org.apache.commons.math3.transform.FastFourierTransformer; -import org.apache.commons.math3.transform.TransformType; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; import javax.validation.Valid; -import java.util.Arrays; import java.util.List; import java.util.Objects; @@ -81,6 +78,13 @@ } + @PostMapping("/test") + public void test(){ + String msg="{\"mType\":\"Data\",\"devType\":\"Noise\",\"devCode\":\"212023010005\",\"mBody\":{\"cell\":99,\"datas\":[{\"noiseVal\":800,\"noiseFreq\":1545,\"uptime\":\"20240604091300\"}],\"logTime\":\"20240604091300\",\"bType\":\"NoiseDigData\"},\"ts\":1566454417130}"; + noiseService.processData(msg); + } + + // /** // * 获取相关仪上传数据分页列表 // */ diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/NoiseMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/NoiseMapper.java index e74bc19..f2fa1da 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/NoiseMapper.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/NoiseMapper.java @@ -18,8 +18,8 @@ * @since 2024-02-28 */ public interface NoiseMapper extends BaseMapper { - @Select("SELECT DDATA FROM `data_noise` where DEVCODE= #{devCode} order by UPTIME desc limit 1") - String getLastVaule(@Param("devCode") String devCode); + @Select("SELECT DDATA FROM `data_noise` where DEVCODE= #{devCode} order by UPTIME desc limit 2") + List getLastVaule(@Param("devCode") String devCode); String findLatestTimeByDevCode(@Param("devCode") String devCode); Noise selectLatestByDevCode(@Param("devCode") String devCode, diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/DeviceDto.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/DeviceDto.java index aa4e488..210513c 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/dto/DeviceDto.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dto/DeviceDto.java @@ -48,7 +48,9 @@ private String onlineState; private String onlineStateName; + @ExcelProperty("最新数据") private String latestData; + @ExcelProperty("最新上传时间") private String latestTime; private String wellId; diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/INoiseService.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/INoiseService.java index 742369d..b8b570f 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/INoiseService.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/INoiseService.java @@ -3,6 +3,8 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.modular.system.model.Noise; +import java.util.List; + /** *

* 噪声记录仪上传数据 服务类 @@ -15,7 +17,7 @@ void processData(String recordValue); - String getLastVaule(String devCode); + List getLastVaule(String devCode); String getLatestNoiseDateTime(String devCode); Noise getLatestNoiseData(String devCode, String latestTime); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java index 52e0aff..5aef0a0 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/NoiseServiceImpl.java @@ -20,6 +20,7 @@ import org.springframework.stereotype.Service; import java.util.Date; +import java.util.List; /** *

@@ -63,7 +64,7 @@ String val = ((JSONObject) jsonArray.get(i)).get("noiseVal").toString(); String freq = ((JSONObject) jsonArray.get(i)).get("noiseFreq").toString(); String upTime = ((JSONObject) jsonArray.get(i)).get("uptime").toString(); - String noiseSampleValues = ((JSONObject) jsonArray.get(i)).get("noiseSampleValues").toString(); + String noiseSampleValues = null!=((JSONObject) jsonArray.get(i)).get("noiseSampleValues")? ((JSONObject) jsonArray.get(i)).get("noiseSampleValues").toString():""; val = String.format("%.2f", Double.valueOf(val)); freq = String.format("%.2f", Double.valueOf(freq)); this.baseMapper.insert(new Noise(devCode, val, noiseSampleValues, DateUtils.sdf4.parse(DateUtils.DateFormat(upTime)), @@ -80,9 +81,9 @@ //推送报警至第三方kafka try { - String lastValue = getLastVaule(devCode); - if (ObjectUtil.isNotEmpty(lastValue)) { - if (Float.valueOf(lastValue) >= thresh) + List lastValList = getLastVaule(devCode); + if (lastValList.size()==2) { + if (Float.valueOf(lastValList.get(1)) >= thresh) sendKafka(devCode, val, upTime); } } catch (Exception e) { @@ -100,7 +101,7 @@ @Override - public String getLastVaule(String devCode) { + public List getLastVaule(String devCode) { return this.baseMapper.getLastVaule(devCode); }