pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoTmp/ChangeMapper.java
@@ -2,10 +2,13 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.dy.pipIrrGlobal.pojoRm.RmIntakeAmountDay; import com.dy.pipIrrGlobal.pojoSt.StIntakeAmountMonth; import com.dy.pipIrrGlobal.pojoSt.StIntakeAmountYear; import com.dy.pipIrrGlobal.voSt.VoIntake; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.util.Date; import java.util.List; /** @@ -37,4 +40,49 @@ */ int updateOneIntakeAmountDay(@Param("id")Long id, @Param("amount")Double amount); /** * å 餿æåæ°´å£çæç¨æ°´éç»è®¡ * @return å½±åå®ä½æ° */ int deleteAllIntakeAmountMonth(); /** * ç»è®¡ææåæ°´å£çæç¨æ°´é * @return å®ä½éå */ List<StIntakeAmountMonth> statisticAllIntakeAmountMonthFromAmountDay(@Param("startDt")Date startDt, @Param("endDt")Date endDt); /** * ä¿ååæ°´å£çæç¨æ°´éç»è®¡ * @return å½±åå®ä½æ° */ int saveOneIntakeAmountMonth(StIntakeAmountMonth pojo); /** * å 餿æåæ°´å£çå¹´ç¨æ°´éç»è®¡ * @return å½±åå®ä½æ° */ int deleteAllIntakeAmountYear(); /** * ç»è®¡ææåæ°´å£çå¹´ç¨æ°´é * @return å®ä½éå */ List<StIntakeAmountYear> statisticAllIntakeAmountYearFromAmountDay(@Param("startDt")Date startDt, @Param("endDt")Date endDt); /** * ä¿ååæ°´å£çæç¨æ°´éç»è®¡ * @return å½±åå®ä½æ° */ int saveOneIntakeAmountYear(StIntakeAmountYear pojo); } pipIrr-platform/pipIrr-global/src/main/resources/mapper/Temp4ChangeMapper.xml
@@ -28,4 +28,66 @@ set amount = #{amount, jdbcType=FLOAT} where id = #{id, jdbcType=BIGINT} </update> <delete id="deleteAllIntakeAmountMonth"> delete from st_intake_amount_month </delete> <!-- --> <select id="statisticAllIntakeAmountMonthFromAmountDay" resultType="com.dy.pipIrrGlobal.pojoSt.StIntakeAmountMonth"> select intake_id as intakeId , sum(amount) as amount from rm_intake_amount_day where dt <![CDATA[>=]]> #{startDt, jdbcType=DATE} and dt <![CDATA[<=]]> #{endDt, jdbcType=DATE} group by intake_id </select> <insert id="saveOneIntakeAmountMonth" parameterType="com.dy.pipIrrGlobal.pojoSt.StIntakeAmountMonth"> <!--@mbg.generated--> insert into st_intake_amount_month ( id, intake_id, year, month, amount ) values (#{id,jdbcType=BIGINT}, #{intakeId,jdbcType=BIGINT}, #{year,jdbcType=INTEGER}, #{month,jdbcType=INTEGER}, #{amount,jdbcType=FLOAT} ) </insert> <delete id="deleteAllIntakeAmountYear"> delete from st_intake_amount_year </delete> <!-- --> <select id="statisticAllIntakeAmountYearFromAmountDay" resultType="com.dy.pipIrrGlobal.pojoSt.StIntakeAmountYear"> select intake_id as intakeId , sum(amount) as amount from rm_intake_amount_day where dt <![CDATA[>=]]> #{startDt, jdbcType=DATE} and dt <![CDATA[<=]]> #{endDt, jdbcType=DATE} group by intake_id </select> <insert id="saveOneIntakeAmountYear" parameterType="com.dy.pipIrrGlobal.pojoSt.StIntakeAmountYear"> <!--@mbg.generated--> insert into st_intake_amount_year ( id, intake_id, year, amount ) values (#{id,jdbcType=BIGINT}, #{intakeId,jdbcType=BIGINT}, #{year,jdbcType=INTEGER}, #{amount,jdbcType=FLOAT} ) </insert> </mapper> pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/changeSome/ChSomeCtrl.java
@@ -37,4 +37,29 @@ this.intakeAmountSv.chIntakeAmountDay(); return BaseResponseUtils.buildSuccess(true); } /** * éæ°ç»è®¡åæ°´å£æåæ°´é * @return */ @GetMapping(path = "reStatisticsAllIntakeMonthAmount") @SsoAop() public BaseResponse<Boolean> reStatisticsAllIntakeMonthAmount() throws Exception{ this.intakeAmountSv.deleteAllIntakeAmountMonth(); this.intakeAmountSv.statisticsIntakeAmountMonth(); return BaseResponseUtils.buildSuccess(true); } /** * éæ°ç»è®¡åæ°´å£æåæ°´é * @return */ @GetMapping(path = "reStatisticsAllIntakeYearAmount") @SsoAop() public BaseResponse<Boolean> reStatisticsAllIntakeYearAmount() throws Exception{ this.intakeAmountSv.deleteAllIntakeAmountYear(); this.intakeAmountSv.statisticsIntakeAmountYear(); return BaseResponseUtils.buildSuccess(true); } } pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/changeSome/ChSomeIntakeAmountSv.java
@@ -3,13 +3,15 @@ import com.dy.common.util.DateTime; import com.dy.pipIrrGlobal.daoTmp.ChangeMapper; import com.dy.pipIrrGlobal.pojoRm.RmIntakeAmountDay; import com.dy.pipIrrGlobal.pojoSt.StIntakeAmountMonth; import com.dy.pipIrrGlobal.pojoSt.StIntakeAmountYear; import com.dy.pipIrrGlobal.voSt.VoIntake; 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.ArrayList; import java.util.Date; import java.util.List; /** @@ -32,6 +34,17 @@ this.dao = dao; } //////////////////////////////////////// // // æå ³æ¥ç»è®¡ // /////////////////////////////////////// /** * è°æ´åæ°´å£æ¥åæ°´éç»è®¡ * @throws Exception */ public void chIntakeAmountDay() throws Exception{ RmIntakeAmountDay lastAd = null ; List<VoIntake> list = dao.selectAllPrIntakes() ; @@ -120,4 +133,118 @@ int doUpdateOneIntakeAmountDay(Long id, Double amount){ return dao.updateOneIntakeAmountDay(id, amount); } //////////////////////////////////////// // // æå ³æç»è®¡ // /////////////////////////////////////// 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 */ public void deleteAllIntakeAmountMonth(){ dao.deleteAllIntakeAmountMonth(); } /** * ç»è®¡åæ°´å£æåæ°´é * @throws Exception */ public void statisticsIntakeAmountMonth() throws Exception{ int nowYear = Integer.parseInt(DateTime.yyyy()) ; int nowMonth = Integer.parseInt(DateTime.mm()) ; Date startDt ; Date endDt ; List<StIntakeAmountMonth> list ; for(int year = DealStartYear; year <= nowYear; year ++){ list = null ; if(year < nowYear){ for(int month = 1 ; month <= 12 ; month ++){ startDt = DateTime.dateFrom_MM_dd(year + "-" + month + "-01") ; endDt = DateTime.dateFrom_MM_dd(year + "-" + month + endDayOfMonth(year, month)) ; list = dao.statisticAllIntakeAmountMonthFromAmountDay(startDt, endDt) ; this.doStatisticsIntakeAmountMonth(year, month, list) ; } }else{ for(int month = 1 ; month <= nowMonth ; month ++){ startDt = DateTime.dateFrom_MM_dd(year + "-" + month + "-01") ; endDt = DateTime.dateFrom_MM_dd(year + "-" + month + endDayOfMonth(year, month)) ; list = dao.statisticAllIntakeAmountMonthFromAmountDay(startDt, endDt) ; this.doStatisticsIntakeAmountMonth(year, month, list) ; } } } } private void doStatisticsIntakeAmountMonth(int year, int month, List<StIntakeAmountMonth> list) throws Exception{ if(list != null && list.size() > 0){ for(StIntakeAmountMonth po : list){ po.year = year ; po.month = month ; dao.saveOneIntakeAmountMonth(po) ; } } } //////////////////////////////////////// // // æå ³å¹´ç»è®¡ // /////////////////////////////////////// /** * å 餿æåæ°´å£å¹´åæ°´éç»è®¡ * @throws Exception */ public void deleteAllIntakeAmountYear(){ dao.deleteAllIntakeAmountYear(); } /** * ç»è®¡åæ°´å£æåæ°´é * @throws Exception */ public void statisticsIntakeAmountYear() throws Exception{ int nowYear = Integer.parseInt(DateTime.yyyy()) ; Date startDt ; Date endDt ; List<StIntakeAmountYear> list ; for(int year = DealStartYear; year <= nowYear; year ++){ list = null ; startDt = DateTime.dateFrom_MM_dd(year + "-01-01") ; endDt = DateTime.dateFrom_MM_dd(year + "-12-31") ; list = dao.statisticAllIntakeAmountYearFromAmountDay(startDt, endDt) ; this.doStatisticsIntakeAmountYear(year, list) ; } } private void doStatisticsIntakeAmountYear(int year, List<StIntakeAmountYear> list) throws Exception{ if(list != null && list.size() > 0){ for(StIntakeAmountYear po : list){ po.year = year ; dao.saveOneIntakeAmountYear(po) ; } } } } pipIrr-platform/pipIrr-web/pipIrr-web-temp/˵Ã÷.txt
@@ -10,4 +10,8 @@ /temp/delSome/deleteSomeStatisticClientAmount 4ãä¿®æ¹ä¸äºåæ°´å£æ¥åæ°´éç»è®¡---å RTUä¸å¤©å æ´ç¹æ¥ä¸ç´¯è®¡æµéé´æåºç°0å¼ï¼ä¸¤æ¬¡ä¸æ¥ç´¯è®¡æµéå·®å¼ä¼äº§çå¤§å¼ /temp/chSome/changeSomeIntakeDayAmount /temp/chSome/changeSomeIntakeDayAmount 5ãéæ°ç»è®¡åæ°´å£æåæ°´é /temp/chSome/reStatisticsAllIntakeMonthAmount 6ãéæ°ç»è®¡åæ°´å£æåæ°´é /temp/chSome/reStatisticsAllIntakeYearAmount