using DS.Module.Core;
using DS.Module.Core.Data;
using DS.WMS.Core.Flow.Dtos;
using DS.WMS.Core.Op.Dtos;
using DS.WMS.Core.Op.Interface;
using Microsoft.AspNetCore.Mvc;
namespace DS.WMS.OpApi.Controllers
{
///
/// 海运出口改配退舱服务
///
public class SeaExportRefundController : ApiController
{
private readonly ISeaExportRefundService _invokeService;
///
/// 构造函数
///
///
public SeaExportRefundController(ISeaExportRefundService invokeService)
{
_invokeService = invokeService;
}
///
/// 列表
///
///
///
[HttpPost]
[Route("GetSeaExportRefundList")]
public async Task> GetSeaExportRefundList([FromBody] PageRequest request)
{
var res = await _invokeService.GetListByPage(request);
return res;
}
///
/// 详情
///
///
///
[HttpGet]
[Route("GetSeaExportRefundInfo")]
public async Task> GetSeaExportRefundInfo([FromQuery] string id)
{
var res = await _invokeService.GetSeaExportRefundInfo(id);
return res;
}
///
/// 创建退舱审核任务
///
///
///
[HttpPost]
[Route("CreateRefundAuditTask")]
public async Task CreateRefundAuditTaskAsync([FromBody] RefundTaskReq req)
{
var res =await _invokeService.CreateRefundAuditTaskAsync(req);
return res;
}
///
/// 退仓审核完成回调
///
///
///
[HttpPost]
[Route("RefundAuditCallback")]
public async Task RefundAuditCallbackAsync([FromBody] FlowCallback req)
{
var res = await _invokeService.RefundAuditCallbackAsync(req);
return res;
}
///
/// 获取改配订单状态
///
/// 业务Id
///
[HttpGet]
[Route("GetChangeOrderStatus")]
public async Task> GetChangeOrderStatus([FromQuery] long id)
{
var res = await _invokeService.GetChangeOrderStatus(id);
return res;
}
///
/// 发起改配任务
///
///
///
[HttpPost]
[Route("CreateChangeTaskAsync")]
public async Task CreateChangeTaskAsync([FromBody] ChangeTaskReq req)
{
return await _invokeService.CreateChangeTaskAsync(req);
}
///
/// 退舱入池
///
///
///
[HttpPost]
[Route("RefundPool")]
public async Task RefundPool([FromBody] IdModel req)
{
return await _invokeService.RefundPoolAsync(req);
}
///
/// 创建退舱确认任务
///
///
///
[HttpPost]
[Route("CreateRefundConfirm")]
public async Task CreateRefundConfirm([FromBody] IdModel req)
{
return await _invokeService.CreateRefundConfirmAsync(req);
}
}
}