Explorar o código

设备管理,汇总数据,牧场概况

523096025 %!s(int64=3) %!d(string=hai) anos
pai
achega
7a7a932507
Modificáronse 18 ficheiros con 601 adicións e 18 borrados
  1. 83 0
      smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/controller/BaseRegionController.java
  2. 83 0
      smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/controller/FarmStockController.java
  3. 40 0
      smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/entity/BaseRegionEntity.java
  4. 12 1
      smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/entity/DailyTabulateDataEntity.java
  5. 8 1
      smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/entity/EartagDataEntity.java
  6. 88 0
      smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/entity/FarmStockEntity.java
  7. 2 0
      smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/mapper/BaseFarmInfoDao.java
  8. 17 0
      smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/mapper/BaseRegionDao.java
  9. 2 0
      smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/mapper/EartagOffineDao.java
  10. 19 0
      smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/mapper/FarmStockDao.java
  11. 20 0
      smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/service/BaseRegionService.java
  12. 20 0
      smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/service/FarmStockService.java
  13. 35 0
      smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/service/impl/BaseRegionServiceImpl.java
  14. 5 0
      smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/service/impl/DailyTabulateDataServiceImpl.java
  15. 59 16
      smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/service/impl/EartagDataServiceImpl.java
  16. 66 0
      smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/service/impl/FarmStockServiceImpl.java
  17. 15 0
      smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/resources/mapper/manager/BaseRegionDao.xml
  18. 27 0
      smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/resources/mapper/manager/FarmStockDao.xml

+ 83 - 0
smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/controller/BaseRegionController.java

@@ -0,0 +1,83 @@
+ package com.huimv.manager.controller;
+
+import java.util.Arrays;
+import java.util.Map;
+
+import com.huimv.manager.entity.BaseRegionEntity;
+import com.huimv.manager.result.R;
+import com.huimv.manager.service.BaseRegionService;
+import com.huimv.manager.utils.PageUtils;
+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;
+
+
+
+/**
+ * 
+ *
+ * @author yinhao
+ * @version ${version}
+ * @date 2021-07-28 10:39:17
+ */
+@RestController
+@RequestMapping("management/baseregion")
+public class BaseRegionController {
+    @Autowired
+    private BaseRegionService baseRegionService;
+
+    /**
+     * 列表
+     */
+    @RequestMapping("/list")
+    public R list(@RequestParam Map<String, Object> params){
+        PageUtils page = baseRegionService.queryPage(params);
+
+        return R.ok().put("page", page);
+    }
+
+
+    /**
+     * 信息
+     */
+    @RequestMapping("/info/{id}")
+    public R info(@PathVariable("id") Integer id){
+		BaseRegionEntity baseRegion = baseRegionService.getById(id);
+
+        return R.ok().put("baseRegion", baseRegion);
+    }
+
+    /**
+     * 保存
+     */
+    @RequestMapping("/save")
+    public R save(@RequestBody BaseRegionEntity baseRegion){
+		baseRegionService.save(baseRegion);
+
+        return R.ok();
+    }
+
+    /**
+     * 修改
+     */
+    @RequestMapping("/update")
+    public R update(@RequestBody BaseRegionEntity baseRegion){
+		baseRegionService.updateById(baseRegion);
+
+        return R.ok();
+    }
+
+    /**
+     * 删除
+     */
+    @RequestMapping("/delete")
+    public R delete(@RequestBody Integer[] ids){
+		baseRegionService.removeByIds(Arrays.asList(ids));
+
+        return R.ok();
+    }
+
+}

+ 83 - 0
smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/controller/FarmStockController.java

@@ -0,0 +1,83 @@
+ package com.huimv.manager.controller;
+
+import java.util.Arrays;
+import java.util.Map;
+
+import com.huimv.manager.entity.FarmStockEntity;
+import com.huimv.manager.result.R;
+import com.huimv.manager.service.FarmStockService;
+import com.huimv.manager.utils.PageUtils;
+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;
+
+
+
+/**
+ * 
+ *
+ * @author yinhao
+ * @version ${version}
+ * @date 2021-07-28 10:39:17
+ */
+@RestController
+@RequestMapping("management/farmstock")
+public class FarmStockController {
+    @Autowired
+    private FarmStockService farmStockService;
+
+    /**
+     * 列表
+     */
+    @RequestMapping("/list")
+    public R list(@RequestParam Map<String, Object> params){
+        PageUtils page = farmStockService.queryPage(params);
+
+        return R.ok().put("page", page);
+    }
+
+
+    /**
+     * 信息
+     */
+    @RequestMapping("/info/{id}")
+    public R info(@PathVariable("id") Integer id){
+		FarmStockEntity farmStock = farmStockService.getById(id);
+
+        return R.ok().put("farmStock", farmStock);
+    }
+
+    /**
+     * 保存
+     */
+    @RequestMapping("/save")
+    public R save(@RequestBody FarmStockEntity farmStock){
+		farmStockService.save(farmStock);
+
+        return R.ok();
+    }
+
+    /**
+     * 修改
+     */
+    @RequestMapping("/update")
+    public R update(@RequestBody FarmStockEntity farmStock){
+		farmStockService.updateById(farmStock);
+
+        return R.ok();
+    }
+
+    /**
+     * 删除
+     */
+    @RequestMapping("/delete")
+    public R delete(@RequestBody Integer[] ids){
+		farmStockService.removeByIds(Arrays.asList(ids));
+
+        return R.ok();
+    }
+
+}

+ 40 - 0
smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/entity/BaseRegionEntity.java

@@ -0,0 +1,40 @@
+package com.huimv.manager.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-28 10:39:17
+ */
+@Data
+@TableName("base_region")
+public class BaseRegionEntity implements Serializable {
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 
+	 */
+	@TableId
+	private Integer id;
+	/**
+	 * 行政区域代码
+	 */
+	private String regionCode;
+	/**
+	 * 行政区域名称
+	 */
+	private String regionName;
+	/**
+	 * 上级行政区域代码
+	 */
+	private String parentCode;
+
+}

+ 12 - 1
smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/entity/DailyTabulateDataEntity.java

@@ -39,6 +39,12 @@ public class DailyTabulateDataEntity implements Serializable {
      */
     private Integer offlineNo;
 
+
+    /**
+     * 能繁母猪
+     */
+    private Integer sowStock;
+
     /**
      * 日龄占比(250-1000)
      */
@@ -75,10 +81,15 @@ public class DailyTabulateDataEntity implements Serializable {
     private Integer stock3;
 
     /**
-     * 公猪存栏
+     * 空怀母猪
      */
     private Integer stock4;
 
+    /**
+     * 公猪存栏
+     */
+    private Integer stock5;
+
     /*
     * 牧场编号
     */

+ 8 - 1
smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/entity/EartagDataEntity.java

@@ -115,7 +115,14 @@ public class EartagDataEntity implements Serializable {
     private String tail;
 
     private String farmCode;
-
+    /**
+     * 阶段
+     */
     private Integer stage;
 
+    /**
+     * 区间运动量
+     */
+    private Integer sportGap;
+
 }

+ 88 - 0
smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/entity/FarmStockEntity.java

@@ -0,0 +1,88 @@
+package com.huimv.manager.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-28 10:39:17
+ */
+@Data
+@TableName("farm_stock")
+public class FarmStockEntity implements Serializable {
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 
+	 */
+	@TableId
+	private Integer id;
+	/**
+	 * 牧场代码
+	 */
+	private String farmCode;
+	/**
+	 * 牧场名称
+	 */
+	private String farmName;
+	/**
+	 * 母猪总存栏
+	 */
+	private Integer sowTotalStock;
+	/**
+	 * 母猪新增
+	 */
+	private Integer eartagNew;
+	/**
+	 * 耳标离线
+	 */
+	private Integer eartagOffone;
+	/**
+	 * 能繁母猪存栏
+	 */
+	private Integer sowStock;
+	/**
+	 * 配怀存栏
+	 */
+	private Integer stock1;
+	/**
+	 * 分娩存栏
+	 */
+	private Integer stock2;
+	/**
+	 * 空怀存栏
+	 */
+	private Integer stock3;
+	/**
+	 * 后备存栏
+	 */
+	private Integer stock4;
+	/**
+	 * 公猪存栏
+	 */
+	private Integer stock5;
+	/**
+	 * 月份
+	 */
+	private Integer month;
+	/**
+	 * 年度
+	 */
+	private Integer year;
+	/**
+	 * 地市代码
+	 */
+	private String cityCode;
+	/**
+	 * 区县代码
+	 */
+	private String countyCode;
+
+}

+ 2 - 0
smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/mapper/BaseFarmInfoDao.java

@@ -3,6 +3,7 @@ package com.huimv.manager.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.huimv.manager.entity.BaseFarmInfoEntity;
 import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
 
 /**
  * 
@@ -12,6 +13,7 @@ import org.apache.ibatis.annotations.Mapper;
  * @date 2021-07-27 14:50:11
  */
 @Mapper
+@Repository
 public interface BaseFarmInfoDao extends BaseMapper<BaseFarmInfoEntity> {
 	
 }

+ 17 - 0
smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/mapper/BaseRegionDao.java

@@ -0,0 +1,17 @@
+package com.huimv.manager.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.huimv.manager.entity.BaseRegionEntity;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 
+ * 
+ * @author yinhao
+ * @version ${version}
+ * @date 2021-07-28 10:39:17
+ */
+@Mapper
+public interface BaseRegionDao extends BaseMapper<BaseRegionEntity> {
+	
+}

+ 2 - 0
smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/mapper/EartagOffineDao.java

@@ -3,6 +3,7 @@ package com.huimv.manager.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.huimv.manager.entity.EartagOffineEntity;
 import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
 
 /**
  * 
@@ -12,6 +13,7 @@ import org.apache.ibatis.annotations.Mapper;
  * @date 2021-07-27 14:50:11
  */
 @Mapper
+@Repository
 public interface EartagOffineDao extends BaseMapper<EartagOffineEntity> {
 	
 }

+ 19 - 0
smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/mapper/FarmStockDao.java

@@ -0,0 +1,19 @@
+package com.huimv.manager.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.huimv.manager.entity.FarmStockEntity;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+/**
+ * 
+ * 
+ * @author yinhao
+ * @version ${version}
+ * @date 2021-07-28 10:39:17
+ */
+@Mapper
+@Repository
+public interface FarmStockDao extends BaseMapper<FarmStockEntity> {
+	
+}

+ 20 - 0
smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/service/BaseRegionService.java

@@ -0,0 +1,20 @@
+package com.huimv.manager.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.huimv.manager.entity.BaseRegionEntity;
+import com.huimv.manager.utils.PageUtils;
+
+import java.util.Map;
+
+/**
+ * 
+ *
+ * @author yinhao
+ * @version ${version}
+ * @date 2021-07-28 10:39:17
+ */
+public interface BaseRegionService extends IService<BaseRegionEntity> {
+
+    PageUtils queryPage(Map<String, Object> params);
+}
+

+ 20 - 0
smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/service/FarmStockService.java

@@ -0,0 +1,20 @@
+package com.huimv.manager.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.huimv.manager.entity.FarmStockEntity;
+import com.huimv.manager.utils.PageUtils;
+
+import java.util.Map;
+
+/**
+ * 
+ *
+ * @author yinhao
+ * @version ${version}
+ * @date 2021-07-28 10:39:17
+ */
+public interface FarmStockService extends IService<FarmStockEntity> {
+
+    PageUtils queryPage(Map<String, Object> params);
+}
+

+ 35 - 0
smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/service/impl/BaseRegionServiceImpl.java

@@ -0,0 +1,35 @@
+package com.huimv.manager.service.impl;
+
+import com.huimv.manager.entity.BaseRegionEntity;
+import com.huimv.manager.mapper.BaseRegionDao;
+import com.huimv.manager.service.BaseRegionService;
+import com.huimv.manager.utils.PageUtils;
+import com.huimv.manager.utils.Query;
+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;
+
+
+/**
+ * 
+ *
+ * @author yinhao
+ * @version ${version}
+ * @date 2021-07-28 10:39:17
+ */
+@Service("baseRegionService")
+public class BaseRegionServiceImpl extends ServiceImpl<BaseRegionDao, BaseRegionEntity> implements BaseRegionService {
+
+    @Override
+    public PageUtils queryPage(Map<String, Object> params) {
+        IPage<BaseRegionEntity> page = this.page(
+                new Query<BaseRegionEntity>().getPage(params),
+                new QueryWrapper<BaseRegionEntity>()
+        );
+
+        return new PageUtils(page);
+    }
+
+}

+ 5 - 0
smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/service/impl/DailyTabulateDataServiceImpl.java

@@ -38,6 +38,8 @@ public class DailyTabulateDataServiceImpl extends ServiceImpl<DailyTabulateDataD
        String maxStockNew =(String) params.get("maxStockNew");
        String minOfflineNo =(String) params.get("minOfflineNo");
        String maxOfflineNo =(String) params.get("maxOfflineNo");
+       String minSowStock =(String) params.get("minSowStock");
+       String maxSowStock =(String) params.get("maxSowStock");
 
         QueryWrapper<DailyTabulateDataEntity> wrapper = new QueryWrapper<>();
         wrapper.eq("farm_code",farmCode);
@@ -54,6 +56,9 @@ public class DailyTabulateDataServiceImpl extends ServiceImpl<DailyTabulateDataD
         wrapper.ge(StringUtils.isNotBlank(minOfflineNo),"offline_no",minOfflineNo);
         wrapper.le(StringUtils.isNotBlank(maxOfflineNo),"offline_no",maxOfflineNo);
 
+        wrapper.ge(StringUtils.isNotBlank(minOfflineNo),"sow_stock",minSowStock);
+        wrapper.le(StringUtils.isNotBlank(maxOfflineNo),"sow_stock",maxSowStock);
+
 
         IPage<DailyTabulateDataEntity> page = this.page(
                 new Query<DailyTabulateDataEntity>().getPage(params),

+ 59 - 16
smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/service/impl/EartagDataServiceImpl.java

@@ -4,14 +4,9 @@ import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-import com.huimv.manager.entity.BaseFarmInfoEntity;
-import com.huimv.manager.entity.DailyTabulateDataEntity;
-import com.huimv.manager.entity.EartagOffineEntity;
+import com.huimv.manager.entity.*;
 import com.huimv.manager.entity.vo.EartagDataCountVo;
-import com.huimv.manager.mapper.BaseFarmInfoDao;
-import com.huimv.manager.mapper.DailyTabulateDataDao;
-import com.huimv.manager.mapper.EartagDataDao;
-import com.huimv.manager.mapper.EartagOffineDao;
+import com.huimv.manager.mapper.*;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -25,7 +20,6 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.huimv.manager.utils.PageUtils;
 import com.huimv.manager.utils.Query;
 
-import com.huimv.manager.entity.EartagDataEntity;
 import com.huimv.manager.service.EartagDataService;
 
 /**
@@ -90,12 +84,22 @@ public class EartagDataServiceImpl extends ServiceImpl<EartagDataDao, EartagData
     @Autowired
     private BaseFarmInfoDao baseFarmInfoDao;
 
+    @Autowired
+    private FarmStockDao farmStockDao;
+
+
     @Override
     public void updateDailyData() {
         QueryWrapper<BaseFarmInfoEntity> baseFarmInfoWrapper = new QueryWrapper<>();
         List<BaseFarmInfoEntity> baseFarmInfoEntities = baseFarmInfoDao.selectList(baseFarmInfoWrapper);
         for (BaseFarmInfoEntity baseFarmInfoEntity : baseFarmInfoEntities) {
             String farmCode = baseFarmInfoEntity.getFarmCode();
+            String farmName = baseFarmInfoEntity.getFarmName();
+            String county = baseFarmInfoEntity.getCounty();
+            String city = baseFarmInfoEntity.getCity();
+
+
+
             //查询当日牧场下耳标数据
             Date now = new Date();
             QueryWrapper<EartagDataEntity> wrapper = new QueryWrapper<>();
@@ -154,9 +158,9 @@ public class EartagDataServiceImpl extends ServiceImpl<EartagDataDao, EartagData
 
 
             //计算日龄
-            Integer totalRatio = eartagDataEntities.size();
             Integer ratio1 = 0 ,ratio2 = 0,ratio3= 0,ratio4 = 0;
-            Integer stock1 = 0 ,stock2 = 0,stock3= 0,stock4 = 0;
+            //1:配怀存栏,2:分娩存栏,3:后备存栏,4:空怀母猪,5:公猪存栏,
+            Integer stock1 = 0 ,stock2 = 0,stock3= 0,stock4 = 0,stock5=0;
             for (EartagDataEntity eartagDataEntity : eartagDataEntities) {
                 Integer dayAge = eartagDataEntity.getDayAge2();
                 if (dayAge>250 &&  dayAge < 1000 ){
@@ -188,12 +192,15 @@ public class EartagDataServiceImpl extends ServiceImpl<EartagDataDao, EartagData
                 if (stage== 4){
                     stock4++;
                 }
+                if (stage== 5){
+                    stock5++;
+                }
 
             }
-            String ratioStr1 = CalculateUtil(BigDecimal.valueOf(ratio1), BigDecimal.valueOf(totalRatio));
-            String ratioStr2 = CalculateUtil(BigDecimal.valueOf(ratio2),BigDecimal.valueOf(totalRatio));
-            String ratioStr3 = CalculateUtil(BigDecimal.valueOf(ratio3),BigDecimal.valueOf(totalRatio));
-            String ratioStr4 = CalculateUtil(BigDecimal.valueOf(ratio4),BigDecimal.valueOf(totalRatio));
+            String ratioStr1 = CalculateUtil(BigDecimal.valueOf(ratio1), BigDecimal.valueOf(allSow));
+            String ratioStr2 = CalculateUtil(BigDecimal.valueOf(ratio2),BigDecimal.valueOf(allSow));
+            String ratioStr3 = CalculateUtil(BigDecimal.valueOf(ratio3),BigDecimal.valueOf(allSow));
+            String ratioStr4 = CalculateUtil(BigDecimal.valueOf(ratio4),BigDecimal.valueOf(allSow));
 
 
 
@@ -219,14 +226,50 @@ public class EartagDataServiceImpl extends ServiceImpl<EartagDataDao, EartagData
             dailyTabulateDataEntity.setStock2(stock2);
             dailyTabulateDataEntity.setStock3(stock3);
             dailyTabulateDataEntity.setStock4(stock4);
-
-
+            dailyTabulateDataEntity.setStock5(stock5);
+            dailyTabulateDataEntity.setSowStock(stock1+stock2+stock3);
 
             if (dailyTabulateDataEntity.getId()==null){
                 dailyTabulateDataDao.insert(dailyTabulateDataEntity);
             }else {
                 dailyTabulateDataDao.updateById(dailyTabulateDataEntity);
             }
+
+
+
+            //牧场存栏统计
+            QueryWrapper<FarmStockEntity> farmStockEQueryWrapper = new QueryWrapper<>();
+            farmStockEQueryWrapper.eq("year",DateUtil.year(now));
+            farmStockEQueryWrapper.eq("month",DateUtil.month(now));
+            farmStockEQueryWrapper.eq("farm_code",farmCode);
+            FarmStockEntity farmStockEntity = farmStockDao.selectOne(farmStockEQueryWrapper);
+            if (farmStockEntity == null){
+                farmStockEntity = new FarmStockEntity();
+            }
+
+            farmStockEntity.setFarmCode(farmCode);
+            farmStockEntity.setFarmName(farmName);
+            farmStockEntity.setSowTotalStock(allSow);
+            farmStockEntity.setEartagNew(newSow);
+            farmStockEntity.setEartagOffone(offSow);
+            farmStockEntity.setSowStock(stock1+stock2+stock3);
+            farmStockEntity.setStock1(stock1);
+            farmStockEntity.setStock2(stock2);
+            farmStockEntity.setStock3(stock3);
+            farmStockEntity.setStock4(stock4);
+            farmStockEntity.setStock5(stock5);
+            farmStockEntity.setYear(DateUtil.year(now));
+            farmStockEntity.setMonth(DateUtil.month(now));
+            farmStockEntity.setCityCode(city);
+            farmStockEntity.setCountyCode(county);
+            if(farmStockEntity.getId() == null){
+                farmStockDao.insert(farmStockEntity);
+            }else {
+                farmStockDao.updateById(farmStockEntity);
+            }
+
+
+
         }
 
 

+ 66 - 0
smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/service/impl/FarmStockServiceImpl.java

@@ -0,0 +1,66 @@
+package com.huimv.manager.service.impl;
+
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.huimv.manager.entity.FarmStockEntity;
+import com.huimv.manager.mapper.FarmStockDao;
+import com.huimv.manager.service.FarmStockService;
+import com.huimv.manager.utils.PageUtils;
+import com.huimv.manager.utils.Query;
+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;
+
+
+/**
+ *
+ * @author yinhao
+ * @version ${version}
+ * @date 2021-07-28 10:39:17
+ */
+@Service("farmStockService")
+public class FarmStockServiceImpl extends ServiceImpl<FarmStockDao, FarmStockEntity> implements FarmStockService {
+
+    @Override
+    public PageUtils queryPage(Map<String, Object> params) {
+
+        String county = (String)params.get("county");
+        String farmName = (String) params.get("farmName");
+        String minStockTotal =(String) params.get("minStockTotal");
+        String maxStockTotal =(String) params.get("maxStockTotal");
+        String minStockNew =(String) params.get("minStockNew");
+        String maxStockNew =(String) params.get("maxStockNew");
+        String minOfflineNo =(String) params.get("minOfflineNo");
+        String maxOfflineNo =(String) params.get("maxOfflineNo");
+        String minSowStock =(String) params.get("minSowStock");
+        String maxSowStock =(String) params.get("maxSowStock");
+
+        QueryWrapper<FarmStockEntity> wrapper = new QueryWrapper<>();
+        wrapper.eq(StringUtils.isNotBlank(county),"county_code",county);
+        wrapper.like(StringUtils.isNotBlank(farmName),"farm_name",farmName);
+
+        wrapper.ge(StringUtils.isNotBlank(minStockTotal),"stock_total",minStockTotal);
+        wrapper.le(StringUtils.isNotBlank(maxStockTotal),"stock_total",maxStockTotal);
+
+        wrapper.ge(StringUtils.isNotBlank(minStockNew),"stock_new",minStockNew);
+        wrapper.le(StringUtils.isNotBlank(maxStockNew),"stock_new",maxStockNew);
+
+        wrapper.ge(StringUtils.isNotBlank(minOfflineNo),"offline_no",minOfflineNo);
+        wrapper.le(StringUtils.isNotBlank(maxOfflineNo),"offline_no",maxOfflineNo);
+
+        wrapper.ge(StringUtils.isNotBlank(minOfflineNo),"sow_stock",minSowStock);
+        wrapper.le(StringUtils.isNotBlank(maxOfflineNo),"sow_stock",maxSowStock);
+
+
+
+
+        IPage<FarmStockEntity> page = this.page(
+                new Query<FarmStockEntity>().getPage(params),
+                wrapper
+        );
+
+        return new PageUtils(page);
+    }
+
+}

+ 15 - 0
smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/resources/mapper/manager/BaseRegionDao.xml

@@ -0,0 +1,15 @@
+<?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.manager.mapper.BaseRegionDao">
+
+	<!-- 可根据自己的需求,是否要使用 -->
+    <resultMap type="com.huimv.manager.entity.BaseRegionEntity" id="baseRegionMap">
+        <result property="id" column="id"/>
+        <result property="regionCode" column="region_code"/>
+        <result property="regionName" column="region_name"/>
+        <result property="parentCode" column="parent_code"/>
+    </resultMap>
+
+
+</mapper>

+ 27 - 0
smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/resources/mapper/manager/FarmStockDao.xml

@@ -0,0 +1,27 @@
+<?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.manager.mapper.FarmStockDao">
+
+	<!-- 可根据自己的需求,是否要使用 -->
+    <resultMap type="com.huimv.manager.entity.FarmStockEntity" id="farmStockMap">
+        <result property="id" column="id"/>
+        <result property="farmCode" column="farm_code"/>
+        <result property="farmName" column="farm_name"/>
+        <result property="sowTotalStock" column="sow_total_stock"/>
+        <result property="eartagNew" column="eartag_new"/>
+        <result property="eartagOffone" column="eartag_offone"/>
+        <result property="sowStock" column="sow_stock"/>
+        <result property="stock1" column="stock1"/>
+        <result property="stock2" column="stock2"/>
+        <result property="stock3" column="stock3"/>
+        <result property="stock4" column="stock4"/>
+        <result property="stock5" column="stock5"/>
+        <result property="month" column="month"/>
+        <result property="year" column="year"/>
+        <result property="cityCode" column="city_code"/>
+        <result property="countyCode" column="county_code"/>
+    </resultMap>
+
+
+</mapper>