Newspaper vor 2 Jahren
Ursprung
Commit
cd5d0325b6

+ 28 - 10
cloud-platform-main/src/main/java/com/huimv/modular/eartagregister/controller/EartagRegisterController.java

@@ -25,6 +25,8 @@ Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意
 package com.huimv.modular.eartagregister.controller;
 
 
+import cn.hutool.poi.excel.ExcelUtil;
+import cn.hutool.poi.excel.ExcelWriter;
 import com.alibaba.druid.sql.visitor.functions.Substring;
 import com.aliyun.oss.ClientException;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -49,6 +51,7 @@ import com.huimv.modular.eartagdata.mapper.EartagDataMapper;
 import com.huimv.modular.eartagdata.service.EartagDataService;
 import com.huimv.modular.eartagregister.entity.EartagRegister;
 import com.huimv.modular.eartagregister.entity.EartagRegisterVO;
+import com.huimv.modular.eartagregister.entity.EartagRegisterWarningVo;
 import com.huimv.modular.eartagregister.mapper.EartagRegisterMapper;
 import com.huimv.modular.eartagregister.param.EartagRegisterParam;
 import com.huimv.modular.eartagregister.service.EartagRegisterService;
@@ -66,7 +69,11 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
 
+import javax.servlet.ServletOutputStream;
+import javax.servlet.http.HttpServletResponse;
 import javax.xml.transform.Source;
+import java.io.IOException;
+import java.net.URLEncoder;
 import java.text.ParseException;
 import java.util.*;
 
@@ -124,18 +131,29 @@ public class EartagRegisterController{
         return strId.toString();
     }
     @PostMapping ("/test/listWarning")
-    public String listWarning(@RequestBody Map<String,Integer> map) {
+    public ResponseData listWarning(@RequestBody Map<String,Integer> map, HttpServletResponse response) throws IOException {
         Integer starId = map.get("starId");
         Integer endId = map.get("endId");
-        Integer starEartag = map.get("starEartag");
-        Integer endEartag  = map.get("endEartag");
-
-        for (int  i = starId ;i <= endId ; i++){
-            EartagRegister byId = eartagRegisterService.getById(i +100 );
-            byId.setEartagNo(starEartag+getStrId(endEartag));
-            eartagRegisterService.updateById(byId);
-        }
-        return "成功";
+        Integer minCountTime = map.get("minCountTime");
+        Integer maxCountTime = map.get("maxCountTime");
+        Integer minEarTemp = map.get("minEarTemp");
+        Integer maxEarTemp = map.get("maxEarTemp");
+        List<EartagRegisterWarningVo> eartagRegisters = eartagRegisterMapper.listWarning(starId, endId, minCountTime, maxCountTime, minEarTemp, maxEarTemp);
+
+        ExcelWriter writer = ExcelUtil.getWriter(true);
+        // 一次性写出list内的对象到excel,使用默认样式,强制输出标题
+        writer.write(eartagRegisters, true);
+        // 设置浏览器响应的格式
+        response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8");
+        String fileName = URLEncoder.encode("预警表", "UTF-8");
+        response.setHeader("Content-Disposition", "attachment;filename=" + fileName + ".xlsx");
+
+        ServletOutputStream out = response.getOutputStream();
+        writer.flush(out, true);
+        out.close();
+        writer.close();
+
+        return ResponseData.success(eartagRegisters);
     }
 
     //增加增删改查的功能  删除的时候删除所有的耳标:

+ 20 - 0
cloud-platform-main/src/main/java/com/huimv/modular/eartagregister/entity/EartagRegisterWarningVo.java

@@ -0,0 +1,20 @@
+package com.huimv.modular.eartagregister.entity;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import lombok.Data;
+
+@Data
+public class EartagRegisterWarningVo {
+    @Excel(name = "")
+    private String eartagNo;
+
+    @Excel(name = "")
+    private String location;
+
+    @Excel(name = "")
+    private Integer countTimes;
+
+    //为了统计上传次数增加的字段
+    @Excel(name = "")
+    private double earTemp;
+}

+ 8 - 1
cloud-platform-main/src/main/java/com/huimv/modular/eartagregister/mapper/EartagRegisterMapper.java

@@ -26,11 +26,15 @@ package com.huimv.modular.eartagregister.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.huimv.modular.eartagregister.entity.EartagRegister;
+import com.huimv.modular.eartagregister.entity.EartagRegisterWarningVo;
 import org.apache.ibatis.annotations.Delete;
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
+import org.hibernate.validator.constraints.br.CPF;
 import org.springframework.stereotype.Repository;
 
+import java.util.List;
+
 
 /**
  * 耳标注册
@@ -65,7 +69,10 @@ public interface EartagRegisterMapper extends BaseMapper<EartagRegister> {
     //删除所有耳标号为传入耳标号的耳标
     @Delete(" DELETE   FROM    `eartag_register` WHERE    eartag_no =#{eartag_no}    ")
     void    deleteByeartagnoFromEartagregister(@Param("eartag_no") String eartag_no);
-     //定时更新耳标绑定的基站信息
+
+    @Select("SELECT  eartag_no ,count_times , ear_temp ,location  FROM `eartag_register` WHERE id BETWEEN #{starId} AND #{endId}   AND ( count_times < #{minCountTime} OR count_times > #{maxCountTime}  OR  ear_temp < #{minEarTemp} OR ear_temp > #{maxEarTemp})")
+    List<EartagRegisterWarningVo> listWarning(@Param("starId") Integer starId, @Param("endId") Integer endId, @Param("minCountTime") Integer minCountTime, @Param("maxCountTime") Integer maxCountTime, @Param("minEarTemp") Integer minEarTemp, @Param("maxEarTemp") Integer maxEarTemp);
+    //定时更新耳标绑定的基站信息
     
 
 }