| New file | 
 |  |  | 
 |  |  | package com.dy.pipIrrStatistics.stClient; | 
 |  |  |  | 
 |  |  | 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; | 
 |  |  | import com.dy.pipIrrGlobal.voSt.VoStClientAmountDay; | 
 |  |  | import com.dy.pipIrrGlobal.voSt.VoStClientAmountMonth; | 
 |  |  | import com.dy.pipIrrGlobal.voSt.VoStClientAmountYear; | 
 |  |  | import lombok.RequiredArgsConstructor; | 
 |  |  | import lombok.extern.slf4j.Slf4j; | 
 |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
 |  |  | import org.springframework.web.bind.annotation.GetMapping; | 
 |  |  | import org.springframework.web.bind.annotation.RequestMapping; | 
 |  |  | import org.springframework.web.bind.annotation.RestController; | 
 |  |  |  | 
 |  |  | import java.util.ArrayList; | 
 |  |  | import java.util.List; | 
 |  |  |  | 
 |  |  | /** | 
 |  |  |  * @Author: liurunyu | 
 |  |  |  * @Date: 2024/12/30 15:22 | 
 |  |  |  * @Description | 
 |  |  |  */ | 
 |  |  | @Slf4j | 
 |  |  | @RestController | 
 |  |  | @RequestMapping(path="stClient") | 
 |  |  | @RequiredArgsConstructor | 
 |  |  | public class StClientCtrl { | 
 |  |  |  | 
 |  |  |     private static final int startYear4YearStatistics = 2024 ; | 
 |  |  |  | 
 |  |  |     private StClientSv sv ; | 
 |  |  |  | 
 |  |  |     @Autowired | 
 |  |  |     private void setSv(StClientSv sv){ | 
 |  |  |         this.sv = sv ; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 查询指定年月农户各日用水量 | 
 |  |  |      * @param qo | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     @GetMapping(path = "/amountOfDay") | 
 |  |  |     @SsoAop() | 
 |  |  |     public BaseResponse<QueryResultVo<List<VoStClientAmountDay>>> amountOfDay(StClientQo qo) throws Exception { | 
 |  |  |         String yearMonth = qo.getYearMonth(); | 
 |  |  |         if(yearMonth == null || yearMonth.trim().equals("")) { | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("查询条件年月不能为空"); | 
 |  |  |         } | 
 |  |  |         int[] ymd = DateTime.yyyy_MM_ymdGroup(yearMonth) ; | 
 |  |  |         qo.year = ymd[0] ; | 
 |  |  |         qo.month = ymd[1] ; | 
 |  |  |         return BaseResponseUtils.buildSuccess(this.sv.selectStClientAmountDay(qo)); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 查询指定年农户各月用水量 | 
 |  |  |      * @param qo | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     @GetMapping(path = "/amountOfMonth") | 
 |  |  |     @SsoAop() | 
 |  |  |     public BaseResponse<QueryResultVo<List<VoStClientAmountMonth>>> amountOfMonth(StClientQo qo) throws Exception { | 
 |  |  |         if(qo.year == null) { | 
 |  |  |             return BaseResponseUtils.buildErrorMsg("查询条件年度不能为空"); | 
 |  |  |         } | 
 |  |  |         return BaseResponseUtils.buildSuccess(this.sv.selectStClientAmountMonth(qo)); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 查询指定年农户各年用水量 | 
 |  |  |      * @param qo | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     @GetMapping(path = "/amountOfYear") | 
 |  |  |     @SsoAop() | 
 |  |  |     public BaseResponse<QueryResultVo<List<VoStClientAmountYear>>> amountOfYear(StClientQo qo) throws Exception { | 
 |  |  |         List<Integer> yearGrp = new ArrayList<Integer>(); | 
 |  |  |         int nowYear = Integer.parseInt(DateTime.yyyy()) ; | 
 |  |  |         if(qo.year == null) { | 
 |  |  |             int startYear = nowYear - 4 ;//查5年的 | 
 |  |  |             if(startYear < startYear4YearStatistics){ | 
 |  |  |                 startYear = startYear4YearStatistics ; | 
 |  |  |             } | 
 |  |  |             for(int i = startYear; i <= nowYear; i++) { | 
 |  |  |                 yearGrp.add(i) ; | 
 |  |  |             } | 
 |  |  |         }else{ | 
 |  |  |             /* | 
 |  |  |             if(qo.year > nowYear){ | 
 |  |  |                 qo.year = nowYear; | 
 |  |  |             } | 
 |  |  |             if(qo.year < startYear4YearStatistics){ | 
 |  |  |                 qo.year = startYear4YearStatistics; | 
 |  |  |             } | 
 |  |  |              */ | 
 |  |  |             yearGrp.add(qo.year) ; | 
 |  |  |         } | 
 |  |  |         return BaseResponseUtils.buildSuccess(this.sv.selectStClientAmountYear(qo, yearGrp)); | 
 |  |  |     } | 
 |  |  | } |