Browse Source

充电桩年月日

2025年3月10日10:20:31
qingyuan_dev_new
lishuai 10 months ago
parent
commit
9003bffdaa
  1. 6
      modules/qingyuan/src/main/java/com/thing/qingyuan/screen/controller/StationScreenController.java
  2. 2
      modules/qingyuan/src/main/java/com/thing/qingyuan/screen/service/StationScreenService.java
  3. 25
      modules/qingyuan/src/main/java/com/thing/qingyuan/screen/service/impl/StationScreenServiceImpl.java

6
modules/qingyuan/src/main/java/com/thing/qingyuan/screen/controller/StationScreenController.java

@ -65,14 +65,14 @@ public class StationScreenController {
return new Result<StationChargeStatus>().ok(data);
}
@GetMapping("month/usage/analysis")
@GetMapping("usage/analysis")
@Operation(summary = "月度使用率分析")
@Parameters({
@Parameter(name = "thingCode", description = "充电站物编码"),
})
public Result<StationMonthUsageAnalysis> getMonthUsageAnalysis(
@Parameter(hidden = true) String thingCode) {
StationMonthUsageAnalysis data = service.getMonthUsageAnalysis(thingCode);
@Parameter(hidden = true) String thingCode,String dateType) {
StationMonthUsageAnalysis data = service.getMonthUsageAnalysis(thingCode, dateType);
return new Result<StationMonthUsageAnalysis>().ok(data);
}

2
modules/qingyuan/src/main/java/com/thing/qingyuan/screen/service/StationScreenService.java

@ -19,7 +19,7 @@ public interface StationScreenService {
StationChargeStatus getChargeStatus(String thingCode);
StationMonthUsageAnalysis getMonthUsageAnalysis(String thingCode);
StationMonthUsageAnalysis getMonthUsageAnalysis(String thingCode,String dateType);
StationChargeTrend getChargeTrend(String thingCode, String timeType);

25
modules/qingyuan/src/main/java/com/thing/qingyuan/screen/service/impl/StationScreenServiceImpl.java

@ -17,6 +17,7 @@ import com.thing.thing.entity.dto.IotThingEntityDTO;
import com.thing.thing.entity.service.IotThingEntityService;
import lombok.RequiredArgsConstructor;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import java.util.*;
@ -120,15 +121,31 @@ public class StationScreenServiceImpl implements StationScreenService {
}
@Override
public StationMonthUsageAnalysis getMonthUsageAnalysis(String thingCode) {
public StationMonthUsageAnalysis getMonthUsageAnalysis(String thingCode,String dateType) {
Integer gunCount =
connectorInfoService.getCountByStationIds(Collections.singletonList(thingCode));
String code = "A201mm";
Long startTs = DateTimeUtils.monthStartTs();
Long endTs = DateTimeUtils.monthStartTs();
if(StringUtils.equals(dateType,"yy")){
startTs = DateTimeUtils.yearStartTs();
endTs = DateTimeUtils.yearEndTs();
} else if (StringUtils.equals(dateType,"mm")) {
startTs = DateTimeUtils.monthStartTs();
endTs = DateTimeUtils.monthEndTs();
code= "A201dd";
}else{
startTs = DateTimeUtils.todayStartTs();
endTs = DateTimeUtils.yearEndTs();
code= "A201hh";
}
List<TsKvDTO> tskvList =
tsKvService.findTsKvByCodeAndAttr(
thingCode,
StationChargeStatus.DAILY_DURATION_CODE,
DateTimeUtils.monthStartTs(),
DateTimeUtils.todayStartTs(),
code,
startTs,
endTs,
true);
return StationMonthUsageAnalysis.assemble(tskvList, gunCount);
}

Loading…
Cancel
Save