mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-06-16 13:19:57 +08:00
update 首页数据看板
This commit is contained in:
@@ -482,4 +482,12 @@ public interface OrderBasicInfoMapper {
|
||||
* @return 订单总数
|
||||
*/
|
||||
Long countTotalOrders();
|
||||
|
||||
/**
|
||||
* 大数据平台-充电时段分布
|
||||
*
|
||||
* @param dto 查询条件
|
||||
* @return 时段分布数据
|
||||
*/
|
||||
List<TimeDistributionVO> getTimeDistribution(@Param("dto") IndexQueryDTO dto);
|
||||
}
|
||||
|
||||
@@ -9,6 +9,7 @@ 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;
|
||||
@@ -155,4 +156,11 @@ public interface PileStationInfoMapper {
|
||||
* @return 站点坐标列表
|
||||
*/
|
||||
List<StationMapVO> getStationMapData();
|
||||
|
||||
/**
|
||||
* 按城市统计设备数量
|
||||
*
|
||||
* @return 城市设备数量列表
|
||||
*/
|
||||
List<CityDeviceCountVO> getCityDeviceCount();
|
||||
}
|
||||
|
||||
@@ -699,4 +699,9 @@ public interface OrderBasicInfoService{
|
||||
* @return 订单总数
|
||||
*/
|
||||
Long countTotalOrders();
|
||||
|
||||
/**
|
||||
* 大数据平台-充电时段分布
|
||||
*/
|
||||
List<TimeDistributionVO> getTimeDistribution(IndexQueryDTO dto);
|
||||
}
|
||||
|
||||
@@ -14,6 +14,7 @@ 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;
|
||||
@@ -244,4 +245,9 @@ public interface PileStationInfoService {
|
||||
* @return 站点坐标列表
|
||||
*/
|
||||
List<StationMapVO> getStationMapData();
|
||||
|
||||
/**
|
||||
* 按城市统计设备数量
|
||||
*/
|
||||
List<CityDeviceCountVO> getCityDeviceCount();
|
||||
}
|
||||
|
||||
@@ -6696,5 +6696,10 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
|
||||
public Long countTotalOrders() {
|
||||
return orderBasicInfoMapper.countTotalOrders();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<TimeDistributionVO> getTimeDistribution(IndexQueryDTO dto) {
|
||||
return orderBasicInfoMapper.getTimeDistribution(dto);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -36,6 +36,7 @@ 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;
|
||||
@@ -1699,4 +1700,9 @@ public class PileStationInfoServiceImpl implements PileStationInfoService {
|
||||
return pileStationInfoMapper.getStationMapData();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CityDeviceCountVO> getCityDeviceCount() {
|
||||
return pileStationInfoMapper.getCityDeviceCount();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
@@ -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;
|
||||
}
|
||||
@@ -3680,4 +3680,27 @@
|
||||
<select id="countTotalOrders" resultType="java.lang.Long">
|
||||
select count(*) from order_basic_info where del_flag = '0'
|
||||
</select>
|
||||
|
||||
<select id="getTimeDistribution" resultType="com.jsowell.pile.vo.web.TimeDistributionVO">
|
||||
SELECT
|
||||
HOUR(t1.create_time) AS hour,
|
||||
COUNT(*) AS orderCount
|
||||
FROM order_basic_info t1
|
||||
WHERE t1.del_flag = '0'
|
||||
AND t1.order_status = '6'
|
||||
<if test="dto.startTime != null and dto.startTime != ''">
|
||||
AND t1.create_time >= #{dto.startTime}
|
||||
</if>
|
||||
<if test="dto.endTime != null and dto.endTime != ''">
|
||||
AND t1.create_time <= #{dto.endTime}
|
||||
</if>
|
||||
<if test="dto.stationIdList != null and dto.stationIdList.size() > 0">
|
||||
AND t1.station_id IN
|
||||
<foreach item="sid" collection="dto.stationIdList" open="(" separator="," close=")">
|
||||
#{sid}
|
||||
</foreach>
|
||||
</if>
|
||||
GROUP BY HOUR(t1.create_time)
|
||||
ORDER BY hour ASC
|
||||
</select>
|
||||
</mapper>
|
||||
|
||||
@@ -770,4 +770,20 @@
|
||||
and station_lng != ''
|
||||
and station_lat != ''
|
||||
</select>
|
||||
|
||||
<select id="getCityDeviceCount" resultType="com.jsowell.pile.vo.web.CityDeviceCountVO">
|
||||
SELECT
|
||||
CASE
|
||||
WHEN address LIKE '%省%' AND address LIKE '%市%' THEN
|
||||
CONCAT(SUBSTRING_INDEX(SUBSTRING_INDEX(address, '省', -1), '市', 1), '市')
|
||||
WHEN address LIKE '%市%' THEN
|
||||
LEFT(SUBSTRING_INDEX(address, '市', 1), 3)
|
||||
ELSE '其他'
|
||||
END AS cityName,
|
||||
COUNT(*) AS deviceCount
|
||||
FROM pile_station_info
|
||||
WHERE del_flag = '0' AND address IS NOT NULL AND address != ''
|
||||
GROUP BY cityName
|
||||
ORDER BY deviceCount DESC
|
||||
</select>
|
||||
</mapper>
|
||||
|
||||
Reference in New Issue
Block a user