package com.sqx.modules.errand.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.sqx.common.sms.SmsSendResult;
import com.sqx.common.utils.PageUtils;
import com.sqx.modules.errand.dto.SmsCountQueryDTO;
import com.sqx.modules.errand.dto.SmsLogQueryDTO;
import com.sqx.modules.errand.entity.TbIndentSmsSendLog;

public interface TbIndentSmsSendLogService extends IService<TbIndentSmsSendLog> {

    PageUtils logPage(SmsLogQueryDTO queryDTO);

    /**
     * 保存短信发送日志
     * @param indentId 跑腿订单id
     * @param sourceType 发送来源 1骑手、2商家
     * @param smsSendResult 短信发送结果
     */
    void saveLog(Long indentId, String sourceType, SmsSendResult smsSendResult);

    /**
     * 统计发送成功的短信条数
     * @param queryDTO 查询参数
     * @return count
     */
    int countOfSendSuccess(SmsCountQueryDTO queryDTO);

    /**
     * 根据订单id获取发送成功的短信
     * @param indentId 跑腿订单id
     * @return 信息
     */
    TbIndentSmsSendLog getSendSuccessByOrderId(Long indentId);
}
