package com.bonus.material.push.service;

import com.bonus.common.core.web.domain.AjaxResult;
import com.bonus.material.clz.domain.vo.MaterialRetainedEquipmentInfo;
import com.bonus.material.push.domain.IwsCostPushBean;

import java.util.List;

/**
 * @author : 阮世耀
 * @version : 1.0
 * @PackagePath: com.bonus.material.push.service
 * @CreateTime: 2025-01-23  14:48
 * @Description: i皖送推送server 接口
 */
public interface IwsCostPushService {

    /**
     * 协议推送匹配列表
     */
    List<IwsCostPushBean> findAgreement(IwsCostPushBean o);

    /**
     * 查询费用推送审核数据列表
     */
    List<IwsCostPushBean> getCostPushCheckList(IwsCostPushBean o);

    /**
     * 计算月结费用
     */
    AjaxResult computeTheMonthCost(IwsCostPushBean costDto);

    /**
     * 根据协议ID及月份查询当月租赁费用明细
     */
    List<IwsCostPushBean> getLeaseCostsByAgreementIdAndMonth(IwsCostPushBean record);

    /**
     * 根据工程查询领用信息
     */
    List<IwsCostPushBean> getProLeaseInfo(IwsCostPushBean record);

    /**
     * 根据机具类型查询机具列表接口
     */
    List<MaterialRetainedEquipmentInfo> getEquipmentListByType(IwsCostPushBean record);

    /**
     * 根据工程/往来单位/协议号查询机具信息
     */
    List<MaterialRetainedEquipmentInfo> getEquipmentListByAgreementCode(IwsCostPushBean record);
}
