using DS.Module.Core;
using DS.WMS.Core.Op.Dtos;
using DS.WMS.Core.Op.Interface;
using Microsoft.AspNetCore.Mvc;
namespace DS.WMS.OpApi.Controllers
{
///
/// 预订舱马士基API即期订舱
///
public class SpaceBookingMSKAPISpotController : ApiController
{
private readonly ISpaceBookingMSKSPOTAPIService _spaceBookingMSKSPOTAPIService;
public SpaceBookingMSKAPISpotController(ISpaceBookingMSKSPOTAPIService spaceBookingMSKSPOTAPIService)
{
_spaceBookingMSKSPOTAPIService = spaceBookingMSKSPOTAPIService;
}
#region 检索海运船期详情
///
/// 检索海运船期详情
///
/// 请求船期详情
/// 返回船期结果
[HttpPost]
[Route("SearchShipSailingSchedule")]
public async Task>> SearchShipSailingSchedule(QueryMSKSPOTShipDateDto model)
{
return await _spaceBookingMSKSPOTAPIService.SearchShipSailingSchedule(model);
}
#endregion
#region 发送马士基订舱请求
///
/// 发送马士基订舱请求
///
/// 请求订舱详情
/// 返回检索结果
[HttpPost]
[Route("SendMSKBooking")]
public async Task> SendMSKBooking(MSKSPOTBookingDto model)
{
return await _spaceBookingMSKSPOTAPIService.SendMSKBooking(model);
}
#endregion
#region 检索商品名称
///
/// 检索商品名称
///
/// 请求详情
/// 返回检索结果
[HttpPost]
[Route("SearchCommodities")]
public async Task>> SearchCommodities(QueryCommoditiesDto model)
{
return await _spaceBookingMSKSPOTAPIService.SearchCommodities(model);
}
#endregion
#region 检索始发地、目的港口信息
///
/// 检索始发地、目的港口信息
///
/// 请求详情
/// 返回检索结果
[HttpPost]
[Route("SearchLocations")]
public async Task>> SearchLocations(QuerySPOTLocationsDto model)
{
return await _spaceBookingMSKSPOTAPIService.SearchLocations(model);
}
#endregion
#region 获取马士基API订舱详情
///
/// 获取马士基API订舱详情
///
/// 马士基API订舱ID
/// 返回详情
[HttpGet]
[Route("GetInfo")]
public async Task> GetInfo(long id)
{
return await _spaceBookingMSKSPOTAPIService.GetInfo(id);
}
#endregion
#region 保存
///
/// 保存
///
/// 请求订舱详情
/// 返回ID
[HttpPost]
[Route("Save")]
public async Task> Save([FromBody] MSKSPOTBookingDto model)
{
return await _spaceBookingMSKSPOTAPIService.Save(model);
}
#endregion
#region 删除
///
/// 删除
///
/// 请求订舱ID
///
[HttpGet]
[Route("Delete")]
public async Task> Delete(long id)
{
return await _spaceBookingMSKSPOTAPIService.Delete(id);
}
#endregion
#region 批量发送API前调取校验预警
///
/// 批量发送API前调取校验预警
///
/// 马士基API订舱ID组
/// 返回提示信息
[HttpPost]
[Route("CheckWarningBatchSend")]
public async Task> CheckWarningBatchSend([FromBody] long[] ids)
{
return await _spaceBookingMSKSPOTAPIService.CheckWarningBatchSend(ids);
}
#endregion
#region 批量发送
///
/// 批量发送
///
/// 马士基API订舱ID组
/// 返回执行结果消息
[HttpPost]
[Route("BatchSend")]
public async Task> BatchSend([FromBody] long[] ids)
{
return await _spaceBookingMSKSPOTAPIService.BatchSend(ids);
}
#endregion
#region 批量复制前调取校验预警
///
/// 批量复制前调取校验预警
///
/// 马士基API批量复制指定数据
/// 返回提示信息
[HttpPost]
[Route("CheckWarningBatchCopy")]
public async Task> CheckWarningBatchCopy(MSKAPISPOTBookingCopyDto model)
{
return await _spaceBookingMSKSPOTAPIService.CheckWarningBatchCopy(model);
}
#endregion
#region 批量复制
///
/// 批量复制
///
/// 马士基API批量复制指定数据
/// 返回执行结果消息
[HttpPost]
[Route("BatchCopy")]
public async Task> BatchCopy(MSKAPISPOTBookingCopyDto model)
{
return await _spaceBookingMSKSPOTAPIService.BatchCopy(model);
}
#endregion
#region 同步BC状态(BC,Cancellation)
///
/// 同步BC状态(BC,Cancellation)
///
/// 提单号
/// 租户ID
/// 操作类型 BC-同步BC状态 Cancellation-同步取消状态
/// 返回回执
[HttpGet]
[Route("SyncBCInfo")]
public async Task> SyncBCInfo(string mblno, long tenantId, string opTypeName = "BookingConfirmation")
{
return await _spaceBookingMSKSPOTAPIService.SyncBCInfo(mblno, tenantId, opTypeName);
}
#endregion
#region 获取初始化页面默认值
///
/// 获取初始化页面默认值
///
/// 返回详情
[HttpGet]
[Route("GetInitInfo")]
public async Task> GetInitInfo()
{
return await _spaceBookingMSKSPOTAPIService.GetInitInfo();
}
#endregion
}
}