package com.ruoyi.cai.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.cai.domain.RechargeOrder;
import com.ruoyi.cai.dto.AddRechargeOrderAdminDto;
import com.ruoyi.cai.dto.AddRechargeOrderDto;
import com.ruoyi.cai.dto.admin.vo.RechargeOrderAdminVo;
import com.ruoyi.common.core.domain.PageQuery;
import org.springframework.transaction.annotation.Transactional;

/**
 * 充值订单Service接口
 *
 * @author 77
 * @date 2024-01-03
 */
public interface RechargeOrderService extends IService<RechargeOrder> {

    RechargeOrder getByOrderNo(String orderNo);

    Page<RechargeOrderAdminVo> pageAdmin(PageQuery pageQuery, RechargeOrderAdminVo bo);

    RechargeOrder addRechargeOrder(AddRechargeOrderDto addRechargeOrderDto);

    @Transactional(rollbackFor = Exception.class)
    void orderSuccess(String orderNo);

    RechargeOrder updateAdminRechargeOrder(AddRechargeOrderAdminDto dto);
}
