package com.crm.web.service;

import com.crm.rely.backend.core.dto.base.ResultWithPagerDto;
import com.crm.rely.backend.core.exception.ServiceException;
import com.crm.rely.backend.model.dto.web.custom.analysis.WebCustomAnalysisInteractionDto;
import com.crm.rely.backend.model.dto.web.custom.analysis.WebCustomAnalysisSearchDto;
import com.crm.rely.backend.model.entity.web.custom.analysis.*;
import com.crm.rely.backend.model.pojo.table.WebCustomAnalysisTable;

import java.util.List;

public interface WebCustomAnalysisService {
    WebCustomAnalysisSearchDto searchSingle(Long id) throws ServiceException;

    WebCustomAnalysisTable getById(Long id) throws ServiceException;

    ResultWithPagerDto<WebCustomAnalysisSearchDto> pageSearchList(WebCustomAnalysisSearchListEntity entity) throws ServiceException;

    List<WebCustomAnalysisSearchDto> searchList(WebCustomAnalysisSearchListEntity entity) throws ServiceException;

    void add(WebCustomAnalysisAddEntity entity) throws ServiceException;

    void update(WebCustomAnalysisUpdateEntity entity) throws ServiceException;
    void update(WebCustomAnalysisManagerUpdateNumEntity entity) throws ServiceException;
    WebCustomAnalysisInteractionDto interaction(WebCustomAnalysisInteractionEntity entity) throws ServiceException;

    void approve(WebCustomAnalysisApproveEntity entity) throws ServiceException;

    void delete(WebCustomAnalysisDeleteEntity entity) throws ServiceException;
}
