package cn.iocoder.yudao.module.crm.service.cancellation; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.module.crm.controller.admin.cancellation.vo.CrmCancellationAuditReqVO; import cn.iocoder.yudao.module.crm.controller.admin.cancellation.vo.CrmCancellationPageReqVO; import cn.iocoder.yudao.module.crm.controller.admin.cancellation.vo.CrmCancellationRespVO; import cn.iocoder.yudao.module.crm.controller.admin.cancellation.vo.CrmCancellationSaveReqVO; import jakarta.validation.Valid; import java.util.List; import java.util.Map; public interface CrmCancellationService { Long createCancellation(@Valid CrmCancellationSaveReqVO createReqVO); void updateCancellation(@Valid CrmCancellationSaveReqVO updateReqVO); void deleteCancellation(Long id); CrmCancellationRespVO getCancellation(Long id); PageResult getCancellationPage(CrmCancellationPageReqVO pageReqVO); List getCancellationList(CrmCancellationPageReqVO reqVO); void auditCancellation(@Valid CrmCancellationAuditReqVO auditReqVO); void submitCancellation(Long id, String processDefinitionKey, Long userId); void updateCancellationAuditStatus(Long id, Integer bpmResult); List> getCancellationApproveProcessDefinitionList(); }