package com.qmth.sop.business.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.qmth.sop.business.bean.result.FlowTaskSmsResult;
import com.qmth.sop.business.bean.result.WorkTaskResult;
import com.qmth.sop.business.entity.TSJobRemind;

import java.util.List;
import java.util.Set;

/**
 * <p>
 * 任务提醒表 服务类
 * </p>
 *
 * @author wangliang
 * @since 2023-08-16
 */
public interface TSJobRemindService extends IService<TSJobRemind> {

    /**
     * 保存任务提醒
     *
     * @param tsJobRemindList
     * @return
     */
    Boolean saveJobRemind(List<TSJobRemind> tsJobRemindList);

    /**
     * 根据taskId更新任务提醒
     *
     * @param taskId
     * @return
     */
    Boolean updateJobRemind(Long taskId);

    /**
     * 根据crmNo更新任务提醒
     *
     * @param crmNo
     * @return
     */
    Boolean updateJobRemind(String crmNo);

    /**
     * 获取流程任务发送短信内容
     *
     * @param id
     * @return
     */
    FlowTaskSmsResult getFlowTaskRemindSmsInfo(Long id);

    /**
     * 根据用户id和sop单号集合查找处理时限
     *
     * @param userId
     * @param sopNoSet
     * @return
     */
    List<WorkTaskResult> getJobRemindProcessHour(Long userId, Set<String> sopNoSet);
}
