package com.prolog.eis.service.shelves;

import com.prolog.eis.core.dto.route.CarryTaskCallbackDto;

/**
 * @author ：cb
 * @date ：Created in 2022/6/16 15:25
 */
public interface PalletMoveExecuteService {

    /**
     * 
     * Description: 货架发往目标站台<br/>
     *
     * @param palletNo
     * @param areaNo 起始区域
     * @param targetAreaNo
     * @param targetPlane
     * @param stationDir 站台角度
     * @return
     */
    Boolean palletArriveIng(String palletNo, String areaNo, String targetAreaNo, String targetPlane, int stationDir,
            int taskType);

    /**
     * 货架离开站台
     *
     * @param palletNo
     * @return
     */
    Boolean palletLeaveIng(String palletNo, String areaNo, int taskType, String itemHealthCategory);

    /**
     * 货架旋转
     *
     * @param palletNo
     * @param targetPlane 目标面，（旋转时为货架当前面的反面）
     * @param stationDir
     * @return
     */
    Boolean palletRotate(String palletNo, String areaNo, String targetPlane, int stationDir);


    /**
     * 货架移动完成
     *
     * @param carryTask
     */
    void palletMoveComplete(CarryTaskCallbackDto carryTask);

}