From 1cad14bca191807e18705c3a5526eda8151be439 Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期一, 14 四月 2025 23:10:22 +0800
Subject: [PATCH] 批量审核和图片保存bug

---
 ycl-platform/src/main/java/com/ycl/controller/smoke/SmokeAlarmController.java |  150 +++++++++++++++++++++-----------------------------
 1 files changed, 63 insertions(+), 87 deletions(-)

diff --git a/ycl-platform/src/main/java/com/ycl/controller/smoke/SmokeAlarmController.java b/ycl-platform/src/main/java/com/ycl/controller/smoke/SmokeAlarmController.java
index b86dd23..b152efb 100644
--- a/ycl-platform/src/main/java/com/ycl/controller/smoke/SmokeAlarmController.java
+++ b/ycl-platform/src/main/java/com/ycl/controller/smoke/SmokeAlarmController.java
@@ -1,10 +1,26 @@
 package com.ycl.controller.smoke;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ycl.annotation.LogSave;
+import com.ycl.api.CommonPage;
+import com.ycl.api.CommonResult;
 import com.ycl.controller.BaseController;
+import com.ycl.entity.smoke.OdsAlarmMsg;
+import com.ycl.dto.smoker.QueryAlarmParam;
 import com.ycl.service.smoke.IOdsAlarmMsgService;
+import com.ycl.utils.EasyExcelUtils;
+import com.ycl.vo.smoke.OdsAlarmVo;
 import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.net.URLEncoder;
+import java.text.SimpleDateFormat;
+import java.util.*;
 
 @RestController
 @RequestMapping("/smoke")
@@ -17,91 +33,51 @@
     public void setAlarmMsgService(IOdsAlarmMsgService alarmMsgService) {
         this.alarmMsgService = alarmMsgService;
     }
-//
-//    @ApiOperation("鑾峰彇鎵�灞炲崟浣�")
-//    @RequestMapping(value = "/customer/list", method = RequestMethod.GET)
-//    @ResponseBody
-//    @LogSave(operationType = "娌圭儫妯″潡", contain = "鑾峰彇鎵�灞炲崟浣�")
-//    public CommonResult<CommonPage<OdsCustomer>> findCustomerList(@RequestParam(value = "keyword", required = false) String keyword,
-//                                                                  @RequestParam(value = "pageSize", defaultValue = "5") Integer pageSize,
-//                                                                  @RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum) {
-//        Page<OdsCustomer> customerPage = customerService.findList(keyword, pageSize, pageNum);
-//        return CommonResult.success(CommonPage.restPage(customerPage));
-//    }
-//
-//    @ApiOperation("鏌ヨ瀹炴椂鏁版嵁")
-//    @RequestMapping(value = "/inTime/list", method = RequestMethod.GET)
-//    @ResponseBody
-//    @LogSave(operationType = "娌圭儫妯″潡", contain = "鏌ヨ瀹炴椂鏁版嵁")
-//    public CommonResult<CommonPage<OdsInTime>> findInTimeList(@RequestParam(value = "owner", required = false) String owner,
-//                                                              @RequestParam(value = "onlineStatus", required = false) String onlineStatus,
-//                                                              @RequestParam(value = "status", required = false) String status,
-//                                                              @RequestParam(value = "startTime", required = false) String startTime,
-//                                                              @RequestParam(value = "endTime", required = false) String endTime,
-//                                                              @RequestParam(value = "type", required = false) String type,
-//                                                              @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize,
-//                                                              @RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum) {
-//        Page<OdsInTime> inTimePage = inTimeService.findList(owner, onlineStatus, startTime, endTime, type, status, pageSize, pageNum);
-//        return CommonResult.success(CommonPage.restPage(inTimePage));
-//    }
-//
-//    @ApiOperation("瀵煎嚭瀹炴椂鏁版嵁")
-//    @PostMapping(value = "/inTime/export")
-//    @LogSave(operationType = "娌圭儫妯″潡", contain = "鏌ヨ瀹炴椂鏁版嵁")
-//    public void exportInTimeList(HttpServletResponse response, QueryInTimeParam param) throws IOException {
-//        Page<OdsInTime> inTimePage = inTimeService.findList(param.getOwner(), param.getOnlineStatus(), param.getStartTime(),
-//                param.getEndTime(), param.getType(), param.getStatus(), 99999, 1);
-//
-//        List<OdsInTimeVo> odsInTimeVos = new ArrayList<>();
-//        Dictionary<Integer, String> fanStatusDic = new Hashtable<>();
-//        fanStatusDic.put(1, "寮�");
-//        fanStatusDic.put(2, "鍏�");
-//        fanStatusDic.put(3, "寮傚父");
-//        fanStatusDic.put(0, "寮傚父");
-//
-//        Dictionary<Integer, String> onlineStatusDic = new Hashtable<>();
-//        onlineStatusDic.put(1, "鍦ㄧ嚎");
-//        onlineStatusDic.put(2, "绂荤嚎");
-//        onlineStatusDic.put(3, "寮傚父绂荤嚎");
-//        onlineStatusDic.put(0, "寮傚父绂荤嚎");
-//
-//        Dictionary<String, String> statusDic = new Hashtable<>();
-//        statusDic.put("NORMAL", "姝e父");
-//        statusDic.put("ALARM", "棰勮");
-//        statusDic.put("EXCESS", "瓒呮爣");
-//        statusDic.put("DOWN", "绂荤嚎");
-//        statusDic.put("OFF", "寮傚父绂荤嚎");
-//
-//        inTimePage.getRecords().stream().forEach(o -> {
-//            OdsInTimeVo vo = new OdsInTimeVo();
-//            BeanUtils.copyProperties(o, vo);
-//            vo.setAcquitAtStr(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date(o.getAcquitAt() * 1000)));
-//            vo.setFanStatusStr(fanStatusDic.get(o.getFanStatus()));
-//            vo.setFilterStatusStr(fanStatusDic.get(o.getFilterStatus()));
-//            vo.setOnlineStatusStr(onlineStatusDic.get(o.getOnlineStatus()));
-//            vo.setStatusStr(statusDic.get(o.getStatus()));
-//            odsInTimeVos.add(vo);
-//        });
-//
-//        String sheetName = "瀹炴椂鏁版嵁";
-//
-//        String fileName = URLEncoder.encode(sheetName + ".xlsx", "UTF-8");
-//        //璁剧疆鍝嶅簲瀛楃闆�
-//        response.setCharacterEncoding("UTF-8");
-//        //璁剧疆鍝嶅簲濯掍綋绫诲瀷
-//        response.setContentType("application/vnd.ms-excel");
-//        response.setHeader("Content-Disposition", "attachment;filename=" + fileName);
-//
-//        EasyExcelUtils.export(response, sheetName, OdsInTimeVo.class, odsInTimeVos);
-//    }
-//
-//
-//    @ApiOperation("鑾峰彇璁惧鍦ㄧ嚎鎯呭喌")
-//    @RequestMapping(value = "/inTime/count", method = RequestMethod.GET)
-//    @ResponseBody
-//    @LogSave(operationType = "娌圭儫妯″潡", contain = "鑾峰彇璁惧鍦ㄧ嚎鎯呭喌")
-//    public CommonResult<InTimeCountDto> getInTimeCount() {
-//        InTimeCountDto dto = inTimeService.getInTimeCount();
-//        return CommonResult.success(dto);
-//    }
+
+    @ApiOperation("鏌ヨ鎶ヨ鏁版嵁")
+    @RequestMapping(value = "/alarm/list", method = RequestMethod.GET)
+    @ResponseBody
+    @LogSave(operationType = "娌圭儫妯″潡", contain = "鏌ヨ鎶ヨ鏁版嵁")
+    public CommonResult<CommonPage<OdsAlarmMsg>> findAlarmList(@RequestParam(value = "msgType", required = false) String type,
+                                                               @RequestParam(value = "startTime", required = false) String startTime,
+                                                               @RequestParam(value = "endTime", required = false) String endTime,
+                                                               @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize,
+                                                               @RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum) {
+        Page<OdsAlarmMsg> page = alarmMsgService.findList(type, startTime, endTime, pageSize, pageNum);
+        return CommonResult.success(CommonPage.restPage(page));
+    }
+
+    @ApiOperation("瀵煎嚭鎶ヨ鏁版嵁")
+    @PostMapping(value = "/alarm/export")
+    @LogSave(operationType = "娌圭儫妯″潡", contain = "瀵煎嚭鎶ヨ鏁版嵁")
+    public void exportAlarmList(HttpServletResponse response, QueryAlarmParam param) throws IOException {
+        Page<OdsAlarmMsg> page = alarmMsgService.findList(param.getMsgType(), param.getStartTime(),
+                param.getEndTime(), 99999, 1);
+
+        List<OdsAlarmVo> alarmMsgs = new ArrayList<>();
+
+        Dictionary<String, String> msgTypeDic = new Hashtable<>();
+        msgTypeDic.put("ExceedStandard", "瓒呮爣");
+        msgTypeDic.put("AbnormalOffline", "寮傚父绂荤嚎");
+
+        page.getRecords().stream().forEach(o -> {
+            OdsAlarmVo vo = new OdsAlarmVo();
+            BeanUtils.copyProperties(o, vo);
+            vo.setAcquitAtStr(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date(o.getAcquitAt() * 1000)));
+            vo.setMsgTypeStr(msgTypeDic.get(o.getMsgType()));
+            alarmMsgs.add(vo);
+        });
+
+        String sheetName = "鎶ヨ娑堟伅";
+
+        String fileName = URLEncoder.encode(sheetName + ".xlsx", "UTF-8");
+        //璁剧疆鍝嶅簲瀛楃闆�
+        response.setCharacterEncoding("UTF-8");
+        //璁剧疆鍝嶅簲濯掍綋绫诲瀷
+        response.setContentType("application/vnd.ms-excel");
+        response.setHeader("Content-Disposition", "attachment;filename=" + fileName);
+
+        EasyExcelUtils.export(response, sheetName, OdsAlarmVo.class, alarmMsgs);
+    }
+
 }
\ No newline at end of file

--
Gitblit v1.8.0