You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

163 lines
5.8 KiB
C#

using DS.Module.Core;
4 months ago
using DS.Module.Core.Data;
using DS.WMS.Core.Op.Dtos;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DS.WMS.Core.Op.Interface
{
/// <summary>
/// 马士基API订舱
/// </summary>
public interface ISpaceBookingMSKAPIService
{
/// <summary>
/// 检索海运船期详情
/// </summary>
/// <param name="model">请求船期详情</param>
/// <returns>返回船期结果</returns>
Task<DataResult<List<SearchShipSailingScheduleResultDto>>> SearchShipSailingSchedule(QueryShipSailingScheduleDto model);
/// <summary>
/// 发送马士基订舱请求
/// </summary>
/// <param name="model">请求订舱详情</param>
/// <returns>返回检索结果</returns>
Task<DataResult<MSKBookingResultDto>> SendMSKBooking(MSKBookingDto model);
/// <summary>
/// 检索商品名称
/// </summary>
/// <param name="model">请求详情</param>
/// <returns>返回检索结果</returns>
Task<DataResult<List<SearchCommodityResultDto>>> SearchCommodities(QueryCommoditiesDto model);
/// <summary>
/// 检索始发地、目的港口信息
/// </summary>
/// <param name="model">请求详情</param>
/// <returns>返回检索结果</returns>
Task<DataResult<List<QueryLocationsResultDto>>> SearchLocations(QueryLocationsDto model);
/// <summary>
/// 马士基API订舱台账
/// </summary>
/// <param name="QuerySearch">查询条件</param>
/// <returns>返回台账列表</returns>
Task<DataResult<List<SpaceBookingPageDto>>> GetPageAsync(PageRequest QuerySearch);
/// <summary>
/// 获取马士基API订舱详情
/// </summary>
/// <param name="id">马士基API订舱ID</param>
/// <returns>返回详情</returns>
Task<DataResult<MSKBookingDto>> GetInfo(long id);
/// <summary>
/// 保存
/// </summary>
/// <param name="model">请求订舱详情</param>
/// <returns>返回ID</returns>
Task<DataResult<long>> Save(MSKBookingDto model);
/// <summary>
/// 删除
/// </summary>
/// <param name="id">请求订舱ID</param>
/// <returns></returns>
5 months ago
Task<DataResult<string>> Delete(long id);
/// <summary>
/// 批量发送API前调取校验预警
/// </summary>
/// <param name="ids">马士基API订舱ID组</param>
/// <returns>返回提示信息</returns>
Task<DataResult<string>> CheckWarningBatchSend(long[] ids);
/// <summary>
/// 批量发送
/// </summary>
/// <param name="ids">马士基API订舱ID组</param>
/// <returns>返回执行结果消息</returns>
Task<DataResult<string>> BatchSend(long[] ids);
/// <summary>
/// 批量复制前调取校验预警
/// </summary>
/// <param name="model">马士基API批量复制指定数据</param>
/// <returns>返回提示信息</returns>
Task<DataResult<string>> CheckWarningBatchCopy(MSKAPIBookingCopyDto model);
/// <summary>
/// 批量复制
/// </summary>
/// <param name="model">马士基API批量复制指定数据</param>
/// <returns>返回执行结果消息</returns>
Task<DataResult<string>> BatchCopy(MSKAPIBookingCopyDto model);
/// <summary>
/// 同步BC状态BC,Cancellation
/// </summary>
/// <param name="mblno">提单号</param>
/// <param name="tenantId">租户ID</param>
/// <param name="opTypeName">操作类型 BC-同步BC状态 Cancellation-同步取消状态</param>
/// <returns>返回回执</returns>
Task<DataResult<MSKBookingResultDto>> SyncBCInfo(string mblno, long tenantId, string opTypeName = "BookingConfirmation");
4 months ago
/// <summary>
/// 同步BC状态BC,Cancellation作为任务台执行模块
/// </summary>
/// <param name="dataContext">数据上下文</param>
Task<DataResult<MSKBookingResultDto>> SyncBCInfoTask(TaskFlowDataContext dataContext);
/// <summary>
/// 获取初始化页面默认值
/// </summary>
/// <returns>返回详情</returns>
Task<DataResult<MSKSPOTBookingInitDto>> GetInitInfo();
/// <summary>
/// 获取预订舱途径选择
/// </summary>
/// <returns>返回回执</returns>
Task<DataResult<List<string>>> GetBookingChannelSelectShow();
/// <summary>
/// 批量设定定时订舱时间
/// </summary>
/// <param name="model">请求详情</param>
/// <returns>返回回执</returns>
Task<DataResult<string>> BatchSetupTimerBooking(MSKAPITimerBookingDto model);
/// <summary>
/// 获取定时订舱方案列表
/// </summary>
/// <returns></returns>
Task<DataResult<List<MSKAPITimerSchemeDto>>> GetTimerSchemeList();
/// <summary>
/// 生成订舱订舱报告邮件并自动转发
/// </summary>
/// <returns></returns>
Task<DataResult<string>> GenerateTimerReportEmail();
/// <summary>
/// 批量取消定时订舱时间
/// </summary>
/// <param name="ids">马士基API订舱ID组</param>
/// <returns>返回回执</returns>
Task<DataResult<string>> BatchCancelTimerBooking(long[] ids);
3 months ago
/// <summary>
/// 发送马士基订舱请求
/// </summary>
/// <param name="id">请求订舱ID</param>
/// <returns>返回检索结果</returns>
Task<DataResult<MSKBookingResultDto>> SendMSKBookingById(long id);
}
}