From e3d71e6211ada723d38dbb73479c458465391103 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期二, 19 八月 2025 08:56:41 +0800
Subject: [PATCH] 1、程序化哈格里夫斯(Hargreaves)公式; 2、实现每日定时任务,计算作物蒸腾量,并存储数据库

---
 pipIrr-platform/pipIrr-web/pipIrr-web-model/src/main/java/com/dy/pipIrrModel/crops/CropsCtrl.java |   26 +++++++++++++++++++-------
 1 files changed, 19 insertions(+), 7 deletions(-)

diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-model/src/main/java/com/dy/pipIrrModel/crops/CropsCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-model/src/main/java/com/dy/pipIrrModel/crops/CropsCtrl.java
index a5d2f82..4a7245d 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-model/src/main/java/com/dy/pipIrrModel/crops/CropsCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-model/src/main/java/com/dy/pipIrrModel/crops/CropsCtrl.java
@@ -1,6 +1,7 @@
 package com.dy.pipIrrModel.crops;
 
 import com.dy.common.aop.SsoAop;
+import com.dy.common.util.DateTime;
 import com.dy.common.webUtil.BaseResponse;
 import com.dy.common.webUtil.BaseResponseUtils;
 import com.dy.common.webUtil.QueryResultVo;
@@ -127,11 +128,12 @@
         if(bindingResult != null && bindingResult.hasErrors()){
             return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
         }
-        po.id = null ;
-        po.createDt = new Date();
-        po.deleted = 0 ;
-        int count;
+        int count = 0 ;
         try {
+            po.id = null ;
+            po.createDt = new Date();
+            po.deleted = 0 ;
+            this.setLifeEnd(po);
             count = this.sv.save(po);
         } catch (Exception e) {
             log.error("淇濆瓨浣滅墿寮傚父", e);
@@ -166,10 +168,11 @@
         if(po.id == null){
             return BaseResponseUtils.buildFail("鏃犳暟鎹疄浣揑D") ;
         }
-        po.createDt = null ;
-        po.deleted = null ;
-        int count;
+        int count = 0;
         try {
+            po.createDt = null ;
+            po.deleted = null ;
+            this.setLifeEnd(po);
             count = this.sv.update(po);
         } catch (Exception e) {
             log.error("淇濆瓨浣滅墿寮傚父", e);
@@ -216,4 +219,13 @@
             return BaseResponseUtils.buildSuccess(true) ;
         }
     }
+
+    private void setLifeEnd(MdCrops po) throws Exception{
+        if(po.life4End != null && po.startDt != null && !po.startDt.trim().equals("")){
+            String nowYear = DateTime.yyyy() ;
+            String startDt = nowYear + "-" + po.startDt ;
+            String endDt = DateTime.nextXDay_yyyy_MM_dd(startDt, po.life4End) ;
+            po.endDt = endDt.substring(5, 10) ;
+        }
+    }
 }

--
Gitblit v1.8.0