| New file | 
|  |  |  | 
|---|
|  |  |  | package com.dy.pipIrrStatistics.statistics; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.daoRm.RmIntakeAmountDayMapper; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.daoSt.StIntakeAmountMonthMapper; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.daoSt.StIntakeAmountYearMapper; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.pojoSt.StIntakeAmountMonth; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.pojoSt.StIntakeAmountYear; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voSt.VoIntakeAmountStatistics; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
|---|
|  |  |  | import org.springframework.stereotype.Component; | 
|---|
|  |  |  | import org.springframework.transaction.annotation.Transactional; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * @Author: liurunyu | 
|---|
|  |  |  | * @Date: 2024/7/24 16:28 | 
|---|
|  |  |  | * @Description | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Component | 
|---|
|  |  |  | public class StIntakeAmountSv { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | protected RmIntakeAmountDayMapper rmIntakeAmountDayDao; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | protected StIntakeAmountMonthMapper stIntakeAmountMonthDao ; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | protected StIntakeAmountYearMapper stIntakeAmountYearDao ; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 月统计---取水口用水量 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Transactional | 
|---|
|  |  |  | protected void statisticsMonth(Integer statisticsYear, Integer statisticsMonth, Long statisticsStartId, Long statisticsEndId){ | 
|---|
|  |  |  | List<VoIntakeAmountStatistics> list = rmIntakeAmountDayDao.statisticsByIntake(statisticsStartId, statisticsEndId) ; | 
|---|
|  |  |  | if(list != null && list.size() > 0){ | 
|---|
|  |  |  | for(VoIntakeAmountStatistics vo : list){ | 
|---|
|  |  |  | List<StIntakeAmountMonth> listOfMonth = this.stIntakeAmountMonthDao.selectByIntakeIdAndYearAndMonth(vo.intakeId, statisticsYear, statisticsMonth) ; | 
|---|
|  |  |  | StIntakeAmountMonth po = null ; | 
|---|
|  |  |  | if(listOfMonth != null && listOfMonth.size() > 0) { | 
|---|
|  |  |  | //程序逻辑控制上,集合中只有一个对象 | 
|---|
|  |  |  | po = listOfMonth.get(0); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(po == null){ | 
|---|
|  |  |  | po = new StIntakeAmountMonth() ; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | po.intakeId = vo.intakeId ; | 
|---|
|  |  |  | po.year = statisticsYear ; | 
|---|
|  |  |  | po.month = statisticsMonth ; | 
|---|
|  |  |  | po.amount = vo.amount; | 
|---|
|  |  |  | if(po.id == null) { | 
|---|
|  |  |  | stIntakeAmountMonthDao.insert(po); | 
|---|
|  |  |  | }else{ | 
|---|
|  |  |  | stIntakeAmountMonthDao.updateByPrimaryKey(po) ; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 年统计---取水口用水量 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Transactional | 
|---|
|  |  |  | protected void statisticsYear(Integer statisticsYear){ | 
|---|
|  |  |  | List<VoIntakeAmountStatistics> list = stIntakeAmountMonthDao.statisticsByIntake(statisticsYear) ; | 
|---|
|  |  |  | if(list != null && list.size() > 0){ | 
|---|
|  |  |  | for(VoIntakeAmountStatistics vo : list){ | 
|---|
|  |  |  | List<StIntakeAmountYear> listOfYear = stIntakeAmountYearDao.selectByIntakeIdAndYear(vo.intakeId, statisticsYear) ; | 
|---|
|  |  |  | StIntakeAmountYear po = null ; | 
|---|
|  |  |  | if(listOfYear != null && listOfYear.size() > 0) { | 
|---|
|  |  |  | //程序逻辑控制上,集合中只有一个对象 | 
|---|
|  |  |  | po = listOfYear.get(0); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(po == null){ | 
|---|
|  |  |  | po = new StIntakeAmountYear() ; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | po.intakeId = vo.intakeId ; | 
|---|
|  |  |  | po.year = statisticsYear ; | 
|---|
|  |  |  | po.amount = vo.amount; | 
|---|
|  |  |  | if(po.id == null){ | 
|---|
|  |  |  | stIntakeAmountYearDao.insert(po) ; | 
|---|
|  |  |  | }else{ | 
|---|
|  |  |  | stIntakeAmountYearDao.updateByPrimaryKey(po) ; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|