package com.ho.flow.service;

import com.ho.common.tools.util.PageResult;
import com.ho.flow.entity.SendSmsConfig;
import com.ho.flow.vo.req.SendSmsConfig.SendSmsConfigQueryReq;
import com.ho.flow.vo.resp.SendSmsConfig.SendSmsConfigRsp;

import java.util.List;

public interface SendSmsConfigService {

    /**
     * 根据条件分页查询发送短信配置
     * @param vo
     * @return
     */
    PageResult<SendSmsConfigRsp> getPageList(SendSmsConfigQueryReq vo);

    /**
     * 根据条件查询发送短信配置
     * @param vo
     * @return
     */
    List<SendSmsConfigRsp> getList(SendSmsConfigQueryReq vo);

    /**
     * 批量插入短信配置
     * @param list
     */
    void insertList(List<SendSmsConfig> list);

    /**
     * 更新短信配置根据主键id
     * @param vo
     * @return
     */
    int updateById(SendSmsConfig vo);

    /**
     * 更加userId更新短信配置中用户信息
     * @param vo
     * @return
     */
    int updateByUserId(SendSmsConfig vo);

    /**
     * 根据id批量删除
     * @param ids
     * @return
     */
    int deleteList(List<Integer> ids);

    void sendSms(SendSmsConfigQueryReq vo);
}
