Sfoglia il codice sorgente

生产规模村汇总

Newspaper 2 anni fa
parent
commit
fa05bc4df7

+ 15 - 0
huimv-cattle/src/main/java/com/huimv/cattle/controller/ProductionCapacityController.java

@@ -1,6 +1,8 @@
 package com.huimv.cattle.controller;
 
 
+import com.huimv.cattle.pojo.DataSource;
+import com.huimv.cattle.service.DataSourceService;
 import com.huimv.cattle.service.ProductionCapacityService;
 import com.huimv.common.utils.Result;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -23,12 +25,25 @@ import java.util.Map;
 public class ProductionCapacityController {
     @Autowired
     private ProductionCapacityService productionCapacityService;
+    @Autowired
+    private DataSourceService dataSourceService;
 
     @PostMapping("/getProductionCapacity")
     public Result getProductionCapacity(HttpServletRequest request, @RequestBody Map<String, String> paramsMap){
         return productionCapacityService.getProductionCapacity(request,paramsMap);
     }
 
+    @PostMapping("/getProductionCapacityScreen")
+    public Result getProductionCapacityScreen(HttpServletRequest request, @RequestBody Map<String, String> paramsMap){
+        DataSource dataSource = dataSourceService.getDataSourceStatus();
+        if (dataSource.getDsStatus() == 1 && dataSource.getViewType() == 3){
+            return productionCapacityService.getProductionCapacityScreen(request,paramsMap);
+        }else {
+            return productionCapacityService.getProductionCapacity(request,paramsMap);
+        }
+
+    }
+
     @PostMapping("/saveProductionCapacity")
     public Result saveProductionCapacity(HttpServletRequest request, @RequestBody Map<String, String> paramsMap){
         return productionCapacityService.saveProductionCapacity(request,paramsMap);

+ 4 - 0
huimv-cattle/src/main/java/com/huimv/cattle/mapper/ProductionCapacityMapper.java

@@ -1,5 +1,7 @@
 package com.huimv.cattle.mapper;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Constants;
 import com.huimv.cattle.pojo.ProductionCapacity;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import org.apache.ibatis.annotations.Param;
@@ -19,4 +21,6 @@ import java.util.List;
 public interface ProductionCapacityMapper extends BaseMapper<ProductionCapacity> {
 
     void deleteAll(@Param("farmCode") String farmCode);
+
+    List<ProductionCapacity> getProductionCapacityScreen(String[] farmCode,@Param(Constants.WRAPPER) QueryWrapper<ProductionCapacity> queryWrapper);
 }

+ 10 - 0
huimv-cattle/src/main/java/com/huimv/cattle/mapper/xml/ProductionCapacityMapper.xml

@@ -19,4 +19,14 @@
         delete from production_capacity where farm_code = #{farmCode}
     </delete>
 
+    <select id="getProductionCapacityScreen" resultType="com.huimv.cattle.pojo.ProductionCapacity">
+        SELECT YEAR,SUM(production_count) productionCount,farm_code farmCode FROM `production_capacity`
+        WHERE farm_code IN
+        <foreach collection="farmCode"   item="cityCode" open="(" separator="," close=")">
+            #{cityCode}
+        </foreach>
+        ${ew.customSqlSegment}
+        GROUP BY YEAR
+    </select>
+
 </mapper>

+ 1 - 1
huimv-cattle/src/main/java/com/huimv/cattle/mapper/xml/SubsidyCountMapper.xml

@@ -25,8 +25,8 @@
         <foreach collection="farmCode"   item="cityCode" open="(" separator="," close=")">
             #{cityCode}
         </foreach>
-        GROUP BY YEAR
         ${ew.customSqlSegment}
+        GROUP BY YEAR
     </select>
 
 </mapper>

+ 2 - 0
huimv-cattle/src/main/java/com/huimv/cattle/service/ProductionCapacityService.java

@@ -20,4 +20,6 @@ public interface ProductionCapacityService extends IService<ProductionCapacity>
     Result getProductionCapacity(HttpServletRequest request, Map<String, String> paramsMap);
 
     Result saveProductionCapacity(HttpServletRequest request, Map<String, String> paramsMap);
+
+    Result getProductionCapacityScreen(HttpServletRequest request, Map<String, String> paramsMap);
 }

+ 28 - 0
huimv-cattle/src/main/java/com/huimv/cattle/service/impl/ProductionCapacityServiceImpl.java

@@ -4,6 +4,7 @@ import cn.hutool.core.util.ObjectUtil;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.huimv.cattle.mapper.SysRegionCounTownVillMapper;
 import com.huimv.cattle.pojo.ProductionCapacity;
 import com.huimv.cattle.mapper.ProductionCapacityMapper;
 import com.huimv.cattle.pojo.SubsidyCount;
@@ -33,6 +34,8 @@ import java.util.*;
 public class ProductionCapacityServiceImpl extends ServiceImpl<ProductionCapacityMapper, ProductionCapacity> implements ProductionCapacityService {
     @Autowired
     private ProductionCapacityMapper productionCapacityMapper;
+    @Autowired
+    private SysRegionCounTownVillMapper sysRegionCounTownVillMapper;
 
     @Autowired
     private DateUtil dateUtil;
@@ -91,6 +94,31 @@ public class ProductionCapacityServiceImpl extends ServiceImpl<ProductionCapacit
         return new Result(ResultCode.SUCCESS);
     }
 
+    @Override
+    public Result getProductionCapacityScreen(HttpServletRequest request, Map<String, String> paramsMap) {
+        String farmCode = paramsMap.get("farmCode");
+        if (StringUtils.isBlank(farmCode)) {
+            farmCode = TokenSign.getFarmCode(request);
+        }
+        String[] city = sysRegionCounTownVillMapper.listSub(farmCode).split(",");
+        String yearNum = paramsMap.get("yearNum");
+        QueryWrapper<ProductionCapacity> queryWrapper = new QueryWrapper<>();
+        if (StringUtils.isNotBlank(yearNum)) {
+            queryWrapper.between("year", Integer.valueOf(dateUtil.getThisYear()) - Integer.valueOf(yearNum), Integer.valueOf(dateUtil.getThisYear()));
+            //        queryWrapper.last("LIMIT "+yearNum);
+        }
+        queryWrapper.orderByDesc("year");
+        List<ProductionCapacity> productionCapacities = productionCapacityMapper.getProductionCapacityScreen(city,queryWrapper);
+        if (ObjectUtil.isEmpty(productionCapacities)) {
+            ProductionCapacity productionCapacity1 = new ProductionCapacity();
+            productionCapacity1.setYear(Integer.valueOf(dateUtil.getThisYear()));
+            productionCapacity1.setFarmCode(farmCode);
+            productionCapacities.add(productionCapacity1);
+            productionCapacityMapper.insert(productionCapacity1);
+        }
+        return new Result(ResultCode.SUCCESS, productionCapacities);
+    }
+
     private Boolean checkRepeat(List<ProductionCapacity> list) {
         List<Integer> collectionOptionList = new ArrayList<>();
         for (ProductionCapacity a : list) {