Browse Source

2021/6/10 16:23 环境管理(设备未接入)

yinhao 4 years ago
parent
commit
d62af3dad3

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

@@ -97,6 +97,8 @@ public class HealthImmuneRecordController {
         String eartags = (String)map.get("eartags");
         String manName = (String)map.get("manName");
         String[] split = eartags.split(",");
+
+
         String vaccineName = (String)map.get("vaccineName");
         Integer farmId = Integer.parseInt((String)map.get("farmId"));
         Integer manId = (Integer)map.get("manId");

+ 13 - 1
huimv-smart-management/src/main/java/com/huimv/management/dao/ThresholdManagementDao.java

@@ -1,8 +1,12 @@
 package com.huimv.management.dao;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.huimv.management.entity.ThresholdManagementEntity;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.huimv.management.entity.vo.ThresholdManagementVo;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 /**
  * 
@@ -13,5 +17,13 @@ import org.apache.ibatis.annotations.Mapper;
  */
 @Mapper
 public interface ThresholdManagementDao extends BaseMapper<ThresholdManagementEntity> {
-	
+
+    /**
+     * 分页条件查询
+     * @param page
+     * @param queryWrapper
+     * @return
+     */
+    IPage<ThresholdManagementVo> page(@Param("page") IPage page,@Param("ew") QueryWrapper queryWrapper);
+
 }

+ 10 - 2
huimv-smart-management/src/main/java/com/huimv/management/entity/ThresholdManagementEntity.java

@@ -24,14 +24,22 @@ public class ThresholdManagementEntity implements Serializable {
 	@TableId
 	private Integer id;
 	/**
-	 * 阈值名称
+	 * 牧场id
 	 */
-	private String thresholdName;
+	private Integer farmId;
 	/**
 	 * 阈值类型
 	 */
 	private Integer thresholdType;
 	/**
+	 * 所属范围
+	 * 1.室内
+	 * 2.室外
+	 * 3.体温
+	 * 4.饮用水
+	 */
+	private Short belongTo;
+	/**
 	 * 阈值数值
 	 */
 	private Double thresholdValue;

+ 11 - 0
huimv-smart-management/src/main/java/com/huimv/management/entity/WarningInfoEntity.java

@@ -38,6 +38,10 @@ public class WarningInfoEntity implements Serializable {
 	 */
 	private Integer pigstyId;
 	/**
+	 * 耳标号
+	 */
+	private Integer earTag;
+	/**
 	 * 报警类型 
 		--室内环境
 		1:室内高温
@@ -56,6 +60,13 @@ public class WarningInfoEntity implements Serializable {
 	 */
 	private Integer warningType;
 	/**
+	 * 归属于
+	 * 1.室内
+	 * 2.室外
+	 * 3.体温
+	 */
+	private Short belongTo;
+	/**
 	 * 当前数值
 	 */
 	private Double nowValue;

+ 48 - 0
huimv-smart-management/src/main/java/com/huimv/management/entity/vo/ThresholdManagementVo.java

@@ -0,0 +1,48 @@
+package com.huimv.management.entity.vo;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 阈值管理vo
+ * </p>
+ *
+ * @author yinhao
+ * @date 2021/6/16 17:01
+ */
+@Data
+public class ThresholdManagementVo implements Serializable {
+    private static final long serialVersionUID = -1474010381756803356L;
+
+    /**
+     * 主键
+     */
+    private Integer id;
+    /**
+     * 牧场id
+     */
+    private Integer farmId;
+    /**
+     * 牧场名称
+     */
+    private String farmName;
+    /**
+     * 阈值类型
+     */
+    private Integer thresholdType;
+    /**
+     * 所属范围
+     * 1.室内
+     * 2.室外
+     * 3.体温
+     * 4.饮用水
+     */
+    private Short belongTo;
+    /**
+     * 阈值数值
+     */
+    private Double thresholdValue;
+}

+ 13 - 2
huimv-smart-management/src/main/java/com/huimv/management/entity/vo/WarningInfoVo.java

@@ -45,15 +45,26 @@ public class WarningInfoVo implements Serializable {
      */
     private String pigstyName;
     /**
+     * 耳标号
+     */
+    private Integer earTag;
+    /**
      * 报警类型(数字)
      */
     private Short warningType;
     /**
-     * 报警类型名称
+     * 归属于
+     * 1.室内
+     * 2.室外
+     * 3.体温
      */
-    private String warningName;
+    private Short belongTo;
     /**
      * 当前数值
      */
     private Double nowValue;
+    /**
+     * 报警时间
+     */
+    private Date warningTime;
 }

+ 31 - 15
huimv-smart-management/src/main/java/com/huimv/management/service/impl/IndoorEnvironmentServiceImpl.java

@@ -5,6 +5,7 @@ import cn.hutool.core.date.DateUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.huimv.common.exception.RRException;
 import com.huimv.management.dao.FarmDao;
 import com.huimv.management.dao.PigstyDao;
 import com.huimv.management.entity.FarmEntity;
@@ -55,25 +56,40 @@ public class IndoorEnvironmentServiceImpl extends ServiceImpl<IndoorEnvironmentD
             queryWrapper.eq("env.abnormal_status", Boolean.parseBoolean(abnormalStatus));
         }
 
-        //牧场名称
-        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 farmId = (String) params.get("farmId");
+        if (StringUtils.isNotBlank(farmId)) {
+            queryWrapper.eq("env.farm_id",Integer.parseInt(farmId));
         }
 
-        //猪舍名称
-        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 pigstyId = (String) params.get("pigstyId");
+        if (StringUtils.isNotBlank(pigstyId)) {
+            if (StringUtils.isBlank(farmId)) {
+                throw new RRException("请先选择要查询的牧场!");
             }
+            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)) {
@@ -83,7 +99,7 @@ public class IndoorEnvironmentServiceImpl extends ServiceImpl<IndoorEnvironmentD
         //时间区间(后)
         String endTime = (String) params.get("endTime");
         if (StringUtils.isNotEmpty(endTime)) {
-            queryWrapper.le("env.collect_time", startTime);
+            queryWrapper.le("env.collect_time", endTime);
         }
 
         //排除逻辑删除

+ 15 - 9
huimv-smart-management/src/main/java/com/huimv/management/service/impl/OutdoorEnvironmentServiceImpl.java

@@ -50,16 +50,22 @@ public class OutdoorEnvironmentServiceImpl extends ServiceImpl<OutdoorEnvironmen
             queryWrapper.eq("env.abnormal_status", Boolean.parseBoolean(abnormalStatus));
         }
 
-        //牧场名称
-        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 farmId = (String) params.get("farmId");
+        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)) {
@@ -69,7 +75,7 @@ public class OutdoorEnvironmentServiceImpl extends ServiceImpl<OutdoorEnvironmen
         //时间区间(后)
         String endTime = (String) params.get("endTime");
         if (StringUtils.isNotEmpty(endTime)) {
-            queryWrapper.le("env.collect_time", startTime);
+            queryWrapper.le("env.collect_time", endTime);
         }
 
         //排除逻辑删除

+ 20 - 5
huimv-smart-management/src/main/java/com/huimv/management/service/impl/ThresholdManagementServiceImpl.java

@@ -1,7 +1,11 @@
 package com.huimv.management.service.impl;
 
+import com.huimv.management.entity.vo.ThresholdManagementVo;
+import org.apache.commons.lang.StringUtils;
 import org.springframework.stereotype.Service;
+
 import java.util.Map;
+
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -17,7 +21,7 @@ import com.huimv.management.service.ThresholdManagementService;
  * 报警阈值管理ServiceImpl
  * </p>
  *
- * @author  yinhao
+ * @author yinhao
  * @version 1.0
  * @date 2021/6/15 13:21
  */
@@ -26,11 +30,22 @@ public class ThresholdManagementServiceImpl extends ServiceImpl<ThresholdManagem
 
     @Override
     public PageUtils queryPage(Map<String, Object> params) {
-        IPage<ThresholdManagementEntity> page = this.page(
-                new Query<ThresholdManagementEntity>().getPage(params),
-                new QueryWrapper<>()
-        );
 
+        QueryWrapper<ThresholdManagementVo> queryWrapper = new QueryWrapper<>();
+
+        String farmId = (String) params.get("farmId");
+        if (StringUtils.isNotBlank(farmId)) {
+            queryWrapper.eq("farm_id", Integer.parseInt(farmId));
+        }
+
+        String thresholdType = (String) params.get("thresholdType");
+        if (StringUtils.isNotBlank(thresholdType)) {
+            queryWrapper.eq("threshold_type",thresholdType);
+        }
+
+        queryWrapper.apply("threshold.deleted = 0 AND farm.deleted = 0");
+
+        IPage<ThresholdManagementVo> page = baseMapper.page(new Query<>().getPage(params), queryWrapper);
         return new PageUtils(page);
     }
 

+ 20 - 8
huimv-smart-management/src/main/java/com/huimv/management/service/impl/WarningInfoServiceImpl.java

@@ -37,26 +37,38 @@ public class WarningInfoServiceImpl extends ServiceImpl<WarningInfoDao, WarningI
 
         QueryWrapper<WarningInfoVo> queryWrapper = new QueryWrapper<>();
 
-        //报警类型不能为空
+        String belongTo = (String) params.get("belongTo");
+        if (StringUtils.isBlank(belongTo)) {
+            throw new RRException("报警所属范围(室内,室外,体温)不能为空!");
+        }
+        queryWrapper.eq("warn.belong_to",Short.parseShort(belongTo));
+
+        //报警类型
         String warningType = (String) params.get("warningType");
-        if (StringUtils.isBlank(warningType)) {
-            throw new RRException("报警类型不能为空!");
+        if (StringUtils.isNotBlank(warningType)) {
+            queryWrapper.eq("warn.warning_type",Short.parseShort(warningType));
         }
         //牧场id
         String farmId = (String) params.get("farmId");
+        if (StringUtils.isNotBlank(farmId)) {
+            queryWrapper.eq(StringUtils.isNotBlank(farmId),"warn.farm_id",Integer.parseInt(farmId));
+        }
         //猪舍id
         String pigstyId = (String) params.get("pigstyId");
+        if (StringUtils.isNotBlank(pigstyId)) {
+            queryWrapper.eq(StringUtils.isNotBlank(pigstyId),"warn.pigsty_id",Integer.parseInt(pigstyId));
+        }
         //猪耳标号
         String earTag = (String) params.get("earTag");
+        if (StringUtils.isNotBlank(earTag)) {
+            queryWrapper.eq(StringUtils.isNotBlank(earTag),"warn.ear_tag",Integer.parseInt(earTag));
+        }
         //时间区间(前)
         String startTime = (String) params.get("startTime");
         //时间区间(后)
         String endTime = (String) params.get("endTime");
 
-        queryWrapper.eq(StringUtils.isNotBlank(warningType),"warn.warning_type",Short.parseShort(warningType))
-                .eq(StringUtils.isNotBlank(farmId),"warn.farm_id",Integer.parseInt(farmId))
-                .eq(StringUtils.isNotBlank(pigstyId),"warn.pigsty_id",Integer.parseInt(pigstyId))
-                .eq(StringUtils.isNotBlank(earTag),"warn.ear_tag",Integer.parseInt(earTag))
+        queryWrapper
                 .ge(StringUtils.isNotBlank(startTime),"warn.warning_time",startTime)
                 .le(StringUtils.isNotBlank(endTime),"warn.warning_time",endTime)
                 .apply("warn.verify_status = 0 AND farm.deleted = 0 AND pigsty.deleted = 0")
@@ -73,7 +85,7 @@ public class WarningInfoServiceImpl extends ServiceImpl<WarningInfoDao, WarningI
         LambdaUpdateWrapper<WarningInfoEntity> updateWrapper = Wrappers.lambdaUpdate();
 
         updateWrapper.set(WarningInfoEntity::getVerifyDescription,warningInfoDto.getVerifyDescription())
-                .set(WarningInfoEntity::getVerifyStatus,false)
+                .set(WarningInfoEntity::getVerifyStatus,true)
                 .eq(WarningInfoEntity::getId,warningInfoDto.getId());
 
         update(updateWrapper);

+ 13 - 1
huimv-smart-management/src/main/resources/mapper/management/ThresholdManagementDao.xml

@@ -6,7 +6,6 @@
 	<!-- 可根据自己的需求,是否要使用 -->
     <resultMap type="com.huimv.management.entity.ThresholdManagementEntity" id="thresholdManagementMap">
         <result property="id" column="id"/>
-        <result property="thresholdName" column="threshold_name"/>
         <result property="thresholdType" column="threshold_type"/>
         <result property="thresholdValue" column="threshold_value"/>
         <result property="deleted" column="deleted"/>
@@ -14,5 +13,18 @@
         <result property="gmtModified" column="gmt_modified"/>
     </resultMap>
 
+    <select id="page" resultType="com.huimv.management.entity.vo.ThresholdManagementVo">
+        SELECT
+          threshold.id,
+          farm_id,
+          farm.name farm_name,
+          threshold_type,
+          belong_to,
+          threshold_value
+        FROM mgt_threshold_management threshold
+        JOIN mgt_farm farm ON threshold.farm_id = farm.id
+        ${ew.customSqlSegment}
+    </select>
+
 
 </mapper>

+ 5 - 4
huimv-smart-management/src/main/resources/mapper/management/WarningInfoDao.xml

@@ -25,14 +25,15 @@
           farm.name farm_name,
           warn.pigsty_id,
           pigsty.number pigsty_name,
+          warn.ear_tag,
           warn.warning_type,
-          threshold.threshold_name warning_name,
-          warn.now_value
+          warn.belong_to,
+          warn.now_value,
+          warn.warning_time
         FROM mgt_warning_info warn
         LEFT JOIN mgt_farm farm ON warn.farm_id = farm.id
         LEFT JOIN mgt_pigsty pigsty ON warn.pigsty_id = pigsty.id
-        LEFT JOIN mgt_threshold_management threshold ON warn.warning_type = threshold.threshold_type
-          ${ew.customSqlSegment}
+        ${ew.customSqlSegment}
     </select>