浏览代码

根据行政编码查牧场

523096025 3 年之前
父节点
当前提交
7e368911ad

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

@@ -99,6 +99,14 @@ public class CollectorRegisterController {
      */
     @RequestMapping("/save")
     public R save(@RequestBody CollectorRegisterEntity collectorRegister){
+        QueryWrapper<CollectorRegisterEntity> collectorRegisterEntityQueryWrapper = new QueryWrapper<>();
+
+        String deviceCode = collectorRegister.getDeviceCode();
+        collectorRegisterEntityQueryWrapper.eq("device_code",deviceCode);
+        int count = collectorRegisterService.count(collectorRegisterEntityQueryWrapper);
+        if (count >0){
+            return R.error("编号为"+deviceCode+"的设备已存在");
+        }
         String countyCode = collectorRegister.getCountyCode();
         QueryWrapper<BaseRegionEntity> baseRegionEntityQueryWrapper = new QueryWrapper<>();
         baseRegionEntityQueryWrapper.eq("region_code",countyCode);

+ 2 - 2
smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/controller/EartagDataController.java

@@ -103,8 +103,8 @@ public class EartagDataController {
     /*
     * 获取每日数据统计
     */
-    @Scheduled(cron = "1 1 * * * ?")
-//    @RequestMapping("/test")
+//    @Scheduled(cron = "1 1 * * * ?")
+    @RequestMapping("/test")
     private void updateDailyData(){
         eartagDataService.updateDailyData();
     }

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

@@ -0,0 +1,90 @@
+ package com.huimv.manager.controller;
+
+import java.util.Arrays;
+import java.util.List;
+import java.util.Map;
+
+import com.huimv.manager.entity.StockOutEntity;
+import com.huimv.manager.result.R;
+import com.huimv.manager.service.StockOutService;
+import com.huimv.manager.utils.PageUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+
+ /**
+  *
+  *
+  * @author yinhao
+  * @version ${version}
+  * @date 2021-08-06 15:40:07
+  */
+@RestController
+@RequestMapping("management/stockout")
+@CrossOrigin
+public class StockOutController {
+    @Autowired
+    private StockOutService stockOutService;
+
+    /**
+     * 列表
+     */
+    @RequestMapping("/list")
+    public R list(@RequestParam Map<String, Object> params){
+        PageUtils page = stockOutService.queryPage(params);
+
+        return R.ok().put("page", page);
+    }
+
+
+    /**
+     * 信息
+     */
+    @RequestMapping("/info/{id}")
+    public R info(@PathVariable("id") Integer id){
+		StockOutEntity stockOut = stockOutService.getById(id);
+
+        return R.ok().put("stockOut", stockOut);
+    }
+
+    /**
+     * 保存
+     */
+    @RequestMapping("/save")
+    public R save(@RequestBody StockOutEntity stockOut){
+		stockOutService.save(stockOut);
+
+        return R.ok();
+    }
+
+    /**
+     * 修改
+     */
+    @RequestMapping("/update")
+    public R update(@RequestBody StockOutEntity stockOut){
+		stockOutService.updateById(stockOut);
+
+        return R.ok();
+    }
+
+    /**
+     * 删除
+     */
+    @RequestMapping("/delete")
+    public R delete(@RequestBody Integer[] ids){
+		stockOutService.removeByIds(Arrays.asList(ids));
+
+        return R.ok();
+    }
+
+    /**
+     * 删除
+     */
+    @RequestMapping("/findByCode")
+    public R findByCode(@RequestParam Map<String, Object> params){
+        List list = stockOutService.findByCode(params);
+
+        return R.ok().put("data",list);
+    }
+
+}

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

@@ -0,0 +1,84 @@
+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-08-06 15:40:07
+ */
+@Data
+@TableName("stock_out")
+public class StockOutEntity implements Serializable {
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 
+	 */
+	@TableId
+	private Integer id;
+	/**
+	 * 行政区划代码/牧场代码
+	 */
+	private String regionCode;
+	/**
+	 * 行政区划名称/牧场名称(备用字段)
+	 */
+	private String regionName;
+	/**
+	 * 母猪总存栏
+	 */
+	private Integer sowTotalStock;
+	/**
+	 * 总存栏增幅类型
+	 */
+	private Integer totalStockWay;
+	/**
+	 * 总存栏增幅数量
+	 */
+	private Integer totalStockUpdate;
+	/**
+	 * 累计出栏量
+	 */
+	private Integer outTotal;
+	/**
+	 * 累计出栏量增幅类型
+	 */
+	private Integer outWay;
+	/**
+	 * 累计出栏量增幅数量
+	 */
+	private Integer outUpdate;
+	/**
+	 * 预计年出栏量
+	 */
+	private Integer expectOut;
+	/**
+	 * 预计年出栏量增幅类型
+	 */
+	private Integer expectOutWay;
+	/**
+	 * 预计年出栏量增幅数量
+	 */
+	private Integer expectOutUpdate;
+	/**
+	 * 母猪目标存栏量
+	 */
+	private Integer sowPlanStock;
+	/**
+	 * 目标年出栏量
+	 */
+	private Integer planOut;
+	/**
+	 * 年度
+	 */
+	private Integer year;
+
+}

+ 25 - 0
smart.eartag.data.platform/huimv-smart-eartag-data-manager/src/main/java/com/huimv/manager/entity/vo/StockOutVo.java

@@ -0,0 +1,25 @@
+package com.huimv.manager.entity.vo;
+
+import lombok.Data;
+
+/**
+ * @Project : huimv.shiwan
+ * @Package : com.huimv.manager.entity.vo
+ * @Description : TODO
+ * @Author : yuxuexuan
+ * @Create : 2021/8/6 0006 15:56
+ **/
+@Data
+public class StockOutVo {
+    //母猪总存栏
+    private Integer sowTotalStock;
+
+    //预计年出栏量
+    private Integer expectOut;
+
+    //母猪目标存栏量
+    private Integer sowPlanStock;
+
+    //目标年出栏量
+    private Integer planOut;
+}

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

@@ -0,0 +1,20 @@
+package com.huimv.manager.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.huimv.manager.entity.StockOutEntity;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+/**
+ * 
+ * 
+ * @author yinhao
+ * @version ${version}
+ * @date 2021-08-06 15:40:07
+ */
+@Mapper
+@Repository
+public interface StockOutDao extends BaseMapper<StockOutEntity> {
+
+    StockOutEntity counAll();
+}

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

@@ -0,0 +1,23 @@
+package com.huimv.manager.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.huimv.manager.entity.StockOutEntity;
+import com.huimv.manager.utils.PageUtils;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 
+ *
+ * @author yinhao
+ * @version ${version}
+ * @date 2021-08-06 15:40:07
+ */
+public interface StockOutService extends IService<StockOutEntity> {
+
+    PageUtils queryPage(Map<String, Object> params);
+
+    List findByCode(Map<String, Object> params);
+}
+

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

@@ -98,6 +98,8 @@ public class EartagDataServiceImpl extends ServiceImpl<EartagDataDao, EartagData
     @Autowired
     private FarmStockDao farmStockDao;
 
+    @Autowired
+    private StockOutDao stockOutDao;
 
     @Override
     public void updateDailyData() {
@@ -276,6 +278,25 @@ public class EartagDataServiceImpl extends ServiceImpl<EartagDataDao, EartagData
                 farmStockDao.updateById(farmStockEntity);
             }
 
+            //stockOut更新
+            QueryWrapper<StockOutEntity> stockOutEntityQueryWrapper = new QueryWrapper<>();
+            stockOutEntityQueryWrapper.eq("year", DateUtil.year(now));
+            stockOutEntityQueryWrapper.eq("region_code", farmCode);
+            StockOutEntity stockOutEntity = stockOutDao.selectOne(stockOutEntityQueryWrapper);
+            if (stockOutEntity == null) {
+                stockOutEntity = new StockOutEntity();
+            }
+            stockOutEntity.setRegionCode(farmCode);
+            stockOutEntity.setRegionName(farmName);
+            stockOutEntity.setSowTotalStock(allSow);
+            stockOutEntity.setYear(DateUtil.year(now));
+
+            if (stockOutEntity.getId() == null) {
+                stockOutDao.insert(stockOutEntity);
+            } else {
+                stockOutDao.updateById(stockOutEntity);
+            }
+
 
         }
 

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

@@ -0,0 +1,56 @@
+package com.huimv.manager.service.impl;
+
+import com.huimv.manager.entity.StockOutEntity;
+import com.huimv.manager.mapper.StockOutDao;
+import com.huimv.manager.service.StockOutService;
+import com.huimv.manager.utils.PageUtils;
+import com.huimv.manager.utils.Query;
+import org.apache.commons.lang.StringUtils;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.List;
+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-08-06 15:40:07
+ */
+@Service("stockOutService")
+public class StockOutServiceImpl extends ServiceImpl<StockOutDao, StockOutEntity> implements StockOutService {
+
+    @Override
+    public PageUtils queryPage(Map<String, Object> params) {
+        IPage<StockOutEntity> page = this.page(
+                new Query<StockOutEntity>().getPage(params),
+                new QueryWrapper<StockOutEntity>()
+        );
+
+        return new PageUtils(page);
+    }
+
+    @Override
+    public List findByCode(Map<String, Object> params) {
+        String farmCode = (String)params.get("farmCode");
+        QueryWrapper<StockOutEntity> stockOutEntityQueryWrapper = new QueryWrapper<>();
+        if (StringUtils.isBlank(farmCode)) {
+            List list = new ArrayList();
+           StockOutEntity stockOutEntity = baseMapper.counAll();
+            list.add(stockOutEntity);
+           return list;
+        }
+
+        stockOutEntityQueryWrapper.eq(StringUtils.isNotBlank(farmCode),"region_code",farmCode);
+
+        List<StockOutEntity> stockOutEntities = baseMapper.selectList(stockOutEntityQueryWrapper);
+        return stockOutEntities;
+    }
+
+}

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

@@ -0,0 +1,35 @@
+<?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.StockOutDao">
+
+	<!-- 可根据自己的需求,是否要使用 -->
+    <resultMap type="com.huimv.manager.entity.StockOutEntity" id="stockOutMap">
+        <result property="id" column="id"/>
+        <result property="regionCode" column="region_code"/>
+        <result property="regionName" column="region_name"/>
+        <result property="sowTotalStock" column="sow_total_stock"/>
+        <result property="totalStockWay" column="total_stock_way"/>
+        <result property="totalStockUpdate" column="total_stock_update"/>
+        <result property="out" column="out"/>
+        <result property="outWay" column="out_way"/>
+        <result property="outUpdate" column="out_update"/>
+        <result property="expectOut" column="expect_out"/>
+        <result property="expectOutWay" column="expect_out_way"/>
+        <result property="expectOutUpdate" column="expect_out_update"/>
+        <result property="sowPlanStock" column="sow_plan_stock"/>
+        <result property="planOut" column="plan_out"/>
+        <result property="year" column="year"/>
+    </resultMap>
+    <select id="counAll" resultType="com.huimv.manager.entity.StockOutEntity">
+        select
+           SUM(sow_total_stock) sowTotalStock,
+           SUM(expect_out) expectOut,
+           SUM(sow_plan_stock) sowPlanStock,
+           SUM(plan_out) planOut
+           from `stock_out`
+
+    </select>
+
+
+</mapper>