package com.jeesharp.business.modules.finance.merchantsettlement.service;

import com.jeesharp.business.modules.finance.merchantsettlement.entity.MerchantSettlementBillLine;
import com.jeesharp.business.modules.finance.merchantsettlement.vo.MerchantSettlementBillLineQueryVO;
import com.jeesharp.framework.mybatis.core.service.BaseInterface;
import com.jeesharp.framework.pojo.Page;

import java.util.List;

/**
 * 商户结算单构成明细领域服务接口。
 *
 * @author jeesharp
 * @since 2026-06-29
 */
public interface MerchantSettlementBillLineService
        extends BaseInterface<MerchantSettlementBillLine, MerchantSettlementBillLineQueryVO> {

    /**
     * 批量写入构成明细。
     */
    void batchCreateLines(List<MerchantSettlementBillLine> lines);

    /**
     * 统计结算单下明细笔数。
     */
    long countBySettlementBillId(String settlementBillId);

    /**
     * 分页查询构成明细。
     */
    Page<MerchantSettlementBillLine> findPage(Page<MerchantSettlementBillLine> page,
            MerchantSettlementBillLineQueryVO query);
}
