From dd2259bcc1cfe4e31f297af3df1e94d2b95d7476 Mon Sep 17 00:00:00 2001 From: wuzeyu <1223318623@qq.com> Date: 星期五, 13 十二月 2024 16:51:23 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mybatis/PrintSqlHelp.java | 123 ++ pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mybatis/PrintSqlInterceptor.java | 63 + pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStClientAmountYear.java | 5 pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/loss/LossQo.java | 49 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mybatis/MyBatisConfig.java | 6 pipIrr-platform/pipIrr-global/src/main/resources/application-global(test测试系统).yml | 3 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossAmountYear.java | 3 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mybatis/PrintExceptionSqlInterceptor.java | 160 -- pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStClientAmountMonth.java | 4 pipIrr-platform/pipIrr-global/src/main/resources/application-global(sp沙盘系统).yml | 3 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/DateTime.java | 11 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossAmountDay.java | 7 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmIntakeAmountDayMapper.java | 32 pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmIntakeAmountDayMapper.xml | 447 +++++++ pipIrr-platform/pipIrr-global/src/main/resources/application-global(ym元谋系统).yml | 3 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmLossDayMapper.java | 32 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStIntakeAmountYear.java | 3 pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/loss/LossCtrl.java | 73 + pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/loss/LossSv.java | 188 +++ pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoMonthAmount.java | 41 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStIntakeAmountMonth.java | 2 pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intaker/IntakerSv.java | 188 +++ pipIrr-platform/pipIrr-global/src/main/resources/mapper/StIntakeAmountMonthMapper.xml | 187 +++ pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoDayIntakeAmount.java | 83 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSt/StLossMonthMapper.java | 30 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoDayLoss.java | 79 pipIrr-platform/pipIrr-global/src/main/resources/mapper/StLossMonthMapper.xml | 185 +++ pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intaker/IntakerQo.java | 48 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStClientAmountDay.java | 9 pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/delSome/DelSomeIntakeAmountSv.java | 127 ++ pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSt/StIntakeAmountMonthMapper.java | 32 pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/MonitorSv.java | 2 /dev/null | 63 - pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossAmountMonth.java | 2 pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intaker/IntakerCtrl.java | 72 + pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/delSome/DelSomeClientAmountSv.java | 127 ++ pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmLossDayMapper.xml | 480 ++++++++ pipIrr-platform/pipIrr-global/src/main/resources/mapper/Temp4DeleteMapper.xml | 148 ++ pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml | 5 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoTmp/DeleteMapper.java | 86 + pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/delSome/DelSomeCtrl.java | 50 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStIntakeAmountDay.java | 7 pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/delSome/DelSomeLossAmountSv.java | 125 ++ 43 files changed, 3,064 insertions(+), 329 deletions(-) diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mybatis/MyBatisConfig.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mybatis/MyBatisConfig.java index fed35d1..60eef8c 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mybatis/MyBatisConfig.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mybatis/MyBatisConfig.java @@ -4,6 +4,7 @@ import jakarta.annotation.PostConstruct; import org.apache.ibatis.session.SqlSessionFactory; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @@ -15,6 +16,8 @@ @Autowired private List<SqlSessionFactory> sqlSessionFactoryList; + @Value("${mybatis-plus.configuration.print-sql}") + private boolean printSql; /** * 涓や釜鎷︽埅鍣紝鑷姩鐢熸垚ID锛屽紓甯告椂杈撳嚭SQL */ @@ -23,6 +26,9 @@ for (SqlSessionFactory sqlSessionFactory : sqlSessionFactoryList) { sqlSessionFactory.getConfiguration().addInterceptor(new AutoGenerateIdInterceptor()); sqlSessionFactory.getConfiguration().addInterceptor(new PrintExceptionSqlInterceptor()); + if (printSql) { + sqlSessionFactory.getConfiguration().addInterceptor(new PrintSqlInterceptor()); + } } } diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mybatis/PrintExceptionSqlInterceptor.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mybatis/PrintExceptionSqlInterceptor.java index 96dc6f3..9ffada1 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mybatis/PrintExceptionSqlInterceptor.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mybatis/PrintExceptionSqlInterceptor.java @@ -1,27 +1,20 @@ package com.dy.common.mybatis; import java.lang.reflect.InvocationTargetException; -import java.text.DateFormat; -import java.util.Date; -import java.util.List; -import java.util.Locale; import java.util.Properties; import lombok.extern.slf4j.Slf4j; import org.apache.ibatis.executor.Executor; import org.apache.ibatis.mapping.BoundSql; import org.apache.ibatis.mapping.MappedStatement; -import org.apache.ibatis.mapping.ParameterMapping; import org.apache.ibatis.plugin.Interceptor; import org.apache.ibatis.plugin.Intercepts; import org.apache.ibatis.plugin.Invocation; import org.apache.ibatis.plugin.Plugin; import org.apache.ibatis.plugin.Signature; -import org.apache.ibatis.reflection.MetaObject; import org.apache.ibatis.session.Configuration; import org.apache.ibatis.session.ResultHandler; import org.apache.ibatis.session.RowBounds; -import org.apache.ibatis.type.TypeHandlerRegistry; /** * 鎷︽埅鎵цSQL鍙戠敓寮傚父鐨勫満鏅紝骞跺皢鎵ц閿欒锛屾墽琛孲QL鍜屽弬鏁版墦鍗板嚭鏉� @@ -53,33 +46,36 @@ @Override public Object intercept(Invocation invocation) throws Throwable { // 鑾峰彇鎵ц鏂规硶鐨凪appedStatement鍙傛暟 - MappedStatement mappedStatement = (MappedStatement) invocation.getArgs()[0]; - Object parameter = null; - if (invocation.getArgs().length > 1) { - parameter = invocation.getArgs()[1]; - } - String sqlId = mappedStatement.getId(); - BoundSql boundSql = mappedStatement.getBoundSql(parameter); - Configuration configuration = mappedStatement.getConfiguration(); - Object response; - try { - response = invocation.proceed(); - } catch (Exception e) { - // 杈撳嚭SQL寮傚父淇℃伅 - log.error("SQL ErrorException:", e); - log.info("SQL Parameters: {}", boundSql.getParameterObject()); - log.info("Execute SqlId: {}", sqlId); - log.info("Completely Execute SQL: {}", getFullSql(configuration, boundSql)); - // 鏍规嵁婧愬紓甯哥被鍨嬭繘琛岃繑鍥� - if (e instanceof InvocationTargetException) { - throw new InvocationTargetException(e); - } else if (e instanceof IllegalAccessException) { - throw new IllegalAccessException(e.getMessage()); - } else { - throw new RuntimeException(e); + Object[] args = invocation.getArgs(); + if(args != null && args.length > 1){ + MappedStatement mappedStatement = (MappedStatement) args[0]; + Object parameter = args[1]; + + String sqlId = mappedStatement.getId(); + BoundSql boundSql = mappedStatement.getBoundSql(parameter); + Configuration configuration = mappedStatement.getConfiguration(); + Object response; + try { + response = invocation.proceed(); + } catch (Exception e) { + // 杈撳嚭SQL寮傚父淇℃伅 + log.error("SQL ErrorException:", e); + log.error("SQL Id: {}", sqlId); + log.error("SQL Parameters: {}", boundSql.getParameterObject()); + log.error("SQL: {}", PrintSqlHelp.getFullSql(configuration, boundSql)); + // 鏍规嵁婧愬紓甯哥被鍨嬭繘琛岃繑鍥� + if (e instanceof InvocationTargetException) { + throw new InvocationTargetException(e); + } else if (e instanceof IllegalAccessException) { + throw new IllegalAccessException(e.getMessage()); + } else { + throw new RuntimeException(e); + } } + return response; + }else{ + return invocation.proceed(); } - return response; } /** @@ -106,105 +102,5 @@ public void setProperties(Properties properties) { } - - /** - * 杞箟姝e垯鐗规畩瀛楃 锛�$()*+.[]?\^{} - * \\闇�瑕佺涓�涓浛鎹紝鍚﹀垯replace鏂规硶鏇挎崲鏃朵細鏈夐�昏緫bug - */ - private static String makeQueryStringAllRegExp(String str) { - if (str != null && !"".equals(str)) { - return str.replace("\\", "\\\\") - .replace("*", "\\*") - .replace("+", "\\+") - .replace("|", "\\|") - .replace("{", "\\{") - .replace("}", "\\}") - .replace("(", "\\(") - .replace(")", "\\)") - .replace("^", "\\^") - .replace("$", "\\$") - .replace("[", "\\[") - .replace("]", "\\]") - .replace("?", "\\?") - .replace(",", "\\,") - .replace(".", "\\.") - .replace("&", "\\&"); - } - return str; - } - - /** - * 鑾峰彇鍙傛暟瀵瑰簲鐨剆tring鍊� - * - * @param obj 鍙傛暟瀵瑰簲鐨勫�� - * @return string - */ - private static String getParameterValue(Object obj) { - String value; - if (obj instanceof String) { - value = "'" + obj + "'"; - } else if (obj instanceof Date) { - DateFormat formatter = - DateFormat.getDateTimeInstance(DateFormat.DEFAULT, DateFormat.DEFAULT, Locale.CHINA); - value = "'" + formatter.format(obj) + "'"; - } else { - if (obj != null) { - value = obj.toString(); - } else { - value = ""; - } - } - // 瀵圭壒娈婂瓧绗﹁繘琛岃浆涔夛紝鏂逛究涔嬪悗澶勭悊鏇挎崲 - return value != null ? makeQueryStringAllRegExp(value) : ""; - } - - /** - * 鑾峰彇瀹屾暣鐨勬墽琛孲QL - */ - public static String getFullSql(Configuration configuration, BoundSql boundSql) { - try { - return parseAndExtractFullSql(configuration, boundSql); - } catch (Exception e) { - // 濡傛灉瑙f瀽澶辫触杩斿洖鍘熷SQL - return boundSql.getSql(); - } - } - - /** - * 缁勮瀹屾暣鐨剆ql璇彞骞舵妸瀵瑰簲鐨勫弬鏁伴兘浠e叆鍒皊ql璇彞閲岄潰 - * - * @param configuration Configuration - * @param boundSql BoundSql - * @return sql瀹屾暣璇彞 - */ - private static String parseAndExtractFullSql(Configuration configuration, BoundSql boundSql) { - // 鑾峰彇mapper閲岄潰鏂规硶涓婄殑鍙傛暟 - Object sqlParameter = boundSql.getParameterObject(); - // sql璇彞閲岄潰闇�瑕佺殑鍙傛暟 - List<ParameterMapping> parameterMappings = boundSql.getParameterMappings(); - // sql鍘熷璇彞(?杩樻病鏈夋浛鎹㈡垚鎴戜滑鍏蜂綋鐨勫弬鏁�) - String sql = boundSql.getSql().replaceAll("[\\s]+", " "); - if (!parameterMappings.isEmpty() && sqlParameter != null) { - // sql璇彞閲岄潰鐨�?鏇挎崲鎴愮湡瀹炵殑鍙傛暟 - TypeHandlerRegistry typeHandlerRegistry = configuration.getTypeHandlerRegistry(); - if (typeHandlerRegistry.hasTypeHandler(sqlParameter.getClass())) { - sql = sql.replaceFirst("\\?", getParameterValue(sqlParameter)); - } else { - MetaObject metaObject = configuration.newMetaObject(sqlParameter); - for (ParameterMapping parameterMapping : parameterMappings) { - // 鎸夐『搴忔妸?鏇挎崲鎴愬搴旂殑鍊� - String propertyName = parameterMapping.getProperty(); - if (metaObject.hasGetter(propertyName)) { - Object obj = metaObject.getValue(propertyName); - sql = sql.replaceFirst("\\?", getParameterValue(obj)); - } else if (boundSql.hasAdditionalParameter(propertyName)) { - Object obj = boundSql.getAdditionalParameter(propertyName); - sql = sql.replaceFirst("\\?", getParameterValue(obj)); - } - } - } - } - return sql; - } } diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mybatis/PrintSqlHelp.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mybatis/PrintSqlHelp.java new file mode 100644 index 0000000..b25921d --- /dev/null +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mybatis/PrintSqlHelp.java @@ -0,0 +1,123 @@ +package com.dy.common.mybatis; + +import org.apache.ibatis.mapping.BoundSql; +import org.apache.ibatis.mapping.ParameterMapping; +import org.apache.ibatis.reflection.MetaObject; +import org.apache.ibatis.session.Configuration; +import org.apache.ibatis.type.TypeHandlerRegistry; + +import java.text.DateFormat; +import java.util.Date; +import java.util.List; +import java.util.Locale; + +/** + * @Author: liurunyu + * @Date: 2024/12/13 10:39 + * @Description + */ +public class PrintSqlHelp { + + /** + * 鑾峰彇瀹屾暣鐨勬墽琛孲QL + */ + public static String getFullSql(Configuration configuration, BoundSql boundSql) { + try { + return parseAndExtractFullSql(configuration, boundSql); + } catch (Exception e) { + // 濡傛灉瑙f瀽澶辫触杩斿洖鍘熷SQL + return boundSql.getSql(); + } + } + + /** + * 缁勮瀹屾暣鐨剆ql璇彞骞舵妸瀵瑰簲鐨勫弬鏁伴兘浠e叆鍒皊ql璇彞閲岄潰 + * + * @param configuration Configuration + * @param boundSql BoundSql + * @return sql瀹屾暣璇彞 + */ + private static String parseAndExtractFullSql(Configuration configuration, BoundSql boundSql) { + // 鑾峰彇mapper閲岄潰鏂规硶涓婄殑鍙傛暟 + Object sqlParameter = boundSql.getParameterObject(); + // sql璇彞閲岄潰闇�瑕佺殑鍙傛暟 + List<ParameterMapping> parameterMappings = boundSql.getParameterMappings(); + // sql鍘熷璇彞(?杩樻病鏈夋浛鎹㈡垚鎴戜滑鍏蜂綋鐨勫弬鏁�) + String sql = boundSql.getSql().replaceAll("[\\s]+", " "); + if (!parameterMappings.isEmpty() && sqlParameter != null) { + // sql璇彞閲岄潰鐨�?鏇挎崲鎴愮湡瀹炵殑鍙傛暟 + TypeHandlerRegistry typeHandlerRegistry = configuration.getTypeHandlerRegistry(); + if (typeHandlerRegistry.hasTypeHandler(sqlParameter.getClass())) { + sql = sql.replaceFirst("\\?", getParameterValue(sqlParameter)); + } else { + MetaObject metaObject = configuration.newMetaObject(sqlParameter); + for (ParameterMapping parameterMapping : parameterMappings) { + // 鎸夐『搴忔妸?鏇挎崲鎴愬搴旂殑鍊� + String propertyName = parameterMapping.getProperty(); + if (metaObject.hasGetter(propertyName)) { + Object obj = metaObject.getValue(propertyName); + sql = sql.replaceFirst("\\?", getParameterValue(obj)); + } else if (boundSql.hasAdditionalParameter(propertyName)) { + Object obj = boundSql.getAdditionalParameter(propertyName); + sql = sql.replaceFirst("\\?", getParameterValue(obj)); + } + } + } + } + return sql; + } + + + /** + * 鑾峰彇鍙傛暟瀵瑰簲鐨剆tring鍊� + * + * @param obj 鍙傛暟瀵瑰簲鐨勫�� + * @return string + */ + private static String getParameterValue(Object obj) { + String value; + if (obj instanceof String) { + value = "'" + obj + "'"; + } else if (obj instanceof Date) { + DateFormat formatter = + DateFormat.getDateTimeInstance(DateFormat.DEFAULT, DateFormat.DEFAULT, Locale.CHINA); + value = "'" + formatter.format(obj) + "'"; + } else { + if (obj != null) { + value = obj.toString(); + } else { + value = ""; + } + } + // 瀵圭壒娈婂瓧绗﹁繘琛岃浆涔夛紝鏂逛究涔嬪悗澶勭悊鏇挎崲 + return value != null ? makeQueryStringAllRegExp(value) : ""; + } + + + + /** + * 杞箟姝e垯鐗规畩瀛楃 锛�$()*+.[]?\^{} + * \\闇�瑕佺涓�涓浛鎹紝鍚﹀垯replace鏂规硶鏇挎崲鏃朵細鏈夐�昏緫bug + */ + private static String makeQueryStringAllRegExp(String str) { + if (str != null && !"".equals(str)) { + return str.replace("\\", "\\\\") + .replace("*", "\\*") + .replace("+", "\\+") + .replace("|", "\\|") + .replace("{", "\\{") + .replace("}", "\\}") + .replace("(", "\\(") + .replace(")", "\\)") + .replace("^", "\\^") + .replace("$", "\\$") + .replace("[", "\\[") + .replace("]", "\\]") + .replace("?", "\\?") + .replace(",", "\\,") + .replace(".", "\\.") + .replace("&", "\\&"); + } + return str; + } +} diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mybatis/PrintSqlInterceptor.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mybatis/PrintSqlInterceptor.java new file mode 100644 index 0000000..e13e1eb --- /dev/null +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mybatis/PrintSqlInterceptor.java @@ -0,0 +1,63 @@ +package com.dy.common.mybatis; + +import lombok.extern.slf4j.Slf4j; +import org.apache.ibatis.executor.Executor; +import org.apache.ibatis.mapping.BoundSql; +import org.apache.ibatis.mapping.MappedStatement; +import org.apache.ibatis.plugin.Interceptor; +import org.apache.ibatis.plugin.Intercepts; +import org.apache.ibatis.plugin.Invocation; +import org.apache.ibatis.plugin.Signature; +import org.apache.ibatis.session.Configuration; +import org.apache.ibatis.session.ResultHandler; +import org.apache.ibatis.session.RowBounds; + +/** + * @Author: liurunyu + * @Date: 2024/12/13 9:53 + * @Description + */ +/** + * 鎷︽埅鎵цSQL鎵ц鍦烘櫙锛屽苟灏哠QL鎵撳嵃鍑烘潵 + * 鎷︽埅Executor閲岄潰鐨剄uery鍜寀pdate鏂规硶 + */ +@Intercepts({ + @Signature( + method = "query", + type = Executor.class, + args = { + MappedStatement.class, + Object.class, + RowBounds.class, + ResultHandler.class + } + ), + @Signature( + type = Executor.class, + method = "update", + args = { + MappedStatement.class, + Object.class + } + ) +}) +@Slf4j +public class PrintSqlInterceptor implements Interceptor { + @Override + public Object intercept(Invocation invocation) throws Throwable { + Object[] args = invocation.getArgs(); + + if (args != null && args.length > 1) { + MappedStatement mappedStatement = (MappedStatement) args[0]; + Object parameter = args[1]; + + String sqlId = mappedStatement.getId(); + BoundSql boundSql = mappedStatement.getBoundSql(parameter); + Configuration configuration = mappedStatement.getConfiguration(); + log.info("\nSQL Id: " + sqlId + "\nSQL Parameters: " + boundSql.getParameterObject() + "\nSQL: " + PrintSqlHelp.getFullSql(configuration, boundSql) + "\n"); + } + + return invocation.proceed(); + } + +} \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/DateTime.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/DateTime.java index 9a33cc5..76f4ac2 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/DateTime.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/DateTime.java @@ -501,6 +501,17 @@ ////////////////////////////////////////////////////////////////////////// /** + * 瀛楃涓插瀷鏃ユ湡(2024-12)杞垚骞存湀鏃ユ暟缁� + * @param yyyy_MM 骞存湀鏃� + * @return 骞存湀鏃ユ暟缁� + */ + public static int[] yyyy_MM_ymdGroup(String yyyy_MM){ + int y = Integer.parseInt(yyyy_MM.substring(0 , 4)) ; + int m = Integer.parseInt(yyyy_MM.substring(5 , 7)) ; + return new int[]{y,m} ; + } + + /** * 瀛楃涓插瀷鏃ユ湡(2009-09-10)杞垚骞存湀鏃ユ暟缁� * @param yyyy_MM_DD 骞存湀鏃� * @return 骞存湀鏃ユ暟缁� diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmIntakeAmountDayMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmIntakeAmountDayMapper.java index a934457..a725519 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmIntakeAmountDayMapper.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmIntakeAmountDayMapper.java @@ -4,6 +4,7 @@ import com.dy.pipIrrGlobal.pojoRm.RmIntakeAmountDay; import com.dy.pipIrrGlobal.voRm.VoIntakeAmountDay; import com.dy.pipIrrGlobal.voSt.VoDayIntakeAmount; +import com.dy.pipIrrGlobal.voSt.VoDayLoss; import com.dy.pipIrrGlobal.voSt.VoIntakeAmountStatistics; import com.dy.pipIrrGlobal.voSt.VoMonthAmount; import org.apache.ibatis.annotations.Mapper; @@ -119,4 +120,35 @@ * @return */ List<VoMonthAmount> getMonthIntakeAmount(Map<?, ?> params); + + //////////////////////////////////////////////// + // 缁熻鏌ヨ + /////////////////////////////////////////////// + + /** + * 涓烘煡璇㈢粺璁″彇姘村彛鏃ユ紡鎹熼噺锛岀粺璁″彇姘村彛鏁伴噺 + * @param intakeN + * @return + */ + Long selectIntakeCount4AmountDay(@Param("intakeNum")String intakeN) ; + + /** + * 涓烘煡璇㈢粺璁″彇姘村彛鏃ユ紡鎹熼噺锛屾煡璇竴椤靛彇姘村彛ID + * @param params + * @return + */ + List<VoDayIntakeAmount> selectIntakes4AmountDay(Map<?, ?> params) ; + + /** + * 鏌ヨ缁熻鍙栨按鍙f棩婕忔崯閲� + * @param params + * @return + */ + //涓嬮潰1鍒�31鍙峰垎浜�6涓煡璇紝鍘熷洜鏄叆涓�涓煡璇腑锛岄潪甯告參锛屼笉鐭ラ亾浠�涔堝師鍥狅紝涔熻鏄瓙鏌ヨ澶鐨勫師鍥� + List<VoDayIntakeAmount> selectIntakeAmountOfDay01_05(Map<?, ?> params); + List<VoDayIntakeAmount> selectIntakeAmountOfDay06_10(Map<?, ?> params); + List<VoDayIntakeAmount> selectIntakeAmountOfDay11_15(Map<?, ?> params); + List<VoDayIntakeAmount> selectIntakeAmountOfDay16_20(Map<?, ?> params); + List<VoDayIntakeAmount> selectIntakeAmountOfDay21_25(Map<?, ?> params); + List<VoDayIntakeAmount> selectIntakeAmountOfDay26_31(Map<?, ?> params); } \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmLossDayMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmLossDayMapper.java index 7647fa9..02b4e18 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmLossDayMapper.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmLossDayMapper.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.dy.pipIrrGlobal.pojoRm.RmLossDay; import com.dy.pipIrrGlobal.voRm.VoLossDay; +import com.dy.pipIrrGlobal.voSt.VoDayLoss; import com.dy.pipIrrGlobal.voSt.VoIntakeLossStatistics; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -97,4 +98,35 @@ * @return */ List<VoIntakeLossStatistics> statisticsByIntake(@Param("startId")Long statisticsStartId, @Param("endId")Long statisticsEndId) ; + + //////////////////////////////////////////////// + // 缁熻鏌ヨ + /////////////////////////////////////////////// + + /** + * 涓烘煡璇㈢粺璁″彇姘村彛鏃ユ紡鎹熼噺锛岀粺璁″彇姘村彛鏁伴噺 + * @param intakeN + * @return + */ + Long selectIntakeCount4LossDay(@Param("intakeNum")String intakeN) ; + + /** + * 涓烘煡璇㈢粺璁″彇姘村彛鏃ユ紡鎹熼噺锛屾煡璇竴椤靛彇姘村彛ID + * @param params + * @return + */ + List<VoDayLoss> selectIntakes4LossDay(Map<?, ?> params) ; + + /** + * 鏌ヨ缁熻鍙栨按鍙f棩婕忔崯閲� + * @param params + * @return + */ + //涓嬮潰1鍒�31鍙峰垎浜�6涓煡璇紝鍘熷洜鏄叆涓�涓煡璇腑锛岄潪甯告參锛屼笉鐭ラ亾浠�涔堝師鍥狅紝涔熻鏄瓙鏌ヨ澶鐨勫師鍥� + List<VoDayLoss> selectLossAmountOfDay01_05(Map<?, ?> params); + List<VoDayLoss> selectLossAmountOfDay06_10(Map<?, ?> params); + List<VoDayLoss> selectLossAmountOfDay11_15(Map<?, ?> params); + List<VoDayLoss> selectLossAmountOfDay16_20(Map<?, ?> params); + List<VoDayLoss> selectLossAmountOfDay21_25(Map<?, ?> params); + List<VoDayLoss> selectLossAmountOfDay26_31(Map<?, ?> params); } \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSt/StIntakeAmountMonthMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSt/StIntakeAmountMonthMapper.java index 2f0f5fe..9e0372d 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSt/StIntakeAmountMonthMapper.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSt/StIntakeAmountMonthMapper.java @@ -5,10 +5,12 @@ import com.dy.pipIrrGlobal.pojoSt.StLossMonth; import com.dy.pipIrrGlobal.voSt.VoIntakeAmountStatistics; import com.dy.pipIrrGlobal.voSt.VoIntakeLossStatistics; +import com.dy.pipIrrGlobal.voSt.VoMonthAmount; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; /** * @Author: liurunyu @@ -74,11 +76,39 @@ * @param year 缁熻骞村害 * @return */ - List<VoIntakeAmountStatistics> statisticsByIntake(Integer year, Integer month, Long startId, Long endId) ; + List<VoIntakeAmountStatistics> statisticsByIntake(@Param("year")Integer year, @Param("month")Integer month, @Param("startId")Long startId, @Param("endId")Long endId) ; /** * 浠ュ彇姘村彛缁村害缁熻鍙栨按閲� * @param year 缁熻骞村害 * @return */ List<VoIntakeAmountStatistics> statisticsByIntake(Integer year) ; + + + //////////////////////////////////////////////// + // 缁熻鏌ヨ + /////////////////////////////////////////////// + + /** + * 涓烘煡璇㈢粺璁″彇姘村彛鏃ユ紡鎹熼噺锛岀粺璁″彇姘村彛鏁伴噺 + * @param intakeN + * @return + */ + Long selectIntakeCount4AmountMonth(@Param("intakeNum")String intakeN) ; + + /** + * 涓烘煡璇㈢粺璁″彇姘村彛鏃ユ紡鎹熼噺锛屾煡璇竴椤靛彇姘村彛ID + * @param params + * @return + */ + List<VoMonthAmount> selectIntakes4AmountMonth(Map<?, ?> params) ; + + /** + * 鏌ヨ缁熻鍙栨按鍙f湀婕忔崯閲� + * @param params + * @return + */ + //涓嬮潰1鍒�12鏈堝垎浜�2涓煡璇紝鍘熷洜鏄湪涓�涓煡璇腑锛岄潪甯告參锛屼笉鐭ラ亾浠�涔堝師鍥狅紝涔熻鏄瓙鏌ヨ澶鐨勫師鍥� + List<VoMonthAmount> selectIntakeAmountOfMonth01_06(Map<?, ?> params); + List<VoMonthAmount> selectIntakeAmountOfMonth07_12(Map<?, ?> params); } \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSt/StLossMonthMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSt/StLossMonthMapper.java index df3f5ae..fc34ae5 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSt/StLossMonthMapper.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSt/StLossMonthMapper.java @@ -3,10 +3,12 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.dy.pipIrrGlobal.pojoSt.StLossMonth; import com.dy.pipIrrGlobal.voSt.VoIntakeLossStatistics; +import com.dy.pipIrrGlobal.voSt.VoMonthAmount; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; /** * @Author: liurunyu @@ -79,4 +81,32 @@ */ List<VoIntakeLossStatistics> statisticsByIntake(Integer year) ; + + //////////////////////////////////////////////// + // 缁熻鏌ヨ + /////////////////////////////////////////////// + + /** + * 涓烘煡璇㈢粺璁″彇姘村彛鏃ユ紡鎹熼噺锛岀粺璁″彇姘村彛鏁伴噺 + * @param intakeN + * @return + */ + Long selectIntakeCount4LossMonth(@Param("intakeNum")String intakeN) ; + + /** + * 涓烘煡璇㈢粺璁″彇姘村彛鏃ユ紡鎹熼噺锛屾煡璇竴椤靛彇姘村彛ID + * @param params + * @return + */ + List<VoMonthAmount> selectIntakes4LossMonth(Map<?, ?> params) ; + + /** + * 鏌ヨ缁熻鍙栨按鍙f湀婕忔崯閲� + * @param params + * @return + */ + //涓嬮潰1鍒�12鏈堝垎浜�2涓煡璇紝鍘熷洜鏄湪涓�涓煡璇腑锛岄潪甯告參锛屼笉鐭ラ亾浠�涔堝師鍥狅紝涔熻鏄瓙鏌ヨ澶鐨勫師鍥� + List<VoMonthAmount> selectLossAmountOfMonth01_06(Map<?, ?> params); + List<VoMonthAmount> selectLossAmountOfMonth07_12(Map<?, ?> params); + } \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoTmp/DeleteMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoTmp/DeleteMapper.java index bb61453..017e23b 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoTmp/DeleteMapper.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoTmp/DeleteMapper.java @@ -1,7 +1,7 @@ package com.dy.pipIrrGlobal.daoTmp; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.dy.pipIrrGlobal.voTmp.VoStLossMonth; +import com.dy.pipIrrGlobal.voTmp.*; import org.apache.ibatis.annotations.Mapper; import java.util.List; @@ -15,10 +15,88 @@ public interface DeleteMapper extends BaseMapper<Object> { /** - * 鏌ヨ鍏ㄩ儴婕忔崯鏈堢粺璁� + * 鏌ヨ鍏ㄩ儴婕忔崯鏃ョ粺璁� + * * @return 瀹炰綋闆嗗悎 */ - List<VoStLossMonth> selectAllStLossMonth() ; + List<VoStLossAmountDay> selectAllStLossDay(); - int deleteByMainKey(Long id) ; + int deleteStLossDayById(Long id); + + /** + * 鏌ヨ鍏ㄩ儴婕忔崯鏈堢粺璁� + * + * @return 瀹炰綋闆嗗悎 + */ + List<VoStLossAmountMonth> selectAllStLossMonth(); + + int deleteStLossMonthById(Long id); + + /** + * 鏌ヨ鍏ㄩ儴婕忔崯骞寸粺璁� + * + * @return 瀹炰綋闆嗗悎 + */ + List<VoStLossAmountYear> selectAllStLossYear(); + + int deleteStLossYearById(Long id); + + + /** + * 鏌ヨ鍏ㄩ儴鍙栨按鍙f棩缁熻 + * + * @return 瀹炰綋闆嗗悎 + */ + List<VoStIntakeAmountDay> selectAllStIntakeDay(); + + int deleteStIntakeDayById(Long id); + + + /** + * 鏌ヨ鍏ㄩ儴鍙栨按鍙f湀缁熻 + * + * @return 瀹炰綋闆嗗悎 + */ + List<VoStIntakeAmountMonth> selectAllStIntakeMonth(); + + int deleteStIntakeMonthById(Long id); + + /** + * 鏌ヨ鍏ㄩ儴鍙栨按鍙e勾缁熻 + * + * @return 瀹炰綋闆嗗悎 + */ + List<VoStIntakeAmountYear> selectAllStIntakeYear(); + + int deleteStIntakeYearById(Long id); + + + /** + * 鏌ヨ鍏ㄩ儴鍐滄埛鏈堢粺璁� + * + * @return 瀹炰綋闆嗗悎 + */ + List<VoStClientAmountDay> selectAllStClientDay(); + + int deleteStClientDayById(Long id); + + + /** + * 鏌ヨ鍏ㄩ儴鍐滄埛鏈堢粺璁� + * + * @return 瀹炰綋闆嗗悎 + */ + List<VoStClientAmountMonth> selectAllStClientMonth(); + + int deleteStClientMonthById(Long id); + + /** + * 鏌ヨ鍏ㄩ儴鍐滄埛骞寸粺璁� + * + * @return 瀹炰綋闆嗗悎 + */ + List<VoStClientAmountYear> selectAllStClientYear(); + + int deleteStClientYearById(Long id); + } \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoDayIntakeAmount.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoDayIntakeAmount.java index 88fef3c..197f8c2 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoDayIntakeAmount.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoDayIntakeAmount.java @@ -14,81 +14,94 @@ */ @Data -@JsonPropertyOrder({ "intakeId", "intakeNum", "amount1" , "amount2" , "amount3" , "amount4" , "amount5" , "amount6" , "amount7" , "amount8" , "amount9" , "amount10" , "amount11" , "amount12" , "amount13" , "amount14" , "amount15" , "amount16" , "amount17" , "amount18" , "amount19" , "amount20" , "amount21" , "amount22" , "amount23" , "amount24" , "amount25" , "amount26" , "amount27" , "amount28" , "amount29" , "amount30" , "amount31" }) +@JsonPropertyOrder(value = { "intakeId", "intakeNum", "intakeLng", "intakeLat", + "amount1" , "amount2" , "amount3" , "amount4" , "amount5" , "amount6" , "amount7" , "amount8" , "amount9" , + "amount10" , "amount11" , "amount12" , "amount13" , "amount14" , "amount15" , "amount16" , "amount17" , "amount18" , "amount19" , + "amount20" , "amount21" , "amount22" , "amount23" , "amount24" , "amount25" , "amount26" , "amount27" , "amount28" , "amount29" , + "amount30" , "amount31" }, alphabetic = false) public class VoDayIntakeAmount { - private static final long serialVersionUID = 202408080933001L; + public static final long serialVersionUID = 202408080933001L; /** * 鍙栨按鍙D */ @JSONField(serializeUsing= ObjectWriterImplToString.class) - private Long intakeId; + public Long intakeId; /** * 鍙栨按鍙g紪鍙� */ - private String intakeNum; + public String intakeNum; + + /** + * 缁忓害 + */ + public Double intakeLng; + /** + * 绾害 + */ + public Double intakeLat; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount1; + public Double amount1; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount2; + public Double amount2; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount3; + public Double amount3; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount4; + public Double amount4; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount5; + public Double amount5; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount6; + public Double amount6; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount7; + public Double amount7; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount8; + public Double amount8; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount9; + public Double amount9; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount10; + public Double amount10; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount11; + public Double amount11; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount12; + public Double amount12; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount13; + public Double amount13; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount14; + public Double amount14; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount15; + public Double amount15; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount16; + public Double amount16; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount17; + public Double amount17; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount18; + public Double amount18; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount19; + public Double amount19; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount20; + public Double amount20; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount21; + public Double amount21; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount22; + public Double amount22; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount23; + public Double amount23; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount24; + public Double amount24; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount25; + public Double amount25; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount26; + public Double amount26; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount27; + public Double amount27; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount28; + public Double amount28; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount29; + public Double amount29; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount30; + public Double amount30; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double amount31; + public Double amount31; } diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoDayLoss.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoDayLoss.java index bd2baa3..fc0985f 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoDayLoss.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoDayLoss.java @@ -14,81 +14,90 @@ */ @Data -@JsonPropertyOrder({ "intakeId", "intakeNum", "lossAmount1" , "lossAmount2" , "lossAmount3" , "lossAmount4" , "lossAmount5" , "lossAmount6" , "lossAmount7" , "lossAmount8" , "lossAmount9" , "lossAmount10" , "lossAmount11" , "lossAmount12" , "lossAmount13" , "lossAmount14" , "lossAmount15" , "lossAmount16" , "lossAmount17" , "lossAmount18" , "lossAmount19" , "lossAmount20" , "lossAmount21" , "lossAmount22" , "lossAmount23" , "lossAmount24" , "lossAmount25" , "lossAmount26" , "lossAmount27" , "lossAmount28" , "lossAmount29" , "lossAmount30" , "lossAmount31" }) +@JsonPropertyOrder({ "intakeId", "intakeNum", "intakeLng", "intakeLat", "lossAmount1" , "lossAmount2" , "lossAmount3" , "lossAmount4" , "lossAmount5" , "lossAmount6" , "lossAmount7" , "lossAmount8" , "lossAmount9" , "lossAmount10" , "lossAmount11" , "lossAmount12" , "lossAmount13" , "lossAmount14" , "lossAmount15" , "lossAmount16" , "lossAmount17" , "lossAmount18" , "lossAmount19" , "lossAmount20" , "lossAmount21" , "lossAmount22" , "lossAmount23" , "lossAmount24" , "lossAmount25" , "lossAmount26" , "lossAmount27" , "lossAmount28" , "lossAmount29" , "lossAmount30" , "lossAmount31" }) public class VoDayLoss { - private static final long serialVersionUID = 202408081523001L; + public static final long serialVersionUID = 202408081523001L; /** * 鍙栨按鍙D */ @JSONField(serializeUsing= ObjectWriterImplToString.class) - private Long intakeId; + public Long intakeId; /** * 鍙栨按鍙g紪鍙� */ - private String intakeNum; + public String intakeNum; + + /** + * 缁忓害 + */ + public Double intakeLng; + /** + * 绾害 + */ + public Double intakeLat; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount1; + public Double lossAmount1; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount2; + public Double lossAmount2; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount3; + public Double lossAmount3; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount4; + public Double lossAmount4; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount5; + public Double lossAmount5; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount6; + public Double lossAmount6; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount7; + public Double lossAmount7; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount8; + public Double lossAmount8; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount9; + public Double lossAmount9; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount10; + public Double lossAmount10; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount11; + public Double lossAmount11; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount12; + public Double lossAmount12; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount13; + public Double lossAmount13; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount14; + public Double lossAmount14; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount15; + public Double lossAmount15; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount16; + public Double lossAmount16; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount17; + public Double lossAmount17; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount18; + public Double lossAmount18; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount19; + public Double lossAmount19; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount20; + public Double lossAmount20; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount21; + public Double lossAmount21; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount22; + public Double lossAmount22; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount23; + public Double lossAmount23; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount24; + public Double lossAmount24; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount25; + public Double lossAmount25; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount26; + public Double lossAmount26; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount27; + public Double lossAmount27; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount28; + public Double lossAmount28; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount29; + public Double lossAmount29; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount30; + public Double lossAmount30; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double lossAmount31; + public Double lossAmount31; } diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoMonthAmount.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoMonthAmount.java index 7006a0e..9ffc36a 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoMonthAmount.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoMonthAmount.java @@ -14,43 +14,52 @@ */ @Data -@JsonPropertyOrder({ "intakeId", "intakeNum", "month1" , "month2" , "month3" , "month4" , "month5" , "month6" , "month7" , "month8" , "month9" , "month10" , "month11" , "month12" }) +@JsonPropertyOrder({ "intakeId", "intakeNum", "intakeLng", "intakeLat", "month1" , "month2" , "month3" , "month4" , "month5" , "month6" , "month7" , "month8" , "month9" , "month10" , "month11" , "month12" }) public class VoMonthAmount { - private static final long serialVersionUID = 202408081417001L; + public static final long serialVersionUID = 202408081417001L; /** * 鍙栨按鍙D */ @JSONField(serializeUsing= ObjectWriterImplToString.class) - private Long intakeId; + public Long intakeId; /** * 鍙栨按鍙g紪鍙� */ - private String intakeNum; + public String intakeNum; + + /** + * 缁忓害 + */ + public Double intakeLng; + /** + * 绾害 + */ + public Double intakeLat; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double month1; + public Double month1; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double month2; + public Double month2; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double month3; + public Double month3; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double month4; + public Double month4; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double month5; + public Double month5; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double month6; + public Double month6; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double month7; + public Double month7; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double month8; + public Double month8; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double month9; + public Double month9; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double month10; + public Double month10; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double month11; + public Double month11; @JsonFormat(shape = JsonFormat.Shape.NUMBER_FLOAT, pattern="0.00" ) - private Double month12; + public Double month12; } diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStClientAmountDay.java similarity index 62% copy from pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java copy to pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStClientAmountDay.java index d5f8cd5..a85815d 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStClientAmountDay.java @@ -2,16 +2,17 @@ import lombok.Data; +import java.util.Date; + /** * @Author: liurunyu * @Date: 2024/12/11 11:20 * @Description */ @Data -public class VoStLossMonth { +public class VoStClientAmountDay { public Long id ; - public Long intakeId ; - public Integer year ; - public Integer month ; + public Long clientId ; + public Date dt ; public Double amount ; } diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStClientAmountMonth.java similarity index 78% copy from pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java copy to pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStClientAmountMonth.java index d5f8cd5..d648701 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStClientAmountMonth.java @@ -8,9 +8,9 @@ * @Description */ @Data -public class VoStLossMonth { +public class VoStClientAmountMonth { public Long id ; - public Long intakeId ; + public Long clientId ; public Integer year ; public Integer month ; public Double amount ; diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStClientAmountYear.java similarity index 71% copy from pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java copy to pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStClientAmountYear.java index d5f8cd5..60c9665 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStClientAmountYear.java @@ -8,10 +8,9 @@ * @Description */ @Data -public class VoStLossMonth { +public class VoStClientAmountYear { public Long id ; - public Long intakeId ; + public Long clientId ; public Integer year ; - public Integer month ; public Double amount ; } diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStIntakeAmountDay.java similarity index 71% copy from pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java copy to pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStIntakeAmountDay.java index d5f8cd5..e4df3a9 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStIntakeAmountDay.java @@ -2,16 +2,17 @@ import lombok.Data; +import java.util.Date; + /** * @Author: liurunyu * @Date: 2024/12/11 11:20 * @Description */ @Data -public class VoStLossMonth { +public class VoStIntakeAmountDay { public Long id ; public Long intakeId ; - public Integer year ; - public Integer month ; + public Date dt ; public Double amount ; } diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStIntakeAmountMonth.java similarity index 87% copy from pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java copy to pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStIntakeAmountMonth.java index d5f8cd5..856fc67 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStIntakeAmountMonth.java @@ -8,7 +8,7 @@ * @Description */ @Data -public class VoStLossMonth { +public class VoStIntakeAmountMonth { public Long id ; public Long intakeId ; public Integer year ; diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStIntakeAmountYear.java similarity index 80% copy from pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java copy to pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStIntakeAmountYear.java index d5f8cd5..27f4c13 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStIntakeAmountYear.java @@ -8,10 +8,9 @@ * @Description */ @Data -public class VoStLossMonth { +public class VoStIntakeAmountYear { public Long id ; public Long intakeId ; public Integer year ; - public Integer month ; public Double amount ; } diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossAmountDay.java similarity index 71% copy from pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java copy to pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossAmountDay.java index d5f8cd5..709d18e 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossAmountDay.java @@ -2,16 +2,17 @@ import lombok.Data; +import java.util.Date; + /** * @Author: liurunyu * @Date: 2024/12/11 11:20 * @Description */ @Data -public class VoStLossMonth { +public class VoStLossAmountDay { public Long id ; public Long intakeId ; - public Integer year ; - public Integer month ; + public Date dt ; public Double amount ; } diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossAmountMonth.java similarity index 88% rename from pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java rename to pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossAmountMonth.java index d5f8cd5..5a889c7 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossAmountMonth.java @@ -8,7 +8,7 @@ * @Description */ @Data -public class VoStLossMonth { +public class VoStLossAmountMonth { public Long id ; public Long intakeId ; public Integer year ; diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossAmountYear.java similarity index 80% copy from pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java copy to pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossAmountYear.java index d5f8cd5..11a9271 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossMonth.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voTmp/VoStLossAmountYear.java @@ -8,10 +8,9 @@ * @Description */ @Data -public class VoStLossMonth { +public class VoStLossAmountYear { public Long id ; public Long intakeId ; public Integer year ; - public Integer month ; public Double amount ; } diff --git "a/pipIrr-platform/pipIrr-global/src/main/resources/application-global\050sp\346\262\231\347\233\230\347\263\273\347\273\237\051.yml" "b/pipIrr-platform/pipIrr-global/src/main/resources/application-global\050sp\346\262\231\347\233\230\347\263\273\347\273\237\051.yml" index 0ca5332..eb28c05 100644 --- "a/pipIrr-platform/pipIrr-global/src/main/resources/application-global\050sp\346\262\231\347\233\230\347\263\273\347\273\237\051.yml" +++ "b/pipIrr-platform/pipIrr-global/src/main/resources/application-global\050sp\346\262\231\347\233\230\347\263\273\347\273\237\051.yml" @@ -65,7 +65,8 @@ #type-aliases-package: com.dy.pipIrrGlobal.daoBa configuration: #log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #鏃惰�岃緭鍑烘棩蹇楋紝鏃惰�屼笉杈撳嚭鏃ュ織 - log-impl: org.apache.ibatis.logging.log4j2.Log4j2Impl + #log-impl: org.apache.ibatis.logging.log4j2.Log4j2Impl 涓嶅啀搴旂敤锛屾敼涓篜rintSqlInterceptor鎷︽埅鍣ㄨ緭鍑簊ql鏃ュ織锛屼笅闈rint-sql椤归厤缃� + print-sql: true # 杈撳嚭sql鏃ュ織寮�鍏筹紝鎺у埗PrintSqlInterceptor鎷︽埅鍣ㄦ槸鍚﹀姞杞� #寮�鍚┘宄皍Name鑷姩鏄犲皠鍒皍_name #2023-10-24缁忓疄楠岋紝涓嬮潰閰嶇疆true鎴杅alse锛岄兘鑳戒粠u_name鏄犲皠鍒皍Name #map-underscore-to-camel-case: true diff --git "a/pipIrr-platform/pipIrr-global/src/main/resources/application-global\050test\346\265\213\350\257\225\347\263\273\347\273\237\051.yml" "b/pipIrr-platform/pipIrr-global/src/main/resources/application-global\050test\346\265\213\350\257\225\347\263\273\347\273\237\051.yml" index a74a259..52949c4 100644 --- "a/pipIrr-platform/pipIrr-global/src/main/resources/application-global\050test\346\265\213\350\257\225\347\263\273\347\273\237\051.yml" +++ "b/pipIrr-platform/pipIrr-global/src/main/resources/application-global\050test\346\265\213\350\257\225\347\263\273\347\273\237\051.yml" @@ -65,7 +65,8 @@ #type-aliases-package: com.dy.pipIrrGlobal.daoBa configuration: #log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #鏃惰�岃緭鍑烘棩蹇楋紝鏃惰�屼笉杈撳嚭鏃ュ織 - log-impl: org.apache.ibatis.logging.log4j2.Log4j2Impl + #log-impl: org.apache.ibatis.logging.log4j2.Log4j2Impl 涓嶅啀搴旂敤锛屾敼涓篜rintSqlInterceptor鎷︽埅鍣ㄨ緭鍑簊ql鏃ュ織锛屼笅闈rint-sql椤归厤缃� + print-sql: true # 杈撳嚭sql鏃ュ織寮�鍏筹紝鎺у埗PrintSqlInterceptor鎷︽埅鍣ㄦ槸鍚﹀姞杞� #寮�鍚┘宄皍Name鑷姩鏄犲皠鍒皍_name #2023-10-24缁忓疄楠岋紝涓嬮潰閰嶇疆true鎴杅alse锛岄兘鑳戒粠u_name鏄犲皠鍒皍Name #map-underscore-to-camel-case: true diff --git "a/pipIrr-platform/pipIrr-global/src/main/resources/application-global\050ym\345\205\203\350\260\213\347\263\273\347\273\237\051.yml" "b/pipIrr-platform/pipIrr-global/src/main/resources/application-global\050ym\345\205\203\350\260\213\347\263\273\347\273\237\051.yml" index e7a60d0..c65118e 100644 --- "a/pipIrr-platform/pipIrr-global/src/main/resources/application-global\050ym\345\205\203\350\260\213\347\263\273\347\273\237\051.yml" +++ "b/pipIrr-platform/pipIrr-global/src/main/resources/application-global\050ym\345\205\203\350\260\213\347\263\273\347\273\237\051.yml" @@ -65,7 +65,8 @@ #type-aliases-package: com.dy.pipIrrGlobal.daoBa configuration: #log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #鏃惰�岃緭鍑烘棩蹇楋紝鏃惰�屼笉杈撳嚭鏃ュ織 - log-impl: org.apache.ibatis.logging.log4j2.Log4j2Impl + #log-impl: org.apache.ibatis.logging.log4j2.Log4j2Impl 涓嶅啀搴旂敤锛屾敼涓篜rintSqlInterceptor鎷︽埅鍣ㄨ緭鍑簊ql鏃ュ織锛屼笅闈rint-sql椤归厤缃� + print-sql: true # 杈撳嚭sql鏃ュ織寮�鍏筹紝鎺у埗PrintSqlInterceptor鎷︽埅鍣ㄦ槸鍚﹀姞杞� #寮�鍚┘宄皍Name鑷姩鏄犲皠鍒皍_name #2023-10-24缁忓疄楠岋紝涓嬮潰閰嶇疆true鎴杅alse锛岄兘鑳戒粠u_name鏄犲皠鍒皍Name #map-underscore-to-camel-case: true diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml b/pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml index 8cd0186..a0ce5e1 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml @@ -65,7 +65,8 @@ #type-aliases-package: com.dy.pipIrrGlobal.daoBa configuration: #log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #鏃惰�岃緭鍑烘棩蹇楋紝鏃惰�屼笉杈撳嚭鏃ュ織 - log-impl: org.apache.ibatis.logging.log4j2.Log4j2Impl + #log-impl: org.apache.ibatis.logging.log4j2.Log4j2Impl 涓嶅啀搴旂敤锛屾敼涓篜rintSqlInterceptor鎷︽埅鍣ㄨ緭鍑簊ql鏃ュ織锛屼笅闈rint-sql椤归厤缃� + print-sql: true # 杈撳嚭sql鏃ュ織寮�鍏筹紝鎺у埗PrintSqlInterceptor鎷︽埅鍣ㄦ槸鍚﹀姞杞� #寮�鍚┘宄皍Name鑷姩鏄犲皠鍒皍_name #2023-10-24缁忓疄楠岋紝涓嬮潰閰嶇疆true鎴杅alse锛岄兘鑳戒粠u_name鏄犲皠鍒皍Name #map-underscore-to-camel-case: true @@ -79,6 +80,8 @@ global: dev: false #鏄惁寮�鍙戦樁娈碉紝true鎴杅alse dsName: ym #寮�鍙戦樁娈碉紝璁剧疆涓存椂鐨勬暟鎹簱鍚嶇О + sql: + print: true #鏄惁鎵撳嵃SQL璇彞锛宼rue鎴杅alse nginx: webPort: 54321 mw: diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmIntakeAmountDayMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmIntakeAmountDayMapper.xml index c68b2b7..7ddc8ab 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmIntakeAmountDayMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmIntakeAmountDayMapper.xml @@ -549,4 +549,451 @@ </if> </trim> </select> + + + + + <!-- 涓烘煡璇㈢粺璁″彇姘村彛鏃ユ紡鎹熼噺锛岀粺璁″彇姘村彛鏁伴噺 --> + <select id="selectIntakeCount4AmountDay" resultType="java.lang.Long"> + SELECT COUNT(*) + FROM pr_intake tb + <where> + AND tb.deleted != 1 + <if test="intakeNum != null and intakeNum != ''"> + AND tb.name = #{intakeNum} + </if> + </where> + </select> + + <!-- 涓烘煡璇㈢粺璁″彇姘村彛鏃ユ紡鎹熼噺锛屾煡璇竴椤靛彇姘村彛ID --> + <select id="selectIntakes4AmountDay" resultType="com.dy.pipIrrGlobal.voSt.VoDayIntakeAmount"> + SELECT id as intakeId, + name as intakeNum, + lat as intakeLat, + lng as intakeLng + FROM pr_intake + <where> + AND deleted != 1 + <if test="intakeNum != null and intakeNum != ''"> + AND name = #{intakeNum} + </if> + </where> + order by id DESC + <trim prefix="limit " > + <if test="start != null and count != null"> + #{start, javaType=Integer, jdbcType=INTEGER}, #{count, javaType=Integer, jdbcType=INTEGER} + </if> + </trim> + </select> + + <sql id="selectIntakeAmountOfDay_with"> + SELECT intaId.intakeId AS intakeId, + riad.dt AS dt, + riad.amount AS amount + FROM JSON_TABLE( + #{intakesJson}, + '$[*]' COLUMNS ( + intakeId BIGINT PATH '$.intakeId' + ) + ) intaId + INNER JOIN rm_intake_amount_day riad ON riad.intake_id = intaId.intakeId + <where> + <if test="startDt != null "> + AND riad.dt <![CDATA[>=]]> #{startDt, javaType=DATE, jdbcType=DATE} + </if> + <if test="endDt != null "> + AND riad.dt <![CDATA[<=]]> #{endDt, javaType=DATE, jdbcType=DATE} + </if> + </where> + </sql> + + <!--缁熻鎸囧畾鏈堜唤鍚勫ぉ鍙栨按閲�(1鍙峰埌5鍙�)--> + <select id="selectIntakeAmountOfDay01_05" resultType="com.dy.pipIrrGlobal.voSt.VoDayIntakeAmount"> + WITH intakeAmountDay AS (<include refid="selectIntakeAmountOfDay_with"/>) + SELECT inta.intakeId AS intakeId, + inta.intakeNum AS intakeNum, + inta.intakeLng AS intakeLng, + inta.intakeLat AS intakeLat, + tb01.amount AS amount1, + tb02.amount AS amount2, + tb03.amount AS amount3, + tb04.amount AS amount4, + tb05.amount AS amount5 + FROM JSON_TABLE( + #{intakesJson}, + '$[*]' COLUMNS ( + intakeId BIGINT PATH '$.intakeId', + intakeNum VARCHAR(100) PATH '$.intakeNum', + intakeLng DOUBLE PATH '$.intakeLng', + intakeLat DOUBLE PATH '$.intakeLat' + ) + ) inta + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 1 + ) as tb01 on tb01.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 2 + ) as tb02 on tb02.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 3 + ) as tb03 on tb03.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 4 + ) as tb04 on tb04.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 5 + ) as tb05 on tb05.intakeId = inta.intakeId + </select> + + + <!--缁熻鎸囧畾鏈堜唤鍚勫ぉ鍙栨按閲�(6鍙峰埌10鍙�)--> + <select id="selectIntakeAmountOfDay06_10" resultType="com.dy.pipIrrGlobal.voSt.VoDayIntakeAmount"> + WITH intakeAmountDay AS (<include refid="selectIntakeAmountOfDay_with"/>) + SELECT inta.intakeId AS intakeId, + inta.intakeNum AS intakeNum, + inta.intakeLng AS intakeLng, + inta.intakeLat AS intakeLat, + tb06.amount AS amount6, + tb07.amount AS amount7, + tb08.amount AS amount8, + tb09.amount AS amount9, + tb10.amount AS amount10 + FROM JSON_TABLE( + #{intakesJson}, + '$[*]' COLUMNS ( + intakeId BIGINT PATH '$.intakeId', + intakeNum VARCHAR(100) PATH '$.intakeNum', + intakeLng DOUBLE PATH '$.intakeLng', + intakeLat DOUBLE PATH '$.intakeLat' + ) + ) inta + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 6 + ) as tb06 on tb06.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 7 + ) as tb07 on tb07.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 8 + ) as tb08 on tb08.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 9 + ) as tb09 on tb09.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 10 + ) as tb10 on tb10.intakeId = inta.intakeId + </select> + + <!--缁熻鎸囧畾鏈堜唤鍚勫ぉ鍙栨按閲�(11鍙峰埌15鍙�)--> + <select id="selectIntakeAmountOfDay11_15" resultType="com.dy.pipIrrGlobal.voSt.VoDayIntakeAmount"> + WITH intakeAmountDay AS (<include refid="selectIntakeAmountOfDay_with"/>) + SELECT inta.intakeId AS intakeId, + inta.intakeNum AS intakeNum, + inta.intakeLng AS intakeLng, + inta.intakeLat AS intakeLat, + tb11.amount AS amount11, + tb12.amount AS amount12, + tb13.amount AS amount13, + tb14.amount AS amount14, + tb15.amount AS amount15 + FROM JSON_TABLE( + #{intakesJson}, + '$[*]' COLUMNS ( + intakeId BIGINT PATH '$.intakeId', + intakeNum VARCHAR(100) PATH '$.intakeNum', + intakeLng DOUBLE PATH '$.intakeLng', + intakeLat DOUBLE PATH '$.intakeLat' + ) + ) inta + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 11 + ) as tb11 on tb11.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 12 + ) as tb12 on tb12.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 13 + ) as tb13 on tb13.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 14 + ) as tb14 on tb14.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 15 + ) as tb15 on tb15.intakeId = inta.intakeId + </select> + + <!--缁熻鎸囧畾鏈堜唤鍚勫ぉ鍙栨按閲�(20鍙峰埌16鍙�)--> + <select id="selectIntakeAmountOfDay16_20" resultType="com.dy.pipIrrGlobal.voSt.VoDayIntakeAmount"> + WITH intakeAmountDay AS (<include refid="selectIntakeAmountOfDay_with"/>) + SELECT inta.intakeId AS intakeId, + inta.intakeNum AS intakeNum, + inta.intakeLng AS intakeLng, + inta.intakeLat AS intakeLat, + tb16.amount AS amount16, + tb17.amount AS amount17, + tb18.amount AS amount18, + tb19.amount AS amount19, + tb20.amount AS amount20 + FROM JSON_TABLE( + #{intakesJson}, + '$[*]' COLUMNS ( + intakeId BIGINT PATH '$.intakeId', + intakeNum VARCHAR(100) PATH '$.intakeNum', + intakeLng DOUBLE PATH '$.intakeLng', + intakeLat DOUBLE PATH '$.intakeLat' + ) + ) inta + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 16 + ) as tb16 on tb16.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 17 + ) as tb17 on tb17.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 18 + ) as tb18 on tb18.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 19 + ) as tb19 on tb19.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 20 + ) as tb20 on tb20.intakeId = inta.intakeId + </select> + + <!--缁熻鎸囧畾鏈堜唤鍚勫ぉ鍙栨按閲�(21鍙峰埌25鍙�)--> + <select id="selectIntakeAmountOfDay21_25" resultType="com.dy.pipIrrGlobal.voSt.VoDayIntakeAmount"> + WITH intakeAmountDay AS (<include refid="selectIntakeAmountOfDay_with"/>) + SELECT inta.intakeId AS intakeId, + inta.intakeNum AS intakeNum, + inta.intakeLng AS intakeLng, + inta.intakeLat AS intakeLat, + tb21.amount AS amount21, + tb22.amount AS amount22, + tb23.amount AS amount23, + tb24.amount AS amount24, + tb25.amount AS amount25 + FROM JSON_TABLE( + #{intakesJson}, + '$[*]' COLUMNS ( + intakeId BIGINT PATH '$.intakeId', + intakeNum VARCHAR(100) PATH '$.intakeNum', + intakeLng DOUBLE PATH '$.intakeLng', + intakeLat DOUBLE PATH '$.intakeLat' + ) + ) inta + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 21 + ) as tb21 on tb21.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 22 + ) as tb22 on tb22.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 23 + ) as tb23 on tb23.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 24 + ) as tb24 on tb24.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 25 + ) as tb25 on tb25.intakeId = inta.intakeId + </select> + + <!--缁熻鎸囧畾鏈堜唤鍚勫ぉ鍙栨按閲�(26鍙峰埌31鍙�)--> + <select id="selectIntakeAmountOfDay26_31" resultType="com.dy.pipIrrGlobal.voSt.VoDayIntakeAmount"> + WITH intakeAmountDay AS (<include refid="selectIntakeAmountOfDay_with"/>) + SELECT inta.intakeId AS intakeId, + inta.intakeNum AS intakeNum, + inta.intakeLng AS intakeLng, + inta.intakeLat AS intakeLat, + tb26.amount AS amount26, + tb27.amount AS amount27, + tb28.amount AS amount28, + tb29.amount AS amount29, + tb30.amount AS amount30, + tb31.amount AS amount31 + FROM JSON_TABLE( + #{intakesJson}, + '$[*]' COLUMNS ( + intakeId BIGINT PATH '$.intakeId', + intakeNum VARCHAR(100) PATH '$.intakeNum', + intakeLng DOUBLE PATH '$.intakeLng', + intakeLat DOUBLE PATH '$.intakeLat' + ) + ) inta + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 26 + ) as tb26 on tb26.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 27 + ) as tb27 on tb27.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 28 + ) as tb28 on tb28.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 29 + ) as tb29 on tb29.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 30 + ) as tb30 on tb30.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 31 + ) as tb31 on tb31.intakeId = inta.intakeId + </select> + + </mapper> \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmLossDayMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmLossDayMapper.xml index c295ea9..10f472c 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmLossDayMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmLossDayMapper.xml @@ -216,4 +216,484 @@ where id <![CDATA[>=]]> #{startId, jdbcType=BIGINT} and id <![CDATA[<]]> #{endId, jdbcType=BIGINT} group by intake_id </select> + + <!-- 涓烘煡璇㈢粺璁″彇姘村彛鏃ユ紡鎹熼噺锛岀粺璁″彇姘村彛鏁伴噺 --> + <select id="selectIntakeCount4LossDay" resultType="java.lang.Long"> + SELECT COUNT(*) + FROM pr_intake tb + <where> + AND tb.deleted != 1 + <if test="intakeNum != null and intakeNum != ''"> + AND tb.name = #{intakeNum} + </if> + </where> + </select> + + <!-- 涓烘煡璇㈢粺璁″彇姘村彛鏃ユ紡鎹熼噺锛屾煡璇竴椤靛彇姘村彛ID --> + <select id="selectIntakes4LossDay" resultType="com.dy.pipIrrGlobal.voSt.VoDayLoss"> + SELECT id as intakeId, + name as intakeNum, + lat as intakeLat, + lng as intakeLng + FROM pr_intake + <where> + AND deleted != 1 + <if test="intakeNum != null and intakeNum != ''"> + AND name = #{intakeNum} + </if> + </where> + order by id DESC + <trim prefix="limit " > + <if test="start != null and count != null"> + #{start, javaType=Integer, jdbcType=INTEGER}, #{count, javaType=Integer, jdbcType=INTEGER} + </if> + </trim> + </select> + + + <!--缁熻鎸囧畾鏈堜唤鍚勫ぉ婕忔崯閲� 鏆傛椂鏈敤 鍒樻鼎鐜� 2024-12-12--> + <select id="temp" resultType="com.dy.pipIrrGlobal.voSt.VoDayLoss"> + SELECT inta.intakeId AS intakeId, + inta.intakeNum AS intakeNum, + inta.intakeLng AS intakeLng, + inta.intakeLat AS intakeLat, + rld.id AS id, + rld.dt AS dt, + rld.loss_amount AS lossAmount1 + FROM JSON_TABLE( + #{intakesJson}, + '$[*]' COLUMNS ( + intakeId BIGINT PATH '$.intakeId', + intakeNum VARCHAR(100) PATH '$.intakeNum', + intakeLng DOUBLE PATH '$.intakeLng', + intakeLat DOUBLE PATH '$.intakeLat' + ) + ) inta + LEFT JOIN + ( + select id, intake_id, dt, loss_amount + from rm_loss_day + <where> + <if test="startDt != null "> + AND dt <![CDATA[>=]]> #{startDt, javaType=DATE, jdbcType=DATE} + </if> + <if test="endDt != null "> + AND dt <![CDATA[<]]> #{endDt, javaType=DATE, jdbcType=DATE} + </if> + </where> + order by intake_id DESC, id ASC + ) as rld ON rld.intake_id = inta.intakeId + </select> + + + <sql id="selectLossAmountOfDay_with"> + SELECT intaId.intakeId AS intakeId, + rld.dt AS dt, + rld.loss_amount AS lossAmount + FROM JSON_TABLE( + #{intakesJson}, + '$[*]' COLUMNS ( + intakeId BIGINT PATH '$.intakeId' + ) + ) intaId + INNER JOIN rm_loss_day rld ON rld.intake_id = intaId.intakeId + <where> + <if test="startDt != null "> + AND rld.dt <![CDATA[>=]]> #{startDt, javaType=DATE, jdbcType=DATE} + </if> + <if test="endDt != null "> + AND rld.dt <![CDATA[<=]]> #{endDt, javaType=DATE, jdbcType=DATE} + </if> + </where> + </sql> + + <!--缁熻鎸囧畾鏈堜唤鍚勫ぉ婕忔崯閲�(1鍙峰埌5鍙�)--> + <select id="selectLossAmountOfDay01_05" resultType="com.dy.pipIrrGlobal.voSt.VoDayLoss"> + WITH intakeLossAmountDay AS (<include refid="selectLossAmountOfDay_with"/>) + SELECT inta.intakeId AS intakeId, + inta.intakeNum AS intakeNum, + inta.intakeLng AS intakeLng, + inta.intakeLat AS intakeLat, + tb01.lossAmount AS lossAmount1, + tb02.lossAmount AS lossAmount2, + tb03.lossAmount AS lossAmount3, + tb04.lossAmount AS lossAmount4, + tb05.lossAmount AS lossAmount5 + FROM JSON_TABLE( + #{intakesJson}, + '$[*]' COLUMNS ( + intakeId BIGINT PATH '$.intakeId', + intakeNum VARCHAR(100) PATH '$.intakeNum', + intakeLng DOUBLE PATH '$.intakeLng', + intakeLat DOUBLE PATH '$.intakeLat' + ) + ) inta + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 1 + ) as tb01 on tb01.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 2 + ) as tb02 on tb02.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 3 + ) as tb03 on tb03.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 4 + ) as tb04 on tb04.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 5 + ) as tb05 on tb05.intakeId = inta.intakeId + </select> + + + <!--缁熻鎸囧畾鏈堜唤鍚勫ぉ婕忔崯閲�(6鍙峰埌10鍙�)--> + <select id="selectLossAmountOfDay06_10" resultType="com.dy.pipIrrGlobal.voSt.VoDayLoss"> + WITH intakeLossAmountDay AS (<include refid="selectLossAmountOfDay_with"/>) + SELECT inta.intakeId AS intakeId, + inta.intakeNum AS intakeNum, + inta.intakeLng AS intakeLng, + inta.intakeLat AS intakeLat, + tb06.lossAmount AS lossAmount6, + tb07.lossAmount AS lossAmount7, + tb08.lossAmount AS lossAmount8, + tb09.lossAmount AS lossAmount9, + tb10.lossAmount AS lossAmount10 + FROM JSON_TABLE( + #{intakesJson}, + '$[*]' COLUMNS ( + intakeId BIGINT PATH '$.intakeId', + intakeNum VARCHAR(100) PATH '$.intakeNum', + intakeLng DOUBLE PATH '$.intakeLng', + intakeLat DOUBLE PATH '$.intakeLat' + ) + ) inta + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 6 + ) as tb06 on tb06.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 7 + ) as tb07 on tb07.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 8 + ) as tb08 on tb08.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 9 + ) as tb09 on tb09.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 10 + ) as tb10 on tb10.intakeId = inta.intakeId + </select> + + <!--缁熻鎸囧畾鏈堜唤鍚勫ぉ婕忔崯閲�(11鍙峰埌15鍙�)--> + <select id="selectLossAmountOfDay11_15" resultType="com.dy.pipIrrGlobal.voSt.VoDayLoss"> + WITH intakeLossAmountDay AS (<include refid="selectLossAmountOfDay_with"/>) + SELECT inta.intakeId AS intakeId, + inta.intakeNum AS intakeNum, + inta.intakeLng AS intakeLng, + inta.intakeLat AS intakeLat, + tb11.lossAmount AS lossAmount11, + tb12.lossAmount AS lossAmount12, + tb13.lossAmount AS lossAmount13, + tb14.lossAmount AS lossAmount14, + tb15.lossAmount AS lossAmount15 + FROM JSON_TABLE( + #{intakesJson}, + '$[*]' COLUMNS ( + intakeId BIGINT PATH '$.intakeId', + intakeNum VARCHAR(100) PATH '$.intakeNum', + intakeLng DOUBLE PATH '$.intakeLng', + intakeLat DOUBLE PATH '$.intakeLat' + ) + ) inta + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 11 + ) as tb11 on tb11.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 12 + ) as tb12 on tb12.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 13 + ) as tb13 on tb13.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 14 + ) as tb14 on tb14.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 15 + ) as tb15 on tb15.intakeId = inta.intakeId + </select> + + <!--缁熻鎸囧畾鏈堜唤鍚勫ぉ婕忔崯閲�(20鍙峰埌16鍙�)--> + <select id="selectLossAmountOfDay16_20" resultType="com.dy.pipIrrGlobal.voSt.VoDayLoss"> + WITH intakeLossAmountDay AS (<include refid="selectLossAmountOfDay_with"/>) + SELECT inta.intakeId AS intakeId, + inta.intakeNum AS intakeNum, + inta.intakeLng AS intakeLng, + inta.intakeLat AS intakeLat, + tb16.lossAmount AS lossAmount16, + tb17.lossAmount AS lossAmount17, + tb18.lossAmount AS lossAmount18, + tb19.lossAmount AS lossAmount19, + tb20.lossAmount AS lossAmount20 + FROM JSON_TABLE( + #{intakesJson}, + '$[*]' COLUMNS ( + intakeId BIGINT PATH '$.intakeId', + intakeNum VARCHAR(100) PATH '$.intakeNum', + intakeLng DOUBLE PATH '$.intakeLng', + intakeLat DOUBLE PATH '$.intakeLat' + ) + ) inta + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 16 + ) as tb16 on tb16.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 17 + ) as tb17 on tb17.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 18 + ) as tb18 on tb18.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 19 + ) as tb19 on tb19.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 20 + ) as tb20 on tb20.intakeId = inta.intakeId + </select> + + <!--缁熻鎸囧畾鏈堜唤鍚勫ぉ婕忔崯閲�(21鍙峰埌25鍙�)--> + <select id="selectLossAmountOfDay21_25" resultType="com.dy.pipIrrGlobal.voSt.VoDayLoss"> + WITH intakeLossAmountDay AS (<include refid="selectLossAmountOfDay_with"/>) + SELECT inta.intakeId AS intakeId, + inta.intakeNum AS intakeNum, + inta.intakeLng AS intakeLng, + inta.intakeLat AS intakeLat, + tb21.lossAmount AS lossAmount21, + tb22.lossAmount AS lossAmount22, + tb23.lossAmount AS lossAmount23, + tb24.lossAmount AS lossAmount24, + tb25.lossAmount AS lossAmount25 + FROM JSON_TABLE( + #{intakesJson}, + '$[*]' COLUMNS ( + intakeId BIGINT PATH '$.intakeId', + intakeNum VARCHAR(100) PATH '$.intakeNum', + intakeLng DOUBLE PATH '$.intakeLng', + intakeLat DOUBLE PATH '$.intakeLat' + ) + ) inta + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 21 + ) as tb21 on tb21.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 22 + ) as tb22 on tb22.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 23 + ) as tb23 on tb23.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 24 + ) as tb24 on tb24.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 25 + ) as tb25 on tb25.intakeId = inta.intakeId + </select> + + <!--缁熻鎸囧畾鏈堜唤鍚勫ぉ婕忔崯閲�(26鍙峰埌31鍙�)--> + <select id="selectLossAmountOfDay26_31" resultType="com.dy.pipIrrGlobal.voSt.VoDayLoss"> + WITH intakeLossAmountDay AS (<include refid="selectLossAmountOfDay_with"/>) + SELECT inta.intakeId AS intakeId, + inta.intakeNum AS intakeNum, + inta.intakeLng AS intakeLng, + inta.intakeLat AS intakeLat, + tb26.lossAmount AS lossAmount26, + tb27.lossAmount AS lossAmount27, + tb28.lossAmount AS lossAmount28, + tb29.lossAmount AS lossAmount29, + tb30.lossAmount AS lossAmount30, + tb31.lossAmount AS lossAmount31 + FROM JSON_TABLE( + #{intakesJson}, + '$[*]' COLUMNS ( + intakeId BIGINT PATH '$.intakeId', + intakeNum VARCHAR(100) PATH '$.intakeNum', + intakeLng DOUBLE PATH '$.intakeLng', + intakeLat DOUBLE PATH '$.intakeLat' + ) + ) inta + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 26 + ) as tb26 on tb26.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 27 + ) as tb27 on tb27.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 28 + ) as tb28 on tb28.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 29 + ) as tb29 on tb29.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 30 + ) as tb30 on tb30.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.lossAmount AS lossAmount + FROM intakeLossAmountDay AS tb + WHERE YEAR(tb.dt) = #{year} + AND MONTH(tb.dt) = #{month} + AND DAY(tb.dt) = 31 + ) as tb31 on tb31.intakeId = inta.intakeId + </select> + + </mapper> \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/StIntakeAmountMonthMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/StIntakeAmountMonthMapper.xml index 8c63d23..cb32952 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/StIntakeAmountMonthMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/StIntakeAmountMonthMapper.xml @@ -123,4 +123,191 @@ group by intake_id </select> + + + + <!-- 涓烘煡璇㈢粺璁″彇姘村彛鏃ョ敤姘撮噺锛岀粺璁″彇姘村彛鏁伴噺 --> + <select id="selectIntakeCount4AmountMonth" resultType="java.lang.Long"> + SELECT COUNT(*) + FROM pr_intake tb + <where> + AND tb.deleted != 1 + <if test="intakeNum != null and intakeNum != ''"> + AND tb.name = #{intakeNum} + </if> + </where> + </select> + + <!-- 涓烘煡璇㈢粺璁″彇姘村彛鏃ョ敤姘撮噺锛屾煡璇竴椤靛彇姘村彛ID --> + <select id="selectIntakes4AmountMonth" resultType="com.dy.pipIrrGlobal.voSt.VoMonthAmount"> + SELECT id as intakeId, + name as intakeNum, + lat as intakeLat, + lng as intakeLng + FROM pr_intake + <where> + AND deleted != 1 + <if test="intakeNum != null and intakeNum != ''"> + AND name = #{intakeNum} + </if> + </where> + order by id DESC + <trim prefix="limit " > + <if test="start != null and count != null"> + #{start, javaType=Integer, jdbcType=INTEGER}, #{count, javaType=Integer, jdbcType=INTEGER} + </if> + </trim> + </select> + + <sql id="selectIntakeAmountOfMonth_with"> + SELECT intaId.intakeId AS intakeId, + siam.year AS `year`, + siam.month AS `month`, + siam.amount AS amount + FROM JSON_TABLE( + #{intakesJson}, + '$[*]' COLUMNS ( + intakeId BIGINT PATH '$.intakeId' + ) + ) intaId + INNER JOIN st_intake_amount_month siam ON siam.intake_id = intaId.intakeId + <where> + <if test="year != null "> + AND siam.year = #{year, javaType=Integer, jdbcType=INTEGER} + </if> + </where> + </sql> + + <!--缁熻鎸囧畾鏈堜唤鍚勬湀鐢ㄦ按閲�(1鍙峰埌6鏈�)--> + <select id="selectIntakeAmountOfMonth01_06" resultType="com.dy.pipIrrGlobal.voSt.VoMonthAmount"> + WITH intakeAmountMonth AS (<include refid="selectIntakeAmountOfMonth_with" />) + SELECT inta.intakeId AS intakeId, + inta.intakeNum AS intakeNum, + inta.intakeLng AS intakeLng, + inta.intakeLat AS intakeLat, + tb01.amount AS month1, + tb02.amount AS month2, + tb03.amount AS month3, + tb04.amount AS month4, + tb05.amount AS month5, + tb06.amount AS month6 + FROM JSON_TABLE( + #{intakesJson}, + '$[*]' COLUMNS ( + intakeId BIGINT PATH '$.intakeId', + intakeNum VARCHAR(100) PATH '$.intakeNum', + intakeLng DOUBLE PATH '$.intakeLng', + intakeLat DOUBLE PATH '$.intakeLat' + ) + ) inta + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 1 + ) as tb01 on tb01.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 2 + ) as tb02 on tb02.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 3 + ) as tb03 on tb03.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 4 + ) as tb04 on tb04.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 5 + ) as tb05 on tb05.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 6 + ) as tb06 on tb06.intakeId = inta.intakeId + </select> + + <!--缁熻鎸囧畾鏈堜唤鍚勬湀鐢ㄦ按閲�(7鍙峰埌12鏈�)--> + <select id="selectIntakeAmountOfMonth07_12" resultType="com.dy.pipIrrGlobal.voSt.VoMonthAmount"> + WITH intakeAmountMonth AS (<include refid="selectIntakeAmountOfMonth_with" />) + SELECT inta.intakeId AS intakeId, + inta.intakeNum AS intakeNum, + inta.intakeLng AS intakeLng, + inta.intakeLat AS intakeLat, + tb07.amount AS month7, + tb08.amount AS month8, + tb09.amount AS month9, + tb010.amount AS month10, + tb011.amount AS month11, + tb012.amount AS month12 + FROM JSON_TABLE( + #{intakesJson}, + '$[*]' COLUMNS ( + intakeId BIGINT PATH '$.intakeId', + intakeNum VARCHAR(100) PATH '$.intakeNum', + intakeLng DOUBLE PATH '$.intakeLng', + intakeLat DOUBLE PATH '$.intakeLat' + ) + ) inta + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 7 + ) as tb07 on tb07.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 8 + ) as tb08 on tb08.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 9 + ) as tb09 on tb09.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 10 + ) as tb010 on tb010.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 11 + ) as tb011 on tb011.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 12 + ) as tb012 on tb012.intakeId = inta.intakeId + </select> + </mapper> \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/StLossMonthMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/StLossMonthMapper.xml index 09143e9..0b2da89 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/StLossMonthMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/StLossMonthMapper.xml @@ -124,4 +124,189 @@ group by intake_id </select> + + <!-- 涓烘煡璇㈢粺璁″彇姘村彛鏃ユ紡鎹熼噺锛岀粺璁″彇姘村彛鏁伴噺 --> + <select id="selectIntakeCount4LossMonth" resultType="java.lang.Long"> + SELECT COUNT(*) + FROM pr_intake tb + <where> + AND tb.deleted != 1 + <if test="intakeNum != null and intakeNum != ''"> + AND tb.name = #{intakeNum} + </if> + </where> + </select> + + <!-- 涓烘煡璇㈢粺璁″彇姘村彛鏃ユ紡鎹熼噺锛屾煡璇竴椤靛彇姘村彛ID --> + <select id="selectIntakes4LossMonth" resultType="com.dy.pipIrrGlobal.voSt.VoMonthAmount"> + SELECT id as intakeId, + name as intakeNum, + lat as intakeLat, + lng as intakeLng + FROM pr_intake + <where> + AND deleted != 1 + <if test="intakeNum != null and intakeNum != ''"> + AND name = #{intakeNum} + </if> + </where> + order by id DESC + <trim prefix="limit " > + <if test="start != null and count != null"> + #{start, javaType=Integer, jdbcType=INTEGER}, #{count, javaType=Integer, jdbcType=INTEGER} + </if> + </trim> + </select> + + <sql id="selectLossAmountOfMonth_with"> + SELECT intaId.intakeId AS intakeId, + sld.year AS `year`, + sld.month AS `month`, + sld.amount AS amount + FROM JSON_TABLE( + #{intakesJson}, + '$[*]' COLUMNS ( + intakeId BIGINT PATH '$.intakeId' + ) + ) intaId + INNER JOIN st_loss_month sld ON sld.intake_id = intaId.intakeId + <where> + <if test="year != null "> + AND sld.year = #{year, javaType=Integer, jdbcType=INTEGER} + </if> + </where> + </sql> + + <!--缁熻鎸囧畾鏈堜唤鍚勬湀婕忔崯閲�(1鍙峰埌6鏈�)--> + <select id="selectLossAmountOfMonth01_06" resultType="com.dy.pipIrrGlobal.voSt.VoMonthAmount"> + WITH intakeLossAmountMonth AS (<include refid="selectLossAmountOfMonth_with" />) + SELECT inta.intakeId AS intakeId, + inta.intakeNum AS intakeNum, + inta.intakeLng AS intakeLng, + inta.intakeLat AS intakeLat, + tb01.amount AS month1, + tb02.amount AS month2, + tb03.amount AS month3, + tb04.amount AS month4, + tb05.amount AS month5, + tb06.amount AS month6 + FROM JSON_TABLE( + #{intakesJson}, + '$[*]' COLUMNS ( + intakeId BIGINT PATH '$.intakeId', + intakeNum VARCHAR(100) PATH '$.intakeNum', + intakeLng DOUBLE PATH '$.intakeLng', + intakeLat DOUBLE PATH '$.intakeLat' + ) + ) inta + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeLossAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 1 + ) as tb01 on tb01.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeLossAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 2 + ) as tb02 on tb02.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeLossAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 3 + ) as tb03 on tb03.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeLossAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 4 + ) as tb04 on tb04.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeLossAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 5 + ) as tb05 on tb05.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeLossAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 6 + ) as tb06 on tb06.intakeId = inta.intakeId + </select> + + <!--缁熻鎸囧畾鏈堜唤鍚勬湀婕忔崯閲�(7鍙峰埌12鏈�)--> + <select id="selectLossAmountOfMonth07_12" resultType="com.dy.pipIrrGlobal.voSt.VoMonthAmount"> + WITH intakeLossAmountMonth AS (<include refid="selectLossAmountOfMonth_with" />) + SELECT inta.intakeId AS intakeId, + inta.intakeNum AS intakeNum, + inta.intakeLng AS intakeLng, + inta.intakeLat AS intakeLat, + tb07.amount AS month7, + tb08.amount AS month8, + tb09.amount AS month9, + tb010.amount AS month10, + tb011.amount AS month11, + tb012.amount AS month12 + FROM JSON_TABLE( + #{intakesJson}, + '$[*]' COLUMNS ( + intakeId BIGINT PATH '$.intakeId', + intakeNum VARCHAR(100) PATH '$.intakeNum', + intakeLng DOUBLE PATH '$.intakeLng', + intakeLat DOUBLE PATH '$.intakeLat' + ) + ) inta + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeLossAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 7 + ) as tb07 on tb07.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeLossAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 8 + ) as tb08 on tb08.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeLossAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 9 + ) as tb09 on tb09.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeLossAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 10 + ) as tb010 on tb010.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeLossAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 11 + ) as tb011 on tb011.intakeId = inta.intakeId + LEFT JOIN ( + SELECT tb.intakeId AS intakeId, + tb.amount AS amount + FROM intakeLossAmountMonth AS tb + WHERE tb.year = #{year} + AND tb.month = 12 + ) as tb012 on tb012.intakeId = inta.intakeId + </select> + </mapper> \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/Temp4DeleteMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/Temp4DeleteMapper.xml index 23a411e..7abeae4 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/Temp4DeleteMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/Temp4DeleteMapper.xml @@ -1,18 +1,140 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.dy.pipIrrGlobal.daoTmp.DeleteMapper"> - <select id="selectAllStLossMonth" resultType="com.dy.pipIrrGlobal.voTmp.VoStLossMonth"> - select id as id, - intake_id as intakeId , - year as year, - month as month, - amount as amount - from st_loss_month - order by id DESC, intake_id DESC, year DESC, month DESC - </select> + <!-- 婕忔崯缁熻鐩稿叧 --> + <select id="selectAllStLossDay" resultType="com.dy.pipIrrGlobal.voTmp.VoStLossAmountDay"> + select id as id, + intake_id as intakeId , + dt as dt, + loss_amount as amount + from rm_loss_day + order by intake_id DESC, id DESC + </select> - <delete id="deleteByMainKey" parameterType="java.lang.Long"> - delete from st_loss_year - where id = #{id,jdbcType=BIGINT} - </delete> + <delete id="deleteStLossDayById" parameterType="java.lang.Long"> + delete from rm_loss_day + where id = #{id,jdbcType=BIGINT} + </delete> + + <select id="selectAllStLossMonth" resultType="com.dy.pipIrrGlobal.voTmp.VoStLossAmountMonth"> + select id as id, + intake_id as intakeId , + year as year, + month as month, + amount as amount + from st_loss_month + order by intake_id DESC, id DESC + </select> + + <delete id="deleteStLossMonthById" parameterType="java.lang.Long"> + delete from st_loss_month + where id = #{id,jdbcType=BIGINT} + </delete> + + <select id="selectAllStLossYear" resultType="com.dy.pipIrrGlobal.voTmp.VoStLossAmountYear"> + select id as id, + intake_id as intakeId , + year as year, + amount as amount + from st_loss_year + order by intake_id DESC, id DESC + </select> + + <delete id="deleteStLossYearById" parameterType="java.lang.Long"> + delete from st_loss_year + where id = #{id,jdbcType=BIGINT} + </delete> + + + + <!-- 鍙栨按鍙g粺璁$浉鍏� --> + <select id="selectAllStIntakeDay" resultType="com.dy.pipIrrGlobal.voTmp.VoStIntakeAmountDay"> + select id as id, + intake_id as intakeId , + dt as dt, + amount as amount + from rm_intake_amount_day + order by intake_id DESC, id DESC + </select> + + <delete id="deleteStIntakeDayById" parameterType="java.lang.Long"> + delete from rm_intake_amount_day + where id = #{id,jdbcType=BIGINT} + </delete> + + <select id="selectAllStIntakeMonth" resultType="com.dy.pipIrrGlobal.voTmp.VoStIntakeAmountMonth"> + select id as id, + intake_id as intakeId , + year as year, + month as month, + amount as amount + from st_intake_amount_month + order by intake_id DESC, id DESC + </select> + + <delete id="deleteStIntakeMonthById" parameterType="java.lang.Long"> + delete from st_intake_amount_month + where id = #{id,jdbcType=BIGINT} + </delete> + + <select id="selectAllStIntakeYear" resultType="com.dy.pipIrrGlobal.voTmp.VoStIntakeAmountYear"> + select id as id, + intake_id as intakeId , + year as year, + amount as amount + from st_intake_amount_year + order by intake_id DESC, id DESC + </select> + + <delete id="deleteStIntakeYearById" parameterType="java.lang.Long"> + delete from st_intake_amount_year + where id = #{id,jdbcType=BIGINT} + </delete> + + + + <!-- 鍐滄埛缁熻鐩稿叧 --> + <select id="selectAllStClientDay" resultType="com.dy.pipIrrGlobal.voTmp.VoStClientAmountDay"> + select id as id, + client_id as clientId , + dt as dt, + amount as amount + from rm_client_amount_day + order by client_id DESC, id DESC + </select> + + <delete id="deleteStClientDayById" parameterType="java.lang.Long"> + delete from rm_client_amount_day + where id = #{id,jdbcType=BIGINT} + </delete> + + <select id="selectAllStClientMonth" resultType="com.dy.pipIrrGlobal.voTmp.VoStClientAmountMonth"> + select id as id, + client_id as clientId , + year as year, + month as month, + amount as amount + from st_client_amount_month + order by client_id DESC, id DESC + </select> + + <delete id="deleteStClientMonthById" parameterType="java.lang.Long"> + delete from st_client_amount_month + where id = #{id,jdbcType=BIGINT} + </delete> + + <select id="selectAllStClientYear" resultType="com.dy.pipIrrGlobal.voTmp.VoStClientAmountYear"> + select id as id, + client_id as clientId , + year as year, + amount as amount + from st_client_amount_year + order by client_id DESC, id DESC + </select> + + <delete id="deleteStClientYearById" parameterType="java.lang.Long"> + delete from st_client_amount_year + where id = #{id,jdbcType=BIGINT} + </delete> + </mapper> \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/MonitorSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/MonitorSv.java index 442bc71..ae9cb03 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/MonitorSv.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/MonitorSv.java @@ -61,7 +61,7 @@ } /** - * 鏌ヨRTU鍦ㄩ�氫俊涓棿浠朵腑鐨勬敮琛岀姸鎬� + * 鏌ヨRTU鍦ㄩ�氫俊涓棿浠朵腑鐨勫湪绾跨姸鎬� * @param rtuAddr * @return */ diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intaker/IntakerCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intaker/IntakerCtrl.java new file mode 100644 index 0000000..291b0f5 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intaker/IntakerCtrl.java @@ -0,0 +1,72 @@ +package com.dy.pipIrrStatistics.intaker; + +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.VoDayIntakeAmount; +import com.dy.pipIrrGlobal.voSt.VoMonthAmount; +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.List; + +/** + * @Author: liurunyu + * @Date: 2024/12/12 16:24 + * @Description 鏈夊叧鍙栨按鍙g敤姘寸粺璁� + */ +@Slf4j +@RestController +@RequestMapping(path="intake") +@RequiredArgsConstructor +public class IntakerCtrl { + + private IntakerSv sv; + + @Autowired + public void setSv(IntakerSv sv){ + this.sv = sv ; + } + + /** + * 鏌ヨ鎸囧畾鏈堜唤鍚勬棩鐢ㄦ按閲� + * @param qo + * @return + */ + @GetMapping(path = "/amountOfDay") + @SsoAop() + public BaseResponse<QueryResultVo<List<VoDayIntakeAmount>>> amountOfDay(IntakerQo qo) throws Exception { + String yearMonth = qo.getYearMonth(); + if(yearMonth == null || yearMonth.trim().equals("")) { + return BaseResponseUtils.buildErrorMsg("鏌ヨ鏉′欢骞存湀涓嶈兘涓虹┖"); + } + qo.startDt = DateTime.dateFrom_yyyy_MM_dd(yearMonth + "-01"); + qo.endDt = DateTime.dateFrom_yyyy_MM_dd(yearMonth + "-31"); + + int[] ymd = DateTime.yyyy_MM_ymdGroup(yearMonth) ; + qo.year = ymd[0] ; + qo.month = ymd[1] ; + + return BaseResponseUtils.buildSuccess(this.sv.amountOfDay(qo)); + } + + /** + * 鏌ヨ鎸囧畾鏈堜唤鍚勬棩鐢ㄦ按閲� + * @param qo + * @return + */ + @GetMapping(path = "/amountOfMonth") + @SsoAop() + public BaseResponse<QueryResultVo<List<VoMonthAmount>>> amountOfMonth(IntakerQo qo) throws Exception { + if(qo.getYear() == null) { + return BaseResponseUtils.buildErrorMsg("鏌ヨ鏉′欢骞村害涓嶈兘涓虹┖"); + } + return BaseResponseUtils.buildSuccess(this.sv.amountOfMonth(qo)); + } +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intaker/IntakerQo.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intaker/IntakerQo.java new file mode 100644 index 0000000..352bc63 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intaker/IntakerQo.java @@ -0,0 +1,48 @@ +package com.dy.pipIrrStatistics.intaker; + +import com.dy.common.webUtil.QueryConditionVo; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.Date; + +/** + * @Author: liurunyu + * @Date: 2024/12/12 16:34 + * @Description + */ +@Data +@EqualsAndHashCode(callSuper = false) +public class IntakerQo extends QueryConditionVo { + + /** + * 缁熻骞存湀 + */ + public String yearMonth; + + /** + * 鏌ヨ寮�濮嬫棩鏈燂紙骞存湀鏃ワ級 + */ + public Date startDt ; + + /** + * 鏌ヨ鎴鏃ユ湡锛堝勾鏈堟棩锛� + */ + public Date endDt ; + + + /** + * 骞� + */ + public Integer year; + + /** + * 鏈� + */ + public Integer month; + + /** + * 鍙栨按鍙g紪鍙� + */ + public String intakeNum; +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intaker/IntakerSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intaker/IntakerSv.java new file mode 100644 index 0000000..73465aa --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intaker/IntakerSv.java @@ -0,0 +1,188 @@ +package com.dy.pipIrrStatistics.intaker; + +import com.alibaba.fastjson2.JSON; +import com.dy.common.webUtil.QueryResultVo; +import com.dy.pipIrrGlobal.daoRm.RmIntakeAmountDayMapper; +import com.dy.pipIrrGlobal.daoSt.StIntakeAmountMonthMapper; +import com.dy.pipIrrGlobal.voSt.VoDayIntakeAmount; +import com.dy.pipIrrGlobal.voSt.VoMonthAmount; +import lombok.extern.slf4j.Slf4j; +import org.apache.dubbo.common.utils.PojoUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.text.ParseException; +import java.util.List; +import java.util.Map; + +/** + * @Author: liurunyu + * @Date: 2024/12/12 16:24 + * @Description + */ +@Slf4j +@Service +public class IntakerSv { + + @Autowired + private RmIntakeAmountDayMapper dayDao ; + + @Autowired + private StIntakeAmountMonthMapper monthDao ; + + + /** + * 缁熻鎸囧畾鏈堜唤鍚勫ぉ鐢ㄦ按閲� + * @param qo + * @return + */ + public QueryResultVo<List<VoDayIntakeAmount>> amountOfDay(IntakerQo qo) throws ParseException { + QueryResultVo<List<VoDayIntakeAmount>> rsVo = new QueryResultVo<>() ; + // 鐢熸垚鏌ヨ鍙傛暟 + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ; + // 鑾峰彇绗﹀悎鏉′欢鐨勮褰曟暟 + Long itemTotal = dayDao.selectIntakeCount4AmountDay(qo.intakeNum) ; + + if(itemTotal != null && itemTotal > 0){ + rsVo.pageSize = qo.pageSize ; + rsVo.pageCurr = qo.pageCurr ; + rsVo.calculateAndSet(itemTotal, params); + + List<VoDayIntakeAmount> list = dayDao.selectIntakes4AmountDay(params); + if(list == null || list.size() == 0){ + rsVo.obj = list ; + }else{ + String json = JSON.toJSONString(list) ; + params.put("intakesJson", json); + + List<VoDayIntakeAmount> list01_05 = dayDao.selectIntakeAmountOfDay01_05(params); + if(list01_05 != null && list01_05.size() > 0){ + //涓嬮潰1鍒�31鍙峰垎浜�6涓煡璇紝鍘熷洜鏄湪涓�涓煡璇腑锛岄潪甯告參锛屼笉鐭ラ亾浠�涔堝師鍥狅紝涔熻鏄瓙鏌ヨ澶鐨勫師鍥� + List<VoDayIntakeAmount> list06_10 = dayDao.selectIntakeAmountOfDay06_10(params); + List<VoDayIntakeAmount> list11_15 = dayDao.selectIntakeAmountOfDay11_15(params); + List<VoDayIntakeAmount> list16_20 = dayDao.selectIntakeAmountOfDay16_20(params); + List<VoDayIntakeAmount> list21_25 = dayDao.selectIntakeAmountOfDay21_25(params); + List<VoDayIntakeAmount> list26_31 = dayDao.selectIntakeAmountOfDay26_31(params); + this.merge(list01_05, list06_10, list11_15, list16_20, list21_25, list26_31); + } + rsVo.obj = list01_05 ; + } + } + return rsVo ; + } + + private void merge(List<VoDayIntakeAmount> list01_05, + List<VoDayIntakeAmount> list06_10, + List<VoDayIntakeAmount> list11_15, + List<VoDayIntakeAmount> list16_20, + List<VoDayIntakeAmount> list21_25, + List<VoDayIntakeAmount> list26_31){ + for(VoDayIntakeAmount vo01_05 : list01_05){ + for(VoDayIntakeAmount vo06_10 : list06_10){ + if(vo01_05.intakeId.longValue() == vo06_10.intakeId.longValue()){ + vo01_05.amount6 = vo06_10.amount6 ; + vo01_05.amount7 = vo06_10.amount7 ; + vo01_05.amount8 = vo06_10.amount8 ; + vo01_05.amount9 = vo06_10.amount9 ; + vo01_05.amount10 = vo06_10.amount10 ; + break ; + } + } + for(VoDayIntakeAmount vo11_15 : list11_15){ + if(vo01_05.intakeId.longValue() == vo11_15.intakeId.longValue()){ + vo01_05.amount11 = vo11_15.amount11 ; + vo01_05.amount12 = vo11_15.amount12 ; + vo01_05.amount13 = vo11_15.amount13 ; + vo01_05.amount14 = vo11_15.amount14 ; + vo01_05.amount15 = vo11_15.amount15 ; + break ; + } + } + for(VoDayIntakeAmount vo16_20 : list16_20){ + if(vo01_05.intakeId.longValue() == vo16_20.intakeId.longValue()){ + vo01_05.amount16 = vo16_20.amount16 ; + vo01_05.amount17 = vo16_20.amount17 ; + vo01_05.amount18 = vo16_20.amount18 ; + vo01_05.amount19 = vo16_20.amount19 ; + vo01_05.amount20 = vo16_20.amount20 ; + break ; + } + } + for(VoDayIntakeAmount vo21_25 : list21_25){ + if(vo01_05.intakeId.longValue() == vo21_25.intakeId.longValue()){ + vo01_05.amount21 = vo21_25.amount21 ; + vo01_05.amount22 = vo21_25.amount22 ; + vo01_05.amount23 = vo21_25.amount23 ; + vo01_05.amount24 = vo21_25.amount24 ; + vo01_05.amount25 = vo21_25.amount25 ; + break ; + } + } + for(VoDayIntakeAmount vo26_31 : list26_31){ + if(vo01_05.intakeId.longValue() == vo26_31.intakeId.longValue()){ + vo01_05.amount26 = vo26_31.amount26 ; + vo01_05.amount27 = vo26_31.amount27 ; + vo01_05.amount28 = vo26_31.amount28 ; + vo01_05.amount29 = vo26_31.amount29 ; + vo01_05.amount30 = vo26_31.amount30 ; + vo01_05.amount31 = vo26_31.amount31 ; + break ; + } + } + } + } + + + /** + * 缁熻鎸囧畾鏈堜唤鍚勬湀鐢ㄦ按閲� + * @param qo + * @return + */ + public QueryResultVo<List<VoMonthAmount>> amountOfMonth(IntakerQo qo) throws ParseException { + QueryResultVo<List<VoMonthAmount>> rsVo = new QueryResultVo<>() ; + // 鐢熸垚鏌ヨ鍙傛暟 + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ; + // 鑾峰彇绗﹀悎鏉′欢鐨勮褰曟暟 + Long itemTotal = monthDao.selectIntakeCount4AmountMonth(qo.intakeNum) ; + + if(itemTotal != null && itemTotal > 0){ + rsVo.pageSize = qo.pageSize ; + rsVo.pageCurr = qo.pageCurr ; + rsVo.calculateAndSet(itemTotal, params); + + List<VoMonthAmount> list = monthDao.selectIntakes4AmountMonth(params); + if(list == null || list.size() == 0){ + rsVo.obj = list ; + }else{ + String json = JSON.toJSONString(list) ; + params.put("intakesJson", json); + + List<VoMonthAmount> list01_06 = monthDao.selectIntakeAmountOfMonth01_06(params); + if(list01_06 != null && list01_06.size() > 0){ + //涓嬮潰1鍒�12鏈堝垎浜�2涓煡璇紝鍘熷洜鏄湪涓�涓煡璇腑锛岄潪甯告參锛屼笉鐭ラ亾浠�涔堝師鍥狅紝涔熻鏄瓙鏌ヨ澶鐨勫師鍥� + List<VoMonthAmount> list07_12 = monthDao.selectIntakeAmountOfMonth07_12(params); + this.merge(list01_06, list07_12); + } + rsVo.obj = list01_06 ; + } + } + return rsVo ; + } + + private void merge(List<VoMonthAmount> list01_06, + List<VoMonthAmount> list07_12){ + for(VoMonthAmount vo01_06 : list01_06){ + for(VoMonthAmount vo07_12 : list07_12){ + if(vo01_06.intakeId.longValue() == vo07_12.intakeId.longValue()){ + vo01_06.month7 = vo07_12.month7 ; + vo01_06.month8 = vo07_12.month8 ; + vo01_06.month9 = vo07_12.month9 ; + vo01_06.month10 = vo07_12.month10 ; + vo01_06.month11 = vo07_12.month11 ; + vo01_06.month12 = vo07_12.month12 ; + break ; + } + } + } + } +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/loss/LossCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/loss/LossCtrl.java new file mode 100644 index 0000000..2e84f53 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/loss/LossCtrl.java @@ -0,0 +1,73 @@ +package com.dy.pipIrrStatistics.loss; + +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.VoDayLoss; +import com.dy.pipIrrGlobal.voSt.VoMonthAmount; +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.List; + +/** + * @Author: liurunyu + * @Date: 2024/12/12 8:33 + * @Description 鏈夊叧婕忔崯鐨勭粺璁� + */ +@Slf4j +@RestController +@RequestMapping(path="loss") +@RequiredArgsConstructor +public class LossCtrl { + + private LossSv sv; + + @Autowired + public void setSv(LossSv sv){ + this.sv = sv ; + } + + /** + * 鏌ヨ鎸囧畾鏈堜唤鍚勬棩婕忔崯閲� + * @param qo + * @return + */ + @GetMapping(path = "/lossAmountOfDay") + @SsoAop() + public BaseResponse<QueryResultVo<List<VoDayLoss>>> lossAmountOfDay(LossQo qo) throws Exception { + String yearMonth = qo.getYearMonth(); + if(yearMonth == null || yearMonth.trim().equals("")) { + return BaseResponseUtils.buildErrorMsg("鏌ヨ鏉′欢骞存湀涓嶈兘涓虹┖"); + } + qo.startDt = DateTime.dateFrom_yyyy_MM_dd(yearMonth + "-01"); + qo.endDt = DateTime.dateFrom_yyyy_MM_dd(yearMonth + "-31"); + + int[] ymd = DateTime.yyyy_MM_ymdGroup(yearMonth) ; + qo.year = ymd[0] ; + qo.month = ymd[1] ; + + return BaseResponseUtils.buildSuccess(this.sv.lossAmountOfDay(qo)); + } + + /** + * 鏌ヨ鎸囧畾鏈堜唤鍚勬棩婕忔崯閲� + * @param qo + * @return + */ + @GetMapping(path = "/lossAmountOfMonth") + @SsoAop() + public BaseResponse<QueryResultVo<List<VoMonthAmount>>> lossAmountOfMonth(LossQo qo) throws Exception { + if(qo.getYear() == null) { + return BaseResponseUtils.buildErrorMsg("鏌ヨ鏉′欢骞村害涓嶈兘涓虹┖"); + } + return BaseResponseUtils.buildSuccess(this.sv.lossAmountOfMonth(qo)); + } + +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/loss/LossQo.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/loss/LossQo.java new file mode 100644 index 0000000..619ab8b --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/loss/LossQo.java @@ -0,0 +1,49 @@ +package com.dy.pipIrrStatistics.loss; + +import com.dy.common.webUtil.QueryConditionVo; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.Date; + +/** + * @Author: liurunyu + * @Date: 2024/12/12 8:37 + * @Description + */ + +@Data +@EqualsAndHashCode(callSuper = false) +public class LossQo extends QueryConditionVo { + + /** + * 缁熻骞存湀 + */ + public String yearMonth; + + /** + * 鏌ヨ寮�濮嬫棩鏈燂紙骞存湀鏃ワ級 + */ + public Date startDt ; + + /** + * 鏌ヨ鎴鏃ユ湡锛堝勾鏈堟棩锛� + */ + public Date endDt ; + + + /** + * 骞� + */ + public Integer year; + + /** + * 鏈� + */ + public Integer month; + + /** + * 鍙栨按鍙g紪鍙� + */ + public String intakeNum; +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/loss/LossSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/loss/LossSv.java new file mode 100644 index 0000000..4692924 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/loss/LossSv.java @@ -0,0 +1,188 @@ +package com.dy.pipIrrStatistics.loss; + +import com.alibaba.fastjson2.JSON; +import com.dy.common.webUtil.QueryResultVo; +import com.dy.pipIrrGlobal.daoRm.RmLossDayMapper; +import com.dy.pipIrrGlobal.daoSt.StLossMonthMapper; +import com.dy.pipIrrGlobal.voSt.VoDayLoss; +import com.dy.pipIrrGlobal.voSt.VoMonthAmount; +import lombok.extern.slf4j.Slf4j; +import org.apache.dubbo.common.utils.PojoUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.text.ParseException; +import java.util.List; +import java.util.Map; + +/** + * @Author: liurunyu + * @Date: 2024/12/12 8:33 + * @Description + */ + +@Slf4j +@Service +public class LossSv { + + @Autowired + private RmLossDayMapper dayDao; + + @Autowired + private StLossMonthMapper monthDao; + + /** + * 缁熻鎸囧畾鏈堜唤鍚勫ぉ婕忔崯閲� + * @param qo + * @return + */ + public QueryResultVo<List<VoDayLoss>> lossAmountOfDay(LossQo qo) throws ParseException { + QueryResultVo<List<VoDayLoss>> rsVo = new QueryResultVo<>() ; + // 鐢熸垚鏌ヨ鍙傛暟 + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ; + // 鑾峰彇绗﹀悎鏉′欢鐨勮褰曟暟 + Long itemTotal = dayDao.selectIntakeCount4LossDay(qo.intakeNum) ; + + if(itemTotal != null && itemTotal > 0){ + rsVo.pageSize = qo.pageSize ; + rsVo.pageCurr = qo.pageCurr ; + rsVo.calculateAndSet(itemTotal, params); + + List<VoDayLoss> list = dayDao.selectIntakes4LossDay(params); + if(list == null || list.size() == 0){ + rsVo.obj = list ; + }else{ + String json = JSON.toJSONString(list) ; + params.put("intakesJson", json); + + List<VoDayLoss> list01_05 = dayDao.selectLossAmountOfDay01_05(params); + if(list01_05 != null && list01_05.size() > 0){ + //涓嬮潰1鍒�31鍙峰垎浜�6涓煡璇紝鍘熷洜鏄湪涓�涓煡璇腑锛岄潪甯告參锛屼笉鐭ラ亾浠�涔堝師鍥狅紝涔熻鏄瓙鏌ヨ澶鐨勫師鍥� + List<VoDayLoss> list06_10 = dayDao.selectLossAmountOfDay06_10(params); + List<VoDayLoss> list11_15 = dayDao.selectLossAmountOfDay11_15(params); + List<VoDayLoss> list16_20 = dayDao.selectLossAmountOfDay16_20(params); + List<VoDayLoss> list21_25 = dayDao.selectLossAmountOfDay21_25(params); + List<VoDayLoss> list26_31 = dayDao.selectLossAmountOfDay26_31(params); + this.merge(list01_05, list06_10, list11_15, list16_20, list21_25, list26_31); + } + rsVo.obj = list01_05 ; + } + } + return rsVo ; + } + + private void merge(List<VoDayLoss> list01_05, + List<VoDayLoss> list06_10, + List<VoDayLoss> list11_15, + List<VoDayLoss> list16_20, + List<VoDayLoss> list21_25, + List<VoDayLoss> list26_31){ + for(VoDayLoss vo01_05 : list01_05){ + for(VoDayLoss vo06_10 : list06_10){ + if(vo01_05.intakeId.longValue() == vo06_10.intakeId.longValue()){ + vo01_05.lossAmount6 = vo06_10.lossAmount6 ; + vo01_05.lossAmount7 = vo06_10.lossAmount7 ; + vo01_05.lossAmount8 = vo06_10.lossAmount8 ; + vo01_05.lossAmount9 = vo06_10.lossAmount9 ; + vo01_05.lossAmount10 = vo06_10.lossAmount10 ; + break ; + } + } + for(VoDayLoss vo11_15 : list11_15){ + if(vo01_05.intakeId.longValue() == vo11_15.intakeId.longValue()){ + vo01_05.lossAmount11 = vo11_15.lossAmount11 ; + vo01_05.lossAmount12 = vo11_15.lossAmount12 ; + vo01_05.lossAmount13 = vo11_15.lossAmount13 ; + vo01_05.lossAmount14 = vo11_15.lossAmount14 ; + vo01_05.lossAmount15 = vo11_15.lossAmount15 ; + break ; + } + } + for(VoDayLoss vo16_20 : list16_20){ + if(vo01_05.intakeId.longValue() == vo16_20.intakeId.longValue()){ + vo01_05.lossAmount16 = vo16_20.lossAmount16 ; + vo01_05.lossAmount17 = vo16_20.lossAmount17 ; + vo01_05.lossAmount18 = vo16_20.lossAmount18 ; + vo01_05.lossAmount19 = vo16_20.lossAmount19 ; + vo01_05.lossAmount20 = vo16_20.lossAmount20 ; + break ; + } + } + for(VoDayLoss vo21_25 : list21_25){ + if(vo01_05.intakeId.longValue() == vo21_25.intakeId.longValue()){ + vo01_05.lossAmount21 = vo21_25.lossAmount21 ; + vo01_05.lossAmount22 = vo21_25.lossAmount22 ; + vo01_05.lossAmount23 = vo21_25.lossAmount23 ; + vo01_05.lossAmount24 = vo21_25.lossAmount24 ; + vo01_05.lossAmount25 = vo21_25.lossAmount25 ; + break ; + } + } + for(VoDayLoss vo26_31 : list26_31){ + if(vo01_05.intakeId.longValue() == vo26_31.intakeId.longValue()){ + vo01_05.lossAmount26 = vo26_31.lossAmount26 ; + vo01_05.lossAmount27 = vo26_31.lossAmount27 ; + vo01_05.lossAmount28 = vo26_31.lossAmount28 ; + vo01_05.lossAmount29 = vo26_31.lossAmount29 ; + vo01_05.lossAmount30 = vo26_31.lossAmount30 ; + vo01_05.lossAmount31 = vo26_31.lossAmount31 ; + break ; + } + } + } + } + + + /** + * 缁熻鎸囧畾鏈堜唤鍚勬湀婕忔崯閲� + * @param qo + * @return + */ + public QueryResultVo<List<VoMonthAmount>> lossAmountOfMonth(LossQo qo) throws ParseException { + QueryResultVo<List<VoMonthAmount>> rsVo = new QueryResultVo<>() ; + // 鐢熸垚鏌ヨ鍙傛暟 + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ; + // 鑾峰彇绗﹀悎鏉′欢鐨勮褰曟暟 + Long itemTotal = monthDao.selectIntakeCount4LossMonth(qo.intakeNum) ; + + if(itemTotal != null && itemTotal > 0){ + rsVo.pageSize = qo.pageSize ; + rsVo.pageCurr = qo.pageCurr ; + rsVo.calculateAndSet(itemTotal, params); + + List<VoMonthAmount> list = monthDao.selectIntakes4LossMonth(params); + if(list == null || list.size() == 0){ + rsVo.obj = list ; + }else{ + String json = JSON.toJSONString(list) ; + params.put("intakesJson", json); + + List<VoMonthAmount> list01_06 = monthDao.selectLossAmountOfMonth01_06(params); + if(list01_06 != null && list01_06.size() > 0){ + //涓嬮潰1鍒�12鏈堝垎浜�2涓煡璇紝鍘熷洜鏄湪涓�涓煡璇腑锛岄潪甯告參锛屼笉鐭ラ亾浠�涔堝師鍥狅紝涔熻鏄瓙鏌ヨ澶鐨勫師鍥� + List<VoMonthAmount> list07_12 = monthDao.selectLossAmountOfMonth07_12(params); + this.merge(list01_06, list07_12); + } + rsVo.obj = list01_06 ; + } + } + return rsVo ; + } + + private void merge(List<VoMonthAmount> list01_06, + List<VoMonthAmount> list07_12){ + for(VoMonthAmount vo01_06 : list01_06){ + for(VoMonthAmount vo07_12 : list07_12){ + if(vo01_06.intakeId.longValue() == vo07_12.intakeId.longValue()){ + vo01_06.month7 = vo07_12.month7 ; + vo01_06.month8 = vo07_12.month8 ; + vo01_06.month9 = vo07_12.month9 ; + vo01_06.month10 = vo07_12.month10 ; + vo01_06.month11 = vo07_12.month11 ; + vo01_06.month12 = vo07_12.month12 ; + break ; + } + } + } + } +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/delSome/DelSomeClientAmountSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/delSome/DelSomeClientAmountSv.java new file mode 100644 index 0000000..8f3b788 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/delSome/DelSomeClientAmountSv.java @@ -0,0 +1,127 @@ +package com.dy.pipIrrTemp.delSome; + +import com.dy.pipIrrGlobal.daoTmp.DeleteMapper; +import com.dy.pipIrrGlobal.voTmp.VoStClientAmountDay; +import com.dy.pipIrrGlobal.voTmp.VoStClientAmountMonth; +import com.dy.pipIrrGlobal.voTmp.VoStClientAmountYear; +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.List; + + +/** + * @Author: liurunyu + * @Date: 2024/12/11 10:54 + * @Description + */ + +@Slf4j +@Service +public class DelSomeClientAmountSv { + + private DeleteMapper dao; + + @Autowired + private void setDao(DeleteMapper dao){ + this.dao = dao; + } + + public void delStClientDay(){ + VoStClientAmountDay first = null ; + List<VoStClientAmountDay> list = dao.selectAllStClientDay() ; + if(list != null && list.size() > 0){ + for(VoStClientAmountDay vo : list){ + if(first == null){ + first = vo ; + }else{ + if(first.clientId.longValue() != vo.clientId.longValue()){ + //鍐滄埛鍙樹簡 + first = vo ; + }else{ + if(!first.dt.equals(vo.dt)) { + //鏃ユ湡鍙樹簡 + first = vo ; + }else{ + //鍚屼竴涓啘鎴峰悓鏃ユ湡 + doDelStClientDay(vo.id) ; + } + } + } + } + } + } + + public void delStClientMonth(){ + VoStClientAmountMonth first = null ; + List<VoStClientAmountMonth> list = dao.selectAllStClientMonth() ; + if(list != null && list.size() > 0){ + for(VoStClientAmountMonth vo : list){ + if(first == null){ + first = vo ; + }else{ + if(first.clientId.longValue() != vo.clientId.longValue()){ + //鍐滄埛鍙樹簡 + first = vo ; + }else{ + if(first.year.intValue() != vo.year.intValue()) { + //骞村害鍙樹簡 + first = vo ; + }else{ + if(first.month.intValue() != vo.month.intValue()){ + //鏈堜唤鍙樹簡 + first = vo ; + }else{ + //鍚屼竴涓啘鎴峰悓骞村悓鏈� + doDelStClientMonth(vo.id) ; + } + } + } + } + } + } + } + + + public void delStClientYear(){ + VoStClientAmountYear first = null ; + List<VoStClientAmountYear> list = dao.selectAllStClientYear() ; + if(list != null && list.size() > 0){ + for(VoStClientAmountYear vo : list){ + if(first == null){ + first = vo ; + }else{ + if(first.clientId.longValue() != vo.clientId.longValue()){ + //鍐滄埛鍙樹簡 + first = vo ; + }else{ + if(first.year.intValue() != vo.year.intValue()) { + //骞村害鍙樹簡 + first = vo ; + }else{ + //鍚屼竴涓啘鎴峰悓骞� + doDelStClientYear(vo.id) ; + } + } + } + } + } + } + @Transactional + int doDelStClientDay(Long id){ + return dao.deleteStClientDayById(id) ; + } + + @Transactional + int doDelStClientMonth(Long id){ + return dao.deleteStClientMonthById(id) ; + } + + @Transactional + int doDelStClientYear(Long id){ + return dao.deleteStClientYearById(id) ; + } + +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/delSome/DelSomeCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/delSome/DelSomeCtrl.java index 6f6eb03..dd71b08 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/delSome/DelSomeCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/delSome/DelSomeCtrl.java @@ -1,5 +1,6 @@ package com.dy.pipIrrTemp.delSome; +import com.dy.common.aop.SsoAop; import com.dy.common.webUtil.BaseResponse; import com.dy.common.webUtil.BaseResponseUtils; import lombok.extern.slf4j.Slf4j; @@ -19,11 +20,23 @@ @SuppressWarnings("unchecked")//java鐗堟湰瓒婇珮锛屽娉涘瀷绾︽潫瓒婁弗锛屾墍浠ラ厤缃甋uppressWarnings("unchecked") public class DelSomeCtrl { - private DelSomeSv sv; + private DelSomeLossAmountSv lossAmountSv; + private DelSomeIntakeAmountSv intakeAmountSv; + private DelSomeClientAmountSv clientAmountSv; @Autowired - private void setSv(DelSomeSv sv) { - this.sv = sv; + private void setSv(DelSomeLossAmountSv sv) { + this.lossAmountSv = sv; + } + + @Autowired + private void setSv(DelSomeIntakeAmountSv sv) { + this.intakeAmountSv = sv; + } + + @Autowired + private void setSv(DelSomeClientAmountSv sv) { + this.clientAmountSv = sv; } /** @@ -31,8 +44,37 @@ * @return */ @GetMapping(path = "deleteSomeStatisticLossAmount") + @SsoAop() public BaseResponse<Boolean> deleteSomeStatisticLossAmount(){ - this.sv.delStLossMonth(); + this.lossAmountSv.delStLossDay(); + this.lossAmountSv.delStLossMonth(); + this.lossAmountSv.delStLossYear(); + return BaseResponseUtils.buildSuccess(true); + } + + /** + * 鍒犻櫎涓�浜涘彇姘村彛缁熻 + * @return + */ + @GetMapping(path = "deleteSomeStatisticIntakeAmount") + @SsoAop() + public BaseResponse<Boolean> deleteSomeStatisticIntakeAmount(){ + this.intakeAmountSv.delStIntakeDay(); + this.intakeAmountSv.delStIntakeMonth(); + this.intakeAmountSv.delStIntakeYear(); + return BaseResponseUtils.buildSuccess(true); + } + + /** + * 鍒犻櫎涓�浜涘啘鎴风粺璁� + * @return + */ + @GetMapping(path = "deleteSomeStatisticClientAmount") + @SsoAop() + public BaseResponse<Boolean> deleteSomeStatisticClientAmount(){ + this.clientAmountSv.delStClientDay(); + this.clientAmountSv.delStClientMonth(); + this.clientAmountSv.delStClientYear(); return BaseResponseUtils.buildSuccess(true); } } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/delSome/DelSomeIntakeAmountSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/delSome/DelSomeIntakeAmountSv.java new file mode 100644 index 0000000..964209e --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/delSome/DelSomeIntakeAmountSv.java @@ -0,0 +1,127 @@ +package com.dy.pipIrrTemp.delSome; + +import com.dy.pipIrrGlobal.daoTmp.DeleteMapper; +import com.dy.pipIrrGlobal.voTmp.VoStIntakeAmountDay; +import com.dy.pipIrrGlobal.voTmp.VoStIntakeAmountMonth; +import com.dy.pipIrrGlobal.voTmp.VoStIntakeAmountYear; +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.List; + +/** + * @Author: liurunyu + * @Date: 2024/12/11 10:54 + * @Description + */ + +@Slf4j +@Service +public class DelSomeIntakeAmountSv { + + private DeleteMapper dao; + + @Autowired + private void setDao(DeleteMapper dao){ + this.dao = dao; + } + + public void delStIntakeDay(){ + VoStIntakeAmountDay first = null ; + List<VoStIntakeAmountDay> list = dao.selectAllStIntakeDay() ; + if(list != null && list.size() > 0){ + for(VoStIntakeAmountDay vo : list){ + if(first == null){ + first = vo ; + }else{ + if(first.intakeId.longValue() != vo.intakeId.longValue()){ + //鍙栨按鍙e彉浜� + first = vo ; + }else{ + if(!first.dt.equals(vo.dt)) { + //鏃ユ湡鍙樹簡 + first = vo ; + }else{ + //鍚屼竴涓彇姘村彛鍚屾棩鏈� + doDelStIntakeDay(vo.id) ; + } + } + } + } + } + } + + public void delStIntakeMonth(){ + VoStIntakeAmountMonth first = null ; + List<VoStIntakeAmountMonth> list = dao.selectAllStIntakeMonth() ; + if(list != null && list.size() > 0){ + for(VoStIntakeAmountMonth vo : list){ + if(first == null){ + first = vo ; + }else{ + if(first.intakeId.longValue() != vo.intakeId.longValue()){ + //鍙栨按鍙e彉浜� + first = vo ; + }else{ + if(first.year.intValue() != vo.year.intValue()) { + //骞村害鍙樹簡 + first = vo ; + }else{ + if(first.month.intValue() != vo.month.intValue()){ + //鏈堜唤鍙樹簡 + first = vo ; + }else{ + //鍚屼竴涓彇姘村彛鍚屽勾鍚屾湀 + doDelStIntakeMonth(vo.id) ; + } + } + } + } + } + } + } + + + public void delStIntakeYear(){ + VoStIntakeAmountYear first = null ; + List<VoStIntakeAmountYear> list = dao.selectAllStIntakeYear() ; + if(list != null && list.size() > 0){ + for(VoStIntakeAmountYear vo : list){ + if(first == null){ + first = vo ; + }else{ + if(first.intakeId.longValue() != vo.intakeId.longValue()){ + //鍙栨按鍙e彉浜� + first = vo ; + }else{ + if(first.year.intValue() != vo.year.intValue()) { + //骞村害鍙樹簡 + first = vo ; + }else{ + //鍚屼竴涓彇姘村彛鍚屽勾 + doDelStIntakeYear(vo.id) ; + } + } + } + } + } + } + + @Transactional + int doDelStIntakeDay(Long id){ + return dao.deleteStIntakeDayById(id) ; + } + + @Transactional + int doDelStIntakeMonth(Long id){ + return dao.deleteStIntakeMonthById(id) ; + } + + @Transactional + int doDelStIntakeYear(Long id){ + return dao.deleteStIntakeYearById(id) ; + } + +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/delSome/DelSomeLossAmountSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/delSome/DelSomeLossAmountSv.java new file mode 100644 index 0000000..849d552 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/delSome/DelSomeLossAmountSv.java @@ -0,0 +1,125 @@ +package com.dy.pipIrrTemp.delSome; + +import com.dy.pipIrrGlobal.daoTmp.DeleteMapper; +import com.dy.pipIrrGlobal.voTmp.VoStLossAmountDay; +import com.dy.pipIrrGlobal.voTmp.VoStLossAmountMonth; +import com.dy.pipIrrGlobal.voTmp.VoStLossAmountYear; +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.List; + +/** + * @Author: liurunyu + * @Date: 2024/12/11 10:54 + * @Description + */ + +@Slf4j +@Service +public class DelSomeLossAmountSv { + + private DeleteMapper dao; + + @Autowired + private void setDao(DeleteMapper dao){ + this.dao = dao; + } + + public void delStLossDay(){ + VoStLossAmountDay first = null ; + List<VoStLossAmountDay> list = dao.selectAllStLossDay() ; + if(list != null && list.size() > 0){ + for(VoStLossAmountDay vo : list){ + if(first == null){ + first = vo ; + }else{ + if(first.intakeId.longValue() != vo.intakeId.longValue()){ + //鍙栨按鍙e彉浜� + first = vo ; + }else{ + if(!first.dt.equals(vo.dt)) { + //鏃ユ湡鍙樹簡 + first = vo ; + }else{ + //鍚屼竴涓彇姘村彛鍚屾棩鏈� + doDelStLossDay(vo.id) ; + } + } + } + } + } + } + + public void delStLossMonth(){ + VoStLossAmountMonth first = null ; + List<VoStLossAmountMonth> list = dao.selectAllStLossMonth() ; + if(list != null && list.size() > 0){ + for(VoStLossAmountMonth vo : list){ + if(first == null){ + first = vo ; + }else{ + if(first.intakeId.longValue() != vo.intakeId.longValue()){ + //鍙栨按鍙e彉浜� + first = vo ; + }else{ + if(first.year.intValue() != vo.year.intValue()) { + //骞村害鍙樹簡 + first = vo ; + }else{ + if(first.month.intValue() != vo.month.intValue()){ + //鏈堜唤鍙樹簡 + first = vo ; + }else{ + //鍚屼竴涓彇姘村彛鍚屽勾鍚屾湀 + doDelStLossMonth(vo.id) ; + } + } + } + } + } + } + } + + + public void delStLossYear(){ + VoStLossAmountYear first = null ; + List<VoStLossAmountYear> list = dao.selectAllStLossYear() ; + if(list != null && list.size() > 0){ + for(VoStLossAmountYear vo : list){ + if(first == null){ + first = vo ; + }else{ + if(first.intakeId.longValue() != vo.intakeId.longValue()){ + //鍙栨按鍙e彉浜� + first = vo ; + }else{ + if(first.year.intValue() != vo.year.intValue()) { + //骞村害鍙樹簡 + first = vo ; + }else{ + //鍚屼竴涓彇姘村彛鍚屽勾 + doDelStLossYear(vo.id) ; + } + } + } + } + } + } + @Transactional + int doDelStLossDay(Long id){ + return dao.deleteStLossDayById(id) ; + } + @Transactional + int doDelStLossMonth(Long id){ + return dao.deleteStLossMonthById(id) ; + } + + @Transactional + int doDelStLossYear(Long id){ + return dao.deleteStLossYearById(id) ; + } + +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/delSome/DelSomeSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/delSome/DelSomeSv.java deleted file mode 100644 index 3fd530b..0000000 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-temp/src/main/java/com/dy/pipIrrTemp/delSome/DelSomeSv.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.dy.pipIrrTemp.delSome; - -import com.dy.pipIrrGlobal.daoTmp.DeleteMapper; -import com.dy.pipIrrGlobal.voTmp.VoStLossMonth; -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.List; - -/** - * @Author: liurunyu - * @Date: 2024/12/11 10:54 - * @Description - */ - -@Slf4j -@Service -public class DelSomeSv { - - private DeleteMapper dao; - - @Autowired - private void setDao(DeleteMapper dao){ - this.dao = dao; - } - - public void delStLossMonth(){ - VoStLossMonth first = null ; - List<VoStLossMonth> list = dao.selectAllStLossMonth() ; - if(list != null && list.size() > 0){ - for(VoStLossMonth vo : list){ - if(first == null){ - first = vo ; - }else{ - if(first.intakeId != vo.intakeId){ - //鍙栨按鍙e彉浜� - first = vo ; - }else{ - if(first.year != vo.year) { - //骞村害鍙樹簡 - first = vo ; - }else{ - if(first.month != vo.month){ - //鏈堜唤鍙樹簡 - first = vo ; - }else{ - //鍚屼竴涓彇姘村彛鍚屽勾鍚屾湀 - doDelStLossMonth(vo.id) ; - } - } - } - } - } - } - } - - @Transactional - int doDelStLossMonth(Long id){ - return dao.deleteByMainKey(id) ; - } -} -- Gitblit v1.8.0