package com.prolog.cs.base.gsp.resource;

import com.prolog.cs.base.gsp.vo.EisPushTaskVO;
import com.prolog.cs.biz.outbound.model.dto.ContainerConfirmDto;
import com.prolog.entity.vo.OutBoundRequestVO;
import com.prolog.framework.common.message.RestMessage;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;

import java.util.List;

@FeignClient(value = "${prolog.service.operate}")
public interface EisResource {

    /**
     * EIS出库任务推送
     *
     * @return {@link RestMessage}<{@link Object}>
     */
    @PostMapping("/wms/v1.0/eis/pushTask")
    RestMessage<Object> pushTask(@RequestBody List<EisPushTaskVO> list);


    /**
     * EIS作业完成确认接口
     *
     * @return {@link RestMessage}<{@link Object}>
     */
    @PostMapping("/wms/v1.0/eis/taskFinishedConfirm")
    RestMessage<Object> taskFinishedConfirm(@RequestBody ContainerConfirmDto vo);

    @ApiOperation("EIS出库任务推送")
    @PostMapping("/wms/v1.0/eis/outBoundRequest")
    RestMessage<Object> outBoundRequest(@RequestBody List<OutBoundRequestVO> list);

}