From 245ab3bcc323dbcc877f8d49fb725b2eec91e118 Mon Sep 17 00:00:00 2001 From: xufenglei <xufenglei> Date: Tue, 12 Jun 2018 08:46:33 +0800 Subject: [PATCH] 区域 增加 镇村选项 --- src/main/java/com/moral/controller/ReportController.java | 88 +++++++++++++++++++++++++++++-------------- 1 files changed, 59 insertions(+), 29 deletions(-) diff --git a/src/main/java/com/moral/controller/ReportController.java b/src/main/java/com/moral/controller/ReportController.java index d5dd547..b95ea24 100644 --- a/src/main/java/com/moral/controller/ReportController.java +++ b/src/main/java/com/moral/controller/ReportController.java @@ -6,20 +6,25 @@ import java.io.OutputStream; import java.util.List; import java.util.Map; -import java.util.Set; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -import com.alibaba.fastjson.JSON; -import com.moral.entity.charts.LineChartCriteria; -import com.moral.entity.charts.PairData; -import org.springframework.web.bind.annotation.*; +import org.springframework.util.ObjectUtils; +import org.springframework.web.bind.annotation.CrossOrigin; +import org.springframework.web.bind.annotation.GetMapping; +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 com.moral.common.bean.ResultBean; +import com.moral.entity.charts.LineChartCriteria; +import com.moral.service.AlarmDailyService; import com.moral.service.HistoryMinutelyService; +@SuppressWarnings({ "unchecked", "rawtypes" }) @RestController @RequestMapping("report") @CrossOrigin(origins = "*", maxAge = 3600) @@ -27,42 +32,67 @@ @Resource private HistoryMinutelyService historyMinutelyService; + + @Resource + private AlarmDailyService alarmDailyService; @GetMapping("compare") - public ResultBean<Map<String, List<Object>>> getCompareReport(HttpServletRequest request) throws Exception { + public ResultBean<Map<String, List>> getCompareReport(HttpServletRequest request) throws Exception { Map<String, Object> parameters = getParametersStartingWith(request, null); - Map<String, List<Object>> demo = historyMinutelyService.getCompareReport(parameters); - return new ResultBean<Map<String,List<Object>>>(demo); + Map<String, List> demo = historyMinutelyService.getCompareReport(parameters); + return new ResultBean<Map<String, List>>(demo); } + @PostMapping("line-chart") - public ResultBean <Map<String, List<List<PairData>>>> lineChart(@RequestBody LineChartCriteria lineChartCriteria){ - return new ResultBean<>(historyMinutelyService.queryLineChartDateByCrieria(lineChartCriteria)); + public ResultBean<Map<String, List<List<Double>>>> lineChart(@RequestBody LineChartCriteria lineChartCriteria) { + return new ResultBean<>(historyMinutelyService.queryLineChartDateByCrieria(lineChartCriteria)); } + @GetMapping("excel") - public ResultBean<Boolean> getExcelReport(HttpServletRequest request,HttpServletResponse response) throws Exception { + public ResultBean<Boolean> getExcelReport(HttpServletRequest request, HttpServletResponse response) throws Exception { Map<String, Object> parameters = getParametersStartingWith(request, null); - List<Map<String, Object>> list = historyMinutelyService.getMonitorPointOrDeviceAvgData(parameters); - String[][] exportColumn = new String[2][]; - if (parameters.containsKey("sensors")) { - Set<String> sensors = (Set<String>) parameters.get("sensors"); - exportColumn = new String[sensors.size() + 1][]; - // exportColumn[0] = new String[] { "������", "20", "time" }; - int index = 1; - for (String sensorKey : sensors) { - String[] split = sensorKey.split("-"); - String name = split[1]; - String key = split[0]; - exportColumn[index] = new String[] { name, "10", key }; - index++; - } - } else { - exportColumn[1] = new String[] { (String) parameters.get("sensorName"), "10", (String) parameters.get("sensorKey") }; - } + List<Map<String, Object>> list = historyMinutelyService.getMonitorPointOrDeviceAvgData(parameters); + List<String> sensors = (List<String>) parameters.get("sensors"); + String[][] exportColumn = new String[sensors.size() + 1][]; exportColumn[0] = new String[] { "������", "20", "time" }; - + for (int index = 0; index < sensors.size(); index++) { + String[] split = sensors.get(index).split("-"); + String name = split[1]; + String key = split[0]; + String unit = split[2]; + if (!ObjectUtils.isEmpty(unit) && !"null".equals(unit)) { + name += "-" + unit; + } + exportColumn[index + 1] = new String[] { name, "10", key }; + } OutputStream outputStream = exportData(response, "Excel������", list, exportColumn); outputStream.flush(); outputStream.close(); return new ResultBean<Boolean>(true); } + + @GetMapping("pie") + public ResultBean<Map<String, Object>> getPieData(HttpServletRequest request) throws Exception { + Map<String, Object> parameters = getParametersStartingWith(request, null); + Map pieData = alarmDailyService.getPieData(parameters); + + return new ResultBean<Map<String, Object>>(pieData); + } + + @GetMapping("alarm-year") + public ResultBean<List<Integer>> getAlarmDataByYear(HttpServletRequest request) throws Exception { + Map<String, Object> parameters = getParametersStartingWith(request, null); + List<Integer> result = alarmDailyService.getAlarmDataByYear(parameters); + + return new ResultBean<List<Integer>>(result); + } + + @GetMapping("alarm-month") + public ResultBean<List<Map<String, Object>>> getAlarmDataByMonth(HttpServletRequest request) throws Exception { + Map<String, Object> parameters = getParametersStartingWith(request, null); + List<Map<String, Object>> result = alarmDailyService.getAlarmDataByMonth(parameters); + + return new ResultBean<List<Map<String, Object>>>(result); + } + } -- Gitblit v1.8.0