package cn.estsh.i3plus.ext.mes.pcn.api.busi;

import cn.estsh.i3plus.ext.mes.pcn.pojo.model.MesSortShippingCheckModel;
import cn.estsh.i3plus.pojo.mes.bean.MesJisShipping;
import cn.estsh.i3plus.pojo.mes.bean.shipping.MesShippingOrderManagement;
import cn.estsh.i3plus.pojo.mes.bean.shipping.MesShippingOrderManagementDetail;
import io.swagger.annotations.ApiOperation;

import java.util.List;

/**
 * @Description :
 * @Reference :
 * @Author :
 * @CreateDate : 2024-04-26 15:37
 * @Modify:
 **/
public interface IMesSortShippingCheckService {

    @ApiOperation(value = "扫描发运单")
    MesSortShippingCheckModel doShippingOrderNoQuery(MesShippingOrderManagement shippingOrderManagement);

    @ApiOperation(value = "保存料架条码")
    MesSortShippingCheckModel saveRackNo(MesSortShippingCheckModel model, String organizeCode, String userInfo);

    @ApiOperation(value = "保存条码")
    MesSortShippingCheckModel saveSn(MesSortShippingCheckModel model);

    @ApiOperation(value = "保存条码和位置码")
    MesSortShippingCheckModel saveSnAndLocationCode(MesSortShippingCheckModel model, String organizeCode, String userInfo);

    @ApiOperation(value = "查询发运单-自动推单")
    MesShippingOrderManagement queryShippingOrderNoByAutoPushOrder(String shippingGroupNo, String org);

    @ApiOperation("保存发运数据")
    List<MesJisShipping> getMesJisShippings(MesShippingOrderManagement mesShippingOrderManagement,List<MesShippingOrderManagementDetail> shippingOrderManagementDetails,String userName);

    void update(MesShippingOrderManagement item);

    void updateDetail(MesShippingOrderManagementDetail item);

    @ApiOperation(value = "待发运列表")
    MesSortShippingCheckModel getSortShippingQueueList(MesSortShippingCheckModel model);

}
