Merge branch 'feature-BI' into dev

This commit is contained in:
Lemon
2026-05-15 09:21:15 +08:00
19 changed files with 477 additions and 4 deletions

View File

@@ -140,4 +140,11 @@ public interface MemberBasicInfoMapper {
ConfirmStartChargingMemberVO queryMemberInfoByCardCode(@Param("cardCode") String cardCode, @Param("merchantId") String merchantId);
ConfirmStartChargingMemberVO queryMemberInfoByVinCode(@Param("vinCode") String vinCode, @Param("merchantId") String merchantId);
/**
* 统计总会员数
*
* @return 会员总数
*/
Long countTotalMembers();
}

View File

@@ -467,4 +467,27 @@ public interface OrderBasicInfoMapper {
List<PileConnectorInfoVO> batchQueryChargingConnectorInfo(@Param("pileConnectorCodes") List<String> chargingConnectorCodeList);
int batchUpdateOrderReview(@Param("dto") UpdateOrderReviewDTO dto);
/**
* 大数据平台-使用率趋势数据
*
* @param dto 查询条件
* @return 趋势数据列表
*/
List<UsageTrendVO> getUsageTrendData(@Param("dto") IndexQueryDTO dto);
/**
* 大数据平台-订单总数
*
* @return 订单总数
*/
Long countTotalOrders();
/**
* 大数据平台-充电时段分布
*
* @param dto 查询条件
* @return 时段分布数据
*/
List<TimeDistributionVO> getTimeDistribution(@Param("dto") IndexQueryDTO dto);
}

View File

@@ -9,6 +9,8 @@ import com.jsowell.pile.dto.ningxiajiaotou.NXJTQueryStationInfoDTO;
import com.jsowell.pile.vo.base.ThirdPartyStationInfoVO;
import com.jsowell.pile.vo.ningxiajiaotou.NXJTStationInfoVO;
import com.jsowell.pile.vo.web.PileStationVO;
import com.jsowell.pile.vo.web.CityDeviceCountVO;
import com.jsowell.pile.vo.web.StationMapVO;
import com.jsowell.pile.vo.web.StationSelectVO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
@@ -140,4 +142,25 @@ public interface PileStationInfoMapper {
* @return
*/
List<String> getStationIdsByMerchantIds(@Param("merchantIds") List<String> merchantIdList);
/**
* 统计充电站总数
*
* @return 充电站总数
*/
Long countTotalStations();
/**
* 查询所有充电站坐标(用于地图展示)
*
* @return 站点坐标列表
*/
List<StationMapVO> getStationMapData();
/**
* 按城市统计设备数量
*
* @return 城市设备数量列表
*/
List<CityDeviceCountVO> getCityDeviceCount();
}

View File

@@ -182,4 +182,11 @@ public interface MemberBasicInfoService {
ConfirmStartChargingMemberVO queryMemberInfoByCardCode(String physicsCard, String merchantId, String stationId);
ConfirmStartChargingMemberVO queryByVinCode(String vinCode, String merchantId, String stationId);
/**
* 统计总会员数
*
* @return 会员总数
*/
Long countTotalMembers();
}

View File

@@ -684,4 +684,24 @@ public interface OrderBasicInfoService{
List<RealTimeMonitorData> getRealTimeMonitorDataList(List<String> transactionCodeList);
int batchUpdateOrderReview(UpdateOrderReviewDTO dto);
/**
* 大数据平台-使用率趋势数据
*
* @param dto 查询条件
* @return 趋势数据列表
*/
List<UsageTrendVO> getUsageTrendData(IndexQueryDTO dto);
/**
* 大数据平台-订单总数
*
* @return 订单总数
*/
Long countTotalOrders();
/**
* 大数据平台-充电时段分布
*/
List<TimeDistributionVO> getTimeDistribution(IndexQueryDTO dto);
}

View File

@@ -14,7 +14,9 @@ import com.jsowell.pile.vo.base.ThirdPartyStationInfoVO;
import com.jsowell.pile.vo.ningxiajiaotou.NXJTStationInfoVO;
import com.jsowell.pile.vo.uniapp.business.StationBusinessAnalyzeInfoVO;
import com.jsowell.pile.vo.uniapp.business.StationStatisticsInfosVO;
import com.jsowell.pile.vo.web.CityDeviceCountVO;
import com.jsowell.pile.vo.web.PileStationVO;
import com.jsowell.pile.vo.web.StationMapVO;
import com.jsowell.pile.vo.web.StationSelectVO;
import java.util.List;
@@ -229,4 +231,23 @@ public interface PileStationInfoService {
* @return
*/
List<String> getStationIdsByMerchantIds(List<String> merchantIdList);
/**
* 统计充电站总数
*
* @return 充电站总数
*/
Long countTotalStations();
/**
* 查询所有充电站坐标(用于地图展示)
*
* @return 站点坐标列表
*/
List<StationMapVO> getStationMapData();
/**
* 按城市统计设备数量
*/
List<CityDeviceCountVO> getCityDeviceCount();
}

View File

@@ -915,4 +915,9 @@ public class MemberBasicInfoServiceImpl implements MemberBasicInfoService {
return memberVO;
}
@Override
public Long countTotalMembers() {
return memberBasicInfoMapper.countTotalMembers();
}
}

View File

@@ -6691,5 +6691,20 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
}
return resultList;
}
@Override
public List<UsageTrendVO> getUsageTrendData(IndexQueryDTO dto) {
return orderBasicInfoMapper.getUsageTrendData(dto);
}
@Override
public Long countTotalOrders() {
return orderBasicInfoMapper.countTotalOrders();
}
@Override
public List<TimeDistributionVO> getTimeDistribution(IndexQueryDTO dto) {
return orderBasicInfoMapper.getTimeDistribution(dto);
}
}

View File

@@ -36,7 +36,9 @@ import com.jsowell.pile.vo.uniapp.business.StationBusinessAnalyzeInfoVO;
import com.jsowell.pile.vo.uniapp.business.StationOrderQuantityInfoVO;
import com.jsowell.pile.vo.uniapp.business.StationStatisticsInfosVO;
import com.jsowell.pile.vo.uniapp.customer.CurrentTimePriceDetails;
import com.jsowell.pile.vo.web.CityDeviceCountVO;
import com.jsowell.pile.vo.web.PileStationVO;
import com.jsowell.pile.vo.web.StationMapVO;
import com.jsowell.pile.vo.web.StationSelectVO;
import com.jsowell.system.service.SysDeptService;
import com.jsowell.system.service.SysUserService;
@@ -1688,4 +1690,19 @@ public class PileStationInfoServiceImpl implements PileStationInfoService {
return pileStationInfoMapper.getStationIdsByMerchantIds(merchantIdList);
}
@Override
public Long countTotalStations() {
return pileStationInfoMapper.countTotalStations();
}
@Override
public List<StationMapVO> getStationMapData() {
return pileStationInfoMapper.getStationMapData();
}
@Override
public List<CityDeviceCountVO> getCityDeviceCount() {
return pileStationInfoMapper.getCityDeviceCount();
}
}

View File

@@ -0,0 +1,41 @@
package com.jsowell.pile.vo.web;
import lombok.Data;
/**
* 大数据平台总览数据VO
*
* @author jsowell
*/
@Data
public class BigDataOverviewVO {
/**
* 总用户数
*/
private Long totalUsers;
/**
* 总订单数
*/
private Long totalOrders;
/**
* 累计交易额
*/
private String totalTransactionAmount;
/**
* 累计充电电量kWh
*/
private String totalElectricity;
/**
* 充电桩数量
*/
private Long totalPiles;
/**
* 充电站数量
*/
private Long totalStations;
}

View File

@@ -0,0 +1,21 @@
package com.jsowell.pile.vo.web;
import lombok.Data;
/**
* 城市设备数量统计VO
*
* @author jsowell
*/
@Data
public class CityDeviceCountVO {
/**
* 城市名称
*/
private String cityName;
/**
* 设备数量
*/
private Long deviceCount;
}

View File

@@ -0,0 +1,26 @@
package com.jsowell.pile.vo.web;
import lombok.Data;
/**
* 充电站地图坐标VO
*
* @author jsowell
*/
@Data
public class StationMapVO {
/**
* 站点名称
*/
private String stationName;
/**
* 经度
*/
private String stationLng;
/**
* 纬度
*/
private String stationLat;
}

View File

@@ -0,0 +1,21 @@
package com.jsowell.pile.vo.web;
import lombok.Data;
/**
* 充电时段分布VO
*
* @author jsowell
*/
@Data
public class TimeDistributionVO {
/**
* 时段0-23
*/
private Integer hour;
/**
* 订单数量
*/
private Long orderCount;
}

View File

@@ -0,0 +1,31 @@
package com.jsowell.pile.vo.web;
import lombok.Data;
/**
* 使用率趋势VO
*
* @author jsowell
*/
@Data
public class UsageTrendVO {
/**
* 日期
*/
private String date;
/**
* 订单数量
*/
private Long orderCount;
/**
* 充电电量
*/
private String electricity;
/**
* 订单金额
*/
private String orderAmount;
}