package com.testor.module.contractor.manage.service;


import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.testor.module.contractor.manage.model.domain.TContractorAllow;
import com.testor.module.contractor.manage.model.dto.TContractorAllowDTO;
import com.testor.module.contractor.manage.model.dto.TContractorAllowParam;
import com.testor.module.contractor.manage.model.dto.TContractorAllowPersonParam;
import com.tongtech.tfw.backend.common.exception.BusinessException;
import com.tongtech.tfw.backend.common.models.supers.SuperService;

/**
 * 准入管理Service接口
 * 
 * @author testor-framework
 * @date 2024-11-26 14:07:35
 */
public interface TContractorAllowService extends SuperService<TContractorAllow> {

    Page<TContractorAllowDTO> pageList(TContractorAllowParam param);

    void submit(TContractorAllowParam tContractorAllow);

    void completeProcess(TContractorAllowParam tContractorAllowParam);


    /**
     * 删除准入记录并回滚流程
     * @param allowId
     * @param deleteReason
     * @param operator
     */
    void deleteAdmissionAndRollback(String allowId) throws BusinessException;
}
