using Microsoft.AspNetCore.Http;
using Myshipping.Application.Entity;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Myshipping.Application
{
///
/// 订舱增值类服务
///
public interface IBookingValueAddedService
{
///
/// 批量BC下载
///
/// 订舱主键数组
/// 返回回执
Task DownloadBookingConfirm(long[] bookingIds);
///
/// 批量Draft下载
///
/// 订舱主键数组
/// 返回回执
Task DownloadDraft(long[] bookingIds);
///
/// 舱位分配查询
///
/// 订舱主键数组
/// 返回回执
Task CheckUpdateManifestNo(long[] bookingIds);
///
/// 单票BC文件解析
///
/// 上传文件
/// 订舱主键
/// 返回回执
Task SingleBCFileRead(IFormFile file, long bookingOrderId);
///
/// 单票BC更新订舱
///
/// 单票BC详情
/// 返回回执
Task SingleBCUpdateBookingOrder(SingleBCDto model);
///
/// 批量BC更新订舱
///
/// 批量BC更新列表
/// 返回回执
Task BatchBCUpdate(List batchBCList);
///
/// 提交规则意见
///
/// 规则意见详情
/// 返回回执
Task SubmitRuleOpinion(RulesEngineUserFeedBackDto model);
///
/// 查询规则意见历史
///
/// 规则意见详情
/// 返回回执
Task GetRuleOpinionLog(RulesEngineUserFeedBackDto model);
///
/// 获取订舱数据接口 备注 、 文件 、服务项目
///
/// 订舱ID
/// 返回服务状态列表
Task GetAllDataVNTWO(long bookingId);
///
/// 获取订舱数据接口 日志、状态日志
///
/// 订舱ID
/// 返回日志详情
Task GetAllLogDataVNTWO(long bookingId);
///
/// 保存服务项目
///
/// 修改服务项目详情
/// 返回回执
Task SaveServiceProject(ModifyServiceProjectDto model);
///
/// 取消服务项目
///
/// 修改服务项目详情
/// 返回回执
Task CancelServiceProject(ModifyServiceProjectDto model);
///
/// 获取服务项目列表
///
/// 查询服务项目和状态详情
/// 返回回执
Task GetServiceProjectList(QueryServiceProjectWithStatus model);
///
/// 获取服务项目下的状态列表
///
/// 查询服务项目和状态详情
/// 返回回执
Task GetServiceStatusList(QueryServiceProjectWithStatus model);
///
/// 保存服务状态
///
/// 修改服务状态详情
/// 返回回执
Task SaveServiceStatus(ModifyServiceProjectStatusDto model);
///
/// 取消服务状态
///
/// 修改服务状态详情
/// 返回回执
Task CancelServiceStatus(ModifyServiceProjectStatusDto model);
///
/// 推送东胜同步
///
/// 订舱主键组
/// 返回回执
Task SinglePushBKOrderSyncDS(long[] ids);
///
/// 获取订舱对应的集装箱VGM回执详情
///
/// 订舱ID
/// 返回VGM明细
Task> GetBookingVGMResult(long id);
}
}