فهرست منبع

添加关注和修改入栏

523096025 4 سال پیش
والد
کامیت
08f9e22759
24فایلهای تغییر یافته به همراه999 افزوده شده و 65 حذف شده
  1. 4 2
      huimv-smart-datacollection/src/main/java/com/huimv/datacollection/service/impl/ClientDataPacketServiceImpl.java
  2. 33 5
      huimv-smart-management/src/main/java/com/huimv/management/controller/CameraInfoController.java
  3. 151 0
      huimv-smart-management/src/main/java/com/huimv/management/controller/LairageRecordController.java
  4. 100 0
      huimv-smart-management/src/main/java/com/huimv/management/controller/UserAttentionController.java
  5. 19 19
      huimv-smart-management/src/main/java/com/huimv/management/controller/YearPigBaseController.java
  6. 23 0
      huimv-smart-management/src/main/java/com/huimv/management/dao/LairageRecordDao.java
  7. 17 0
      huimv-smart-management/src/main/java/com/huimv/management/dao/UserAttentionDao.java
  8. 2 0
      huimv-smart-management/src/main/java/com/huimv/management/dao/YearPigBaseDao.java
  9. 117 0
      huimv-smart-management/src/main/java/com/huimv/management/entity/LairageRecordEntity.java
  10. 36 0
      huimv-smart-management/src/main/java/com/huimv/management/entity/UserAttentionEntity.java
  11. 6 2
      huimv-smart-management/src/main/java/com/huimv/management/entity/YearPigBaseEntity.java
  12. 4 2
      huimv-smart-management/src/main/java/com/huimv/management/service/CameraInfoService.java
  13. 20 0
      huimv-smart-management/src/main/java/com/huimv/management/service/LairageRecordService.java
  14. 23 0
      huimv-smart-management/src/main/java/com/huimv/management/service/UserAttentionService.java
  15. 4 0
      huimv-smart-management/src/main/java/com/huimv/management/service/YearPigBaseService.java
  16. 111 8
      huimv-smart-management/src/main/java/com/huimv/management/service/impl/CameraInfoServiceImpl.java
  17. 9 3
      huimv-smart-management/src/main/java/com/huimv/management/service/impl/HealthMedicalRecordServiceImpl.java
  18. 99 0
      huimv-smart-management/src/main/java/com/huimv/management/service/impl/LairageRecordServiceImpl.java
  19. 56 0
      huimv-smart-management/src/main/java/com/huimv/management/service/impl/UserAttentionServiceImpl.java
  20. 77 23
      huimv-smart-management/src/main/java/com/huimv/management/service/impl/YearPigBaseServiceImpl.java
  21. 1 1
      huimv-smart-management/src/main/resources/application-dev.yml
  22. 68 0
      huimv-smart-management/src/main/resources/mapper/management/LairageRecordDao.xml
  23. 14 0
      huimv-smart-management/src/main/resources/mapper/management/UserAttentionDao.xml
  24. 5 0
      huimv-smart-management/src/main/resources/mapper/management/YearPigBaseDao.xml

+ 4 - 2
huimv-smart-datacollection/src/main/java/com/huimv/datacollection/service/impl/ClientDataPacketServiceImpl.java

@@ -1498,12 +1498,14 @@ public class ClientDataPacketServiceImpl implements IClientDataPacketService {
         String rs = XtAppConstant.SOCKET_SJSC_START + "+" + result[1] + "+" + cmd + "+";
         String dbjg = "0";
         if ((gz.substring(gz.length() - 1)).equals(jy)) {
-            gz = XtAppConstant.SOCKET_SJSC_GZBZ_0;
-            dbjg = XtAppConstant.SOCKET_SJSC_TLGTB_0;
+            gz = XtAppConstant.SOCKET_SJSC_GZBZ_1;
+            dbjg = XtAppConstant.SOCKET_SJSC_TLGTB_1+"1725,2";
 
         } else {
             gz = XtAppConstant.SOCKET_SJSC_GZBZ_1;
         }
+        Date dateS = new Date();
+        dbjg += "+" + "20210425172411";
         rs += gz + "+" + dbjg + "+";
         rs += jy + "+" + XtAppConstant.SOCKET_SJSC_END;
         return rs;

+ 33 - 5
huimv-smart-management/src/main/java/com/huimv/management/controller/CameraInfoController.java

@@ -5,7 +5,10 @@ import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
 
+import com.huimv.management.entity.SysUserEntity;
+import com.huimv.management.util.GetUserUtil;
 import io.swagger.annotations.Api;
+import org.apache.ibatis.annotations.Param;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -18,9 +21,11 @@ import com.huimv.management.service.CameraInfoService;
 import com.huimv.common.utils.PageUtils;
 import com.huimv.common.utils.R;
 
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
 
 
-/**
+ /**
  * 
  *
  * @author yinhao
@@ -38,8 +43,12 @@ public class CameraInfoController {
      * 列表
      */
     @RequestMapping("/list")
-    public R list(@RequestParam Map<String, Object> params){
-        PageUtils page = cameraInfoService.queryPage(params);
+    public R list(@RequestParam Map<String, Object> params,HttpServletRequest request){
+        SysUserEntity user = GetUserUtil.getUser(request);
+        if (user == null){
+            return R.error("获取用户信息异常");
+        }
+        PageUtils page = cameraInfoService.queryPage(params,user.getUserId());
 
         return R.ok().put("page", page);
     }
@@ -96,8 +105,27 @@ public class CameraInfoController {
     }
 
     @RequestMapping("/getByAreaId")
-    private R getByAreaId(Integer areaId){
-        List list = cameraInfoService.getByAreaId(areaId);
+    private R getByAreaId(Integer areaId,HttpServletRequest request){
+        SysUserEntity user = GetUserUtil.getUser(request);
+        if (user == null){
+            return R.error("获取用户信息异常");
+        }
+        List list = cameraInfoService.getByAreaId(areaId,user.getUserId());
         return R.ok().put("data",list);
     }
+
+
+
+    //查询关注列表
+    @RequestMapping("/findAttention")
+    public R findAttention(Integer farmId, HttpServletRequest request){
+        SysUserEntity user = GetUserUtil.getUser(request);
+        if (user == null){
+            return R.error("获取用户信息异常");
+        }
+        List list = cameraInfoService.findAttention(farmId,user.getUserId());
+
+        return R.ok().put("data", list);
+    }
+
 }

+ 151 - 0
huimv-smart-management/src/main/java/com/huimv/management/controller/LairageRecordController.java

@@ -0,0 +1,151 @@
+ package com.huimv.management.controller;
+
+import java.util.Arrays;
+import java.util.Map;
+
+import com.huimv.management.entity.UnitEntity;
+import com.huimv.management.entity.YearPigBaseEntity;
+import com.huimv.management.service.UnitService;
+import com.huimv.management.service.YearPigBaseService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import com.huimv.management.entity.LairageRecordEntity;
+import com.huimv.management.service.LairageRecordService;
+import com.huimv.common.utils.PageUtils;
+import com.huimv.common.utils.R;
+
+
+
+/**
+ * 年猪基本
+ *
+ * @author yinhao
+ * @version ${version}
+ * @date 2021-07-14 15:11:40
+ */
+@RestController
+@RequestMapping("management/lairagerecord")
+public class LairageRecordController {
+    @Autowired
+    private LairageRecordService lairageRecordService;
+
+    @Autowired
+    private YearPigBaseService pigBaseService;
+
+    @Autowired
+    private UnitService unitService;
+    /**
+     * 列表
+     */
+    @RequestMapping("/list")
+    public R list(@RequestParam Map<String, Object> params){
+        PageUtils page = lairageRecordService.queryPage(params);
+
+        return R.ok().put("page", page);
+    }
+
+
+    /**
+     * 信息
+     */
+    @RequestMapping("/info/{id}")
+    public R info(@PathVariable("id") Integer id){
+		LairageRecordEntity lairageRecord = lairageRecordService.getById(id);
+
+        return R.ok().put("lairageRecord", lairageRecord);
+    }
+
+    /**
+     * 保存
+     */
+    @RequestMapping("/save")
+    public R save(@RequestBody LairageRecordEntity lairageRecord){
+        if (lairageRecord == null){
+            return R.error("添加失败");
+        }
+		try {
+		    YearPigBaseEntity yearPigBaseEntity = toYearPigBase(lairageRecord);
+            pigBaseService.save(yearPigBaseEntity);
+            lairageRecordService.save(lairageRecord);
+        }catch (Exception e){
+            return R.error("添加失败");
+        }
+
+        return R.ok();
+    }
+
+    /**
+     * 修改
+     */
+    @RequestMapping("/update")
+    public R update(@RequestBody LairageRecordEntity lairageRecord){
+        YearPigBaseEntity yearPigBaseEntity = toYearPigBase(lairageRecord);
+        pigBaseService.updateById(yearPigBaseEntity);
+        lairageRecordService.updateById(lairageRecord);
+
+        return R.ok();
+    }
+
+    /**
+     * 删除
+     */
+    @RequestMapping("/delete")
+    public R delete(@RequestBody Integer[] ids){
+        pigBaseService.removeByIds(Arrays.asList(ids));
+		lairageRecordService.removeByIds(Arrays.asList(ids));
+
+        return R.ok();
+    }
+
+
+    //批量入栏
+    @RequestMapping("/batchLairage")
+    public R batchLairage(@RequestBody LairageRecordEntity lairageRecord){
+        Integer unitId = lairageRecord.getUnitId();
+        UnitEntity unitEntity = unitService.getById(unitId);
+        if (unitEntity != null){
+            lairageRecord.setPeriodId(unitEntity.getCurrentPeriodId());
+        }
+        for (String eartage : lairageRecord.getEartag().split(",")) {
+            lairageRecord.setEartag(eartage);
+            YearPigBaseEntity yearPigBaseEntity = toYearPigBase(lairageRecord);
+            pigBaseService.save(yearPigBaseEntity);
+            lairageRecordService.save(lairageRecord);
+        }
+
+        return R.ok();
+    }
+
+    public YearPigBaseEntity toYearPigBase (LairageRecordEntity lairageRecord){
+        YearPigBaseEntity yearPigBaseEntity = new YearPigBaseEntity();
+        yearPigBaseEntity.setId(lairageRecord.getId());
+        yearPigBaseEntity.setPeriodId(lairageRecord.getPeriodId());
+        yearPigBaseEntity.setOutFenceTime(lairageRecord.getOutFenceTime());
+        yearPigBaseEntity.setOutFenceStatus(lairageRecord.getOutFenceStatus());
+        yearPigBaseEntity.setEartag(lairageRecord.getEartag());
+        yearPigBaseEntity.setUnitId(lairageRecord.getUnitId());
+        yearPigBaseEntity.setBirthday(lairageRecord.getBirthday());
+        yearPigBaseEntity.setBreed(lairageRecord.getBreed());
+        yearPigBaseEntity.setDayAge(lairageRecord.getDayAge());
+        yearPigBaseEntity.setFarmId(lairageRecord.getFarmId());
+        yearPigBaseEntity.setFatherEartag(lairageRecord.getFatherEartag());
+        yearPigBaseEntity.setFosterStatus(lairageRecord.getFosterStatus());
+        yearPigBaseEntity.setGmtCreate(lairageRecord.getGmtCreate());
+        yearPigBaseEntity.setGmtModified(lairageRecord.getGmtModified());
+        yearPigBaseEntity.setHealthStatus(lairageRecord.getHealthStatus());
+        yearPigBaseEntity.setInFenceTime(lairageRecord.getInFenceTime());
+        yearPigBaseEntity.setMotherEartag(lairageRecord.getMotherEartag());
+        yearPigBaseEntity.setOriginPlace(lairageRecord.getOriginPlace());
+        yearPigBaseEntity.setPigstyId(lairageRecord.getPigstyId());
+        yearPigBaseEntity.setSex(lairageRecord.getSex());
+        yearPigBaseEntity.setWeight(lairageRecord.getWeight());
+        yearPigBaseEntity.setWhereDidYouGo(lairageRecord.getWhereDidYouGo());
+        return yearPigBaseEntity;
+    }
+
+}

+ 100 - 0
huimv-smart-management/src/main/java/com/huimv/management/controller/UserAttentionController.java

@@ -0,0 +1,100 @@
+ package com.huimv.management.controller;
+
+import java.util.Arrays;
+import java.util.Map;
+
+import com.huimv.management.entity.CameraInfoEntity;
+import com.huimv.management.entity.SysUserEntity;
+import com.huimv.management.util.GetUserUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import com.huimv.management.entity.UserAttentionEntity;
+import com.huimv.management.service.UserAttentionService;
+import com.huimv.common.utils.PageUtils;
+import com.huimv.common.utils.R;
+
+import javax.servlet.http.HttpServletRequest;
+
+
+ /**
+ * 
+ *
+ * @author yinhao
+ * @version ${version}
+ * @date 2021-07-13 15:48:41
+ */
+@RestController
+@RequestMapping("management/userattention")
+public class UserAttentionController {
+    @Autowired
+    private UserAttentionService userAttentionService;
+
+    /**
+     * 列表
+     */
+    @RequestMapping("/list")
+    public R list(@RequestParam Map<String, Object> params){
+        PageUtils page = userAttentionService.queryPage(params);
+
+        return R.ok().put("page", page);
+    }
+
+
+    /**
+     * 信息
+     */
+    @RequestMapping("/info/{id}")
+    public R info(@PathVariable("id") Integer id){
+		UserAttentionEntity userAttention = userAttentionService.getById(id);
+
+        return R.ok().put("userAttention", userAttention);
+    }
+
+    /**
+     * 保存
+     */
+    @RequestMapping("/save")
+    public R save(@RequestBody UserAttentionEntity userAttention){
+		userAttentionService.save(userAttention);
+
+        return R.ok();
+    }
+
+    /**
+     * 修改
+     */
+    @RequestMapping("/update")
+    public R update(@RequestBody UserAttentionEntity userAttention){
+		userAttentionService.updateById(userAttention);
+
+        return R.ok();
+    }
+
+    /**
+     * 删除
+     */
+    @RequestMapping("/delete")
+    public R delete(@RequestBody Integer[] ids){
+		userAttentionService.removeByIds(Arrays.asList(ids));
+
+        return R.ok();
+    }
+
+     //修改关注状态
+     @RequestMapping("/updateAttention")
+     private R updateAttention(@RequestParam Integer cameraId, HttpServletRequest request) {
+         SysUserEntity user = GetUserUtil.getUser(request);
+         if (user == null){
+             return R.error("获取用户信息异常");
+         }
+         if (cameraId == null){
+             return R.error("获取摄像头信息异常");
+         }
+        return userAttentionService.updateAttention(cameraId,user.getUserId());
+     }
+}

+ 19 - 19
huimv-smart-management/src/main/java/com/huimv/management/controller/YearPigBaseController.java

@@ -110,15 +110,6 @@ public class YearPigBaseController {
         return R.ok();
     }
 
-    /*@RequestMapping("/batchLairage")
-    public R batchLairage(@RequestBody Map<String, Object> map){
-        String eartags = (String)map.get("eartags");
-        Integer periodId = (Integer)map.get("periodId");
-        String[] split = eartags.split(",");
-        yearPigBaseService.batchLairage(split,periodId);
-
-        return R.ok();
-    } */
 
     //批量入栏
     @RequestMapping("/batchLairage")
@@ -140,16 +131,6 @@ public class YearPigBaseController {
     @RequestMapping("/such")
     public R such(@RequestBody Integer[] ids){
 
-//        YearPigBaseEntity yearPigBaseEntity = new YearPigBaseEntity();
-//        yearPigBaseEntity.setOutFenceStatus(1);
-//        yearPigBaseEntity.setOutFenceTime(new Date());
-//
-//
-//        for (Integer id : ids) {
-//            yearPigBaseEntity.setId(id);
-//            yearPigBaseService.updateById(yearPigBaseEntity);
-//        }
-
         yearPigBaseService.such(ids);
         return R.ok();
     }
@@ -263,4 +244,23 @@ public class YearPigBaseController {
      }
 
 
+     /**
+      * 列表
+      */
+     @RequestMapping("/listLairage")
+     public R listLairage(@RequestParam Map<String, Object> params){
+         PageUtils page = yearPigBaseService.listLairage(params);
+
+         return R.ok().put("page", page);
+     }
+     /**
+      * 入栏删除
+      */
+     @RequestMapping("/deleteLairage")
+     public R deleteLairage(@RequestBody Integer[] ids){
+         yearPigBaseService.deleteLairage(Arrays.asList(ids));
+
+         return R.ok();
+     }
+
  }

+ 23 - 0
huimv-smart-management/src/main/java/com/huimv/management/dao/LairageRecordDao.java

@@ -0,0 +1,23 @@
+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.LairageRecordEntity;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.huimv.management.entity.vo.DrinkingWaterVo;
+import com.huimv.management.entity.vo.PigBaseVo;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * 年猪基本
+ * 
+ * @author yinhao
+ * @version ${version}
+ * @date 2021-07-14 15:11:40
+ */
+@Mapper
+public interface LairageRecordDao extends BaseMapper<LairageRecordEntity> {
+
+    IPage<PigBaseVo> list(@Param("page")IPage page, @Param("ew") QueryWrapper<DrinkingWaterVo> queryWrapper);
+}

+ 17 - 0
huimv-smart-management/src/main/java/com/huimv/management/dao/UserAttentionDao.java

@@ -0,0 +1,17 @@
+package com.huimv.management.dao;
+
+import com.huimv.management.entity.UserAttentionEntity;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 
+ * 
+ * @author yinhao
+ * @version ${version}
+ * @date 2021-07-13 15:48:41
+ */
+@Mapper
+public interface UserAttentionDao extends BaseMapper<UserAttentionEntity> {
+	
+}

+ 2 - 0
huimv-smart-management/src/main/java/com/huimv/management/dao/YearPigBaseDao.java

@@ -38,4 +38,6 @@ public interface YearPigBaseDao extends BaseMapper<YearPigBaseEntity> {
     IPage<PigBaseVo> fattenList(@Param("page")IPage page, @Param("ew") QueryWrapper<DrinkingWaterVo> queryWrapper);
 
     void suchApp(String[] ids);
+
+    void deleteLairage(Integer integer);
 }

+ 117 - 0
huimv-smart-management/src/main/java/com/huimv/management/entity/LairageRecordEntity.java

@@ -0,0 +1,117 @@
+package com.huimv.management.entity;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 年猪基本
+ * 
+ * @author yinhao
+ * @version ${version}
+ * @date 2021-07-14 15:11:40
+ */
+@Data
+@TableName("mgt_lairage_record")
+public class LairageRecordEntity implements Serializable {
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * id
+	 */
+	@TableId
+	private Integer id;
+	/**
+	 * 耳标号
+	 */
+	private String eartag;
+	/**
+	 * 日龄
+	 */
+	private Integer dayAge;
+	/**
+	 * 体重
+	 */
+	private Double weight;
+	/**
+	 * 是否认养 0未认养 1以认养
+	 */
+	private Boolean fosterStatus;
+	/**
+	 * 是否健康
+	 */
+	private Boolean healthStatus;
+	/**
+	 * 去向信息
+	 */
+	private String whereDidYouGo;
+	/**
+	 * 品种
+	 */
+	private String breed;
+	/**
+	 * 性别
+	 */
+	private String sex;
+	/**
+	 * 出生日期
+	 */
+	private Date birthday;
+	/**
+	 * 产地
+	 */
+	private String originPlace;
+	/**
+	 * 牧场id
+	 */
+	private Integer farmId;
+	/**
+	 * 猪舍id
+	 */
+	private Integer pigstyId;
+	/**
+	 * 单元
+	 */
+	private Integer unitId;
+	/**
+	 * 栏期id
+	 */
+	private Integer periodId;
+	/**
+	 * 入栏时间
+	 */
+	private Date inFenceTime;
+	/**
+	 * 出栏时间
+	 */
+	private Date outFenceTime;
+	/**
+	 * 养殖状态 0.育肥 1.出栏
+	 */
+	private Integer outFenceStatus;
+	/**
+	 * 母亲耳标
+	 */
+	private String motherEartag;
+	/**
+	 * 父亲耳标
+	 */
+	private String fatherEartag;
+
+	/**
+	 * 删除状态 0正常 1已删除
+	 */
+	private Integer deleted;
+	/**
+	 * 创建时间
+	 */
+	private Date gmtCreate;
+	/**
+	 * 修改时间
+	 */
+	private Date gmtModified;
+
+}

+ 36 - 0
huimv-smart-management/src/main/java/com/huimv/management/entity/UserAttentionEntity.java

@@ -0,0 +1,36 @@
+package com.huimv.management.entity;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 
+ * 
+ * @author yinhao
+ * @version ${version}
+ * @date 2021-07-13 15:48:41
+ */
+@Data
+@TableName("mgt_user_attention")
+public class UserAttentionEntity implements Serializable {
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 
+	 */
+	@TableId
+	private Integer id;
+	/**
+	 * 
+	 */
+	private Long userId;
+	/**
+	 * 
+	 */
+	private Integer cameraId;
+
+}

+ 6 - 2
huimv-smart-management/src/main/java/com/huimv/management/entity/YearPigBaseEntity.java

@@ -43,11 +43,11 @@ public class YearPigBaseEntity implements Serializable {
     /**
      * 是否认养
      */
-    private Integer fosterStatus;
+    private Boolean fosterStatus;
     /**
      * 是否健康
      */
-    private Integer healthStatus;
+    private Boolean healthStatus;
     /**
      * 去向信息
      */
@@ -113,6 +113,10 @@ public class YearPigBaseEntity implements Serializable {
      * 父亲耳标
      */
     private String fatherEartag;
+    /**
+     * 入栏删除状态 0正常 1已删除
+     */
+    private Integer lairageStatus;
 
     /**
      * 删除状态 0正常 1已删除

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

@@ -16,10 +16,12 @@ import java.util.Map;
  */
 public interface CameraInfoService extends IService<CameraInfoEntity> {
 
-    PageUtils queryPage(Map<String, Object> params);
+    PageUtils queryPage(Map<String, Object> params,Long userId);
 
     List getCameraDetails(Integer cameraId);
 
-    List getByAreaId(Integer areaId);
+    List getByAreaId(Integer areaId,Long userId);
+
+    List findAttention(Integer farmId,Long userId);
 }
 

+ 20 - 0
huimv-smart-management/src/main/java/com/huimv/management/service/LairageRecordService.java

@@ -0,0 +1,20 @@
+package com.huimv.management.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.huimv.common.utils.PageUtils;
+import com.huimv.management.entity.LairageRecordEntity;
+
+import java.util.Map;
+
+/**
+ * 年猪基本
+ *
+ * @author yinhao
+ * @version ${version}
+ * @date 2021-07-14 15:11:40
+ */
+public interface LairageRecordService extends IService<LairageRecordEntity> {
+
+    PageUtils queryPage(Map<String, Object> params);
+}
+

+ 23 - 0
huimv-smart-management/src/main/java/com/huimv/management/service/UserAttentionService.java

@@ -0,0 +1,23 @@
+package com.huimv.management.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.huimv.common.utils.PageUtils;
+import com.huimv.common.utils.R;
+import com.huimv.management.entity.UserAttentionEntity;
+
+import java.util.Map;
+
+/**
+ * 
+ *
+ * @author yinhao
+ * @version ${version}
+ * @date 2021-07-13 15:48:41
+ */
+public interface UserAttentionService extends IService<UserAttentionEntity> {
+
+    PageUtils queryPage(Map<String, Object> params);
+
+    R updateAttention(Integer cameraId, Long userId);
+}
+

+ 4 - 0
huimv-smart-management/src/main/java/com/huimv/management/service/YearPigBaseService.java

@@ -71,5 +71,9 @@ public interface YearPigBaseService extends IService<YearPigBaseEntity> {
     void suchApp(String[] ids);
 
     HashMap<String, Integer> statisticsAll(Map<String, Object> params);
+
+    PageUtils listLairage(Map<String, Object> params);
+
+    void deleteLairage(List<Integer> asList);
 }
 

+ 111 - 8
huimv-smart-management/src/main/java/com/huimv/management/service/impl/CameraInfoServiceImpl.java

@@ -2,11 +2,10 @@ package com.huimv.management.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-import com.huimv.management.dao.CameraBrandDao;
-import com.huimv.management.dao.PastureAreaDao;
-import com.huimv.management.dao.PublicNetworkDao;
+import com.huimv.management.dao.*;
 import com.huimv.management.entity.CameraBrandEntity;
 import com.huimv.management.entity.PublicNetworkEntity;
+import com.huimv.management.entity.UserAttentionEntity;
 import org.apache.commons.lang.StringUtils;
 import org.checkerframework.checker.units.qual.A;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -16,6 +15,7 @@ import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -23,7 +23,6 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.huimv.common.utils.PageUtils;
 import com.huimv.common.utils.Query;
 
-import com.huimv.management.dao.CameraInfoDao;
 import com.huimv.management.entity.CameraInfoEntity;
 import com.huimv.management.service.CameraInfoService;
 
@@ -44,10 +43,10 @@ public class CameraInfoServiceImpl extends ServiceImpl<CameraInfoDao, CameraInfo
 
 
     @Override
-    public PageUtils queryPage(Map<String, Object> params) {
+    public PageUtils queryPage(Map<String, Object> params,Long userId) {
 
         //根据牧场查询
-        String farmId = (String) params.get("formFarmId");
+        String farmId = (String) params.get("farmId");
 
         QueryWrapper<CameraInfoEntity> wrapper = new QueryWrapper<>();
         wrapper.eq(StringUtils.isNotBlank(farmId), "farm_id",farmId);
@@ -71,6 +70,8 @@ public class CameraInfoServiceImpl extends ServiceImpl<CameraInfoDao, CameraInfo
                 new Query<CameraInfoEntity>().getPage(params),
                 wrapper
         );
+        List<CameraInfoEntity> records = page.getRecords();
+        addAttention(records,userId);
 
         return new PageUtils(page);
     }
@@ -111,11 +112,113 @@ public class CameraInfoServiceImpl extends ServiceImpl<CameraInfoDao, CameraInfo
     }
 
     @Override
-    public List getByAreaId(Integer areaId) {
+    public List getByAreaId(Integer areaId,Long userId) {
+        List cameraDetailsList = new ArrayList();
+
         LambdaQueryWrapper<CameraInfoEntity> wrapper = Wrappers.lambdaQuery();
         wrapper.eq(CameraInfoEntity::getAreaId, areaId);
-
         List<CameraInfoEntity> cameraInfoEntities = cameraInfoDao.selectList(wrapper);
+
+        QueryWrapper<PublicNetworkEntity> urlWrapper = new QueryWrapper<PublicNetworkEntity>();
+
+        List<CameraInfoEntity> cameraInfoEntities1 = addAttention(cameraInfoEntities, userId);
+
+        for (CameraInfoEntity cameraInfo : cameraInfoEntities) {
+            String rtsp ;
+
+            Map map = new HashMap();
+            Integer farmId = cameraInfo.getFarmId();
+            urlWrapper.eq("farm_id", farmId);
+            String url = publicNetworkDao.selectOne(urlWrapper).getUrl();
+            urlWrapper.clear();
+
+            String cameraAccount = cameraInfo.getAccount();
+            String cameraPassword = cameraInfo.getPassword();
+            String camerIp = cameraInfo.getIp();
+            CameraBrandEntity cameraBrandEntity = cameraBrandDao.selectById(cameraInfo.getCameraBrandId());
+            Boolean type = cameraBrandEntity.getType();
+            if (type){
+                rtsp = cameraBrandEntity.getMainStream();
+            }else {
+                rtsp = cameraBrandEntity.getAssistStream();
+            }
+            map.put("wsUrl", "ws://" + url + "/camera_relay?tcpaddr=" + cameraAccount + "%3A" + cameraPassword + "%40" + camerIp);
+            map.put("rtspUrl", "rtsp://" + cameraAccount + ":" + cameraPassword + "@" + camerIp + rtsp);
+            map.put("areaId", areaId);
+            map.put("name",cameraInfo.getName());
+            map.put("id",cameraInfo.getId());
+            map.put("attention",cameraInfo.getAttention());
+            map.put("areaName",cameraInfo.getAreaName());
+
+
+            cameraDetailsList.add(map);
+        }
+
+
+        return cameraDetailsList;
+    }
+
+    @Override
+    public List findAttention(Integer farmId,Long userId) {
+        List cameraDetailsList = new ArrayList();
+        LambdaQueryWrapper<CameraInfoEntity> wrapper = Wrappers.lambdaQuery();
+        wrapper.eq(CameraInfoEntity::getFarmId,farmId);
+        List<CameraInfoEntity> cameraInfoEntities = baseMapper.selectList(wrapper);
+        QueryWrapper<PublicNetworkEntity> urlWrapper = new QueryWrapper<PublicNetworkEntity>();
+
+        List<CameraInfoEntity> cameraInfoEntities1 = addAttention(cameraInfoEntities, userId);
+        List<CameraInfoEntity> collect = cameraInfoEntities1.stream()
+                .filter(o -> o.getAttention() == 1)
+                .collect(Collectors.toList());
+
+        for (CameraInfoEntity cameraInfo : collect) {
+            String rtsp ;
+            Map map = new HashMap();
+            urlWrapper.eq("farm_id", farmId);
+            String url = publicNetworkDao.selectOne(urlWrapper).getUrl();
+            urlWrapper.clear();
+
+            String cameraAccount = cameraInfo.getAccount();
+            String cameraPassword = cameraInfo.getPassword();
+            String camerIp = cameraInfo.getIp();
+            Integer areaId = cameraInfo.getAreaId();
+            CameraBrandEntity cameraBrandEntity = cameraBrandDao.selectById(cameraInfo.getCameraBrandId());
+            Boolean type = cameraBrandEntity.getType();
+            if (type){
+                rtsp = cameraBrandEntity.getMainStream();
+            }else {
+                rtsp = cameraBrandEntity.getAssistStream();
+            }
+            map.put("wsUrl", "ws://" + url + "/camera_relay?tcpaddr=" + cameraAccount + "%3A" + cameraPassword + "%40" + camerIp);
+            map.put("rtspUrl", "rtsp://" + cameraAccount + ":" + cameraPassword + "@" + camerIp + rtsp);
+            map.put("areaId", areaId);
+            map.put("name",cameraInfo.getName());
+            map.put("id",cameraInfo.getId());
+            map.put("attention",cameraInfo.getAttention());
+            map.put("areaName",cameraInfo.getAreaName());
+
+            cameraDetailsList.add(map);
+        }
+        return  cameraDetailsList;
+    }
+
+    @Autowired
+    private UserAttentionDao userAttentionDao;
+    //是否关注
+    public List<CameraInfoEntity> addAttention(List<CameraInfoEntity> cameraInfoEntities,Long userId){
+        LambdaQueryWrapper<UserAttentionEntity> wrapper = Wrappers.lambdaQuery();
+        wrapper.eq(UserAttentionEntity::getUserId,userId);
+        List<UserAttentionEntity> userAttentionEntities = userAttentionDao.selectList(wrapper);
+
+        for (UserAttentionEntity userAttentionEntity : userAttentionEntities) {
+            for (CameraInfoEntity cameraInfoEntity : cameraInfoEntities) {
+                if (cameraInfoEntity.getId().equals(userAttentionEntity.getCameraId())){
+                    cameraInfoEntity.setAttention(1);
+                }
+            }
+        }
         return cameraInfoEntities;
     }
+
+
 }

+ 9 - 3
huimv-smart-management/src/main/java/com/huimv/management/service/impl/HealthMedicalRecordServiceImpl.java

@@ -125,7 +125,8 @@ public class HealthMedicalRecordServiceImpl extends ServiceImpl<HealthMedicalRec
         medicalWrapper.eq("result",1);
         TreatResultDto dto =new TreatResultDto();
         dto.setTreatResult(1+"");
-        dto.setTreatResultCount( healthMedicalRecordDao.selectCount(medicalWrapper));
+        Integer healthCount1 = healthMedicalRecordDao.selectCount(medicalWrapper);
+        dto.setTreatResultCount( healthCount1);
         treatResultDtos.add(dto);
 
         medicalWrapper.clear();
@@ -134,12 +135,17 @@ public class HealthMedicalRecordServiceImpl extends ServiceImpl<HealthMedicalRec
         medicalWrapper.ge("create_time",startTime);
         TreatResultDto dto2 =new TreatResultDto();
         dto2.setTreatResult(2+"");
-        dto2.setTreatResultCount( healthMedicalRecordDao.selectCount(medicalWrapper));
+        Integer healthCount2 = healthMedicalRecordDao.selectCount(medicalWrapper);
+        dto2.setTreatResultCount(healthCount2 );
         treatResultDtos.add(dto2);
+        if (healthCount1 == 0 && healthCount2 == 0){
+            resultMap.put("treatResultCount",null);
+        }else {
+            resultMap.put("treatResultCount",treatResultDtos);
+        }
 
 
 
-        resultMap.put("treatResultCount",treatResultDtos);
 
 
 

+ 99 - 0
huimv-smart-management/src/main/java/com/huimv/management/service/impl/LairageRecordServiceImpl.java

@@ -0,0 +1,99 @@
+package com.huimv.management.service.impl;
+
+import com.huimv.management.entity.vo.DrinkingWaterVo;
+import com.huimv.management.entity.vo.PigBaseVo;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+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;
+import com.huimv.common.utils.PageUtils;
+import com.huimv.common.utils.Query;
+
+import com.huimv.management.dao.LairageRecordDao;
+import com.huimv.management.entity.LairageRecordEntity;
+import com.huimv.management.service.LairageRecordService;
+
+/**
+ * 年猪基本
+ *
+ * @author yinhao
+ * @version ${version}
+ * @date 2021-07-14 15:11:40
+ */
+@Service("lairageRecordService")
+public class LairageRecordServiceImpl extends ServiceImpl<LairageRecordDao, LairageRecordEntity> implements LairageRecordService {
+
+    @Autowired
+    private LairageRecordDao lairageRecordDao;
+
+    @Override
+    public PageUtils queryPage(Map<String, Object> params) {
+        //构建条件查询wrapper
+        QueryWrapper<DrinkingWaterVo> queryWrapper = new QueryWrapper<>();
+
+        //耳标
+        String eartag = (String) params.get("eartag");
+        if (StringUtils.isNotEmpty(eartag)) {
+            queryWrapper.like("base.eartag",eartag);
+        }
+
+        //性别
+        String sex = (String) params.get("sex");
+        if (StringUtils.isNotEmpty(sex)) {
+            queryWrapper.eq("base.sex",sex);
+        }
+
+        //品种
+        String breed = (String) params.get("breed");
+        if (StringUtils.isNotEmpty(breed)) {
+            queryWrapper.eq("base.breed",breed);
+        }
+
+        //健康状态
+        String healthStatus = (String) params.get("healthStatus");
+        if (StringUtils.isNotEmpty(healthStatus)) {
+            queryWrapper.eq("base.health_status",Integer.parseInt(healthStatus));
+        }
+
+        //养殖状态
+        String outFenceStatus = (String) params.get("outFenceStatus");
+        if (StringUtils.isNotEmpty(outFenceStatus)) {
+            queryWrapper.eq("base.out_fence_status",Integer.parseInt(outFenceStatus));
+        }
+
+        //栏期
+        String periodId = (String) params.get("periodId");
+        if (StringUtils.isNotEmpty(periodId)) {
+            queryWrapper.eq("base.period_id",Integer.parseInt(periodId));
+        }
+
+        //栋舍
+        String pigstyId = (String) params.get("pigstyId");
+        if (StringUtils.isNotEmpty(pigstyId)) {
+            queryWrapper.eq("base.pigsty_id",Integer.parseInt(pigstyId));
+        }
+        //单元
+        String unitId = (String) params.get("unitId");
+        if (StringUtils.isNotEmpty(unitId)) {
+            queryWrapper.eq("base.unit_id",Integer.parseInt(unitId));
+        }
+
+        //牧场
+        String farmId = (String) params.get("formFarmId");
+        if (StringUtils.isNotEmpty(farmId)) {
+            queryWrapper.eq("base.farm_id",Integer.parseInt(farmId));
+        }
+        //排除逻辑删除
+        queryWrapper.apply(" base.deleted = 0  AND pigsty.deleted = 0 ");
+        queryWrapper.orderByDesc("id");
+        IPage<PigBaseVo> page = lairageRecordDao.list(new Query<>().getPage(params),queryWrapper);
+
+
+
+        return new PageUtils(page);
+    }
+
+}

+ 56 - 0
huimv-smart-management/src/main/java/com/huimv/management/service/impl/UserAttentionServiceImpl.java

@@ -0,0 +1,56 @@
+package com.huimv.management.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.huimv.common.utils.R;
+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;
+import com.huimv.common.utils.PageUtils;
+import com.huimv.common.utils.Query;
+
+import com.huimv.management.dao.UserAttentionDao;
+import com.huimv.management.entity.UserAttentionEntity;
+import com.huimv.management.service.UserAttentionService;
+
+/**
+ * 
+ *
+ * @author yinhao
+ * @version ${version}
+ * @date 2021-07-13 15:48:41
+ */
+@Service("userAttentionService")
+public class UserAttentionServiceImpl extends ServiceImpl<UserAttentionDao, UserAttentionEntity> implements UserAttentionService {
+
+    @Override
+    public PageUtils queryPage(Map<String, Object> params) {
+        IPage<UserAttentionEntity> page = this.page(
+                new Query<UserAttentionEntity>().getPage(params),
+                new QueryWrapper<UserAttentionEntity>()
+        );
+
+        return new PageUtils(page);
+    }
+
+    @Override
+    public R updateAttention(Integer cameraId, Long userId) {
+        LambdaQueryWrapper<UserAttentionEntity> wrapper = Wrappers.lambdaQuery();
+        wrapper.eq(UserAttentionEntity::getCameraId,cameraId);
+        wrapper.eq(UserAttentionEntity::getUserId,userId);
+        UserAttentionEntity userAttentionEntity = baseMapper.selectOne(wrapper);
+        if (userAttentionEntity == null){
+            userAttentionEntity = new UserAttentionEntity();
+            userAttentionEntity.setCameraId(cameraId);
+            userAttentionEntity.setUserId(userId);
+            baseMapper.insert(userAttentionEntity);
+            return R.ok("关注成功");
+        }
+        baseMapper.deleteById(userAttentionEntity.getId());
+
+
+        return R.ok("取消关注成功");
+    }
+}

+ 77 - 23
huimv-smart-management/src/main/java/com/huimv/management/service/impl/YearPigBaseServiceImpl.java

@@ -58,28 +58,6 @@ public class YearPigBaseServiceImpl extends ServiceImpl<YearPigBaseDao, YearPigB
     @Autowired
     private TransferPeriodLogDao transferPeriodLogDao;
 
-//    @Override
-//    public PageUtils queryPage(Map<String, Object> params) {
-//
-//        LambdaQueryWrapper<YearPigBaseEntity> lambdaQuery = Wrappers.lambdaQuery();
-//        String keyword = (String) params.get("keyword");
-//        //没有参数
-//        if (keyword == null || keyword.equals("")){
-//            IPage<YearPigBaseEntity> page = this.page(
-//                    new Query<YearPigBaseEntity>().getPage(params),
-//                    new QueryWrapper<YearPigBaseEntity>()
-//            );
-//            return new PageUtils(page);
-//        }
-//
-//        lambdaQuery.like(YearPigBaseEntity::getBreed,keyword);
-//        IPage<YearPigBaseEntity> page = page(this.page(
-//                new Query<YearPigBaseEntity>().getPage(params)
-//        ), lambdaQuery);
-//
-//
-//        return new PageUtils(page);
-//    }
 
 
     @Override
@@ -142,7 +120,7 @@ public class YearPigBaseServiceImpl extends ServiceImpl<YearPigBaseDao, YearPigB
         }
         //排除逻辑删除
         queryWrapper.apply(" base.deleted = 0  AND pigsty.deleted = 0 ");
-
+        queryWrapper.orderByDesc("id");
         IPage<PigBaseVo> page = pigBaseDao.list(new Query<>().getPage(params),queryWrapper);
 
 
@@ -527,4 +505,80 @@ public class YearPigBaseServiceImpl extends ServiceImpl<YearPigBaseDao, YearPigB
 
         return resultMap;
     }
+
+
+    @Override
+    public PageUtils listLairage(Map<String, Object> params) {
+        //构建条件查询wrapper
+        QueryWrapper<DrinkingWaterVo> queryWrapper = new QueryWrapper<>();
+
+        //耳标
+        String eartag = (String) params.get("eartag");
+        if (StringUtils.isNotEmpty(eartag)) {
+            queryWrapper.like("base.eartag",eartag);
+        }
+
+        //性别
+        String sex = (String) params.get("sex");
+        if (StringUtils.isNotEmpty(sex)) {
+            queryWrapper.eq("base.sex",sex);
+        }
+
+        //品种
+        String breed = (String) params.get("breed");
+        if (StringUtils.isNotEmpty(breed)) {
+            queryWrapper.eq("base.breed",breed);
+        }
+
+        //健康状态
+        String healthStatus = (String) params.get("healthStatus");
+        if (StringUtils.isNotEmpty(healthStatus)) {
+            queryWrapper.eq("base.health_status",Integer.parseInt(healthStatus));
+        }
+
+        //养殖状态
+        String outFenceStatus = (String) params.get("outFenceStatus");
+        if (StringUtils.isNotEmpty(outFenceStatus)) {
+            queryWrapper.eq("base.out_fence_status",Integer.parseInt(outFenceStatus));
+        }
+
+        //栏期
+        String periodId = (String) params.get("periodId");
+        if (StringUtils.isNotEmpty(periodId)) {
+            queryWrapper.eq("base.period_id",Integer.parseInt(periodId));
+        }
+
+        //栋舍
+        String pigstyId = (String) params.get("pigstyId");
+        if (StringUtils.isNotEmpty(pigstyId)) {
+            queryWrapper.eq("base.pigsty_id",Integer.parseInt(pigstyId));
+        }
+        //单元
+        String unitId = (String) params.get("unitId");
+        if (StringUtils.isNotEmpty(unitId)) {
+            queryWrapper.eq("base.unit_id",Integer.parseInt(unitId));
+        }
+
+        //牧场
+        String farmId = (String) params.get("formFarmId");
+        if (StringUtils.isNotEmpty(farmId)) {
+            queryWrapper.eq("base.farm_id",Integer.parseInt(farmId));
+        }
+        //排除逻辑删除
+        queryWrapper.apply(" base.lairage_status = 0");
+        queryWrapper.orderByDesc("id");
+
+        IPage<PigBaseVo> page = pigBaseDao.list(new Query<>().getPage(params),queryWrapper);
+        return new PageUtils(page);
+    }
+
+    @Override
+    public void deleteLairage(List<Integer> asList) {
+        for (Integer integer : asList) {
+            pigBaseDao.deleteLairage(integer);
+
+        }
+
+        pigBaseDao.deleteBatchIds(asList);
+    }
 }

+ 1 - 1
huimv-smart-management/src/main/resources/application-dev.yml

@@ -21,7 +21,7 @@ spring:
   cloud:
     nacos:
       discovery:
-        server-addr: 192.168.1.57:8848
+        server-addr: 192.168.1.44:8848
 
   # 数据源
   datasource:

+ 68 - 0
huimv-smart-management/src/main/resources/mapper/management/LairageRecordDao.xml

@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+
+<mapper namespace="com.huimv.management.dao.LairageRecordDao">
+
+	<!-- 可根据自己的需求,是否要使用 -->
+    <resultMap type="com.huimv.management.entity.LairageRecordEntity" id="lairageRecordMap">
+        <result property="id" column="id"/>
+        <result property="eartag" column="eartag"/>
+        <result property="dayAge" column="day_age"/>
+        <result property="weight" column="weight"/>
+        <result property="fosterStatus" column="foster_status"/>
+        <result property="healthStatus" column="health_status"/>
+        <result property="whereDidYouGo" column="where_did_you_go"/>
+        <result property="breed" column="breed"/>
+        <result property="sex" column="sex"/>
+        <result property="birthday" column="birthday"/>
+        <result property="originPlace" column="origin_place"/>
+        <result property="farmId" column="farm_id"/>
+        <result property="pigstyId" column="pigsty_id"/>
+        <result property="unitId" column="unit_id"/>
+        <result property="periodId" column="period_id"/>
+        <result property="inFenceTime" column="in_fence_time"/>
+        <result property="outFenceTime" column="out_fence_time"/>
+        <result property="outFenceStatus" column="out_fence_status"/>
+        <result property="motherEartag" column="mother_eartag"/>
+        <result property="fatherEartag" column="father_eartag"/>
+        <result property="deleted" column="deleted"/>
+        <result property="gmtCreate" column="gmt_create"/>
+        <result property="gmtModified" column="gmt_modified"/>
+    </resultMap>
+
+    <select id="list" resultType="com.huimv.management.entity.vo.PigBaseVo">
+        SELECT
+          base.id,
+          base.eartag,
+          base.day_age,
+          unit.number unit_name,
+          unit.id unit_id,
+          base.weight,
+          base.foster_status,
+          base.health_status,
+          base.where_did_you_go,
+          base.breed,
+          base.sex,
+          base.birthday,
+          base.origin_place,
+          pigsty.number pigsty_name,
+          pigsty.id pigsty_id,
+          period.number period_name,
+          period.id period_id,
+          base.in_fence_time,
+          base.out_fence_time,
+          base.out_fence_status,
+          base.mother_eartag,
+          base.father_eartag,
+          farm.name farm_name
+
+        from mgt_lairage_record base
+        LEFT JOIN mgt_period period on period.id = base.period_id
+        JOIN mgt_pigsty pigsty on pigsty.id = base.pigsty_id
+        JOIN mgt_unit unit on unit.id = base.unit_id
+        JOIN mgt_farm farm on farm.id = base.farm_id
+        ${ew.customSqlSegment}
+
+    </select>
+
+</mapper>

+ 14 - 0
huimv-smart-management/src/main/resources/mapper/management/UserAttentionDao.xml

@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+
+<mapper namespace="com.huimv.management.dao.UserAttentionDao">
+
+	<!-- 可根据自己的需求,是否要使用 -->
+    <resultMap type="com.huimv.management.entity.UserAttentionEntity" id="userAttentionMap">
+        <result property="id" column="id"/>
+        <result property="userId" column="user_id"/>
+        <result property="cameraId" column="camera_id"/>
+    </resultMap>
+
+
+</mapper>

+ 5 - 0
huimv-smart-management/src/main/resources/mapper/management/YearPigBaseDao.xml

@@ -118,4 +118,9 @@
          GROUP BY DATE HAVING     DATE IS NOT NULL
 --         GROUP BY DATE_FORMAT(out_fence_time,"%Y-%m")
     </select>
+    <update id="deleteLairage">
+        update  mgt_year_pig_base
+            SET  lairage_status = 1
+            WHERE id = ${integer} and lairage_status = 0
+    </update>
 </mapper>