Procházet zdrojové kódy

数据管理-同比分析-统计图查询

jichaobo před 3 roky
rodič
revize
d0b55b45f3

+ 4 - 3
fiveep-controller/src/main/java/com/bizmatics/controller/web/HtAnalogDataController.java

@@ -2,6 +2,7 @@ package com.bizmatics.controller.web;
 
 
 import com.bizmatics.common.core.bean.ApiResult;
+import com.bizmatics.model.vo.DataManagementOneVO;
 import com.bizmatics.model.vo.DataManagementVO;
 import com.bizmatics.service.HtAnalogDataService;
 import com.bizmatics.service.vo.*;
@@ -119,12 +120,12 @@ public class HtAnalogDataController {
 
     /**
      *数据管理-同比分析报表-统计图数据查询
-     * @param dataManagementVO
+     * @param dataManagementOneVO
      * @return
      */
     @PostMapping("yearOnYearList")
-    public ApiResult<List<CommonIcoVO>> yearOnYearList(@RequestBody DataManagementVO dataManagementVO) {
-        return ApiResult.success(htAnalogDataService.yearOnYearList(dataManagementVO));
+    public ApiResult<List<CommonIcoVO>> yearOnYearList(@RequestBody DataManagementOneVO dataManagementOneVO) {
+        return ApiResult.success(htAnalogDataService.yearOnYearList(dataManagementOneVO));
     }
 
 

+ 39 - 0
fiveep-model/src/main/java/com/bizmatics/model/vo/DataManagementOneVO.java

@@ -0,0 +1,39 @@
+package com.bizmatics.model.vo;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * @author yq
+ * @date 2021/7/8 14:30
+ * 公用的图标VO
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class DataManagementOneVO{
+    /**
+     * 周期:0、所有值 1、每日值 2、每月值
+     */
+    private Integer type;
+    /**
+     * 开始时间
+     */
+    private String startTime;
+    /**
+     * 结束时间
+     */
+    private String endTime;
+    /**
+     * 所需字段
+     */
+    private List<String> displayField;
+    /**
+     * 1、平均值 2、最大值 3、最小值 4、累计值
+     */
+    private Integer valueCalculation;
+}

+ 2 - 2
fiveep-model/src/main/java/com/bizmatics/model/vo/DataManagementVO.java

@@ -24,7 +24,7 @@ public class DataManagementVO implements Serializable {
     /**
      * 周期:0、所有值 1、每日值 2、每月值
      */
-    private int type;
+    private Integer type;
     /**
      * 开始时间
      */
@@ -40,5 +40,5 @@ public class DataManagementVO implements Serializable {
     /**
      * 1、平均值 2、最大值 3、最小值 4、累计值
      */
-    private int valueCalculation;
+    private Integer valueCalculation;
 }

+ 15 - 0
fiveep-model/src/main/java/com/bizmatics/model/vo/HtAnalogDataVo.java

@@ -410,8 +410,23 @@ public class HtAnalogDataVo implements Serializable {
     private Date dataTime;
 
 
+    /**
+     * 站点ID
+     */
     @TableField(exist = false)
     private Integer siteId;
 
+    /**
+     * 监控设备名称
+     */
+    @TableField("monitor_device_name")
+    private String monitorDeviceName;
+
+
+    /**
+     * 监控设备ID
+     */
+    @TableField("device_attribute_id")
+    private Integer deviceAttributeId;
 
 }

+ 11 - 11
fiveep-persistence/src/main/java/com/bizmatics/persistence/mapper/HtAnalogDataMapper.java

@@ -61,47 +61,47 @@ public interface HtAnalogDataMapper extends CrudMapper<HtAnalogData> {
     List<Map<String, Object>> getDateList(@Param("startTime") Date startTime,
                                           @Param("endTime") Date endTime);
 
-    List<HtAnalogDataVo> yearOnYearOne(@Param("deviceCode") String deviceCode,
+    List<HtAnalogDataVo> yearOnYearOne(@Param("deviceCode") List deviceCode,
                                        @Param("startTime") String startTime,
                                        @Param("endTime") String endTime);
 
-    List<HtAnalogDataVo> yearOnYearTwo(@Param("deviceCode") String deviceCode,
+    List<HtAnalogDataVo> yearOnYearTwo(@Param("deviceCode") List deviceCode,
                                        @Param("startTime") String startTime,
                                        @Param("endTime") String endTime);
 
-    List<HtAnalogDataVo> yearOnYearThree(@Param("deviceCode") String deviceCode,
+    List<HtAnalogDataVo> yearOnYearThree(@Param("deviceCode") List deviceCode,
                                          @Param("startTime") String startTime,
                                          @Param("endTime") String endTime);
 
-    List<HtAnalogDataVo> dayMaxDataList(@Param("deviceCode") String deviceCode,
+    List<HtAnalogDataVo> dayMaxDataList(@Param("deviceCode") List deviceCode,
                                         @Param("startTime") String startTime,
                                         @Param("endTime") String endTime);
 
-    List<HtAnalogDataVo> dayMinDataList(@Param("deviceCode") String deviceCode,
+    List<HtAnalogDataVo> dayMinDataList(@Param("deviceCode") List deviceCode,
                                         @Param("startTime") String startTime,
                                         @Param("endTime") String endTime);
 
-    List<HtAnalogDataVo> daySumDataList(@Param("deviceCode") String deviceCode,
+    List<HtAnalogDataVo> daySumDataList(@Param("deviceCode") List deviceCode,
                                         @Param("startTime") String startTime,
                                         @Param("endTime") String endTime);
 
-    List<HtAnalogDataVo> monthMaxDataList(@Param("deviceCode") String deviceCode,
+    List<HtAnalogDataVo> monthMaxDataList(@Param("deviceCode") List deviceCode,
                                           @Param("startTime") String startTime,
                                           @Param("endTime") String endTime);
 
-    List<HtAnalogDataVo> monthMinDataList(@Param("deviceCode") String deviceCode,
+    List<HtAnalogDataVo> monthMinDataList(@Param("deviceCode") List deviceCode,
                                           @Param("startTime") String startTime,
                                           @Param("endTime") String endTime);
 
-    List<HtAnalogDataVo> monthSumDataList(@Param("deviceCode") String deviceCode,
+    List<HtAnalogDataVo> monthSumDataList(@Param("deviceCode") List deviceCode,
                                           @Param("startTime") String startTime,
                                           @Param("endTime") String endTime);
 
     List<HtAnalogDataVo> energyUseList(@Param("deviceCode") String deviceCode,
                                        @Param("startTime") String startTime,
                                        @Param("endTime") String endTime,
-                                       @Param("cycle") int cycle,
-                                       @Param("sign") int sign);
+                                       @Param("cycle") Integer cycle,
+                                       @Param("sign") Integer sign);
 
     List<HtAnalogDataVo> demandAnalysisList(@Param("deviceCode") String deviceCode,
                                             @Param("monthDate") String monthDate);

+ 730 - 96
fiveep-persistence/src/main/resources/mapper/mysql/HtAnalogDataMapper.xml

@@ -121,147 +121,708 @@
 
 
     <select id="yearOnYearOne" resultType="com.bizmatics.model.vo.HtAnalogDataVo">
-        select
-        id,deviceName,AVG(Busot) AS Busot,AVG(COS) as COS,AVG(COSa) as COSa,AVG(COSb) as COSb,AVG(COSc) as COSc,AVG(Demand) as Demand,AVG(DevResetTimes) as DevResetTimes,AVG(DeviceTemp) as DeviceTemp,
-        AVG(Epn) as Epn,AVG(Epn1) as Epn1,AVG(Epn2) as Epn2,AVG(Epn3) as Epn3,AVG(Epn4) as Epn4,AVG(Epp) as Epp,AVG(Epp1) as Epp1,AVG(Epp2) as Epp2,AVG(Epp3) as Epp3,AVG(Epp4) as Epp4,AVG(Eqn) as Eqn,
-        AVG(Eqp) as Eqp,AVG(F) as F,AVG(I0) as I0,AVG(I2) as I2,AVG(IHa) as IHa,AVG(IHb) as IHb,AVG(IHc) as IHc,AVG(Ia) as Ia,AVG(Ib) as Ib,AVG(Ic) as Ic,AVG(Ir) as Ir,AVG(LastDayMD) as LastDayMD,
-        AVG(LastDayMDt) as LastDayMDt,AVG(P) as P,AVG(Pa) as Pa,AVG(Pb) as Pb,AVG(Pc) as Pc,AVG(Q) as Q,AVG(Qa) as Qa,AVG(Qb) as Qb,AVG(Qc) as Qc,AVG(SignalIntensity) as SignalIntensity,AVG(T1) as T1,
-        AVG(T2) as T2,AVG(T3) as T3,AVG(T4) as T4,AVG(THDUa) as THDUa,AVG(THDUb) as THDUb,AVG(THDUc) as THDUc,AVG(Ua) as Ua,AVG(Uab) as Uab,AVG(Ub) as Ub,AVG(Ubc) as Ubc,AVG(UblU0) as UblU0,AVG(UblU2) as UblU2,
-        AVG(Uc) as Uc,AVG(Uca) as Uca,AVG(Udt) as Udt,AVG(Ul) as Ul,AVG(Upt) as Upt,AVG(Ust) as Ust,FROM_UNIXTIME(UNIX_TIMESTAMP(dataTime) , '%Y-%m-%d') as freezingTimes,dataTime
-        from ht_analog_data
+        SELECT
+        a.id,
+        a.deviceName,
+        AVG(a.Busot) AS Busot,
+        AVG(a.COS) AS COS,
+        AVG(a.COSa) AS COSa,
+        AVG(a.COSb) AS COSb,
+        AVG(a.COSc) AS COSc,
+        AVG(a.Demand) AS Demand,
+        AVG(a.DevResetTimes) AS DevResetTimes,
+        AVG(a.DeviceTemp) AS DeviceTemp,
+        AVG(a.Epn) AS Epn,
+        AVG(a.Epn1) AS Epn1,
+        AVG(a.Epn2) AS Epn2,
+        AVG(a.Epn3) AS Epn3,
+        AVG(a.Epn4) AS Epn4,
+        AVG(a.Epp) AS Epp,
+        AVG(a.Epp1) AS Epp1,
+        AVG(a.Epp2) AS Epp2,
+        AVG(a.Epp3) AS Epp3,
+        AVG(a.Epp4) AS Epp4,
+        AVG(a.Eqn) AS Eqn,
+        AVG(a.Eqp) AS Eqp,
+        AVG(a.F) AS F,
+        AVG(a.I0) AS I0,
+        AVG(a.I2) AS I2,
+        AVG(a.IHa) AS IHa,
+        AVG(a.IHb) AS IHb,
+        AVG(a.IHc) AS IHc,
+        AVG(a.Ia) AS Ia,
+        AVG(a.Ib) AS Ib,
+        AVG(a.Ic) AS Ic,
+        AVG(a.Ir) AS Ir,
+        AVG(a.LastDayMD) AS LastDayMD,
+        AVG(a.LastDayMDt) AS LastDayMDt,
+        AVG(a.P) AS P,
+        AVG(a.Pa) AS Pa,
+        AVG(a.Pb) AS Pb,
+        AVG(a.Pc) AS Pc,
+        AVG(a.Q) AS Q,
+        AVG(a.Qa) AS Qa,
+        AVG(a.Qb) AS Qb,
+        AVG(a.Qc) AS Qc,
+        AVG(a.SignalIntensity) AS SignalIntensity,
+        AVG(a.T1) AS T1,
+        AVG(a.T2) AS T2,
+        AVG(a.T3) AS T3,
+        AVG(a.T4) AS T4,
+        AVG(a.THDUa) AS THDUa,
+        AVG(a.THDUb) AS THDUb,
+        AVG(a.THDUc) AS THDUc,
+        AVG(a.Ua) AS Ua,
+        AVG(a.Uab) AS Uab,
+        AVG(a.Ub) AS Ub,
+        AVG(a.Ubc) AS Ubc,
+        AVG(a.UblU0) AS UblU0,
+        AVG(a.UblU2) AS UblU2,
+        AVG(a.Uc) AS Uc,
+        AVG(a.Uca) AS Uca,
+        AVG(a.Udt) AS Udt,
+        AVG(a.Ul) AS Ul,
+        AVG(a.Upt) AS Upt,
+        AVG(a.Ust) AS Ust,
+        FROM_UNIXTIME(
+        UNIX_TIMESTAMP(a.dataTime),
+        '%Y-%m-%d'
+        ) AS freezingTimes,
+        a.dataTime,
+        d.monitor_device_name,
+        d.id as device_attribute_id
+        FROM
+        ht_analog_data AS a
+        JOIN device AS b ON a.deviceName = b.device_code
+        JOIN device_analog_variable_list AS c ON b.id = c.communication_equipment
+        JOIN device_attribute AS d ON c.monitoring_equipment = d.id
         <where>
-                and deviceName = #{deviceCode}
+                and a.deviceName IN
+            <foreach item="item"  collection="deviceCode" open="(" separator="," close=")">
+                #{item.displayField}
+            </foreach>
             <if test="endTime != null and startTime != null and endTime != '' and startTime != ''">
-                and dataTime BETWEEN #{startTime} and #{endTime}
+                and a.dataTime BETWEEN #{startTime} and #{endTime}
             </if>
         </where>
-        GROUP BY freezingTime
+        GROUP BY freezingTimes,a.deviceName
     </select>
 
     <select id="dayMaxDataList" resultType="com.bizmatics.model.vo.HtAnalogDataVo">
-        select
-        id,deviceName,max(Busot) AS Busot,max(COS) as COS,max(COSa) as COSa,max(COSb) as COSb,max(COSc) as COSc,max(Demand) as Demand,max(DevResetTimes) as DevResetTimes,max(DeviceTemp) as DeviceTemp,
-        max(Epn) as Epn,max(Epn1) as Epn1,max(Epn2) as Epn2,max(Epn3) as Epn3,max(Epn4) as Epn4,max(Epp) as Epp,max(Epp1) as Epp1,max(Epp2) as Epp2,max(Epp3) as Epp3,max(Epp4) as Epp4,max(Eqn) as Eqn,
-        max(Eqp) as Eqp,max(F) as F,max(I0) as I0,max(I2) as I2,max(IHa) as IHa,max(IHb) as IHb,max(IHc) as IHc,max(Ia) as Ia,max(Ib) as Ib,max(Ic) as Ic,max(Ir) as Ir,max(LastDayMD) as LastDayMD,
-        max(LastDayMDt) as LastDayMDt,max(P) as P,max(Pa) as Pa,max(Pb) as Pb,max(Pc) as Pc,max(Q) as Q,max(Qa) as Qa,max(Qb) as Qb,max(Qc) as Qc,max(SignalIntensity) as SignalIntensity,max(T1) as T1,
-        max(T2) as T2,max(T3) as T3,max(T4) as T4,max(THDUa) as THDUa,max(THDUb) as THDUb,max(THDUc) as THDUc,max(Ua) as Ua,max(Uab) as Uab,max(Ub) as Ub,max(Ubc) as Ubc,max(UblU0) as UblU0,max(UblU2) as UblU2,
-        max(Uc) as Uc,max(Uca) as Uca,max(Udt) as Udt,max(Ul) as Ul,max(Upt) as Upt,max(Ust) as Ust,FROM_UNIXTIME(UNIX_TIMESTAMP(dataTime) , '%Y-%m-%d') as freezingTimes,dataTime
-        from ht_analog_data
+        SELECT
+        a.id,
+        a.deviceName,
+        max(a.Busot) AS Busot,
+        max(a.COS) AS COS,
+        max(a.COSa) AS COSa,
+        max(a.COSb) AS COSb,
+        max(a.COSc) AS COSc,
+        max(a.Demand) AS Demand,
+        max(a.DevResetTimes) AS DevResetTimes,
+        max(a.DeviceTemp) AS DeviceTemp,
+        max(a.Epn) AS Epn,
+        max(a.Epn1) AS Epn1,
+        max(a.Epn2) AS Epn2,
+        max(a.Epn3) AS Epn3,
+        max(a.Epn4) AS Epn4,
+        max(a.Epp) AS Epp,
+        max(a.Epp1) AS Epp1,
+        max(a.Epp2) AS Epp2,
+        max(a.Epp3) AS Epp3,
+        max(a.Epp4) AS Epp4,
+        max(a.Eqn) AS Eqn,
+        max(a.Eqp) AS Eqp,
+        max(a.F) AS F,
+        max(a.I0) AS I0,
+        max(a.I2) AS I2,
+        max(a.IHa) AS IHa,
+        max(a.IHb) AS IHb,
+        max(a.IHc) AS IHc,
+        max(a.Ia) AS Ia,
+        max(a.Ib) AS Ib,
+        max(a.Ic) AS Ic,
+        max(a.Ir) AS Ir,
+        max(a.LastDayMD) AS LastDayMD,
+        max(a.LastDayMDt) AS LastDayMDt,
+        max(a.P) AS P,
+        max(a.Pa) AS Pa,
+        max(a.Pb) AS Pb,
+        max(a.Pc) AS Pc,
+        max(a.Q) AS Q,
+        max(a.Qa) AS Qa,
+        max(a.Qb) AS Qb,
+        max(a.Qc) AS Qc,
+        max(a.SignalIntensity) AS SignalIntensity,
+        max(a.T1) AS T1,
+        max(a.T2) AS T2,
+        max(a.T3) AS T3,
+        max(a.T4) AS T4,
+        max(a.THDUa) AS THDUa,
+        max(a.THDUb) AS THDUb,
+        max(a.THDUc) AS THDUc,
+        max(a.Ua) AS Ua,
+        max(a.Uab) AS Uab,
+        max(a.Ub) AS Ub,
+        max(a.Ubc) AS Ubc,
+        max(a.UblU0) AS UblU0,
+        max(a.UblU2) AS UblU2,
+        max(a.Uc) AS Uc,
+        max(a.Uca) AS Uca,
+        max(a.Udt) AS Udt,
+        max(a.Ul) AS Ul,
+        max(a.Upt) AS Upt,
+        max(a.Ust) AS Ust,
+        FROM_UNIXTIME(
+        UNIX_TIMESTAMP(a.dataTime),
+        '%Y-%m-%d'
+        ) AS freezingTimes,
+        a.dataTime,
+        d.monitor_device_name,
+        d.id as device_attribute_id
+        FROM
+        ht_analog_data AS a
+        JOIN device AS b ON a.deviceName = b.device_code
+        JOIN device_analog_variable_list AS c ON b.id = c.communication_equipment
+        JOIN device_attribute AS d ON c.monitoring_equipment = d.id
         <where>
-            and deviceName = #{deviceCode}
+            a.deviceName IN
+            <foreach item="item"  collection="deviceCode" open="(" separator="," close=")">
+                #{item.displayField}
+            </foreach>
             <if test="endTime != null and startTime != null and endTime != '' and startTime != ''">
-                and dataTime BETWEEN #{startTime} and #{endTime}
+                and a.dataTime BETWEEN #{startTime} and #{endTime}
             </if>
         </where>
-        GROUP BY freezingTime
+        GROUP BY a.freezingTime,
+        a.deviceName
     </select>
 
     <select id="dayMinDataList" resultType="com.bizmatics.model.vo.HtAnalogDataVo">
-        select
-        id,deviceName,min(Busot) AS Busot,min(COS) as COS,min(COSa) as COSa,min(COSb) as COSb,min(COSc) as COSc,min(Demand) as Demand,min(DevResetTimes) as DevResetTimes,min(DeviceTemp) as DeviceTemp,
-        min(Epn) as Epn,min(Epn1) as Epn1,min(Epn2) as Epn2,min(Epn3) as Epn3,min(Epn4) as Epn4,min(Epp) as Epp,min(Epp1) as Epp1,min(Epp2) as Epp2,min(Epp3) as Epp3,min(Epp4) as Epp4,min(Eqn) as Eqn,
-        min(Eqp) as Eqp,min(F) as F,min(I0) as I0,min(I2) as I2,min(IHa) as IHa,min(IHb) as IHb,min(IHc) as IHc,min(Ia) as Ia,min(Ib) as Ib,min(Ic) as Ic,min(Ir) as Ir,min(LastDayMD) as LastDayMD,
-        min(LastDayMDt) as LastDayMDt,min(P) as P,min(Pa) as Pa,min(Pb) as Pb,min(Pc) as Pc,min(Q) as Q,min(Qa) as Qa,min(Qb) as Qb,min(Qc) as Qc,min(SignalIntensity) as SignalIntensity,min(T1) as T1,
-        min(T2) as T2,min(T3) as T3,min(T4) as T4,min(THDUa) as THDUa,min(THDUb) as THDUb,min(THDUc) as THDUc,min(Ua) as Ua,min(Uab) as Uab,min(Ub) as Ub,min(Ubc) as Ubc,min(UblU0) as UblU0,min(UblU2) as UblU2,
-        min(Uc) as Uc,min(Uca) as Uca,min(Udt) as Udt,min(Ul) as Ul,min(Upt) as Upt,min(Ust) as Ust,FROM_UNIXTIME(UNIX_TIMESTAMP(dataTime) , '%Y-%m-%d') as freezingTimes,dataTime
-        from ht_analog_data
+        SELECT
+        a.id,
+        a.deviceName,
+        min(a.Busot) AS Busot,
+        min(a.COS) AS COS,
+        min(a.COSa) AS COSa,
+        min(a.COSb) AS COSb,
+        min(a.COSc) AS COSc,
+        min(a.Demand) AS Demand,
+        min(a.DevResetTimes) AS DevResetTimes,
+        min(a.DeviceTemp) AS DeviceTemp,
+        min(a.Epn) AS Epn,
+        min(a.Epn1) AS Epn1,
+        min(a.Epn2) AS Epn2,
+        min(a.Epn3) AS Epn3,
+        min(a.Epn4) AS Epn4,
+        min(a.Epp) AS Epp,
+        min(a.Epp1) AS Epp1,
+        min(a.Epp2) AS Epp2,
+        min(a.Epp3) AS Epp3,
+        min(a.Epp4) AS Epp4,
+        min(a.Eqn) AS Eqn,
+        min(a.Eqp) AS Eqp,
+        min(a.F) AS F,
+        min(a.I0) AS I0,
+        min(a.I2) AS I2,
+        min(a.IHa) AS IHa,
+        min(a.IHb) AS IHb,
+        min(a.IHc) AS IHc,
+        min(a.Ia) AS Ia,
+        min(a.Ib) AS Ib,
+        min(a.Ic) AS Ic,
+        min(a.Ir) AS Ir,
+        min(a.LastDayMD) AS LastDayMD,
+        min(a.LastDayMDt) AS LastDayMDt,
+        min(a.P) AS P,
+        min(a.Pa) AS Pa,
+        min(a.Pb) AS Pb,
+        min(a.Pc) AS Pc,
+        min(a.Q) AS Q,
+        min(a.Qa) AS Qa,
+        min(a.Qb) AS Qb,
+        min(a.Qc) AS Qc,
+        min(a.SignalIntensity) AS SignalIntensity,
+        min(a.T1) AS T1,
+        min(a.T2) AS T2,
+        min(a.T3) AS T3,
+        min(a.T4) AS T4,
+        min(a.THDUa) AS THDUa,
+        min(a.THDUb) AS THDUb,
+        min(a.THDUc) AS THDUc,
+        min(a.Ua) AS Ua,
+        min(a.Uab) AS Uab,
+        min(a.Ub) AS Ub,
+        min(a.Ubc) AS Ubc,
+        min(a.UblU0) AS UblU0,
+        min(a.UblU2) AS UblU2,
+        min(a.Uc) AS Uc,
+        min(a.Uca) AS Uca,
+        min(a.Udt) AS Udt,
+        min(a.Ul) AS Ul,
+        min(a.Upt) AS Upt,
+        min(a.Ust) AS Ust,
+        FROM_UNIXTIME(
+        UNIX_TIMESTAMP(a.dataTime),
+        '%Y-%m-%d'
+        ) AS freezingTimes,
+        a.dataTime,
+        d.monitor_device_name,
+        d.id as device_attribute_id
+        FROM
+        ht_analog_data AS a
+        JOIN device AS b ON a.deviceName = b.device_code
+        JOIN device_analog_variable_list AS c ON b.id = c.communication_equipment
+        JOIN device_attribute AS d ON c.monitoring_equipment = d.id
         <where>
-            and deviceName = #{deviceCode}
+            and a.deviceName IN
+            <foreach item="item"  collection="deviceCode" open="(" separator="," close=")">
+                #{item.displayField}
+            </foreach>
             <if test="endTime != null and startTime != null and endTime != '' and startTime != ''">
-                and dataTime BETWEEN #{startTime} and #{endTime}
+                and a.dataTime BETWEEN #{startTime} and #{endTime}
             </if>
         </where>
-        GROUP BY freezingTime
+        GROUP BY a.freezingTime,a.deviceName
     </select>
 
     <select id="daySumDataList" resultType="com.bizmatics.model.vo.HtAnalogDataVo">
-        select
-        id,deviceName,sum(Busot) AS Busot,sum(COS) as COS,sum(COSa) as COSa,sum(COSb) as COSb,sum(COSc) as COSc,sum(Demand) as Demand,sum(DevResetTimes) as DevResetTimes,sum(DeviceTemp) as DeviceTemp,
-        sum(Epn) as Epn,sum(Epn1) as Epn1,sum(Epn2) as Epn2,sum(Epn3) as Epn3,sum(Epn4) as Epn4,sum(Epp) as Epp,sum(Epp1) as Epp1,sum(Epp2) as Epp2,sum(Epp3) as Epp3,sum(Epp4) as Epp4,sum(Eqn) as Eqn,
-        sum(Eqp) as Eqp,sum(F) as F,sum(I0) as I0,sum(I2) as I2,sum(IHa) as IHa,sum(IHb) as IHb,sum(IHc) as IHc,sum(Ia) as Ia,sum(Ib) as Ib,sum(Ic) as Ic,sum(Ir) as Ir,sum(LastDayMD) as LastDayMD,
-        sum(LastDayMDt) as LastDayMDt,sum(P) as P,sum(Pa) as Pa,sum(Pb) as Pb,sum(Pc) as Pc,sum(Q) as Q,sum(Qa) as Qa,sum(Qb) as Qb,sum(Qc) as Qc,sum(SignalIntensity) as SignalIntensity,sum(T1) as T1,
-        sum(T2) as T2,sum(T3) as T3,sum(T4) as T4,sum(THDUa) as THDUa,sum(THDUb) as THDUb,sum(THDUc) as THDUc,sum(Ua) as Ua,sum(Uab) as Uab,sum(Ub) as Ub,sum(Ubc) as Ubc,sum(UblU0) as UblU0,sum(UblU2) as UblU2,
-        sum(Uc) as Uc,sum(Uca) as Uca,sum(Udt) as Udt,sum(Ul) as Ul,sum(Upt) as Upt,sum(Ust) as Ust,FROM_UNIXTIME(UNIX_TIMESTAMP(dataTime) , '%Y-%m-%d') as freezingTimes,dataTime
-        from ht_analog_data
+        SELECT
+        a.id,
+        a.deviceName,
+        sum(a.Busot) AS Busot,
+        sum(a.COS) AS COS,
+        sum(a.COSa) AS COSa,
+        sum(a.COSb) AS COSb,
+        sum(a.COSc) AS COSc,
+        sum(a.Demand) AS Demand,
+        sum(a.DevResetTimes) AS DevResetTimes,
+        sum(a.DeviceTemp) AS DeviceTemp,
+        sum(a.Epn) AS Epn,
+        sum(a.Epn1) AS Epn1,
+        sum(a.Epn2) AS Epn2,
+        sum(a.Epn3) AS Epn3,
+        sum(a.Epn4) AS Epn4,
+        sum(a.Epp) AS Epp,
+        sum(a.Epp1) AS Epp1,
+        sum(a.Epp2) AS Epp2,
+        sum(a.Epp3) AS Epp3,
+        sum(a.Epp4) AS Epp4,
+        sum(a.Eqn) AS Eqn,
+        sum(a.Eqp) AS Eqp,
+        sum(a.F) AS F,
+        sum(a.I0) AS I0,
+        sum(a.I2) AS I2,
+        sum(a.IHa) AS IHa,
+        sum(a.IHb) AS IHb,
+        sum(a.IHc) AS IHc,
+        sum(a.Ia) AS Ia,
+        sum(a.Ib) AS Ib,
+        sum(a.Ic) AS Ic,
+        sum(a.Ir) AS Ir,
+        sum(a.LastDayMD) AS LastDayMD,
+        sum(a.LastDayMDt) AS LastDayMDt,
+        sum(a.P) AS P,
+        sum(a.Pa) AS Pa,
+        sum(a.Pb) AS Pb,
+        sum(a.Pc) AS Pc,
+        sum(a.Q) AS Q,
+        sum(a.Qa) AS Qa,
+        sum(a.Qb) AS Qb,
+        sum(a.Qc) AS Qc,
+        sum(a.SignalIntensity) AS SignalIntensity,
+        sum(a.T1) AS T1,
+        sum(a.T2) AS T2,
+        sum(a.T3) AS T3,
+        sum(a.T4) AS T4,
+        sum(a.THDUa) AS THDUa,
+        sum(a.THDUb) AS THDUb,
+        sum(a.THDUc) AS THDUc,
+        sum(a.Ua) AS Ua,
+        sum(a.Uab) AS Uab,
+        sum(a.Ub) AS Ub,
+        sum(a.Ubc) AS Ubc,
+        sum(a.UblU0) AS UblU0,
+        sum(a.UblU2) AS UblU2,
+        sum(a.Uc) AS Uc,
+        sum(a.Uca) AS Uca,
+        sum(a.Udt) AS Udt,
+        sum(a.Ul) AS Ul,
+        sum(a.Upt) AS Upt,
+        sum(a.Ust) AS Ust,
+        FROM_UNIXTIME(
+        UNIX_TIMESTAMP(a.dataTime),
+        '%Y-%m-%d'
+        ) AS freezingTimes,
+        a.dataTime,
+        d.monitor_device_name,
+        d.id as device_attribute_id
+        FROM
+        ht_analog_data AS a
+        JOIN device AS b ON a.deviceName = b.device_code
+        JOIN device_analog_variable_list AS c ON b.id = c.communication_equipment
+        JOIN device_attribute AS d ON c.monitoring_equipment = d.id
         <where>
-            and deviceName = #{deviceCode}
+            and a.deviceName in
+            <foreach item="item"  collection="deviceCode" open="(" separator="," close=")">
+                #{item.displayField}
+            </foreach>
             <if test="endTime != null and startTime != null and endTime != '' and startTime != ''">
-                and dataTime BETWEEN #{startTime} and #{endTime}
+                and a.dataTime BETWEEN #{startTime} and #{endTime}
             </if>
         </where>
-        GROUP BY freezingTime
+        GROUP BY a.freezingTime,a.deviceName
     </select>
 
     <select id="yearOnYearTwo" resultType="com.bizmatics.model.vo.HtAnalogDataVo">
-        select
-        id,deviceName,AVG(Busot) AS Busot,AVG(COS) as COS,AVG(COSa) as COSa,AVG(COSb) as COSb,AVG(COSc) as COSc,AVG(Demand) as Demand,AVG(DevResetTimes) as DevResetTimes,AVG(DeviceTemp) as DeviceTemp,
-        AVG(Epn) as Epn,AVG(Epn1) as Epn1,AVG(Epn2) as Epn2,AVG(Epn3) as Epn3,AVG(Epn4) as Epn4,AVG(Epp) as Epp,AVG(Epp1) as Epp1,AVG(Epp2) as Epp2,AVG(Epp3) as Epp3,AVG(Epp4) as Epp4,AVG(Eqn) as Eqn,
-        AVG(Eqp) as Eqp,AVG(F) as F,AVG(I0) as I0,AVG(I2) as I2,AVG(IHa) as IHa,AVG(IHb) as IHb,AVG(IHc) as IHc,AVG(Ia) as Ia,AVG(Ib) as Ib,AVG(Ic) as Ic,AVG(Ir) as Ir,AVG(LastDayMD) as LastDayMD,
-        AVG(LastDayMDt) as LastDayMDt,AVG(P) as P,AVG(Pa) as Pa,AVG(Pb) as Pb,AVG(Pc) as Pc,AVG(Q) as Q,AVG(Qa) as Qa,AVG(Qb) as Qb,AVG(Qc) as Qc,AVG(SignalIntensity) as SignalIntensity,AVG(T1) as T1,
-        AVG(T2) as T2,AVG(T3) as T3,AVG(T4) as T4,AVG(THDUa) as THDUa,AVG(THDUb) as THDUb,AVG(THDUc) as THDUc,AVG(Ua) as Ua,AVG(Uab) as Uab,AVG(Ub) as Ub,AVG(Ubc) as Ubc,AVG(UblU0) as UblU0,AVG(UblU2) as UblU2,
-        AVG(Uc) as Uc,AVG(Uca) as Uca,AVG(Udt) as Udt,AVG(Ul) as Ul,AVG(Upt) as Upt,AVG(Ust) as Ust,FROM_UNIXTIME(UNIX_TIMESTAMP(dataTime) , '%Y-%m') as freezingTimes,dataTime
-        from ht_analog_data
+        SELECT
+        a.id,
+        a.deviceName,
+        AVG(a.Busot) AS Busot,
+        AVG(a.COS) AS COS,
+        AVG(a.COSa) AS COSa,
+        AVG(a.COSb) AS COSb,
+        AVG(a.COSc) AS COSc,
+        AVG(a.Demand) AS Demand,
+        AVG(a.DevResetTimes) AS DevResetTimes,
+        AVG(a.DeviceTemp) AS DeviceTemp,
+        AVG(a.Epn) AS Epn,
+        AVG(a.Epn1) AS Epn1,
+        AVG(a.Epn2) AS Epn2,
+        AVG(a.Epn3) AS Epn3,
+        AVG(a.Epn4) AS Epn4,
+        AVG(a.Epp) AS Epp,
+        AVG(a.Epp1) AS Epp1,
+        AVG(a.Epp2) AS Epp2,
+        AVG(a.Epp3) AS Epp3,
+        AVG(a.Epp4) AS Epp4,
+        AVG(a.Eqn) AS Eqn,
+        AVG(a.Eqp) AS Eqp,
+        AVG(a.F) AS F,
+        AVG(a.I0) AS I0,
+        AVG(a.I2) AS I2,
+        AVG(a.IHa) AS IHa,
+        AVG(a.IHb) AS IHb,
+        AVG(a.IHc) AS IHc,
+        AVG(a.Ia) AS Ia,
+        AVG(a.Ib) AS Ib,
+        AVG(a.Ic) AS Ic,
+        AVG(a.Ir) AS Ir,
+        AVG(a.LastDayMD) AS LastDayMD,
+        AVG(a.LastDayMDt) AS LastDayMDt,
+        AVG(a.P) AS P,
+        AVG(a.Pa) AS Pa,
+        AVG(a.Pb) AS Pb,
+        AVG(a.Pc) AS Pc,
+        AVG(a.Q) AS Q,
+        AVG(a.Qa) AS Qa,
+        AVG(a.Qb) AS Qb,
+        AVG(a.Qc) AS Qc,
+        AVG(a.SignalIntensity) AS SignalIntensity,
+        AVG(a.T1) AS T1,
+        AVG(a.T2) AS T2,
+        AVG(a.T3) AS T3,
+        AVG(a.T4) AS T4,
+        AVG(a.THDUa) AS THDUa,
+        AVG(a.THDUb) AS THDUb,
+        AVG(a.THDUc) AS THDUc,
+        AVG(a.Ua) AS Ua,
+        AVG(a.Uab) AS Uab,
+        AVG(a.Ub) AS Ub,
+        AVG(a.Ubc) AS Ubc,
+        AVG(a.UblU0) AS UblU0,
+        AVG(a.UblU2) AS UblU2,
+        AVG(a.Uc) AS Uc,
+        AVG(a.Uca) AS Uca,
+        AVG(a.Udt) AS Udt,
+        AVG(a.Ul) AS Ul,
+        AVG(a.Upt) AS Upt,
+        AVG(a.Ust) AS Ust,
+        FROM_UNIXTIME(
+        UNIX_TIMESTAMP(a.dataTime),
+        '%Y-%m'
+        ) AS freezingTimes,
+        a.dataTime,
+        d.monitor_device_name,
+        d.id as device_attribute_id
+        FROM
+        ht_analog_data AS a
+        JOIN device AS b ON a.deviceName = b.device_code
+        JOIN device_analog_variable_list AS c ON b.id = c.communication_equipment
+        JOIN device_attribute AS d ON c.monitoring_equipment = d.id
         <where>
-            and deviceName = #{deviceCode}
+            and a.deviceName in
+            <foreach item="item"  collection="deviceCode" open="(" separator="," close=")">
+                #{item.displayField}
+            </foreach>
             <if test="endTime != null and startTime != null and endTime != '' and startTime != ''">
-                and dataTime BETWEEN #{startTime} and #{endTime}
+                and a.dataTime BETWEEN #{startTime} and #{endTime}
             </if>
         </where>
-        GROUP BY freezingTimes
+        GROUP BY freezingTimes,a.deviceName
     </select>
 
     <select id="monthMaxDataList" resultType="com.bizmatics.model.vo.HtAnalogDataVo">
-        select
-        id,deviceName,max(Busot) AS Busot,max(COS) as COS,max(COSa) as COSa,max(COSb) as COSb,max(COSc) as COSc,max(Demand) as Demand,max(DevResetTimes) as DevResetTimes,max(DeviceTemp) as DeviceTemp,
-        max(Epn) as Epn,max(Epn1) as Epn1,max(Epn2) as Epn2,max(Epn3) as Epn3,max(Epn4) as Epn4,max(Epp) as Epp,max(Epp1) as Epp1,max(Epp2) as Epp2,max(Epp3) as Epp3,max(Epp4) as Epp4,max(Eqn) as Eqn,
-        max(Eqp) as Eqp,max(F) as F,max(I0) as I0,max(I2) as I2,max(IHa) as IHa,max(IHb) as IHb,max(IHc) as IHc,max(Ia) as Ia,max(Ib) as Ib,max(Ic) as Ic,max(Ir) as Ir,max(LastDayMD) as LastDayMD,
-        max(LastDayMDt) as LastDayMDt,max(P) as P,max(Pa) as Pa,max(Pb) as Pb,max(Pc) as Pc,max(Q) as Q,max(Qa) as Qa,max(Qb) as Qb,max(Qc) as Qc,max(SignalIntensity) as SignalIntensity,max(T1) as T1,
-        max(T2) as T2,max(T3) as T3,max(T4) as T4,max(THDUa) as THDUa,max(THDUb) as THDUb,max(THDUc) as THDUc,max(Ua) as Ua,max(Uab) as Uab,max(Ub) as Ub,max(Ubc) as Ubc,max(UblU0) as UblU0,max(UblU2) as UblU2,
-        max(Uc) as Uc,max(Uca) as Uca,max(Udt) as Udt,max(Ul) as Ul,max(Upt) as Upt,max(Ust) as Ust,FROM_UNIXTIME(UNIX_TIMESTAMP(dataTime) , '%Y-%m') as freezingTimes,dataTime
-        from ht_analog_data
+        SELECT
+        a.id,
+        a.deviceName,
+        max(a.Busot) AS Busot,
+        max(a.COS) AS COS,
+        max(a.COSa) AS COSa,
+        max(a.COSb) AS COSb,
+        max(a.COSc) AS COSc,
+        max(a.Demand) AS Demand,
+        max(a.DevResetTimes) AS DevResetTimes,
+        max(a.DeviceTemp) AS DeviceTemp,
+        max(a.Epn) AS Epn,
+        max(a.Epn1) AS Epn1,
+        max(a.Epn2) AS Epn2,
+        max(a.Epn3) AS Epn3,
+        max(a.Epn4) AS Epn4,
+        max(a.Epp) AS Epp,
+        max(a.Epp1) AS Epp1,
+        max(a.Epp2) AS Epp2,
+        max(a.Epp3) AS Epp3,
+        max(a.Epp4) AS Epp4,
+        max(a.Eqn) AS Eqn,
+        max(a.Eqp) AS Eqp,
+        max(a.F) AS F,
+        max(a.I0) AS I0,
+        max(a.I2) AS I2,
+        max(a.IHa) AS IHa,
+        max(a.IHb) AS IHb,
+        max(a.IHc) AS IHc,
+        max(a.Ia) AS Ia,
+        max(a.Ib) AS Ib,
+        max(a.Ic) AS Ic,
+        max(a.Ir) AS Ir,
+        max(a.LastDayMD) AS LastDayMD,
+        max(a.LastDayMDt) AS LastDayMDt,
+        max(a.P) AS P,
+        max(a.Pa) AS Pa,
+        max(a.Pb) AS Pb,
+        max(a.Pc) AS Pc,
+        max(a.Q) AS Q,
+        max(a.Qa) AS Qa,
+        max(a.Qb) AS Qb,
+        max(a.Qc) AS Qc,
+        max(a.SignalIntensity) AS SignalIntensity,
+        max(a.T1) AS T1,
+        max(a.T2) AS T2,
+        max(a.T3) AS T3,
+        max(a.T4) AS T4,
+        max(a.THDUa) AS THDUa,
+        max(a.THDUb) AS THDUb,
+        max(a.THDUc) AS THDUc,
+        max(a.Ua) AS Ua,
+        max(a.Uab) AS Uab,
+        max(a.Ub) AS Ub,
+        max(a.Ubc) AS Ubc,
+        max(a.UblU0) AS UblU0,
+        max(a.UblU2) AS UblU2,
+        max(a.Uc) AS Uc,
+        max(a.Uca) AS Uca,
+        max(a.Udt) AS Udt,
+        max(a.Ul) AS Ul,
+        max(a.Upt) AS Upt,
+        max(a.Ust) AS Ust,
+        FROM_UNIXTIME(
+        UNIX_TIMESTAMP(a.dataTime),
+        '%Y-%m'
+        ) AS freezingTimes,
+        a.dataTime,
+        d.monitor_device_name,
+        d.id as device_attribute_id
+        FROM
+        ht_analog_data AS a
+        JOIN device AS b ON a.deviceName = b.device_code
+        JOIN device_analog_variable_list AS c ON b.id = c.communication_equipment
+        JOIN device_attribute AS d ON c.monitoring_equipment = d.id
         <where>
-            and deviceName = #{deviceCode}
+            and a.deviceName in
+            <foreach item="item"  collection="deviceCode" open="(" separator="," close=")">
+                #{item.displayField}
+            </foreach>
             <if test="endTime != null and startTime != null and endTime != '' and startTime != ''">
-                and dataTime BETWEEN #{startTime} and #{endTime}
+                and a.dataTime BETWEEN #{startTime} and #{endTime}
             </if>
         </where>
-        GROUP BY freezingTimes
+        GROUP BY freezingTimes,a.deviceName
     </select>
 
     <select id="monthMinDataList" resultType="com.bizmatics.model.vo.HtAnalogDataVo">
-        select
-        id,deviceName,min(Busot) AS Busot,min(COS) as COS,min(COSa) as COSa,min(COSb) as COSb,min(COSc) as COSc,min(Demand) as Demand,min(DevResetTimes) as DevResetTimes,min(DeviceTemp) as DeviceTemp,
-        min(Epn) as Epn,min(Epn1) as Epn1,min(Epn2) as Epn2,min(Epn3) as Epn3,min(Epn4) as Epn4,min(Epp) as Epp,min(Epp1) as Epp1,min(Epp2) as Epp2,min(Epp3) as Epp3,min(Epp4) as Epp4,min(Eqn) as Eqn,
-        min(Eqp) as Eqp,min(F) as F,min(I0) as I0,min(I2) as I2,min(IHa) as IHa,min(IHb) as IHb,min(IHc) as IHc,min(Ia) as Ia,min(Ib) as Ib,min(Ic) as Ic,min(Ir) as Ir,min(LastDayMD) as LastDayMD,
-        min(LastDayMDt) as LastDayMDt,min(P) as P,min(Pa) as Pa,min(Pb) as Pb,min(Pc) as Pc,min(Q) as Q,min(Qa) as Qa,min(Qb) as Qb,min(Qc) as Qc,min(SignalIntensity) as SignalIntensity,min(T1) as T1,
-        min(T2) as T2,min(T3) as T3,min(T4) as T4,min(THDUa) as THDUa,min(THDUb) as THDUb,min(THDUc) as THDUc,min(Ua) as Ua,min(Uab) as Uab,min(Ub) as Ub,min(Ubc) as Ubc,min(UblU0) as UblU0,min(UblU2) as UblU2,
-        min(Uc) as Uc,min(Uca) as Uca,min(Udt) as Udt,min(Ul) as Ul,min(Upt) as Upt,min(Ust) as Ust,FROM_UNIXTIME(UNIX_TIMESTAMP(dataTime) , '%Y-%m') as freezingTimes,dataTime
-        from ht_analog_data
+        SELECT
+        a.id,
+        a.deviceName,
+        min(a.Busot) AS Busot,
+        min(a.COS) AS COS,
+        min(a.COSa) AS COSa,
+        min(a.COSb) AS COSb,
+        min(a.COSc) AS COSc,
+        min(a.Demand) AS Demand,
+        min(a.DevResetTimes) AS DevResetTimes,
+        min(a.DeviceTemp) AS DeviceTemp,
+        min(a.Epn) AS Epn,
+        min(a.Epn1) AS Epn1,
+        min(a.Epn2) AS Epn2,
+        min(a.Epn3) AS Epn3,
+        min(a.Epn4) AS Epn4,
+        min(a.Epp) AS Epp,
+        min(a.Epp1) AS Epp1,
+        min(a.Epp2) AS Epp2,
+        min(a.Epp3) AS Epp3,
+        min(a.Epp4) AS Epp4,
+        min(a.Eqn) AS Eqn,
+        min(a.Eqp) AS Eqp,
+        min(a.F) AS F,
+        min(a.I0) AS I0,
+        min(a.I2) AS I2,
+        min(a.IHa) AS IHa,
+        min(a.IHb) AS IHb,
+        min(a.IHc) AS IHc,
+        min(a.Ia) AS Ia,
+        min(a.Ib) AS Ib,
+        min(a.Ic) AS Ic,
+        min(a.Ir) AS Ir,
+        min(a.LastDayMD) AS LastDayMD,
+        min(a.LastDayMDt) AS LastDayMDt,
+        min(a.P) AS P,
+        min(a.Pa) AS Pa,
+        min(a.Pb) AS Pb,
+        min(a.Pc) AS Pc,
+        min(a.Q) AS Q,
+        min(a.Qa) AS Qa,
+        min(a.Qb) AS Qb,
+        min(a.Qc) AS Qc,
+        min(a.SignalIntensity) AS SignalIntensity,
+        min(a.T1) AS T1,
+        min(a.T2) AS T2,
+        min(a.T3) AS T3,
+        min(a.T4) AS T4,
+        min(a.THDUa) AS THDUa,
+        min(a.THDUb) AS THDUb,
+        min(a.THDUc) AS THDUc,
+        min(a.Ua) AS Ua,
+        min(a.Uab) AS Uab,
+        min(a.Ub) AS Ub,
+        min(a.Ubc) AS Ubc,
+        min(a.UblU0) AS UblU0,
+        min(a.UblU2) AS UblU2,
+        min(a.Uc) AS Uc,
+        min(a.Uca) AS Uca,
+        min(a.Udt) AS Udt,
+        min(a.Ul) AS Ul,
+        min(a.Upt) AS Upt,
+        min(a.Ust) AS Ust,
+        FROM_UNIXTIME(
+        UNIX_TIMESTAMP(a.dataTime),
+        '%Y-%m'
+        ) AS freezingTimes,
+        a.dataTime,
+        d.monitor_device_name,
+        d.id as device_attribute_id
+        FROM
+        ht_analog_data AS a
+        JOIN device AS b ON a.deviceName = b.device_code
+        JOIN device_analog_variable_list AS c ON b.id = c.communication_equipment
+        JOIN device_attribute AS d ON c.monitoring_equipment = d.id
         <where>
-            and deviceName = #{deviceCode}
+            and a.deviceName in
+            <foreach item="item"  collection="deviceCode" open="(" separator="," close=")">
+                #{item.displayField}
+            </foreach>
             <if test="endTime != null and startTime != null and endTime != '' and startTime != ''">
-                and dataTime BETWEEN #{startTime} and #{endTime}
+                and a.dataTime BETWEEN #{startTime} and #{endTime}
             </if>
         </where>
-        GROUP BY freezingTimes
+        GROUP BY freezingTimes,a.deviceName
     </select>
 
     <select id="monthSumDataList" resultType="com.bizmatics.model.vo.HtAnalogDataVo">
-        select
-        id,deviceName,sum(Busot) AS Busot,sum(COS) as COS,sum(COSa) as COSa,sum(COSb) as COSb,sum(COSc) as COSc,sum(Demand) as Demand,sum(DevResetTimes) as DevResetTimes,sum(DeviceTemp) as DeviceTemp,
-        sum(Epn) as Epn,sum(Epn1) as Epn1,sum(Epn2) as Epn2,sum(Epn3) as Epn3,sum(Epn4) as Epn4,sum(Epp) as Epp,sum(Epp1) as Epp1,sum(Epp2) as Epp2,sum(Epp3) as Epp3,sum(Epp4) as Epp4,sum(Eqn) as Eqn,
-        sum(Eqp) as Eqp,sum(F) as F,sum(I0) as I0,sum(I2) as I2,sum(IHa) as IHa,sum(IHb) as IHb,sum(IHc) as IHc,sum(Ia) as Ia,sum(Ib) as Ib,sum(Ic) as Ic,sum(Ir) as Ir,sum(LastDayMD) as LastDayMD,
-        sum(LastDayMDt) as LastDayMDt,sum(P) as P,sum(Pa) as Pa,sum(Pb) as Pb,sum(Pc) as Pc,sum(Q) as Q,sum(Qa) as Qa,sum(Qb) as Qb,sum(Qc) as Qc,sum(SignalIntensity) as SignalIntensity,sum(T1) as T1,
-        sum(T2) as T2,sum(T3) as T3,sum(T4) as T4,sum(THDUa) as THDUa,sum(THDUb) as THDUb,sum(THDUc) as THDUc,sum(Ua) as Ua,sum(Uab) as Uab,sum(Ub) as Ub,sum(Ubc) as Ubc,sum(UblU0) as UblU0,sum(UblU2) as UblU2,
-        sum(Uc) as Uc,sum(Uca) as Uca,sum(Udt) as Udt,sum(Ul) as Ul,sum(Upt) as Upt,sum(Ust) as Ust,FROM_UNIXTIME(UNIX_TIMESTAMP(dataTime) , '%Y-%m') as freezingTimes,dataTime
-        from ht_analog_data
+        SELECT
+        a.id,
+        a.deviceName,
+        sum(a.Busot) AS Busot,
+        sum(a.COS) AS COS,
+        sum(a.COSa) AS COSa,
+        sum(a.COSb) AS COSb,
+        sum(a.COSc) AS COSc,
+        sum(a.Demand) AS Demand,
+        sum(a.DevResetTimes) AS DevResetTimes,
+        sum(a.DeviceTemp) AS DeviceTemp,
+        sum(a.Epn) AS Epn,
+        sum(a.Epn1) AS Epn1,
+        sum(a.Epn2) AS Epn2,
+        sum(a.Epn3) AS Epn3,
+        sum(a.Epn4) AS Epn4,
+        sum(a.Epp) AS Epp,
+        sum(a.Epp1) AS Epp1,
+        sum(a.Epp2) AS Epp2,
+        sum(a.Epp3) AS Epp3,
+        sum(a.Epp4) AS Epp4,
+        sum(a.Eqn) AS Eqn,
+        sum(a.Eqp) AS Eqp,
+        sum(a.F) AS F,
+        sum(a.I0) AS I0,
+        sum(a.I2) AS I2,
+        sum(a.IHa) AS IHa,
+        sum(a.IHb) AS IHb,
+        sum(a.IHc) AS IHc,
+        sum(a.Ia) AS Ia,
+        sum(a.Ib) AS Ib,
+        sum(a.Ic) AS Ic,
+        sum(a.Ir) AS Ir,
+        sum(a.LastDayMD) AS LastDayMD,
+        sum(a.LastDayMDt) AS LastDayMDt,
+        sum(a.P) AS P,
+        sum(a.Pa) AS Pa,
+        sum(a.Pb) AS Pb,
+        sum(a.Pc) AS Pc,
+        sum(a.Q) AS Q,
+        sum(a.Qa) AS Qa,
+        sum(a.Qb) AS Qb,
+        sum(a.Qc) AS Qc,
+        sum(a.SignalIntensity) AS SignalIntensity,
+        sum(a.T1) AS T1,
+        sum(a.T2) AS T2,
+        sum(a.T3) AS T3,
+        sum(a.T4) AS T4,
+        sum(a.THDUa) AS THDUa,
+        sum(a.THDUb) AS THDUb,
+        sum(a.THDUc) AS THDUc,
+        sum(a.Ua) AS Ua,
+        sum(a.Uab) AS Uab,
+        sum(a.Ub) AS Ub,
+        sum(a.Ubc) AS Ubc,
+        sum(a.UblU0) AS UblU0,
+        sum(a.UblU2) AS UblU2,
+        sum(a.Uc) AS Uc,
+        sum(a.Uca) AS Uca,
+        sum(a.Udt) AS Udt,
+        sum(a.Ul) AS Ul,
+        sum(a.Upt) AS Upt,
+        sum(a.Ust) AS Ust,
+        FROM_UNIXTIME(
+        UNIX_TIMESTAMP(a.dataTime),
+        '%Y-%m'
+        ) AS freezingTimes,
+        a.dataTime,
+        d.monitor_device_name,
+        d.id as device_attribute_id
+        FROM
+        ht_analog_data AS a
+        JOIN device AS b ON a.deviceName = b.device_code
+        JOIN device_analog_variable_list AS c ON b.id = c.communication_equipment
+        JOIN device_attribute AS d ON c.monitoring_equipment = d.id
         <where>
-            and deviceName = #{deviceCode}
+            and a.deviceName in
+            <foreach item="item"  collection="deviceCode" open="(" separator="," close=")">
+                #{item.displayField}
+            </foreach>
             <if test="endTime != null and startTime != null and endTime != '' and startTime != ''">
-                and dataTime BETWEEN #{startTime} and #{endTime}
+                and a.dataTime BETWEEN #{startTime} and #{endTime}
             </if>
         </where>
-        GROUP BY freezingTimes
+        GROUP BY freezingTimes,a.deviceName
     </select>
 
     <select id="energyUseList" resultType="com.bizmatics.model.vo.HtAnalogDataVo">
@@ -395,17 +956,90 @@
 
 
     <select id="yearOnYearThree" resultType="com.bizmatics.model.vo.HtAnalogDataVo">
-        select
-        id,deviceName,Busot,COS,COSa,COSb,COSc,Demand,DevResetTimes,DeviceTemp,Epn,Epn1,Epn2,Epn3,Epn4,Epp,
-        Epp1,Epp2,Epp3,Epp4,Eqn,Eqp,F,I0,I2,IHa,IHb,IHc,Ia,Ib,Ic,Ir,LastDayMD,LastDayMDt,P,Pa,Pb,Pc,Q,Qa,Qb,Qc,SignalIntensity,
-        T1,T2,T3,T4,THDUa,THDUb,THDUc,Ua,Uab,Ub,Ubc,UblU0,UblU2,Uc,Uca,Udt,Ul,Upt,Ust,FROM_UNIXTIME(UNIX_TIMESTAMP(dataTime) , '%m-%d %H:%i') as freezingTimes,dataTime
-        from ht_analog_data
+        SELECT
+        a.id,
+        a.deviceName,
+        a.Busot,
+        a.COS,
+        a.COSa,
+        a.COSb,
+        a.COSc,
+        a.Demand,
+        a.DevResetTimes,
+        a.DeviceTemp,
+        a.Epn,
+        a.Epn1,
+        a.Epn2,
+        a.Epn3,
+        a.Epn4,
+        a.Epp,
+        a.Epp1,
+        a.Epp2,
+        a.Epp3,
+        a.Epp4,
+        a.Eqn,
+        a.Eqp,
+        a.F,
+        a.I0,
+        a.I2,
+        a.IHa,
+        a.IHb,
+        a.IHc,
+        a.Ia,
+        a.Ib,
+        a.Ic,
+        a.Ir,
+        a.LastDayMD,
+        a.LastDayMDt,
+        a.P,
+        a.Pa,
+        a.Pb,
+        a.Pc,
+        a.Q,
+        a.Qa,
+        a.Qb,
+        a.Qc,
+        a.SignalIntensity,
+        a.T1,
+        a.T2,
+        a.T3,
+        a.T4,
+        a.THDUa,
+        a.THDUb,
+        a.THDUc,
+        a.Ua,
+        a.Uab,
+        a.Ub,
+        a.Ubc,
+        a.UblU0,
+        a.UblU2,
+        a.Uc,
+        a.Uca,
+        a.Udt,
+        a.Ul,
+        a.Upt,
+        a.Ust,
+        FROM_UNIXTIME(
+        UNIX_TIMESTAMP(a.dataTime),
+        '%m-%d %H:%i'
+        ) AS freezingTimes,
+        a.dataTime,
+        d.monitor_device_name,
+        d.id as device_attribute_id
+        FROM
+        ht_analog_data AS a
+        JOIN device AS b ON a.deviceName = b.device_code
+        JOIN device_analog_variable_list AS c ON b.id = c.communication_equipment
+        JOIN device_attribute AS d ON c.monitoring_equipment = d.id
         <where>
-            and deviceName = #{deviceCode}
+            and a.deviceName in
+            <foreach item="item"  collection="deviceCode" open="(" separator="," close=")">
+                #{item.displayField}
+            </foreach>
             <if test="endTime != null and startTime != null and endTime != '' and startTime != ''">
-                and dataTime BETWEEN #{startTime} and #{endTime}
+                and a.dataTime BETWEEN #{startTime} and #{endTime}
             </if>
         </where>
-        GROUP BY dataTime
+        GROUP BY a.dataTime,a.deviceName
     </select>
 </mapper>

+ 2 - 1
fiveep-service/src/main/java/com/bizmatics/service/HtAnalogDataService.java

@@ -2,6 +2,7 @@ package com.bizmatics.service;
 
 import com.bizmatics.common.mvc.base.CrudService;
 import com.bizmatics.model.HtAnalogData;
+import com.bizmatics.model.vo.DataManagementOneVO;
 import com.bizmatics.model.vo.DataManagementVO;
 import com.bizmatics.service.vo.*;
 
@@ -80,7 +81,7 @@ public interface HtAnalogDataService extends CrudService<HtAnalogData> {
      */
     List<RealScoreVO> rtRealScore(String deviceName, Date startTime, Date endTime);
 
-    List<CommonIcoVO> yearOnYearList(DataManagementVO dataManagementVO);
+    List<CommonIcoVO> yearOnYearList(DataManagementOneVO dataManagementOneVO);
 
     List<CommonIcoOneVO> ringRatioList(DataManagementVO dataManagementVO);
 

+ 680 - 1055
fiveep-service/src/main/java/com/bizmatics/service/impl/HtAnalogDataServiceImpl.java

@@ -9,6 +9,7 @@ import com.bizmatics.common.core.util.DateUtils;
 import com.bizmatics.common.mvc.base.AbstractCrudService;
 import com.bizmatics.common.spring.util.JsonUtils;
 import com.bizmatics.model.*;
+import com.bizmatics.model.vo.DataManagementOneVO;
 import com.bizmatics.model.vo.DataManagementVO;
 import com.bizmatics.model.vo.HtAnalogDataVo;
 import com.bizmatics.persistence.mapper.HtAnalogDataMapper;
@@ -19,9 +20,11 @@ import com.fasterxml.jackson.core.type.TypeReference;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.lang.reflect.Field;
 import java.math.BigDecimal;
 import java.text.SimpleDateFormat;
 import java.util.*;
+import java.util.stream.Collectors;
 
 
 /**
@@ -310,1075 +313,697 @@ public class HtAnalogDataServiceImpl extends AbstractCrudService<HtAnalogDataMap
 
 
     @Override
-    public List<CommonIcoVO> yearOnYearList(DataManagementVO dataManagementVO) {
+    public List<CommonIcoVO> yearOnYearList(DataManagementOneVO dataManagementOneVO) {
         List<HtAnalogDataVo> yearOnYearList = null;
-        if (dataManagementVO.getType() == 1) {
-            if (dataManagementVO.getValueCalculation() == 1) {
-                yearOnYearList = baseMapper.yearOnYearOne(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
-            } else if (dataManagementVO.getValueCalculation() == 2) {
-                yearOnYearList = baseMapper.dayMaxDataList(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
-            } else if (dataManagementVO.getValueCalculation() == 3) {
-                yearOnYearList = baseMapper.dayMinDataList(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
-            } else if (dataManagementVO.getValueCalculation() == 4) {
-                yearOnYearList = baseMapper.daySumDataList(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
+        List<DataManagementVO> dataManagementVOList = new ArrayList<>();
+        List<String> newListOne = new ArrayList<>();
+        newListOne.add("dataTime");
+        for (int i = 0; i < dataManagementOneVO.getDisplayField().size(); i++) {
+            DataManagementVO dataManagementVO = new DataManagementVO();
+            dataManagementVO.setDisplayField(dataManagementOneVO.getDisplayField().get(i).split("_")[0]);
+            dataManagementVOList.add(dataManagementVO);
+            newListOne.add(dataManagementOneVO.getDisplayField().get(i).split("_")[1]);
+        }
+        Set set = new  HashSet();
+        List<DataManagementVO> newList = new  ArrayList();
+        set.addAll(dataManagementVOList);
+        newList.addAll(set);
+
+        Set set1 = new  HashSet();
+        List<String> list = new  ArrayList();
+        set1.addAll(newListOne);
+        list.addAll(set1);
+
+        if (dataManagementOneVO.getType() == 1) {
+            if (dataManagementOneVO.getValueCalculation() == 1) {
+                yearOnYearList = baseMapper.yearOnYearOne(newList, dataManagementOneVO.getStartTime(), dataManagementOneVO.getEndTime());
+            } else if (dataManagementOneVO.getValueCalculation() == 2) {
+                yearOnYearList = baseMapper.dayMaxDataList(newList, dataManagementOneVO.getStartTime(), dataManagementOneVO.getEndTime());
+            } else if (dataManagementOneVO.getValueCalculation() == 3) {
+                yearOnYearList = baseMapper.dayMinDataList(newList, dataManagementOneVO.getStartTime(), dataManagementOneVO.getEndTime());
+            } else if (dataManagementOneVO.getValueCalculation() == 4) {
+                yearOnYearList = baseMapper.daySumDataList(newList, dataManagementOneVO.getStartTime(), dataManagementOneVO.getEndTime());
             }
-        } else if (dataManagementVO.getType() == 2) {
-            if (dataManagementVO.getValueCalculation() == 1) {
-                yearOnYearList = baseMapper.yearOnYearTwo(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
-            } else if (dataManagementVO.getValueCalculation() == 2) {
-                yearOnYearList = baseMapper.monthMaxDataList(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
-            } else if (dataManagementVO.getValueCalculation() == 3) {
-                yearOnYearList = baseMapper.monthMinDataList(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
-            } else if (dataManagementVO.getValueCalculation() == 4) {
-                yearOnYearList = baseMapper.monthSumDataList(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
+        } else if (dataManagementOneVO.getType() == 2) {
+            if (dataManagementOneVO.getValueCalculation() == 1) {
+                yearOnYearList = baseMapper.yearOnYearTwo(newList, dataManagementOneVO.getStartTime(), dataManagementOneVO.getEndTime());
+            } else if (dataManagementOneVO.getValueCalculation() == 2) {
+                yearOnYearList = baseMapper.monthMaxDataList(newList, dataManagementOneVO.getStartTime(), dataManagementOneVO.getEndTime());
+            } else if (dataManagementOneVO.getValueCalculation() == 3) {
+                yearOnYearList = baseMapper.monthMinDataList(newList, dataManagementOneVO.getStartTime(), dataManagementOneVO.getEndTime());
+            } else if (dataManagementOneVO.getValueCalculation() == 4) {
+                yearOnYearList = baseMapper.monthSumDataList(newList, dataManagementOneVO.getStartTime(), dataManagementOneVO.getEndTime());
             }
         } else {
-            yearOnYearList = baseMapper.yearOnYearThree(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
-        }
-        String[] arr = dataManagementVO.getDisplayField().split(",");
-        List<Object> BusotList = new ArrayList<>();
-        List<Object> COSList = new ArrayList<>();
-        List<Object> COSaList = new ArrayList<>();
-        List<Object> COSbList = new ArrayList<>();
-        List<Object> COScList = new ArrayList<>();
-        List<Object> DemandList = new ArrayList<>();
-        List<Object> DevResetTimesList = new ArrayList<>();
-        List<Object> DeviceTempList = new ArrayList<>();
-        List<Object> EpnList = new ArrayList<>();
-        List<Object> Epn1List = new ArrayList<>();
-        List<Object> Epn2List = new ArrayList<>();
-        List<Object> Epn3List = new ArrayList<>();
-        List<Object> Epn4List = new ArrayList<>();
-        List<Object> EppList = new ArrayList<>();
-        List<Object> Epp1List = new ArrayList<>();
-        List<Object> Epp2List = new ArrayList<>();
-        List<Object> Epp3List = new ArrayList<>();
-        List<Object> Epp4List = new ArrayList<>();
-        List<Object> EqnList = new ArrayList<>();
-        List<Object> EqpList = new ArrayList<>();
-        List<Object> FList = new ArrayList<>();
-        List<Object> I0List = new ArrayList<>();
-        List<Object> I2List = new ArrayList<>();
-        List<Object> IHaList = new ArrayList<>();
-        List<Object> IHbList = new ArrayList<>();
-        List<Object> IHcList = new ArrayList<>();
-        List<Object> IaList = new ArrayList<>();
-        List<Object> IbList = new ArrayList<>();
-        List<Object> IcList = new ArrayList<>();
-        List<Object> IrList = new ArrayList<>();
-        List<Object> LastDayMDList = new ArrayList<>();
-        List<Object> LastDayMDtList = new ArrayList<>();
-        List<Object> PList = new ArrayList<>();
-        List<Object> PaList = new ArrayList<>();
-        List<Object> PbList = new ArrayList<>();
-        List<Object> PcList = new ArrayList<>();
-        List<Object> QList = new ArrayList<>();
-        List<Object> QaList = new ArrayList<>();
-        List<Object> QbList = new ArrayList<>();
-        List<Object> QcList = new ArrayList<>();
-        List<Object> SignalIntensityList = new ArrayList<>();
-        List<Object> T1List = new ArrayList<>();
-        List<Object> T2List = new ArrayList<>();
-        List<Object> T3List = new ArrayList<>();
-        List<Object> T4List = new ArrayList<>();
-        List<Object> THDUaList = new ArrayList<>();
-        List<Object> THDUbList = new ArrayList<>();
-        List<Object> THDUcList = new ArrayList<>();
-        List<Object> UaList = new ArrayList<>();
-        List<Object> UabList = new ArrayList<>();
-        List<Object> UbList = new ArrayList<>();
-        List<Object> UbcList = new ArrayList<>();
-        List<Object> UblU0List = new ArrayList<>();
-        List<Object> UblU2List = new ArrayList<>();
-        List<Object> UcList = new ArrayList<>();
-        List<Object> UcaList = new ArrayList<>();
-        List<Object> UdtList = new ArrayList<>();
-        List<Object> UlList = new ArrayList<>();
-        List<Object> UptList = new ArrayList<>();
-        List<Object> freezingTimesList = new ArrayList<>();
-        List<Object> UstList = new ArrayList<>();
+            yearOnYearList = baseMapper.yearOnYearThree(newList, dataManagementOneVO.getStartTime(), dataManagementOneVO.getEndTime());
+        }
+        List<Map<String,Object>> returnList = new ArrayList<>();
+        for (HtAnalogDataVo htAnalogDataVo:yearOnYearList) {
+            Field[] fields = htAnalogDataVo.getClass().getDeclaredFields();
+            Map<String,Object> map = new HashMap<>();
+            for (String  fiied:list) {
+                for (int i = 0; i < fields.length; i++) {
+                    fields[i].setAccessible(true);
+                    if (fiied.equals(fields[i].getName())){
+                        try {
+                            if (fiied.equals("dataTime")){
+                                map.put(fiied,fields[i].get(htAnalogDataVo));
+                            }else {
+                                map.put(htAnalogDataVo.getDeviceName()+"_"+fiied,fields[i].get(htAnalogDataVo));
+                            }
+                        }catch (Exception e){
 
-        if (yearOnYearList.size() > 0) {
-            for (int i = 0; i < yearOnYearList.size(); i++) {
-                freezingTimesList.add(yearOnYearList.get(i).getFreezingTimes());
-                if (Arrays.asList(arr).contains("Busot")) {
-                    BusotList.add(yearOnYearList.get(i).getBusot());
-                }
-                if (Arrays.asList(arr).contains("Ust")) {
-                    UstList.add(yearOnYearList.get(i).getUst());
-                }
-                if (Arrays.asList(arr).contains("Upt")) {
-                    UptList.add(yearOnYearList.get(i).getUpt());
-                }
-                if (Arrays.asList(arr).contains("Ul")) {
-                    UlList.add(yearOnYearList.get(i).getUl());
-                }
-                if (Arrays.asList(arr).contains("Udt")) {
-                    UdtList.add(yearOnYearList.get(i).getUdt());
-                }
-                if (Arrays.asList(arr).contains("Uca")) {
-                    UcaList.add(yearOnYearList.get(i).getUca());
-                }
-                if (Arrays.asList(arr).contains("Uc")) {
-                    UcList.add(yearOnYearList.get(i).getUc());
-                }
-                if (Arrays.asList(arr).contains("UblU2")) {
-                    UblU2List.add(yearOnYearList.get(i).getUblU2());
-                }
-                if (Arrays.asList(arr).contains("UblU0")) {
-                    UblU0List.add(yearOnYearList.get(i).getUblU0());
-                }
-                if (Arrays.asList(arr).contains("Ubc")) {
-                    UbcList.add(yearOnYearList.get(i).getUbc());
-                }
-                if (Arrays.asList(arr).contains("Ub")) {
-                    UbList.add(yearOnYearList.get(i).getUb());
-                }
-                if (Arrays.asList(arr).contains("Uab")) {
-                    UabList.add(yearOnYearList.get(i).getUab());
-                }
-                if (Arrays.asList(arr).contains("Ua")) {
-                    UaList.add(yearOnYearList.get(i).getUa());
-                }
-                if (Arrays.asList(arr).contains("THDUc")) {
-                    THDUcList.add(yearOnYearList.get(i).getTHDUc());
-                }
-                if (Arrays.asList(arr).contains("THDUb")) {
-                    THDUbList.add(yearOnYearList.get(i).getTHDUb());
-                }
-                if (Arrays.asList(arr).contains("THDUa")) {
-                    THDUaList.add(yearOnYearList.get(i).getTHDUa());
-                }
-                if (Arrays.asList(arr).contains("T4")) {
-                    T4List.add(yearOnYearList.get(i).getT4());
-                }
-                if (Arrays.asList(arr).contains("T3")) {
-                    T3List.add(yearOnYearList.get(i).getT3());
-                }
-                if (Arrays.asList(arr).contains("T2")) {
-                    T2List.add(yearOnYearList.get(i).getT2());
-                }
-                if (Arrays.asList(arr).contains("T1")) {
-                    T1List.add(yearOnYearList.get(i).getT1());
-                }
-                if (Arrays.asList(arr).contains("SignalIntensity")) {
-                    SignalIntensityList.add(yearOnYearList.get(i).getSignalIntensity());
-                }
-                if (Arrays.asList(arr).contains("Qc")) {
-                    QcList.add(yearOnYearList.get(i).getQc());
-                }
-                if (Arrays.asList(arr).contains("Qb")) {
-                    QbList.add(yearOnYearList.get(i).getQb());
-                }
-                if (Arrays.asList(arr).contains("Qa")) {
-                    QaList.add(yearOnYearList.get(i).getQa());
-                }
-                if (Arrays.asList(arr).contains("Q")) {
-                    QList.add(yearOnYearList.get(i).getQ());
-                }
-                if (Arrays.asList(arr).contains("Pc")) {
-                    PcList.add(yearOnYearList.get(i).getPc());
-                }
-                if (Arrays.asList(arr).contains("Pb")) {
-                    PbList.add(yearOnYearList.get(i).getPb());
-                }
-                if (Arrays.asList(arr).contains("Pa")) {
-                    PaList.add(yearOnYearList.get(i).getPa());
-                }
-                if (Arrays.asList(arr).contains("P")) {
-                    PList.add(yearOnYearList.get(i).getP());
-                }
-                if (Arrays.asList(arr).contains("LastDayMDt")) {
-                    LastDayMDtList.add(yearOnYearList.get(i).getLastDayMDt());
-                }
-                if (Arrays.asList(arr).contains("LastDayMD")) {
-                    LastDayMDList.add(yearOnYearList.get(i).getLastDayMD());
-                }
-                if (Arrays.asList(arr).contains("Ir")) {
-                    IrList.add(yearOnYearList.get(i).getIr());
-                }
-                if (Arrays.asList(arr).contains("Ic")) {
-                    IcList.add(yearOnYearList.get(i).getIc());
-                }
-                if (Arrays.asList(arr).contains("Ib")) {
-                    IbList.add(yearOnYearList.get(i).getIb());
-                }
-                if (Arrays.asList(arr).contains("Ia")) {
-                    IaList.add(yearOnYearList.get(i).getIa());
-                }
-                if (Arrays.asList(arr).contains("IHc")) {
-                    IHcList.add(yearOnYearList.get(i).getIHc());
-                }
-                if (Arrays.asList(arr).contains("IHb")) {
-                    IHbList.add(yearOnYearList.get(i).getIHb());
-                }
-                if (Arrays.asList(arr).contains("IHa")) {
-                    IHaList.add(yearOnYearList.get(i).getIHa());
+                        }
+                    }
                 }
-                if (Arrays.asList(arr).contains("I2")) {
-                    I2List.add(yearOnYearList.get(i).getI2());
-                }
-                if (Arrays.asList(arr).contains("I0")) {
-                    I0List.add(yearOnYearList.get(i).getI0());
-                }
-                if (Arrays.asList(arr).contains("F")) {
-                    FList.add(yearOnYearList.get(i).getF());
-                }
-                if (Arrays.asList(arr).contains("Eqp")) {
-                    EqpList.add(yearOnYearList.get(i).getEqp());
-                }
-                if (Arrays.asList(arr).contains("Eqn")) {
-                    EqnList.add(yearOnYearList.get(i).getEqn());
-                }
-                if (Arrays.asList(arr).contains("Epp4")) {
-                    Epp4List.add(yearOnYearList.get(i).getEpp4());
-                }
-                if (Arrays.asList(arr).contains("Epp3")) {
-                    Epp3List.add(yearOnYearList.get(i).getEpp3());
-                }
-                if (Arrays.asList(arr).contains("Epp2")) {
-                    Epp2List.add(yearOnYearList.get(i).getEpp2());
-                }
-                if (Arrays.asList(arr).contains("Epp1")) {
-                    Epp1List.add(yearOnYearList.get(i).getEpp1());
-                }
-                if (Arrays.asList(arr).contains("Epp")) {
-                    EppList.add(yearOnYearList.get(i).getEpp());
-                }
-                if (Arrays.asList(arr).contains("Epn4")) {
-                    Epn4List.add(yearOnYearList.get(i).getEpn4());
-                }
-                if (Arrays.asList(arr).contains("Epn3")) {
-                    Epn3List.add(yearOnYearList.get(i).getEpn3());
-                }
-                if (Arrays.asList(arr).contains("Epn2")) {
-                    Epn2List.add(yearOnYearList.get(i).getEpn2());
-                }
-                if (Arrays.asList(arr).contains("Epn1")) {
-                    Epn1List.add(yearOnYearList.get(i).getEpn1());
-                }
-                if (Arrays.asList(arr).contains("Epn")) {
-                    EpnList.add(yearOnYearList.get(i).getEpn());
-                }
-                if (Arrays.asList(arr).contains("DeviceTemp")) {
-                    DeviceTempList.add(yearOnYearList.get(i).getDeviceTemp());
-                }
-                if (Arrays.asList(arr).contains("DevResetTimes")) {
-                    DevResetTimesList.add(yearOnYearList.get(i).getDevResetTimes());
-                }
-                if (Arrays.asList(arr).contains("Demand")) {
-                    DemandList.add(yearOnYearList.get(i).getDemand());
-                }
-                if (Arrays.asList(arr).contains("COSc")) {
-                    COScList.add(yearOnYearList.get(i).getCOSc());
-                }
-                if (Arrays.asList(arr).contains("COSb")) {
-                    COSbList.add(yearOnYearList.get(i).getCOSb());
-                }
-                if (Arrays.asList(arr).contains("COSa")) {
-                    COSaList.add(yearOnYearList.get(i).getCOSa());
-                }
-                if (Arrays.asList(arr).contains("COS")) {
-                    COSList.add(yearOnYearList.get(i).getCos());
-                }
-
             }
-
-        }
-        List<CommonIcoVO> list = new ArrayList<>();
-        if (Arrays.asList(arr).contains("Busot")) {
-            list.add(CommonIcoVO.builder().name("母线停电次数").list(BusotList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("COS")) {
-            list.add(CommonIcoVO.builder().name("三相功率因数").list(COSList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("COSa")) {
-            list.add(CommonIcoVO.builder().name("A相功率因数").list(COSaList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("COSb")) {
-            list.add(CommonIcoVO.builder().name("B相功率因数").list(COSbList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("COSc")) {
-            list.add(CommonIcoVO.builder().name("C相功率因数").list(COScList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Demand")) {
-            list.add(CommonIcoVO.builder().name("实时有功需量").list(DemandList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("DevResetTimes")) {
-            list.add(CommonIcoVO.builder().name("设备复位次数").list(DevResetTimesList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("DeviceTemp")) {
-            list.add(CommonIcoVO.builder().name("设备温度").list(DeviceTempList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Epn")) {
-            list.add(CommonIcoVO.builder().name("三相反向有功电度").list(EpnList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Epn1")) {
-            list.add(CommonIcoVO.builder().name("尖段反向有功电度").list(Epn1List).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Epn2")) {
-            list.add(CommonIcoVO.builder().name("峰段反向有功电度").list(Epn2List).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Epn3")) {
-            list.add(CommonIcoVO.builder().name("平段反向有功电度").list(Epn3List).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Epn4")) {
-            list.add(CommonIcoVO.builder().name("谷段反向有功电度").list(Epn4List).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Epp")) {
-            list.add(CommonIcoVO.builder().name("三相正向有功电度").list(EppList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Epp1")) {
-            list.add(CommonIcoVO.builder().name("尖段正向有功电度").list(Epp1List).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Epp2")) {
-            list.add(CommonIcoVO.builder().name("峰段正向有功电度").list(Epp2List).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Epp3")) {
-            list.add(CommonIcoVO.builder().name("平段正向有功电度").list(Epp3List).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Epp4")) {
-            list.add(CommonIcoVO.builder().name("谷段正向有功电度").list(Epp4List).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Eqn")) {
-            list.add(CommonIcoVO.builder().name("三相反向无功电度").list(EqnList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Eqp")) {
-            list.add(CommonIcoVO.builder().name("三相正向无功电度").list(EqpList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("F")) {
-            list.add(CommonIcoVO.builder().name("频率").list(FList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("I0")) {
-            list.add(CommonIcoVO.builder().name("零序电流").list(I0List).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("I2")) {
-            list.add(CommonIcoVO.builder().name("负序电流").list(I2List).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("IHa")) {
-            list.add(CommonIcoVO.builder().name("A相总谐波电流").list(IHaList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("IHb")) {
-            list.add(CommonIcoVO.builder().name("B相总谐波电流").list(IHbList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("IHc")) {
-            list.add(CommonIcoVO.builder().name("C相总谐波电流").list(IHcList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Ia")) {
-            list.add(CommonIcoVO.builder().name("A相电流").list(IaList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Ib")) {
-            list.add(CommonIcoVO.builder().name("B相电流").list(IbList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Ic")) {
-            list.add(CommonIcoVO.builder().name("C相电流").list(IcList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Ir")) {
-            list.add(CommonIcoVO.builder().name("剩余电流").list(IrList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("LastDayMD")) {
-            list.add(CommonIcoVO.builder().name("昨日有功最大需量").list(LastDayMDList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("LastDayMDt")) {
-            list.add(CommonIcoVO.builder().name("昨日有功最大需量发生时间").list(LastDayMDtList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("P")) {
-            list.add(CommonIcoVO.builder().name("三相总有功功率").list(PList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Pa")) {
-            list.add(CommonIcoVO.builder().name("A相有功功率").list(PaList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Pb")) {
-            list.add(CommonIcoVO.builder().name("B相有功功率").list(PbList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Pc")) {
-            list.add(CommonIcoVO.builder().name("C相有功功率").list(PcList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Q")) {
-            list.add(CommonIcoVO.builder().name("三相总无功功率").list(QList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Qa")) {
-            list.add(CommonIcoVO.builder().name("A相无功功率").list(QaList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Qb")) {
-            list.add(CommonIcoVO.builder().name("B相无功功率").list(QbList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Qc")) {
-            list.add(CommonIcoVO.builder().name("C相无功功率").list(QcList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("SignalIntensity")) {
-            list.add(CommonIcoVO.builder().name("信号强度").list(SignalIntensityList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("T1")) {
-            list.add(CommonIcoVO.builder().name("第1路温度").list(T1List).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("T2")) {
-            list.add(CommonIcoVO.builder().name("第2路温度").list(T2List).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("T3")) {
-            list.add(CommonIcoVO.builder().name("第3路温度").list(T3List).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("T4")) {
-            list.add(CommonIcoVO.builder().name("第4路温度").list(T4List).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("THDUa")) {
-            list.add(CommonIcoVO.builder().name("A相电压THD").list(THDUaList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("THDUb")) {
-            list.add(CommonIcoVO.builder().name("B相电压THD").list(THDUbList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("THDUc")) {
-            list.add(CommonIcoVO.builder().name("C相电压THD").list(THDUcList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Ua")) {
-            list.add(CommonIcoVO.builder().name("A相电压").list(UaList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Uab")) {
-            list.add(CommonIcoVO.builder().name("AB线电压").list(UabList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Ub")) {
-            list.add(CommonIcoVO.builder().name("B相电压").list(UbList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Ubc")) {
-            list.add(CommonIcoVO.builder().name("BC线电压").list(UbcList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("UblU0")) {
-            list.add(CommonIcoVO.builder().name("零序电压不平衡度").list(UblU0List).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("UblU2")) {
-            list.add(CommonIcoVO.builder().name("负序电压不平衡度").list(UblU2List).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Uc")) {
-            list.add(CommonIcoVO.builder().name("C相电压").list(UcList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Uca")) {
-            list.add(CommonIcoVO.builder().name("CA线电压").list(UcaList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Udt")) {
-            list.add(CommonIcoVO.builder().name("电压暂降次数").list(UdtList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Ul")) {
-            list.add(CommonIcoVO.builder().name("线路侧电压").list(UlList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Upt")) {
-            list.add(CommonIcoVO.builder().name("电压暂升次数").list(UptList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("freezingTime")) {
-            list.add(CommonIcoVO.builder().name("电压短时中断次数").list(freezingTimesList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Ust")) {
-            list.add(CommonIcoVO.builder().name("冻结时间").list(UstList).listDate(freezingTimesList).build());
+            Map<String,Object> deviceMap = new HashMap<>();
+            deviceMap.put("deviceName",htAnalogDataVo.getDeviceName());
+            deviceMap.put("monitorDeviceName",htAnalogDataVo.getMonitorDeviceName());
+            deviceMap.put("deviceAttributeId",htAnalogDataVo.getDeviceAttributeId());
+            deviceMap.put("data",map);
+            returnList.add(deviceMap);
+        }
+        List<CommonIcoVO> reList = new ArrayList<>();
+        Map<String, List<Map<String, Object>>> glist = returnList.stream().collect(Collectors.groupingBy(e -> e.get("deviceAttributeId").toString()));
+        for (String key:glist.keySet()) {
+            List<Object> objectList = new ArrayList<>();
+            List<Map<String, Object>> maps = glist.get(key);
+            for (Map<String,Object> map:maps) {
+                objectList.add(map.get("data"));
+            }
+            reList.add(CommonIcoVO.builder().name(key).list(objectList).listDate(objectList).build());
         }
-        return list;
+        return reList;
     }
 
 
     @Override
     public List<CommonIcoOneVO> ringRatioList(DataManagementVO dataManagementVO) {
-        SimpleDateFormat sf = null;
-        SimpleDateFormat sfOne = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-        List<HtAnalogDataVo> currentPeriodRingRatioList = null;
-        List<HtAnalogDataVo> lastPeriodRingRatioList = null;
-        List<Object> BusotList = new ArrayList<>();
-        List<Object> BusotListOne = new ArrayList<>();
-        List<Object> COSList = new ArrayList<>();
-        List<Object> COSListOne = new ArrayList<>();
-        List<Object> COSaList = new ArrayList<>();
-        List<Object> COSaListOne = new ArrayList<>();
-        List<Object> COSbList = new ArrayList<>();
-        List<Object> COSbListOne = new ArrayList<>();
-        List<Object> COScList = new ArrayList<>();
-        List<Object> COScListOne = new ArrayList<>();
-        List<Object> DemandList = new ArrayList<>();
-        List<Object> DemandListOne = new ArrayList<>();
-        List<Object> DevResetTimesList = new ArrayList<>();
-        List<Object> DevResetTimesListOne = new ArrayList<>();
-        List<Object> DeviceTempList = new ArrayList<>();
-        List<Object> DeviceTempListOne = new ArrayList<>();
-        List<Object> EpnList = new ArrayList<>();
-        List<Object> EpnListOne = new ArrayList<>();
-        List<Object> Epn1List = new ArrayList<>();
-        List<Object> Epn1ListOne = new ArrayList<>();
-        List<Object> Epn2List = new ArrayList<>();
-        List<Object> Epn2ListOne = new ArrayList<>();
-        List<Object> Epn3List = new ArrayList<>();
-        List<Object> Epn3ListOne = new ArrayList<>();
-        List<Object> Epn4List = new ArrayList<>();
-        List<Object> Epn4ListOne = new ArrayList<>();
-        List<Object> EppList = new ArrayList<>();
-        List<Object> EppListOne = new ArrayList<>();
-        List<Object> Epp1List = new ArrayList<>();
-        List<Object> Epp1ListOne = new ArrayList<>();
-        List<Object> Epp2List = new ArrayList<>();
-        List<Object> Epp2ListOne = new ArrayList<>();
-        List<Object> Epp3List = new ArrayList<>();
-        List<Object> Epp3ListOne = new ArrayList<>();
-        List<Object> Epp4List = new ArrayList<>();
-        List<Object> Epp4ListOne = new ArrayList<>();
-        List<Object> EqnList = new ArrayList<>();
-        List<Object> EqnListOne = new ArrayList<>();
-        List<Object> EqpList = new ArrayList<>();
-        List<Object> EqpListOne = new ArrayList<>();
-        List<Object> FList = new ArrayList<>();
-        List<Object> FListOne = new ArrayList<>();
-        List<Object> I0List = new ArrayList<>();
-        List<Object> I0ListOne = new ArrayList<>();
-        List<Object> I2List = new ArrayList<>();
-        List<Object> I2ListOne = new ArrayList<>();
-        List<Object> IHaList = new ArrayList<>();
-        List<Object> IHaListOne = new ArrayList<>();
-        List<Object> IHbList = new ArrayList<>();
-        List<Object> IHbListOne = new ArrayList<>();
-        List<Object> IHcList = new ArrayList<>();
-        List<Object> IHcListOne = new ArrayList<>();
-        List<Object> IaList = new ArrayList<>();
-        List<Object> IaListOne = new ArrayList<>();
-        List<Object> IbList = new ArrayList<>();
-        List<Object> IbListOne = new ArrayList<>();
-        List<Object> IcList = new ArrayList<>();
-        List<Object> IcListOne = new ArrayList<>();
-        List<Object> IrList = new ArrayList<>();
-        List<Object> IrListOne = new ArrayList<>();
-        List<Object> LastDayMDList = new ArrayList<>();
-        List<Object> LastDayMDListOne = new ArrayList<>();
-        List<Object> LastDayMDtList = new ArrayList<>();
-        List<Object> LastDayMDtListOne = new ArrayList<>();
-        List<Object> PList = new ArrayList<>();
-        List<Object> PListOne = new ArrayList<>();
-        List<Object> PaList = new ArrayList<>();
-        List<Object> PaListOne = new ArrayList<>();
-        List<Object> PbList = new ArrayList<>();
-        List<Object> PbListOne = new ArrayList<>();
-        List<Object> PcList = new ArrayList<>();
-        List<Object> PcListOne = new ArrayList<>();
-        List<Object> QList = new ArrayList<>();
-        List<Object> QListOne = new ArrayList<>();
-        List<Object> QaList = new ArrayList<>();
-        List<Object> QaListOne = new ArrayList<>();
-        List<Object> QbList = new ArrayList<>();
-        List<Object> QbListOne = new ArrayList<>();
-        List<Object> QcList = new ArrayList<>();
-        List<Object> QcListOne = new ArrayList<>();
-        List<Object> SignalIntensityList = new ArrayList<>();
-        List<Object> SignalIntensityListOne = new ArrayList<>();
-        List<Object> T1List = new ArrayList<>();
-        List<Object> T1ListOne = new ArrayList<>();
-        List<Object> T2List = new ArrayList<>();
-        List<Object> T2ListOne = new ArrayList<>();
-        List<Object> T3List = new ArrayList<>();
-        List<Object> T3ListOne = new ArrayList<>();
-        List<Object> T4List = new ArrayList<>();
-        List<Object> T4ListOne = new ArrayList<>();
-        List<Object> THDUaList = new ArrayList<>();
-        List<Object> THDUaListOne = new ArrayList<>();
-        List<Object> THDUbList = new ArrayList<>();
-        List<Object> THDUbListOne = new ArrayList<>();
-        List<Object> THDUcList = new ArrayList<>();
-        List<Object> THDUcListOne = new ArrayList<>();
-        List<Object> UaList = new ArrayList<>();
-        List<Object> UaListOne = new ArrayList<>();
-        List<Object> UabList = new ArrayList<>();
-        List<Object> UabListOne = new ArrayList<>();
-        List<Object> UbList = new ArrayList<>();
-        List<Object> UbListOne = new ArrayList<>();
-        List<Object> UbcList = new ArrayList<>();
-        List<Object> UbcListOne = new ArrayList<>();
-        List<Object> UblU0List = new ArrayList<>();
-        List<Object> UblU0ListOne = new ArrayList<>();
-        List<Object> UblU2List = new ArrayList<>();
-        List<Object> UblU2ListOne = new ArrayList<>();
-        List<Object> UcList = new ArrayList<>();
-        List<Object> UcListOne = new ArrayList<>();
-        List<Object> UcaList = new ArrayList<>();
-        List<Object> UcaListOne = new ArrayList<>();
-        List<Object> UdtList = new ArrayList<>();
-        List<Object> UdtListOne = new ArrayList<>();
-        List<Object> UlList = new ArrayList<>();
-        List<Object> UlListOne = new ArrayList<>();
-        List<Object> UptList = new ArrayList<>();
-        List<Object> UptListOne = new ArrayList<>();
-        List<Object> freezingTimesList = new ArrayList<>();
-        List<Object> freezingTimesListOne = new ArrayList<>();
-        List<Object> UstList = new ArrayList<>();
-        List<Object> UstListOne = new ArrayList<>();
-//        List<Object> bottomTimeList = new ArrayList<>();        List<Object> bottomTimeListOne = new ArrayList<>();
-        String[] arr = dataManagementVO.getDisplayField().split(",");
-        long startLong = DateUtils.toDate(DateUtils.toLocalDateTime(dataManagementVO.getStartTime(), "yyyy-MM-dd HH:mm:ss")).getTime();
-        long endLong = DateUtils.toDate(DateUtils.toLocalDateTime(dataManagementVO.getEndTime(), "yyyy-MM-dd HH:mm:ss")).getTime();
-        long interval = (endLong - startLong) / 13;
-        String lastPeriodStartTime = sfOne.format(new Date(startLong - (interval * 14)));
-        if (dataManagementVO.getType() == 1) {
-//            sf = new SimpleDateFormat("yyyy-MM-dd");
-            if (dataManagementVO.getValueCalculation() == 1) {
-                currentPeriodRingRatioList = baseMapper.yearOnYearOne(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
-                lastPeriodRingRatioList = baseMapper.yearOnYearOne(dataManagementVO.getDeviceCode(), lastPeriodStartTime, dataManagementVO.getStartTime());
-            } else if (dataManagementVO.getValueCalculation() == 2) {
-                currentPeriodRingRatioList = baseMapper.dayMaxDataList(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
-                lastPeriodRingRatioList = baseMapper.dayMaxDataList(dataManagementVO.getDeviceCode(), lastPeriodStartTime, dataManagementVO.getStartTime());
-            } else if (dataManagementVO.getValueCalculation() == 3) {
-                currentPeriodRingRatioList = baseMapper.dayMinDataList(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
-                lastPeriodRingRatioList = baseMapper.dayMinDataList(dataManagementVO.getDeviceCode(), lastPeriodStartTime, dataManagementVO.getStartTime());
-            } else if (dataManagementVO.getValueCalculation() == 4) {
-                currentPeriodRingRatioList = baseMapper.daySumDataList(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
-                lastPeriodRingRatioList = baseMapper.daySumDataList(dataManagementVO.getDeviceCode(), lastPeriodStartTime, dataManagementVO.getStartTime());
-            }
-        } else if (dataManagementVO.getType() == 2) {
-//            sf = new SimpleDateFormat("yyyy-MM");
-            if (dataManagementVO.getValueCalculation() == 1) {
-                currentPeriodRingRatioList = baseMapper.yearOnYearTwo(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
-                lastPeriodRingRatioList = baseMapper.yearOnYearTwo(dataManagementVO.getDeviceCode(), lastPeriodStartTime, dataManagementVO.getStartTime());
-            } else if (dataManagementVO.getValueCalculation() == 2) {
-                currentPeriodRingRatioList = baseMapper.monthMaxDataList(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
-                lastPeriodRingRatioList = baseMapper.monthMaxDataList(dataManagementVO.getDeviceCode(), lastPeriodStartTime, dataManagementVO.getStartTime());
-            } else if (dataManagementVO.getValueCalculation() == 3) {
-                currentPeriodRingRatioList = baseMapper.monthMinDataList(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
-                lastPeriodRingRatioList = baseMapper.monthMinDataList(dataManagementVO.getDeviceCode(), lastPeriodStartTime, dataManagementVO.getStartTime());
-            } else if (dataManagementVO.getValueCalculation() == 4) {
-                currentPeriodRingRatioList = baseMapper.monthSumDataList(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
-                lastPeriodRingRatioList = baseMapper.monthSumDataList(dataManagementVO.getDeviceCode(), lastPeriodStartTime, dataManagementVO.getStartTime());
-            }
-        } else {
-            sf = new SimpleDateFormat("MM-dd HH:mm");
-            currentPeriodRingRatioList = baseMapper.yearOnYearThree(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
-            lastPeriodRingRatioList = baseMapper.yearOnYearThree(dataManagementVO.getDeviceCode(), lastPeriodStartTime, dataManagementVO.getStartTime());
-        }
-//        for (int i = 1; i <= 14; i++) {
-//            String bottomTime = sf.format(new Date(startLong + (interval * (i - 1))))+"/"+sf.format(new Date(startLong - (interval * (14-i+1))));
-//            bottomTimeList.add(bottomTime);
+//        SimpleDateFormat sf = null;
+//        SimpleDateFormat sfOne = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+//        List<HtAnalogDataVo> currentPeriodRingRatioList = null;
+//        List<HtAnalogDataVo> lastPeriodRingRatioList = null;
+//        List<Object> BusotList = new ArrayList<>();
+//        List<Object> BusotListOne = new ArrayList<>();
+//        List<Object> COSList = new ArrayList<>();
+//        List<Object> COSListOne = new ArrayList<>();
+//        List<Object> COSaList = new ArrayList<>();
+//        List<Object> COSaListOne = new ArrayList<>();
+//        List<Object> COSbList = new ArrayList<>();
+//        List<Object> COSbListOne = new ArrayList<>();
+//        List<Object> COScList = new ArrayList<>();
+//        List<Object> COScListOne = new ArrayList<>();
+//        List<Object> DemandList = new ArrayList<>();
+//        List<Object> DemandListOne = new ArrayList<>();
+//        List<Object> DevResetTimesList = new ArrayList<>();
+//        List<Object> DevResetTimesListOne = new ArrayList<>();
+//        List<Object> DeviceTempList = new ArrayList<>();
+//        List<Object> DeviceTempListOne = new ArrayList<>();
+//        List<Object> EpnList = new ArrayList<>();
+//        List<Object> EpnListOne = new ArrayList<>();
+//        List<Object> Epn1List = new ArrayList<>();
+//        List<Object> Epn1ListOne = new ArrayList<>();
+//        List<Object> Epn2List = new ArrayList<>();
+//        List<Object> Epn2ListOne = new ArrayList<>();
+//        List<Object> Epn3List = new ArrayList<>();
+//        List<Object> Epn3ListOne = new ArrayList<>();
+//        List<Object> Epn4List = new ArrayList<>();
+//        List<Object> Epn4ListOne = new ArrayList<>();
+//        List<Object> EppList = new ArrayList<>();
+//        List<Object> EppListOne = new ArrayList<>();
+//        List<Object> Epp1List = new ArrayList<>();
+//        List<Object> Epp1ListOne = new ArrayList<>();
+//        List<Object> Epp2List = new ArrayList<>();
+//        List<Object> Epp2ListOne = new ArrayList<>();
+//        List<Object> Epp3List = new ArrayList<>();
+//        List<Object> Epp3ListOne = new ArrayList<>();
+//        List<Object> Epp4List = new ArrayList<>();
+//        List<Object> Epp4ListOne = new ArrayList<>();
+//        List<Object> EqnList = new ArrayList<>();
+//        List<Object> EqnListOne = new ArrayList<>();
+//        List<Object> EqpList = new ArrayList<>();
+//        List<Object> EqpListOne = new ArrayList<>();
+//        List<Object> FList = new ArrayList<>();
+//        List<Object> FListOne = new ArrayList<>();
+//        List<Object> I0List = new ArrayList<>();
+//        List<Object> I0ListOne = new ArrayList<>();
+//        List<Object> I2List = new ArrayList<>();
+//        List<Object> I2ListOne = new ArrayList<>();
+//        List<Object> IHaList = new ArrayList<>();
+//        List<Object> IHaListOne = new ArrayList<>();
+//        List<Object> IHbList = new ArrayList<>();
+//        List<Object> IHbListOne = new ArrayList<>();
+//        List<Object> IHcList = new ArrayList<>();
+//        List<Object> IHcListOne = new ArrayList<>();
+//        List<Object> IaList = new ArrayList<>();
+//        List<Object> IaListOne = new ArrayList<>();
+//        List<Object> IbList = new ArrayList<>();
+//        List<Object> IbListOne = new ArrayList<>();
+//        List<Object> IcList = new ArrayList<>();
+//        List<Object> IcListOne = new ArrayList<>();
+//        List<Object> IrList = new ArrayList<>();
+//        List<Object> IrListOne = new ArrayList<>();
+//        List<Object> LastDayMDList = new ArrayList<>();
+//        List<Object> LastDayMDListOne = new ArrayList<>();
+//        List<Object> LastDayMDtList = new ArrayList<>();
+//        List<Object> LastDayMDtListOne = new ArrayList<>();
+//        List<Object> PList = new ArrayList<>();
+//        List<Object> PListOne = new ArrayList<>();
+//        List<Object> PaList = new ArrayList<>();
+//        List<Object> PaListOne = new ArrayList<>();
+//        List<Object> PbList = new ArrayList<>();
+//        List<Object> PbListOne = new ArrayList<>();
+//        List<Object> PcList = new ArrayList<>();
+//        List<Object> PcListOne = new ArrayList<>();
+//        List<Object> QList = new ArrayList<>();
+//        List<Object> QListOne = new ArrayList<>();
+//        List<Object> QaList = new ArrayList<>();
+//        List<Object> QaListOne = new ArrayList<>();
+//        List<Object> QbList = new ArrayList<>();
+//        List<Object> QbListOne = new ArrayList<>();
+//        List<Object> QcList = new ArrayList<>();
+//        List<Object> QcListOne = new ArrayList<>();
+//        List<Object> SignalIntensityList = new ArrayList<>();
+//        List<Object> SignalIntensityListOne = new ArrayList<>();
+//        List<Object> T1List = new ArrayList<>();
+//        List<Object> T1ListOne = new ArrayList<>();
+//        List<Object> T2List = new ArrayList<>();
+//        List<Object> T2ListOne = new ArrayList<>();
+//        List<Object> T3List = new ArrayList<>();
+//        List<Object> T3ListOne = new ArrayList<>();
+//        List<Object> T4List = new ArrayList<>();
+//        List<Object> T4ListOne = new ArrayList<>();
+//        List<Object> THDUaList = new ArrayList<>();
+//        List<Object> THDUaListOne = new ArrayList<>();
+//        List<Object> THDUbList = new ArrayList<>();
+//        List<Object> THDUbListOne = new ArrayList<>();
+//        List<Object> THDUcList = new ArrayList<>();
+//        List<Object> THDUcListOne = new ArrayList<>();
+//        List<Object> UaList = new ArrayList<>();
+//        List<Object> UaListOne = new ArrayList<>();
+//        List<Object> UabList = new ArrayList<>();
+//        List<Object> UabListOne = new ArrayList<>();
+//        List<Object> UbList = new ArrayList<>();
+//        List<Object> UbListOne = new ArrayList<>();
+//        List<Object> UbcList = new ArrayList<>();
+//        List<Object> UbcListOne = new ArrayList<>();
+//        List<Object> UblU0List = new ArrayList<>();
+//        List<Object> UblU0ListOne = new ArrayList<>();
+//        List<Object> UblU2List = new ArrayList<>();
+//        List<Object> UblU2ListOne = new ArrayList<>();
+//        List<Object> UcList = new ArrayList<>();
+//        List<Object> UcListOne = new ArrayList<>();
+//        List<Object> UcaList = new ArrayList<>();
+//        List<Object> UcaListOne = new ArrayList<>();
+//        List<Object> UdtList = new ArrayList<>();
+//        List<Object> UdtListOne = new ArrayList<>();
+//        List<Object> UlList = new ArrayList<>();
+//        List<Object> UlListOne = new ArrayList<>();
+//        List<Object> UptList = new ArrayList<>();
+//        List<Object> UptListOne = new ArrayList<>();
+//        List<Object> freezingTimesList = new ArrayList<>();
+//        List<Object> freezingTimesListOne = new ArrayList<>();
+//        List<Object> UstList = new ArrayList<>();
+//        List<Object> UstListOne = new ArrayList<>();
+////        List<Object> bottomTimeList = new ArrayList<>();        List<Object> bottomTimeListOne = new ArrayList<>();
+//        String[] arr = dataManagementVO.getDisplayField().split(",");
+//        long startLong = DateUtils.toDate(DateUtils.toLocalDateTime(dataManagementVO.getStartTime(), "yyyy-MM-dd HH:mm:ss")).getTime();
+//        long endLong = DateUtils.toDate(DateUtils.toLocalDateTime(dataManagementVO.getEndTime(), "yyyy-MM-dd HH:mm:ss")).getTime();
+//        long interval = (endLong - startLong) / 13;
+//        String lastPeriodStartTime = sfOne.format(new Date(startLong - (interval * 14)));
+//        if (dataManagementVO.getType() == 1) {
+////            sf = new SimpleDateFormat("yyyy-MM-dd");
+//            if (dataManagementVO.getValueCalculation() == 1) {
+//                currentPeriodRingRatioList = baseMapper.yearOnYearOne(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
+//                lastPeriodRingRatioList = baseMapper.yearOnYearOne(dataManagementVO.getDeviceCode(), lastPeriodStartTime, dataManagementVO.getStartTime());
+//            } else if (dataManagementVO.getValueCalculation() == 2) {
+//                currentPeriodRingRatioList = baseMapper.dayMaxDataList(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
+//                lastPeriodRingRatioList = baseMapper.dayMaxDataList(dataManagementVO.getDeviceCode(), lastPeriodStartTime, dataManagementVO.getStartTime());
+//            } else if (dataManagementVO.getValueCalculation() == 3) {
+//                currentPeriodRingRatioList = baseMapper.dayMinDataList(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
+//                lastPeriodRingRatioList = baseMapper.dayMinDataList(dataManagementVO.getDeviceCode(), lastPeriodStartTime, dataManagementVO.getStartTime());
+//            } else if (dataManagementVO.getValueCalculation() == 4) {
+//                currentPeriodRingRatioList = baseMapper.daySumDataList(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
+//                lastPeriodRingRatioList = baseMapper.daySumDataList(dataManagementVO.getDeviceCode(), lastPeriodStartTime, dataManagementVO.getStartTime());
+//            }
+//        } else if (dataManagementVO.getType() == 2) {
+////            sf = new SimpleDateFormat("yyyy-MM");
+//            if (dataManagementVO.getValueCalculation() == 1) {
+//                currentPeriodRingRatioList = baseMapper.yearOnYearTwo(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
+//                lastPeriodRingRatioList = baseMapper.yearOnYearTwo(dataManagementVO.getDeviceCode(), lastPeriodStartTime, dataManagementVO.getStartTime());
+//            } else if (dataManagementVO.getValueCalculation() == 2) {
+//                currentPeriodRingRatioList = baseMapper.monthMaxDataList(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
+//                lastPeriodRingRatioList = baseMapper.monthMaxDataList(dataManagementVO.getDeviceCode(), lastPeriodStartTime, dataManagementVO.getStartTime());
+//            } else if (dataManagementVO.getValueCalculation() == 3) {
+//                currentPeriodRingRatioList = baseMapper.monthMinDataList(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
+//                lastPeriodRingRatioList = baseMapper.monthMinDataList(dataManagementVO.getDeviceCode(), lastPeriodStartTime, dataManagementVO.getStartTime());
+//            } else if (dataManagementVO.getValueCalculation() == 4) {
+//                currentPeriodRingRatioList = baseMapper.monthSumDataList(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
+//                lastPeriodRingRatioList = baseMapper.monthSumDataList(dataManagementVO.getDeviceCode(), lastPeriodStartTime, dataManagementVO.getStartTime());
+//            }
+//        } else {
+//            sf = new SimpleDateFormat("MM-dd HH:mm");
+//            currentPeriodRingRatioList = baseMapper.yearOnYearThree(dataManagementVO.getDeviceCode(), dataManagementVO.getStartTime(), dataManagementVO.getEndTime());
+//            lastPeriodRingRatioList = baseMapper.yearOnYearThree(dataManagementVO.getDeviceCode(), lastPeriodStartTime, dataManagementVO.getStartTime());
 //        }
-
-        if (currentPeriodRingRatioList.size() > 0) {
-            for (int i = 0; i < currentPeriodRingRatioList.size(); i++) {
-                freezingTimesList.add(currentPeriodRingRatioList.get(i).getFreezingTimes() + "/" + lastPeriodRingRatioList.get(i).getFreezingTimes());
-                if (Arrays.asList(arr).contains("Busot")) {
-                    BusotList.add(currentPeriodRingRatioList.get(i).getBusot());
-                    BusotListOne.add(lastPeriodRingRatioList.get(i).getBusot());
-                }
-                if (Arrays.asList(arr).contains("Ust")) {
-                    UstList.add(currentPeriodRingRatioList.get(i).getUst());
-                    UstListOne.add(lastPeriodRingRatioList.get(i).getUst());
-                }
-                if (Arrays.asList(arr).contains("Upt")) {
-                    UptList.add(currentPeriodRingRatioList.get(i).getUpt());
-                    UptListOne.add(lastPeriodRingRatioList.get(i).getUpt());
-                }
-                if (Arrays.asList(arr).contains("Ul")) {
-                    UlList.add(currentPeriodRingRatioList.get(i).getUl());
-                    UlListOne.add(lastPeriodRingRatioList.get(i).getUl());
-                }
-                if (Arrays.asList(arr).contains("Udt")) {
-                    UdtList.add(currentPeriodRingRatioList.get(i).getUdt());
-                    UdtListOne.add(lastPeriodRingRatioList.get(i).getUdt());
-                }
-                if (Arrays.asList(arr).contains("Uca")) {
-                    UcaList.add(currentPeriodRingRatioList.get(i).getUca());
-                    UcaListOne.add(lastPeriodRingRatioList.get(i).getUca());
-                }
-                if (Arrays.asList(arr).contains("Uc")) {
-                    UcList.add(currentPeriodRingRatioList.get(i).getUc());
-                    UcListOne.add(lastPeriodRingRatioList.get(i).getUc());
-                }
-                if (Arrays.asList(arr).contains("UblU2")) {
-                    UblU2List.add(currentPeriodRingRatioList.get(i).getUblU2());
-                    UblU2ListOne.add(lastPeriodRingRatioList.get(i).getUblU2());
-                }
-                if (Arrays.asList(arr).contains("UblU0")) {
-                    UblU0List.add(currentPeriodRingRatioList.get(i).getUblU0());
-                    UblU0ListOne.add(lastPeriodRingRatioList.get(i).getUblU0());
-                }
-                if (Arrays.asList(arr).contains("Ubc")) {
-                    UbcList.add(currentPeriodRingRatioList.get(i).getUbc());
-                    UbcListOne.add(lastPeriodRingRatioList.get(i).getUbc());
-                }
-                if (Arrays.asList(arr).contains("Ub")) {
-                    UbList.add(currentPeriodRingRatioList.get(i).getUb());
-                    UbListOne.add(lastPeriodRingRatioList.get(i).getUb());
-                }
-                if (Arrays.asList(arr).contains("Uab")) {
-                    UabList.add(currentPeriodRingRatioList.get(i).getUab());
-                    UabListOne.add(lastPeriodRingRatioList.get(i).getUab());
-                }
-                if (Arrays.asList(arr).contains("Ua")) {
-                    UaList.add(currentPeriodRingRatioList.get(i).getUa());
-                    UaListOne.add(lastPeriodRingRatioList.get(i).getUa());
-                }
-                if (Arrays.asList(arr).contains("THDUc")) {
-                    THDUcList.add(currentPeriodRingRatioList.get(i).getTHDUc());
-                    THDUcListOne.add(lastPeriodRingRatioList.get(i).getTHDUc());
-                }
-                if (Arrays.asList(arr).contains("THDUb")) {
-                    THDUbList.add(currentPeriodRingRatioList.get(i).getTHDUb());
-                    THDUbListOne.add(lastPeriodRingRatioList.get(i).getTHDUb());
-                }
-                if (Arrays.asList(arr).contains("THDUa")) {
-                    THDUaList.add(currentPeriodRingRatioList.get(i).getTHDUa());
-                    THDUaListOne.add(lastPeriodRingRatioList.get(i).getTHDUa());
-                }
-                if (Arrays.asList(arr).contains("T4")) {
-                    T4List.add(currentPeriodRingRatioList.get(i).getT4());
-                    T4ListOne.add(lastPeriodRingRatioList.get(i).getT4());
-                }
-                if (Arrays.asList(arr).contains("T3")) {
-                    T3List.add(currentPeriodRingRatioList.get(i).getT3());
-                    T3ListOne.add(lastPeriodRingRatioList.get(i).getT3());
-                }
-                if (Arrays.asList(arr).contains("T2")) {
-                    T2List.add(currentPeriodRingRatioList.get(i).getT2());
-                    T2ListOne.add(lastPeriodRingRatioList.get(i).getT2());
-                }
-                if (Arrays.asList(arr).contains("T1")) {
-                    T1List.add(currentPeriodRingRatioList.get(i).getT1());
-                    T1ListOne.add(lastPeriodRingRatioList.get(i).getT1());
-                }
-                if (Arrays.asList(arr).contains("SignalIntensity")) {
-                    SignalIntensityList.add(currentPeriodRingRatioList.get(i).getSignalIntensity());
-                    SignalIntensityListOne.add(lastPeriodRingRatioList.get(i).getSignalIntensity());
-                }
-                if (Arrays.asList(arr).contains("Qc")) {
-                    QcList.add(currentPeriodRingRatioList.get(i).getQc());
-                    QcListOne.add(lastPeriodRingRatioList.get(i).getQc());
-                }
-                if (Arrays.asList(arr).contains("Qb")) {
-                    QbList.add(currentPeriodRingRatioList.get(i).getQb());
-                    QbListOne.add(lastPeriodRingRatioList.get(i).getQb());
-                }
-                if (Arrays.asList(arr).contains("Qa")) {
-                    QaList.add(currentPeriodRingRatioList.get(i).getQa());
-                    QaListOne.add(lastPeriodRingRatioList.get(i).getQa());
-                }
-                if (Arrays.asList(arr).contains("Q")) {
-                    QList.add(currentPeriodRingRatioList.get(i).getQ());
-                    QListOne.add(lastPeriodRingRatioList.get(i).getQ());
-                }
-                if (Arrays.asList(arr).contains("Pc")) {
-                    PcList.add(currentPeriodRingRatioList.get(i).getPc());
-                    PcListOne.add(lastPeriodRingRatioList.get(i).getPc());
-                }
-                if (Arrays.asList(arr).contains("Pb")) {
-                    PbList.add(currentPeriodRingRatioList.get(i).getPb());
-                    PbListOne.add(lastPeriodRingRatioList.get(i).getPb());
-                }
-                if (Arrays.asList(arr).contains("Pa")) {
-                    PaList.add(currentPeriodRingRatioList.get(i).getPa());
-                    PaListOne.add(lastPeriodRingRatioList.get(i).getPa());
-                }
-                if (Arrays.asList(arr).contains("P")) {
-                    PList.add(currentPeriodRingRatioList.get(i).getP());
-                    PListOne.add(lastPeriodRingRatioList.get(i).getP());
-                }
-                if (Arrays.asList(arr).contains("LastDayMDt")) {
-                    LastDayMDtList.add(currentPeriodRingRatioList.get(i).getLastDayMDt());
-                    LastDayMDtListOne.add(lastPeriodRingRatioList.get(i).getLastDayMDt());
-                }
-                if (Arrays.asList(arr).contains("LastDayMD")) {
-                    LastDayMDList.add(currentPeriodRingRatioList.get(i).getLastDayMD());
-                    LastDayMDListOne.add(lastPeriodRingRatioList.get(i).getLastDayMD());
-                }
-                if (Arrays.asList(arr).contains("Ir")) {
-                    IrList.add(currentPeriodRingRatioList.get(i).getIr());
-                    IrListOne.add(lastPeriodRingRatioList.get(i).getIr());
-                }
-                if (Arrays.asList(arr).contains("Ic")) {
-                    IcList.add(currentPeriodRingRatioList.get(i).getIc());
-                    IcListOne.add(lastPeriodRingRatioList.get(i).getIc());
-                }
-                if (Arrays.asList(arr).contains("Ib")) {
-                    IbList.add(currentPeriodRingRatioList.get(i).getIb());
-                    IbListOne.add(lastPeriodRingRatioList.get(i).getIb());
-                }
-                if (Arrays.asList(arr).contains("Ia")) {
-                    IaList.add(currentPeriodRingRatioList.get(i).getIa());
-                    IaListOne.add(lastPeriodRingRatioList.get(i).getIa());
-                }
-                if (Arrays.asList(arr).contains("IHc")) {
-                    IHcList.add(currentPeriodRingRatioList.get(i).getIHc());
-                    IHcListOne.add(lastPeriodRingRatioList.get(i).getIHc());
-                }
-                if (Arrays.asList(arr).contains("IHb")) {
-                    IHbList.add(currentPeriodRingRatioList.get(i).getIHb());
-                    IHbListOne.add(lastPeriodRingRatioList.get(i).getIHb());
-                }
-                if (Arrays.asList(arr).contains("IHa")) {
-                    IHaList.add(currentPeriodRingRatioList.get(i).getIHa());
-                    IHaListOne.add(lastPeriodRingRatioList.get(i).getIHa());
-                }
-                if (Arrays.asList(arr).contains("I2")) {
-                    I2List.add(currentPeriodRingRatioList.get(i).getI2());
-                    I2ListOne.add(lastPeriodRingRatioList.get(i).getI2());
-                }
-                if (Arrays.asList(arr).contains("I0")) {
-                    I0List.add(currentPeriodRingRatioList.get(i).getI0());
-                    I0ListOne.add(lastPeriodRingRatioList.get(i).getI0());
-                }
-                if (Arrays.asList(arr).contains("F")) {
-                    FList.add(currentPeriodRingRatioList.get(i).getF());
-                    FListOne.add(lastPeriodRingRatioList.get(i).getF());
-                }
-                if (Arrays.asList(arr).contains("Eqp")) {
-                    EqpList.add(currentPeriodRingRatioList.get(i).getEqp());
-                    EqpListOne.add(lastPeriodRingRatioList.get(i).getEqp());
-                }
-                if (Arrays.asList(arr).contains("Eqn")) {
-                    EqnList.add(currentPeriodRingRatioList.get(i).getEqn());
-                    EqnListOne.add(lastPeriodRingRatioList.get(i).getEqn());
-                }
-                if (Arrays.asList(arr).contains("Epp4")) {
-                    Epp4List.add(currentPeriodRingRatioList.get(i).getEpp4());
-                    Epp4ListOne.add(lastPeriodRingRatioList.get(i).getEpp4());
-                }
-                if (Arrays.asList(arr).contains("Epp3")) {
-                    Epp3List.add(currentPeriodRingRatioList.get(i).getEpp3());
-                    Epp3ListOne.add(lastPeriodRingRatioList.get(i).getEpp3());
-                }
-                if (Arrays.asList(arr).contains("Epp2")) {
-                    Epp2List.add(currentPeriodRingRatioList.get(i).getEpp2());
-                    Epp2ListOne.add(lastPeriodRingRatioList.get(i).getEpp2());
-                }
-                if (Arrays.asList(arr).contains("Epp1")) {
-                    Epp1List.add(currentPeriodRingRatioList.get(i).getEpp1());
-                    Epp1ListOne.add(lastPeriodRingRatioList.get(i).getEpp1());
-                }
-                if (Arrays.asList(arr).contains("Epp")) {
-                    EppList.add(currentPeriodRingRatioList.get(i).getEpp());
-                    EppListOne.add(lastPeriodRingRatioList.get(i).getEpp());
-                }
-                if (Arrays.asList(arr).contains("Epn4")) {
-                    Epn4List.add(currentPeriodRingRatioList.get(i).getEpn4());
-                    Epn4ListOne.add(lastPeriodRingRatioList.get(i).getEpn4());
-                }
-                if (Arrays.asList(arr).contains("Epn3")) {
-                    Epn3List.add(currentPeriodRingRatioList.get(i).getEpn3());
-                    Epn3ListOne.add(lastPeriodRingRatioList.get(i).getEpn3());
-                }
-                if (Arrays.asList(arr).contains("Epn2")) {
-                    Epn2List.add(currentPeriodRingRatioList.get(i).getEpn2());
-                    Epn2ListOne.add(lastPeriodRingRatioList.get(i).getEpn2());
-                }
-                if (Arrays.asList(arr).contains("Epn1")) {
-                    Epn1List.add(currentPeriodRingRatioList.get(i).getEpn1());
-                    Epn1ListOne.add(lastPeriodRingRatioList.get(i).getEpn1());
-                }
-                if (Arrays.asList(arr).contains("Epn")) {
-                    EpnList.add(currentPeriodRingRatioList.get(i).getEpn());
-                    EpnListOne.add(lastPeriodRingRatioList.get(i).getEpn());
-                }
-                if (Arrays.asList(arr).contains("DeviceTemp")) {
-                    DeviceTempList.add(currentPeriodRingRatioList.get(i).getDeviceTemp());
-                    DeviceTempListOne.add(lastPeriodRingRatioList.get(i).getDeviceTemp());
-                }
-                if (Arrays.asList(arr).contains("DevResetTimes")) {
-                    DevResetTimesList.add(currentPeriodRingRatioList.get(i).getDevResetTimes());
-                    DevResetTimesListOne.add(lastPeriodRingRatioList.get(i).getDevResetTimes());
-                }
-                if (Arrays.asList(arr).contains("Demand")) {
-                    DemandList.add(currentPeriodRingRatioList.get(i).getDemand());
-                    DemandListOne.add(lastPeriodRingRatioList.get(i).getDemand());
-                }
-                if (Arrays.asList(arr).contains("COSc")) {
-                    COScList.add(currentPeriodRingRatioList.get(i).getCOSc());
-                    COScListOne.add(lastPeriodRingRatioList.get(i).getCOSc());
-                }
-                if (Arrays.asList(arr).contains("COSb")) {
-                    COSbList.add(currentPeriodRingRatioList.get(i).getCOSb());
-                    COSbListOne.add(lastPeriodRingRatioList.get(i).getCOSb());
-                }
-                if (Arrays.asList(arr).contains("COSa")) {
-                    COSaList.add(currentPeriodRingRatioList.get(i).getCOSa());
-                    COSaListOne.add(lastPeriodRingRatioList.get(i).getCOSa());
-                }
-                if (Arrays.asList(arr).contains("COS")) {
-                    COSList.add(currentPeriodRingRatioList.get(i).getCos());
-                    COSListOne.add(lastPeriodRingRatioList.get(i).getCos());
-                }
-            }
-        }
-
-        List<CommonIcoOneVO> list = new ArrayList<>();
-//        list.add(CommonIcoOneVO.builder().name("底部时间").listDate(bottomTimeList).build());
-        if (Arrays.asList(arr).contains("Busot")) {
-            list.add(CommonIcoOneVO.builder().name("母线停电次数").currentPeriodList(BusotList).lastPeriodList(BusotListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("COS")) {
-            list.add(CommonIcoOneVO.builder().name("三相功率因数").currentPeriodList(COSList).lastPeriodList(COSListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("COSa")) {
-            list.add(CommonIcoOneVO.builder().name("A相功率因数").currentPeriodList(COSaList).lastPeriodList(COSaListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("COSb")) {
-            list.add(CommonIcoOneVO.builder().name("B相功率因数").currentPeriodList(COSbList).lastPeriodList(COSbListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("COSc")) {
-            list.add(CommonIcoOneVO.builder().name("C相功率因数").currentPeriodList(COScList).lastPeriodList(COScListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Demand")) {
-            list.add(CommonIcoOneVO.builder().name("实时有功需量").currentPeriodList(DemandList).lastPeriodList(DemandListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("DevResetTimes")) {
-            list.add(CommonIcoOneVO.builder().name("设备复位次数").currentPeriodList(DevResetTimesList).lastPeriodList(DevResetTimesListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("DeviceTemp")) {
-            list.add(CommonIcoOneVO.builder().name("设备温度").currentPeriodList(DeviceTempList).lastPeriodList(DeviceTempListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Epn")) {
-            list.add(CommonIcoOneVO.builder().name("三相反向有功电度").currentPeriodList(EpnList).lastPeriodList(EpnListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Epn1")) {
-            list.add(CommonIcoOneVO.builder().name("尖段反向有功电度").currentPeriodList(Epn1List).lastPeriodList(Epn1ListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Epn2")) {
-            list.add(CommonIcoOneVO.builder().name("峰段反向有功电度").currentPeriodList(Epn2List).lastPeriodList(Epn2ListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Epn3")) {
-            list.add(CommonIcoOneVO.builder().name("平段反向有功电度").currentPeriodList(Epn3List).lastPeriodList(Epn3ListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Epn4")) {
-            list.add(CommonIcoOneVO.builder().name("谷段反向有功电度").currentPeriodList(Epn4List).lastPeriodList(Epn4ListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Epp")) {
-            list.add(CommonIcoOneVO.builder().name("三相正向有功电度").currentPeriodList(EppList).lastPeriodList(EppListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Epp1")) {
-            list.add(CommonIcoOneVO.builder().name("尖段正向有功电度").currentPeriodList(Epp1List).lastPeriodList(Epp1ListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Epp2")) {
-            list.add(CommonIcoOneVO.builder().name("峰段正向有功电度").currentPeriodList(Epp2List).lastPeriodList(Epp2ListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Epp3")) {
-            list.add(CommonIcoOneVO.builder().name("平段正向有功电度").currentPeriodList(Epp3List).lastPeriodList(Epp3ListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Epp4")) {
-            list.add(CommonIcoOneVO.builder().name("谷段正向有功电度").currentPeriodList(Epp4List).lastPeriodList(Epp4ListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Eqn")) {
-            list.add(CommonIcoOneVO.builder().name("三相反向无功电度").currentPeriodList(EqnList).lastPeriodList(EqnListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Eqp")) {
-            list.add(CommonIcoOneVO.builder().name("三相正向无功电度").currentPeriodList(EqpList).lastPeriodList(EqpListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("F")) {
-            list.add(CommonIcoOneVO.builder().name("频率").currentPeriodList(FList).lastPeriodList(FListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("I0")) {
-            list.add(CommonIcoOneVO.builder().name("零序电流").currentPeriodList(I0List).lastPeriodList(I0ListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("I2")) {
-            list.add(CommonIcoOneVO.builder().name("负序电流").currentPeriodList(I2List).lastPeriodList(I2ListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("IHa")) {
-            list.add(CommonIcoOneVO.builder().name("A相总谐波电流").currentPeriodList(IHaList).lastPeriodList(IHaListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("IHb")) {
-            list.add(CommonIcoOneVO.builder().name("B相总谐波电流").currentPeriodList(IHbList).lastPeriodList(IHbListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("IHc")) {
-            list.add(CommonIcoOneVO.builder().name("C相总谐波电流").currentPeriodList(IHcList).lastPeriodList(IHcListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Ia")) {
-            list.add(CommonIcoOneVO.builder().name("A相电流").currentPeriodList(IaList).lastPeriodList(IaList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Ib")) {
-            list.add(CommonIcoOneVO.builder().name("B相电流").currentPeriodList(IbList).lastPeriodList(IbListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Ic")) {
-            list.add(CommonIcoOneVO.builder().name("C相电流").currentPeriodList(IcList).lastPeriodList(IcListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Ir")) {
-            list.add(CommonIcoOneVO.builder().name("剩余电流").currentPeriodList(IrList).lastPeriodList(IrListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("LastDayMD")) {
-            list.add(CommonIcoOneVO.builder().name("昨日有功最大需量").currentPeriodList(LastDayMDList).lastPeriodList(LastDayMDListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("LastDayMDt")) {
-            list.add(CommonIcoOneVO.builder().name("昨日有功最大需量发生时间").currentPeriodList(LastDayMDtList).lastPeriodList(LastDayMDtListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("P")) {
-            list.add(CommonIcoOneVO.builder().name("三相总有功功率").currentPeriodList(PList).lastPeriodList(PList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Pa")) {
-            list.add(CommonIcoOneVO.builder().name("A相有功功率").currentPeriodList(PaList).lastPeriodList(PaListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Pb")) {
-            list.add(CommonIcoOneVO.builder().name("B相有功功率").currentPeriodList(PbList).lastPeriodList(PbList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Pc")) {
-            list.add(CommonIcoOneVO.builder().name("C相有功功率").currentPeriodList(PcList).lastPeriodList(PcList).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Q")) {
-            list.add(CommonIcoOneVO.builder().name("三相总无功功率").currentPeriodList(QList).lastPeriodList(QListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Qa")) {
-            list.add(CommonIcoOneVO.builder().name("A相无功功率").currentPeriodList(QaList).lastPeriodList(QaListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Qb")) {
-            list.add(CommonIcoOneVO.builder().name("B相无功功率").currentPeriodList(QbList).lastPeriodList(QbListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Qc")) {
-            list.add(CommonIcoOneVO.builder().name("C相无功功率").currentPeriodList(QcList).lastPeriodList(QcListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("SignalIntensity")) {
-            list.add(CommonIcoOneVO.builder().name("信号强度").currentPeriodList(SignalIntensityList).lastPeriodList(SignalIntensityListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("T1")) {
-            list.add(CommonIcoOneVO.builder().name("第1路温度").currentPeriodList(T1List).lastPeriodList(T1ListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("T2")) {
-            list.add(CommonIcoOneVO.builder().name("第2路温度").currentPeriodList(T2List).lastPeriodList(T2ListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("T3")) {
-            list.add(CommonIcoOneVO.builder().name("第3路温度").currentPeriodList(T3List).lastPeriodList(T3ListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("T4")) {
-            list.add(CommonIcoOneVO.builder().name("第4路温度").currentPeriodList(T4List).lastPeriodList(T4ListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("THDUa")) {
-            list.add(CommonIcoOneVO.builder().name("A相电压THD").currentPeriodList(THDUaList).lastPeriodList(THDUaListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("THDUb")) {
-            list.add(CommonIcoOneVO.builder().name("B相电压THD").currentPeriodList(THDUbList).lastPeriodList(THDUbListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("THDUc")) {
-            list.add(CommonIcoOneVO.builder().name("C相电压THD").currentPeriodList(THDUcList).lastPeriodList(THDUcListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Ua")) {
-            list.add(CommonIcoOneVO.builder().name("A相电压").currentPeriodList(UaList).lastPeriodList(UaListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Uab")) {
-            list.add(CommonIcoOneVO.builder().name("AB线电压").currentPeriodList(UabList).lastPeriodList(UabListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Ub")) {
-            list.add(CommonIcoOneVO.builder().name("B相电压").currentPeriodList(UbList).lastPeriodList(UbListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Ubc")) {
-            list.add(CommonIcoOneVO.builder().name("BC线电压").currentPeriodList(UbcList).lastPeriodList(UbcListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("UblU0")) {
-            list.add(CommonIcoOneVO.builder().name("零序电压不平衡度").currentPeriodList(UblU0List).lastPeriodList(UblU0ListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("UblU2")) {
-            list.add(CommonIcoOneVO.builder().name("负序电压不平衡度").currentPeriodList(UblU2List).lastPeriodList(UblU2ListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Uc")) {
-            list.add(CommonIcoOneVO.builder().name("C相电压").currentPeriodList(UcList).lastPeriodList(UcListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Uca")) {
-            list.add(CommonIcoOneVO.builder().name("CA线电压").currentPeriodList(UcaList).lastPeriodList(UcaListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Udt")) {
-            list.add(CommonIcoOneVO.builder().name("电压暂降次数").currentPeriodList(UdtList).lastPeriodList(UdtListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Ul")) {
-            list.add(CommonIcoOneVO.builder().name("线路侧电压").currentPeriodList(UlList).lastPeriodList(UlListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Upt")) {
-            list.add(CommonIcoOneVO.builder().name("电压暂升次数").currentPeriodList(UptList).lastPeriodList(UptListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("freezingTime")) {
-            list.add(CommonIcoOneVO.builder().name("电压短时中断次数").currentPeriodList(freezingTimesList).lastPeriodList(freezingTimesListOne).listDate(freezingTimesList).build());
-        }
-        if (Arrays.asList(arr).contains("Ust")) {
-            list.add(CommonIcoOneVO.builder().name("冻结时间").currentPeriodList(UstList).lastPeriodList(UstListOne).listDate(freezingTimesList).build());
-        }
-        return list;
+////        for (int i = 1; i <= 14; i++) {
+////            String bottomTime = sf.format(new Date(startLong + (interval * (i - 1))))+"/"+sf.format(new Date(startLong - (interval * (14-i+1))));
+////            bottomTimeList.add(bottomTime);
+////        }
+//
+//        if (currentPeriodRingRatioList.size() > 0) {
+//            for (int i = 0; i < currentPeriodRingRatioList.size(); i++) {
+//                freezingTimesList.add(currentPeriodRingRatioList.get(i).getFreezingTimes() + "/" + lastPeriodRingRatioList.get(i).getFreezingTimes());
+//                if (Arrays.asList(arr).contains("Busot")) {
+//                    BusotList.add(currentPeriodRingRatioList.get(i).getBusot());
+//                    BusotListOne.add(lastPeriodRingRatioList.get(i).getBusot());
+//                }
+//                if (Arrays.asList(arr).contains("Ust")) {
+//                    UstList.add(currentPeriodRingRatioList.get(i).getUst());
+//                    UstListOne.add(lastPeriodRingRatioList.get(i).getUst());
+//                }
+//                if (Arrays.asList(arr).contains("Upt")) {
+//                    UptList.add(currentPeriodRingRatioList.get(i).getUpt());
+//                    UptListOne.add(lastPeriodRingRatioList.get(i).getUpt());
+//                }
+//                if (Arrays.asList(arr).contains("Ul")) {
+//                    UlList.add(currentPeriodRingRatioList.get(i).getUl());
+//                    UlListOne.add(lastPeriodRingRatioList.get(i).getUl());
+//                }
+//                if (Arrays.asList(arr).contains("Udt")) {
+//                    UdtList.add(currentPeriodRingRatioList.get(i).getUdt());
+//                    UdtListOne.add(lastPeriodRingRatioList.get(i).getUdt());
+//                }
+//                if (Arrays.asList(arr).contains("Uca")) {
+//                    UcaList.add(currentPeriodRingRatioList.get(i).getUca());
+//                    UcaListOne.add(lastPeriodRingRatioList.get(i).getUca());
+//                }
+//                if (Arrays.asList(arr).contains("Uc")) {
+//                    UcList.add(currentPeriodRingRatioList.get(i).getUc());
+//                    UcListOne.add(lastPeriodRingRatioList.get(i).getUc());
+//                }
+//                if (Arrays.asList(arr).contains("UblU2")) {
+//                    UblU2List.add(currentPeriodRingRatioList.get(i).getUblU2());
+//                    UblU2ListOne.add(lastPeriodRingRatioList.get(i).getUblU2());
+//                }
+//                if (Arrays.asList(arr).contains("UblU0")) {
+//                    UblU0List.add(currentPeriodRingRatioList.get(i).getUblU0());
+//                    UblU0ListOne.add(lastPeriodRingRatioList.get(i).getUblU0());
+//                }
+//                if (Arrays.asList(arr).contains("Ubc")) {
+//                    UbcList.add(currentPeriodRingRatioList.get(i).getUbc());
+//                    UbcListOne.add(lastPeriodRingRatioList.get(i).getUbc());
+//                }
+//                if (Arrays.asList(arr).contains("Ub")) {
+//                    UbList.add(currentPeriodRingRatioList.get(i).getUb());
+//                    UbListOne.add(lastPeriodRingRatioList.get(i).getUb());
+//                }
+//                if (Arrays.asList(arr).contains("Uab")) {
+//                    UabList.add(currentPeriodRingRatioList.get(i).getUab());
+//                    UabListOne.add(lastPeriodRingRatioList.get(i).getUab());
+//                }
+//                if (Arrays.asList(arr).contains("Ua")) {
+//                    UaList.add(currentPeriodRingRatioList.get(i).getUa());
+//                    UaListOne.add(lastPeriodRingRatioList.get(i).getUa());
+//                }
+//                if (Arrays.asList(arr).contains("THDUc")) {
+//                    THDUcList.add(currentPeriodRingRatioList.get(i).getTHDUc());
+//                    THDUcListOne.add(lastPeriodRingRatioList.get(i).getTHDUc());
+//                }
+//                if (Arrays.asList(arr).contains("THDUb")) {
+//                    THDUbList.add(currentPeriodRingRatioList.get(i).getTHDUb());
+//                    THDUbListOne.add(lastPeriodRingRatioList.get(i).getTHDUb());
+//                }
+//                if (Arrays.asList(arr).contains("THDUa")) {
+//                    THDUaList.add(currentPeriodRingRatioList.get(i).getTHDUa());
+//                    THDUaListOne.add(lastPeriodRingRatioList.get(i).getTHDUa());
+//                }
+//                if (Arrays.asList(arr).contains("T4")) {
+//                    T4List.add(currentPeriodRingRatioList.get(i).getT4());
+//                    T4ListOne.add(lastPeriodRingRatioList.get(i).getT4());
+//                }
+//                if (Arrays.asList(arr).contains("T3")) {
+//                    T3List.add(currentPeriodRingRatioList.get(i).getT3());
+//                    T3ListOne.add(lastPeriodRingRatioList.get(i).getT3());
+//                }
+//                if (Arrays.asList(arr).contains("T2")) {
+//                    T2List.add(currentPeriodRingRatioList.get(i).getT2());
+//                    T2ListOne.add(lastPeriodRingRatioList.get(i).getT2());
+//                }
+//                if (Arrays.asList(arr).contains("T1")) {
+//                    T1List.add(currentPeriodRingRatioList.get(i).getT1());
+//                    T1ListOne.add(lastPeriodRingRatioList.get(i).getT1());
+//                }
+//                if (Arrays.asList(arr).contains("SignalIntensity")) {
+//                    SignalIntensityList.add(currentPeriodRingRatioList.get(i).getSignalIntensity());
+//                    SignalIntensityListOne.add(lastPeriodRingRatioList.get(i).getSignalIntensity());
+//                }
+//                if (Arrays.asList(arr).contains("Qc")) {
+//                    QcList.add(currentPeriodRingRatioList.get(i).getQc());
+//                    QcListOne.add(lastPeriodRingRatioList.get(i).getQc());
+//                }
+//                if (Arrays.asList(arr).contains("Qb")) {
+//                    QbList.add(currentPeriodRingRatioList.get(i).getQb());
+//                    QbListOne.add(lastPeriodRingRatioList.get(i).getQb());
+//                }
+//                if (Arrays.asList(arr).contains("Qa")) {
+//                    QaList.add(currentPeriodRingRatioList.get(i).getQa());
+//                    QaListOne.add(lastPeriodRingRatioList.get(i).getQa());
+//                }
+//                if (Arrays.asList(arr).contains("Q")) {
+//                    QList.add(currentPeriodRingRatioList.get(i).getQ());
+//                    QListOne.add(lastPeriodRingRatioList.get(i).getQ());
+//                }
+//                if (Arrays.asList(arr).contains("Pc")) {
+//                    PcList.add(currentPeriodRingRatioList.get(i).getPc());
+//                    PcListOne.add(lastPeriodRingRatioList.get(i).getPc());
+//                }
+//                if (Arrays.asList(arr).contains("Pb")) {
+//                    PbList.add(currentPeriodRingRatioList.get(i).getPb());
+//                    PbListOne.add(lastPeriodRingRatioList.get(i).getPb());
+//                }
+//                if (Arrays.asList(arr).contains("Pa")) {
+//                    PaList.add(currentPeriodRingRatioList.get(i).getPa());
+//                    PaListOne.add(lastPeriodRingRatioList.get(i).getPa());
+//                }
+//                if (Arrays.asList(arr).contains("P")) {
+//                    PList.add(currentPeriodRingRatioList.get(i).getP());
+//                    PListOne.add(lastPeriodRingRatioList.get(i).getP());
+//                }
+//                if (Arrays.asList(arr).contains("LastDayMDt")) {
+//                    LastDayMDtList.add(currentPeriodRingRatioList.get(i).getLastDayMDt());
+//                    LastDayMDtListOne.add(lastPeriodRingRatioList.get(i).getLastDayMDt());
+//                }
+//                if (Arrays.asList(arr).contains("LastDayMD")) {
+//                    LastDayMDList.add(currentPeriodRingRatioList.get(i).getLastDayMD());
+//                    LastDayMDListOne.add(lastPeriodRingRatioList.get(i).getLastDayMD());
+//                }
+//                if (Arrays.asList(arr).contains("Ir")) {
+//                    IrList.add(currentPeriodRingRatioList.get(i).getIr());
+//                    IrListOne.add(lastPeriodRingRatioList.get(i).getIr());
+//                }
+//                if (Arrays.asList(arr).contains("Ic")) {
+//                    IcList.add(currentPeriodRingRatioList.get(i).getIc());
+//                    IcListOne.add(lastPeriodRingRatioList.get(i).getIc());
+//                }
+//                if (Arrays.asList(arr).contains("Ib")) {
+//                    IbList.add(currentPeriodRingRatioList.get(i).getIb());
+//                    IbListOne.add(lastPeriodRingRatioList.get(i).getIb());
+//                }
+//                if (Arrays.asList(arr).contains("Ia")) {
+//                    IaList.add(currentPeriodRingRatioList.get(i).getIa());
+//                    IaListOne.add(lastPeriodRingRatioList.get(i).getIa());
+//                }
+//                if (Arrays.asList(arr).contains("IHc")) {
+//                    IHcList.add(currentPeriodRingRatioList.get(i).getIHc());
+//                    IHcListOne.add(lastPeriodRingRatioList.get(i).getIHc());
+//                }
+//                if (Arrays.asList(arr).contains("IHb")) {
+//                    IHbList.add(currentPeriodRingRatioList.get(i).getIHb());
+//                    IHbListOne.add(lastPeriodRingRatioList.get(i).getIHb());
+//                }
+//                if (Arrays.asList(arr).contains("IHa")) {
+//                    IHaList.add(currentPeriodRingRatioList.get(i).getIHa());
+//                    IHaListOne.add(lastPeriodRingRatioList.get(i).getIHa());
+//                }
+//                if (Arrays.asList(arr).contains("I2")) {
+//                    I2List.add(currentPeriodRingRatioList.get(i).getI2());
+//                    I2ListOne.add(lastPeriodRingRatioList.get(i).getI2());
+//                }
+//                if (Arrays.asList(arr).contains("I0")) {
+//                    I0List.add(currentPeriodRingRatioList.get(i).getI0());
+//                    I0ListOne.add(lastPeriodRingRatioList.get(i).getI0());
+//                }
+//                if (Arrays.asList(arr).contains("F")) {
+//                    FList.add(currentPeriodRingRatioList.get(i).getF());
+//                    FListOne.add(lastPeriodRingRatioList.get(i).getF());
+//                }
+//                if (Arrays.asList(arr).contains("Eqp")) {
+//                    EqpList.add(currentPeriodRingRatioList.get(i).getEqp());
+//                    EqpListOne.add(lastPeriodRingRatioList.get(i).getEqp());
+//                }
+//                if (Arrays.asList(arr).contains("Eqn")) {
+//                    EqnList.add(currentPeriodRingRatioList.get(i).getEqn());
+//                    EqnListOne.add(lastPeriodRingRatioList.get(i).getEqn());
+//                }
+//                if (Arrays.asList(arr).contains("Epp4")) {
+//                    Epp4List.add(currentPeriodRingRatioList.get(i).getEpp4());
+//                    Epp4ListOne.add(lastPeriodRingRatioList.get(i).getEpp4());
+//                }
+//                if (Arrays.asList(arr).contains("Epp3")) {
+//                    Epp3List.add(currentPeriodRingRatioList.get(i).getEpp3());
+//                    Epp3ListOne.add(lastPeriodRingRatioList.get(i).getEpp3());
+//                }
+//                if (Arrays.asList(arr).contains("Epp2")) {
+//                    Epp2List.add(currentPeriodRingRatioList.get(i).getEpp2());
+//                    Epp2ListOne.add(lastPeriodRingRatioList.get(i).getEpp2());
+//                }
+//                if (Arrays.asList(arr).contains("Epp1")) {
+//                    Epp1List.add(currentPeriodRingRatioList.get(i).getEpp1());
+//                    Epp1ListOne.add(lastPeriodRingRatioList.get(i).getEpp1());
+//                }
+//                if (Arrays.asList(arr).contains("Epp")) {
+//                    EppList.add(currentPeriodRingRatioList.get(i).getEpp());
+//                    EppListOne.add(lastPeriodRingRatioList.get(i).getEpp());
+//                }
+//                if (Arrays.asList(arr).contains("Epn4")) {
+//                    Epn4List.add(currentPeriodRingRatioList.get(i).getEpn4());
+//                    Epn4ListOne.add(lastPeriodRingRatioList.get(i).getEpn4());
+//                }
+//                if (Arrays.asList(arr).contains("Epn3")) {
+//                    Epn3List.add(currentPeriodRingRatioList.get(i).getEpn3());
+//                    Epn3ListOne.add(lastPeriodRingRatioList.get(i).getEpn3());
+//                }
+//                if (Arrays.asList(arr).contains("Epn2")) {
+//                    Epn2List.add(currentPeriodRingRatioList.get(i).getEpn2());
+//                    Epn2ListOne.add(lastPeriodRingRatioList.get(i).getEpn2());
+//                }
+//                if (Arrays.asList(arr).contains("Epn1")) {
+//                    Epn1List.add(currentPeriodRingRatioList.get(i).getEpn1());
+//                    Epn1ListOne.add(lastPeriodRingRatioList.get(i).getEpn1());
+//                }
+//                if (Arrays.asList(arr).contains("Epn")) {
+//                    EpnList.add(currentPeriodRingRatioList.get(i).getEpn());
+//                    EpnListOne.add(lastPeriodRingRatioList.get(i).getEpn());
+//                }
+//                if (Arrays.asList(arr).contains("DeviceTemp")) {
+//                    DeviceTempList.add(currentPeriodRingRatioList.get(i).getDeviceTemp());
+//                    DeviceTempListOne.add(lastPeriodRingRatioList.get(i).getDeviceTemp());
+//                }
+//                if (Arrays.asList(arr).contains("DevResetTimes")) {
+//                    DevResetTimesList.add(currentPeriodRingRatioList.get(i).getDevResetTimes());
+//                    DevResetTimesListOne.add(lastPeriodRingRatioList.get(i).getDevResetTimes());
+//                }
+//                if (Arrays.asList(arr).contains("Demand")) {
+//                    DemandList.add(currentPeriodRingRatioList.get(i).getDemand());
+//                    DemandListOne.add(lastPeriodRingRatioList.get(i).getDemand());
+//                }
+//                if (Arrays.asList(arr).contains("COSc")) {
+//                    COScList.add(currentPeriodRingRatioList.get(i).getCOSc());
+//                    COScListOne.add(lastPeriodRingRatioList.get(i).getCOSc());
+//                }
+//                if (Arrays.asList(arr).contains("COSb")) {
+//                    COSbList.add(currentPeriodRingRatioList.get(i).getCOSb());
+//                    COSbListOne.add(lastPeriodRingRatioList.get(i).getCOSb());
+//                }
+//                if (Arrays.asList(arr).contains("COSa")) {
+//                    COSaList.add(currentPeriodRingRatioList.get(i).getCOSa());
+//                    COSaListOne.add(lastPeriodRingRatioList.get(i).getCOSa());
+//                }
+//                if (Arrays.asList(arr).contains("COS")) {
+//                    COSList.add(currentPeriodRingRatioList.get(i).getCos());
+//                    COSListOne.add(lastPeriodRingRatioList.get(i).getCos());
+//                }
+//            }
+//        }
+//
+//        List<CommonIcoOneVO> list = new ArrayList<>();
+////        list.add(CommonIcoOneVO.builder().name("底部时间").listDate(bottomTimeList).build());
+//        if (Arrays.asList(arr).contains("Busot")) {
+//            list.add(CommonIcoOneVO.builder().name("母线停电次数").currentPeriodList(BusotList).lastPeriodList(BusotListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("COS")) {
+//            list.add(CommonIcoOneVO.builder().name("三相功率因数").currentPeriodList(COSList).lastPeriodList(COSListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("COSa")) {
+//            list.add(CommonIcoOneVO.builder().name("A相功率因数").currentPeriodList(COSaList).lastPeriodList(COSaListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("COSb")) {
+//            list.add(CommonIcoOneVO.builder().name("B相功率因数").currentPeriodList(COSbList).lastPeriodList(COSbListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("COSc")) {
+//            list.add(CommonIcoOneVO.builder().name("C相功率因数").currentPeriodList(COScList).lastPeriodList(COScListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Demand")) {
+//            list.add(CommonIcoOneVO.builder().name("实时有功需量").currentPeriodList(DemandList).lastPeriodList(DemandListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("DevResetTimes")) {
+//            list.add(CommonIcoOneVO.builder().name("设备复位次数").currentPeriodList(DevResetTimesList).lastPeriodList(DevResetTimesListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("DeviceTemp")) {
+//            list.add(CommonIcoOneVO.builder().name("设备温度").currentPeriodList(DeviceTempList).lastPeriodList(DeviceTempListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Epn")) {
+//            list.add(CommonIcoOneVO.builder().name("三相反向有功电度").currentPeriodList(EpnList).lastPeriodList(EpnListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Epn1")) {
+//            list.add(CommonIcoOneVO.builder().name("尖段反向有功电度").currentPeriodList(Epn1List).lastPeriodList(Epn1ListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Epn2")) {
+//            list.add(CommonIcoOneVO.builder().name("峰段反向有功电度").currentPeriodList(Epn2List).lastPeriodList(Epn2ListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Epn3")) {
+//            list.add(CommonIcoOneVO.builder().name("平段反向有功电度").currentPeriodList(Epn3List).lastPeriodList(Epn3ListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Epn4")) {
+//            list.add(CommonIcoOneVO.builder().name("谷段反向有功电度").currentPeriodList(Epn4List).lastPeriodList(Epn4ListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Epp")) {
+//            list.add(CommonIcoOneVO.builder().name("三相正向有功电度").currentPeriodList(EppList).lastPeriodList(EppListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Epp1")) {
+//            list.add(CommonIcoOneVO.builder().name("尖段正向有功电度").currentPeriodList(Epp1List).lastPeriodList(Epp1ListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Epp2")) {
+//            list.add(CommonIcoOneVO.builder().name("峰段正向有功电度").currentPeriodList(Epp2List).lastPeriodList(Epp2ListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Epp3")) {
+//            list.add(CommonIcoOneVO.builder().name("平段正向有功电度").currentPeriodList(Epp3List).lastPeriodList(Epp3ListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Epp4")) {
+//            list.add(CommonIcoOneVO.builder().name("谷段正向有功电度").currentPeriodList(Epp4List).lastPeriodList(Epp4ListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Eqn")) {
+//            list.add(CommonIcoOneVO.builder().name("三相反向无功电度").currentPeriodList(EqnList).lastPeriodList(EqnListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Eqp")) {
+//            list.add(CommonIcoOneVO.builder().name("三相正向无功电度").currentPeriodList(EqpList).lastPeriodList(EqpListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("F")) {
+//            list.add(CommonIcoOneVO.builder().name("频率").currentPeriodList(FList).lastPeriodList(FListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("I0")) {
+//            list.add(CommonIcoOneVO.builder().name("零序电流").currentPeriodList(I0List).lastPeriodList(I0ListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("I2")) {
+//            list.add(CommonIcoOneVO.builder().name("负序电流").currentPeriodList(I2List).lastPeriodList(I2ListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("IHa")) {
+//            list.add(CommonIcoOneVO.builder().name("A相总谐波电流").currentPeriodList(IHaList).lastPeriodList(IHaListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("IHb")) {
+//            list.add(CommonIcoOneVO.builder().name("B相总谐波电流").currentPeriodList(IHbList).lastPeriodList(IHbListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("IHc")) {
+//            list.add(CommonIcoOneVO.builder().name("C相总谐波电流").currentPeriodList(IHcList).lastPeriodList(IHcListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Ia")) {
+//            list.add(CommonIcoOneVO.builder().name("A相电流").currentPeriodList(IaList).lastPeriodList(IaList).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Ib")) {
+//            list.add(CommonIcoOneVO.builder().name("B相电流").currentPeriodList(IbList).lastPeriodList(IbListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Ic")) {
+//            list.add(CommonIcoOneVO.builder().name("C相电流").currentPeriodList(IcList).lastPeriodList(IcListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Ir")) {
+//            list.add(CommonIcoOneVO.builder().name("剩余电流").currentPeriodList(IrList).lastPeriodList(IrListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("LastDayMD")) {
+//            list.add(CommonIcoOneVO.builder().name("昨日有功最大需量").currentPeriodList(LastDayMDList).lastPeriodList(LastDayMDListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("LastDayMDt")) {
+//            list.add(CommonIcoOneVO.builder().name("昨日有功最大需量发生时间").currentPeriodList(LastDayMDtList).lastPeriodList(LastDayMDtListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("P")) {
+//            list.add(CommonIcoOneVO.builder().name("三相总有功功率").currentPeriodList(PList).lastPeriodList(PList).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Pa")) {
+//            list.add(CommonIcoOneVO.builder().name("A相有功功率").currentPeriodList(PaList).lastPeriodList(PaListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Pb")) {
+//            list.add(CommonIcoOneVO.builder().name("B相有功功率").currentPeriodList(PbList).lastPeriodList(PbList).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Pc")) {
+//            list.add(CommonIcoOneVO.builder().name("C相有功功率").currentPeriodList(PcList).lastPeriodList(PcList).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Q")) {
+//            list.add(CommonIcoOneVO.builder().name("三相总无功功率").currentPeriodList(QList).lastPeriodList(QListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Qa")) {
+//            list.add(CommonIcoOneVO.builder().name("A相无功功率").currentPeriodList(QaList).lastPeriodList(QaListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Qb")) {
+//            list.add(CommonIcoOneVO.builder().name("B相无功功率").currentPeriodList(QbList).lastPeriodList(QbListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Qc")) {
+//            list.add(CommonIcoOneVO.builder().name("C相无功功率").currentPeriodList(QcList).lastPeriodList(QcListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("SignalIntensity")) {
+//            list.add(CommonIcoOneVO.builder().name("信号强度").currentPeriodList(SignalIntensityList).lastPeriodList(SignalIntensityListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("T1")) {
+//            list.add(CommonIcoOneVO.builder().name("第1路温度").currentPeriodList(T1List).lastPeriodList(T1ListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("T2")) {
+//            list.add(CommonIcoOneVO.builder().name("第2路温度").currentPeriodList(T2List).lastPeriodList(T2ListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("T3")) {
+//            list.add(CommonIcoOneVO.builder().name("第3路温度").currentPeriodList(T3List).lastPeriodList(T3ListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("T4")) {
+//            list.add(CommonIcoOneVO.builder().name("第4路温度").currentPeriodList(T4List).lastPeriodList(T4ListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("THDUa")) {
+//            list.add(CommonIcoOneVO.builder().name("A相电压THD").currentPeriodList(THDUaList).lastPeriodList(THDUaListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("THDUb")) {
+//            list.add(CommonIcoOneVO.builder().name("B相电压THD").currentPeriodList(THDUbList).lastPeriodList(THDUbListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("THDUc")) {
+//            list.add(CommonIcoOneVO.builder().name("C相电压THD").currentPeriodList(THDUcList).lastPeriodList(THDUcListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Ua")) {
+//            list.add(CommonIcoOneVO.builder().name("A相电压").currentPeriodList(UaList).lastPeriodList(UaListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Uab")) {
+//            list.add(CommonIcoOneVO.builder().name("AB线电压").currentPeriodList(UabList).lastPeriodList(UabListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Ub")) {
+//            list.add(CommonIcoOneVO.builder().name("B相电压").currentPeriodList(UbList).lastPeriodList(UbListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Ubc")) {
+//            list.add(CommonIcoOneVO.builder().name("BC线电压").currentPeriodList(UbcList).lastPeriodList(UbcListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("UblU0")) {
+//            list.add(CommonIcoOneVO.builder().name("零序电压不平衡度").currentPeriodList(UblU0List).lastPeriodList(UblU0ListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("UblU2")) {
+//            list.add(CommonIcoOneVO.builder().name("负序电压不平衡度").currentPeriodList(UblU2List).lastPeriodList(UblU2ListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Uc")) {
+//            list.add(CommonIcoOneVO.builder().name("C相电压").currentPeriodList(UcList).lastPeriodList(UcListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Uca")) {
+//            list.add(CommonIcoOneVO.builder().name("CA线电压").currentPeriodList(UcaList).lastPeriodList(UcaListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Udt")) {
+//            list.add(CommonIcoOneVO.builder().name("电压暂降次数").currentPeriodList(UdtList).lastPeriodList(UdtListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Ul")) {
+//            list.add(CommonIcoOneVO.builder().name("线路侧电压").currentPeriodList(UlList).lastPeriodList(UlListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Upt")) {
+//            list.add(CommonIcoOneVO.builder().name("电压暂升次数").currentPeriodList(UptList).lastPeriodList(UptListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("freezingTime")) {
+//            list.add(CommonIcoOneVO.builder().name("电压短时中断次数").currentPeriodList(freezingTimesList).lastPeriodList(freezingTimesListOne).listDate(freezingTimesList).build());
+//        }
+//        if (Arrays.asList(arr).contains("Ust")) {
+//            list.add(CommonIcoOneVO.builder().name("冻结时间").currentPeriodList(UstList).lastPeriodList(UstListOne).listDate(freezingTimesList).build());
+//        }
+        return null;
     }
 
     @Override