diff --git a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/RStatOnlineRateDServiceImpl.java b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/RStatOnlineRateDServiceImpl.java index 7b8ce32..bba0b9c 100644 --- a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/RStatOnlineRateDServiceImpl.java +++ b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/RStatOnlineRateDServiceImpl.java @@ -15,13 +15,17 @@ import com.njcn.csdevice.pojo.po.RStatOnlineRateD; import com.njcn.csdevice.service.ICsCommunicateService; import com.njcn.csdevice.service.IRStatOnlineRateDService; import com.njcn.csdevice.util.TimeUtil; +import com.njcn.csharmonic.param.DataParam; import com.njcn.csharmonic.pojo.param.StatisticsDataParam; import com.njcn.influx.deprecated.InfluxDBPublicParam; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; +import java.text.ParseException; +import java.text.SimpleDateFormat; import java.time.LocalDate; +import java.time.LocalDateTime; import java.util.ArrayList; import java.util.Collections; import java.util.Date; @@ -159,18 +163,30 @@ public class RStatOnlineRateDServiceImpl extends MppServiceImpl communicateDataOld = pqsCommunicateService.getRawDataEnd(lineParam); +// if (!communicateDataOld.isEmpty()){ +// if (online.equals(communicateDataOld.get(0).getType())){ +// minute = InfluxDBPublicParam.DAY_MINUTE; +// } +// } if (!communicateDataOld.isEmpty()){ - if (online.equals(communicateDataOld.get(0).getType())){ - minute = InfluxDBPublicParam.DAY_MINUTE; + try { + if (online.equals(communicateDataOld.get(0).getType())){ + minute = (int) DateUtil.between(new SimpleDateFormat(DatePattern.NORM_DATETIME_PATTERN).parse(communicateDataOld.get(0).getTime()), new SimpleDateFormat(DatePattern.NORM_DATETIME_PATTERN).parse(lineParam.getEndTime()), DateUnit.MINUTE); + } else { + minute = (int) DateUtil.between(new SimpleDateFormat(DatePattern.NORM_DATETIME_PATTERN).parse(lineParam.getStartTime()), new SimpleDateFormat(DatePattern.NORM_DATETIME_PATTERN).parse(communicateDataOld.get(0).getTime()), DateUnit.MINUTE); + } + } catch (ParseException e) { + throw new RuntimeException(e); } } }