From f0266c2993a9587cab4c9480089e3e83d8820198 Mon Sep 17 00:00:00 2001
From: Administrator <zhubaomin>
Date: 星期三, 07 八月 2024 15:59:30 +0800
Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV
---
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_99_Down.java | 12
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOnHourReportHistoryMapper.java | 8
pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveHistoryMapper.xml | 117 ++++++++++++++
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_A2_Down.java | 14
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/CommonV1_0_1.java | 4
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_A1_Down.java | 12
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoIntakeAccumulateAmount.java | 4
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOpenCloseValveHistoryMapper.java | 43 +++++
pipIrr-platform/pipIrr-web/pipIrr-mwTest-web/src/main/java/com/dy/pipIrrMwTestWeb/p206V1_0_0/CommandP206V1_0_0Ctrl.java | 10
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoIntakeOpenCount.java | 6
pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportHistoryMapper.xml | 8
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_A0_Down.java | 14
pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java | 96 ++++++++++--
pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntakeSv.java | 120 ++++++++++++++
pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml | 2
15 files changed, 406 insertions(+), 64 deletions(-)
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/CommonV1_0_1.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/CommonV1_0_1.java
index 115539b..8de6bb7 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/CommonV1_0_1.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/CommonV1_0_1.java
@@ -170,7 +170,7 @@
* 2:鍒峰崱鍏抽榾锛�
* 3:涓績绔欏紑闃�锛�
* 4:涓績绔欏叧闃�锛�
- * 5:娆犺垂鍏抽榾锛�
+ * 5:浣欓涓嶈冻鍏抽榾锛�
* 6:娴侀噺璁℃晠闅滃叧闃�锛�
* 7:绱ф�ュ叧闂紱
* 8:鐢ㄦ埛杩滅▼寮�闃�锛�
@@ -190,7 +190,7 @@
case 2 -> "鍒峰崱鍏抽榾";
case 3 -> "涓績绔欏紑闃�";
case 4 -> "涓績绔欏叧闃�";
- case 5 -> "娆犺垂鍏抽榾";
+ case 5 -> "浣欓涓嶈冻鍏抽榾";
case 6 -> "娴侀噺璁℃晠闅滃叧闃�";
case 7 -> "绱ф�ュ叧闃�";
case 8 -> "鐢ㄦ埛杩滅▼寮�闃�";
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_99_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_99_Down.java
index 3891c18..ee47dc6 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_99_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_99_Down.java
@@ -84,14 +84,14 @@
if(cvo.icCardNo == null){
throw new Exception("铏氭嫙IC鍗$紪鍙蜂笉鑳戒负绌�") ;
}
- if(cvo.moneyRemain == null){
- throw new Exception("鍓╀綑閲戦涓嶈兘涓虹┖") ;
+ if(cvo.moneyRemain == null || cvo.moneyRemain == 0.0){
+ throw new Exception("鍓╀綑閲戦涓嶈兘涓虹┖鎴栦负0") ;
}
- if(cvo.waterPrice == null){
- throw new Exception("姘翠环涓嶈兘涓虹┖") ;
+ if(cvo.waterPrice == null || cvo.waterPrice == 0.0){
+ throw new Exception("姘翠环涓嶈兘涓虹┖鎴栦负0") ;
}
- if(cvo.minutes == null){
- throw new Exception("鐢ㄦ按鏃堕暱涓嶈兘涓虹┖") ;
+ if(cvo.minutes == null || cvo.minutes == 0.0){
+ throw new Exception("鐢ㄦ按鏃堕暱涓嶈兘涓虹┖鎴栦负0") ;
}
if(cvo.minutes < 0 || cvo.minutes > 9999){
throw new Exception("鐢ㄦ按鏃堕暱鍙栧�艰寖鍥存槸0~9999鍒嗛挓") ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_A0_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_A0_Down.java
index fd0e57f..26876b3 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_A0_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_A0_Down.java
@@ -84,14 +84,14 @@
if(cvo.icCardNo == null){
throw new Exception("铏氭嫙IC鍗$紪鍙蜂笉鑳戒负绌�") ;
}
- if(cvo.moneyRemain == null){
- throw new Exception("鍓╀綑閲戦涓嶈兘涓虹┖") ;
+ if(cvo.moneyRemain == null || cvo.moneyRemain == 0.0){
+ throw new Exception("鍓╀綑閲戦涓嶈兘涓虹┖鎴栦负0") ;
}
- if(cvo.waterPrice == null){
- throw new Exception("姘翠环涓嶈兘涓虹┖") ;
+ if(cvo.waterPrice == null || cvo.waterPrice == 0.0){
+ throw new Exception("姘翠环涓嶈兘涓虹┖鎴栦负0") ;
}
- if(cvo.waterAmount == null){
- throw new Exception("棰勭敤姘撮噺涓嶈兘涓虹┖") ;
+ if(cvo.waterAmount == null || cvo.waterAmount == 0.0){
+ throw new Exception("棰勭敤姘撮噺涓嶈兘涓虹┖鎴栦负0") ;
}
if(cvo.waterAmount < 0 || cvo.waterAmount > 9999){
throw new Exception("棰勭敤姘撮噺鍙栧�艰寖鍥存槸0~9999m3") ;
@@ -102,7 +102,7 @@
// midRs.param = icCardNoGrp[0] ;
//}
//ByteUtil.string2BCD_LE(bs, icCardNoGrp[1], index) ;
- byte[] bs = new byte[16] ;
+ byte[] bs = new byte[8] ;
index = 0 ;
GlCreate.createIcCardNo(cvo.icCardNo, bs, 0);
bytes = ByteUtil.bytesMerge(bsHead, bs) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_A1_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_A1_Down.java
index d6966ec..2b02b83 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_A1_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_A1_Down.java
@@ -85,14 +85,14 @@
if(cvo.icCardNo == null){
throw new Exception("铏氭嫙IC鍗$紪鍙蜂笉鑳戒负绌�") ;
}
- if(cvo.moneyRemain == null){
- throw new Exception("鍓╀綑閲戦涓嶈兘涓虹┖") ;
+ if(cvo.moneyRemain == null || cvo.moneyRemain == 0.0){
+ throw new Exception("鍓╀綑閲戦涓嶈兘涓虹┖鎴栦负0") ;
}
- if(cvo.waterPrice == null){
- throw new Exception("姘翠环涓嶈兘涓虹┖") ;
+ if(cvo.waterPrice == null || cvo.waterPrice == 0.0){
+ throw new Exception("姘翠环涓嶈兘涓虹┖鎴栦负0") ;
}
- if(cvo.minutes == null){
- throw new Exception("鐢ㄦ按鏃堕暱涓嶈兘涓虹┖") ;
+ if(cvo.minutes == null || cvo.minutes == 0.0){
+ throw new Exception("鐢ㄦ按鏃堕暱涓嶈兘涓虹┖鎴栦负0") ;
}
if(cvo.minutes < 0 || cvo.minutes > 9999){
throw new Exception("鐢ㄦ按鏃堕暱鍙栧�艰寖鍥存槸0~9999鍒嗛挓") ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_A2_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_A2_Down.java
index 3a09630..d664159 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_A2_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_A2_Down.java
@@ -85,14 +85,14 @@
if(cvo.icCardNo == null){
throw new Exception("铏氭嫙IC鍗$紪鍙蜂笉鑳戒负绌�") ;
}
- if(cvo.moneyRemain == null){
- throw new Exception("鍓╀綑閲戦涓嶈兘涓虹┖") ;
+ if(cvo.moneyRemain == null || cvo.moneyRemain == 0.0){
+ throw new Exception("鍓╀綑閲戦涓嶈兘涓虹┖鎴栦负0") ;
}
- if(cvo.waterPrice == null){
- throw new Exception("姘翠环涓嶈兘涓虹┖") ;
+ if(cvo.waterPrice == null || cvo.waterPrice == 0.0){
+ throw new Exception("姘翠环涓嶈兘涓虹┖鎴栦负0") ;
}
- if(cvo.waterAmount == null){
- throw new Exception("棰勭敤姘撮噺涓嶈兘涓虹┖") ;
+ if(cvo.waterAmount == null || cvo.waterAmount == 0.0){
+ throw new Exception("棰勭敤姘撮噺涓嶈兘涓虹┖鎴栦负0") ;
}
if(cvo.waterAmount < 0 || cvo.waterAmount > 9999){
throw new Exception("棰勭敤姘撮噺鍙栧�艰寖鍥存槸0~9999m3") ;
@@ -136,7 +136,7 @@
// midRs.param = icCardNoGrp[0] ;
//}
//ByteUtil.string2BCD_LE(bs, icCardNoGrp[1], index) ;
- byte[] bs = new byte[16] ;
+ byte[] bs = new byte[8] ;
index = 0 ;
GlCreate.createIcCardNo(cvo.icCardNo, bs, 0);
bytes = ByteUtil.bytesMerge(bsHead, bs) ;
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOnHourReportHistoryMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOnHourReportHistoryMapper.java
index 7b6797b..434000e 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOnHourReportHistoryMapper.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOnHourReportHistoryMapper.java
@@ -88,16 +88,16 @@
List<VoIntake> getNotOnlineIntakes(Map<?, ?> params);
/**
- * 鎸囧畾鏃堕棿娈靛唴鐢ㄦ按閲忚秴杩囨寚瀹氬�肩殑鍙栨按鍙f暟閲�
+ * 鎸囧畾鏃堕棿娈靛唴绱Н娴侀噺瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙f暟閲�
* @param params
* @return
*/
- Long getUseWaterGtValueIntakesCount(Map<String, Object> params);
+ Long getTotalFlowGtValueIntakesCount(Map<String, Object> params);
/**
- * 鎸囧畾鏃堕棿娈靛唴鐢ㄦ按閲忚秴杩囨寚瀹氬�肩殑鍙栨按鍙�
+ * 鎸囧畾鏃堕棿娈靛唴绱Н娴侀噺瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
* @param params
* @return
*/
- List<VoIntakeAccumulateAmount> getUseWaterGtValueIntakes(Map<String, Object> params);
+ List<VoIntakeAccumulateAmount> getTotalFlowGtValueIntakes(Map<String, Object> params);
}
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOpenCloseValveHistoryMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOpenCloseValveHistoryMapper.java
index ba17e56..8d71f88 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOpenCloseValveHistoryMapper.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOpenCloseValveHistoryMapper.java
@@ -5,6 +5,7 @@
import com.dy.pipIrrGlobal.voRm.VoOpenCloseValve;
import com.dy.pipIrrGlobal.voSt.VoClient;
import com.dy.pipIrrGlobal.voSt.VoIntake;
+import com.dy.pipIrrGlobal.voSt.VoIntakeAccumulateAmount;
import com.dy.pipIrrGlobal.voSt.VoIntakeOpenCount;
import org.apache.ibatis.annotations.Mapper;
@@ -192,4 +193,46 @@
* @return
*/
List<VoClient> getLargeWaterDurationClients(Map<String, Object> params);
+
+ /**
+ * 鎸囧畾鏃堕棿娈电敤姘撮噺瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙f暟閲�
+ * @param params
+ * @return
+ */
+ Long getUseWaterGtValueIntakesCount(Map<String, Object> params);
+
+ /**
+ * 鎸囧畾鏃堕棿娈电敤姘撮噺瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
+ * @param params
+ * @return
+ */
+ List<VoIntakeAccumulateAmount> getUseWaterGtValueIntakes(Map<String, Object> params);
+
+ /**
+ * 鎸囧畾鏃堕棿娈靛唴娑堣垂閲戦瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙g殑鏁伴噺
+ * @param params
+ * @return
+ */
+ Long getExpenseGtValueIntakesCount(Map<String, Object> params);
+
+ /**
+ * 鎸囧畾鏃堕棿娈靛唴娑堣垂閲戦瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
+ * @param params
+ * @return
+ */
+ List<VoIntakeAccumulateAmount> getExpenseGtValueIntakes(Map<String, Object> params);
+
+ /**
+ * 鎸囧畾鏃堕棿娈靛唴鐢ㄦ按鏃堕暱瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙f暟閲�
+ * @param params
+ * @return
+ */
+ Long getUseWaterDurationGtValueIntakesCount(Map<String, Object> params);
+
+ /**
+ * 鎸囧畾鏃堕棿娈靛唴鐢ㄦ按鏃堕暱瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
+ * @param params
+ * @return
+ */
+ List<VoIntakeOpenCount> getUseWaterDurationGtValueIntakes(Map<String, Object> params);
}
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoIntakeAccumulateAmount.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoIntakeAccumulateAmount.java
index cb89d48..839fe4c 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoIntakeAccumulateAmount.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoIntakeAccumulateAmount.java
@@ -6,7 +6,9 @@
* @author :WuZeYu
* @Date :2024/8/5 10:45
* @LastEditTime :2024/8/5 10:45
- * @Description 鍙栨按鍙g疮绉祦閲� 澶т簬 鎸囧畾鍊�
+ * @Description 鍙栨按鍙� 绱Н娴侀噺 澶т簬 鎸囧畾鍊� 瑙嗗浘
+ * 鐢ㄦ按閲� 澶т簬 鎸囧畾鍊�
+ * 娑堣垂閲戦 澶т簬 鎸囧畾鍊�
*/
@Data
public class VoIntakeAccumulateAmount extends VoIntake{
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoIntakeOpenCount.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoIntakeOpenCount.java
index 421b9b2..c813a62 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoIntakeOpenCount.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoIntakeOpenCount.java
@@ -1,14 +1,14 @@
package com.dy.pipIrrGlobal.voSt;
-import com.alibaba.fastjson2.annotation.JSONField;
-import com.alibaba.fastjson2.writer.ObjectWriterImplToString;
+
import lombok.Data;
/**
* @author :WuZeYu
* @Date :2024/8/5 10:45
* @LastEditTime :2024/8/5 10:45
- * @Description 鍙栨按鍙e紑闃� 鎸囧畾鍊� 娆℃暟
+ * @Description 鍙栨按鍙e紑闃� > 鎸囧畾鍊� 锛堟鏁�)
+ * 鐢ㄦ按鏃堕暱 > 鎸囧畾鍊� (鍒嗛挓)
*/
@Data
public class VoIntakeOpenCount extends VoIntake{
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 6d2c24c..1c09121 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml
@@ -72,7 +72,7 @@
pipIrr:
global:
- dev: true #鏄惁寮�鍙戦樁娈碉紝true鎴杅alse
+ dev: flase #鏄惁寮�鍙戦樁娈碉紝true鎴杅alse
dsName: ym #寮�鍙戦樁娈碉紝璁剧疆涓存椂鐨勬暟鎹簱鍚嶇О
mw:
webPort: 8070
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportHistoryMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportHistoryMapper.xml
index c3afb26..74589f4 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportHistoryMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportHistoryMapper.xml
@@ -283,8 +283,8 @@
</if>
</trim>
</select>
- <!--鎸囧畾鏃堕棿娈靛唴鐢ㄦ按閲忚秴杩囨寚瀹氬�肩殑鍙栨按鍙f暟閲�-->
- <select id="getUseWaterGtValueIntakesCount" resultType="java.lang.Long">
+ <!--鎸囧畾鏃堕棿娈靛唴绱Н娴侀噺瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙f暟閲�-->
+ <select id="getTotalFlowGtValueIntakesCount" resultType="java.lang.Long">
select
count(*)
from
@@ -316,8 +316,8 @@
WHERE IFNULL(b.total_amount, 0)-IFNULL(a.total_amount, 0) > #{value} AND inta.deleted = 0
) c
</select>
- <!--鎸囧畾鏃堕棿娈靛唴鐢ㄦ按閲忚秴杩囨寚瀹氬�肩殑鍙栨按鍙�-->
- <select id="getUseWaterGtValueIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoIntakeAccumulateAmount">
+ <!--鎸囧畾鏃堕棿娈靛唴绱Н娴侀噺瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�-->
+ <select id="getTotalFlowGtValueIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoIntakeAccumulateAmount">
SELECT
inta.id AS intakeId,
inta.NAME AS intakeNum,
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveHistoryMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveHistoryMapper.xml
index 65f6c2e..ff3f0cd 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveHistoryMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveHistoryMapper.xml
@@ -878,4 +878,121 @@
</if>
</trim>
</select>
+ <!--鎸囧畾鏃堕棿娈电敤姘撮噺瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙f暟閲�-->
+ <select id="getUseWaterGtValueIntakesCount" resultType="java.lang.Long">
+ select
+ count(*)
+ from
+ ( SELECT
+ inta.id AS intakeId,
+ inta.NAME AS intakeNum,
+ blo.NAME AS blockName ,
+ IFNULL(SUM(rocvh.cl_this_amount),0) AS value
+ FROM
+ pr_intake inta
+ INNER JOIN ba_block blo ON blo.id = inta.blockId
+ LEFT JOIN rm_open_close_valve_history rocvh ON rocvh.intake_id = inta.id
+ WHERE rocvh.op_dt >= #{timeStart} AND rocvh.cl_dt <= #{timeStop} AND inta.deleted = 0
+ GROUP BY inta.id
+ HAVING IFNULL(SUM(rocvh.cl_this_amount),0) > #{value}) c
+ </select>
+ <!--鎸囧畾鏃堕棿娈电敤姘撮噺瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�-->
+ <select id="getUseWaterGtValueIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoIntakeAccumulateAmount">
+ SELECT
+ inta.id AS intakeId,
+ inta.NAME AS intakeNum,
+ blo.NAME AS blockName ,
+ IFNULL(SUM(rocvh.cl_this_amount),0) AS value
+ FROM
+ pr_intake inta
+ INNER JOIN ba_block blo ON blo.id = inta.blockId
+ LEFT JOIN rm_open_close_valve_history rocvh ON rocvh.intake_id = inta.id
+ WHERE rocvh.op_dt >= #{timeStart} AND rocvh.cl_dt <= #{timeStop} AND inta.deleted = 0
+ GROUP BY inta.id
+ HAVING IFNULL(SUM(rocvh.cl_this_amount),0) > #{value}
+ ORDER BY inta.id
+ <trim prefix="limit " >
+ <if test="start != null and count != null">
+ #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER}
+ </if>
+ </trim>
+ </select>
+ <!--鎸囧畾鏃堕棿娈靛唴娑堣垂閲戦瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙g殑鏁伴噺-->
+ <select id="getExpenseGtValueIntakesCount" resultType="java.lang.Long">
+ select
+ count(*)
+ from
+ ( SELECT
+ inta.id AS intakeId,
+ inta.NAME AS intakeNum,
+ blo.NAME AS blockName ,
+ IFNULL(SUM(rocvh.cl_this_money),0) AS value
+ FROM
+ pr_intake inta
+ INNER JOIN ba_block blo ON blo.id = inta.blockId
+ LEFT JOIN rm_open_close_valve_history rocvh ON rocvh.intake_id = inta.id
+ WHERE rocvh.op_dt >= #{timeStart} AND rocvh.cl_dt <= #{timeStop} AND inta.deleted = 0
+ GROUP BY inta.id
+ HAVING IFNULL(SUM(rocvh.cl_this_money),0) > #{value}) c
+ </select>
+ <!--鎸囧畾鏃堕棿娈靛唴娑堣垂閲戦瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�-->
+ <select id="getExpenseGtValueIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoIntakeAccumulateAmount">
+ SELECT
+ inta.id AS intakeId,
+ inta.NAME AS intakeNum,
+ blo.NAME AS blockName ,
+ IFNULL(SUM(rocvh.cl_this_money),0) AS value
+ FROM
+ pr_intake inta
+ INNER JOIN ba_block blo ON blo.id = inta.blockId
+ LEFT JOIN rm_open_close_valve_history rocvh ON rocvh.intake_id = inta.id
+ WHERE rocvh.op_dt >= #{timeStart} AND rocvh.cl_dt <= #{timeStop} AND inta.deleted = 0
+ GROUP BY inta.id
+ HAVING IFNULL(SUM(rocvh.cl_this_money),0) > #{value}
+ ORDER BY inta.id
+ <trim prefix="limit " >
+ <if test="start != null and count != null">
+ #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER}
+ </if>
+ </trim>
+ </select>
+ <!--鎸囧畾鏃堕棿娈靛唴鐢ㄦ按鏃堕暱瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙f暟閲�-->
+ <select id="getUseWaterDurationGtValueIntakesCount" resultType="java.lang.Long">
+ select
+ count(*)
+ from
+ ( SELECT
+ inta.id AS intakeId,
+ inta.NAME AS intakeNum,
+ blo.NAME AS blockName ,
+ IFNULL(SUM(rocvh.cl_this_time),0) AS recordCount
+ FROM
+ pr_intake inta
+ INNER JOIN ba_block blo ON blo.id = inta.blockId
+ LEFT JOIN rm_open_close_valve_history rocvh ON rocvh.intake_id = inta.id
+ WHERE rocvh.op_dt >= #{timeStart} AND rocvh.cl_dt <= #{timeStop} AND inta.deleted = 0
+ GROUP BY inta.id
+ HAVING IFNULL(SUM(rocvh.cl_this_time),0) > #{value}) c
+ </select>
+ <!--鎸囧畾鏃堕棿娈靛唴鐢ㄦ按鏃堕暱瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�-->
+ <select id="getUseWaterDurationGtValueIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoIntakeOpenCount">
+ SELECT
+ inta.id AS intakeId,
+ inta.NAME AS intakeNum,
+ blo.NAME AS blockName ,
+ IFNULL(SUM(rocvh.cl_this_time),0) AS recordCount
+ FROM
+ pr_intake inta
+ INNER JOIN ba_block blo ON blo.id = inta.blockId
+ LEFT JOIN rm_open_close_valve_history rocvh ON rocvh.intake_id = inta.id
+ WHERE rocvh.op_dt >= #{timeStart} AND rocvh.cl_dt <= #{timeStop} AND inta.deleted = 0
+ GROUP BY inta.id
+ HAVING IFNULL(SUM(rocvh.cl_this_time),0) > #{value}
+ ORDER BY inta.id
+ <trim prefix="limit " >
+ <if test="start != null and count != null">
+ #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER}
+ </if>
+ </trim>
+ </select>
</mapper>
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-mwTest-web/src/main/java/com/dy/pipIrrMwTestWeb/p206V1_0_0/CommandP206V1_0_0Ctrl.java b/pipIrr-platform/pipIrr-web/pipIrr-mwTest-web/src/main/java/com/dy/pipIrrMwTestWeb/p206V1_0_0/CommandP206V1_0_0Ctrl.java
index 707fc58..f84e95a 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-mwTest-web/src/main/java/com/dy/pipIrrMwTestWeb/p206V1_0_0/CommandP206V1_0_0Ctrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-mwTest-web/src/main/java/com/dy/pipIrrMwTestWeb/p206V1_0_0/CommandP206V1_0_0Ctrl.java
@@ -228,7 +228,7 @@
private BaseResponse cdA0(){
ComA0Vo comVo = new ComA0Vo() ;
comVo.icCardNo = CommandP206V1_0_0Ctrl.vsIcCardNo;
- comVo.moneyRemain = 234.56 ;
+ comVo.moneyRemain = 1.23 ;
comVo.waterPrice = 1.2 ;
comVo.waterAmount = 10 ;
return this.sendCom2Mw(this.commandOuter(CodeV1_0_1.cd_A0, comVo, null)) ;
@@ -239,10 +239,10 @@
private BaseResponse cdA1() throws Exception {
ComA1Vo comVo = new ComA1Vo() ;
comVo.icCardNo = CommandP206V1_0_0Ctrl.vsIcCardNo;
- comVo.moneyRemain = 234.56 ;
+ comVo.moneyRemain = 1.23 ;
comVo.waterPrice = 1.2 ;
- comVo.minutes = 3 ;
- String nextDtStr = DateTime.nextXMinute_yyyy_MM_dd_HH_mm_ss(DateTime.yyyy_MM_dd_HH_mm_ss(), comVo.minutes) ;//灏嗘潵X鍒嗛挓
+ comVo.minutes = 30 ;
+ String nextDtStr = DateTime.nextXMinute_yyyy_MM_dd_HH_mm_ss(DateTime.yyyy_MM_dd_HH_mm_ss(), 3) ;//灏嗘潵X鍒嗛挓
int[] nextDt = DateTime.yyyy_MM_dd_HH_MM_SS_2_ymdhmsGroup(nextDtStr) ;
comVo.year = nextDt[0] ;
comVo.month = nextDt[1] ;
@@ -259,7 +259,7 @@
comVo.moneyRemain = 234.56 ;
comVo.waterPrice = 1.2 ;
comVo.waterAmount = 10 ;
- String nextDtStr = DateTime.nextXMinute_yyyy_MM_dd_HH_mm_ss(DateTime.yyyy_MM_dd_HH_mm_ss(), 5) ;//灏嗘潵5鍒嗛挓
+ String nextDtStr = DateTime.nextXMinute_yyyy_MM_dd_HH_mm_ss(DateTime.yyyy_MM_dd_HH_mm_ss(), 3) ;//灏嗘潵X鍒嗛挓
int[] nextDt = DateTime.yyyy_MM_dd_HH_MM_SS_2_ymdhmsGroup(nextDtStr) ;
comVo.year = nextDt[0] ;
comVo.month = nextDt[1] ;
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntakeSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntakeSv.java
index 2d265fc..f2ea363 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntakeSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntakeSv.java
@@ -424,6 +424,46 @@
}
/**
+ * 鎸囧畾鏃堕棿娈靛唴绱Н娴侀噺瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
+ * @param qo
+ * @return
+ */
+ public QueryResultVo<List<VoIntakeAccumulateAmount>> getTotalFlowGtValueIntakes(IntakeAmountValueQO qo) {
+ String timeStart = qo.getTimeStart();
+ String timeStop = qo.getTimeStop();
+ if(timeStart != null && timeStart != "") {
+ timeStart = timeStart + " 00:00:00";
+ } else {
+ timeStart = LocalDateTime.of(2024, 1, 1, 0, 0, 0).toString();
+ }
+ qo.setTimeStart(timeStart);
+
+ if(timeStop != null && timeStop != "") {
+ timeStop = timeStop + " 23:59:59";
+ }else {
+ timeStop = LocalDate.now() + " 23:59:59";
+ }
+ qo.setTimeStop(timeStop);
+
+ if (qo.getValue() == null){
+ qo.setValue(0.0);
+ }
+
+
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo);
+ Long itemTotal = rmOnHourReportHistoryMapper.getTotalFlowGtValueIntakesCount(params);
+
+ QueryResultVo<List<VoIntakeAccumulateAmount>> rsVo = new QueryResultVo<>() ;
+ rsVo.pageSize = qo.pageSize ;
+ rsVo.pageCurr = qo.pageCurr ;
+
+ rsVo.calculateAndSet(itemTotal, params);
+ rsVo.obj = rmOnHourReportHistoryMapper.getTotalFlowGtValueIntakes(params);
+ return rsVo ;
+ }
+
+
+ /**
* 鎸囧畾鏃堕棿娈靛唴鐢ㄦ按閲忚秴杩囨寚瀹氬�肩殑鍙栨按鍙�
* @param qo
* @return
@@ -451,14 +491,90 @@
Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo);
- Long itemTotal = rmOnHourReportHistoryMapper.getUseWaterGtValueIntakesCount(params);
+ Long itemTotal = rmOpenCloseValveHistoryMapper.getUseWaterGtValueIntakesCount(params);
QueryResultVo<List<VoIntakeAccumulateAmount>> rsVo = new QueryResultVo<>() ;
rsVo.pageSize = qo.pageSize ;
rsVo.pageCurr = qo.pageCurr ;
rsVo.calculateAndSet(itemTotal, params);
- rsVo.obj = rmOnHourReportHistoryMapper.getUseWaterGtValueIntakes(params);
+ rsVo.obj = rmOpenCloseValveHistoryMapper.getUseWaterGtValueIntakes(params);
+ return rsVo ;
+ }
+
+
+
+ /**
+ * 鎸囧畾鏃堕棿娈靛唴娑堣垂閲戦瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
+ * @param qo
+ * @return
+ */
+ public QueryResultVo<List<VoIntakeAccumulateAmount>> getExpenseGtValueIntakes(IntakeAmountValueQO qo) {
+ String timeStart = qo.getTimeStart();
+ String timeStop = qo.getTimeStop();
+ if(timeStart != null && timeStart != "") {
+ timeStart = timeStart + " 00:00:00";
+ } else {
+ timeStart = LocalDateTime.of(2024, 1, 1, 0, 0, 0).toString();
+ }
+ qo.setTimeStart(timeStart);
+
+ if(timeStop != null && timeStop != "") {
+ timeStop = timeStop + " 23:59:59";
+ }else {
+ timeStop = LocalDate.now() + " 23:59:59";
+ }
+ qo.setTimeStop(timeStop);
+
+ if (qo.getValue() == null){
+ qo.setValue(0.0);
+ }
+
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo);
+ Long itemTotal = rmOpenCloseValveHistoryMapper.getExpenseGtValueIntakesCount(params);
+
+ QueryResultVo<List<VoIntakeAccumulateAmount>> rsVo = new QueryResultVo<>() ;
+ rsVo.pageSize = qo.pageSize ;
+ rsVo.pageCurr = qo.pageCurr ;
+
+ rsVo.calculateAndSet(itemTotal, params);
+ rsVo.obj = rmOpenCloseValveHistoryMapper.getExpenseGtValueIntakes(params);
+ return rsVo ;
+ }
+
+
+ /**
+ * 鎸囧畾鏃堕棿娈靛唴鐢ㄦ按鏃堕暱瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
+ * @param qo
+ * @return
+ */
+ public QueryResultVo<List<VoIntakeOpenCount>> getUseWaterDurationGtValueIntakes(IntakeCountValueQO qo) {
+ String timeStart = qo.getTimeStart();
+ String timeStop = qo.getTimeStop();
+ if(timeStart != null && timeStart != "") {
+ timeStart = timeStart + " 00:00:00";
+ } else {
+ timeStart = LocalDateTime.of(2024, 1, 1, 0, 0, 0).toString();
+ }
+ qo.setTimeStart(timeStart);
+
+ if(timeStop != null && timeStop != "") {
+ timeStop = timeStop + " 23:59:59";
+ }else {
+ timeStop = LocalDate.now() + " 23:59:59";
+ }
+ qo.setTimeStop(timeStop);
+
+
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo);
+ Long itemTotal = rmOpenCloseValveHistoryMapper.getUseWaterDurationGtValueIntakesCount(params);
+
+ QueryResultVo<List<VoIntakeOpenCount>> rsVo = new QueryResultVo<>() ;
+ rsVo.pageSize = qo.pageSize ;
+ rsVo.pageCurr = qo.pageCurr ;
+
+ rsVo.calculateAndSet(itemTotal, params);
+ rsVo.obj = rmOpenCloseValveHistoryMapper.getUseWaterDurationGtValueIntakes(params);
return rsVo ;
}
}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java
index 16241f1..405e1cd 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java
@@ -183,12 +183,12 @@
*/
@GetMapping(path = "/getNeverOpenValveIntakes")
@SsoAop()
- public BaseResponse<QueryResultVo<List<VoIntake>>> getNeverOpenValveIntakes(CommonQO qo) {
+ public BaseResponse<QueryResultVo<List<VoIntake>>> getNeverOpenValveIntakes(@Valid CommonQO qo, BindingResult bindingResult) {
+ if(bindingResult != null && bindingResult.hasErrors()){
+ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+ }
try {
QueryResultVo<List<VoIntake>> res = intakeSv.getNeverOpenValveIntakes(qo);
- if(res.itemTotal == 0) {
- return BaseResponseUtils.buildErrorMsg(StatisticlResultCode.NO_RECORDS.getMessage());
- }
return BaseResponseUtils.buildSuccess(res);
} catch (Exception e) {
log.error("鑾峰彇璁板綍寮傚父", e);
@@ -204,12 +204,12 @@
*/
@GetMapping(path = "/getOpenValveGtIntakes")
@SsoAop()
- public BaseResponse<QueryResultVo<List<VoIntakeOpenCount>>> getOpenValveGtIntakes(IntakeCountValueQO qo) {
+ public BaseResponse<QueryResultVo<List<VoIntakeOpenCount>>> getOpenValveGtIntakes(@Valid IntakeCountValueQO qo, BindingResult bindingResult) {
+ if(bindingResult != null && bindingResult.hasErrors()){
+ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+ }
try {
QueryResultVo<List<VoIntakeOpenCount>> res = intakeSv.getOpenValveGtIntakes(qo);
- if(res.itemTotal == 0) {
- return BaseResponseUtils.buildErrorMsg(StatisticlResultCode.NO_RECORDS.getMessage());
- }
return BaseResponseUtils.buildSuccess(res);
} catch (Exception e) {
log.error("鑾峰彇璁板綍寮傚父", e);
@@ -225,12 +225,33 @@
*/
@GetMapping(path = "/getOpenValveLtIntakes")
@SsoAop()
- public BaseResponse<QueryResultVo<List<VoIntakeOpenCount>>> getOpenValveLtIntakes(IntakeCountValueQO qo) {
+ public BaseResponse<QueryResultVo<List<VoIntakeOpenCount>>> getOpenValveLtIntakes(@Valid IntakeCountValueQO qo, BindingResult bindingResult) {
+ if(bindingResult != null && bindingResult.hasErrors()){
+ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+ }
try {
QueryResultVo<List<VoIntakeOpenCount>> res = intakeSv.getOpenValveLtIntakes(qo);
- if(res.itemTotal == 0) {
- return BaseResponseUtils.buildErrorMsg(StatisticlResultCode.NO_RECORDS.getMessage());
- }
+ return BaseResponseUtils.buildSuccess(res);
+ } catch (Exception e) {
+ log.error("鑾峰彇璁板綍寮傚父", e);
+ return BaseResponseUtils.buildException(e.getMessage()) ;
+ }
+ }
+
+
+ /**
+ * 鎸囧畾鏃堕棿娈靛唴绱Н娴侀噺(瀹氭椂鎶ラ噷鐨勭疮绉祦閲�)瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
+ * @param
+ * @return
+ */
+ @GetMapping(path = "/getTotalFlowGtValueIntakes")
+ @SsoAop()
+ public BaseResponse<QueryResultVo<List<VoIntakeAccumulateAmount>>> getTotalFlowGtValueIntakes(@Valid IntakeAmountValueQO qo, BindingResult bindingResult) {
+ if(bindingResult != null && bindingResult.hasErrors()){
+ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+ }
+ try {
+ QueryResultVo<List<VoIntakeAccumulateAmount>> res = intakeSv.getTotalFlowGtValueIntakes(qo);
return BaseResponseUtils.buildSuccess(res);
} catch (Exception e) {
log.error("鑾峰彇璁板綍寮傚父", e);
@@ -246,12 +267,55 @@
*/
@GetMapping(path = "/getUseWaterGtValueIntakes")
@SsoAop()
- public BaseResponse<QueryResultVo<List<VoIntakeAccumulateAmount>>> getUseWaterGtValueIntakes(IntakeAmountValueQO qo) {
+ public BaseResponse<QueryResultVo<List<VoIntakeAccumulateAmount>>> getUseWaterGtValueIntakes(@Valid IntakeAmountValueQO qo, BindingResult bindingResult) {
+ if(bindingResult != null && bindingResult.hasErrors()){
+ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+ }
try {
QueryResultVo<List<VoIntakeAccumulateAmount>> res = intakeSv.getUseWaterGtValueIntakes(qo);
- if(res.itemTotal == 0) {
- return BaseResponseUtils.buildErrorMsg(StatisticlResultCode.NO_RECORDS.getMessage());
- }
+ return BaseResponseUtils.buildSuccess(res);
+ } catch (Exception e) {
+ log.error("鑾峰彇璁板綍寮傚父", e);
+ return BaseResponseUtils.buildException(e.getMessage()) ;
+ }
+ }
+
+
+ /**
+ * 鎸囧畾鏃堕棿娈靛唴娑堣垂閲戦瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
+ * @param
+ * @return
+ */
+ @GetMapping(path = "/getExpenseGtValueIntakes")
+ @SsoAop()
+ public BaseResponse<QueryResultVo<List<VoIntakeAccumulateAmount>>> getExpenseGtValueIntakes(@Valid IntakeAmountValueQO qo, BindingResult bindingResult) {
+ if(bindingResult != null && bindingResult.hasErrors()){
+ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+ }
+ try {
+ QueryResultVo<List<VoIntakeAccumulateAmount>> res = intakeSv.getExpenseGtValueIntakes(qo);
+ return BaseResponseUtils.buildSuccess(res);
+ } catch (Exception e) {
+ log.error("鑾峰彇璁板綍寮傚父", e);
+ return BaseResponseUtils.buildException(e.getMessage()) ;
+ }
+ }
+
+
+
+ /**
+ * 鎸囧畾鏃堕棿娈靛唴鐢ㄦ按鏃堕暱瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
+ * @param
+ * @return
+ */
+ @GetMapping(path = "/getUseWaterDurationGtValueIntakes")
+ @SsoAop()
+ public BaseResponse<QueryResultVo<List<VoIntakeOpenCount>>> getUseWaterDurationGtValueIntakes(@Valid IntakeCountValueQO qo, BindingResult bindingResult) {
+ if(bindingResult != null && bindingResult.hasErrors()){
+ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+ }
+ try {
+ QueryResultVo<List<VoIntakeOpenCount>> res = intakeSv.getUseWaterDurationGtValueIntakes(qo);
return BaseResponseUtils.buildSuccess(res);
} catch (Exception e) {
log.error("鑾峰彇璁板綍寮傚父", e);
--
Gitblit v1.8.0