package com.fs.aiSipCall.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.fs.aiSipCall.domain.AiSipCallUser;
import com.fs.common.core.domain.AjaxResult;

import java.util.List;
import java.util.Map;

/**
 * sip用户信息Service接口
 *
 * @author fs
 * @date 2026-03-13
 */
public interface IAiSipCallUserService extends IService<AiSipCallUser>{
    /**
     * 查询sip用户信息
     *
     * @param userId sip用户信息主键
     * @return sip用户信息
     */
    AiSipCallUser selectAiSipCallUserByUserId(Long userId);

    /**
     * 查询sip用户信息列表
     *
     * @param aiSipCallUser sip用户信息
     * @return sip用户信息集合
     */
    List<AiSipCallUser> selectAiSipCallUserList(AiSipCallUser aiSipCallUser);

    /**
     * 新增sip用户信息
     *
     * @param aiSipCallUser sip用户信息
     * @return 结果
     */
    int insertAiSipCallUser(AiSipCallUser aiSipCallUser);

    /**
     * 修改sip用户信息
     *
     * @param aiSipCallUser sip用户信息
     * @return 结果
     */
    int updateAiSipCallUser(AiSipCallUser aiSipCallUser);

    /**
     * 批量删除sip用户信息
     *
     * @param userIds 需要删除的sip用户信息主键集合
     * @return 结果
     */
    int deleteAiSipCallUserByUserIds(Long[] userIds);

    /**
     * 删除sip用户信息信息
     *
     * @param userId sip用户信息主键
     * @return 结果
     */
    int deleteAiSipCallUserByUserId(Long userId);

    AjaxResult getUnBindExtnum();

    /**
     * 查询aiSIP工具条基础配置参数
     * @param param extNum分机号
     * @param param extNum网关参数
     * @return AjaxResult 结果
     */
    AjaxResult getToolbarBasicParam(Map<String,String> param);
}
