package com.madeu.crm.callLog.map;

import java.util.HashMap;
import java.util.List;

import org.apache.ibatis.annotations.Mapper;

import com.madeu.crm.callLog.dto.CallLogDTO;
import com.madeu.crm.callLog.dto.CallLogSearchDTO;
import com.madeu.crm.callLog.dto.CallLogStatsDTO;
import com.madeu.crm.callLog.dto.CallMemoDTO;

@Mapper
public interface CallLogMAP {
    // 통화 로그 목록 건수 조회
    int getCallLogCnt(CallLogSearchDTO searchDTO);

    // 통화 로그 목록 조회
    List<CallLogDTO> getCallLogList(CallLogSearchDTO searchDTO);

    // 통화 로그 통계 집계
    CallLogStatsDTO getCallLogStats(CallLogSearchDTO searchDTO);

    // 통화 메모 존재 여부 확인
    int getCallMemoCnt(CallMemoDTO memoDTO);

    // 통화 메모 신규 저장
    int saveCallMemo(CallMemoDTO memoDTO);

    // 통화 메모 수정
    int modCallMemo(CallMemoDTO memoDTO);

    // CTI 로그 저장 (Webhook용)
    int putCtiLog(CallLogDTO logDTO);

    // CTI 로그 회원 매핑 업데이트
    int modCtiLogMember(HashMap<String, Object> paramMap);
}
