From 1129cc278ec2f7f1fd3eb325b11974bd884346da Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期三, 09 四月 2025 13:48:49 +0800
Subject: [PATCH] 灌溉计划详情增加计划状态
---
pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/client/ClientSv.java | 238 ++++++++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 201 insertions(+), 37 deletions(-)
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/client/ClientSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/client/ClientSv.java
index 04cdb21..5a61fcf 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/client/ClientSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/client/ClientSv.java
@@ -4,25 +4,22 @@
import com.dy.pipIrrGlobal.daoRm.RmClientAmountDayLastMapper;
import com.dy.pipIrrGlobal.daoRm.RmOpenCloseValveHistoryMapper;
import com.dy.pipIrrGlobal.daoSe.SeCardOperateMapper;
-import com.dy.pipIrrGlobal.voSt.VoClient;
-import com.dy.pipIrrGlobal.voSt.VoDayClient;
-import com.dy.pipIrrGlobal.voSt.VoMonthClient;
-import com.dy.pipIrrStatistics.client.qo.AmountSpentQO;
-import com.dy.pipIrrStatistics.client.qo.OpenCountQO;
-import com.dy.pipIrrStatistics.client.qo.WaterConsumptionQO;
-import com.dy.pipIrrStatistics.client.qo.WaterDurationQO;
-import com.dy.pipIrrStatistics.intake.qo.ClientAmountQO;
-import com.dy.pipIrrGlobal.voSt.VoClientOpenCardCount;
-import com.dy.pipIrrGlobal.voSt.VoClientRechargeTotal;
-import com.dy.pipIrrGlobal.voSt.VoICCard;
+import com.dy.pipIrrGlobal.daoSe.SeClientMapper;
+import com.dy.pipIrrGlobal.voSt.*;
import com.dy.pipIrrStatistics.card.IcCardqo.CommonQO;
+import com.dy.pipIrrStatistics.card.qo.CardUsageQO;
import com.dy.pipIrrStatistics.client.qo.*;
+import com.dy.pipIrrStatistics.intake.qo.ClientAmountQO;
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.text.SimpleDateFormat;
import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.util.Calendar;
import java.util.List;
import java.util.Map;
import java.util.Optional;
@@ -41,9 +38,10 @@
private RmOpenCloseValveHistoryMapper rmOpenCloseValveHistoryMapper;
@Autowired
private SeCardOperateMapper seCardOperateMapper;
-
@Autowired
private RmClientAmountDayLastMapper rmClientAmountDayLastMapper;
+ @Autowired
+ private SeClientMapper seClientMapper;
/**
* 鑾峰彇鎸囧畾鏃堕棿娈靛唴寮�闃�娆℃暟瓒呰繃鎸囧畾鍊肩殑鍐滄埛
@@ -52,16 +50,14 @@
*/
public QueryResultVo<List<VoClient>> getLargeOpenCountClients(OpenCountQO qo) {
/**
- * 琛ラ綈璧锋鏃堕棿锛屽鏋滃紑濮嬫椂闂翠负绌猴紝鍒欓粯璁や负褰撳墠鏃ユ湡
+ * 琛ラ綈璧锋鏃堕棿
*/
String timeStart = qo.getTimeStart();
String timeStop = qo.getTimeStop();
- if(timeStart != null) {
+ if(timeStart != null && timeStart != "") {
timeStart = timeStart + " 00:00:00";
- }else {
- timeStart = LocalDate.now() + " 00:00:00";
}
- if(timeStop != null) {
+ if(timeStop != null && timeStop != "") {
timeStop = timeStop + " 23:59:59";
}
qo.setTimeStart(timeStart);
@@ -90,16 +86,14 @@
*/
public QueryResultVo<List<VoClient>> getSmallOpenCountClients(OpenCountQO qo) {
/**
- * 琛ラ綈璧锋鏃堕棿锛屽鏋滃紑濮嬫椂闂翠负绌猴紝鍒欓粯璁や负褰撳墠鏃ユ湡
+ * 琛ラ綈璧锋鏃堕棿
*/
String timeStart = qo.getTimeStart();
String timeStop = qo.getTimeStop();
- if(timeStart != null) {
+ if(timeStart != null && timeStart != "") {
timeStart = timeStart + " 00:00:00";
- }else {
- timeStart = LocalDate.now() + " 00:00:00";
}
- if(timeStop != null) {
+ if(timeStop != null && timeStop != "") {
timeStop = timeStop + " 23:59:59";
}
qo.setTimeStart(timeStart);
@@ -128,16 +122,14 @@
*/
public QueryResultVo<List<VoClient>> getLargeWaterConsumptionClients(WaterConsumptionQO qo) {
/**
- * 琛ラ綈璧锋鏃堕棿锛屽鏋滃紑濮嬫椂闂翠负绌猴紝鍒欓粯璁や负褰撳墠鏃ユ湡
+ * 琛ラ綈璧锋鏃堕棿
*/
String timeStart = qo.getTimeStart();
String timeStop = qo.getTimeStop();
- if(timeStart != null) {
+ if(timeStart != null && timeStart != "") {
timeStart = timeStart + " 00:00:00";
- }else {
- timeStart = LocalDate.now() + " 00:00:00";
}
- if(timeStop != null) {
+ if(timeStop != null && timeStop != "") {
timeStop = timeStop + " 23:59:59";
}
qo.setTimeStart(timeStart);
@@ -160,6 +152,42 @@
}
/**
+ * 鑾峰彇鎸囧畾鏃堕棿娈靛唴鐢ㄦ按閲忎綆浜庢寚瀹氬�肩殑鍐滄埛
+ * @param qo
+ * @return
+ */
+ public QueryResultVo<List<VoClient>> getSmallWaterConsumptionClients(WaterConsumptionQO qo) {
+ /**
+ * 琛ラ綈璧锋鏃堕棿
+ */
+ String timeStart = qo.getTimeStart();
+ String timeStop = qo.getTimeStop();
+ if(timeStart != null && timeStart != "") {
+ timeStart = timeStart + " 00:00:00";
+ }
+ if(timeStop != null && timeStop != "") {
+ timeStop = timeStop + " 23:59:59";
+ }
+ qo.setTimeStart(timeStart);
+ qo.setTimeStop(timeStop);
+
+ // 鐢熸垚鏌ヨ鍙傛暟
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ;
+
+ // 鑾峰彇绗﹀悎鏉′欢鐨勮褰曟暟
+ Long itemTotal = Optional.ofNullable(rmOpenCloseValveHistoryMapper.getSmallWaterConsumptionClientsCount(params)).orElse(0L);
+
+ QueryResultVo<List<VoClient>> rsVo = new QueryResultVo<>() ;
+
+ rsVo.pageSize = qo.pageSize ;
+ rsVo.pageCurr = qo.pageCurr ;
+
+ rsVo.calculateAndSet(itemTotal, params);
+ rsVo.obj = rmOpenCloseValveHistoryMapper.getSmallWaterConsumptionClients(params);
+ return rsVo ;
+ }
+
+ /**
* 鑾峰彇鎸囧畾鏃堕棿娈靛唴娑堣垂閲戦瓒呰繃鎸囧畾鍊肩殑鍐滄埛
* @param qo
* @return
@@ -170,12 +198,10 @@
*/
String timeStart = qo.getTimeStart();
String timeStop = qo.getTimeStop();
- if(timeStart != null) {
+ if(timeStart != null && timeStart != "") {
timeStart = timeStart + " 00:00:00";
- }else {
- timeStart = LocalDate.now() + " 00:00:00";
}
- if(timeStop != null) {
+ if(timeStop != null && timeStop != "") {
timeStop = timeStop + " 23:59:59";
}
qo.setTimeStart(timeStart);
@@ -198,6 +224,42 @@
}
/**
+ * 鑾峰彇鎸囧畾鏃堕棿娈靛唴娑堣垂閲戦浣庝簬鎸囧畾鍊肩殑鍐滄埛
+ * @param qo
+ * @return
+ */
+ public QueryResultVo<List<VoClient>> getSmallAmountSpentClients(AmountSpentQO qo) {
+ /**
+ * 琛ラ綈璧锋鏃堕棿锛屽鏋滃紑濮嬫椂闂翠负绌猴紝鍒欓粯璁や负褰撳墠鏃ユ湡
+ */
+ String timeStart = qo.getTimeStart();
+ String timeStop = qo.getTimeStop();
+ if(timeStart != null && timeStart != "") {
+ timeStart = timeStart + " 00:00:00";
+ }
+ if(timeStop != null && timeStop != "") {
+ timeStop = timeStop + " 23:59:59";
+ }
+ qo.setTimeStart(timeStart);
+ qo.setTimeStop(timeStop);
+
+ // 鐢熸垚鏌ヨ鍙傛暟
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ;
+
+ // 鑾峰彇绗﹀悎鏉′欢鐨勮褰曟暟
+ Long itemTotal = Optional.ofNullable(rmOpenCloseValveHistoryMapper.getSmallAmountSpentClientsCount(params)).orElse(0L);
+
+ QueryResultVo<List<VoClient>> rsVo = new QueryResultVo<>() ;
+
+ rsVo.pageSize = qo.pageSize ;
+ rsVo.pageCurr = qo.pageCurr ;
+
+ rsVo.calculateAndSet(itemTotal, params);
+ rsVo.obj = rmOpenCloseValveHistoryMapper.getSmallAmountSpentClients(params);
+ return rsVo ;
+ }
+
+ /**
* 鑾峰彇鎸囧畾鏃堕棿娈靛唴鐢ㄦ按鏃堕暱瓒呰繃鎸囧畾鍊肩殑鍐滄埛
* @param qo
* @return
@@ -208,12 +270,10 @@
*/
String timeStart = qo.getTimeStart();
String timeStop = qo.getTimeStop();
- if(timeStart != null) {
+ if(timeStart != null && timeStart != "") {
timeStart = timeStart + " 00:00:00";
- }else {
- timeStart = LocalDate.now() + " 00:00:00";
}
- if(timeStop != null) {
+ if(timeStop != null && timeStop != "") {
timeStop = timeStop + " 23:59:59";
}
qo.setTimeStart(timeStart);
@@ -232,6 +292,42 @@
rsVo.calculateAndSet(itemTotal, params);
rsVo.obj = rmOpenCloseValveHistoryMapper.getLargeWaterDurationClients(params);
+ return rsVo ;
+ }
+
+ /**
+ * 鑾峰彇鎸囧畾鏃堕棿娈靛唴鐢ㄦ按鏃堕暱浣庝簬鎸囧畾鍊肩殑鍐滄埛
+ * @param qo
+ * @return
+ */
+ public QueryResultVo<List<VoClient>> getSmallWaterDurationClients(WaterDurationQO qo) {
+ /**
+ * 琛ラ綈璧锋鏃堕棿锛屽鏋滃紑濮嬫椂闂翠负绌猴紝鍒欓粯璁や负褰撳墠鏃ユ湡
+ */
+ String timeStart = qo.getTimeStart();
+ String timeStop = qo.getTimeStop();
+ if(timeStart != null && timeStart != "") {
+ timeStart = timeStart + " 00:00:00";
+ }
+ if(timeStop != null && timeStop != "") {
+ timeStop = timeStop + " 23:59:59";
+ }
+ qo.setTimeStart(timeStart);
+ qo.setTimeStop(timeStop);
+
+ // 鐢熸垚鏌ヨ鍙傛暟
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ;
+
+ // 鑾峰彇绗﹀悎鏉′欢鐨勮褰曟暟
+ Long itemTotal = Optional.ofNullable(rmOpenCloseValveHistoryMapper.getSmallWaterDurationClientsCount(params)).orElse(0L);
+
+ QueryResultVo<List<VoClient>> rsVo = new QueryResultVo<>() ;
+
+ rsVo.pageSize = qo.pageSize ;
+ rsVo.pageCurr = qo.pageCurr ;
+
+ rsVo.calculateAndSet(itemTotal, params);
+ rsVo.obj = rmOpenCloseValveHistoryMapper.getSmallWaterDurationClients(params);
return rsVo ;
}
@@ -350,8 +446,12 @@
* @return
*/
public QueryResultVo<List<VoDayClient>> getDayAmountAndMoney(ClientAmountQO qo) throws ParseException {
- Integer year = qo.getYearMonth().getYear();
- Integer month = qo.getYearMonth().getMonthValue();
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
+ String yearMonth = qo.getYearMonth();
+ yearMonth = yearMonth + "-01";
+ yearMonth = dateFormat.format(dateFormat.parse(yearMonth));
+ Integer year = Integer.parseInt(yearMonth.substring(0,4));
+ Integer month = Integer.parseInt(yearMonth.substring(5,7));
qo.setYear(year);
qo.setMonth(month);
@@ -396,4 +496,68 @@
rsVo.obj = rmClientAmountDayLastMapper.getMonthAmountAndMoney(params);
return rsVo ;
}
+
+ /**
+ * 鏈�杩戞湭鍏呭�肩殑鍐滄埛
+ * @param qo
+ * @return
+ */
+ public QueryResultVo<List<VoClient>> getNotRechargeLastClients(CommonQO qo) {
+ String timeStart = qo.getTimeStart();
+ if (timeStart != null && timeStart != ""){
+ timeStart = timeStart + " 00:00:00";
+ qo.setTimeStart(timeStart);
+ }
+ // 鐢熸垚鏌ヨ鍙傛暟
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ;
+
+ // 鑾峰彇绗﹀悎鏉′欢鐨勮褰曟暟
+ Long itemTotal = Optional.ofNullable(rmClientAmountDayLastMapper.getNotRechargeLastClientsCount(params)).orElse(0L);
+
+ QueryResultVo<List<VoClient>> rsVo = new QueryResultVo<>() ;
+
+ rsVo.pageSize = qo.pageSize ;
+ rsVo.pageCurr = qo.pageCurr ;
+
+ rsVo.calculateAndSet(itemTotal, params);
+ rsVo.obj = rmClientAmountDayLastMapper.getNotRechargeLastClients(params);
+ return rsVo ;
+ }
+
+ /**
+ * 鑾峰彇鎸囧畾鏃堕棿娈靛啘鎴凤細鍏呭�煎悎璁°�佹秷璐瑰悎璁°�佷綑棰�
+ * @param qo
+ * @return
+ */
+ public QueryResultVo<List<VoCardUsage>> getClientUsages(CardUsageQO qo) {
+
+ String timeStart = qo.getTimeStart();
+ String timeStop = qo.getTimeStop();
+
+ if (timeStart != null && timeStart != ""){
+ timeStart = timeStart + " 00:00:00";
+ }else {
+ timeStart = LocalDateTime.now().minusYears(1).toString();
+ }
+ if (timeStop != null && timeStop != ""){
+ timeStop = timeStop + " 23:59:59";
+ }else {
+ timeStop = LocalDateTime.now().toString();
+ }
+ qo.setTimeStart(timeStart);
+ qo.setTimeStop(timeStop);
+
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo);
+ // 鑾峰彇绗﹀悎鏉′欢鐨勮褰曟暟
+ Long itemTotal = Optional.ofNullable(seClientMapper.getClientUsagesCount(params)).orElse(0L);
+
+ QueryResultVo<List<VoCardUsage>> rsVo = new QueryResultVo<>() ;
+
+ rsVo.pageSize = qo.pageSize ;
+ rsVo.pageCurr = qo.pageCurr ;
+
+ rsVo.calculateAndSet(itemTotal, params);
+ rsVo.obj = seClientMapper.getClientUsages(params);
+ return rsVo ;
+ }
}
--
Gitblit v1.8.0