using Hotline.CallCenter.Tels;
using Hotline.Share.Dtos.TrCallCenter;
using Hotline.Share.Dtos.Users;

namespace Hotline.Users
{
    public interface IUserDomainService
    {
        /// <summary>
        /// 上班
        /// </summary>
        /// <param name="userId">userId</param>
        /// <param name="tel"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        Task OnDutyAsync(string userId, Tel tel, CancellationToken cancellationToken);

        /// <summary>
        /// 下班
        /// </summary>
        /// <param name="userId"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        Task<WorkDto?> OffDutyAsync(string userId, CancellationToken cancellationToken);

        #region 添添呼
        
        /// <summary>
        /// 下班
        /// </summary>
        /// <param name="userId"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        Task TrOffDutyAsync(string userId, CancellationToken cancellationToken);

        #endregion
    }
}
