longz
2026-07-29 607e4ab169b003991ed4788c9dbe0bd1fefc69f3
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TChargingOrderService.java
@@ -7,21 +7,30 @@
import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.order.api.dto.SettlementConfirmAdd;
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.model.TSettlementConfirm;
import com.ruoyi.order.api.model.*;
import com.ruoyi.order.api.query.ChargingOrderQuery;
import com.ruoyi.order.api.query.SettlementListQuery;
import com.ruoyi.order.api.query.UploadRealTimeMonitoringDataQuery;
import com.ruoyi.order.api.vo.*;
import com.ruoyi.order.dto.*;
import com.ruoyi.order.vo.ChargingOrderListInfoVO;
import com.ruoyi.order.vo.ChargingSimulationVO;
import com.ruoyi.order.vo.IcbcAdminSubOrderVO;
import com.ruoyi.order.vo.EndOfChargePageInfo;
import com.ruoyi.order.vo.StatisticsOfBatteryVO;
import com.ruoyi.order.vo.LargeChargingPowerVo;
import com.ruoyi.order.vo.ReservationRecommendationVO;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;
import com.ruoyi.payment.api.vo.IcbcPaymentResp;
import com.ruoyi.payment.api.vo.IcbcRefundResp;
import com.ruoyi.payment.api.vo.IcbcSubOrderRefundResp;
/**
 * <p>
@@ -32,6 +41,8 @@
 * @since 2024-08-07
 */
public interface TChargingOrderService extends IService<TChargingOrder> {
   ReservationRecommendationVO getReservationRecommendation(Integer siteId);
   
   
   /**
@@ -64,6 +75,20 @@
    * @return
    */
   AjaxResult paymentChargingOrder(AddChargingOrder addChargingOrder);
   AjaxResult confirmIcbcPayment(String orderCode);
   ChargingSimulationVO getCurrentSimulationOrder(Integer gunId);
   ChargingSimulationVO completeSimulation(ChargingSimulationReq request);
   IcbcPaymentResp queryIcbcAdminPayment(String orderCode);
   IcbcRefundResp refundIcbcAdminPayment(IcbcAdminFundOperationReq request);
   List<IcbcAdminSubOrderVO> queryIcbcAdminSubOrders(String orderCode);
   IcbcSubOrderRefundResp refundIcbcAdminSubOrder(IcbcAdminFundOperationReq request);
   
   
   /**
@@ -100,8 +125,17 @@
    * @return
    */
   AjaxResult chargingOrderStartupFailureWxRefund(String out_refund_no, String refund_id, String tradeState, String success_time);
   /**
    * 启动失败退款操作
    * @param code
    */
   void refund(String code);
   void refund1(String code, BigDecimal money);
   /**
    * 获取充电中的详情
@@ -117,8 +151,12 @@
    * @return
    */
   AjaxResult stopCharging(String id);
   void editUserTag(TChargingOrder chargingOrder);
   void referralReward(TChargingOrder chargingOrder);
   /**
    * 停止充电应答结果处理
    * @param platformStopChargingReply
@@ -129,31 +167,58 @@
   TCharingOrderVO chargingOrder(ChargingOrderQuery dto);
   PageInfo<ChargingOrderVO> chargingOrderList(ChargingOrderQuery dto);
   TCharingOrderVO chargingOrderSummary(ChargingOrderQuery dto);
   List<ChargingOrderBalanceIncomeDetailVO> balanceIncomeDetail(ChargingOrderQuery dto);
   R<PageInfo<PayOrderDto>> payOrderQuery(PayOrderQueryDto payOrderQueryDto);
   R<PageInfo<EnterpriseChargingAnalysisVO>> enterpriseChargingAnalysis(EnterpriseChargingAnalysisQuery query);
   R<PageInfo<EnterpriseChargingDetailVO>> enterpriseChargingDetail(EnterpriseChargingAnalysisQuery query);
   List<EnterpriseChargingDetailVO> enterpriseChargingDetailExport(EnterpriseChargingAnalysisQuery query);
    R<PageInfo<TChargingOrderRefund>> getRefundList(ChargingRefundDto chargingRefundDto);
    List<ChargingOrderGroup> chargingOrderGroup(ChargingPercentProvinceDto chargingPercentProvinceDto);
   List<SixChargingDto> charge(LocalDate sixBefore, List<Integer> siteIds);
   List<SixChargingDto> charge(LocalDate sixBefore, List<Integer> siteIds, Boolean partnerView);
   List<SixCircleDto> circle(List<Integer> siteIds,LocalDate sixBefore);
   List<SixCircleDto> circle(List<Integer> siteIds,LocalDate sixBefore, Boolean partnerView);
   Map<String, Object> countAll(LocalDate sixBefore);
   Map<String, Object> countAll(List<Integer> siteIds, Boolean partnerView);
    List<Map<String, Object>> getSumByType(List<Long> chargingOrderIds);
   List<SixIncomeCircleDto> payTypeCircle(LocalDate sixBefore, List<Integer> siteIds, Boolean partnerView);
   List<Map<String, Object>> getDateData(List<Long> chargingOrderIds);
    List<Map<String, Object>> getSumByType(LocalDate start,LocalDate end,List<Integer> siteIds);
   List<Map<String, Object>> getWeekData(List<Long> chargingOrderIds);
   List<Map<String, Object>> getDateData(LocalDate start,LocalDate end,List<Integer> siteIds);
   List<Map<String, Object>> getMonthData(List<Long> chargingOrderIds);
   List<Map<String, Object>> getWeekData(LocalDate start,LocalDate end,List<Integer> siteIds);
   List<Map<String, Object>> getYearData(List<Long> chargingOrderIds);
   List<Map<String, Object>> getMonthData(LocalDate start,LocalDate end,List<Integer> siteIds);
   List<Map<String, Object>> getYearData(LocalDate start,LocalDate end,List<Integer> siteIds);
    ChargingOrderTimeVO chargingList(ChargingListQuery dto);
    PageInfo<ChargingOrderListVO> chargingListPage(ChargingListQuery dto);
    ChargingOrderTimeVO chargingListSummary(ChargingListQuery dto);
   List<ChargingOrderListVO> export(ChargingListQuery dto);
   R payRefund(PayOrderRefundDto payOrderQueryDto);
   R<PayOrderInfoDto> getSpecialRefundOrder(PayOrderRefundDto payOrderQueryDto);
   R specialRefund(PayOrderRefundDto payOrderQueryDto);
   BigDecimal getManualRefundableAmount(Long chargingOrderId);
   ChargingOrderListInfoVO chargingInfo(String uid);
@@ -175,7 +240,7 @@
    * 停止充电返回账单后计算费用
    * @param vo
    */
   void endChargeBillingCharge(TransactionRecordMessageVO vo);
   R endChargeBillingCharge(TransactionRecordMessageVO vo);
   
   
@@ -185,15 +250,14 @@
    */
   void excelEndCharge(String orderCode);
   List<Map<String, Object>> getByDate(List<Long> chargingOrderIds);
   List<Map<String, Object>> getByDate(LocalDate start,LocalDate end, List<Integer> siteIds);
   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>> usersDay(ChargingStatisticsQueryDto statisticsQueryDto);
   List<Map<String, Object>> usersDay1();
   List<Map<String, Object>> usersByQuery(ChargingStatisticsQueryDto statisticsQueryDto);
@@ -212,7 +276,7 @@
   Map<String, Object> countLocalCar();
    Long getAver(List<Integer> siteIds);
    Double getAver(List<Integer> siteIds);
   List<Map<String, Object>> getLevelEvaluate(List<Integer> siteIds);
@@ -230,8 +294,9 @@
   PageInfo<TSettlementConfirm> settlementList(SettlementListQuery dto);
    SettlementTotalVO settlementTotal(String time);
    SettlementTotalVO settlementTotalR(String time,Long userId);
   List<Map<String, Object>> countBySource(List<Integer> siteIds);
   List<Map<String, Object>> countBySource(List<Integer> siteIds,ChargingStatisticsQueryDto statisticsQueryDto);
   List<Map<String, Object>> equipmentUserType1(List<Integer> siteIds, ChargingStatisticsQueryDto statisticsQueryDto);
@@ -246,6 +311,15 @@
   List<Map<String, Object>> equipmentMapOut2(List<Integer> siteIds, ChargingStatisticsQueryDto statisticsQueryDto);
   List<Map<String, Object>> needElec(List<Integer> siteIds, ChargingStatisticsQueryDto statisticsQueryDto);
    Map<String, Object> getChargingOrderCount(List<Integer> siteIds, String time);
    Map<String, Object> getLargeScreenSummary(List<Integer> siteIds);
    List<SixChargingDto> getLargeScreenIncomeTrend(List<Integer> siteIds, LocalDate sixBefore);
    List<LargeChargingPowerVo> getLargeScreenChargingPower(List<Integer> siteIds, LocalDateTime startTime, LocalDateTime endTime);
   List<Map<String, Object>> getHourType(List<Integer> siteIds, ChargingDetailQueryDto statisticsQueryDto);
@@ -266,4 +340,125 @@
    * @return
    */
   EndOfChargePageInfo getEndOfChargePageInfo(String id);
   Long countNoTag();
   /**
    * 获取订单数据
    * @param order
    * @return
    */
   List<TChargingOrder> getChargingOrder(TChargingOrderVo order);
    Long countCar(List<String> brands);
   /**
    * 添加三方平台充电订单数据
    * @param query
    */
   R addTripartitePlatformOrder(AddTripartitePlatformOrder query);
   /**
    * 三方平台停止充电操作
    * @param startChargeSeq
    * @return
    */
   R tripartitePlatformStopCharge(@RequestParam("startChargeSeq") String startChargeSeq);
   /**
    * 获取充电后没有扣除费用的数据
    * @return
    */
   R getNotPaymentChargingOrder();
   /**
    *
    * 手动推送订单给第三方平台
    * @param code
    * @return
    */
   R pushOrderInfo(String code);
   R addChargingOrderSummaryData();
   /**
    * 大屏-新能源汽车电池安全检测次数统计
    */
    R<StatisticsOfBatteryVO> getStatisticsOfBattery(List<Integer> siteIds);
   Double getSumDegreeBySiteIds(List<Integer> siteIds);
   /**
    * 查询指定站点中实际发生过充电的用户ID
    */
   List<Long> getAppUserIdsBySiteIds(List<Integer> siteIds);
   /**
    * 获取启动失败且时间超过1小时的订单
    * @return
    */
   List<TChargingOrder> findFailedStartupOrder();
   /**
    * 获取停止中的数据
    * @return
    */
   List<TChargingOrder> findStoppedOrder();
   /**
    * 获取充电中的数据
    * @return
    */
   List<TChargingOrder> findChargingOrder();
   /**
    * 获取已结束的数据
    * @return
    */
   List<TChargingOrder> findEndChargingOrder();
   /**
    * 获取需要手动修改订单状态的数据
    * @return
    */
   List<TChargingOrder> findUpStatusChargingOrder();
   /**
    * 查询充电算账单数据
    * @param startTime
    * @param endTime
    * @param dateType
    */
   List<Map<String, Object>> getChargingSettlementBill(String startTime, String endTime, Integer dateType);
   /**
    * 查询账户结算账单数据
    * @param startTime
    * @param endTime
    * @return
    */
   List<Map<String, Object>> getAccountSettlementStatement(String startTime, String endTime);
    /**
     * 手动处理退款数据
     * @param refund_out_trade_no 退款商户单号
     */
    void orderQueryRefund(Long orderId, String refund_out_trade_no);
    /**
     * 手动添加完善订单费用明细
     * @param orderId
     */
    void addOrderExpenseBreakdown(Long orderId);
}