From db31f95644e77010ffb88ac9e57e618818737733 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期四, 09 一月 2025 11:25:23 +0800
Subject: [PATCH] 优化”开阀操作次数“、”关阀操作次数“、”时间段内开阀次数超过指定值“、”时间段内开阀次数低于指定值“、”时间段有开阀无关阀“、”时间段无开阀有关阀“功能实现及sql。
---
pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveHistoryMapper.xml | 97 ++++---
pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/qo/IntakeCountValueQO.java | 8
pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java | 225 ++++++++++++++----
pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntakeSv.java | 275 ++++++----------------
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoCountOfCloseType.java | 9
pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveLastMapper.xml | 32 +
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOpenCloseValveLastMapper.java | 6
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoCountOfOpenType.java | 9
8 files changed, 355 insertions(+), 306 deletions(-)
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOpenCloseValveLastMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOpenCloseValveLastMapper.java
index 1efa08b..c5b1571 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOpenCloseValveLastMapper.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOpenCloseValveLastMapper.java
@@ -3,6 +3,8 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.dy.pipIrrGlobal.pojoRm.RmOpenCloseValveLast;
import com.dy.pipIrrGlobal.voRm.VoOpenCloseValve;
+import com.dy.pipIrrGlobal.voSt.VoCountOfCloseType;
+import com.dy.pipIrrGlobal.voSt.VoCountOfOpenType;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@@ -91,14 +93,14 @@
* @param params
* @return
*/
- Integer getCountByOpenType(Map<?, ?> params);
+ List<VoCountOfOpenType> getCountByOpenType(Map<?, ?> params);
/**
* 鏍规嵁鍏抽榾绫诲瀷鑾峰彇鎿嶄綔娆℃暟
* @param params
* @return
*/
- Integer getCountByCloseType(Map<?, ?> params);
+ List<VoCountOfCloseType> getCountByCloseType(Map<?, ?> params);
/**
* 涓烘寚瀹氾紙闃�鎺у櫒鍦板潃銆佹按鍗$紪鍙枫�佹棤鍏抽榾璁板綍锛夊紑鍏抽榾鏈�鏂拌褰曟坊鍔犲叧闃�鏃堕棿锛屼娇涔嬩笉鍦ㄦ湭鍏抽榾璁板綍涓樉绀�
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoCountOfCloseType.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoCountOfCloseType.java
index 9d488e6..b207e21 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoCountOfCloseType.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoCountOfCloseType.java
@@ -13,12 +13,17 @@
public class VoCountOfCloseType {
/**
+ * 寮�闃�鏂圭被鍨�
+ */
+ public Integer closeType;
+
+ /**
* 鍏抽榾绫诲瀷鍚嶇О
*/
- private String closeTypeName;
+ public String closeTypeName;
/**
* 鍏抽榾绫诲瀷娆℃暟
*/
- private Integer closeTypeCount;
+ public Integer closeTypeCount;
}
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoCountOfOpenType.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoCountOfOpenType.java
index 22eda61..79e1aa8 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoCountOfOpenType.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voSt/VoCountOfOpenType.java
@@ -13,12 +13,17 @@
public class VoCountOfOpenType {
/**
+ * 寮�闃�鏂圭被鍨�
+ */
+ public Integer openType;
+
+ /**
* 寮�闃�鏂圭被鍨嬪悕绉�
*/
- private String openTypeName;
+ public String openTypeName;
/**
* 寮�闃�绫诲瀷娆℃暟
*/
- private Integer openTypeCount;
+ public Integer openTypeCount;
}
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveHistoryMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveHistoryMapper.xml
index 8156a0d..0728c4a 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveHistoryMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveHistoryMapper.xml
@@ -591,10 +591,11 @@
inta.name AS intakeNum,
blo.name AS blockName
FROM pr_intake inta
- LEFT JOIN (SELECT *
- FROM rm_open_close_valve_history
- WHERE op_dt BETWEEN #{timeStart} AND #{timeStop}) his ON his.intake_id = inta.id
- INNER JOIN ba_block blo ON blo.id = inta.blockId
+ LEFT JOIN (SELECT intake_id
+ FROM rm_open_close_valve_history
+ WHERE id <![CDATA[>=]]> #{idStart} AND id <![CDATA[<=]]> #{idEnd}
+ ) his ON his.intake_id = inta.id
+ INNER JOIN ba_block blo ON blo.id = inta.blockId
WHERE inta.deleted = 0
GROUP BY intakeId, intakeNum, blockName
HAVING recordCount > #{value}) a
@@ -606,20 +607,22 @@
inta.name AS intakeNum,
blo.name AS blockName
FROM pr_intake inta
- LEFT JOIN (SELECT *
- FROM rm_open_close_valve_history
- WHERE op_dt BETWEEN #{timeStart} AND #{timeStop}) his ON his.intake_id = inta.id
- INNER JOIN ba_block blo ON blo.id = inta.blockId
+ LEFT JOIN(SELECT intake_id
+ FROM rm_open_close_valve_history
+ WHERE id <![CDATA[>=]]> #{idStart} AND id <![CDATA[<=]]> #{idEnd}
+ ) his ON his.intake_id = inta.id
+ INNER JOIN ba_block blo ON blo.id = inta.blockId
WHERE inta.deleted = 0
GROUP BY intakeId, intakeNum, blockName
HAVING recordCount > #{value}
- <!-- ORDER BY inta.id-->
+ ORDER BY intakeId DESC
<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="getOpenValveLtIntakesCount" resultType="java.lang.Long">
select count(*)
@@ -628,10 +631,11 @@
inta.name AS intakeNum,
blo.name AS blockName
FROM pr_intake inta
- LEFT JOIN (SELECT *
- FROM rm_open_close_valve_history
- WHERE op_dt BETWEEN #{timeStart} AND #{timeStop}) his ON his.intake_id = inta.id
- INNER JOIN ba_block blo ON blo.id = inta.blockId
+ LEFT JOIN (SELECT intake_id
+ FROM rm_open_close_valve_history
+ WHERE id <![CDATA[>=]]> #{idStart} AND id <![CDATA[<=]]> #{idEnd}
+ ) his ON his.intake_id = inta.id
+ INNER JOIN ba_block blo ON blo.id = inta.blockId
WHERE inta.deleted = 0
GROUP BY intakeId, intakeNum, blockName
HAVING recordCount < #{value}) a
@@ -643,14 +647,15 @@
inta.name AS intakeNum,
blo.name AS blockName
FROM pr_intake inta
- LEFT JOIN (SELECT *
- FROM rm_open_close_valve_history
- WHERE op_dt BETWEEN #{timeStart} AND #{timeStop}) his ON his.intake_id = inta.id
- INNER JOIN ba_block blo ON blo.id = inta.blockId
+ LEFT JOIN(SELECT intake_id
+ FROM rm_open_close_valve_history
+ WHERE id <![CDATA[>=]]> #{idStart} AND id <![CDATA[<=]]> #{idEnd}
+ ) his ON his.intake_id = inta.id
+ INNER JOIN ba_block blo ON blo.id = inta.blockId
WHERE inta.deleted = 0
GROUP BY intakeId, intakeNum, blockName
HAVING recordCount < #{value}
- <!-- ORDER BY inta.id-->
+ ORDER BY intakeId DESC
<trim prefix="limit ">
<if test="start != null and count != null">
#{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER}
@@ -1080,31 +1085,32 @@
<!--鎸囧畾鏃堕棿娈� 鏈夊紑闃� 鏃犲叧闃�鐨勫彇姘村彛鏁伴噺-->
<select id="getHaveOpenNoCloseIntakesCount" resultType="java.lang.Long">
select count(*) from
- (
- SELECT
- inta.id AS intakeId,
- inta.NAME AS intakeNum,
- blo.NAME AS blockName
- FROM
- pr_intake inta
- INNER JOIN ba_block blo ON blo.id = inta.blockId
- inner JOIN rm_open_close_valve_history rocvh ON rocvh.intake_id = inta.id
- WHERE rocvh.op_dt BETWEEN #{timeStart} AND #{timeStop} AND rocvh.cl_dt IS NULL AND inta.deleted = 0
- GROUP BY inta.id) c
+ (
+ SELECT
+ inta.id AS intakeId
+ FROM
+ pr_intake inta
+ INNER JOIN ba_block blo ON blo.id = inta.blockId
+ inner JOIN rm_open_close_valve_history rocvh ON rocvh.intake_id = inta.id
+ WHERE inta.deleted = 0 AND rocvh.id >= #{idStart} AND rocvh.id >= #{idEnd} AND rocvh.cl_dt IS NULL
+ GROUP BY inta.id
+ ) c
</select>
<!--鎸囧畾鏃堕棿娈� 鏈夊紑闃� 鏃犲叧闃�鐨勫彇姘村彛-->
<select id="getHaveOpenNoCloseIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoIntake">
SELECT
inta.id AS intakeId,
inta.NAME AS intakeNum,
+ inta.lng AS lng,
+ inta.lat AS lat,
blo.NAME AS blockName
FROM
pr_intake inta
- INNER JOIN ba_block blo ON blo.id = inta.blockId
- inner JOIN rm_open_close_valve_history rocvh ON rocvh.intake_id = inta.id
- WHERE rocvh.op_dt BETWEEN #{timeStart} AND #{timeStop} AND rocvh.cl_dt IS NULL AND inta.deleted = 0
+ INNER JOIN ba_block blo ON blo.id = inta.blockId
+ inner JOIN rm_open_close_valve_history rocvh ON rocvh.intake_id = inta.id
+ WHERE inta.deleted = 0 AND rocvh.id >= #{idStart} AND rocvh.id >= #{idEnd} AND rocvh.cl_dt IS NULL
GROUP BY inta.id
- ORDER BY inta.id
+ ORDER BY inta.id DESC
<trim prefix="limit ">
<if test="start != null and count != null">
#{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER}
@@ -1115,30 +1121,31 @@
<select id="getNoOpenHaveCloseIntakesCount" resultType="java.lang.Long">
select count(*) from
(
- SELECT
- inta.id AS intakeId,
- inta.NAME AS intakeNum,
- blo.NAME AS blockName
- FROM
- pr_intake inta
- INNER JOIN ba_block blo ON blo.id = inta.blockId
- inner JOIN rm_open_close_valve_history rocvh ON rocvh.intake_id = inta.id
- WHERE rocvh.cl_dt BETWEEN #{timeStart} AND #{timeStop} AND rocvh.op_dt IS NULL AND inta.deleted = 0
- GROUP BY inta.id) c
+ SELECT
+ inta.id AS intakeId
+ FROM
+ pr_intake inta
+ INNER JOIN ba_block blo ON blo.id = inta.blockId
+ inner JOIN rm_open_close_valve_history rocvh ON rocvh.intake_id = inta.id
+ WHERE inta.deleted = 0 AND rocvh.id >= #{idStart} AND rocvh.id >= #{idEnd} AND rocvh.op_dt IS NULL
+ GROUP BY inta.id
+ ) c
</select>
<!--鎸囧畾鏃堕棿娈� 鏃犲紑闃� 鏈夊叧闃�鐨勫彇姘村彛-->
<select id="getNoOpenHaveCloseIntakes" resultType="com.dy.pipIrrGlobal.voSt.VoIntake">
SELECT
inta.id AS intakeId,
inta.NAME AS intakeNum,
+ inta.lng AS lng,
+ inta.lat AS lat,
blo.NAME AS blockName
FROM
pr_intake inta
INNER JOIN ba_block blo ON blo.id = inta.blockId
inner JOIN rm_open_close_valve_history rocvh ON rocvh.intake_id = inta.id
- WHERE rocvh.cl_dt BETWEEN #{timeStart} AND #{timeStop} AND rocvh.op_dt IS NULL AND inta.deleted = 0
+ WHERE inta.deleted = 0 AND rocvh.id >= #{idStart} AND rocvh.id >= #{idEnd} AND rocvh.op_dt IS NULL
GROUP BY inta.id
- ORDER BY inta.id
+ ORDER BY inta.id DESC
<trim prefix="limit ">
<if test="start != null and count != null">
#{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER}
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveLastMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveLastMapper.xml
index ec4f68d..8b04ce5 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveLastMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveLastMapper.xml
@@ -552,31 +552,43 @@
</select>
<!--鏍规嵁寮�闃�鏂瑰紡鑾峰彇鎿嶄綔娆℃暟-->
- <select id="getCountByOpenType" resultType="java.lang.Integer">
- SELECT COUNT(*) AS recordCount
+ <select id="getCountByOpenType" resultType="com.dy.pipIrrGlobal.voSt.VoCountOfOpenType">
+ SELECT
+ COUNT(*) AS openTypeCount,
+ op_type AS openType
FROM rm_open_close_valve_history
<where>
+ <if test="idStart != nul">
+ id <![CDATA[>=]]> #{idStart}
+ </if>
+ <if test="idEnd != nul">
+ AND id <![CDATA[<=]]> #{idEnd}
+ </if>
<if test="openType != null">
AND op_type = #{openType}
</if>
- <if test="timeStart != null and timeStop != null">
- AND op_dt BETWEEN #{timeStart} AND #{timeStop}
- </if>
</where>
+ group by op_type
</select>
<!--鏍规嵁鍏抽榾鏂瑰紡鑾峰彇鎿嶄綔娆℃暟-->
- <select id="getCountByCloseType" resultType="java.lang.Integer">
- SELECT COUNT(*) AS recordCount
+ <select id="getCountByCloseType" resultType="com.dy.pipIrrGlobal.voSt.VoCountOfCloseType">
+ SELECT
+ COUNT(*) AS closeTypeCount,
+ cl_type AS closeType
FROM rm_open_close_valve_history
<where>
+ <if test="idStart != nul">
+ id <![CDATA[>=]]> #{idStart}
+ </if>
+ <if test="idEnd != nul">
+ AND id <![CDATA[<=]]> #{idEnd}
+ </if>
<if test="closeType != null">
AND cl_type = #{closeType}
</if>
- <if test="timeStart != null and timeStop != null">
- AND cl_dt BETWEEN #{timeStart} AND #{timeStop}
- </if>
</where>
+ group by cl_type
</select>
<!--涓烘寚瀹氾紙闃�鎺у櫒鍦板潃銆佹按鍗$紪鍙枫�佹棤鍏抽榾璁板綍锛夊紑鍏抽榾鏈�鏂拌褰曟坊鍔犲叧闃�鏃堕棿锛屼娇涔嬩笉鍦ㄦ湭鍏抽榾璁板綍涓樉绀�-->
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntakeSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntakeSv.java
index 613d661..fa96fca 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntakeSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntakeSv.java
@@ -15,10 +15,7 @@
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
-import java.util.Calendar;
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
+import java.util.*;
/**
* @author ZhuBaoMin
@@ -231,23 +228,6 @@
* @return
*/
public QueryResultVo<List<VoIntakeOpenCount>> getOpenValveGtIntakes(IntakeCountValueQO qo) {
-
- String timeStart = qo.getTimeStart();
- String timeStop = qo.getTimeStop();
- if(timeStart != null && timeStart != "") {
- timeStart = timeStart + " 00:00:00";
- } else {
- timeStart = LocalDate.now() + " 00:00:00";
- }
- qo.setTimeStart(timeStart);
-
- if(timeStop != null && timeStop != "") {
- timeStop = timeStop + " 23:59:59";
- }else {
- timeStop = LocalDate.now() + " 23:59:59";
- }
- qo.setTimeStop(timeStop);
-
// 鐢熸垚鏌ヨ鍙傛暟
Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ;
@@ -270,25 +250,8 @@
* @return
*/
public QueryResultVo<List<VoIntakeOpenCount>> getOpenValveLtIntakes(IntakeCountValueQO qo) {
-
- String timeStart = qo.getTimeStart();
- String timeStop = qo.getTimeStop();
- if(timeStart != null && timeStart != "") {
- timeStart = timeStart + " 00:00:00";
- } else {
- timeStart = LocalDate.now() + " 00:00:00";
- }
- qo.setTimeStart(timeStart);
-
- if(timeStop != null && timeStop != "") {
- timeStop = timeStop + " 23:59:59";
- }else {
- timeStop = LocalDate.now() + " 23:59:59";
- }
- qo.setTimeStop(timeStop);
-
// 鐢熸垚鏌ヨ鍙傛暟
- Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ;
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo);
// 鑾峰彇绗﹀悎鏉′欢鐨勮褰曟暟
Long itemTotal = Optional.ofNullable(rmOpenCloseValveHistoryMapper.getOpenValveLtIntakesCount(params)).orElse(0L);
@@ -305,137 +268,97 @@
/**
* 鏍规嵁寮�闃�绫诲瀷鑾峰彇鎿嶄綔娆℃暟
- * @param qo
+ * @param idStart
+ * @param idEnd
+ * @param openType
* @return
*/
- public VoCountOfOpenType getCountByOpenType(OpenTypeQO qo) {
- /**
- * 琛ラ綈璧锋鏃堕棿锛屽鏋滃紑濮嬫椂闂翠负绌猴紝鍒欓粯璁や负褰撳墠鏃ユ湡锛屽鏋滅粨鏉熸椂闂翠负绌猴紝鍒欐煡璇㈡椂闂翠负绌�
- */
- String timeStart = qo.getTimeStart();
- String timeStop = qo.getTimeStop();
- if(timeStop != null) {
- timeStop = timeStop + " 23:59:59";
- if(timeStart != null) {
- timeStart = timeStart + " 00:00:00";
- }else {
- timeStart = LocalDate.now() + " 00:00:00";
- }
- }else {
- timeStart = null;
- }
- qo.setTimeStart(timeStart);
- qo.setTimeStop(timeStop);
-
- Integer openType = qo.getOpenType();
- String openTypeName = "";
- if (openType == null){
- openTypeName = "涓嶇煡閬撴偍瑕佹煡閭g寮�闃�绫诲瀷";
- }else {
- switch (openType) {
- case 1:
- openTypeName = "鍒峰崱寮�闃�";
- break;
- case 3:
- openTypeName = "涓績绔欏紑闃�";
- break;
- case 8:
- openTypeName = "鐢ㄦ埛杩滅▼寮�闃�";
- break;
- case 11:
- openTypeName = "宸℃鍗″紑闃�";
- break;
- case 13:
- openTypeName = "宸℃鍗″紑闃�";
- break;
- default:
- openTypeName = "涓嶇煡閬撴偍瑕佹煡閭g寮�闃�绫诲瀷";
- }
- }
-
+ public List<VoCountOfOpenType> getCountByOpenType(Long idStart, Long idEnd, Integer openType) {
// 鐢熸垚鏌ヨ鍙傛暟
- Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ;
+ Map<String, Object> params = new HashMap<>() ;
+ params.put("idStart", idStart);
+ params.put("idEnd", idEnd);
+ params.put("openType", openType);
- Integer openTypeCount = Optional.ofNullable(rmOpenCloseValveLastMapper.getCountByOpenType(params)).orElse(0);
-
- VoCountOfOpenType vo = new VoCountOfOpenType();
- vo.setOpenTypeName(openTypeName);
- vo.setOpenTypeCount(openTypeCount);
- return vo;
+ List<VoCountOfOpenType> list = rmOpenCloseValveLastMapper.getCountByOpenType(params) ;
+ if(list != null){
+ for (VoCountOfOpenType vo : list) {
+ if (vo.openType == null){
+ switch (vo.openType) {
+ case 1:
+ vo.openTypeName = "鍒峰崱寮�闃�";
+ break;
+ case 3:
+ vo.openTypeName = "涓績绔欏紑闃�";
+ break;
+ case 8:
+ vo.openTypeName = "鐢ㄦ埛杩滅▼寮�闃�";
+ break;
+ case 11:
+ vo.openTypeName = "宸℃鍗″紑闃�";
+ break;
+ default:
+ vo.openTypeName = "鏈煡绫诲瀷寮�闃�";
+ }
+ }
+ }
+ }
+ return list ;
}
/**
* 鏍规嵁鍏抽榾绫诲瀷鑾峰彇鎿嶄綔娆℃暟
- * @param qo
+ * @param idStart
+ * @param idEnd
+ * @param closeType
* @return
*/
- public VoCountOfCloseType getCountByCloseType(CloseTypeQo qo) {
- /**
- * 琛ラ綈璧锋鏃堕棿锛屽鏋滃紑濮嬫椂闂翠负绌猴紝鍒欓粯璁や负褰撳墠鏃ユ湡
- */
- String timeStart = qo.getTimeStart();
- String timeStop = qo.getTimeStop();
- if(timeStop != null) {
- timeStop = timeStop + " 23:59:59";
- if(timeStart != null) {
- timeStart = timeStart + " 00:00:00";
- }else {
- timeStart = LocalDate.now() + " 00:00:00";
- }
- }else {
- timeStart = null;
- }
- qo.setTimeStart(timeStart);
- qo.setTimeStop(timeStop);
+ public List<VoCountOfCloseType> getCountByCloseType(Long idStart, Long idEnd, Integer closeType) {
+ Map<String, Object> params = new HashMap<>() ;
+ params.put("idStart", idStart);
+ params.put("idEnd", idEnd);
+ params.put("closeType", closeType);
- Integer closeType = qo.getCloseType();
- String closeTypeName = "";
- if (closeType == null){
- closeTypeName = "涓嶇煡閬撴偍瑕佹煡閭g鍏抽榾绫诲瀷";
- }else {
- switch (closeType) {
- case 2:
- closeTypeName = "鍒峰崱鍏抽榾";
- break;
- case 4:
- closeTypeName = "涓績绔欏叧闃�";
- break;
- case 5:
- closeTypeName = "娆犺垂鍏抽榾";
- break;
- case 6:
- closeTypeName = "娴侀噺璁℃晠闅滃叧闃�";
- break;
- case 7:
- closeTypeName = "绱ф�ュ叧闃�";
- break;
- case 9:
- closeTypeName = "鐢ㄦ埛杩滅▼鍏抽榾";
- break;
- case 10:
- closeTypeName = "宸℃鍗″叧闃�";
- break;
- case 12:
- closeTypeName = "榛戝悕鍗曞懡浠ゅ叧闃�";
- break;
- case 13:
- closeTypeName = "杩滅▼瀹氭椂鍏抽榾";
- break;
- case 14:
- closeTypeName = "杩滅▼瀹氶噺鍏抽榾";
- break;
- default:
- closeTypeName = "涓嶇煡閬撴偍瑕佹煡閭g鍏抽榾绫诲瀷";
+ List<VoCountOfCloseType> list = rmOpenCloseValveLastMapper.getCountByCloseType(params) ;
+ if(list != null) {
+ for (VoCountOfCloseType vo : list) {
+ switch (vo.closeType) {
+ case 2:
+ vo.closeTypeName = "鍒峰崱鍏抽榾";
+ break;
+ case 4:
+ vo.closeTypeName = "涓績绔欏叧闃�";
+ break;
+ case 5:
+ vo.closeTypeName = "娆犺垂鍏抽榾";
+ break;
+ case 6:
+ vo.closeTypeName = "娴侀噺璁℃晠闅滃叧闃�";
+ break;
+ case 7:
+ vo.closeTypeName = "绱ф�ュ叧闃�";
+ break;
+ case 9:
+ vo.closeTypeName = "鐢ㄦ埛杩滅▼鍏抽榾";
+ break;
+ case 10:
+ vo.closeTypeName = "宸℃鍗″叧闃�";
+ break;
+ case 12:
+ vo.closeTypeName = "榛戝悕鍗曞懡浠ゅ叧闃�";
+ break;
+ case 13:
+ vo.closeTypeName = "杩滅▼瀹氭椂鍏抽榾";
+ break;
+ case 14:
+ vo.closeTypeName = "杩滅▼瀹氶噺鍏抽榾";
+ break;
+ default:
+ vo.closeTypeName = "鏈煡鍏抽榾绫诲瀷";
+ }
}
}
- // 鐢熸垚鏌ヨ鍙傛暟
- Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ;
- Integer closeTypeCount = Optional.ofNullable(rmOpenCloseValveLastMapper.getCountByCloseType(params)).orElse(0);
-
- VoCountOfCloseType vo = new VoCountOfCloseType();
- vo.setCloseTypeName(closeTypeName);
- vo.setCloseTypeCount(closeTypeCount);
- return vo;
+ return list ;
}
/**
@@ -615,24 +538,7 @@
* @param qo
* @return
*/
- public QueryResultVo<List<VoIntake>> getHaveOpenNoCloseIntakes(CommonQO qo) {
- String timeStart = qo.getTimeStart();
- String timeStop = qo.getTimeStop();
- if(timeStart != null && timeStart != "") {
- timeStart = timeStart + " 00:00:00";
- } else {
- timeStart = LocalDate.now() + " 00:00:00";
- }
- qo.setTimeStart(timeStart);
-
- if(timeStop != null && timeStop != "") {
- timeStop = timeStop + " 23:59:59";
- }else {
- timeStop = LocalDate.now() + " 23:59:59";
- }
- qo.setTimeStop(timeStop);
-
-
+ public QueryResultVo<List<VoIntake>> getHaveOpenNoCloseIntakes(IntakeCountValueQO qo) {
Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo);
Long itemTotal = rmOpenCloseValveHistoryMapper.getHaveOpenNoCloseIntakesCount(params);
@@ -650,24 +556,7 @@
* @param qo
* @return
*/
- public QueryResultVo<List<VoIntake>> getNoOpenHaveCloseIntakes(CommonQO qo) {
- String timeStart = qo.getTimeStart();
- String timeStop = qo.getTimeStop();
- if(timeStart != null && timeStart != "") {
- timeStart = timeStart + " 00:00:00";
- } else {
- timeStart = LocalDate.now() + " 00:00:00";
- }
- qo.setTimeStart(timeStart);
-
- if(timeStop != null && timeStop != "") {
- timeStop = timeStop + " 23:59:59";
- }else {
- timeStop = LocalDate.now() + " 23:59:59";
- }
- qo.setTimeStop(timeStop);
-
-
+ public QueryResultVo<List<VoIntake>> getNoOpenHaveCloseIntakes(IntakeCountValueQO qo) {
Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo);
Long itemTotal = rmOpenCloseValveHistoryMapper.getNoOpenHaveCloseIntakesCount(params);
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java
index 5409a0a..d141c28 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java
@@ -1,6 +1,8 @@
package com.dy.pipIrrStatistics.intake;
import com.dy.common.aop.SsoAop;
+import com.dy.common.util.DateTime;
+import com.dy.common.util.IDLongGenerator;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.common.webUtil.QueryResultVo;
@@ -17,6 +19,7 @@
import org.springframework.web.bind.annotation.RestController;
import java.text.SimpleDateFormat;
+import java.time.LocalDate;
import java.util.Date;
import java.util.List;
import java.util.Objects;
@@ -50,7 +53,7 @@
try {
return BaseResponseUtils.buildSuccess(intakeSv.getNotOnlineIntakes(qo));
} catch (Exception e) {
- log.error("鑾峰彇寮�鍗¤褰曞紓甯�", e);
+ log.error("鑾峰彇璁板綍寮傚父", e);
return BaseResponseUtils.buildException(e.getMessage()) ;
}
}
@@ -69,7 +72,7 @@
try {
return BaseResponseUtils.buildSuccess(intakeSv.getLargeFlowIntakes(qo));
} catch (Exception e) {
- log.error("鑾峰彇寮�鍗¤褰曞紓甯�", e);
+ log.error("鑾峰彇璁板綍寮傚父", e);
return BaseResponseUtils.buildException(e.getMessage()) ;
}
}
@@ -88,7 +91,7 @@
try {
return BaseResponseUtils.buildSuccess(intakeSv.getSmallFlowIntakes(qo));
} catch (Exception e) {
- log.error("鑾峰彇寮�鍗¤褰曞紓甯�", e);
+ log.error("鑾峰彇璁板綍寮傚父", e);
return BaseResponseUtils.buildException(e.getMessage()) ;
}
}
@@ -107,7 +110,7 @@
try {
return BaseResponseUtils.buildSuccess(intakeSv.getUnderVoltIntakes(qo));
} catch (Exception e) {
- log.error("鑾峰彇寮�鍗¤褰曞紓甯�", e);
+ log.error("鑾峰彇璁板綍寮傚父", e);
return BaseResponseUtils.buildException(e.getMessage()) ;
}
}
@@ -126,48 +129,165 @@
try {
return BaseResponseUtils.buildSuccess(intakeSv.getSpecifiedSignalIntakes(qo));
} catch (Exception e) {
- log.error("鑾峰彇寮�鍗¤褰曞紓甯�", e);
+ log.error("鑾峰彇璁板綍寮傚父", e);
return BaseResponseUtils.buildException(e.getMessage()) ;
}
}
- /**
+ /** ok 11
* 鏍规嵁寮�闃�绫诲瀷鑾峰彇鎿嶄綔娆℃暟
* @param qo
* @return
*/
@GetMapping(path = "/getCountByOpenType")
@SsoAop()
- public BaseResponse<QueryResultVo<VoCountOfOpenType>> getCountByOpenType(@Valid OpenTypeQO qo, BindingResult bindingResult) {
+ public BaseResponse<QueryResultVo<VoCountOfOpenType>> getCountByOpenType(@Valid OpenTypeQO qo, BindingResult bindingResult) throws Exception{
if(bindingResult != null && bindingResult.hasErrors()){
return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
}
+ String timeStart = qo.getTimeStart();
+ String timeStop = qo.getTimeStop();
+ if(timeStart == null || timeStart.trim().equals("")){
+ return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈠紑濮嬫椂闂�");
+ }
+ if(timeStop == null || timeStop.trim().equals("")){
+ return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈡埅姝㈡椂闂�");
+ }
+ long dur = DateTime.daysBetweenyyyy_MM_dd(timeStop, timeStart) ;
+ if(dur < 0){
+ return BaseResponseUtils.buildErrorMsg("鎴鏃堕棿涓嶈兘鏃╀簬寮�濮嬫椂闂�");
+ }
+ if(dur > 366){
+ return BaseResponseUtils.buildErrorMsg("鏃堕棿璺ㄥ害涓嶈兘瓒呰繃涓�骞�");
+ }
+ int[] ymdStart = DateTime.yyyy_MM_dd_2_ymdGroup(timeStart) ;
+ int[] ymdEnd = DateTime.yyyy_MM_dd_2_ymdGroup(timeStop) ;
+ long startId = IDLongGenerator.generateOneDayStartId(ymdStart[0], ymdStart[1], ymdStart[2]) ;
+ long endId = IDLongGenerator.generateOneDayStartId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ;
try {
- return BaseResponseUtils.buildSuccess(intakeSv.getCountByOpenType(qo));
+ return BaseResponseUtils.buildSuccess(intakeSv.getCountByOpenType(startId, endId, qo.getOpenType()));
} catch (Exception e) {
- log.error("鑾峰彇寮�鍗¤褰曞紓甯�", e);
+ log.error("鑾峰彇璁板綍寮傚父", e);
return BaseResponseUtils.buildException(e.getMessage()) ;
}
}
- /**
+ /** ok 12
* 鏍规嵁鍏抽榾绫诲瀷鑾峰彇鎿嶄綔娆℃暟
* @param qo
* @return
*/
@GetMapping(path = "/getCountByCloseType")
@SsoAop()
- public BaseResponse<QueryResultVo<VoCountOfCloseType>> getCountByCloseType(@Valid CloseTypeQo qo, BindingResult bindingResult) {
+ public BaseResponse<QueryResultVo<VoCountOfCloseType>> getCountByCloseType(@Valid CloseTypeQo qo, BindingResult bindingResult) throws Exception{
if(bindingResult != null && bindingResult.hasErrors()){
return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
}
+ String timeStart = qo.getTimeStart();
+ String timeStop = qo.getTimeStop();
+ if(timeStart == null || timeStart.trim().equals("")){
+ return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈠紑濮嬫椂闂�");
+ }
+ if(timeStop == null || timeStop.trim().equals("")){
+ return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈡埅姝㈡椂闂�");
+ }
+ long dur = DateTime.daysBetweenyyyy_MM_dd(timeStop, timeStart) ;
+ if(dur < 0){
+ return BaseResponseUtils.buildErrorMsg("鎴鏃堕棿涓嶈兘鏃╀簬寮�濮嬫椂闂�");
+ }
+ if(dur > 366){
+ return BaseResponseUtils.buildErrorMsg("鏃堕棿璺ㄥ害涓嶈兘瓒呰繃涓�骞�");
+ }
+ int[] ymdStart = DateTime.yyyy_MM_dd_2_ymdGroup(timeStart) ;
+ int[] ymdEnd = DateTime.yyyy_MM_dd_2_ymdGroup(timeStop) ;
+ long startId = IDLongGenerator.generateOneDayStartId(ymdStart[0], ymdStart[1], ymdStart[2]) ;
+ long endId = IDLongGenerator.generateOneDayStartId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ;
try {
- return BaseResponseUtils.buildSuccess(intakeSv.getCountByCloseType(qo));
+ return BaseResponseUtils.buildSuccess(intakeSv.getCountByCloseType(startId, endId, qo.getCloseType()));
} catch (Exception e) {
- log.error("鑾峰彇寮�鍗¤褰曞紓甯�", e);
+ log.error("鑾峰彇璁板綍寮傚父", e);
return BaseResponseUtils.buildException(e.getMessage()) ;
}
}
+
+ /** ok 13
+ * 鑾峰彇鎸囧畾鏃堕棿娈靛唴寮�闃�娆℃暟瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
+ * @param
+ * @return
+ */
+ @GetMapping(path = "/getOpenValveGtIntakes")
+ @SsoAop()
+ public BaseResponse<QueryResultVo<List<VoIntakeOpenCount>>> getOpenValveGtIntakes(@Valid IntakeCountValueQO qo, BindingResult bindingResult) throws Exception {
+ if(bindingResult != null && bindingResult.hasErrors()){
+ return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+ }
+ String timeStart = qo.getTimeStart();
+ String timeStop = qo.getTimeStop();
+ if(timeStart == null || timeStart.trim().equals("")){
+ return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈠紑濮嬫椂闂�");
+ }
+ if(timeStop == null || timeStop.trim().equals("")){
+ return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈡埅姝㈡椂闂�");
+ }
+ long dur = DateTime.daysBetweenyyyy_MM_dd(timeStop, timeStart) ;
+ if(dur < 0){
+ return BaseResponseUtils.buildErrorMsg("鎴鏃堕棿涓嶈兘鏃╀簬寮�濮嬫椂闂�");
+ }
+ if(dur > 366){
+ return BaseResponseUtils.buildErrorMsg("鏃堕棿璺ㄥ害涓嶈兘瓒呰繃涓�骞�");
+ }
+ int[] ymdStart = DateTime.yyyy_MM_dd_2_ymdGroup(timeStart) ;
+ int[] ymdEnd = DateTime.yyyy_MM_dd_2_ymdGroup(timeStop) ;
+ qo.idStart = IDLongGenerator.generateOneDayStartId(ymdStart[0], ymdStart[1], ymdStart[2]) ;
+ qo.idEnd = IDLongGenerator.generateOneDayStartId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ;
+ try {
+ QueryResultVo<List<VoIntakeOpenCount>> res = intakeSv.getOpenValveGtIntakes(qo);
+ return BaseResponseUtils.buildSuccess(res);
+ } catch (Exception e) {
+ log.error("鑾峰彇璁板綍寮傚父", e);
+ return BaseResponseUtils.buildException(e.getMessage()) ;
+ }
+ }
+
+ /** ok 14
+ * 鑾峰彇鎸囧畾鏃堕棿娈靛唴寮�闃�娆℃暟浣庝簬鎸囧畾鍊肩殑鍙栨按鍙�
+ * @param
+ * @return
+ */
+ @GetMapping(path = "/getOpenValveLtIntakes")
+ @SsoAop()
+ public BaseResponse<QueryResultVo<List<VoIntakeOpenCount>>> getOpenValveLtIntakes(@Valid IntakeCountValueQO qo, BindingResult bindingResult) throws Exception {
+ if(bindingResult != null && bindingResult.hasErrors()){
+ return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+ }
+ String timeStart = qo.getTimeStart();
+ String timeStop = qo.getTimeStop();
+ if(timeStart == null || timeStart.trim().equals("")){
+ return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈠紑濮嬫椂闂�");
+ }
+ if(timeStop == null || timeStop.trim().equals("")){
+ return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈡埅姝㈡椂闂�");
+ }
+ long dur = DateTime.daysBetweenyyyy_MM_dd(timeStop, timeStart) ;
+ if(dur < 0){
+ return BaseResponseUtils.buildErrorMsg("鎴鏃堕棿涓嶈兘鏃╀簬寮�濮嬫椂闂�");
+ }
+ if(dur > 366){
+ return BaseResponseUtils.buildErrorMsg("鏃堕棿璺ㄥ害涓嶈兘瓒呰繃涓�骞�");
+ }
+ int[] ymdStart = DateTime.yyyy_MM_dd_2_ymdGroup(timeStart) ;
+ int[] ymdEnd = DateTime.yyyy_MM_dd_2_ymdGroup(timeStop) ;
+ qo.idStart = IDLongGenerator.generateOneDayStartId(ymdStart[0], ymdStart[1], ymdStart[2]) ;
+ qo.idEnd = IDLongGenerator.generateOneDayStartId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ;
+ try {
+ QueryResultVo<List<VoIntakeOpenCount>> res = intakeSv.getOpenValveLtIntakes(qo);
+ return BaseResponseUtils.buildSuccess(res);
+ } catch (Exception e) {
+ log.error("鑾峰彇璁板綍寮傚父", e);
+ return BaseResponseUtils.buildException(e.getMessage()) ;
+ }
+ }
+
/**
* 鑾峰彇浠庢湭寮�杩囬榾鐨勫彇姘村彛
@@ -179,41 +299,6 @@
public BaseResponse<QueryResultVo<List<VoIntake>>> getNeverOpenValveIntakes(CommonQO qo) {
try {
QueryResultVo<List<VoIntake>> res = intakeSv.getNeverOpenValveIntakes(qo);
- return BaseResponseUtils.buildSuccess(res);
- } catch (Exception e) {
- log.error("鑾峰彇璁板綍寮傚父", e);
- return BaseResponseUtils.buildException(e.getMessage()) ;
- }
- }
-
-
- /**
- * 鑾峰彇鎸囧畾鏃堕棿娈靛唴寮�闃�娆℃暟瓒呰繃鎸囧畾鍊肩殑鍙栨按鍙�
- * @param
- * @return
- */
- @GetMapping(path = "/getOpenValveGtIntakes")
- @SsoAop()
- public BaseResponse<QueryResultVo<List<VoIntakeOpenCount>>> getOpenValveGtIntakes(IntakeCountValueQO qo) {
- try {
- QueryResultVo<List<VoIntakeOpenCount>> res = intakeSv.getOpenValveGtIntakes(qo);
- return BaseResponseUtils.buildSuccess(res);
- } catch (Exception e) {
- log.error("鑾峰彇璁板綍寮傚父", e);
- return BaseResponseUtils.buildException(e.getMessage()) ;
- }
- }
-
- /**
- * 鑾峰彇鎸囧畾鏃堕棿娈靛唴寮�闃�娆℃暟浣庝簬鎸囧畾鍊肩殑鍙栨按鍙�
- * @param
- * @return
- */
- @GetMapping(path = "/getOpenValveLtIntakes")
- @SsoAop()
- public BaseResponse<QueryResultVo<List<VoIntakeOpenCount>>> getOpenValveLtIntakes(IntakeCountValueQO qo) {
- try {
- QueryResultVo<List<VoIntakeOpenCount>> res = intakeSv.getOpenValveLtIntakes(qo);
return BaseResponseUtils.buildSuccess(res);
} catch (Exception e) {
log.error("鑾峰彇璁板綍寮傚父", e);
@@ -306,14 +391,33 @@
}
}
- /**
+ /** ok 15
* 鎸囧畾鏃堕棿娈� 鏈夊紑闃� 鏃犲叧闃�鐨勫彇姘村彛
* @param
* @return
*/
@GetMapping(path = "/getHaveOpenNoCloseIntakes")
@SsoAop()
- public BaseResponse<QueryResultVo<List<VoIntake>>> getHaveOpenNoCloseIntakes(CommonQO qo) {
+ public BaseResponse<QueryResultVo<List<VoIntake>>> getHaveOpenNoCloseIntakes(IntakeCountValueQO qo) throws Exception {
+ String timeStart = qo.getTimeStart();
+ String timeStop = qo.getTimeStop();
+ if(timeStart == null || timeStart.trim().equals("")){
+ return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈠紑濮嬫椂闂�");
+ }
+ if(timeStop == null || timeStop.trim().equals("")){
+ return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈡埅姝㈡椂闂�");
+ }
+ long dur = DateTime.daysBetweenyyyy_MM_dd(timeStop, timeStart) ;
+ if(dur < 0){
+ return BaseResponseUtils.buildErrorMsg("鎴鏃堕棿涓嶈兘鏃╀簬寮�濮嬫椂闂�");
+ }
+ if(dur > 366){
+ return BaseResponseUtils.buildErrorMsg("鏃堕棿璺ㄥ害涓嶈兘瓒呰繃涓�骞�");
+ }
+ int[] ymdStart = DateTime.yyyy_MM_dd_2_ymdGroup(timeStart) ;
+ int[] ymdEnd = DateTime.yyyy_MM_dd_2_ymdGroup(timeStop) ;
+ qo.idStart = IDLongGenerator.generateOneDayStartId(ymdStart[0], ymdStart[1], ymdStart[2]) ;
+ qo.idEnd = IDLongGenerator.generateOneDayStartId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ;
try {
QueryResultVo<List<VoIntake>> res = intakeSv.getHaveOpenNoCloseIntakes(qo);
return BaseResponseUtils.buildSuccess(res);
@@ -330,7 +434,26 @@
*/
@GetMapping(path = "/getNoOpenHaveCloseIntakes")
@SsoAop()
- public BaseResponse<QueryResultVo<List<VoIntake>>> getNoOpenHaveCloseIntakes(CommonQO qo) {
+ public BaseResponse<QueryResultVo<List<VoIntake>>> getNoOpenHaveCloseIntakes(IntakeCountValueQO qo) throws Exception {
+ String timeStart = qo.getTimeStart();
+ String timeStop = qo.getTimeStop();
+ if(timeStart == null || timeStart.trim().equals("")){
+ return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈠紑濮嬫椂闂�");
+ }
+ if(timeStop == null || timeStop.trim().equals("")){
+ return BaseResponseUtils.buildErrorMsg("璇疯缃煡璇㈡埅姝㈡椂闂�");
+ }
+ long dur = DateTime.daysBetweenyyyy_MM_dd(timeStop, timeStart) ;
+ if(dur < 0){
+ return BaseResponseUtils.buildErrorMsg("鎴鏃堕棿涓嶈兘鏃╀簬寮�濮嬫椂闂�");
+ }
+ if(dur > 366){
+ return BaseResponseUtils.buildErrorMsg("鏃堕棿璺ㄥ害涓嶈兘瓒呰繃涓�骞�");
+ }
+ int[] ymdStart = DateTime.yyyy_MM_dd_2_ymdGroup(timeStart) ;
+ int[] ymdEnd = DateTime.yyyy_MM_dd_2_ymdGroup(timeStop) ;
+ qo.idStart = IDLongGenerator.generateOneDayStartId(ymdStart[0], ymdStart[1], ymdStart[2]) ;
+ qo.idEnd = IDLongGenerator.generateOneDayStartId(ymdEnd[0], ymdEnd[1], ymdEnd[2]) ;
try {
QueryResultVo<List<VoIntake>> res = intakeSv.getNoOpenHaveCloseIntakes(qo);
return BaseResponseUtils.buildSuccess(res);
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/qo/IntakeCountValueQO.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/qo/IntakeCountValueQO.java
index 54a20f0..35e3c17 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/qo/IntakeCountValueQO.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/qo/IntakeCountValueQO.java
@@ -19,5 +19,11 @@
* 鍊�
*/
@NotBlank(message = "鍊间笉鑳戒负绌�")
- private Integer value;
+ public Integer value;
+
+
+ ///////////////////////
+ //闈炲墠绔彁浜ょ殑鍙傛暟
+ public Long idStart ;
+ public Long idEnd ;
}
--
Gitblit v1.8.0