package com.shkj.wms.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.shkj.wms.bo.BaseBarcodesOutAddBo;
import com.shkj.wms.bo.BaseBarcodesOutQueryBo;
import com.shkj.wms.bo.BaseBarcodesOutThirdPointBo;
import com.shkj.wms.bo.BaseBarcodesOutThirdSyncBo;
import com.shkj.wms.domain.BaseBarcodesOut;
import com.shkj.wms.third.ykl.ThirdYklResult;
import com.shkj.wms.vo.BaseBarcodesOutVo;

import java.util.List;

/**
 * 出库条码信息Service接口
 *
 * @author zjx
 * @date 2023-04-06
 */
public interface IBaseBarcodesOutService  extends IService<BaseBarcodesOut> {


    /**
     * PQM系统实时向立体库推送纠正信息
     *
     * @param bo 出库信息过点时间
     * @return 是否成功
     */
    ThirdYklResult thirdSyncBaseBarcodesOutPoint(List<BaseBarcodesOutThirdPointBo> bo);

    /**
     * PQM系统定时向立体库推送车辆队列信息
     * @param bo 出库条码信息
     * @return 是否成功
     */
    ThirdYklResult thirdSyncBaseBarcodesOut(List<BaseBarcodesOutThirdSyncBo> bo);

    /**
     * 根据车型代码/派生查询待出库数据
     * @param bo 出库条码信息
     * @return 是否成功
     */
    List<BaseBarcodesOutVo> getBarcodesOutData(BaseBarcodesOutQueryBo bo);

    /**
     * 查询当前状态为初始化的数据
     */
    List<BaseBarcodesOutVo> getBarcodesnoOutData();

    /**
     * 查询待出库的队列
     */
    List<BaseBarcodesOutAddBo> selectVinOutboundList();


}
