longz
2026-07-30 d83061ad5d5088eb32c71c32d21dd5db278d503a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
package com.ruoyi.chargingPile.service;
 
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.chargingPile.api.dto.PageChargingPileListDTO;
import com.ruoyi.chargingPile.api.model.TChargingPile;
import com.ruoyi.chargingPile.api.model.Site;
import com.ruoyi.chargingPile.api.query.BatchSetAccountingStrategy;
import com.ruoyi.chargingPile.api.query.PageChargingPileList;
import com.ruoyi.chargingPile.api.vo.TChargingPileVO;
import com.ruoyi.chargingPile.dto.ChargeMonitoring;
import com.ruoyi.chargingPile.dto.ChargingGunCountMonitoring;
import com.ruoyi.chargingPile.dto.ChargingGunMonitoring;
import com.ruoyi.chargingPile.dto.GetChargingGunMonitoring;
import com.ruoyi.chargingPile.dto.ChargingPileBatchBuildDTO;
import com.ruoyi.chargingPile.dto.ChargingPileBatchBuildResultDTO;
import com.ruoyi.chargingPile.dto.ChargingPileImportResultDTO;
import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.common.core.web.page.PageInfo;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
 
import java.util.List;
import org.springframework.web.multipart.MultipartFile;
 
/**
 * <p>
 * 充电桩 服务类
 * </p>
 *
 * @author xiaochen
 * @since 2024-08-06
 */
public interface TChargingPileService extends IService<TChargingPile> {
    
    
    /**
     * 获取充电桩列表
     * @param page
     * @return
     */
    PageInfo<PageChargingPileListDTO> pageChargingPileList(PageChargingPileList page);
 
    List<PageChargingPileListDTO> listChargingPileForExport(PageChargingPileList page);
    
    
    /**
     * 添加充电桩
     * @param chargingPile
     * @return
     */
    AjaxResult addChargingPile(TChargingPile chargingPile);
 
    ChargingPileImportResultDTO importChargingPile(MultipartFile file, Boolean cover) throws Exception;
 
    ChargingPileBatchBuildResultDTO batchBuildChargingPile(ChargingPileBatchBuildDTO dto);
    
    
    /**
     * 获取充电桩详情
     * @param id 充电桩id
     * @return
     */
    TChargingPile getChargingPile(Integer id);
    
    
    /**
     * 编辑充电桩
     * @param chargingPile
     * @return
     */
    AjaxResult editChargingPile(TChargingPile chargingPile);
    
    
    /**
     * 删除充电桩
     * @param id
     * @return
     */
    AjaxResult delChargingPile(Integer[] id);
    
    
    /**
     * 批量设置计费策略
     * @param setAccountingStrategy
     */
    void batchSetAccountingStrategy(BatchSetAccountingStrategy setAccountingStrategy);
 
    /**
     * 获取站点下充电桩及充电枪列表
     * @param siteId
     * @param type
     * @return
     */
    List<TChargingPileVO> getChargingGunList(Integer siteId,Integer type);
    
    
    /**
     * 获取充电设备监控数据
     * @param siteId
     * @return
     */
    ChargeMonitoring chargeMonitoring(Integer siteId);
 
    List<Site> getChargingMonitoringSiteList();
 
    
    /**
     * 获取充电枪各种状态汇总
     * @param siteId 站点id
     * @return
     */
    ChargingGunCountMonitoring getChargingGunCountMonitoring(Integer siteId);
    
    
    
    /**
     * 获取充电枪监控数据
     * @param query
     * @return
     */
    PageInfo<ChargingGunMonitoring> getChargingGunMonitoring(GetChargingGunMonitoring query);
    
    
    /**
     * 定时任务修改充电桩状态
     */
    void updateStatus();
 
}