From d95f6551e8214d69cd0fd511ec693641eb61ba16 Mon Sep 17 00:00:00 2001
From: zengh <123456>
Date: Mon, 01 Aug 2022 10:36:26 +0800
Subject: [PATCH] 1、大屏首页接口修复,解决double类型相加精度问题

---
 src/main/java/org/springblade/modules/recovery/controller/RecoveryController.java |   16 ++++++++++++++--
 1 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/src/main/java/org/springblade/modules/recovery/controller/RecoveryController.java b/src/main/java/org/springblade/modules/recovery/controller/RecoveryController.java
index 4d20f68..5163eec 100644
--- a/src/main/java/org/springblade/modules/recovery/controller/RecoveryController.java
+++ b/src/main/java/org/springblade/modules/recovery/controller/RecoveryController.java
@@ -102,6 +102,9 @@
 			//采收
 			record.setType("12");
 			record.setLandId(recovery.getLandId());
+			record.setDeptId(recovery.getDeptId());
+			record.setTenantId(recovery.getTenantId());
+			record.setStrainId(recovery.getStrainId());
 			record.setOperator(recovery.getOperator());
 			Strain strain = strainService.getById(recovery.getStrainId());
 			record.setContent("品种: " + strain.getStrainName() + ", 重量:" + recovery.getWeight());
@@ -109,10 +112,10 @@
 			farmingRecordService.save(record);
 
 			//库存
-			//先查询是否有该农产品的库存
+			//先查询是否有该农产品的库存(根据地块,农产品)
 			FarmProductStock stock = new FarmProductStock();
-			stock.setFarmPlantId(recovery.getFarmPlantId());
 			stock.setStrainId(recovery.getStrainId());
+			stock.setLandId(recovery.getLandId());
 			FarmProductStock stock1 = farmProductStockService.getOne(new QueryWrapper<>(stock));
 			if (null != stock1) {
 				//更新库存
@@ -121,6 +124,11 @@
 				double now = Double.parseDouble(recovery.getWeight());
 				double addNum = add(old, now);
 				stock1.setWeight(String.valueOf(addNum));
+
+				//总采收
+				double olds = Double.parseDouble(stock1.getRecovery());
+				double addNums = add(olds, now);
+				stock1.setRecovery(String.valueOf(addNums));
 				//更新
 				farmProductStockService.updateById(stock1);
 			} else {
@@ -132,7 +140,11 @@
 				productStock.setTime(recovery.getTime());
 				productStock.setStrainId(recovery.getStrainId());
 				productStock.setWeight(recovery.getWeight());
+				productStock.setRecovery(recovery.getWeight());
 				productStock.setFarmPlantId(recovery.getFarmPlantId());
+				productStock.setTenantId(recovery.getTenantId());
+				productStock.setDeptId(recovery.getDeptId());
+				productStock.setLandId(recovery.getLandId());
 				//新增操作
 				farmProductStockService.save(productStock);
 			}

--
Gitblit v1.9.3