From a4cd4c2d98392cd1036f36b96c262878743a7e63 Mon Sep 17 00:00:00 2001 From: zhanghua <314079846@qq.com> Date: 星期四, 05 九月 2024 19:52:22 +0800 Subject: [PATCH] Merge branch 'master' of http://42.193.1.25:9521/r/sccg_server --- ycl-platform/src/main/java/com/ycl/controller/smoke/OdsStatisticsController.java | 54 +++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 53 insertions(+), 1 deletions(-) diff --git a/ycl-platform/src/main/java/com/ycl/controller/smoke/OdsStatisticsController.java b/ycl-platform/src/main/java/com/ycl/controller/smoke/OdsStatisticsController.java index d7b0966..44472e6 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/smoke/OdsStatisticsController.java +++ b/ycl-platform/src/main/java/com/ycl/controller/smoke/OdsStatisticsController.java @@ -1,6 +1,9 @@ package com.ycl.controller.smoke; +import com.alibaba.fastjson.JSON; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ycl.annotation.LogSave; import com.ycl.api.CommonPage; @@ -8,14 +11,17 @@ import com.ycl.controller.BaseController; import com.ycl.entity.smoke.OdsCurAlarm; import com.ycl.entity.smoke.OdsCustomer; +import com.ycl.entity.smoke.OdsLocaleDocument; import com.ycl.entity.smoke.OdsStatistics; import com.ycl.service.smoke.IOdsCurAlarmService; +import com.ycl.service.smoke.IOdsLocaleDocumentService; import com.ycl.service.smoke.IOdsStatisticsService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.lang.reflect.Field; import java.util.List; @RestController @@ -26,6 +32,8 @@ IOdsStatisticsService odsStatisticsService; IOdsCurAlarmService curAlarmService; + IOdsLocaleDocumentService documentService; + @Autowired public void setOdsStatisticsService(IOdsStatisticsService odsStatisticsService) { this.odsStatisticsService = odsStatisticsService; @@ -34,6 +42,11 @@ @Autowired public void setCurAlarmService(IOdsCurAlarmService curAlarmService) { this.curAlarmService = curAlarmService; + } + + @Autowired + public void setDocumentService(IOdsLocaleDocumentService documentService) { + this.documentService = documentService; } @ApiOperation("妫�娴嬩华鎬讳綋鎯呭喌鎶ヨ〃") @@ -60,7 +73,46 @@ @ResponseBody @LogSave(operationType = "娌圭儫妯″潡", contain = "鐩戞祴鎶ヨ缁熻&杩愮淮鎯呭喌鎶ヨ〃") public CommonResult<List<OdsCurAlarm>> findCurAlarm() { - List<OdsCurAlarm> list = curAlarmService.list(); + LambdaQueryWrapper<OdsCurAlarm> queryWrapper = new LambdaQueryWrapper<OdsCurAlarm>().orderByDesc(OdsCurAlarm::getId); + List<OdsCurAlarm> list = curAlarmService.list(queryWrapper); return CommonResult.success(list); } + + @ApiOperation("妫�娴嬩华鎬讳綋鎯呭喌鎶ヨ〃---妗f") + @RequestMapping(value = "/statistics/detectorDailyStats/document", method = RequestMethod.GET) + @ResponseBody + @LogSave(operationType = "娌圭儫妯″潡", contain = "鐩戞祴鎶ヨ缁熻&杩愮淮鎯呭喌鎶ヨ〃") + public CommonResult<String> getDetectorDailyStatsDocument(@RequestParam(value = "field", required = false) String field, + @RequestParam(value = "localeId", required = false) String localeId) { + OdsLocaleDocument odsLocaleDocument = documentService.getByLocaleId(localeId); + String value = ""; + if ("detectorDailySumDays".equals(field)) { + odsLocaleDocument.setTenHourData(""); + odsLocaleDocument.setDevices(""); + odsLocaleDocument.setMaintenance(""); + value = JSON.toJSONString(odsLocaleDocument); + } else { + value = getFieldValueByFieldName(field, odsLocaleDocument); + } + return CommonResult.success(value); + } + + /** + * 鏍规嵁灞炴�у悕鑾峰彇灞炴�у�� + * + * @param fieldName + * @param object + * @return + */ + private String getFieldValueByFieldName(String fieldName, Object object) { + try { + Field field = object.getClass().getDeclaredField(fieldName); + //璁剧疆瀵硅薄鐨勮闂潈闄愶紝淇濊瘉瀵筽rivate鐨勫睘鎬х殑璁块棶 + field.setAccessible(true); + return (String) field.get(object); + } catch (Exception e) { + return null; + } + } + } -- Gitblit v1.8.0