package com.fjhx.account.service.account;

import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.fjhx.account.entity.account.dto.AccountRequestFundsDetailDto;
import com.fjhx.account.entity.account.dto.AccountRequestFundsDetailSelectDto;
import com.fjhx.account.entity.account.po.AccountRequestFundsDetail;
import com.fjhx.account.entity.account.vo.AccountRequestFundsDetailVo;
import com.ruoyi.common.core.service.BaseService;

import java.util.List;


/**
 * <p>
 *  服务类
 * </p>
 *
 * @author
 * @since 2023-04-10
 */
public interface AccountRequestFundsDetailService extends BaseService<AccountRequestFundsDetail> {

    /**
     * 分页
     */
    Page<AccountRequestFundsDetailVo> getPage(AccountRequestFundsDetailSelectDto dto);

    /**
     * 明细
     */
    AccountRequestFundsDetailVo detail(Long id);

    /**
     * 新增
     */
    void add(AccountRequestFundsDetailDto accountRequestFundsDetailDto);

    /**
     * 编辑
     */
    void edit(AccountRequestFundsDetailDto accountRequestFundsDetailDto);

    /**
     * 删除
     */
    void delete(Long id);

    /**
     * 根据合同ID获取列表
     * @param contractId
     * @return
     */
    List<AccountRequestFundsDetailVo> getListByContractId(Long contractId);

    /**
     * 根据请款id获取请款明细列表
     */
    List<AccountRequestFundsDetailVo> listByAccountRequestFundsId(Long accountRequestFundsId);

    /**
     * 获取到请款明细信息
     * @param eq
     * @return
     */
    List<AccountRequestFundsDetail> getList(LambdaQueryWrapper<AccountRequestFundsDetail> eq);

}
