package com.hfkj.service;

import com.hfkj.entity.BsAudit;
import com.hfkj.model.BsAuditModel;

import java.util.List;
import java.util.Map;

/**
 * @className: BsAuditService
 * @author: HuRui
 * @date: 2023/5/9
 **/
public interface BsAuditService {

    /**
     * 编辑数据
     * @param audit
     */
    void editData(BsAudit audit);

    /**
     * 创建审核
     * @param audit
     */
    BsAudit createAudit(BsAudit audit);

    /**
     * 审核通过
     * @param auditId   审批id
     */
    void approve(Long auditId);

    /**
     * 审批通过回调
     * @param audit
     */
    void approveCallback(BsAudit audit);

    /**
     * 审核拒绝
     * @param auditId       审批id
     * @param rejectReason  拒绝原因
     */
    void reject(Long auditId, String rejectReason);

    /**
     * 审批驳回回调
     * @param audit
     */
    void rejectCallback(BsAudit audit);

    /**
     * 审核编号
     * @param auditId   审批id
     * @return
     */
    BsAudit getAuditDetailById(Long auditId);

    /**
     * 审核编号
     * @param auditNo   审批编号
     * @return
     */
    BsAuditModel getAuditDetailByNo(String auditNo);

    /**
     * 查询审核列表
     * @param param
     * @return
     */
    List<BsAudit> getAuditList(Map<String,Object> param);
}

