diff --git a/doc/梅州豪生控制点表xls.xls b/doc/梅州豪生控制点表xls.xls
new file mode 100644
index 0000000..cd43ffd
Binary files /dev/null and b/doc/梅州豪生控制点表xls.xls differ
diff --git a/mh-common/src/main/java/com/mh/common/core/domain/vo/EnergyConsumptionVO.java b/mh-common/src/main/java/com/mh/common/core/domain/vo/EnergyConsumptionVO.java
index 352a21f..24812be 100644
--- a/mh-common/src/main/java/com/mh/common/core/domain/vo/EnergyConsumptionVO.java
+++ b/mh-common/src/main/java/com/mh/common/core/domain/vo/EnergyConsumptionVO.java
@@ -1,5 +1,7 @@
package com.mh.common.core.domain.vo;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+
import java.io.Serializable;
/**
@@ -38,6 +40,19 @@ public class EnergyConsumptionVO implements Serializable {
*/
private String paramType;
+ /**
+ * 系统类型
+ */
+ private String systemType;
+
+ public String getSystemType() {
+ return systemType;
+ }
+
+ public void setSystemType(String systemType) {
+ this.systemType = systemType;
+ }
+
public String getTimeType() {
return timeType;
}
@@ -80,13 +95,14 @@ public class EnergyConsumptionVO implements Serializable {
@Override
public String toString() {
- return "EnergyConsumptionVO{" +
- "timeType='" + timeType + '\'' +
- ", startTime='" + startTime + '\'' +
- ", endTime='" + endTime + '\'' +
- ", deviceType='" + deviceType + '\'' +
- ", paramType='" + paramType + '\'' +
- '}';
+ return new ToStringBuilder(this)
+ .append("timeType", timeType)
+ .append("startTime", startTime)
+ .append("endTime", endTime)
+ .append("deviceType", deviceType)
+ .append("paramType", paramType)
+ .append("systemType", systemType)
+ .toString();
}
}
diff --git a/mh-common/src/main/java/com/mh/common/core/domain/vo/EnergyQueryVO.java b/mh-common/src/main/java/com/mh/common/core/domain/vo/EnergyQueryVO.java
index 8ccbca7..804ea8d 100644
--- a/mh-common/src/main/java/com/mh/common/core/domain/vo/EnergyQueryVO.java
+++ b/mh-common/src/main/java/com/mh/common/core/domain/vo/EnergyQueryVO.java
@@ -49,6 +49,19 @@ public class EnergyQueryVO extends BaseEntity implements Serializable {
private int pageSize;
+ /**
+ * 系统类型
+ */
+ private String systemType;
+
+ public String getSystemType() {
+ return systemType;
+ }
+
+ public void setSystemType(String systemType) {
+ this.systemType = systemType;
+ }
+
public int getPageNum() {
return pageNum;
}
diff --git a/mh-system/src/main/java/com/mh/system/mapper/energy/EnergyAnalyzeMapper.java b/mh-system/src/main/java/com/mh/system/mapper/energy/EnergyAnalyzeMapper.java
index e3a83e0..ff22ea8 100644
--- a/mh-system/src/main/java/com/mh/system/mapper/energy/EnergyAnalyzeMapper.java
+++ b/mh-system/src/main/java/com/mh/system/mapper/energy/EnergyAnalyzeMapper.java
@@ -49,6 +49,9 @@ public interface EnergyAnalyzeMapper {
"" +
" and dl.device_type = #{paramType}" +
"" +
+ "" +
+ " and cpm.system_type = #{systemType}" +
+ "" +
"union all " +
"select " +
" dm.calc_value, " +
@@ -73,13 +76,17 @@ public interface EnergyAnalyzeMapper {
"" +
" and dl.device_type = #{paramType}" +
"" +
+ "" +
+ " and cpm.system_type = #{systemType}" +
+ "" +
"")
List queryManyTable(@Param("startTime") String startTime,
@Param("endTime") String endTime,
@Param("lastTableName") String lastTableName,
@Param("curTableName") String curTableName,
@Param("len") String dateLen,
- @Param("paramType") String paramType);
+ @Param("paramType") String paramType,
+ @Param("systemType") String systemType);
/**
* 单表查询操作
@@ -113,13 +120,17 @@ public interface EnergyAnalyzeMapper {
"" +
" and dl.device_type = #{paramType}" +
"" +
+ "" +
+ " and cpm.system_type = #{systemType}" +
+ "" +
"")
List queryOneTable(@Param("startTime") String startTime,
@Param("endTime") String endTime,
@Param("lastTableName") String lastTableName,
@Param("curTableName") String curTableName,
@Param("len") String dateLen,
- @Param("paramType") String paramType);
+ @Param("paramType") String paramType,
+ @Param("systemType") String systemType);
@Select("")
List queryManyTable(@Param("startTime") String startTime,
@Param("endTime") String endTime,
@@ -107,7 +129,8 @@ public interface EnergyQueryMapper {
@Param("len") String dateLen,
@Param("paramType") String paramType,
@Param("haveMeter") boolean haveMeter,
- @Param("haveCloud") boolean haveCloud);
+ @Param("haveCloud") boolean haveCloud,
+ @Param("systemType") String systemType);
/**
* 单表查询操作
@@ -149,6 +172,9 @@ public interface EnergyQueryMapper {
"on " +
" cpm.device_ledger_id = dl.id " +
" and dl.device_type in ('5', '6') " +
+ " " +
+ " and cpm.system_type = #{systemType} " +
+ "" +
") " +
"group by " +
" device_type, " +
@@ -172,6 +198,7 @@ public interface EnergyQueryMapper {
@Param("len") String dateLen,
@Param("paramType") String paramType,
@Param("haveMeter") boolean haveMeter,
- @Param("haveCloud") boolean haveCloud);
+ @Param("haveCloud") boolean haveCloud,
+ @Param("systemType") String systemType);
}
diff --git a/mh-system/src/main/java/com/mh/system/service/device/impl/DeviceLedgerServiceImpl.java b/mh-system/src/main/java/com/mh/system/service/device/impl/DeviceLedgerServiceImpl.java
index ae90a05..27d2454 100644
--- a/mh-system/src/main/java/com/mh/system/service/device/impl/DeviceLedgerServiceImpl.java
+++ b/mh-system/src/main/java/com/mh/system/service/device/impl/DeviceLedgerServiceImpl.java
@@ -41,7 +41,7 @@ public class DeviceLedgerServiceImpl implements IDeviceLedgerService {
}
// 设备类型
if (!StringUtils.isEmpty(ledgerInfo.getDeviceType())) {
- queryWrapper.like("device_type", ledgerInfo.getDeviceType());
+ queryWrapper.eq("device_type", ledgerInfo.getDeviceType());
}
// 出入库时间范围
if (ledgerInfo.getParams() != null && !ledgerInfo.getParams().isEmpty()) {
diff --git a/mh-system/src/main/java/com/mh/system/service/energy/impl/EnergyAnalyzeServiceImpl.java b/mh-system/src/main/java/com/mh/system/service/energy/impl/EnergyAnalyzeServiceImpl.java
index ba9fbc2..7ff6f38 100644
--- a/mh-system/src/main/java/com/mh/system/service/energy/impl/EnergyAnalyzeServiceImpl.java
+++ b/mh-system/src/main/java/com/mh/system/service/energy/impl/EnergyAnalyzeServiceImpl.java
@@ -47,16 +47,34 @@ public class EnergyAnalyzeServiceImpl implements EnergyAnalyzeService {
// 表格数据
if ("month".equalsIgnoreCase(timeType) || "year".equalsIgnoreCase(timeType)) {
// 单表
- deviceTypeEnergyEntities = energyAnalyzeMapper.queryOneTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), DateUtils.getTimeLen(vo.getTimeType()), Constants.METER_TYPE);
+ deviceTypeEnergyEntities = energyAnalyzeMapper.queryOneTable(vo.getStartTime(),
+ vo.getEndTime(),
+ lastTableName.get(),
+ curTableName.get(),
+ DateUtils.getTimeLen(vo.getTimeType()),
+ Constants.METER_TYPE,
+ vo.getSystemType());
} else {
lastTableName.set(lastTableName + vo.getStartTime().substring(0, 4));
curTableName.set(curTableName + vo.getEndTime().substring(0, 4));
if (lastTableName.get().equalsIgnoreCase(curTableName.get())) {
// 单表
- deviceTypeEnergyEntities = energyAnalyzeMapper.queryOneTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), DateUtils.getTimeLen(vo.getTimeType()), Constants.METER_TYPE);
+ deviceTypeEnergyEntities = energyAnalyzeMapper.queryOneTable(vo.getStartTime(),
+ vo.getEndTime(),
+ lastTableName.get(),
+ curTableName.get(),
+ DateUtils.getTimeLen(vo.getTimeType()),
+ Constants.METER_TYPE,
+ vo.getSystemType());
} else {
// 多表
- deviceTypeEnergyEntities = energyAnalyzeMapper.queryManyTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), DateUtils.getTimeLen(vo.getTimeType()), Constants.METER_TYPE);
+ deviceTypeEnergyEntities = energyAnalyzeMapper.queryManyTable(vo.getStartTime(),
+ vo.getEndTime(),
+ lastTableName.get(),
+ curTableName.get(),
+ DateUtils.getTimeLen(vo.getTimeType()),
+ Constants.METER_TYPE,
+ vo.getSystemType());
}
}
if (null == deviceTypeEnergyEntities || deviceTypeEnergyEntities.size() == 0) {
@@ -159,16 +177,16 @@ public class EnergyAnalyzeServiceImpl implements EnergyAnalyzeService {
// 表格数据
if ("month".equalsIgnoreCase(timeType) || "year".equalsIgnoreCase(timeType)) {
// 单表
- deviceTypeEnergyEntities = energyAnalyzeMapper.queryDeviceOneTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), DateUtils.getTimeLen(vo.getTimeType()), params);
+ deviceTypeEnergyEntities = energyAnalyzeMapper.queryDeviceOneTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), DateUtils.getTimeLen(vo.getTimeType()), params, vo.getSystemType());
} else {
lastTableName.set(lastTableName + vo.getStartTime().substring(0, 4));
curTableName.set(curTableName + vo.getEndTime().substring(0, 4));
if (lastTableName.get().equalsIgnoreCase(curTableName.get())) {
// 单表
- deviceTypeEnergyEntities = energyAnalyzeMapper.queryDeviceOneTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), DateUtils.getTimeLen(vo.getTimeType()), params);
+ deviceTypeEnergyEntities = energyAnalyzeMapper.queryDeviceOneTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), DateUtils.getTimeLen(vo.getTimeType()), params, vo.getSystemType());
} else {
// 多表
- deviceTypeEnergyEntities = energyAnalyzeMapper.queryDeviceManyTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), DateUtils.getTimeLen(vo.getTimeType()), params);
+ deviceTypeEnergyEntities = energyAnalyzeMapper.queryDeviceManyTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), DateUtils.getTimeLen(vo.getTimeType()), params, vo.getSystemType());
}
}
if (null == deviceTypeEnergyEntities || deviceTypeEnergyEntities.isEmpty()) {
diff --git a/mh-system/src/main/java/com/mh/system/service/energy/impl/EnergyQueryServiceImpl.java b/mh-system/src/main/java/com/mh/system/service/energy/impl/EnergyQueryServiceImpl.java
index 4d202b5..e4e5a5e 100644
--- a/mh-system/src/main/java/com/mh/system/service/energy/impl/EnergyQueryServiceImpl.java
+++ b/mh-system/src/main/java/com/mh/system/service/energy/impl/EnergyQueryServiceImpl.java
@@ -46,16 +46,16 @@ public class EnergyQueryServiceImpl implements IEnergyQueryService {
// 表格数据
if ("month".equalsIgnoreCase(timeType) || "year".equalsIgnoreCase(timeType)) {
// 单表
- consumptionAnalyzeEntities = energyQueryMapper.queryOneTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), DateUtils.getTimeLen(vo.getTimeType()), null, haveMeter, haveCloud);
+ consumptionAnalyzeEntities = energyQueryMapper.queryOneTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), DateUtils.getTimeLen(vo.getTimeType()), null, haveMeter, haveCloud, vo.getSystemType());
} else {
lastTableName.set(lastTableName + vo.getStartTime().substring(0, 4));
curTableName.set(curTableName + vo.getEndTime().substring(0, 4));
if (lastTableName.get().equalsIgnoreCase(curTableName.get())) {
// 单表
- consumptionAnalyzeEntities = energyQueryMapper.queryOneTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), DateUtils.getTimeLen(vo.getTimeType()), null, haveMeter, haveCloud);
+ consumptionAnalyzeEntities = energyQueryMapper.queryOneTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), DateUtils.getTimeLen(vo.getTimeType()), null, haveMeter, haveCloud, vo.getSystemType());
} else {
// 多表
- consumptionAnalyzeEntities = energyQueryMapper.queryManyTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), DateUtils.getTimeLen(vo.getTimeType()), null, haveMeter, haveCloud);
+ consumptionAnalyzeEntities = energyQueryMapper.queryManyTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), DateUtils.getTimeLen(vo.getTimeType()), null, haveMeter, haveCloud, vo.getSystemType());
}
}
if (null == consumptionAnalyzeEntities || consumptionAnalyzeEntities.size() == 0) {
diff --git a/mh-system/src/main/java/com/mh/system/service/energy/impl/EnergyServiceImpl.java b/mh-system/src/main/java/com/mh/system/service/energy/impl/EnergyServiceImpl.java
index 8c8ad14..9dd6b75 100644
--- a/mh-system/src/main/java/com/mh/system/service/energy/impl/EnergyServiceImpl.java
+++ b/mh-system/src/main/java/com/mh/system/service/energy/impl/EnergyServiceImpl.java
@@ -54,7 +54,7 @@ public class EnergyServiceImpl implements IEnergyService {
// 多表
lastTableName.set(lastTableName + vo.getStartTime().substring(0, 4));
curTableName.set(curTableName + vo.getEndTime().substring(0, 4));
- consumptionAnalyzeEntities = energyMapper.queryDeviceManyTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), getTimeLen(vo.getTimeType()), vo.getDeviceType());
+ consumptionAnalyzeEntities = energyMapper.queryDeviceManyTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), getTimeLen(vo.getTimeType()), vo.getDeviceType(), vo.getSystemType());
}
if (null == consumptionAnalyzeEntities || consumptionAnalyzeEntities.size() == 0) {
latch.countDown();
@@ -78,7 +78,7 @@ public class EnergyServiceImpl implements IEnergyService {
// 多表
String lastTable = "data_min" + vo.getStartTime().substring(0,4);
String curTable = "data_min" + vo.getEndTime().substring(0,4);
- List consumptionAnalyzeEntities = energyMapper.queryDeviceLineManyTable(vo.getStartTime(), vo.getEndTime(), lastTable, curTable, vo.getDeviceType());
+ List consumptionAnalyzeEntities = energyMapper.queryDeviceLineManyTable(vo.getStartTime(), vo.getEndTime(), lastTable, curTable, vo.getDeviceType(), vo.getSystemType());
if (null == consumptionAnalyzeEntities || consumptionAnalyzeEntities.size() == 0) {
latch.countDown();
return null;
@@ -147,16 +147,16 @@ public class EnergyServiceImpl implements IEnergyService {
// 表格数据
if ("month".equalsIgnoreCase(timeType) || "year".equalsIgnoreCase(timeType)) {
// 单表
- consumptionAnalyzeEntities = energyMapper.queryOneTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), getTimeLen(vo.getTimeType()), null);
+ consumptionAnalyzeEntities = energyMapper.queryOneTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), getTimeLen(vo.getTimeType()), null, vo.getSystemType());
} else {
lastTableName.set(lastTableName + vo.getStartTime().substring(0, 4));
curTableName.set(curTableName + vo.getEndTime().substring(0, 4));
if (lastTableName.get().equalsIgnoreCase(curTableName.get())) {
// 单表
- consumptionAnalyzeEntities = energyMapper.queryOneTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), getTimeLen(vo.getTimeType()), null);
+ consumptionAnalyzeEntities = energyMapper.queryOneTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), getTimeLen(vo.getTimeType()), null, vo.getSystemType());
} else {
// 多表
- consumptionAnalyzeEntities = energyMapper.queryManyTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), getTimeLen(vo.getTimeType()), null);
+ consumptionAnalyzeEntities = energyMapper.queryManyTable(vo.getStartTime(), vo.getEndTime(), lastTableName.get(), curTableName.get(), getTimeLen(vo.getTimeType()), null, vo.getSystemType());
}
}
if (null == consumptionAnalyzeEntities || consumptionAnalyzeEntities.isEmpty()) {
@@ -349,6 +349,11 @@ public class EnergyServiceImpl implements IEnergyService {
String startTime = vo.getStartTime();
String endTime = vo.getEndTime();
String deviceType = vo.getParamType();
+ if ("meter".equals(deviceType)) {
+ deviceType = "5";
+ } else if ("cold".equals(deviceType)){
+ deviceType = "6";
+ }
if ("cop".equalsIgnoreCase(vo.getParamType())) {
return calcCopYoyData(vo);
// lastTableName = "data_min_cop";
@@ -367,7 +372,7 @@ public class EnergyServiceImpl implements IEnergyService {
String yoyLastTableName = lastTableName.substring(0, lastTableName.length() - 4) + startTime.substring(0,4);
String yoyCurTableName = curTableName.substring(0, lastTableName.length() - 4) + endTime.substring(0,4);
consumptionAnalyzeEntities = energyMapper.queryManyTableYoy(vo.getStartTime(), vo.getEndTime(), lastTableName, curTableName,
- startTime, endTime, yoyLastTableName, yoyCurTableName, getTimeLen(vo.getTimeType()), deviceType, vo.getTimeType());
+ startTime, endTime, yoyLastTableName, yoyCurTableName, getTimeLen(vo.getTimeType()), deviceType, vo.getTimeType(), vo.getSystemType());
} else {
// 单表
startTime = DateUtils.yoyDate(startTime);
@@ -384,21 +389,21 @@ public class EnergyServiceImpl implements IEnergyService {
deviceType = "system";
}
consumptionAnalyzeEntities = energyMapper.queryOneTableYoy(vo.getStartTime(), vo.getEndTime(), lastTableName, curTableName,
- startTime, endTime, getTimeLen(vo.getTimeType()), deviceType, vo.getTimeType());
+ startTime, endTime, getTimeLen(vo.getTimeType()), deviceType, vo.getTimeType(), vo.getSystemType());
}
return getConsumptionDTOHttpResult(consumptionAnalyzeEntities, "yoy");
}
private AjaxResult calcCopYoyData(EnergyConsumptionVO vo) {
// 获取冷量读数
- vo.setParamType("cloud");
+ vo.setParamType("6");
AjaxResult cloudData = yoy(vo);
EnergyConsumptionDTO cloudEnergyData = (EnergyConsumptionDTO) cloudData.get("data");
if (cloudEnergyData == null) {
return AjaxResult.error();
}
// 获取电量读数
- vo.setParamType("meter");
+ vo.setParamType("5");
AjaxResult meterData = yoy(vo);
EnergyConsumptionDTO meterEnergyData = (EnergyConsumptionDTO) meterData.get("data");;
if (meterEnergyData == null) {
@@ -536,6 +541,11 @@ public class EnergyServiceImpl implements IEnergyService {
String startTime = DateUtils.momDate(vo.getStartTime(), vo.getTimeType(), "start");
String endTime = DateUtils.momDate(vo.getEndTime(), vo.getTimeType(), "end");
String deviceType = vo.getParamType();
+ if ("meter".equals(deviceType)) {
+ deviceType = "5";
+ } else if ("cold".equals(deviceType)){
+ deviceType = "6";
+ }
// 判断查询时间类型是month,year
if ("month".equalsIgnoreCase(vo.getTimeType()) || "year".equalsIgnoreCase(vo.getTimeType())) {
String tableName = "data_"+vo.getTimeType();
@@ -545,7 +555,7 @@ public class EnergyServiceImpl implements IEnergyService {
// deviceType = "system";
return calcCopMomData(vo);
}
- consumptionAnalyzeEntities = energyMapper.queryMonthAndYearMom(vo.getStartTime(), vo.getEndTime(), startTime, endTime, tableName, getTimeLen(vo.getTimeType()), deviceType, vo.getTimeType());
+ consumptionAnalyzeEntities = energyMapper.queryMonthAndYearMom(vo.getStartTime(), vo.getEndTime(), startTime, endTime, tableName, getTimeLen(vo.getTimeType()), deviceType, vo.getTimeType(), vo.getSystemType());
} else {
// 判斷是否需要進行連表查詢
String tableName1 = "data_"+vo.getTimeType()+startTime.substring(0, 4);
@@ -559,10 +569,10 @@ public class EnergyServiceImpl implements IEnergyService {
}
if (tableName1.equalsIgnoreCase(tableName2)) {
// 单表查询
- consumptionAnalyzeEntities = energyMapper.queryOneTableMom(vo.getStartTime(), vo.getEndTime(), startTime, endTime, tableName1, getTimeLen(vo.getTimeType()), deviceType, vo.getTimeType());
+ consumptionAnalyzeEntities = energyMapper.queryOneTableMom(vo.getStartTime(), vo.getEndTime(), startTime, endTime, tableName1, getTimeLen(vo.getTimeType()), deviceType, vo.getTimeType(), vo.getSystemType());
} else {
// 多表查询
- consumptionAnalyzeEntities = energyMapper.queryManyTableMom(vo.getStartTime(), vo.getEndTime(), startTime, endTime, tableName1, tableName2, getTimeLen(vo.getTimeType()), deviceType, vo.getTimeType());
+ consumptionAnalyzeEntities = energyMapper.queryManyTableMom(vo.getStartTime(), vo.getEndTime(), startTime, endTime, tableName1, tableName2, getTimeLen(vo.getTimeType()), deviceType, vo.getTimeType(), vo.getSystemType());
}
}
return getConsumptionDTOHttpResult(consumptionAnalyzeEntities, "mom");
@@ -628,9 +638,12 @@ public class EnergyServiceImpl implements IEnergyService {
AjaxResult yoy = (AjaxResult) allData.get("yoy");
AjaxResult mom = (AjaxResult) allData.get("mom");
if (yoy.isSuccess() && mom.isSuccess()) {
+ EnergyConsumptionDTO result = new EnergyConsumptionDTO();
EnergyConsumptionDTO yoyData = (EnergyConsumptionDTO) yoy.get("data");
EnergyConsumptionDTO momData = (EnergyConsumptionDTO) mom.get("data");
- EnergyConsumptionDTO result = new EnergyConsumptionDTO();
+ if (yoyData.getData()==null || momData.getData()==null) {
+ return AjaxResult.success(result);
+ }
result.setTitles(new String[]{"curValue", "lastValue", "yoy", "mom"});
result.setTimes(yoyData.getTimes());
result.setLineTimes(yoyData.getLineTimes());
@@ -671,7 +684,7 @@ public class EnergyServiceImpl implements IEnergyService {
private static AjaxResult getConsumptionDTOHttpResult(List consumptionAnalyzeEntities, String compareType) {
EnergyConsumptionDTO energyConsumptionDTO = new EnergyConsumptionDTO();
if (null == consumptionAnalyzeEntities || consumptionAnalyzeEntities.size() == 0) {
- return AjaxResult.success();
+ return AjaxResult.success(energyConsumptionDTO);
}
String[] lastValue = new String[consumptionAnalyzeEntities.size()];
String[] curValue = new String[consumptionAnalyzeEntities.size()];
diff --git a/mh-system/src/main/resources/mapper/system/EnergyMapper.xml b/mh-system/src/main/resources/mapper/system/EnergyMapper.xml
index 6b5eca9..f5a5a4e 100644
--- a/mh-system/src/main/resources/mapper/system/EnergyMapper.xml
+++ b/mh-system/src/main/resources/mapper/system/EnergyMapper.xml
@@ -4,13 +4,13 @@
- ,month(cur_time)
+ ,EXTRACT(MONTH FROM cur_time)
- ,month(cur_time),day(cur_time)
+ ,EXTRACT(MONTH FROM cur_time),EXTRACT(DAY FROM cur_time)
- ,month(cur_time),day(cur_time),datepart(hour, cur_time)
+ ,EXTRACT(MONTH FROM cur_time),EXTRACT(DAY FROM cur_time),EXTRACT(HOUR FROM cur_time)
@@ -87,7 +87,8 @@
EXTRACT(YEAR FROM cur_time) AS yearStr
FROM ${lastTableName} dh
- WHERE cur_time >= #{yoyStartTime} AND cur_time <= #{yoyEndTime}
+ WHERE cur_time >= #{yoyStartTime}::timestamp
+ AND cur_time <= #{yoyEndTime}::timestamp
AND calc_value IS NOT NULL
and dh.device_num in (
@@ -100,6 +101,9 @@
and dl.device_type = #{paramType}
+
+ and cpm.system_type = #{systemType}
+
and cpm.grade = 40 )
GROUP BY device_type, TO_CHAR(cur_time, 'YYYY-MM-DD HH24:MI:SS'), EXTRACT(YEAR FROM cur_time)
@@ -119,7 +123,8 @@
EXTRACT(YEAR FROM cur_time) AS yearStr
FROM ${curTableName} dh
- WHERE cur_time >= #{startTime} AND cur_time <= #{endTime}
+ WHERE cur_time >= #{startTime}::timestamp
+ AND cur_time <= #{endTime}::timestamp
AND calc_value IS NOT NULL
and dh.device_num in (
@@ -132,6 +137,9 @@
and dl.device_type = #{paramType}
+
+ and cpm.system_type = #{systemType}
+
and cpm.grade = 40 )
GROUP BY device_type, TO_CHAR(cur_time, 'YYYY-MM-DD HH24:MI:SS'), EXTRACT(YEAR FROM cur_time)
@@ -151,7 +159,7 @@
EXTRACT(YEAR FROM cur_time) AS yearStr
FROM ${lastTableName} dh
- WHERE cur_time >= #{startTime} AND cur_time <= #{endTime}
+ WHERE cur_time >= #{startTime}::timestamp AND cur_time <= #{endTime}::timestamp
AND calc_value IS NOT NULL
and dh.device_num in (
@@ -164,6 +172,9 @@
and dl.device_type = #{paramType}
+
+ and cpm.system_type = #{systemType}
+
and cpm.grade = 40 )
GROUP BY device_type, TO_CHAR(cur_time, 'YYYY-MM-DD HH24:MI:SS'), EXTRACT(YEAR FROM cur_time)
@@ -183,7 +194,7 @@
EXTRACT(YEAR FROM cur_time) AS yearStr
FROM ${curTableName} dh
- WHERE cur_time >= #{startTime} AND cur_time <= #{endTime}
+ WHERE cur_time >= #{startTime}::timestamp AND cur_time <= #{endTime}::timestamp
AND calc_value IS NOT NULL
and dh.device_num in (
@@ -196,6 +207,9 @@
and dl.device_type = #{paramType}
+
+ and cpm.system_type = #{systemType}
+
and cpm.grade = 40 )
GROUP BY device_type, TO_CHAR(cur_time, 'YYYY-MM-DD HH24:MI:SS'), EXTRACT(YEAR FROM cur_time)
@@ -216,16 +230,15 @@
ELSE '同期无数据'
END AS yoy
FROM (
- -- 子查询 a(去年同期数据)
SELECT
SUM(calc_value) AS sumValue,
device_type AS deviceType,
- SUBSTRING(TO_CHAR(cur_time, 'YYYY-MM-DD HH24:MI:SS') FROM 1 FOR ${len}) AS timeStr,
- EXTRACT(YEAR FROM cur_time)::INTEGER AS yearStr
+ SUBSTRING(TO_CHAR(cur_time, 'YYYY-MM-DD HH24:MI:SS') FROM 1 FOR ${len}) AS timeStr,
+ EXTRACT(YEAR FROM cur_time)::INTEGER AS yearStr
FROM ${yoyLastTableName} dh
WHERE
- cur_time >= #{yoyStartTime} AND cur_time <= #{yoyEndTime}
+ cur_time >= #{yoyStartTime}::timestamp AND cur_time <= #{yoyEndTime}::timestamp
and dh.device_num in (
select
cpm.mt_num
@@ -236,11 +249,14 @@
and dl.device_type = #{paramType}
+
+ and cpm.system_type = #{systemType}
+
and cpm.grade = 40 )
GROUP BY
device_type,
- SUBSTRING(TO_CHAR(cur_time, 'YYYY-MM-DD HH24:MI:SS') FROM 1 FOR ${len}),
- EXTRACT(YEAR FROM cur_time)
+ SUBSTRING(TO_CHAR(cur_time, 'YYYY-MM-DD HH24:MI:SS') FROM 1 FOR ${len}),
+ EXTRACT(YEAR FROM cur_time)
UNION ALL
SELECT
@@ -251,7 +267,7 @@
FROM ${yoyCurTableName} dh
WHERE
- cur_time >= #{yoyStartTime} AND cur_time <= #{yoyEndTime}
+ cur_time >= #{yoyStartTime}::timestamp AND cur_time <= #{yoyEndTime}::timestamp
and dh.device_num in (
select
cpm.mt_num
@@ -262,6 +278,9 @@
and dl.device_type = #{paramType}
+
+ and cpm.system_type = #{systemType}
+
and cpm.grade = 40 )
GROUP BY
device_type,
@@ -269,8 +288,7 @@
EXTRACT(YEAR FROM cur_time)
) a
- RIGHT JOIN (
- -- 子查询 b(当前期数据)
+ RIGHT JOIN (
SELECT
SUM(calc_value) AS sumValue,
device_type AS deviceType,
@@ -279,7 +297,7 @@
FROM ${lastTableName} dh
WHERE
- cur_time >= #{startTime} AND cur_time <= #{endTime}
+ cur_time >= #{startTime}::timestamp AND cur_time <= #{endTime}::timestamp
and dh.device_num in (
select
cpm.mt_num
@@ -290,6 +308,9 @@
and dl.device_type = #{paramType}
+
+ and cpm.system_type = #{systemType}
+
and cpm.grade = 40 )
GROUP BY
device_type,
@@ -305,7 +326,7 @@
FROM ${curTableName} dh
WHERE
- cur_time >= #{startTime} AND cur_time <= #{endTime}
+ cur_time >= #{startTime}::timestamp AND cur_time <= #{endTime}::timestamp
and dh.device_num in (
select
cpm.mt_num
@@ -316,13 +337,16 @@
and dl.device_type = #{paramType}
+
+ and cpm.system_type = #{systemType}
+
and cpm.grade = 40 )
GROUP BY
device_type,
SUBSTRING(TO_CHAR(cur_time, 'YYYY-MM-DD HH24:MI:SS') FROM 1 FOR ${len}),
EXTRACT(YEAR FROM cur_time)
- ) b ON a.yearStr + 1 = b.yearStr
+ ) b ON a.yearStr + 1 = b.yearStr
@@ -351,7 +375,7 @@
,EXTRACT(MONTH FROM cur_time) AS monthStr
FROM ${tableName} dh
- WHERE cur_time >= #{startTime} AND cur_time <= #{endTime}
+ WHERE cur_time >= #{startTime}::timestamp AND cur_time <= #{endTime}::timestamp
AND calc_value IS NOT NULL
and dh.device_num in (
@@ -364,6 +388,9 @@
and dl.device_type = #{paramType}
+
+ and cpm.system_type = #{systemType}
+
and cpm.grade = 40 )
GROUP BY TO_CHAR(cur_time, 'YYYY-MM-DD HH24:MI:SS'), EXTRACT(YEAR FROM cur_time)
@@ -386,7 +413,7 @@
,EXTRACT(MONTH FROM cur_time) AS monthStr
FROM ${tableName} dh
- WHERE cur_time >= #{momStartTime} AND cur_time <= #{momEndTime}
+ WHERE cur_time >= #{momStartTime}::timestamp AND cur_time <= #{momEndTime}::timestamp
AND calc_value IS NOT NULL
and dh.device_num in (
@@ -399,6 +426,9 @@
and dl.device_type = #{paramType}
+
+ and cpm.system_type = #{systemType}
+
and cpm.grade = 40 )
GROUP BY EXTRACT(YEAR FROM cur_time)
@@ -443,8 +473,8 @@
from
${tableName} dh
where
- cur_time >= #{startTime}
- and cur_time <= #{endTime}
+ cur_time >= #{startTime}::timestamp
+ and cur_time <= #{endTime}::timestamp
and calc_value is not null
and dh.device_num in (
@@ -457,6 +487,9 @@
and dl.device_type = #{paramType}
+
+ and cpm.system_type = #{systemType}
+
and cpm.grade = 40 )
group by
@@ -480,8 +513,8 @@
from
${tableName} dh
where
- cur_time >= #{momStartTime}
- and cur_time <= #{momEndTime}
+ cur_time >= #{momStartTime}::timestamp
+ and cur_time <= #{momEndTime}::timestamp
and calc_value is not null
and dh.device_num in (
@@ -494,6 +527,9 @@
and dl.device_type = #{paramType}
+
+ and cpm.system_type = #{systemType}
+
and cpm.grade = 40 )
group by
@@ -528,10 +564,10 @@
extract(year from cur_time) as yearStr
from
- ${tableName1}
+ ${tableName1} dh
where
- cur_time >= #{startTime}
- and cur_time <= #{endTime}
+ cur_time >= #{startTime}::timestamp
+ and cur_time <= #{endTime}::timestamp
and dh.device_num in (
select
cpm.mt_num
@@ -542,6 +578,9 @@
and dl.device_type = #{paramType}
+
+ and cpm.system_type = #{systemType}
+
and cpm.grade = 40 )
group by
substring(to_char(cur_time, 'YYYY-MM-DD HH24:MI:SS') from 1 for ${len}),
@@ -556,8 +595,8 @@
from
${tableName2} dh
where
- cur_time >= #{startTime}
- and cur_time <= #{endTime}
+ cur_time >= #{startTime}::timestamp
+ and cur_time <= #{endTime}::timestamp
and dh.device_num in (
select
cpm.mt_num
@@ -568,6 +607,9 @@
and dl.device_type = #{paramType}
+
+ and cpm.system_type = #{systemType}
+
and cpm.grade = 40 )
group by
substring(to_char(cur_time, 'YYYY-MM-DD HH24:MI:SS') from 1 for ${len}),
@@ -581,11 +623,24 @@
extract(year from cur_time) as yearStr
from
- ${tableName1}
+ ${tableName1} dh
where
- cur_time >= #{momStartTime}
- and cur_time <= #{momEndTime}
- and device_type = #{paramType}
+ cur_time >= #{momStartTime}::timestamp
+ and cur_time <= #{momEndTime}::timestamp
+ and dh.device_num in (
+ select
+ cpm.mt_num
+ from
+ collection_params_manage cpm
+ join device_ledger dl on
+ cpm.device_ledger_id = dl.id
+
+ and dl.device_type = #{paramType}
+
+
+ and cpm.system_type = #{systemType}
+
+ and cpm.grade = 40 )
group by
extract(year from cur_time)
@@ -597,8 +652,8 @@
from
${tableName2} dh
where
- cur_time >= #{momStartTime}
- and cur_time <= #{momEndTime}
+ cur_time >= #{momStartTime}::timestamp
+ and cur_time <= #{momEndTime}::timestamp
and dh.device_num in (
select
cpm.mt_num
@@ -609,6 +664,9 @@
and dl.device_type = #{paramType}
+
+ and cpm.system_type = #{systemType}
+
and cpm.grade = 40 )
group by
extract(year from cur_time)
@@ -702,6 +760,9 @@
where
dl.device_type = '5'
and cpm.terminal_device_type = #{deviceType}
+
+ and cpm.system_type = #{systemType}
+
group by
cpm.mt_type
)
@@ -747,6 +808,9 @@
where
dl.device_type = '5'
and cpm.terminal_device_type = #{deviceType}
+
+ and cpm.system_type = #{systemType}
+
group by
cpm.mt_type
)
@@ -945,6 +1009,9 @@
where
dl.device_type = '5'
and cpm.terminal_device_type = #{deviceType}
+
+ and cpm.system_type = #{systemType}
+
group by
cpm.mt_type
)
@@ -972,6 +1039,9 @@
where
dl.device_type = '5'
and cpm.terminal_device_type = #{deviceType}
+
+ and cpm.system_type = #{systemType}
+
group by
cpm.mt_type
)