package com.ruoyi.system.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.system.domain.PosOrderInvoice;
import com.ruoyi.system.domain.vo.PosOrderInvoiceVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 订单电子发票 Mapper。
 *
 * @author ruoyi
 * @date 2026-06-16
 */
public interface PosOrderInvoiceMapper extends BaseMapper<PosOrderInvoice> {

    /**
     * 订单发票列表（pos_order_invoice LEFT JOIN pos_store）。
     * 配合 PageHelper startPage() 分页。
     */
    List<PosOrderInvoiceVo> selectInvoiceList(PosOrderInvoiceVo query);

    /** 订单发票详情（单行）。 */
    PosOrderInvoiceVo selectInvoiceDetail(@Param("orderId") Long orderId);

    /** 会员发票夹（010 Phase 11）：按 userId 列已开发票，join pos_order 过滤，不含码图。配合 PageHelper 分页。 */
    List<PosOrderInvoiceVo> selectMyInvoices(@Param("userId") Long userId);
}
