Browse Source

更新精确计算时divide问题

zhuoning 2 năm trước cách đây
mục cha
commit
be1858012f
20 tập tin đã thay đổi với 161 bổ sung27 xóa
  1. 1 1
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/impl/EnvElectricityDayServiceImpl.java
  2. 2 2
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/impl/EnvElectricityMonthServiceImpl.java
  3. 1 1
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/impl/EnvWaterDayServiceImpl.java
  4. 1 1
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/impl/EnvWaterMonthServiceImpl.java
  5. 1 1
      huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/controller/EnvWaterDayController.java
  6. 2 0
      huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/controller/BirthController.java
  7. 2 4
      huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/controller/BoardController.java
  8. 2 5
      huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/controller/CostController.java
  9. 2 0
      huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/controller/GeneralImmunityPlanController.java
  10. 2 5
      huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/controller/IndicatorController.java
  11. 2 0
      huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/controller/SpecialImmunityPlanController.java
  12. 2 0
      huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/controller/TransferController.java
  13. 2 0
      huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/controller/TuppingController.java
  14. 34 3
      huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/controller/WarningInfoController.java
  15. 2 0
      huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/controller/WeanController.java
  16. 2 0
      huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/controller/WorkplanController.java
  17. 9 0
      huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/service/WarningInfoService.java
  18. 19 2
      huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/service/impl/CostServiceImpl.java
  19. 71 0
      huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/service/impl/WarningInfoServiceImpl.java
  20. 2 2
      huimv-env-platform/huimv-env-produce/src/main/resources/application.properties

+ 1 - 1
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/impl/EnvElectricityDayServiceImpl.java

@@ -168,7 +168,7 @@ public class EnvElectricityDayServiceImpl extends ServiceImpl<EnvElectricityDayM
         if(lastEnvElectricityDay == null){
             return new BigDecimal(0);
         }else{
-            return (newElectricityBd.subtract(lastEnvElectricityDay.getDayElectricity())).divide(lastEnvElectricityDay.getDayElectricity()).multiply(new BigDecimal(100));
+            return (newElectricityBd.subtract(lastEnvElectricityDay.getDayElectricity())).divide(lastEnvElectricityDay.getDayElectricity(),2,BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100));
         }
     }
 }

+ 2 - 2
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/impl/EnvElectricityMonthServiceImpl.java

@@ -78,7 +78,7 @@ public class EnvElectricityMonthServiceImpl extends ServiceImpl<EnvElectricityMo
     public void updateMonthElectricity(EnvElectricityMonth envElectricityMonth, JSONObject dataJo, Timestamp nowTimestamp) {
         BigDecimal endElectricityBd = new BigDecimal(dataJo.getString("value"));
         BigDecimal newMonthElectricityBd = (endElectricityBd.subtract(envElectricityMonth.getStartElectricity())).divide(new BigDecimal("100"), 2, BigDecimal.ROUND_HALF_UP);
-        BigDecimal linkRelativeRatioBd = newMonthElectricityBd.divide(envElectricityMonth.getStartElectricity()).multiply(new BigDecimal(100));
+        BigDecimal linkRelativeRatioBd = newMonthElectricityBd.divide(envElectricityMonth.getStartElectricity(),2,BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100));
         envElectricityMonth.setEndTime(nowTimestamp);
         envElectricityMonth.setEndElectricity(endElectricityBd);
         envElectricityMonth.setMonthElectricity(newMonthElectricityBd);
@@ -160,7 +160,7 @@ public class EnvElectricityMonthServiceImpl extends ServiceImpl<EnvElectricityMo
         if(lastEnvElectricityMonth == null){
             return new BigDecimal(0);
         }else{
-            return (newWaterBd.subtract(lastEnvElectricityMonth.getMonthElectricity())).divide(lastEnvElectricityMonth.getMonthElectricity()).multiply(new BigDecimal(100));
+            return (newWaterBd.subtract(lastEnvElectricityMonth.getMonthElectricity())).divide(lastEnvElectricityMonth.getMonthElectricity(),2,BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100));
         }
     }
 }

+ 1 - 1
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/impl/EnvWaterDayServiceImpl.java

@@ -173,7 +173,7 @@ public class EnvWaterDayServiceImpl extends ServiceImpl<EnvWaterDayMapper, EnvWa
         if(lastEnvWaterDay == null){
             return new BigDecimal(0);
         }else{
-            return (newWaterBd.subtract(lastEnvWaterDay.getDayWater())).divide(lastEnvWaterDay.getDayWater(),BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100));
+            return (newWaterBd.subtract(lastEnvWaterDay.getDayWater())).divide(lastEnvWaterDay.getDayWater(),2,BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100));
         }
     }
 }

+ 1 - 1
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/impl/EnvWaterMonthServiceImpl.java

@@ -149,7 +149,7 @@ public class EnvWaterMonthServiceImpl extends ServiceImpl<EnvWaterMonthMapper, E
         if(lastEnvWaterMonth == null){
             return new BigDecimal(0);
         }else{
-            return (newWaterBd.subtract(lastEnvWaterMonth.getMonthWater())).divide(lastEnvWaterMonth.getMonthWater()).multiply(new BigDecimal(100));
+            return (newWaterBd.subtract(lastEnvWaterMonth.getMonthWater())).divide(lastEnvWaterMonth.getMonthWater(),2,BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100));
         }
     }
 

+ 1 - 1
huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/controller/EnvWaterDayController.java

@@ -17,7 +17,7 @@ import java.util.Map;
  * </p>
  *
  * @author zn
- * @since 2022-10-20
+ * @since 2022-10-20`
  */
 @RestController
 @RequestMapping("/envWater")

+ 2 - 0
huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/controller/BirthController.java

@@ -1,6 +1,7 @@
 package com.huimv.env.produce.controller;
 
 
+import org.springframework.web.bind.annotation.CrossOrigin;
 import org.springframework.web.bind.annotation.RequestMapping;
 
 import org.springframework.web.bind.annotation.RestController;
@@ -13,6 +14,7 @@ import org.springframework.web.bind.annotation.RestController;
  * @author zn
  * @since 2022-10-30
  */
+@CrossOrigin
 @RestController
 @RequestMapping("/birth")
 public class BirthController {

+ 2 - 4
huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/controller/BoardController.java

@@ -5,10 +5,7 @@ import com.huimv.common.utils.Result;
 import com.huimv.common.utils.ResultCode;
 import com.huimv.env.produce.service.*;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import java.text.ParseException;
 import java.util.Map;
@@ -21,6 +18,7 @@ import java.util.Map;
  * @Author : ZhuoNing
  * @Create : 2022/10/30
  **/
+@CrossOrigin
 @RestController
 @RequestMapping("/v1.0.0/board")
 public class BoardController {

+ 2 - 5
huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/controller/CostController.java

@@ -4,11 +4,7 @@ package com.huimv.env.produce.controller;
 import com.huimv.common.utils.Result;
 import com.huimv.env.produce.service.CostService;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import java.text.ParseException;
 import java.util.Map;
@@ -21,6 +17,7 @@ import java.util.Map;
  * @author zn
  * @since 2022-10-30
  */
+@CrossOrigin
 @RestController
 @RequestMapping("/v1.0.0/cost")
 public class CostController {

+ 2 - 0
huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/controller/GeneralImmunityPlanController.java

@@ -1,6 +1,7 @@
 package com.huimv.env.produce.controller;
 
 
+import org.springframework.web.bind.annotation.CrossOrigin;
 import org.springframework.web.bind.annotation.RequestMapping;
 
 import org.springframework.web.bind.annotation.RestController;
@@ -13,6 +14,7 @@ import org.springframework.web.bind.annotation.RestController;
  * @author zn
  * @since 2022-10-30
  */
+@CrossOrigin
 @RestController
 @RequestMapping("/general-immunity-plan")
 public class GeneralImmunityPlanController {

+ 2 - 5
huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/controller/IndicatorController.java

@@ -4,11 +4,7 @@ package com.huimv.env.produce.controller;
 import com.huimv.common.utils.Result;
 import com.huimv.env.produce.service.IndicatorService;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import java.text.ParseException;
 import java.util.Map;
@@ -21,6 +17,7 @@ import java.util.Map;
  * @author zn
  * @since 2022-10-30
  */
+@CrossOrigin
 @RestController
 @RequestMapping("/v1.0.0/indicator")
 public class IndicatorController {

+ 2 - 0
huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/controller/SpecialImmunityPlanController.java

@@ -1,6 +1,7 @@
 package com.huimv.env.produce.controller;
 
 
+import org.springframework.web.bind.annotation.CrossOrigin;
 import org.springframework.web.bind.annotation.RequestMapping;
 
 import org.springframework.web.bind.annotation.RestController;
@@ -13,6 +14,7 @@ import org.springframework.web.bind.annotation.RestController;
  * @author zn
  * @since 2022-10-30
  */
+@CrossOrigin
 @RestController
 @RequestMapping("/special-immunity-plan")
 public class SpecialImmunityPlanController {

+ 2 - 0
huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/controller/TransferController.java

@@ -1,6 +1,7 @@
 package com.huimv.env.produce.controller;
 
 
+import org.springframework.web.bind.annotation.CrossOrigin;
 import org.springframework.web.bind.annotation.RequestMapping;
 
 import org.springframework.web.bind.annotation.RestController;
@@ -13,6 +14,7 @@ import org.springframework.web.bind.annotation.RestController;
  * @author zn
  * @since 2022-10-30
  */
+@CrossOrigin
 @RestController
 @RequestMapping("/transfer")
 public class TransferController {

+ 2 - 0
huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/controller/TuppingController.java

@@ -1,6 +1,7 @@
 package com.huimv.env.produce.controller;
 
 
+import org.springframework.web.bind.annotation.CrossOrigin;
 import org.springframework.web.bind.annotation.RequestMapping;
 
 import org.springframework.web.bind.annotation.RestController;
@@ -13,6 +14,7 @@ import org.springframework.web.bind.annotation.RestController;
  * @author zn
  * @since 2022-10-30
  */
+@CrossOrigin
 @RestController
 @RequestMapping("/tupping")
 public class TuppingController {

+ 34 - 3
huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/controller/WarningInfoController.java

@@ -1,9 +1,13 @@
 package com.huimv.env.produce.controller;
 
 
-import org.springframework.web.bind.annotation.RequestMapping;
+import com.huimv.common.utils.Result;
+import com.huimv.env.produce.service.WarningInfoService;
+import org.springframework.web.bind.annotation.*;
 
-import org.springframework.web.bind.annotation.RestController;
+import javax.annotation.Resource;
+import java.text.ParseException;
+import java.util.Map;
 
 /**
  * <p>
@@ -13,9 +17,36 @@ import org.springframework.web.bind.annotation.RestController;
  * @author zn
  * @since 2022-10-30
  */
+@CrossOrigin
 @RestController
-@RequestMapping("/warning-info")
+@RequestMapping("/v1.0.0/warningInfo")
 public class WarningInfoController {
+    @Resource
+    private WarningInfoService warningInfoService;
+
+    @PostMapping("/add")
+    public Result add(@RequestBody Map<String, String> paramsMap) throws ParseException {
+        //
+        return warningInfoService.add(paramsMap);
+    }
+
+    @PostMapping("/edit")
+    public Result edit(@RequestBody Map<String, String> paramsMap) throws ParseException {
+        //
+        return warningInfoService.edit(paramsMap);
+    }
+
+    @PostMapping("/remove")
+    public Result remove(@RequestBody Map<String, String> paramsMap) throws ParseException {
+        //
+        return warningInfoService.remove(paramsMap);
+    }
+
+    @PostMapping("/list")
+    public Result list(@RequestBody Map<String, String> paramsMap) throws ParseException {
+        //
+        return warningInfoService.list(paramsMap);
+    }
 
 }
 

+ 2 - 0
huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/controller/WeanController.java

@@ -1,6 +1,7 @@
 package com.huimv.env.produce.controller;
 
 
+import org.springframework.web.bind.annotation.CrossOrigin;
 import org.springframework.web.bind.annotation.RequestMapping;
 
 import org.springframework.web.bind.annotation.RestController;
@@ -13,6 +14,7 @@ import org.springframework.web.bind.annotation.RestController;
  * @author zn
  * @since 2022-10-30
  */
+@CrossOrigin
 @RestController
 @RequestMapping("/wean")
 public class WeanController {

+ 2 - 0
huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/controller/WorkplanController.java

@@ -1,6 +1,7 @@
 package com.huimv.env.produce.controller;
 
 
+import org.springframework.web.bind.annotation.CrossOrigin;
 import org.springframework.web.bind.annotation.RequestMapping;
 
 import org.springframework.web.bind.annotation.RestController;
@@ -13,6 +14,7 @@ import org.springframework.web.bind.annotation.RestController;
  * @author zn
  * @since 2022-10-30
  */
+@CrossOrigin
 @RestController
 @RequestMapping("/workplan")
 public class WorkplanController {

+ 9 - 0
huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/service/WarningInfoService.java

@@ -1,5 +1,6 @@
 package com.huimv.env.produce.service;
 
+import com.huimv.common.utils.Result;
 import com.huimv.env.produce.entity.WarningInfo;
 import com.baomidou.mybatisplus.extension.service.IService;
 
@@ -17,4 +18,12 @@ import java.util.Map;
 public interface WarningInfoService extends IService<WarningInfo> {
 
     Long getWarningCount(Map<String, String> paramsMap) throws ParseException;
+
+    Result add(Map<String, String> paramsMap) throws ParseException;
+
+    Result edit(Map<String, String> paramsMap) throws ParseException;
+
+    Result remove(Map<String, String> paramsMap);
+
+    Result list(Map<String, String> paramsMap);
 }

+ 19 - 2
huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/service/impl/CostServiceImpl.java

@@ -12,6 +12,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.math.BigDecimal;
 import java.util.Map;
 
 /**
@@ -35,7 +36,23 @@ public class CostServiceImpl extends ServiceImpl<CostMapper, Cost> implements Co
         queryWrapper.eq("farm_code",farmCode);
         queryWrapper.eq("year",dateUtil.getThisYear());
         queryWrapper.eq("month",dateUtil.getThisMonth());
-//        queryWrapper.eq("add_date",dateUtil.getTodayDate());
-        return new Result(ResultCode.SUCCESS,costMapper.selectOne(queryWrapper));
+        Cost cost = costMapper.selectOne(queryWrapper);
+        System.out.println("cost="+cost);
+        if(cost == null){
+            cost = new Cost();
+            cost.setAllDrugCost(new BigDecimal(0));
+            cost.setAllFeedCost(new BigDecimal(0));
+            cost.setAllSharedCost(new BigDecimal(0));
+            cost.setBoarDrugCost(new BigDecimal(0));
+            cost.setBoarFeedCost(new BigDecimal(0));
+            cost.setBoarSharedCost(new BigDecimal(0));
+            cost.setSowDrugCost(new BigDecimal(0));
+            cost.setSowFeedCost(new BigDecimal(0));
+            cost.setSowSharedCost(new BigDecimal(0));
+            cost.setFatpigDrugCost(new BigDecimal(0));
+            cost.setFatpigFeedCost(new BigDecimal(0));
+            cost.setFatpigSharedCost(new BigDecimal(0));
+        }
+        return new Result(ResultCode.SUCCESS,cost);
     }
 }

+ 71 - 0
huimv-env-platform/huimv-env-produce/src/main/java/com/huimv/env/produce/service/impl/WarningInfoServiceImpl.java

@@ -1,15 +1,20 @@
 package com.huimv.env.produce.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.huimv.common.utils.Result;
+import com.huimv.common.utils.ResultCode;
 import com.huimv.env.common.utils.DateUtil;
 import com.huimv.env.produce.entity.WarningInfo;
 import com.huimv.env.produce.mapper.WarningInfoMapper;
 import com.huimv.env.produce.service.WarningInfoService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.text.ParseException;
+import java.util.Arrays;
 import java.util.Map;
 
 /**
@@ -34,4 +39,70 @@ public class WarningInfoServiceImpl extends ServiceImpl<WarningInfoMapper, Warni
         queryWrapper.eq("add_date",dateUtil.getTodayDate());
         return warningInfoMapper.selectCount(queryWrapper);
     }
+
+    @Override
+    public Result add(Map<String, String> paramsMap) throws ParseException {
+        DateUtil dateUtil = new DateUtil();
+        WarningInfo warningInfo = new WarningInfo();
+        warningInfo.setTitle(paramsMap.get("title"));
+        warningInfo.setContent(paramsMap.get("content"));
+        warningInfo.setAddDate(dateUtil.getTodayDate());
+        warningInfo.setFarmCode(paramsMap.get("farmCode"));
+        int rows = warningInfoMapper.insert(warningInfo);
+        if(rows == 0){
+            return new Result(ResultCode.FAIL);
+        }else{
+            return new Result(ResultCode.SUCCESS);
+        }
+    }
+
+    @Override
+    public Result edit(Map<String, String> paramsMap) throws ParseException {
+        DateUtil dateUtil = new DateUtil();
+        WarningInfo warningInfo = new WarningInfo();
+        warningInfo.setId(Integer.parseInt(paramsMap.get("id")));
+        warningInfo.setTitle(paramsMap.get("title"));
+        warningInfo.setContent(paramsMap.get("content"));
+        warningInfo.setAddDate(dateUtil.getTodayDate());
+        warningInfo.setFarmCode(paramsMap.get("farmCode"));
+        int rows = warningInfoMapper.updateById(warningInfo);
+        if(rows == 0){
+            return new Result(ResultCode.FAIL);
+        }else{
+            return new Result(ResultCode.SUCCESS);
+        }
+    }
+
+    @Override
+    public Result remove(Map<String, String> paramsMap) {
+        String ids = paramsMap.get("ids");
+        String[] idArray = ids.split(",");
+        int rows = warningInfoMapper.deleteBatchIds(Arrays.asList(idArray));
+        if(rows == 0){
+            return new Result(ResultCode.FAIL);
+        }else{
+            return new Result(ResultCode.SUCCESS);
+        }
+    }
+
+    @Override
+    public Result list(Map<String, String> paramsMap) {
+        //pageNo
+        String pageNo = "1";
+        if (StringUtils.isBlank(paramsMap.get("pageNo") + "")){
+            pageNo = paramsMap.get("pageNo") + "";
+        }
+        //pageSize
+        String pageSize = "10";
+        if (StringUtils.isBlank(paramsMap.get("pageSize") + "")) {
+            pageSize = paramsMap.get("pageSize") + "";
+        }
+                //
+        String farmCode = paramsMap.get("farmCode");
+        QueryWrapper<WarningInfo> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("farm_code",farmCode);
+        queryWrapper.orderByDesc("add_date");
+        Page<WarningInfo> page = new Page<>(Integer.parseInt(pageNo), Integer.parseInt(pageSize));
+        return new Result(ResultCode.SUCCESS, warningInfoMapper.selectPage(page, queryWrapper));
+    }
 }

+ 2 - 2
huimv-env-platform/huimv-env-produce/src/main/resources/application.properties

@@ -1,5 +1,5 @@
-spring.profiles.active=dev
-#spring.profiles.active=prod
+#spring.profiles.active=dev
+spring.profiles.active=prod
 
 # mysql:/cache:
 device.online.access_mode=mysql