package com.tofly.ghrq_route.module.rushrepair.service;

import com.tofly.ghrq_route.module.buildManage.domain.BuildFileBean;
import com.tofly.ghrq_route.module.rushrepair.controller.RushRepairCallback;
import com.tofly.ghrq_route.module.rushrepair.domain.RushRepairBean;
import com.tofly.ghrq_route.module.rushrepair.domain.RushRepairBeanList;
import com.tofly.ghrq_route.module.rushrepair.domain.RushRepairExamineList;
import com.tofly.ghrq_route.module.rushrepair.domain.RushRepairProcessBean;
import com.tofly.ghrq_route.module.trouble.domain.TroubleAudioBean;
import com.tofly.ghrq_route.module.trouble.domain.TroublePictureBean;

import java.util.List;

/**
 * @author YCHK
 */
public interface IRushRepairService {

    /**
     * 新建抢维修工单
     */
    public void addBuildJobManage(RushRepairBean repairBean, List<TroublePictureBean> photos, List<TroubleAudioBean> audios, List<BuildFileBean> filesList, RushRepairCallback rushRepairCallback);

    /**
     * 获取抢维修列表
     */
    public void getRushRepairList(int pageindex, int pagesize, RushRepairCallback repairCallback);

    public void getDataList(int state, int pageindex, int pagesize, RushRepairCallback repairCallback);

    public void searchData(String keyWord, int pageindex, int pagesize, RushRepairCallback repairCallback);

    /**
     * 列表详情
     */
    void getDataDetail(String id, RushRepairCallback rushRepairCallback);

    /**
     * 抢维修过程管理
     */
    public void addRushProcessManage(RushRepairProcessBean buildManage, List<TroublePictureBean> photos, List<TroubleAudioBean> audios, List<BuildFileBean> fileBeanList, RushRepairCallback repairCallback);

    /**
     * 更新抢维修状态
     */
    public void updateRushProcessState(RushRepairBean repairBean, RushRepairCallback repairCallback);

    /**
     * 获取抢维修负责人列表
     */
    public void getRushrenList(RushRepairCallback buildManageCallback);

    /**
     * 抢维修工单派工
     */
    void getRushDispatch(RushRepairBeanList rushRepairBean, RushRepairCallback repairCallback);

    /**
     * 抢维修工单审核
     */
    void getRushExamine(RushRepairExamineList examinesBean, List<BuildFileBean> data, RushRepairCallback repairCallback);

}
