package com.yc.ship.module.trade.dal.mysql.billorder;

import com.yc.ship.framework.mybatis.core.mapper.BaseMapperX;
import com.yc.ship.framework.tenant.core.aop.TenantIgnore;
import com.yc.ship.module.product.api.dto.PlatProductRespDTO;
import com.yc.ship.module.product.api.dto.ProductGroupRespDTO;
import com.yc.ship.module.product.api.dto.ProductSpuRespDTO;
import com.yc.ship.module.trade.dal.dataobject.billorder.BillOrderDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.math.BigDecimal;
import java.util.List;


/**
 * 旅行社账单订单详情 Mapper
 *
 * @author 管理员
 */
@Mapper
public interface BillOrderMapper extends BaseMapperX<BillOrderDO> {

    @TenantIgnore
    ProductSpuRespDTO getProductSpuPlat(@Param("productId") Long productId, @Param("tenantId") Long tenantId);

    @TenantIgnore
    ProductSpuRespDTO getProductSpu(@Param("productId") Long productId);

    @TenantIgnore
    List<ProductGroupRespDTO> getProductSupInfo(@Param("productId") Long productId);

    @TenantIgnore
    BigDecimal getRefundAmount(@Param("orderId") Long orderId);

    @TenantIgnore
    BillOrderDO getBillOrderId(@Param("orderId") Long orderId);

    @TenantIgnore
    List<PlatProductRespDTO> getPlatProductSupInfo(@Param("productId") Long productId);

}