package com.prolog.rdc.tms.service.message;

import com.prolog.framework.core.pojo.Page;
import com.prolog.rdc.tms.model.dto.message.MessageConfigDTO;
import com.prolog.rdc.tms.model.vo.message.DeleteMessageConfigVO;
import com.prolog.rdc.tms.model.vo.message.MessageConfigQueryVO;
import com.prolog.rdc.tms.model.vo.message.SaveMessageConfigVO;
import com.prolog.rdc.tms.model.vo.message.UpdateMessageConfigStatusVO;

/**
 * @author hongbo.pan
 * @date 2022/11/15
 */
public interface MessageConfigService {

    /**
     * 新增或修改消息配置
     * @param vo
     */
    void save(SaveMessageConfigVO vo);

    /**
     * 停用或启用消息配置
     * @param vo
     */
    void updateStatus(UpdateMessageConfigStatusVO vo);

    /**
     * 删除消息配置
     * @param vo
     */
    void delete(DeleteMessageConfigVO vo);

    /**
     * 查询消息配置
     * @param vo
     * @return
     */
    Page<MessageConfigDTO> query(MessageConfigQueryVO vo);

    /**
     * findById
     * @param messageConfigId
     * @return
     */
    MessageConfigDTO findById(Long messageConfigId);
}
