package com.sw.mes.yb.fls.service;

import com.sw.mes.yb.fls.dto.*;
import com.sw.mes.yb.fls.utils.FlsResultDto;
import com.sw.mes.yb.fls.utils.ResultDto;
import com.sw.mes.yb.plan.dto.PlanWaterLineManageToWmsDto;

import java.util.List;

/**
 * @Author: GaoXinJian
 * @Date: 2022-02-16 12:28
 */
public interface MesToFlsService {
    /**
     * 开方退料叫车
     *
     * 开方退库反馈后，呼叫AGV退料
     * @param callAGVDto
     * @return
     */
    ResultDto callAgv(CallAGVDto callAGVDto);

    /**
     * 开方退料确认状态下发fls
     *
     * @param kfReturnMaterialStatusDto
     * @return
     */
    ResultDto kfReturnMaterialStatusOut(KfReturnMaterialStatusDto kfReturnMaterialStatusDto);

    FlsResultDto unbindBracketNo(BracketNoRequestDto bracketNoRequestDto);

    FlsResultDto recycledMaterialToAGV(RecycledMaterialToAGVDtos recycledMaterialToAGVDto);

    FlsResultDto sendSectionForInfo(BracketNoToFlsDto bracketNoToFlsDto);

    /**
     * 订单水位下发
     *
     *
     * 订单水位变动后，MES将新的水位设置发送至fls
     * @param planWaterLineManageToWmsDto
     * @return
     */
    FlsResultDto planWaterLineManageToWmsDto(PlanWaterLineManageToWmsDto planWaterLineManageToWmsDto);
}
