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.
BookingHeChuan/Myshipping.Application/Service/BookingOrder/IBookingOrderService.cs

152 lines
5.2 KiB
C#

2 years ago
using Myshipping.Core;
using Microsoft.AspNetCore.Mvc;
using System.Threading.Tasks;
using Myshipping.Application.Entity;
2 years ago
using Myshipping.Application.Service.BookingOrder.Dto;
2 years ago
using Microsoft.AspNetCore.Http;
2 years ago
using System.Collections.Generic;
2 years ago
namespace Myshipping.Application
2 years ago
{
public interface IBookingOrderService
{
2 years ago
Task Delete(string Ids);
2 years ago
2 years ago
Task<BookingOrderOutput> Get(long Id);
Task<List<BookingLogDto>> GetLog(long Id);
2 years ago
2 years ago
Task<IActionResult> Download(long id);
2 years ago
Task<List<BookingRemark>> GetRemark(long Id);
2 years ago
Task AddRemark(BookingRemarkDto dto);
2 years ago
Task<string> AddFile(IFormFile file, [FromForm] BookingFileDto dto);
2 years ago
2 years ago
Task<List<BookingFile>> GetFile(long Id);
2 years ago
Task<List<BookingStatusLogDto>> GetBookingStatusLog(long Id);
/// <summary>
/// 发送订舱、截单EDI
/// </summary>
/// <param name="model">订舱、截单EDI请求</param>
/// <returns>返回回执</returns>
Task<dynamic> SendBookingOrClosingEDI(BookingOrClosingEDIOrderDto model);
Task BachUpdate(BatchUpdate dto);
1 year ago
Task<dynamic> InnerBookingOrClosingEDI(BookingOrClosingEDIOrderDto model);
1 year ago
/// <summary>
/// 推送东胜
/// </summary>
/// <param name="ids"></param>
/// <param name="syncTypeEnum"><see cref="BookingOrderSyncTypeEnum"/></param>
1 year ago
/// <returns></returns>
Task<dynamic> SendBookingOrder(long[] ids, BookingOrderSyncTypeEnum? syncTypeEnum = null);
/// <summary>
/// 保存(新增或修改)放舱
/// </summary>
/// <param name="input">放舱详情</param>
/// <returns>返回放舱主键</returns>
Task<long> LetteryardSave(UpdateBookingLetteryardInput input);
2 years ago
/// <summary>
/// 放舱发送
/// </summary>
/// <param name="bookingId">订舱ID</param>
/// <param name="templateId">放舱选择模板</param>
/// <returns></returns>
Task SendLetterYard(long bookingId, long templateId);
/// <summary>
1 year ago
/// 设置货物状态完成
/// </summary>
/// <param name="code"></param>
/// <param name="bookingId"></param>
/// <returns></returns>
Task SetGoodsStatus(string code, long bookingId);
1 year ago
/// <summary>
/// 记录日志
/// </summary>
/// <param name="newOrder"></param>
/// <param name="oldOrder"></param>
/// <returns></returns>
10 months ago
Task SaveLog(BookingOrder newOrder, BookingOrder oldOrder, string fromFunc);
1 year ago
Task AutoYardData(long bookId);
/// <summary>
/// 推送服务状态
/// </summary>
/// <param name="code">服务状态代码</param>
/// <param name="bookingId">订舱ID</param>
/// <param name="isAutoSyncDS">是否默认同步东胜 true-自动同步 false-不自动同步</param>
/// <returns></returns>
Task SetGoodsStatusPush(string code, long bookingId, bool isAutoSyncDS = false);
/// <summary>
/// 取消服务状态
/// </summary>
/// <param name="code">服务状态代码</param>
/// <param name="bookingId">订舱编号</param>
/// <param name="isAutoSyncDS">是否默认同步东胜 true-自动同步 false-不自动同步</param>
/// <returns></returns>
Task SetGoodsStatusCancel(string code, long bookingId, bool isAutoSyncDS = false);
/// <summary>
/// 设定保存订舱的货物状态并同步东胜
/// </summary>
/// <param name="bookingId"></param>
/// <param name="isAutoSyncDS">是否默认同步东胜 true-自动同步 false-不自动同步</param>
/// <param name="fromFunc">调用方模块名</param>
/// <returns></returns>
Task SetBookingGoodsStatus(long bookingId, bool isAutoSyncDS = false, string fromFunc = null);
/// <summary>
/// 检查是否VOLTA并返回初始数据
/// </summary>
/// <param name="model">请求参数</param>
/// <returns>返回回执</returns>
dynamic CheckAndInitVOLTAEdi(BookingOrClosingEDIOrderDto model);
/// <summary>
/// 发送VOLTA截单请求
/// </summary>
/// <param name="model">请求截单详情</param>
/// <returns>返回回执</returns>
Task<dynamic> SendVOLTAEdiSI(VOLTAEDIBaseModel model);
/// <summary>
/// 下载VOLTA截单请求报文
/// </summary>
/// <param name="model">请求截单详情</param>
/// <returns>返回回执</returns>
Task<IActionResult> DownloadVOLTAEdiSI(VOLTAEDIBaseModel model);
/// <summary>
/// 生成VOLTA报文内部方法
/// </summary>
/// <param name="model">请求截单详情</param>
/// <param name="isSend">是否直接发送VOLTA申报截单</param>
/// <returns>返回回执</returns>
Task<dynamic> InnerVOLTAEDI(VOLTAEDIBaseModel model, bool isSend = false);
/// <summary>
/// 订舱保存
/// </summary>
/// <param name="input">订舱请求详情</param>
/// <returns>返回回执</returns>
Task<BookingOrderOutput> Save(SaveBookingOrderInput input);
2 years ago
}
}