Browse Source

2021/6/28 室内外环境Excel导出

yinhao 4 năm trước cách đây
mục cha
commit
b6c0f5f0b7
22 tập tin đã thay đổi với 197 bổ sung98 xóa
  1. 0 1
      huimv-smart-management/src/main/java/com/huimv/management/HuimvSmartManagementApplication.java
  2. 8 0
      huimv-smart-management/src/main/java/com/huimv/management/controller/DrinkingWaterController.java
  3. 1 1
      huimv-smart-management/src/main/java/com/huimv/management/controller/HealthImmuneRecordController.java
  4. 8 1
      huimv-smart-management/src/main/java/com/huimv/management/controller/IndoorEnvironmentController.java
  5. 8 1
      huimv-smart-management/src/main/java/com/huimv/management/controller/OutdoorEnvironmentController.java
  6. 3 0
      huimv-smart-management/src/main/java/com/huimv/management/dao/DrinkingWaterDao.java
  7. 4 0
      huimv-smart-management/src/main/java/com/huimv/management/dao/IndoorEnvironmentDao.java
  8. 5 1
      huimv-smart-management/src/main/java/com/huimv/management/dao/OutdoorEnvironmentDao.java
  9. 8 0
      huimv-smart-management/src/main/java/com/huimv/management/entity/vo/DrinkingWaterVo.java
  10. 9 1
      huimv-smart-management/src/main/java/com/huimv/management/entity/vo/IndoorEnvironmentVo.java
  11. 7 0
      huimv-smart-management/src/main/java/com/huimv/management/entity/vo/OutdoorEnvironmentVo.java
  12. 8 0
      huimv-smart-management/src/main/java/com/huimv/management/service/DrinkingWaterService.java
  13. 8 0
      huimv-smart-management/src/main/java/com/huimv/management/service/IndoorEnvironmentService.java
  14. 8 0
      huimv-smart-management/src/main/java/com/huimv/management/service/OutdoorEnvironmentService.java
  15. 38 22
      huimv-smart-management/src/main/java/com/huimv/management/service/impl/DrinkingWaterServiceImpl.java
  16. 1 1
      huimv-smart-management/src/main/java/com/huimv/management/service/impl/EatTimeServiceImpl.java
  17. 2 2
      huimv-smart-management/src/main/java/com/huimv/management/service/impl/HealthImmuneRecordServiceImpl.java
  18. 1 1
      huimv-smart-management/src/main/java/com/huimv/management/service/impl/HealthIsolationRecordServiceImpl.java
  19. 37 41
      huimv-smart-management/src/main/java/com/huimv/management/service/impl/IndoorEnvironmentServiceImpl.java
  20. 28 23
      huimv-smart-management/src/main/java/com/huimv/management/service/impl/OutdoorEnvironmentServiceImpl.java
  21. 4 2
      huimv-smart-management/src/main/java/com/huimv/management/service/impl/ThresholdManagementServiceImpl.java
  22. 1 0
      huimv-smart-management/src/main/resources/logback-spring.xml

+ 0 - 1
huimv-smart-management/src/main/java/com/huimv/management/HuimvSmartManagementApplication.java

@@ -3,7 +3,6 @@ package com.huimv.management;
 import org.mybatis.spring.annotation.MapperScan;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
 import org.springframework.context.annotation.Bean;
 import org.springframework.web.client.RestTemplate;
 

+ 8 - 0
huimv-smart-management/src/main/java/com/huimv/management/controller/DrinkingWaterController.java

@@ -10,7 +10,9 @@ import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.servlet.ModelAndView;
 
+import javax.servlet.http.HttpServletRequest;
 import java.util.Map;
 
 /**
@@ -38,4 +40,10 @@ public class DrinkingWaterController {
         PageUtils page = drinkingWaterService.queryPage(params);
         return R.ok().put("page", page);
     }
+
+    @GetMapping("/exportXls")
+    public ModelAndView exportXls(@RequestParam Map<String, Object> params, HttpServletRequest request){
+        return drinkingWaterService.exportXls(params);
+    }
+
 }

+ 1 - 1
huimv-smart-management/src/main/java/com/huimv/management/controller/HealthImmuneRecordController.java

@@ -100,7 +100,7 @@ public class HealthImmuneRecordController {
 
 
         String vaccineName = (String)map.get("vaccineName");
-        Integer farmId = Integer.parseInt((String)map.get("farmId"));
+        Integer farmId = Integer.parseInt((String)map.get("formFarmId"));
         Integer manId = (Integer)map.get("manId");
 
         healthImmuneRecordService.saveAll(split,vaccineName,farmId,manName,manId);

+ 8 - 1
huimv-smart-management/src/main/java/com/huimv/management/controller/IndoorEnvironmentController.java

@@ -11,10 +11,12 @@ import com.huimv.management.entity.IndoorEnvironmentEntity;
 import com.huimv.management.service.IndoorEnvironmentService;
 import com.huimv.common.utils.PageUtils;
 import com.huimv.common.utils.R;
+import org.springframework.web.servlet.ModelAndView;
 
+import javax.servlet.http.HttpServletRequest;
 
 
-/**
+ /**
  * 室内环境信息Controller
  *
  * @author yinhao
@@ -77,4 +79,9 @@ public class IndoorEnvironmentController {
         return R.ok();
     }
 
+    @GetMapping("/exportXls")
+    public ModelAndView exportXls(@RequestParam Map<String, Object> params, HttpServletRequest request) {
+        return indoorEnvironmentService.exportXls(params);
+    }
+
 }

+ 8 - 1
huimv-smart-management/src/main/java/com/huimv/management/controller/OutdoorEnvironmentController.java

@@ -11,10 +11,12 @@ import com.huimv.management.entity.OutdoorEnvironmentEntity;
 import com.huimv.management.service.OutdoorEnvironmentService;
 import com.huimv.common.utils.PageUtils;
 import com.huimv.common.utils.R;
+import org.springframework.web.servlet.ModelAndView;
 
+import javax.servlet.http.HttpServletRequest;
 
 
-/**
+ /**
  * 室外环境信息Controller
  *
  * @author yinhao
@@ -79,4 +81,9 @@ public class OutdoorEnvironmentController {
         return R.ok();
     }
 
+    @GetMapping("/exportXls")
+    public ModelAndView exportXls(@RequestParam Map<String, Object> params, HttpServletRequest request) {
+        return outdoorEnvironmentService.exportXls(params);
+    }
+
 }

+ 3 - 0
huimv-smart-management/src/main/java/com/huimv/management/dao/DrinkingWaterDao.java

@@ -10,6 +10,8 @@ import com.huimv.management.entity.vo.IndoorEnvironmentVo;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.List;
+
 /**
  * 饮用水指标表
  * 
@@ -22,5 +24,6 @@ public interface DrinkingWaterDao extends BaseMapper<DrinkingWaterEntity> {
 
     IPage<DrinkingWaterVo> page(@Param("page") IPage page, @Param("ew") QueryWrapper queryWrapper);
 
+    List<DrinkingWaterVo> page(@Param("ew") QueryWrapper queryWrapper);
 
 }

+ 4 - 0
huimv-smart-management/src/main/java/com/huimv/management/dao/IndoorEnvironmentDao.java

@@ -8,6 +8,8 @@ import com.huimv.management.entity.vo.IndoorEnvironmentVo;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.List;
+
 /**
  * 室内环境信息表
  * 
@@ -19,4 +21,6 @@ import org.apache.ibatis.annotations.Param;
 public interface IndoorEnvironmentDao extends BaseMapper<IndoorEnvironmentEntity> {
 
     IPage<IndoorEnvironmentVo> page(@Param("page") IPage page, @Param("ew") QueryWrapper queryWrapper);
+
+    List<IndoorEnvironmentVo> page(@Param("ew") QueryWrapper queryWrapper);
 }

+ 5 - 1
huimv-smart-management/src/main/java/com/huimv/management/dao/OutdoorEnvironmentDao.java

@@ -8,9 +8,11 @@ import com.huimv.management.entity.vo.OutdoorEnvironmentVo;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.List;
+
 /**
  * 室外环境信息表
- * 
+ *
  * @author yinhao
  * @email yinhao@163.com
  * @date 2021-05-07 15:32:42
@@ -19,4 +21,6 @@ import org.apache.ibatis.annotations.Param;
 public interface OutdoorEnvironmentDao extends BaseMapper<OutdoorEnvironmentEntity> {
 
     IPage<OutdoorEnvironmentVo> page(@Param("page") IPage page, @Param("ew") QueryWrapper queryWrapper);
+
+    List<OutdoorEnvironmentVo> page(@Param("ew") QueryWrapper queryWrapper);
 }

+ 8 - 0
huimv-smart-management/src/main/java/com/huimv/management/entity/vo/DrinkingWaterVo.java

@@ -2,6 +2,7 @@ package com.huimv.management.entity.vo;
 
 import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
+import org.jeecgframework.poi.excel.annotation.Excel;
 
 import java.io.Serializable;
 import java.util.Date;
@@ -25,30 +26,37 @@ public class DrinkingWaterVo implements Serializable {
     /**
      * 当前日期
      */
+    @Excel(name = "日期",width = 15,format = "yyyy-MM-dd")
     @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GTM+8")
     private Date date;
     /**
      * 牧场id
      */
+    @Excel(name = "牧场id")
     private Integer farmId;
     /**
      * 牧场名称
      */
+    @Excel(name = "牧场名称",width = 15)
     private String farmName;
     /**
      * 豬舍id
      */
+    @Excel(name = "猪舍id")
     private Integer pigstyId;
     /**
      * 猪舍名称
      */
+    @Excel(name = "猪舍名称",width = 15)
     private String pigstyName;
     /**
      * 饮用水质量
      */
+    @Excel(name = "饮用水质量",width = 15)
     private String drinkingWaterQuality;
     /**
      * 采集时间
      */
+    @Excel(name = "采集时间",width = 20,format = "yyyy-MM-dd HH:mm:ss")
     private Date collectTime;
 }

+ 9 - 1
huimv-smart-management/src/main/java/com/huimv/management/entity/vo/IndoorEnvironmentVo.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
+import org.jeecgframework.poi.excel.annotation.Excel;
 
 import java.io.Serializable;
 import java.util.Date;
@@ -30,7 +31,8 @@ public class IndoorEnvironmentVo implements Serializable {
     /**
      * 日期
      */
-    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+    @Excel(name = "日期", width = 15, format = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
     private Date date;
     /**
      * 牧场id
@@ -39,6 +41,7 @@ public class IndoorEnvironmentVo implements Serializable {
     /**
      * 牧场名称
      */
+    @Excel(name = "牧场名称", width = 15)
     private String farmName;
     /**
      * 豬舍id
@@ -47,22 +50,27 @@ public class IndoorEnvironmentVo implements Serializable {
     /**
      * 猪舍名称
      */
+    @Excel(name = "猪舍名称", width = 15)
     private String pigstyName;
     /**
      * 温度
      */
+    @Excel(name = "温度")
     private Double temperature;
     /**
      * 湿度
      */
+    @Excel(name = "湿度")
     private Double humidity;
     /**
      * 气体
      */
+    @Excel(name = "空气质量指数")
     private String airQuality;
     /**
      * 采集时间
      */
+    @Excel(name = "采集时间", width = 20, format = "HH:mm:ss")
     private Date collectTime;
 
 //    /**

+ 7 - 0
huimv-smart-management/src/main/java/com/huimv/management/entity/vo/OutdoorEnvironmentVo.java

@@ -2,6 +2,7 @@ package com.huimv.management.entity.vo;
 
 import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
+import org.jeecgframework.poi.excel.annotation.Excel;
 
 import java.io.Serializable;
 import java.util.Date;
@@ -25,6 +26,7 @@ public class OutdoorEnvironmentVo implements Serializable {
     /**
      * 当前日期
      */
+    @Excel(name = "日期",width = 15,format = "yyyy-MM-dd")
     @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GTM+8")
     private Date date;
     /**
@@ -34,21 +36,26 @@ public class OutdoorEnvironmentVo implements Serializable {
     /**
      * 牧场名称
      */
+    @Excel(name = "牧场名称",width = 15)
     private String farmName;
     /**
      * 温度
      */
+    @Excel(name = "温度")
     private Double temperature;
     /**
      * 湿度
      */
+    @Excel(name = "湿度")
     private Double humidity;
     /**
      * 气体
      */
+    @Excel(name = "气体")
     private String airQuality;
     /**
      * 采集时间
      */
+    @Excel(name = "采集时间", width = 20, format = "HH:mm:ss")
     private Date collectTime;
 }

+ 8 - 0
huimv-smart-management/src/main/java/com/huimv/management/service/DrinkingWaterService.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
 import com.huimv.common.utils.PageUtils;
 import com.huimv.management.entity.DrinkingWaterEntity;
 import com.huimv.management.entity.IndoorEnvironmentEntity;
+import org.springframework.web.servlet.ModelAndView;
 
 import java.util.Map;
 
@@ -22,5 +23,12 @@ public interface DrinkingWaterService extends IService<DrinkingWaterEntity> {
      * @return
      */
     PageUtils queryPage(Map<String, Object> params);
+
+    /**
+     * 导出excel
+     * @param params
+     * @return
+     */
+    ModelAndView exportXls(Map<String, Object> params);
 }
 

+ 8 - 0
huimv-smart-management/src/main/java/com/huimv/management/service/IndoorEnvironmentService.java

@@ -3,6 +3,7 @@ package com.huimv.management.service;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.huimv.common.utils.PageUtils;
 import com.huimv.management.entity.IndoorEnvironmentEntity;
+import org.springframework.web.servlet.ModelAndView;
 
 import java.util.Map;
 
@@ -21,5 +22,12 @@ public interface IndoorEnvironmentService extends IService<IndoorEnvironmentEnti
      * @return
      */
     PageUtils queryPage(Map<String, Object> params);
+
+    /**
+     * 导出Excel
+     * @param params
+     * @return
+     */
+    ModelAndView exportXls(Map<String, Object> params);
 }
 

+ 8 - 0
huimv-smart-management/src/main/java/com/huimv/management/service/OutdoorEnvironmentService.java

@@ -3,6 +3,7 @@ package com.huimv.management.service;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.huimv.common.utils.PageUtils;
 import com.huimv.management.entity.OutdoorEnvironmentEntity;
+import org.springframework.web.servlet.ModelAndView;
 
 import java.util.Map;
 
@@ -21,5 +22,12 @@ public interface OutdoorEnvironmentService extends IService<OutdoorEnvironmentEn
      * @return
      */
     PageUtils queryPage(Map<String, Object> params);
+
+    /**
+     * 导出Excel
+     * @param params
+     * @return
+     */
+    ModelAndView exportXls(Map<String, Object> params);
 }
 

+ 38 - 22
huimv-smart-management/src/main/java/com/huimv/management/service/impl/DrinkingWaterServiceImpl.java

@@ -21,54 +21,76 @@ import com.huimv.management.entity.vo.IndoorEnvironmentVo;
 import com.huimv.management.service.DrinkingWaterService;
 import com.huimv.management.service.IndoorEnvironmentService;
 import org.apache.commons.lang3.StringUtils;
+import org.jeecgframework.poi.excel.def.NormalExcelConstants;
+import org.jeecgframework.poi.excel.entity.ExportParams;
+import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.web.servlet.ModelAndView;
 
 import java.util.List;
 import java.util.Map;
 
 /**
  * <p>
- *  饮用水指标ServiceImpl
+ * 饮用水指标ServiceImpl
  * </p>
- * 
+ *
  * @author yinhao
- * @since 2021/6/11 16:46
  * @version 1.0
+ * @since 2021/6/11 16:46
  */
 @Service("drinkingWaterService")
 public class DrinkingWaterServiceImpl extends ServiceImpl<DrinkingWaterDao, DrinkingWaterEntity> implements DrinkingWaterService {
 
-    @Autowired
-    private FarmDao farmDao;
+    @Override
+    public PageUtils queryPage(Map<String, Object> params) {
+        QueryWrapper<DrinkingWaterVo> queryWrapper = buildQueryWrapper(params);
 
-    @Autowired
-    private PigstyDao pigstyDao;
+        //mapper文件sql编写并返回分页对象
+        IPage<DrinkingWaterVo> page = baseMapper.page(new Query<>().getPage(params), queryWrapper);
+        return new PageUtils(page);
+    }
 
     @Override
-    public PageUtils queryPage(Map<String, Object> params) {
+    public ModelAndView exportXls(Map<String, Object> params) {
+
+        //准备数据
+        QueryWrapper<DrinkingWaterVo> queryWrapper = buildQueryWrapper(params);
+        List<DrinkingWaterVo> list = baseMapper.page(queryWrapper);
+        //构建auto-poi mv对象,导出数据
+        ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
+        mv.addObject(NormalExcelConstants.FILE_NAME,"饮用水指标");
+        mv.addObject(NormalExcelConstants.CLASS, DrinkingWaterVo.class);
+        mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("饮用水指标列表数据", "导出信息"));
+        mv.addObject(NormalExcelConstants.DATA_LIST, list);
 
+        return mv;
+
+    }
+
+    private QueryWrapper<DrinkingWaterVo> buildQueryWrapper(Map<String, Object> params) {
         //构建条件查询wrapper
         QueryWrapper<DrinkingWaterVo> queryWrapper = new QueryWrapper<>();
 
         //异常状态
         String abnormalStatus = (String) params.get("abnormalStatus");
-        if (StringUtils.isNotEmpty(abnormalStatus)) {
-            queryWrapper.eq("water.abnormal_status", Boolean.parseBoolean(abnormalStatus));
+        if (StringUtils.isEmpty(abnormalStatus)) {
+            throw new RRException("请选择正常/异常状态!");
         }
+        queryWrapper.eq("water.abnormal_status", Boolean.parseBoolean(abnormalStatus));
 
         //牧场名称
         String farmId = (String) params.get("formFarmId");
-        if (StringUtils.isNotBlank(farmId)) {
-                queryWrapper.eq("water.farm_id", Integer.parseInt(farmId));
+        if (StringUtils.isBlank(farmId)) {
+            throw new RRException("请先选择要查询的牧场!");
         }
+        queryWrapper.eq("water.farm_id", Integer.parseInt(farmId));
+
 
         //猪舍id
         String pigstyId = (String) params.get("pigstyId");
         if (StringUtils.isNotBlank(pigstyId)) {
-            if (StringUtils.isBlank(farmId)) {
-                throw new RRException("请先选择要查询的牧场!");
-            }
             int val = Integer.parseInt(pigstyId);
             queryWrapper.eq("water.pigsty_id", val);
         }
@@ -88,12 +110,6 @@ public class DrinkingWaterServiceImpl extends ServiceImpl<DrinkingWaterDao, Drin
         //排除逻辑删除
         queryWrapper.apply(" water.deleted = 0 AND farm.deleted = 0 AND pigsty.deleted = 0");
         queryWrapper.orderByDesc("water.collect_time");
-
-        //mapper文件sql编写并返回分页对象
-        IPage<DrinkingWaterVo> page = baseMapper.page(new Query<>().getPage(params), queryWrapper);
-        return new PageUtils(page);
+        return queryWrapper;
     }
-    
-
-
 }

+ 1 - 1
huimv-smart-management/src/main/java/com/huimv/management/service/impl/EatTimeServiceImpl.java

@@ -25,7 +25,7 @@ public class EatTimeServiceImpl extends ServiceImpl<EatTimeDao, EatTimeEntity> i
         LambdaQueryWrapper<EatTimeEntity> lambdaQuery = Wrappers.lambdaQuery();
         String keywords = (String) params.get("keywords");
         //没有参数
-        if (keywords == null || keywords.equals("")){
+        if (keywords == null || "".equals(keywords)){
             IPage<EatTimeEntity> page = this.page(
                     new Query<EatTimeEntity>().getPage(params),
                     new QueryWrapper<EatTimeEntity>()

+ 2 - 2
huimv-smart-management/src/main/java/com/huimv/management/service/impl/HealthImmuneRecordServiceImpl.java

@@ -23,13 +23,13 @@ public class HealthImmuneRecordServiceImpl extends ServiceImpl<HealthImmuneRecor
     @Override
     public PageUtils queryPage(Map<String, Object> params) {
         //根据牧场查询
-        String farmId = (String) params.get("farmId");
+        String farmId = (String) params.get("formFarmId");
         String eartag = (String)params.get("eartag");
 
         QueryWrapper<HealthImmuneRecordEntity> wrapper = new QueryWrapper<HealthImmuneRecordEntity>();
         wrapper.eq(StringUtils.isNotBlank(farmId),"farm_id",farmId);
         if (StringUtils.isNotBlank(eartag)){
-            wrapper.like("pig_id",eartag);
+            wrapper.like(StringUtils.isNotBlank(eartag),"pig_id",eartag);
         }
 
         IPage<HealthImmuneRecordEntity> page = this.page(

+ 1 - 1
huimv-smart-management/src/main/java/com/huimv/management/service/impl/HealthIsolationRecordServiceImpl.java

@@ -27,7 +27,7 @@ public class HealthIsolationRecordServiceImpl extends ServiceImpl<HealthIsolatio
         wrapper.eq(StringUtils.isNotBlank(farmId),"farm_id",farmId);
 
        String eartag = (String)params.get("eartag");
-       wrapper.like("pig_id",eartag);
+       wrapper.like(StringUtils.isNotBlank(eartag),"pig_code",eartag);
 
         IPage<HealthIsolationRecordEntity> page = this.page(
                 new Query<HealthIsolationRecordEntity>().getPage(params),

+ 37 - 41
huimv-smart-management/src/main/java/com/huimv/management/service/impl/IndoorEnvironmentServiceImpl.java

@@ -10,8 +10,12 @@ import com.huimv.management.dao.FarmDao;
 import com.huimv.management.dao.PigstyDao;
 import com.huimv.management.entity.FarmEntity;
 import com.huimv.management.entity.IndoorEnvironmentEntity;
+import com.huimv.management.entity.vo.DrinkingWaterVo;
 import com.huimv.management.entity.vo.IndoorEnvironmentVo;
 import org.apache.commons.lang3.StringUtils;
+import org.jeecgframework.poi.excel.def.NormalExcelConstants;
+import org.jeecgframework.poi.excel.entity.ExportParams;
+import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -25,10 +29,11 @@ import com.huimv.common.utils.Query;
 
 import com.huimv.management.dao.IndoorEnvironmentDao;
 import com.huimv.management.service.IndoorEnvironmentService;
+import org.springframework.web.servlet.ModelAndView;
 
 /**
  * <p>
- *  室内环境ServiceImpl
+ * 室内环境ServiceImpl
  * </p>
  *
  * @author yinhao
@@ -38,30 +43,47 @@ import com.huimv.management.service.IndoorEnvironmentService;
 @Service("indoorEnvironmentService")
 public class IndoorEnvironmentServiceImpl extends ServiceImpl<IndoorEnvironmentDao, IndoorEnvironmentEntity> implements IndoorEnvironmentService {
 
-    @Autowired
-    private FarmDao farmDao;
-
-    @Autowired
-    private PigstyDao pigstyDao;
 
     @Override
     public PageUtils queryPage(Map<String, Object> params) {
+        QueryWrapper<IndoorEnvironmentVo> queryWrapper = buildQueryWrapper(params);
+
+        //mapper文件sql编写并返回分页结果
+        IPage<IndoorEnvironmentVo> page = baseMapper.page(new Query<>().getPage(params), queryWrapper);
+        return new PageUtils(page);
+    }
 
+    @Override
+    public ModelAndView exportXls(Map<String, Object> params) {
+        QueryWrapper<IndoorEnvironmentVo> queryWrapper = buildQueryWrapper(params);
+        List<IndoorEnvironmentVo> list = baseMapper.page(queryWrapper);
+
+        //构建auto-poi mv对象,导出数据
+        ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
+        mv.addObject(NormalExcelConstants.FILE_NAME,"室内环境");
+        mv.addObject(NormalExcelConstants.CLASS, IndoorEnvironmentVo.class);
+        mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("室内环境列表数据", "导出信息"));
+        mv.addObject(NormalExcelConstants.DATA_LIST, list);
+
+        return mv;
+    }
+
+    private QueryWrapper<IndoorEnvironmentVo> buildQueryWrapper(Map<String, Object> params) {
         //构建条件wrapper
         QueryWrapper<IndoorEnvironmentVo> queryWrapper = new QueryWrapper<>();
-
         //异常状态
         String abnormalStatus = (String) params.get("abnormalStatus");
-        if (StringUtils.isNotEmpty(abnormalStatus)) {
-            queryWrapper.eq("env.abnormal_status", Boolean.parseBoolean(abnormalStatus));
+        if (StringUtils.isBlank(abnormalStatus)) {
+            throw new RRException("请选择正常/异常状态!");
         }
-
+        queryWrapper.eq("env.abnormal_status", Boolean.parseBoolean(abnormalStatus));
+        //牧场id
         String farmId = (String) params.get("formFarmId");
-        if (StringUtils.isNotBlank(farmId)) {
-            queryWrapper.eq("env.farm_id",Integer.parseInt(farmId));
+        if (StringUtils.isBlank(farmId)) {
+            throw new RRException("牧场id为必传参数!");
         }
-
-
+        queryWrapper.eq("env.farm_id", Integer.parseInt(farmId));
+        //猪舍id
         String pigstyId = (String) params.get("pigstyId");
         if (StringUtils.isNotBlank(pigstyId)) {
             if (StringUtils.isBlank(farmId)) {
@@ -70,46 +92,20 @@ public class IndoorEnvironmentServiceImpl extends ServiceImpl<IndoorEnvironmentD
             int val = Integer.parseInt(pigstyId);
             queryWrapper.eq("env.pigsty_id", val);
         }
-
-        //牧场名称
-//        String farmName = (String) params.get("farmName");
-//        if (farmName != null) {
-//            LambdaQueryWrapper<FarmEntity> query = Wrappers.<FarmEntity>lambdaQuery().like(FarmEntity::getName, farmName);
-//            List<Integer> idList = farmDao.selectIdList(query);
-//            if (CollUtil.isNotEmpty(idList)) {
-//                queryWrapper.in("env.farm_id", idList);
-//            }
-//        }
-
-        //猪舍名称
-//        String pigstyName = (String) params.get("pigstyName");
-//        if (StringUtils.isNotEmpty(pigstyName)) {
-//            List<Integer> idList = pigstyDao.selectIdListByPigstyName(pigstyName);
-//            if (CollUtil.isNotEmpty(idList)) {
-//                queryWrapper.in("env.pigsty_id", idList);
-//            }
-//        }
-
         //时间区间(前)
         String startTime = (String) params.get("startTime");
         if (StringUtils.isNotEmpty(startTime)) {
             queryWrapper.ge("env.collect_time", startTime);
         }
-
         //时间区间(后)
         String endTime = (String) params.get("endTime");
         if (StringUtils.isNotEmpty(endTime)) {
             queryWrapper.le("env.collect_time", endTime);
         }
-
         //排除逻辑删除
         queryWrapper.apply(" env.deleted = 0 AND farm.deleted = 0 AND pigsty.deleted = 0");
         //根据采集时间倒序查询
         queryWrapper.orderByDesc("env.collect_time");
-
-        //mapper文件sql编写并返回分页结果
-        IPage<IndoorEnvironmentVo> page = baseMapper.page(new Query<>().getPage(params), queryWrapper);
-        return new PageUtils(page);
+        return queryWrapper;
     }
-
 }

+ 28 - 23
huimv-smart-management/src/main/java/com/huimv/management/service/impl/OutdoorEnvironmentServiceImpl.java

@@ -6,8 +6,12 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.huimv.management.dao.FarmDao;
 import com.huimv.management.entity.FarmEntity;
 import com.huimv.management.entity.OutdoorEnvironmentEntity;
+import com.huimv.management.entity.vo.IndoorEnvironmentVo;
 import com.huimv.management.entity.vo.OutdoorEnvironmentVo;
 import org.apache.commons.lang3.StringUtils;
+import org.jeecgframework.poi.excel.def.NormalExcelConstants;
+import org.jeecgframework.poi.excel.entity.ExportParams;
+import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -22,6 +26,7 @@ import com.huimv.common.utils.Query;
 import com.huimv.management.dao.OutdoorEnvironmentDao;
 import com.huimv.management.entity.OutdoorEnvironmentEntity;
 import com.huimv.management.service.OutdoorEnvironmentService;
+import org.springframework.web.servlet.ModelAndView;
 
 /**
  * <p>
@@ -35,57 +40,57 @@ import com.huimv.management.service.OutdoorEnvironmentService;
 @Service("outdoorEnvironmentService")
 public class OutdoorEnvironmentServiceImpl extends ServiceImpl<OutdoorEnvironmentDao, OutdoorEnvironmentEntity> implements OutdoorEnvironmentService {
 
-    @Autowired
-    private FarmDao farmDao;
 
     @Override
     public PageUtils queryPage(Map<String, Object> params) {
+        QueryWrapper<OutdoorEnvironmentVo> queryWrapper = buildQueryWrapper(params);
 
+        //mapper文件sql编写并返回分页对象
+        IPage<OutdoorEnvironmentVo> page = baseMapper.page(new Query<>().getPage(params),queryWrapper);
+        return new PageUtils(page);
+    }
+
+    @Override
+    public ModelAndView exportXls(Map<String, Object> params) {
+        QueryWrapper<OutdoorEnvironmentVo> queryWrapper = buildQueryWrapper(params);
+        List<OutdoorEnvironmentVo> list = baseMapper.page(queryWrapper);
+
+        //构建auto-poi mv对象,导出数据
+        ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
+        mv.addObject(NormalExcelConstants.FILE_NAME,"室外环境");
+        mv.addObject(NormalExcelConstants.CLASS, OutdoorEnvironmentVo.class);
+        mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("室外环境列表数据", "导出信息"));
+        mv.addObject(NormalExcelConstants.DATA_LIST, list);
+
+        return mv;
+    }
+
+    private QueryWrapper<OutdoorEnvironmentVo> buildQueryWrapper(Map<String, Object> params) {
         //构建条件wrapper
         QueryWrapper<OutdoorEnvironmentVo> queryWrapper = new QueryWrapper<>();
-
         //异常状态
         String abnormalStatus = (String) params.get("abnormalStatus");
         if (StringUtils.isNotEmpty(abnormalStatus)) {
             queryWrapper.eq("env.abnormal_status", Boolean.parseBoolean(abnormalStatus));
         }
-
         String farmId = (String) params.get("formFarmId");
         if (StringUtils.isNotBlank(farmId)) {
             queryWrapper.eq("env.farm_id",Integer.parseInt(farmId));
         }
-
-
-        //牧场名称
-//        String farmName = (String) params.get("farmName");
-//        if (farmName != null) {
-//            LambdaQueryWrapper<FarmEntity> query = Wrappers.<FarmEntity>lambdaQuery().like(FarmEntity::getName, farmName);
-//            List<Integer> idList = farmDao.selectIdList(query);
-//            if (CollUtil.isNotEmpty(idList)) {
-//                queryWrapper.in("env.farm_id", idList);
-//            }
-//        }
-
         //时间区间(前)
         String startTime = (String) params.get("startTime");
         if (StringUtils.isNotEmpty(startTime)) {
             queryWrapper.ge("env.collect_time", startTime);
         }
-
         //时间区间(后)
         String endTime = (String) params.get("endTime");
         if (StringUtils.isNotEmpty(endTime)) {
             queryWrapper.le("env.collect_time", endTime);
         }
-
         //排除逻辑删除
         queryWrapper.apply(" env.deleted = 0 AND farm.deleted = 0");
         //根据采集时间倒序查询
         queryWrapper.orderByDesc("env.collect_time");
-
-        //mapper文件sql编写并返回分页对象
-        IPage<OutdoorEnvironmentVo> page = baseMapper.page(new Query<>().getPage(params),queryWrapper);
-        return new PageUtils(page);
+        return queryWrapper;
     }
-
 }

+ 4 - 2
huimv-smart-management/src/main/java/com/huimv/management/service/impl/ThresholdManagementServiceImpl.java

@@ -1,5 +1,6 @@
 package com.huimv.management.service.impl;
 
+import com.huimv.common.exception.RRException;
 import com.huimv.management.entity.vo.ThresholdManagementVo;
 import org.apache.commons.lang.StringUtils;
 import org.springframework.stereotype.Service;
@@ -34,9 +35,10 @@ public class ThresholdManagementServiceImpl extends ServiceImpl<ThresholdManagem
         QueryWrapper<ThresholdManagementVo> queryWrapper = new QueryWrapper<>();
 
         String farmId = (String) params.get("formFarmId");
-        if (StringUtils.isNotBlank(farmId)) {
-            queryWrapper.eq("farm_id", Integer.parseInt(farmId));
+        if (StringUtils.isBlank(farmId)) {
+            throw new RRException("牧场id为必传参数!");
         }
+        queryWrapper.eq("farm_id", Integer.parseInt(farmId));
 
         String thresholdType = (String) params.get("thresholdType");
         if (StringUtils.isNotBlank(thresholdType)) {

+ 1 - 0
huimv-smart-management/src/main/resources/logback-spring.xml

@@ -10,6 +10,7 @@
         <logger name="org.springboot.sample" level="INFO" />
         <logger name="com.huimv" level="DEBUG" />
         <logger name="com.alibaba.druid.pool" level="ERROR"/>
+        <logger name="org.mybatis.spring.mapper.ClassPathMapperScanner" level="ERROR"/>
     </springProfile>
 
     <!-- 生产环境 -->