package com.tofly.gpsboot.service.mq;


import com.tofly.pojo.maintain.Repairorder;
import com.tofly.pojo.plan.Plan;

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

/**
 * @author Zev
 */
public interface IPlanMessageService {
    /**
     * 计划任务发送
     *
     * @param planList
     */
    void planSendMessage(List<Plan> planList);


    /**
     * 隐患任务发送
     *
     * @param planList
     */
    void planSendMessageTrouble(List<Plan> planList);

    /**
     * 工地监护任务发送
     *
     * @param planList
     */
    void planSendMessageBuild(List<Plan> planList);

    /**
     * 抢维修任务发送
     *
     * @param data
     */
    void orderSendMessage(String data);

    /**
     * 工单驳回发送
     * @param repairOrder
     * @param notes
     */
    void orderRejectedSendMessage(Repairorder repairOrder,String notes);

    /**
     * 工单转发发送
     * @param repairOrder
     * @param notes
     */
    void orderForwardingSendMessage(Repairorder repairOrder,Long forwardingUserId,String notes);

    /**
     * 应急工单派工发送
     * @param planId 应急工单id
     * @param auditUserId 派工人
     * @param userIdSet 协调处理人+主要负责人
     * @param disUserId 主要负责人
     * @param messageNote 消息内容
     */
    void emergencySendMessage(Long planId,Long auditUserId, Set<Long> userIdSet,Long disUserId,String messageNote);

    /**
     * 巡检计划加急督办
     * @param planId
     * @param planState
     * @param userIds
     */
    void planUrgent(Long planId,String planState,String userIds);
}
