59 lines
1.3 KiB
Java
59 lines
1.3 KiB
Java
package org.dromara.crm.service;
|
|
|
|
import org.dromara.crm.domain.bo.CrmQuoteApprovalBo;
|
|
import org.dromara.crm.domain.vo.CrmQuoteApprovalVo;
|
|
|
|
import java.util.List;
|
|
|
|
/**
|
|
* 报价单审批Service接口
|
|
*
|
|
* @author 系统管理员
|
|
* @date 2025-01-03
|
|
*/
|
|
public interface ICrmQuoteApprovalService {
|
|
|
|
/**
|
|
* 查询审批记录列表
|
|
*/
|
|
List<CrmQuoteApprovalVo> queryListByQuoteId(Long quoteId);
|
|
|
|
/**
|
|
* 审批报价单
|
|
*/
|
|
Boolean approveQuote(Long id, String approvalResult, String approvalOpinion, String remark);
|
|
|
|
/**
|
|
* 撤回审批
|
|
*/
|
|
Boolean withdrawApproval(Long quoteId, String remark);
|
|
|
|
/**
|
|
* 创建审批记录
|
|
*/
|
|
Boolean createApprovalRecords(Long quoteId, List<Long> approverIds);
|
|
|
|
/**
|
|
* 删除待审批记录
|
|
*/
|
|
Boolean deletePendingApprovals(Long quoteId);
|
|
|
|
/**
|
|
* 刷新审批人姓名(修复旧数据)
|
|
*
|
|
* @param quoteId 报价单ID(可选,为空则刷新所有)
|
|
* @return 更新数量
|
|
*/
|
|
Integer refreshApproverNames(Long quoteId);
|
|
|
|
/**
|
|
* 检查用户是否可以审批指定报价单
|
|
*
|
|
* @param quoteId 报价单ID
|
|
* @param userId 用户ID
|
|
* @return true-可以审批,false-不能审批
|
|
*/
|
|
Boolean canUserApprove(Long quoteId, Long userId);
|
|
|
|
}
|