package com.wms_main.service.controller;

import com.wms_main.model.bo.wcs.WcsStackerTask;
import com.wms_main.model.dto.request.wcs.WcsBoxArriveRequest;
import com.wms_main.model.dto.request.wcs.WcsTaskResultRequest;
import com.wms_main.model.dto.request.wcs.WcsVehicleInRequest;
import com.wms_main.model.dto.request.wms.*;
import com.wms_main.model.dto.response.wcs.BaseWcsApiResponse;
import com.wms_main.model.dto.response.wcs.WcsApiResponse;
import com.wms_main.model.dto.response.wms.BaseWmsApiResponse;
import com.wms_main.model.dto.response.wms.WmsApiResponse;
import com.wms_main.model.vo.wms.TaskConfirmVo;

/**
 * 任务控制类 服务接口
 */
public interface ITaskControllerService {
    /**
     * 入库请求
     * @param stockInRequest 请求信息
     * @return 处理结果
     */
    BaseWmsApiResponse requireStockIn(StockInRequest stockInRequest);

    /**
     * 出库请求
     * @param stockOutRequest 请求信息
     * @return 处理结果
     */
    BaseWmsApiResponse requireStockOut(StockOutRequest stockOutRequest);

    /**
     * 接收wcs反馈任务状态
     * @param wcsTaskResultRequest 请求信息
     * @return 处理结果
     */
    BaseWcsApiResponse sendTaskResult(WcsTaskResultRequest wcsTaskResultRequest);
}
