From bd448b121e9b7636daa4ec1d1629c3c2615fb2b9 Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期六, 03 八月 2024 11:36:03 +0800 Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV --- pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedback/QueryVo.java | 4 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/webUtil/QueryConditionVo.java | 25 pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/clientAmountDay/ClientAmountDayCtrl.java | 4 pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmClientAmountDayLastMapper.xml | 12 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoOnLineIntake.java | 21 pipIrr-platform/pipIrr-global/src/main/resources/mapper/OpeFeedbackReplyMapper.xml | 48 ++ pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/result/StatisticlResultCode.java | 20 pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java | 115 ++++ pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmAlarmStateLastMapper.xml | 12 pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/controllerAlarmState/ControllerAlarmStateQueryVo.java | 8 pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmIntakeAmountDayLastMapper.xml | 16 pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/qo/IntakeQO.java | 30 + pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/clientAmountDay/ClientAmountDayQueryVo.java | 8 pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/qo/OnLineIntakesQO.java | 9 pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmCommandHistoryMapper.xml | 6 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/webUtil/QueryResultVo.java | 2 pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/intakeAmountDay/IntakeAmountDayCtrl.java | 4 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoIntakeAmountDay.java | 6 pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmAlarmStateHistoryMapper.xml | 8 pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportHistoryMapper.xml | 31 + pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/intakeAmountDay/IntakeAmountDayQueryVo.java | 17 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOnHourReportLastMapper.java | 44 + pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoLossDay.java | 2 pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmClientAmountDayMapper.xml | 8 pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/config/WebFilterConfiguration.java | 51 ++ pipIrr-platform/pipIrr-global/src/main/resources/application-global.yml | 8 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOnHourReportHistoryMapper.java | 15 pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/qo/QoCommand.java | 5 pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/qo/CumulativeFlowQO.java | 20 pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedback/FeedbackCtrl.java | 97 ++++ pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoOp/OpeFeedbackReply.java | 4 pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/config/WebListenerConfiguration.java | 56 ++ pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmIntakeAmountDayMapper.xml | 16 pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntakeSv.java | 148 ++++++ pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/qo/BatteryVoltQO.java | 20 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoIntake.java | 34 + pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedback/FeedbackSv.java | 52 ++ pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportLastMapper.xml | 91 +++ pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrIntakeMapper.java | 1 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoClientAmountDay.java | 4 pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/controllerAlarmState/ControllerAlarmStateCtrl.java | 4 pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/PipIrrOperationApplication.java | 4 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoCumulativeFlow.java | 28 + pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/lossDay/LossDayCtrl.java | 4 pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/lossDay/LossDayQueryVo.java | 8 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoBatteryVolt.java | 28 + pipIrr-platform/pipIrr-global/src/main/resources/mapper/OpeFeedbackMapper.xml | 4 pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml | 81 ++ /dev/null | 10 pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmLossDayMapper.xml | 16 pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedback/ReplyQueryVo.java | 43 + pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoOp/OpeFeedbackReplyMapper.java | 14 pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmLossDayLastMapper.xml | 18 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voOp/VofeedbackReply.java | 40 + 54 files changed, 1,268 insertions(+), 116 deletions(-) diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/webUtil/QueryConditionVo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/webUtil/QueryConditionVo.java index 62a857a..7bfbf5e 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/webUtil/QueryConditionVo.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/webUtil/QueryConditionVo.java @@ -15,13 +15,34 @@ */ @Schema(description = "褰撳墠椤�", requiredMode = Schema.RequiredMode.REQUIRED) @NotNull(message = "褰撳墠椤典笉鑳戒负绌�") //涓嶈兘涓虹┖涔熶笉鑳戒负null - public Integer pageCurr ; + public Integer pageCurr; /** * 姣忛〉鏁版嵁鏉℃暟 */ @Schema(description = "姣忛〉璁板綍鏁�", requiredMode = Schema.RequiredMode.REQUIRED) @NotNull(message = "姣忛〉璁板綍鏁颁笉鑳戒负绌�") //涓嶈兘涓虹┖涔熶笉鑳戒负null - public Integer pageSize ; + public Integer pageSize; + /** + * 璁剧疆褰撳墠榛樿绗竴椤� + * @return + */ + public Integer getPageCurr() { + if (pageCurr == null){ + return 1; + } + return pageCurr; + } + + /** + * 璁剧疆褰撳墠榛樿涓�椤靛崄鏉� + * @return + */ + public Integer getPageSize() { + if (pageSize == null){ + return 10; + } + return pageSize; + } } diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/webUtil/QueryResultVo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/webUtil/QueryResultVo.java index 16d5841..ac64d89 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/webUtil/QueryResultVo.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/webUtil/QueryResultVo.java @@ -69,7 +69,7 @@ * 鏈紶鍏ュ垎椤靛弬鏁版椂锛屽彇鍏ㄩ儴璁板綍 */ //this.pageSize = 1 ;//渚涗笅闈綔涓洪櫎鏁� - this.pageSize = 10000 ;//渚涗笅闈綔涓洪櫎鏁� + this.pageSize = 10 ;//渚涗笅闈綔涓洪櫎鏁� } pageTotal = (int)Math.ceil((itemTotal==null?0.0D:itemTotal.doubleValue())/pageSize); diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoOp/OpeFeedbackReplyMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoOp/OpeFeedbackReplyMapper.java index 66776cb..56fc68d 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoOp/OpeFeedbackReplyMapper.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoOp/OpeFeedbackReplyMapper.java @@ -2,7 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.dy.pipIrrGlobal.pojoOp.OpeFeedbackReply; -import com.dy.pipIrrGlobal.voOp.Vofeedback; +import com.dy.pipIrrGlobal.voOp.VofeedbackReply; import org.apache.ibatis.annotations.Mapper; import java.util.List; @@ -28,7 +28,17 @@ int updateByPrimaryKey(OpeFeedbackReply record); + /** + * 鑾峰彇鍙嶉鍥炲鏁伴噺 + * @param params + * @return + */ Long getRecordCount(Map<String, Object> params); - List<Vofeedback> getFeedbackReplys(Map<String, Object> params); + /** + * 鑾峰彇鍙嶉鍥炲 + * @param params + * @return + */ + List<VofeedbackReply> getFeedbackReply(Map<String, Object> params); } \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrIntakeMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrIntakeMapper.java index 3ab97a6..f67fb00 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrIntakeMapper.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrIntakeMapper.java @@ -162,4 +162,5 @@ * @return */ List<Long> getIntakeIdByNameExcludeId(@Param("id")Long id, @Param("intakeName")String intakeName); + } 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 e510968..ac3353d 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 @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.dy.pipIrrGlobal.pojoRm.RmOnHourReportHistory; import com.dy.pipIrrGlobal.voRm.VoOnHour; +import com.dy.pipIrrGlobal.voSt.VoIntake; import org.apache.ibatis.annotations.Mapper; import java.util.List; @@ -71,4 +72,18 @@ */ List<VoOnHour> getOnHourReports_history(Map<?, ?> params); + /** + * 鑾峰彇鎸囧畾鏃堕棿娈靛唴鏈笂绾垮彇姘村彛鏁伴噺 + * @param params + * @return + */ + Long getNotOnlineIntakesCount(Map<?, ?> params); + + /** + * 鑾峰彇鎸囧畾鏃堕棿娈靛唴鏈笂绾跨殑鍙栨按鍙� + * @param params + * @return + */ + List<VoIntake> getNotOnlineIntakes(Map<?, ?> params); + } \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOnHourReportLastMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOnHourReportLastMapper.java index 63ccf0a..5a09bb7 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOnHourReportLastMapper.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOnHourReportLastMapper.java @@ -3,6 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.dy.pipIrrGlobal.pojoRm.RmOnHourReportLast; import com.dy.pipIrrGlobal.voRm.VoOnHour; +import com.dy.pipIrrGlobal.voSt.VoBatteryVolt; +import com.dy.pipIrrGlobal.voSt.VoCumulativeFlow; import org.apache.ibatis.annotations.Mapper; import java.util.List; @@ -79,4 +81,46 @@ * @return */ List<VoOnHour> getOnHourReports_last(Map<?, ?> params); + + /** + * 鑾峰彇绱娴侀噺瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙f暟閲� + * @param params + * @return + */ + Long getLargeFlowIntakesCount(Map<?, ?> params); + + /** + * 鑾峰彇绱娴侀噺瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙� + * @param params + * @return + */ + List<VoCumulativeFlow> getLargeFlowIntakes(Map<?, ?> params); + + /** + * 鑾峰彇绱娴侀噺浣庝簬鎸囧畾鍊肩殑鍙栨按鍙f暟閲� + * @param params + * @return + */ + Long getSmallFlowIntakesCount(Map<?, ?> params); + + /** + * 鑾峰彇绱娴侀噺浣庝簬鎸囧畾鍊肩殑鍙栨按鍙� + * @param params + * @return + */ + List<VoCumulativeFlow> getSmallFlowIntakes(Map<?, ?> params); + + /** + * 鑾峰彇娆犲帇鍙栨按鍙f暟閲� + * @param params + * @return + */ + Long getUnderVoltIntakesCount(Map<?, ?> params); + + /** + * 鑾峰彇娆犲帇鍙栨按鍙� + * @param params + * @return + */ + List<VoBatteryVolt> getUnderVoltIntakes(Map<?, ?> params); } \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoOp/OpeFeedbackReply.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoOp/OpeFeedbackReply.java index 375dc02..e970e7b 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoOp/OpeFeedbackReply.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoOp/OpeFeedbackReply.java @@ -9,6 +9,7 @@ import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotNull; import lombok.*; +import org.apache.logging.log4j.core.config.plugins.validation.constraints.NotBlank; import java.util.Date; @@ -45,7 +46,7 @@ /** * 鍥炲鍐呭 */ - @NotNull + @NotBlank private String replyContent; /** @@ -57,6 +58,7 @@ * 鍥炲浜篒D */ @NotNull + @JSONField(serializeUsing= ObjectWriterImplToString.class) private Long replierId; diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voOp/VofeedbackReply.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voOp/VofeedbackReply.java new file mode 100644 index 0000000..bc10947 --- /dev/null +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voOp/VofeedbackReply.java @@ -0,0 +1,40 @@ +package com.dy.pipIrrGlobal.voOp; + +import com.dy.common.po.BaseEntity; +import lombok.Data; + +import java.util.Date; + +/** + * @author :WuZeYu + * @Date :2024/8/1 20:07 + * @LastEditTime :2024/8/1 20:07 + * @Description + */ +@Data +public class VofeedbackReply implements BaseEntity { + private static final long serialVersionUID = 202408012009001L; + /** + * 涓婚敭id + */ + private String id; + /** + * 鍙嶉缂栧彿 + */ + private String feedbackId; + + /** + * 鍥炲鍐呭 + */ + private String replyContent; + + /** + * 鍥炲鏃堕棿 + */ + private Date replyTime; + + /** + * 鍥炲浜篒D + */ + private String replierId; +} diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoOnLineIntake.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoOnLineIntake.java index 01f6c46..88d93e0 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoOnLineIntake.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoOnLineIntake.java @@ -30,7 +30,28 @@ private String intakeNum; /** + * 鍙栨按鍙g粡搴� + */ + private Double lng; + + /** + * 鍙栨按鍙g含搴� + */ + private Double lat; + + /** * 鏄惁鍦ㄧ嚎 */ private Boolean isOnLine; + + /** + * 鏄惁缁戝畾 + */ + private Boolean isBinded; + + + /** + * 鎶ヨ淇℃伅Json鏁扮粍 + */ + private String alarm; } diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoClientAmountDay.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoClientAmountDay.java index d105f1c..ee3d3c5 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoClientAmountDay.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoClientAmountDay.java @@ -30,7 +30,9 @@ private Double money; @Schema(description = "缁熻鏃ユ湡(yyyy-mm-dd)", requiredMode = Schema.RequiredMode.NOT_REQUIRED) - private java.sql.Date dt; + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") + private java.util.Date dt; @Schema(description = "缁熻鏃ユ渶鍚庝竴娆″紑闃�鏃ユ湡鏃堕棿锛坹yyy-mm-dd HH:MM:SS锛�", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoIntakeAmountDay.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoIntakeAmountDay.java index 9d1b4ea..bd74f94 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoIntakeAmountDay.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoIntakeAmountDay.java @@ -6,6 +6,8 @@ import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; +import java.util.Date; + /** * @author :WuZeYu * @Date :2024/7/24 10:27 @@ -29,7 +31,9 @@ private Double amount; @Schema(description = "缁熻鏃ユ湡(yyyy-mm-dd)", requiredMode = Schema.RequiredMode.NOT_REQUIRED) - private java.sql.Date dt; +// private java.sql.Date dt; + @JsonFormat(pattern = "yyyy-MM-dd") + private Date dt; @Schema(description = "鏈�鍚庤姘撮噺涓婃姤鏁版嵁鎺ユ敹鏃堕棿(yyyy-mm-dd hh:mm:ss)", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoLossDay.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoLossDay.java index 7849c78..d8a03ec 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoLossDay.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voRm/VoLossDay.java @@ -31,6 +31,8 @@ private String rtuAddr; @Schema(description = "缁熻鏃ユ湡(yyyy-mm-dd)", requiredMode = Schema.RequiredMode.NOT_REQUIRED) + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private java.sql.Date dt; @Schema(description = "鎺у埗鍣ㄦ渶鍚庝笂鎶ユ暟鎹棩鏈熸椂闂�(yyyy-mm-dd hh:mm:ss)", requiredMode = Schema.RequiredMode.NOT_REQUIRED) diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoBatteryVolt.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoBatteryVolt.java new file mode 100644 index 0000000..f5c7b81 --- /dev/null +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoBatteryVolt.java @@ -0,0 +1,28 @@ +package com.dy.pipIrrGlobal.voSt; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.util.Date; + +/** + * @author ZhuBaoMin + * @date 2024-08-03 10:10 + * @LastEditTime 2024-08-03 10:10 + * @Description 鐢垫睜鐢靛帇瑙嗗浘 + */ + +@Data +public class VoBatteryVolt extends VoIntake { + + /** + * 鐢垫睜鐢靛帇 + */ + private Double batteryVolt; + + /** + * 鏁版嵁鑾峰彇鏃ユ湡 + */ + @JsonFormat(pattern = "yyyy-MM-dd") + private Date getDate; +} diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoCumulativeFlow.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoCumulativeFlow.java new file mode 100644 index 0000000..74cfe54 --- /dev/null +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoCumulativeFlow.java @@ -0,0 +1,28 @@ +package com.dy.pipIrrGlobal.voSt; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.util.Date; + +/** + * @author ZhuBaoMin + * @date 2024-08-01 16:12 + * @LastEditTime 2024-08-01 16:12 + * @Description 绱娴侀噺瑙嗗浘 + */ + +@Data +public class VoCumulativeFlow extends VoIntake { + + /** + * 绱娴侀噺 + */ + private Double cumulativeFlow; + + /** + * 鏁版嵁鑾峰彇鏃ユ湡 + */ + @JsonFormat(pattern = "yyyy-MM-dd") + private Date getDate; +} diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoIntake.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoIntake.java new file mode 100644 index 0000000..dcc8f06 --- /dev/null +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoIntake.java @@ -0,0 +1,34 @@ +package com.dy.pipIrrGlobal.voSt; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.alibaba.fastjson2.writer.ObjectWriterImplToString; +import lombok.Data; + +/** + * @author ZhuBaoMin + * @date 2024-08-01 14:03 + * @LastEditTime 2024-08-01 14:03 + * @Description 鍙栨按鍙g粺璁$粨鏋滆鍥惧璞� + */ + +@Data +public class VoIntake { + private static final long serialVersionUID = 202408311404001L; + + /** + * 鍙栨按鍙D + */ + @JSONField(serializeUsing= ObjectWriterImplToString.class) + private Long intakeId; + + /** + * 鍙栨按鍙g紪鍙� + */ + private String intakeNum; + + /** + * 鍙栨按鍙f墍灞炵墖鍖� + */ + private String blockName; + +} 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 3fd34ef..1e01f5b 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: false #鏄惁寮�鍙戦樁娈碉紝true鎴杅alse dsName: ym #寮�鍙戦樁娈碉紝璁剧疆涓存椂鐨勬暟鎹簱鍚嶇О mw: webPort: 8070 @@ -175,4 +175,8 @@ access-token: fecef8e7725998f8912af05419580861aafc73413c4920036c07c050fa33055f secret: SEC6042bc964d08899a5853eb321eb5a4d842a395982777f815bd07451c879228b7 at-all: true - mobile: 18602657034 \ No newline at end of file + mobile: 18602657034 + +#闃�鎺у櫒鍙傛暟 +rtu: + batteryVolt: 17 \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/OpeFeedbackMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/OpeFeedbackMapper.xml index f660158..60bfee9 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/OpeFeedbackMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/OpeFeedbackMapper.xml @@ -212,10 +212,10 @@ from ope_feedback ofb left join se_client sc on ofb.feedbacker_id = sc.id <where> - <if test="feedbackerId != null"> + <if test="feedbackerId != null and feedbackerId != '' "> and ofb.feedbacker_id = #{feedbackerId,jdbcType=BIGINT} </if> - <if test="feedbackerName != null"> + <if test="feedbackerName != null and feedbackerName != '' "> and sc.name = #{feedbackerName,jdbcType=VARCHAR} </if> <if test="timeStart != null"> diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/OpeFeedbackReplyMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/OpeFeedbackReplyMapper.xml index 1b5bbf5..9200aaf 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/OpeFeedbackReplyMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/OpeFeedbackReplyMapper.xml @@ -99,4 +99,52 @@ replier_id = #{replierId,jdbcType=BIGINT} where id = #{id,jdbcType=BIGINT} </update> + + <select id="getRecordCount" resultType="java.lang.Long"> + select count(*) from ope_feedback_reply ofbr + inner join ope_feedback ofb on ofbr.feedback_id = ofb.id + <where> + <if test="feedbackId != null and feedbackId != '' "> + and ofbr.feedback_id = #{feedbackId,jdbcType=BIGINT} + </if> + <if test="replierId != null and replierId != '' "> + and ofbr.replier_id = #{replierId,jdbcType=BIGINT} + </if> + <if test="replyTimeStart != null"> + and ofbr.reply_time >= #{replyTimeStart} + </if> + <if test="replyTimeStop != null"> + and ofbr.reply_time <= #{replyTimeStop} + </if> + </where> + </select> + + <select id="getFeedbackReply" resultType="com.dy.pipIrrGlobal.voOp.VofeedbackReply"> + select + CAST(ofbr.id as char) AS id, + CAST(ofbr.feedback_id as char) AS feedbackId, + ofbr.reply_content as replyContent, + ofbr.reply_time as replyTime, + CAST(ofbr.replier_id as char) AS replierId + from ope_feedback_reply ofbr + inner join ope_feedback ofb on ofbr.feedback_id = ofb.id + <where> + <if test="feedbackId != null and feedbackId != '' "> + and ofbr.feedback_id = #{feedbackId,jdbcType=BIGINT} + </if> + <if test="replierId != null and replierId != '' "> + and ofbr.replier_id = #{replierId,jdbcType=BIGINT} + </if> + <if test="replyTimeStart != null"> + and ofbr.reply_time >= #{replyTimeStart} + </if> + <if test="replyTimeStop != null"> + and ofbr.reply_time <= #{replyTimeStop} + </if> + </where> + order by ofbr.id desc + <if test="pageCurr != null and pageSize != null"> + LIMIT ${(pageCurr-1)*pageSize}, ${pageSize} + </if> + </select> </mapper> \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml index 54809d4..8cc3a20 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrIntakeMapper.xml @@ -362,10 +362,23 @@ <select id="getOnLineIntakesCount" resultType="java.lang.Long"> SELECT COUNT(*) AS recordCount - FROM pr_controller con - INNER JOIN pr_intake inta ON con.intakeId = inta.id - left JOIN JSON_TABLE( - <!--'[{"rtuAddr":"37142501020100215","isOnLine":true},{"rtuAddr":"4000004","isOnLine":true},{"rtuAddr":"dy20240325","isOnLine":false}]',--> + FROM pr_intake inta + LEFT JOIN pr_controller con ON con.intakeId = inta.id + LEFT JOIN( + SELECT + intake_id AS intakeId, + CONCAT( + IF(alarm_loss = 1, IF(alarm_water_meter_fault = 1, '娴侀噺璁℃晠闅�,', ''), IF(alarm_water_meter_fault = 1, '娴侀噺璁℃晠闅�', '')), + IF(alarm_battery_volt = 1, IF(alarm_loss = 1, '婕忔崯(鍋锋按)鎶ヨ,', ''), IF(alarm_loss = 1, '婕忔崯(鍋锋按)鎶ヨ', '')), + IF(alarm_valve = 1, IF(alarm_battery_volt = 1, '钃勭數姹犵數鍘嬫姤璀�,', ''), IF(alarm_battery_volt = 1, '钃勭數姹犵數鍘嬫姤璀�', '')), + IF(alarm_valve = 1, '闃�闂ㄦ姤璀�', '') + ) AS alarm + FROM rm_alarm_state_last + WHERE (alarm_water_meter_fault = 1 OR alarm_loss = 1 OR alarm_battery_volt = 1 OR alarm_valve = 1) + AND dt >= DATE_SUB(NOW(),INTERVAL 12 HOUR) + ) alarm ON alarm.intakeId = inta.id + LEFT JOIN JSON_TABLE( + <!--'[{"rtuAddr":"37142501020100215","isOnLine":true},{"rtuAddr":"4000004","isOnLine":true},{"rtuAddr":"dy20240325","isOnLine":false}]',--> #{onLineMap}, '$[*]' COLUMNS( rtuAddr VARCHAR(20) PATH '$.rtuAddr', @@ -379,26 +392,52 @@ <if test="intakeNum != null and intakeNum != ''"> AND inta.name = #{intakeNum} </if> + <if test="isBinded == false "> + AND con.rtuAddr IS NULL + </if> + <if test="isBinded == true "> + AND con.rtuAddr IS NOT NULL + </if> </where> </select> <!--鑾峰彇鍙栨按鍙e垪琛紙鍦ㄧ嚎鍜屼笉鍦ㄥ厛锛�--> <select id="getOnLineIntakes" resultType="com.dy.pipIrrGlobal.voPr.VoOnLineIntake"> SELECT - con.intakeId, - con.rtuAddr, - inta.name AS intakeNum, - rtus.isOnLine - FROM pr_controller con - INNER JOIN pr_intake inta ON con.intakeId = inta.id - left JOIN JSON_TABLE( - <!--'[{"rtuAddr":"37142501020100215","isOnLine":true},{"rtuAddr":"4000004","isOnLine":true},{"rtuAddr":"dy20240325","isOnLine":false}]',--> - #{onLineMap}, - '$[*]' COLUMNS( - rtuAddr VARCHAR(20) PATH '$.rtuAddr', - isOnLine BOOLEAN PATH '$.isOnLine' - ) - ) rtus ON con.rtuAddr = rtus.rtuAddr + inta.id AS intakeId, + con.rtuAddr, + inta.name AS intakeNum, + inta.lng, + inta.lat, + (CASE + WHEN con.rtuAddr IS NULL THEN "false" + WHEN con.rtuAddr IS NOT NULL THEN "true" + END) AS isBinded, + rtus.isOnLine, + alarm.alarm + FROM pr_intake inta + LEFT JOIN pr_controller con ON con.intakeId = inta.id + LEFT JOIN( + SELECT + intake_id AS intakeId, + CONCAT( + IF(alarm_loss = 1, IF(alarm_water_meter_fault = 1, '娴侀噺璁℃晠闅�,', ''), IF(alarm_water_meter_fault = 1, '娴侀噺璁℃晠闅�', '')), + IF(alarm_battery_volt = 1, IF(alarm_loss = 1, '婕忔崯(鍋锋按)鎶ヨ,', ''), IF(alarm_loss = 1, '婕忔崯(鍋锋按)鎶ヨ', '')), + IF(alarm_valve = 1, IF(alarm_battery_volt = 1, '钃勭數姹犵數鍘嬫姤璀�,', ''), IF(alarm_battery_volt = 1, '钃勭數姹犵數鍘嬫姤璀�', '')), + IF(alarm_valve = 1, '闃�闂ㄦ姤璀�', '') + ) AS alarm + FROM rm_alarm_state_last + WHERE (alarm_water_meter_fault = 1 OR alarm_loss = 1 OR alarm_battery_volt = 1 OR alarm_valve = 1) + AND dt >= DATE_SUB(NOW(),INTERVAL 12 HOUR) + ) alarm ON alarm.intakeId = inta.id + LEFT JOIN JSON_TABLE( + <!--'[{"rtuAddr":"37142501020100215","isOnLine":true},{"rtuAddr":"4000004","isOnLine":true},{"rtuAddr":"dy20240325","isOnLine":false}]',--> + #{onLineMap}, + '$[*]' COLUMNS( + rtuAddr VARCHAR(20) PATH '$.rtuAddr', + isOnLine BOOLEAN PATH '$.isOnLine' + ) + ) rtus ON con.rtuAddr = rtus.rtuAddr <where> <if test="isOnLine != null"> rtus.isOnLine = #{isOnLine} @@ -406,6 +445,12 @@ <if test="intakeNum != null and intakeNum != ''"> AND inta.name = #{intakeNum} </if> + <if test="isBinded == false "> + AND con.rtuAddr IS NULL + </if> + <if test="isBinded == true "> + AND con.rtuAddr IS NOT NULL + </if> </where> order by con.id ASC <if test="pageCurr != null and pageSize != null"> diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmAlarmStateHistoryMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmAlarmStateHistoryMapper.xml index d0fa274..5fc59a3 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmAlarmStateHistoryMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmAlarmStateHistoryMapper.xml @@ -396,10 +396,10 @@ <if test="valveState != null"> and rash.valve_state = #{valveState,jdbcType=TINYINT} </if> - <if test="intakeId != null"> + <if test="intakeId != null and intakeId != '' "> and rash.intake_id = #{intakeId} </if> - <if test="intakeName != null"> + <if test="intakeName != null and intakeName != '' "> and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%') </if> <if test="startDt != null"> @@ -480,10 +480,10 @@ <if test="valveState != null"> and rash.valve_state = #{valveState,jdbcType=TINYINT} </if> - <if test="intakeId != null"> + <if test="intakeId != null and intakeId != '' "> and rash.intake_id = #{intakeId} </if> - <if test="intakeName != null"> + <if test="intakeName != null and intakeName != '' "> and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%') </if> <if test="startDt != null"> diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmAlarmStateLastMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmAlarmStateLastMapper.xml index 884118b..53147f1 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmAlarmStateLastMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmAlarmStateLastMapper.xml @@ -390,10 +390,10 @@ <if test="valveState != null"> and rasl.valve_state = #{valveState,jdbcType=TINYINT} </if> - <if test="intakeId != null"> - and rasl.intake_id = #{intakeId} + <if test="intakeId != null and intakeId != '' "> + and rash.intake_id = #{intakeId} </if> - <if test="intakeName != null"> + <if test="intakeName != null and intakeName != '' "> and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%') </if> <if test="startDt != null"> @@ -474,10 +474,10 @@ <if test="valveState != null"> and rasl.valve_state = #{valveState,jdbcType=TINYINT} </if> - <if test="intakeId != null"> - and rasl.intake_id = #{intakeId} + <if test="intakeId != null and intakeId != '' "> + and rash.intake_id = #{intakeId} </if> - <if test="intakeName != null"> + <if test="intakeName != null and intakeName != '' "> and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%') </if> <if test="startDt != null"> diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmClientAmountDayLastMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmClientAmountDayLastMapper.xml index 997fdf5..2e25990 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmClientAmountDayLastMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmClientAmountDayLastMapper.xml @@ -194,11 +194,11 @@ from rm_client_amount_day_last rcadl Left join se_client sc on sc.id = rcadl.client_id <where> - <if test="clientName != null"> + <if test="clientName != null and clientName != '' "> and sc.name like CONCAT('%',#{clientName,jdbcType=VARCHAR},'%') </if> - <if test="clientId != null"> - and rcadl.client_id = #{clientId} + <if test="clientId != null and clientId != ''"> + and rcad.client_id = #{clientId} </if> <if test="startDt != null"> and rcadl.dt >= #{startDt,jdbcType=DATE} @@ -225,11 +225,11 @@ from rm_client_amount_day_last rcadl Left join se_client sc on sc.id = rcadl.client_id <where> - <if test="clientName != null"> + <if test="clientName != null and clientName != '' "> and sc.name like CONCAT('%',#{clientName,jdbcType=VARCHAR},'%') </if> - <if test="clientId != null"> - and rcadl.client_id = #{clientId} + <if test="clientId != null and clientId != ''"> + and rcad.client_id = #{clientId} </if> <if test="startDt != null"> and rcadl.dt >= #{startDt,jdbcType=DATE} diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmClientAmountDayMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmClientAmountDayMapper.xml index 7275f77..0c43003 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmClientAmountDayMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmClientAmountDayMapper.xml @@ -184,10 +184,10 @@ from rm_client_amount_day rcad Left join se_client sc on sc.id = rcad.client_id <where> - <if test="clientName != null"> + <if test="clientName != null and clientName != '' "> and sc.name like CONCAT('%',#{clientName,jdbcType=VARCHAR},'%') </if> - <if test="clientId != null"> + <if test="clientId != null and clientId != ''"> and rcad.client_id = #{clientId} </if> <if test="startDt != null"> @@ -215,10 +215,10 @@ from rm_client_amount_day rcad Left join se_client sc on sc.id = rcad.client_id <where> - <if test="clientName != null"> + <if test="clientName != null and clientName != '' "> and sc.name like CONCAT('%',#{clientName,jdbcType=VARCHAR},'%') </if> - <if test="clientId != null"> + <if test="clientId != null and clientId != ''"> and rcad.client_id = #{clientId} </if> <if test="startDt != null"> diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmCommandHistoryMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmCommandHistoryMapper.xml index be493a4..0f4282c 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmCommandHistoryMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmCommandHistoryMapper.xml @@ -255,6 +255,9 @@ LEFT JOIN se_client cli ON cli.id = his.operator LEFT JOIN ba_user user ON user.id = his.operator <where> + <if test="intakeId != null"> + AND his.intake_id = #{intakeId} + </if> <if test = "commandName != null and commandName !=''"> AND his.command_name LIKE CONCAT('%',#{commandName},'%') </if> @@ -288,6 +291,9 @@ LEFT JOIN se_client cli ON cli.id = his.operator LEFT JOIN ba_user user ON user.id = his.operator <where> + <if test="intakeId != null"> + AND his.intake_id = #{intakeId} + </if> <if test = "commandName != null and commandName !=''"> AND his.command_name LIKE CONCAT('%',#{commandName},'%') </if> diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmIntakeAmountDayLastMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmIntakeAmountDayLastMapper.xml index 0c1693a..915a04f 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmIntakeAmountDayLastMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmIntakeAmountDayLastMapper.xml @@ -173,11 +173,11 @@ from rm_intake_amount_day_last riadl Left join pr_intake pint on pint.id = riadl.intake_id <where> - <if test="intakeName != null"> - and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%') + <if test="intakeId != null and intakeId != '' "> + and rash.intake_id = #{intakeId} </if> - <if test="intakeId != null"> - and riadl.intake_id = #{intakeId} + <if test="intakeName != null and intakeName != '' "> + and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%') </if> <if test="startDt != null"> and riadl.dt >= #{startDt,jdbcType=DATE} @@ -202,11 +202,11 @@ from rm_intake_amount_day_last riadl Left join pr_intake pint on pint.id = riadl.intake_id <where> - <if test="intakeName != null"> - and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%') + <if test="intakeId != null and intakeId != '' "> + and rash.intake_id = #{intakeId} </if> - <if test="intakeId != null"> - and riadl.intake_id = #{intakeId} + <if test="intakeName != null and intakeName != '' "> + and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%') </if> <if test="startDt != null"> and riadl.dt >= #{startDt,jdbcType=DATE} 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 4def2f1..96ecc72 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmIntakeAmountDayMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmIntakeAmountDayMapper.xml @@ -161,11 +161,11 @@ from rm_intake_amount_day riad Left join pr_intake pint on pint.id = riad.intake_id <where> - <if test="intakeName != null"> - and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%') + <if test="intakeId != null and intakeId != '' "> + and rash.intake_id = #{intakeId} </if> - <if test="intakeId != null"> - and riad.intake_id = #{intakeId} + <if test="intakeName != null and intakeName != '' "> + and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%') </if> <if test="startDt != null"> and riad.dt >= #{startDt,jdbcType=DATE} @@ -190,11 +190,11 @@ from rm_intake_amount_day riad Left join pr_intake pint on pint.id = riad.intake_id <where> - <if test="intakeName != null"> - and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%') + <if test="intakeId != null and intakeId != '' "> + and rash.intake_id = #{intakeId} </if> - <if test="intakeId != null"> - and riad.intake_id = #{intakeId} + <if test="intakeName != null and intakeName != '' "> + and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%') </if> <if test="startDt != null"> and riad.dt >= #{startDt,jdbcType=DATE} diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmLossDayLastMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmLossDayLastMapper.xml index f3dfb90..fab983b 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmLossDayLastMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmLossDayLastMapper.xml @@ -165,11 +165,11 @@ from rm_loss_day_last rldl Left join pr_intake pint on pint.id = rldl.intake_id <where> - <if test="intakeName != null"> - and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%') + <if test="intakeId != null and intakeId != '' "> + and rash.intake_id = #{intakeId} </if> - <if test="intakeId != null"> - and rldl.intake_id = #{intakeId} + <if test="intakeName != null and intakeName != '' "> + and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%') </if> <if test="startDt != null"> and rldl.dt >= #{startDt,jdbcType=DATE} @@ -193,11 +193,11 @@ from rm_loss_day_last rldl Left join pr_intake pint on pint.id = rldl.intake_id <where> - <if test="intakeName != null"> - and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%') + <if test="intakeId != null and intakeId != '' "> + and rash.intake_id = #{intakeId} </if> - <if test="intakeId != null"> - and rldl.intake_id = #{intakeId} + <if test="intakeName != null and intakeName != '' "> + and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%') </if> <if test="startDt != null"> and rldl.dt >= #{startDt,jdbcType=DATE} @@ -206,7 +206,7 @@ and rldl.dt <= #{endDt,jdbcType=DATE} </if> </where> - ORDER BY rld.dt DESC , rld.loss_amount DESC + ORDER BY rldl.dt DESC , rldl.loss_amount DESC <if test="pageCurr != null and pageSize != null"> LIMIT ${(pageCurr-1)*pageSize}, ${pageSize} </if> 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 bdf5d9a..f1dcebb 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmLossDayMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmLossDayMapper.xml @@ -155,11 +155,11 @@ from rm_loss_day rld Left join pr_intake pint on pint.id = rld.intake_id <where> - <if test="intakeName != null"> - and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%') + <if test="intakeId != null and intakeId != '' "> + and rash.intake_id = #{intakeId} </if> - <if test="intakeId != null"> - and rld.intake_id = #{intakeId} + <if test="intakeName != null and intakeName != '' "> + and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%') </if> <if test="startDt != null"> and rld.dt >= #{startDt,jdbcType=DATE} @@ -183,11 +183,11 @@ from rm_loss_day rld Left join pr_intake pint on pint.id = rld.intake_id <where> - <if test="intakeName != null"> - and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%') + <if test="intakeId != null and intakeId != '' "> + and rash.intake_id = #{intakeId} </if> - <if test="intakeId != null"> - and rld.intake_id = #{intakeId} + <if test="intakeName != null and intakeName != '' "> + and pint.name like CONCAT('%',#{intakeName,jdbcType=VARCHAR},'%') </if> <if test="startDt != null"> and rld.dt >= #{startDt,jdbcType=DATE} 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 8a7c937..461c263 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportHistoryMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportHistoryMapper.xml @@ -255,4 +255,35 @@ </trim> </select> + <!--鑾峰彇鎸囧畾鏃堕棿娈靛唴鏈笂绾垮彇姘村彛鏁伴噺--> + <select id="getNotOnlineIntakesCount" resultType="java.lang.Long"> + SELECT + COUNT(*) AS recordCount + FROM pr_intake inta + LEFT JOIN (SELECT * FROM rm_on_hour_report_history WHERE dt BETWEEN #{timeStart} AND #{timeStop}) his ON his.intake_id = inta.id + INNER JOIN ba_block blo ON blo.id = inta.blockId + WHERE his.intake_id IS NULL AND inta.deleted = 0 + + </select> + + <!--鑾峰彇鎸囧畾鏃堕棿娈靛唴鏈笂绾跨殑鍙栨按鍙�--> + <select id="getNotOnlineIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoIntake"> + SELECT + inta.id AS intakeId, + inta.name AS intakeNum, + blo.name AS blockName + FROM pr_intake inta + LEFT JOIN (SELECT * FROM rm_on_hour_report_history WHERE dt BETWEEN #{timeStart} AND #{timeStop}) his ON his.intake_id = inta.id + INNER JOIN ba_block blo ON blo.id = inta.blockId + WHERE his.intake_id IS NULL AND inta.deleted = 0 + 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-global/src/main/resources/mapper/RmOnHourReportLastMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportLastMapper.xml index 2d91d54..8ce03ba 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportLastMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportLastMapper.xml @@ -262,4 +262,95 @@ </if> </trim> </select> + + <!--鑾峰彇绱娴侀噺瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙f暟閲�--> + <select id="getLargeFlowIntakesCount" resultType="java.lang.Long"> + SELECT + COUNT(*) AS recordCount + FROM pr_intake inta + INNER JOIN rm_on_hour_report_last hou ON hou.intake_id = inta.id + INNER JOIN ba_block blo ON blo.id = inta.blockId + WHERE inta.deleted = 0 AND hou.total_amount > #{totalAmount} + </select> + + <!--鑾峰彇绱娴侀噺瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�--> + <select id="getLargeFlowIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoCumulativeFlow"> + SELECT + inta.id AS intakeId, + inta.name AS intakeNum, + blo.name AS blockName, + CAST(hou.total_amount AS DECIMAL(10, 2)) AS cumulativeFlow, + hou.dt AS getDate + FROM pr_intake inta + INNER JOIN rm_on_hour_report_last hou ON hou.intake_id = inta.id + INNER JOIN ba_block blo ON blo.id = inta.blockId + WHERE inta.deleted = 0 AND hou.total_amount > #{totalAmount} + ORDER BY hou.dt + <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="getSmallFlowIntakesCount" resultType="java.lang.Long"> + SELECT + COUNT(*) AS recordCount + FROM pr_intake inta + INNER JOIN rm_on_hour_report_last hou ON hou.intake_id = inta.id + INNER JOIN ba_block blo ON blo.id = inta.blockId + WHERE inta.deleted = 0 AND hou.total_amount < #{totalAmount} + </select> + + <!--鑾峰彇绱娴侀噺浣庝簬鎸囧畾鍊肩殑鍙栨按鍙�--> + <select id="getSmallFlowIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoCumulativeFlow"> + SELECT + inta.id AS intakeId, + inta.name AS intakeNum, + blo.name AS blockName, + <!-- FORMAT(hou.total_amount,2) AS cumulativeFlow,--> + CAST(hou.total_amount AS DECIMAL(10, 2)) AS cumulativeFlow, + hou.dt AS getDate + FROM pr_intake inta + INNER JOIN rm_on_hour_report_last hou ON hou.intake_id = inta.id + INNER JOIN ba_block blo ON blo.id = inta.blockId + WHERE inta.deleted = 0 AND hou.total_amount < #{totalAmount} + ORDER BY hou.dt + <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="getUnderVoltIntakesCount" resultType="java.lang.Long"> + SELECT + COUNT(*) AS recordCount + FROM pr_intake inta + INNER JOIN rm_on_hour_report_last hou ON hou.intake_id = inta.id + INNER JOIN ba_block blo ON blo.id = inta.blockId + WHERE inta.deleted = 0 AND hou.battery_volt < #{batteryVolt} + </select> + + <!--鑾峰彇娆犲帇鍙栨按鍙�--> + <select id="getUnderVoltIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoBatteryVolt"> + SELECT + inta.id AS intakeId, + inta.name AS intakeNum, + blo.name AS blockName, + hou.battery_volt AS batteryVolt, + hou.dt AS getDate + FROM pr_intake inta + INNER JOIN rm_on_hour_report_last hou ON hou.intake_id = inta.id + INNER JOIN ba_block blo ON blo.id = inta.blockId + WHERE inta.deleted = 0 AND hou.battery_volt < #{batteryVolt} + ORDER BY hou.dt + <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-web-operation/src/main/java/com/dy/pipIrrOperation/PipIrrWebOperationApplication.java b/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/PipIrrOperationApplication.java similarity index 90% rename from pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/PipIrrWebOperationApplication.java rename to pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/PipIrrOperationApplication.java index afaf09e..276dfb9 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/PipIrrWebOperationApplication.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/PipIrrOperationApplication.java @@ -19,10 +19,10 @@ } ) @MapperScan(basePackages={"com.dy.pipIrrGlobal.daoRm", "com.dy.pipIrrGlobal.daoPr", "com.dy.pipIrrGlobal.daoSe", "com.dy.pipIrrGlobal.daoBa","com.dy.pipIrrGlobal.daoOp"}) -public class PipIrrWebOperationApplication { +public class PipIrrOperationApplication { public static void main(String[] args) { - SpringApplication.run(PipIrrWebOperationApplication.class, args); + SpringApplication.run(PipIrrOperationApplication.class, args); } } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedback/FeedbackCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedback/FeedbackCtrl.java index dcc040c..7308978 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedback/FeedbackCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedback/FeedbackCtrl.java @@ -5,7 +5,9 @@ import com.dy.common.webUtil.BaseResponseUtils; import com.dy.common.webUtil.QueryResultVo; import com.dy.pipIrrGlobal.pojoOp.OpeFeedback; +import com.dy.pipIrrGlobal.pojoOp.OpeFeedbackReply; import com.dy.pipIrrGlobal.voOp.Vofeedback; +import com.dy.pipIrrGlobal.voOp.VofeedbackReply; import io.swagger.v3.oas.annotations.Parameter; import jakarta.validation.Valid; import lombok.RequiredArgsConstructor; @@ -132,4 +134,99 @@ return BaseResponseUtils.buildException(e.getMessage()); } } + + + /** + * 娣诲姞闂鍙嶉鍥炲 + * @param reply + * @param bindingResult + * @return + */ + @PostMapping(path = "addReply", consumes = MediaType.APPLICATION_JSON_VALUE) + @Transactional(rollbackFor = Exception.class) + @SsoAop + public BaseResponse<Boolean> addReply(@RequestBody @Valid OpeFeedbackReply reply, @Parameter(hidden = true) BindingResult bindingResult){ + if (bindingResult != null && bindingResult.hasErrors()) { + return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); + } + Integer rec = Optional.ofNullable(feedbackSv.addReply(reply)).orElse(0); + if (rec == 0) { + return BaseResponseUtils.buildFail("娣诲姞鍥炲澶辫触"); + } + return BaseResponseUtils.buildSuccess(true); + } + + /** + * 淇敼闂鍙嶉鍥炲 + * @param reply + * @param bindingResult + * @return + */ + @PostMapping(path = "updateReply", consumes = MediaType.APPLICATION_JSON_VALUE) + @Transactional(rollbackFor = Exception.class) + @SsoAop() + public BaseResponse<Boolean> updateReply(@RequestBody @Parameter(description = "form琛ㄥ崟json鏁版嵁", required = true) @Valid OpeFeedbackReply reply, @Parameter(hidden = true) BindingResult bindingResult) { + if (bindingResult != null && bindingResult.hasErrors()) { + return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); + } + int count ; + try { + count = feedbackSv.updateReply(reply); + } catch (Exception e) { + log.error("淇敼闂鍙嶉鍥炲寮傚父", e); + return BaseResponseUtils.buildException(e.getMessage()); + } + if (count <= 0) { + return BaseResponseUtils.buildFail("淇敼鍙嶉鍥炲澶辫触"); + } else { + return BaseResponseUtils.buildSuccess(true); + } + } + + /** + * 鍒犻櫎闂鍙嶉鍥炲 + * @param map + * @return + */ + @PostMapping(path = "deleteReply") + @Transactional(rollbackFor = Exception.class) + @SsoAop() + public BaseResponse<Boolean> deleteReply(@RequestBody Map map) { + if (map == null || map.size() <= 0) { + return BaseResponseUtils.buildFail("璇蜂紶鍏d"); + } + Long id = Long.parseLong(map.get("id").toString()); + try { + Integer recordCount = Optional.ofNullable(feedbackSv.deleteReply(id)).orElse(0); + if (recordCount == 0) { + return BaseResponseUtils.buildFail("鍒犻櫎澶辫触"); + } else { + return BaseResponseUtils.buildSuccess(true); + } + } catch (Exception e) { + log.error("鍒犻櫎寮傚父", e); + return BaseResponseUtils.buildException(e.getMessage()); + } + } + + + /** + * 鍒嗛〉鏌ヨ闂鍙嶉鍥炲 + * @param qo + * @return + */ + @GetMapping(path = "getFeedbackReply") + @SsoAop() + public BaseResponse<QueryResultVo<List<VofeedbackReply>>> getFeedbackReply(ReplyQueryVo qo) { + try { + QueryResultVo<List<VofeedbackReply>> res = feedbackSv.getFeedbackReply(qo); + if (res == null) { + return BaseResponseUtils.buildFail("鏌ヨ澶辫触"); + } + return BaseResponseUtils.buildSuccess(res); + } catch (Exception e) { + log.error("鏌ヨ寮傚父", e); + return BaseResponseUtils.buildException(e.getMessage()); + } + } } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedback/FeedbackSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedback/FeedbackSv.java index 07a54d9..ccc704d 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedback/FeedbackSv.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedback/FeedbackSv.java @@ -2,8 +2,11 @@ import com.dy.common.webUtil.QueryResultVo; import com.dy.pipIrrGlobal.daoOp.OpeFeedbackMapper; +import com.dy.pipIrrGlobal.daoOp.OpeFeedbackReplyMapper; import com.dy.pipIrrGlobal.pojoOp.OpeFeedback; +import com.dy.pipIrrGlobal.pojoOp.OpeFeedbackReply; import com.dy.pipIrrGlobal.voOp.Vofeedback; +import com.dy.pipIrrGlobal.voOp.VofeedbackReply; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.common.utils.PojoUtils; @@ -27,6 +30,9 @@ public class FeedbackSv { @Autowired private OpeFeedbackMapper opeFeedbackMapper; + + @Autowired + private OpeFeedbackReplyMapper opeFeedbackReplyMapper; /** * 娣诲姞闂鍙嶉 @@ -76,4 +82,50 @@ rsVo.obj = opeFeedbackMapper.getFeedbacks(params); return rsVo; } + + /** + * 娣诲姞闂鍙嶉鍥炲 + * @param reply + * @return + */ + public Integer addReply(OpeFeedbackReply reply) { + reply.setReplyTime(new Date()); + return opeFeedbackReplyMapper.insertSelective(reply); + } + + /** + * 淇敼闂鍙嶉鍥炲 + * @param reply + * @return + */ + public int updateReply(OpeFeedbackReply reply) { + reply.setReplyTime(new Date()); + return opeFeedbackReplyMapper.updateByPrimaryKeySelective(reply); + } + + /** + * 鍒犻櫎闂鍙嶉鍥炲 + * @param id + * @return + */ + public Integer deleteReply(Long id) { + return opeFeedbackReplyMapper.deleteByPrimaryKey(id); + } + + /** + * 鑾峰彇鍙嶉鍥炲 + * @param qo + * @return + */ + public QueryResultVo<List<VofeedbackReply>> getFeedbackReply(ReplyQueryVo qo) { + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo); + Long itemTotal = opeFeedbackReplyMapper.getRecordCount(params); + + QueryResultVo<List<VofeedbackReply>> rsVo = new QueryResultVo<>(); + rsVo.pageSize = qo.pageSize; + rsVo.pageCurr = qo.pageCurr; + rsVo.calculateAndSet(itemTotal, params); + rsVo.obj = opeFeedbackReplyMapper.getFeedbackReply(params); + return rsVo; + } } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedback/QueryVo.java b/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedback/QueryVo.java index 3622ecd..d12a8f8 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedback/QueryVo.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedback/QueryVo.java @@ -34,12 +34,12 @@ /** * 鏌ヨ寮�濮嬫棩鏈� */ - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd") private Date timeStart; /** * 鏌ヨ缁撴潫鏃ユ湡 */ - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd") private Date timeStop; } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedback/ReplyQueryVo.java b/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedback/ReplyQueryVo.java new file mode 100644 index 0000000..c9b887d --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedback/ReplyQueryVo.java @@ -0,0 +1,43 @@ +package com.dy.pipIrrOperation.feedback; + +import com.dy.common.webUtil.QueryConditionVo; +import lombok.*; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; + +/** + * @author :WuZeYu + * @Date :2024/8/1 19:40 + * @LastEditTime :2024/8/1 19:40 + * @Description + */ +@Data +@EqualsAndHashCode(callSuper = false) +@ToString(callSuper = true) +@NoArgsConstructor +@AllArgsConstructor +@Builder +public class ReplyQueryVo extends QueryConditionVo { + /** + * 鍙嶉缂栧彿 + */ + private String feedbackId; + + /** + * 鍥炲浜� + */ + private String replierId; + /** + * 鍥炲鏃堕棿寮�濮嬫棩鏈� + */ + @DateTimeFormat(pattern = "yyyy-MM-dd") + private Date replyTimeStart; + + /** + * 鍥炲鏃堕棿缁撴潫鏃ユ湡 + */ + @DateTimeFormat(pattern = "yyyy-MM-dd") + private Date replyTimeStop; + +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedbackReply/FeedbackReplyCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedbackReply/FeedbackReplyCtrl.java deleted file mode 100644 index 8a93fbb..0000000 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedbackReply/FeedbackReplyCtrl.java +++ /dev/null @@ -1,60 +0,0 @@ -package com.dy.pipIrrOperation.feedbackReply; - - -import com.dy.common.aop.SsoAop; -import com.dy.common.webUtil.BaseResponse; -import com.dy.common.webUtil.BaseResponseUtils; - -import com.dy.pipIrrGlobal.pojoOp.OpeFeedbackReply; - -import io.swagger.v3.oas.annotations.Parameter; -import jakarta.validation.Valid; -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.springframework.http.MediaType; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.*; - - -import java.util.Objects; -import java.util.Optional; - -/** - * @author :WuZeYu - * @Date :2024/7/31 16:19 - * @LastEditTime :2024/7/31 16:19 - * @Description - */ -@Slf4j -@RestController -@RequestMapping(path="feedbackReply") -@RequiredArgsConstructor -public class FeedbackReplyCtrl { - - private final FeedbackReplySv feedbackReplySv; - - - /** - * 娣诲姞闂鍙嶉鍥炲 - * @param reply - * @param bindingResult - * @return - */ - @PostMapping(path = "add", consumes = MediaType.APPLICATION_JSON_VALUE) - @Transactional(rollbackFor = Exception.class) - @SsoAop - public BaseResponse<Boolean> add(@RequestBody @Valid OpeFeedbackReply reply, @Parameter(hidden = true) BindingResult bindingResult){ - if (bindingResult != null && bindingResult.hasErrors()) { - return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); - } - - Integer rec = Optional.ofNullable(feedbackReplySv.add(reply)).orElse(0); - if (rec == 0) { - return BaseResponseUtils.buildFail("娣诲姞澶辫触"); - } - return BaseResponseUtils.buildSuccess(true); - } - - -} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedbackReply/FeedbackReplySv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedbackReply/FeedbackReplySv.java deleted file mode 100644 index 2d6e818..0000000 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedbackReply/FeedbackReplySv.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.dy.pipIrrOperation.feedbackReply; - -/** - * @author :WuZeYu - * @Date :2024/7/31 16:19 - * @LastEditTime :2024/7/31 16:19 - * @Description - */ -public class FeedbackReplySv { -} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedbackReply/QueryVo.java b/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedbackReply/QueryVo.java deleted file mode 100644 index fb41126..0000000 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-operation/src/main/java/com/dy/pipIrrOperation/feedbackReply/QueryVo.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.dy.pipIrrOperation.feedbackReply; - -/** - * @author :WuZeYu - * @Date :2024/7/31 16:20 - * @LastEditTime :2024/7/31 16:20 - * @Description - */ -public class QueryVo { -} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/qo/OnLineIntakesQO.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/qo/OnLineIntakesQO.java index aebcdd0..023af9e 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/qo/OnLineIntakesQO.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/qo/OnLineIntakesQO.java @@ -27,7 +27,12 @@ /** * 鏄惁鍦ㄧ嚎 */ - @Max(value = 1,message = "鏄惁鍦ㄧ嚎浠呭厑璁镐负鐪熸垨鍋�") - @Min(value = 0,message = "鏄惁鍦ㄧ嚎浠呭厑璁镐负鐪熸垨鍋�") + private Boolean isOnLine; + + /** + * 鏄惁缁戝畾 + */ + + private Boolean isBinded; } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/qo/QoCommand.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/qo/QoCommand.java index 8491229..b75755f 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/qo/QoCommand.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/qo/QoCommand.java @@ -19,6 +19,11 @@ public class QoCommand extends QueryConditionVo { /** + * 鍙栨按鍙D + */ + private Long intakeId; + + /** * 鍛戒护鍚嶇О */ private String commandName; diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/clientAmountDay/ClientAmountDayCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/clientAmountDay/ClientAmountDayCtrl.java index 94aaa14..abe2444 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/clientAmountDay/ClientAmountDayCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/clientAmountDay/ClientAmountDayCtrl.java @@ -53,7 +53,7 @@ }) @GetMapping(path = "/getClientAmountDayHistory") @SsoAop() - public BaseResponse<QueryResultVo<List<VoClientAmountDay>>> getClientAmountDayHistory(@RequestParam ClientAmountDayQueryVo vo) { + public BaseResponse<QueryResultVo<List<VoClientAmountDay>>> getClientAmountDayHistory( ClientAmountDayQueryVo vo) { try { QueryResultVo<List<VoClientAmountDay>> res = clientAmountDaySv.getClientAmountDayHistory(vo); return BaseResponseUtils.buildSuccess(res); @@ -81,7 +81,7 @@ }) @GetMapping(path = "/getClientAmountDayLast") @SsoAop() - public BaseResponse<QueryResultVo<List<VoClientAmountDay>>> getClientAmountDayLast(@RequestParam ClientAmountDayQueryVo vo) { + public BaseResponse<QueryResultVo<List<VoClientAmountDay>>> getClientAmountDayLast( ClientAmountDayQueryVo vo) { try { QueryResultVo<List<VoClientAmountDay>> res = clientAmountDaySv.getClientAmountDayLast(vo); return BaseResponseUtils.buildSuccess(res); diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/clientAmountDay/ClientAmountDayQueryVo.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/clientAmountDay/ClientAmountDayQueryVo.java index 2f7a749..d5883a2 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/clientAmountDay/ClientAmountDayQueryVo.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/clientAmountDay/ClientAmountDayQueryVo.java @@ -1,12 +1,14 @@ package com.dy.pipIrrRemote.records.clientAmountDay; import com.dy.common.webUtil.QueryConditionVo; +import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; +import org.springframework.format.annotation.DateTimeFormat; -import java.sql.Date; +import java.util.Date; /** * @author :WuZeYu @@ -30,8 +32,12 @@ private String clientName; @Schema(description = "缁熻寮�濮嬫棩鏈�", requiredMode = Schema.RequiredMode.NOT_REQUIRED) + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private Date startDt; @Schema(description = "缁熻缁撴潫鏃ユ湡", requiredMode = Schema.RequiredMode.NOT_REQUIRED) + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private Date endDt; } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/controllerAlarmState/ControllerAlarmStateCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/controllerAlarmState/ControllerAlarmStateCtrl.java index 26caa3a..f68f3ae 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/controllerAlarmState/ControllerAlarmStateCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/controllerAlarmState/ControllerAlarmStateCtrl.java @@ -53,7 +53,7 @@ }) @GetMapping(path = "/getControllerAlarmStateHistory") @SsoAop() - public BaseResponse<QueryResultVo<List<VoControllerAlarmState>>> getControllerAlarmStateHistory(@RequestParam ControllerAlarmStateQueryVo vo) { + public BaseResponse<QueryResultVo<List<VoControllerAlarmState>>> getControllerAlarmStateHistory( ControllerAlarmStateQueryVo vo) { try { QueryResultVo<List<VoControllerAlarmState>> res = controllerAlarmStateSv.getControllerAlarmStateHistory(vo); return BaseResponseUtils.buildSuccess(res); @@ -82,7 +82,7 @@ }) @GetMapping(path = "/getControllerAlarmStateLast") @SsoAop() - public BaseResponse<QueryResultVo<List<VoControllerAlarmState>>> getControllerAlarmStateLast(@RequestParam ControllerAlarmStateQueryVo vo) { + public BaseResponse<QueryResultVo<List<VoControllerAlarmState>>> getControllerAlarmStateLast( ControllerAlarmStateQueryVo vo) { try { QueryResultVo<List<VoControllerAlarmState>> res = controllerAlarmStateSv.getControllerAlarmStateLast(vo); return BaseResponseUtils.buildSuccess(res); diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/controllerAlarmState/ControllerAlarmStateQueryVo.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/controllerAlarmState/ControllerAlarmStateQueryVo.java index 993b064..3609963 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/controllerAlarmState/ControllerAlarmStateQueryVo.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/controllerAlarmState/ControllerAlarmStateQueryVo.java @@ -33,13 +33,13 @@ private Byte valveState; @Schema(description = "寮�濮嬫椂闂�", requiredMode = Schema.RequiredMode.NOT_REQUIRED) - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private Date startDt; @Schema(description = "缁撴潫鏃堕棿", requiredMode = Schema.RequiredMode.NOT_REQUIRED) - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private Date endDt; @Schema(description = "鎶ヨ鐘舵��", requiredMode = Schema.RequiredMode.NOT_REQUIRED)//锛�0姝e父銆�1鎶ヨ锛� diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/intakeAmountDay/IntakeAmountDayCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/intakeAmountDay/IntakeAmountDayCtrl.java index 80bc40d..acda701 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/intakeAmountDay/IntakeAmountDayCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/intakeAmountDay/IntakeAmountDayCtrl.java @@ -52,7 +52,7 @@ }) @GetMapping(path = "/getIntakeAmountDayHistory") @SsoAop() - public BaseResponse<QueryResultVo<List<VoIntakeAmountDay>>> getIntakeAmountDayHistory(@RequestParam IntakeAmountDayQueryVo vo) { + public BaseResponse<QueryResultVo<List<VoIntakeAmountDay>>> getIntakeAmountDayHistory( IntakeAmountDayQueryVo vo) { try { QueryResultVo<List<VoIntakeAmountDay>> res = intakeAmountDaySv.getIntakeAmountDayHistory(vo); return BaseResponseUtils.buildSuccess(res); @@ -79,7 +79,7 @@ }) @GetMapping(path = "/getIntakeAmountDayLast") @SsoAop() - public BaseResponse<QueryResultVo<List<VoIntakeAmountDay>>> getIntakeAmountDayLast(@RequestParam IntakeAmountDayQueryVo vo) { + public BaseResponse<QueryResultVo<List<VoIntakeAmountDay>>> getIntakeAmountDayLast( IntakeAmountDayQueryVo vo) { try { QueryResultVo<List<VoIntakeAmountDay>> res = intakeAmountDaySv.getIntakeAmountDayLast(vo); return BaseResponseUtils.buildSuccess(res); diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/intakeAmountDay/IntakeAmountDayQueryVo.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/intakeAmountDay/IntakeAmountDayQueryVo.java index 9e7b078..c8e9eeb 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/intakeAmountDay/IntakeAmountDayQueryVo.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/intakeAmountDay/IntakeAmountDayQueryVo.java @@ -3,8 +3,12 @@ import com.dy.common.webUtil.QueryConditionVo; import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; +import org.apache.logging.log4j.core.config.plugins.validation.constraints.NotBlank; +import org.springframework.format.annotation.DateTimeFormat; -import java.sql.Date; +import java.util.Date; + +//import java.sql.Date; /** * @author :WuZeYu @@ -27,9 +31,16 @@ @Schema(description = "鍙栨按鍙D") private String intakeId; - @Schema(description = "缁熻寮�濮嬫棩鏈�", requiredMode = Schema.RequiredMode.NOT_REQUIRED) +// @Schema(description = "缁熻寮�濮嬫棩鏈�", requiredMode = Schema.RequiredMode.NOT_REQUIRED) +// private java.sql.Date startDt; +// @NotBlank(message = "寮�濮嬫椂闂翠笉鑳戒负绌�") + @DateTimeFormat(pattern = "yyyy-MM-dd") private Date startDt; - @Schema(description = "缁熻缁撴潫鏃ユ湡", requiredMode = Schema.RequiredMode.NOT_REQUIRED) + +// @Schema(description = "缁熻缁撴潫鏃ユ湡", requiredMode = Schema.RequiredMode.NOT_REQUIRED) +// private java.sql.Date endDt; +// @NotBlank(message = "缁撴潫鏃堕棿涓嶈兘涓虹┖") + @DateTimeFormat(pattern = "yyyy-MM-dd") private Date endDt; } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/lossDay/LossDayCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/lossDay/LossDayCtrl.java index c2edd27..d70f372 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/lossDay/LossDayCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/lossDay/LossDayCtrl.java @@ -56,7 +56,7 @@ }) @GetMapping(path = "/getLossDayHistory") @SsoAop() - public BaseResponse<QueryResultVo<List<VoLossDay>>> getLossDayHistory(@RequestParam LossDayQueryVo vo) { + public BaseResponse<QueryResultVo<List<VoLossDay>>> getLossDayHistory( LossDayQueryVo vo) { try { QueryResultVo<List<VoLossDay>> res = lossDaySv.getLossDayHistory(vo); return BaseResponseUtils.buildSuccess(res); @@ -83,7 +83,7 @@ }) @GetMapping(path = "/getLossDayLast") @SsoAop() - public BaseResponse<QueryResultVo<List<VoLossDay>>> getLossDayLast(@RequestParam LossDayQueryVo vo) { + public BaseResponse<QueryResultVo<List<VoLossDay>>> getLossDayLast( LossDayQueryVo vo) { try { QueryResultVo<List<VoLossDay>> res = lossDaySv.getLossDayLast(vo); return BaseResponseUtils.buildSuccess(res); diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/lossDay/LossDayQueryVo.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/lossDay/LossDayQueryVo.java index cba8680..840a42a 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/lossDay/LossDayQueryVo.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/records/lossDay/LossDayQueryVo.java @@ -1,10 +1,12 @@ package com.dy.pipIrrRemote.records.lossDay; import com.dy.common.webUtil.QueryConditionVo; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; +import org.springframework.format.annotation.DateTimeFormat; -import java.sql.Date; +import java.util.Date; /** * @author :WuZeYu @@ -29,8 +31,12 @@ private String intakeId; @Schema(description = "缁熻寮�濮嬫棩鏈�", requiredMode = Schema.RequiredMode.NOT_REQUIRED) + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private Date startDt; @Schema(description = "缁熻缁撴潫鏃ユ湡", requiredMode = Schema.RequiredMode.NOT_REQUIRED) + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private Date endDt; } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/config/WebFilterConfiguration.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/config/WebFilterConfiguration.java new file mode 100644 index 0000000..6282885 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/config/WebFilterConfiguration.java @@ -0,0 +1,51 @@ +package com.dy.pipIrrStatistics.config; + +import com.dy.common.webFilter.DevOfDataSourceNameSetFilter; +import com.dy.common.webFilter.UserTokenFilter; +import jakarta.servlet.Filter; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.boot.web.servlet.FilterRegistrationBean; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +/** + * @author ZhuBaoMin + * @date 2023/12/5 10:32 + * @LastEditTime 2023/12/5 10:32 + * @Description + */ +@Configuration +public class WebFilterConfiguration { + + @Value("${pipIrr.global.dev}") + public String isDevStage ;//鏄惁涓哄紑鍙戦樁娈� + @Value("${pipIrr.global.dsName}") + public String dsName ;//寮�鍙戦樁娈电殑鏁版嵁婧愬悕绉� + + /** + * DevOfDataSourceNameSetFilter涓嶶serTokenFilter鍙兘涓�涓閰嶇疆涓婏紝 + * 鎵�浠ヤ粬浠殑order閮芥槸1 + */ + private static final int order_UserTokenFilter = 1 ;//涓庝笅闈� + private static final int order_DevOfDataSourceNameSetFilter = 1 ; + + + @Bean + public FilterRegistrationBean<? extends Filter> RegFilter() { + FilterRegistrationBean<Filter> filterRegistrationBean = new FilterRegistrationBean<>(); + if(this.isDevStage != null && !this.isDevStage.trim().equals("") && this.isDevStage.trim().equalsIgnoreCase("true")){ + filterRegistrationBean.setFilter(new DevOfDataSourceNameSetFilter()); + filterRegistrationBean.addUrlPatterns("/*");//閰嶇疆杩囨护瑙勫垯 + filterRegistrationBean.addInitParameter("dataSourceName",dsName);//璁剧疆init鍙傛暟 + filterRegistrationBean.setName("DevOfDataSourceNameSetFilter");//璁剧疆杩囨护鍣ㄥ悕绉� + filterRegistrationBean.setOrder(order_DevOfDataSourceNameSetFilter);//鎵ц娆″簭 + }else{ + filterRegistrationBean.setFilter(new UserTokenFilter()); + filterRegistrationBean.addUrlPatterns("/*");//閰嶇疆杩囨护瑙勫垯 + filterRegistrationBean.setName("UserTokenFilter");//璁剧疆杩囨护鍣ㄥ悕绉� + filterRegistrationBean.setOrder(order_UserTokenFilter);//鎵ц娆″簭 + } + return filterRegistrationBean; + } + +} \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/config/WebListenerConfiguration.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/config/WebListenerConfiguration.java new file mode 100644 index 0000000..3d7d4a4 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/config/WebListenerConfiguration.java @@ -0,0 +1,56 @@ +package com.dy.pipIrrStatistics.config; + +import com.dy.common.webListener.GenerateIdSetSuffixListener; +import jakarta.servlet.ServletContextListener; +import org.springframework.boot.web.servlet.ServletListenerRegistrationBean; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +/** + * @author ZhuBaoMin + * @date 2023/12/5 10:33 + * @LastEditTime 2023/12/5 10:33 + * @Description + */ +@Configuration +public class WebListenerConfiguration { + + /** + * 鍚姩椤哄簭 + */ + //private static final int order_config = 0 ; + private static final int order_idSetSuffix = 1 ; + //private static final int order_init = 2 ; + + /* + * 瑙f瀽鍚勭***.config閰嶇疆鐨凜onfigListener锛屾殏鏃朵笉閲囩敤姝ょ閰嶇疆鏂瑰紡 + * + @Bean + public ConfigListener getGlConfigListener(){ + return new ConfigListener() ; + } + /** + * 澶栭儴鎻愪緵Listener + * @param listener 澶栭儴鎻愪緵Listener + * @return 娉ㄥ唽Bean + @Bean + public ServletListenerRegistrationBean<? extends ServletContextListener> regConfigListener(ConfigListener listener) { + ServletListenerRegistrationBean<ConfigListener> listenerRegistrationBean = new ServletListenerRegistrationBean<>(); + listenerRegistrationBean.setListener(listener); + listenerRegistrationBean.setOrder(order_config); + return listenerRegistrationBean; + } + */ + + /** + * 鍐呴儴鎻愪緵listener锛岃listener鍦ㄧ郴缁熷惎鍔ㄦ椂锛屾牴鎹厤缃� 璁剧疆ID浜х敓鍣ㄧ殑鍚庣紑 + * @return 娉ㄥ唽Bean + */ + @Bean + public ServletListenerRegistrationBean<? extends ServletContextListener> regSsoListener() { + ServletListenerRegistrationBean<GenerateIdSetSuffixListener> listenerRegistrationBean = new ServletListenerRegistrationBean<>(); + listenerRegistrationBean.setListener(new GenerateIdSetSuffixListener()); + listenerRegistrationBean.setOrder(order_idSetSuffix); + return listenerRegistrationBean; + } +} 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 new file mode 100644 index 0000000..24b3244 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntakeSv.java @@ -0,0 +1,148 @@ +package com.dy.pipIrrStatistics.intake; + +import com.dy.common.webUtil.QueryResultVo; +import com.dy.pipIrrGlobal.daoRm.RmOnHourReportHistoryMapper; +import com.dy.pipIrrGlobal.daoRm.RmOnHourReportLastMapper; +import com.dy.pipIrrGlobal.voSt.VoBatteryVolt; +import com.dy.pipIrrGlobal.voSt.VoCumulativeFlow; +import com.dy.pipIrrGlobal.voSt.VoIntake; +import com.dy.pipIrrStatistics.intake.qo.BatteryVoltQO; +import com.dy.pipIrrStatistics.intake.qo.CumulativeFlowQO; +import com.dy.pipIrrStatistics.intake.qo.IntakeQO; +import lombok.extern.slf4j.Slf4j; +import org.apache.dubbo.common.utils.PojoUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Service; + +import java.text.DecimalFormat; +import java.time.LocalDate; +import java.util.List; +import java.util.Map; +import java.util.Optional; + +/** + * @author ZhuBaoMin + * @date 2024-08-01 13:58 + * @LastEditTime 2024-08-01 13:58 + * @Description + */ + +@Slf4j +@Service +public class IntakeSv { + @Autowired + private RmOnHourReportHistoryMapper rmOnHourReportHistoryMapper; + @Autowired + private RmOnHourReportLastMapper rmOnHourReportLastMapper; + + @Value("${rtu.batteryVolt}") + private Double batteryVolt; + + /** + * 鑾峰彇鎸囧畾鏃堕棿娈靛唴鏈笂绾跨殑鍙栨按鍙� + * @param qo + * @return + */ + public QueryResultVo<List<VoIntake>> getNotOnlineIntakes(IntakeQO qo) { + DecimalFormat df = new DecimalFormat("0.00"); + /** + * 琛ラ綈璧锋鏃堕棿锛屽鏋滃紑濮嬫椂闂翠负绌猴紝鍒欓粯璁や负褰撳墠鏃ユ湡 + */ + String timeStart = qo.getTimeStart(); + String timeStop = qo.getTimeStop(); + if(timeStart != null) { + timeStart = timeStart + " 00:00:00"; + }else { + timeStart = LocalDate.now() + " 00:00:00"; + } + if(timeStop != null) { + 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(rmOnHourReportHistoryMapper.getNotOnlineIntakesCount(params)).orElse(0L); + + QueryResultVo<List<VoIntake>> rsVo = new QueryResultVo<>() ; + + rsVo.pageSize = qo.pageSize ; + rsVo.pageCurr = qo.pageCurr ; + + rsVo.calculateAndSet(itemTotal, params); + rsVo.obj = rmOnHourReportHistoryMapper.getNotOnlineIntakes(params); + return rsVo ; + } + + /** + * 鑾峰彇绱娴侀噺瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙� + * @param qo + * @return + */ + public QueryResultVo<List<VoCumulativeFlow>> getLargeFlowIntakes(CumulativeFlowQO qo) { + // 鐢熸垚鏌ヨ鍙傛暟 + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ; + + // 鑾峰彇绗﹀悎鏉′欢鐨勮褰曟暟 + Long itemTotal = Optional.ofNullable(rmOnHourReportLastMapper.getLargeFlowIntakesCount(params)).orElse(0L); + + QueryResultVo<List<VoCumulativeFlow>> rsVo = new QueryResultVo<>() ; + + rsVo.pageSize = qo.pageSize ; + rsVo.pageCurr = qo.pageCurr ; + + rsVo.calculateAndSet(itemTotal, params); + rsVo.obj = rmOnHourReportLastMapper.getLargeFlowIntakes(params); + return rsVo ; + } + + /** + * 鑾峰彇绱娴侀噺浣庝簬鎸囧畾鍊肩殑鍙栨按鍙� + * @param qo + * @return + */ + public QueryResultVo<List<VoCumulativeFlow>> getSmallFlowIntakes(CumulativeFlowQO qo) { + // 鐢熸垚鏌ヨ鍙傛暟 + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ; + + // 鑾峰彇绗﹀悎鏉′欢鐨勮褰曟暟 + Long itemTotal = Optional.ofNullable(rmOnHourReportLastMapper.getSmallFlowIntakesCount(params)).orElse(0L); + + QueryResultVo<List<VoCumulativeFlow>> rsVo = new QueryResultVo<>() ; + + rsVo.pageSize = qo.pageSize ; + rsVo.pageCurr = qo.pageCurr ; + + rsVo.calculateAndSet(itemTotal, params); + rsVo.obj = rmOnHourReportLastMapper.getSmallFlowIntakes(params); + return rsVo ; + } + + /** + * 鑾峰彇娆犲帇鍙栨按鍙� + * @param qo + * @return + */ + public QueryResultVo<List<VoBatteryVolt>> getUnderVoltIntakes(BatteryVoltQO qo) { + qo.setBatteryVolt(batteryVolt); + // 鐢熸垚鏌ヨ鍙傛暟 + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ; + + // 鑾峰彇绗﹀悎鏉′欢鐨勮褰曟暟 + Long itemTotal = Optional.ofNullable(rmOnHourReportLastMapper.getUnderVoltIntakesCount(params)).orElse(0L); + + QueryResultVo<List<VoBatteryVolt>> rsVo = new QueryResultVo<>() ; + + rsVo.pageSize = qo.pageSize ; + rsVo.pageCurr = qo.pageCurr ; + + rsVo.calculateAndSet(itemTotal, params); + rsVo.obj = rmOnHourReportLastMapper.getUnderVoltIntakes(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 new file mode 100644 index 0000000..ab1dc52 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java @@ -0,0 +1,115 @@ +package com.dy.pipIrrStatistics.intake; + +import com.dy.common.aop.SsoAop; +import com.dy.common.webUtil.BaseResponse; +import com.dy.common.webUtil.BaseResponseUtils; +import com.dy.common.webUtil.QueryResultVo; +import com.dy.pipIrrGlobal.voSt.VoBatteryVolt; +import com.dy.pipIrrGlobal.voSt.VoCumulativeFlow; +import com.dy.pipIrrGlobal.voSt.VoIntake; +import com.dy.pipIrrStatistics.intake.qo.BatteryVoltQO; +import com.dy.pipIrrStatistics.intake.qo.CumulativeFlowQO; +import com.dy.pipIrrStatistics.intake.qo.IntakeQO; +import com.dy.pipIrrStatistics.result.StatisticlResultCode; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +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 ZhuBaoMin + * @date 2024-08-01 13:57 + * @LastEditTime 2024-08-01 13:57 + * @Description + */ + +@Slf4j +@RestController +@RequestMapping(path="statistics") +@RequiredArgsConstructor +public class IntkeCtrl { + private final IntakeSv intakeSv; + + /** + * 鑾峰彇鎸囧畾鏃堕棿娈靛唴鏈笂绾跨殑鍙栨按鍙� + * @param qo + * @return + */ + @GetMapping(path = "/getNotOnlineIntakes") + @SsoAop() + public BaseResponse<QueryResultVo<List<VoIntake>>> getNotOnlineIntakes(IntakeQO qo) { + try { + QueryResultVo<List<VoIntake>> res = intakeSv.getNotOnlineIntakes(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 qo + * @return + */ + @GetMapping(path = "/getLargeFlowIntakes") + @SsoAop() + public BaseResponse<QueryResultVo<List<VoCumulativeFlow>>> getLargeFlowIntakes(CumulativeFlowQO qo) { + try { + QueryResultVo<List<VoCumulativeFlow>> res = intakeSv.getLargeFlowIntakes(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 qo + * @return + */ + @GetMapping(path = "/getSmallFlowIntakes") + @SsoAop() + public BaseResponse<QueryResultVo<List<VoCumulativeFlow>>> getSmallFlowIntakes(CumulativeFlowQO qo) { + try { + QueryResultVo<List<VoCumulativeFlow>> res = intakeSv.getSmallFlowIntakes(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 qo + * @return + */ + @GetMapping(path = "/getUnderVoltIntakes") + @SsoAop() + public BaseResponse<QueryResultVo<List<VoBatteryVolt>>> getUnderVoltIntakes(BatteryVoltQO qo) { + try { + QueryResultVo<List<VoBatteryVolt>> res = intakeSv.getUnderVoltIntakes(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()) ; + } + } +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/qo/BatteryVoltQO.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/qo/BatteryVoltQO.java new file mode 100644 index 0000000..a5be4ac --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/qo/BatteryVoltQO.java @@ -0,0 +1,20 @@ +package com.dy.pipIrrStatistics.intake.qo; + +import com.dy.common.webUtil.QueryConditionVo; +import lombok.Data; + +/** + * @author ZhuBaoMin + * @date 2024-08-03 10:47 + * @LastEditTime 2024-08-03 10:47 + * @Description + */ + +@Data +public class BatteryVoltQO extends QueryConditionVo { + + /** + * 鐢垫睜鐢靛帇 + */ + private Double batteryVolt; +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/qo/CumulativeFlowQO.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/qo/CumulativeFlowQO.java new file mode 100644 index 0000000..096a4f6 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/qo/CumulativeFlowQO.java @@ -0,0 +1,20 @@ +package com.dy.pipIrrStatistics.intake.qo; + +import com.dy.common.webUtil.QueryConditionVo; +import lombok.Data; + +/** + * @author ZhuBaoMin + * @date 2024-08-01 16:20 + * @LastEditTime 2024-08-01 16:20 + * @Description 绱娴侀噺鏌ヨ瀵硅薄 + */ + +@Data +public class CumulativeFlowQO extends QueryConditionVo { + + /** + * 绱娴侀噺 + */ + private Double totalAmount; +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/qo/IntakeQO.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/qo/IntakeQO.java new file mode 100644 index 0000000..2b494af --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/qo/IntakeQO.java @@ -0,0 +1,30 @@ +package com.dy.pipIrrStatistics.intake.qo; + +import com.dy.common.webUtil.QueryConditionVo; +import com.fasterxml.jackson.annotation.JsonFormat; +import jakarta.validation.constraints.NotBlank; +import lombok.Data; + +/** + * @author ZhuBaoMin + * @date 2024-08-01 14:31 + * @LastEditTime 2024-08-01 14:31 + * @Description + */ + +@Data +public class IntakeQO extends QueryConditionVo { + + /** + * 寮�濮嬫椂闂� + */ + @JsonFormat(pattern = "yyyy-MM-dd") + private String timeStart; + + /** + * 缁撴潫鏃堕棿 + */ + @JsonFormat(pattern = "yyyy-MM-dd") + @NotBlank(message = "缁撴潫鏃堕棿涓嶈兘涓虹┖") + private String timeStop; +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/result/StatisticlResultCode.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/result/StatisticlResultCode.java new file mode 100644 index 0000000..4cba413 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/result/StatisticlResultCode.java @@ -0,0 +1,20 @@ +package com.dy.pipIrrStatistics.result; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * @author ZhuBaoMin + * @date 2024-08-01 15:03 + * @LastEditTime 2024-08-01 15:03 + * @Description + */ + +@Getter +@AllArgsConstructor +public enum StatisticlResultCode { + NO_RECORDS(10001, "娌℃湁绗﹀悎鏉′欢鐨勮褰�"); + + private final Integer code; + private final String message; +} -- Gitblit v1.8.0