
package com.jwipc.finance.logic;

import com.jwipc.finance.dto.CostMatchingDTO;
import com.jwipc.finance.dto.CostMatchingParamDTO;
import com.jwipc.finance.model.query.CostMatchingQuery;
import com.jwipc.page.PageView;

/**
 * @author shenyang.ou
 * @date 2025/10/22 15:29
 * @desc
 */
public interface CostMatchingLogic {
    PageView findByPage(CostMatchingQuery query);

    void saveOrUpdate(CostMatchingParamDTO param);

    void toImg(Long id);

    void deleteImg(Long id);

    void remove(Long id);

    void pushConfirm(Long id);

    CostMatchingDTO getById(Long id);

    void financeConfirm(CostMatchingParamDTO param);

    /**
     * 匹配单删除
     *
     * @param ids ID
     * @param logicDelete 是否逻辑删除
     */
    void dataDel(String ids, Boolean logicDelete);

    void createPrefabricateInvoice(Long aLong, Integer type, String invoicePostDate, String statementType);
}
