From d20d38e22b06559d758c568769017e2acf632583 Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期三, 23 四月 2025 14:06:48 +0800
Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV
---
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