package com.ruoyi.order.service;
|
|
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.ruoyi.common.core.domain.R;
|
import com.ruoyi.common.core.dto.ChargingOrderGroup;
|
import com.ruoyi.common.core.dto.ChargingPercentProvinceDto;
|
import com.ruoyi.common.core.web.domain.AjaxResult;
|
import com.ruoyi.common.core.web.page.PageInfo;
|
import com.ruoyi.order.api.model.ChargingListQuery;
|
import com.ruoyi.order.api.model.TChargingOrder;
|
import com.ruoyi.order.api.model.TChargingOrderRefund;
|
import com.ruoyi.order.api.query.ChargingOrderQuery;
|
import com.ruoyi.order.api.query.UploadRealTimeMonitoringDataQuery;
|
import com.ruoyi.order.api.vo.ChargingOrderTimeVO;
|
import com.ruoyi.order.api.vo.TCharingOrderVO;
|
import com.ruoyi.order.dto.*;
|
import com.ruoyi.order.vo.ChargingOrderListInfoVO;
|
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestParam;
|
|
import java.math.BigDecimal;
|
import java.time.LocalDate;
|
import java.util.List;
|
import java.util.Map;
|
|
/**
|
* <p>
|
* 服务类
|
* </p>
|
*
|
* @author xiaochen
|
* @since 2024-08-07
|
*/
|
public interface TChargingOrderService extends IService<TChargingOrder> {
|
|
|
/**
|
* 获取小程序充电记录列表数据
|
* @param query
|
* @return
|
*/
|
Map<String, Object> getMyChargingOrderList(GetMyChargingOrderList query);
|
|
|
/**
|
* 获取小程序充电记录明细
|
* @param id
|
* @return
|
*/
|
MyChargingOrderInfo getMyChargingOrderInfo(String id);
|
|
|
/**
|
* 获取待开票订单列表
|
* @param query
|
* @return
|
*/
|
List<MyChargingOrderList> getNoInvoicedOrder(GetNoInvoicedOrder query);
|
|
|
/**
|
* 充电支付
|
* @param addChargingOrder
|
* @return
|
*/
|
AjaxResult paymentChargingOrder(AddChargingOrder addChargingOrder);
|
|
|
/**
|
* 支付成功后的回调处理逻辑
|
* @param paymentType 支付方式:1=微信,2=支付宝
|
* @param out_trade_no 业务流水号
|
* @param transaction_id 三方支付流水号
|
* @param attach 附加数据
|
* @return
|
*/
|
AjaxResult chargingOrderCallback(Integer paymentType, String out_trade_no, String transaction_id, String attach);
|
|
|
/**
|
* 充电启动失败后的退款回调处理
|
* @param out_refund_no
|
* @param refund_id
|
* @param tradeState
|
* @param success_time
|
* @return
|
*/
|
AjaxResult chargingOrderStartupFailureWxRefund(String out_refund_no, String refund_id, String tradeState, String success_time);
|
|
|
|
/**
|
* 获取充电中的详情
|
* @param id
|
* @return
|
*/
|
ChargingDetails getChargingDetails(Integer id);
|
|
|
/**
|
* 停止充电
|
* @param id
|
* @return
|
*/
|
AjaxResult stopCharging(String id);
|
|
TCharingOrderVO chargingOrder(ChargingOrderQuery dto);
|
|
R<PageInfo<PayOrderDto>> payOrderQuery(PayOrderQueryDto payOrderQueryDto);
|
|
R<PageInfo<TChargingOrderRefund>> getRefundList(ChargingRefundDto chargingRefundDto);
|
|
List<ChargingOrderGroup> chargingOrderGroup(ChargingPercentProvinceDto chargingPercentProvinceDto);
|
|
List<SixChargingDto> charge(LocalDate sixBefore, List<Integer> siteIds);
|
|
List<SixCircleDto> circle(List<Integer> siteIds,LocalDate sixBefore);
|
|
Map<String, Object> countAll(LocalDate sixBefore);
|
|
List<Map<String, Object>> getSumByType(List<Long> chargingOrderIds);
|
|
List<Map<String, Object>> getDateData(List<Long> chargingOrderIds);
|
|
List<Map<String, Object>> getWeekData(List<Long> chargingOrderIds);
|
|
List<Map<String, Object>> getMonthData(List<Long> chargingOrderIds);
|
|
List<Map<String, Object>> getYearData(List<Long> chargingOrderIds);
|
|
ChargingOrderTimeVO chargingList(ChargingListQuery dto);
|
|
R payRefund(PayOrderRefundDto payOrderQueryDto);
|
|
ChargingOrderListInfoVO chargingInfo(String uid);
|
|
|
/**
|
* 处理充电订单实时监控数据相关的业务逻辑
|
* @param query
|
*/
|
void chargeMonitoring(UploadRealTimeMonitoringDataQuery query);
|
|
|
/**
|
* 自动结束充电后的处理逻辑
|
* @param code
|
*/
|
void endCharge(String code, Integer endMode);
|
|
|
/**
|
* 异常结束充电处理逻辑
|
* @param orderCode
|
*/
|
void excelEndCharge(String orderCode);
|
|
List<Map<String, Object>> getByDate(List<Long> chargingOrderIds);
|
|
List<Map<String, Object>> queryPower(List<Integer> siteIds);
|
|
Map<String, Object> qureryPowerLevel(List<Integer> siteIds, ChargingStatisticsQueryDto statisticsQueryDto);
|
|
List<Map<String, Object>> queryOrderCountAndMoneyBySiteIdDate(List<Integer> siteIds);
|
|
List<Map<String, Object>> usersDay();
|
|
List<Map<String, Object>> usersByQuery(ChargingStatisticsQueryDto statisticsQueryDto);
|
|
|
List<Map<String, Object>> getUserTagCount();
|
|
List<Map<String, Object>> getVipCount();
|
|
List<Map<String, Object>> unitConsumption(ChargingStatisticsQueryDto statisticsQueryDto);
|
|
List<Map<String, Object>> carUserMethod();
|
|
List<Map<String, Object>> carUserBrand();
|
|
Map<String, Object> countLocalCar();
|
|
Long getAver(List<Integer> siteIds);
|
|
List<Map<String, Object>> getLevelEvaluate(List<Integer> siteIds);
|
}
|