package cn.superdesk.uniorder.service.thirdpart.qchjc.statistics;

import cn.superdesk.uniorder.common.rest.response.R;
import cn.superdesk.uniorder.common.security.dto.LoginSysUser;
import cn.superdesk.uniorder.dao.entity.sys.notify.SysNotify;
import cn.superdesk.uniorder.dto.param.accounting.statistics.ReceivableDetailDataQueryParam;
import cn.superdesk.uniorder.dto.param.accounting.statistics.ReceivableStatisticsPageQueryParam;
import cn.superdesk.uniorder.dto.vo._statistics.payable.PayableStatisticsPageVo;

import java.util.List;

/**
 * @author xc
 * @description
 * @date 2022/4/1 11:43
 */
public interface PayableStatisticsService {



    /**
     * 保存应付明细数据
     */
    void savePayableDetailData(ReceivableDetailDataQueryParam queryParam, LoginSysUser loginSysUser);


    /**
     * 查询应付明细数据queryReceivableDetailData
     * @return
     */
    //List<PayableDetailDataVo> queryPayableDetailData(ReceivableDetailDataQueryParam queryParam);


    /**
     * 应付明细数据定时任务到每日数据
     */
    void savePrayableDetailDataToDayData(ReceivableDetailDataQueryParam queryParam, LoginSysUser loginSysUser);

    R<List<PayableStatisticsPageVo>> getPayableStatisticsPageVoList(ReceivableStatisticsPageQueryParam queryParam);


    SysNotify getPayableStatisExcel(ReceivableStatisticsPageQueryParam queryParam);


    void payableReturnedMoney(ReceivableDetailDataQueryParam queryParam, LoginSysUser loginSysUser);

    void payableCancelAccounting(ReceivableDetailDataQueryParam queryParam, LoginSysUser loginSysUser);


}
