From cdc35c146d7054d58e273aec3035387f324d6ac3 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期日, 27 四月 2025 14:12:26 +0800
Subject: [PATCH] MyBatis拦截器测试修改

---
 pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/changeSome/ChSomeIntakeLossSv.java |  186 ++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 186 insertions(+), 0 deletions(-)

diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/changeSome/ChSomeIntakeLossSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/changeSome/ChSomeIntakeLossSv.java
new file mode 100644
index 0000000..97c5647
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/changeSome/ChSomeIntakeLossSv.java
@@ -0,0 +1,186 @@
+package com.dy.pipIrrTemp.changeSome;
+
+import com.dy.common.util.DateTime;
+import com.dy.pipIrrGlobal.daoTmp.ChangeMapper;
+import com.dy.pipIrrGlobal.pojoRm.RmIntakeAmountDay;
+import com.dy.pipIrrGlobal.pojoRm.RmLossDay;
+import com.dy.pipIrrGlobal.pojoSt.StIntakeAmountMonth;
+import com.dy.pipIrrGlobal.pojoSt.StIntakeAmountYear;
+import com.dy.pipIrrGlobal.pojoSt.StLossMonth;
+import com.dy.pipIrrGlobal.pojoSt.StLossYear;
+import com.dy.pipIrrGlobal.voSt.VoIntake;
+import com.dy.pipIrrTemp.util.StClientAmountConstant;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2024/12/24 8:47
+ * @Description
+ */
+@Slf4j
+@Service
+public class ChSomeIntakeLossSv {
+
+    private ChangeMapper dao;
+    @Autowired
+    private void setDao(ChangeMapper dao){
+        this.dao = dao;
+    }
+
+    ////////////////////////////////////////
+    //
+    // 鏈夊叧鏃ョ粺璁�
+    //
+    ///////////////////////////////////////
+    /**
+     * 璋冩暣鍙栨按鍙f棩婕忔崯閲忕粺璁�
+     * @throws Exception
+     */
+    public void chIntakeLossDay() throws Exception{
+        List<VoIntake> list = dao.selectAllPrIntakes() ;
+        if(list != null && list.size() > 0){
+            for(VoIntake vo : list){
+                List<RmLossDay> adList = dao.selectOneIntakeAllLossDay(vo.getIntakeId()) ;
+                if(adList != null && adList.size() > 0){
+                    //adList涓暟鎹互id鍗囧簭鎺掑垪
+                    for(RmLossDay ad : adList){
+                        if(ad.lossAmount != null && ad.lossAmount > StClientAmountConstant.IntakeLossDayFlag){
+                            this.doUpdateOneIntakeLossDay(ad.id, 0.0);
+                        }
+                    }
+                }
+            }
+        }
+    }
+
+    @Transactional
+    protected int doUpdateOneIntakeLossDay(Long id, Double loss){
+        return dao.updateOneIntakeLossDay(id, loss);
+    }
+
+
+
+    ////////////////////////////////////////
+    //
+    // 鏈夊叧鏈堢粺璁�
+    //
+    ///////////////////////////////////////
+
+    private static final int DealStartYear = 2024 ;
+    private static final int DealStartMonth = 8 ;
+
+    private static final String endDayOfMonth(int year, int month){
+        if(month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12){
+            return "31" ;
+        }else{
+            if(month == 2){
+                if(DateTime.isLeapYear(year)){
+                    return "29" ;
+                }else{
+                    return "28" ;
+                }
+            }else{
+                return "30" ;
+            }
+        }
+    }
+    /**
+     * 鍒犻櫎鎵�鏈夊彇姘村彛鏈堟紡鎹熼噺缁熻
+     * @throws Exception
+     */
+    @Transactional
+    public void deleteAllIntakeLossMonth(){
+        dao.deleteAllIntakeLossMonth();
+    }
+
+    /**
+     * 缁熻鍙栨按鍙f湀婕忔崯閲�
+     * @throws Exception
+     */
+    public void statisticsIntakeLossMonth() throws Exception{
+        int nowYear = Integer.parseInt(DateTime.yyyy()) ;
+        int nowMonth = Integer.parseInt(DateTime.MM()) ;
+        Date startDt ;
+        Date endDt ;
+        List<StLossMonth> list ;
+        for(int year = DealStartYear; year <= nowYear; year ++){
+            list = null ;
+            if(year < nowYear){
+                for(int month = 1 ; month <= 12 ; month ++){
+                    startDt = DateTime.dateFrom_yyyy_MM_dd(year + "-" + month + "-01") ;
+                    endDt = DateTime.dateFrom_yyyy_MM_dd(year + "-" + month + "-" + endDayOfMonth(year, month)) ;
+                    list = dao.statisticAllIntakeLossMonthFromLossDay(startDt, endDt) ;
+                    this.doStatisticsIntakeLossMonth(year, month, list) ;
+                }
+            }else{
+                for(int month = 1 ; month <= nowMonth ; month ++){
+                    startDt = DateTime.dateFrom_yyyy_MM_dd(year + "-" + month + "-01") ;
+                    endDt = DateTime.dateFrom_yyyy_MM_dd(year + "-" + month + "-" + endDayOfMonth(year, month)) ;
+                    list = dao.statisticAllIntakeLossMonthFromLossDay(startDt, endDt) ;
+                    this.doStatisticsIntakeLossMonth(year, month, list) ;
+                }
+            }
+        }
+    }
+    @Transactional
+    protected void doStatisticsIntakeLossMonth(int year, int month, List<StLossMonth> list) throws Exception{
+        if(list != null && list.size() > 0){
+            for(StLossMonth po : list){
+                po.year = year ;
+                po.month = month ;
+                dao.saveOneIntakeLossMonth(po) ;
+            }
+        }
+    }
+
+
+
+
+    ////////////////////////////////////////
+    //
+    // 鏈夊叧骞寸粺璁�
+    //
+    ///////////////////////////////////////
+    /**
+     * 鍒犻櫎鎵�鏈夊彇姘村彛骞存紡鎹熼噺缁熻
+     * @throws Exception
+     */
+    @Transactional
+    public void deleteAllIntakeLossYear(){
+        dao.deleteAllIntakeLossYear();
+    }
+
+    /**
+     * 缁熻鍙栨按鍙f湀婕忔崯閲�
+     * @throws Exception
+     */
+    public void statisticsIntakeLossYear() throws Exception{
+        int nowYear = Integer.parseInt(DateTime.yyyy()) ;
+        Date startDt ;
+        Date endDt ;
+        List<StLossYear> list ;
+        for(int year = DealStartYear; year <= nowYear; year ++){
+            list = null ;
+            startDt = DateTime.dateFrom_yyyy_MM_dd(year + "-01-01") ;
+            endDt = DateTime.dateFrom_yyyy_MM_dd(year + "-12-31") ;
+            list = dao.statisticAllIntakeLossYearFromLossDay(startDt, endDt) ;
+            this.doStatisticsIntakeLossYear(year, list) ;
+        }
+    }
+    @Transactional
+    protected void doStatisticsIntakeLossYear(int year, List<StLossYear> list) throws Exception{
+        if(list != null && list.size() > 0){
+            for(StLossYear po : list){
+                po.year = year ;
+                dao.saveOneIntakeLossYear(po) ;
+            }
+        }
+    }
+
+}

--
Gitblit v1.8.0