package com.ads.business.service;

import com.ads.business.entity.Conversation;
import com.ads.business.service.model.request.ConversationAddRequest;
import com.ads.business.service.model.request.ConversationListRequest;
import com.ads.business.service.model.response.ConversationDetail;
import com.ads.business.service.model.response.ConversationDropListResponse;
import com.ads.common.data.JsonResult;
import com.ads.common.dingTalk.domain.ServiceResult;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * <p>
 * 会话表 服务类
 * </p>
 *
 * @author hou
 * @since 2021-11-18
 */
public interface ConversationService extends IService<Conversation> {


    /***
     * 创建会话
     * @param request
     * @return
     */
    JsonResult create(ConversationAddRequest request);

    /***
     * 会话管理列表
     * @param request
     * @return
     */
    JsonResult selectList(ConversationListRequest request);

    /***
     * 会话详情
     * @param chatId
     * @return
     */
    JsonResult<ConversationDetail> detail(String chatId);

    /***
     * 同步会话信息
     * @param chatId
     * @return
     */
    JsonResult sync(String chatId);

    /**
     * 一键同步会话信息
     * @param conversationName
     * @param ownerName
     * @return
     */
    JsonResult batchSync(String conversationName, String ownerName);

    /***
     * 会话下拉列表
     * @return
     */
    List<ConversationDropListResponse> getDropList();
}
