using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Myshipping.Core; using NPOI.POIFS.Crypt.Dsig; using NPOI.SS.Formula.Functions; using SqlSugar; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Myshipping.Application { /// /// /// public interface ITaskManageService { /// /// 创建任务 /// /// 任务详情 /// 返回回执 Task CreateTaskJob(TaskManageOrderMessageInfo info); /// /// 撤销任务 /// /// 任务详情 /// 返回回执 Task CancelTaskJob(TaskManageOrderMessageInfo info); /// /// 获取查询参数 /// /// 参数类型 STATUS-任务状态;TASK_TYPE-任务类型;SOURCE-任务来源 /// 返回回执 Task GetParaInfo(string ParaType); /// /// 获取登陆人相关的任务统计信息 /// /// 是否强制计算 /// 返回回执 Task GetCurrentTotalStat(bool isReCalc = false); /// /// 任务台账查询 /// /// 任务台账查询请求 /// 返回结果 Task> GetPageAsync(QueryTaskManageDto QuerySearch); /// /// 下载正本提单 /// /// 任务主键数组 /// 返回结果 Task DownloadOriginalTask(string[] PKIds); /// /// 完成任务(可批量) /// /// 任务主键数组 /// 返回结果 Task CompleteTask(string[] PKIds); /// /// 取消任务(可批量) /// /// 任务主键数组 /// 返回结果 Task CancelTask(string[] PKIds); /// /// 挂起任务(可批量) /// /// 任务主键数组 /// 返回结果 Task PendingTask(string[] PKIds); /// /// 提单纸页数计算 /// /// 任务主键数组 /// 返回结果 Task> LaraPaperCalc(string[] PKIds); /// /// LARA提单纸登记 /// /// 任务主键数组 /// 返回结果 Task LaraPaperRegist(string[] PKIds); /// /// 请求提单纸登记 /// /// 提单纸登记请求参数列表 /// 返回结果 Task LaraPaperRegistPost(List laraPaperList); /// /// 下载任务附件 /// /// /// 返回文件流 Task DownloadTaskAttach(string taskPKId); /// /// 正本附件批量打印 /// /// 任务主键数组 /// 返回文件流 Task PrintBatch(string[] PKIds); /// /// 接收换船 /// /// 任务主键 /// 返回结果 Task AcceptChangeShip(string taskPKId); /// /// 取消换船 /// /// 任务主键 /// 返回结果 Task AcceptCancelChangeShip(string taskPKId); /// /// 转发电放邮件 /// /// 任务主键 /// 指定邮件地址 /// 返回结果 Task SendTelexEmail(string taskPKId, string toMail); /// /// 发送下货纸 /// /// 任务主键 /// 文件功能 (9原始) /// 返回结果 Task SendShippingOrder(string taskPKId, string fileRole = "9"); /// /// 获取订舱详情 /// /// 任务主键 /// 返回结果 Task GetBookingOrderInfo(string taskPKId); /// /// 获取单票账单详情 /// /// 任务主键 /// 返回结果 Task GetTaskPerBillInfo(string taskPKId); /// /// 获取提单纸登记记录 /// /// 查询条件 /// 返回结果 Task> GetLaraPaperRecordPageAsync(QueryTaskManageBaseDto querySearch); /// /// 导出LARA提单纸登记记录 /// /// 排序字段 /// 当前页码 /// 页码容量 /// 排序方法,默认降序 /// 返回结果 Task LaraPaperRecordExport(string sortField, int pageNo = 1, int pageSize = 30, bool descSort = true); /// /// 保存SI信息 /// /// 订舱信息 /// 返回结果 Task SaveBookingSI(TaskBookingOrderDto model); /// /// 获取SI反馈信息 /// /// 任务主键 /// 返回结果 Task GetSIFeedBackInfo(string taskPKId); /// /// 获取VGM比较结果 /// /// 任务主键 /// 返回结果 Task GetVGMCompareResult(string taskPKId); /// /// 更新订舱(VGM比较更新) /// /// 任务主键 /// 返回结果 Task SaveBookingVGM(string taskPKId); /// /// 获取换船详情 /// /// 任务主键 /// 返回结果 Task GetChangeShipInfo(string taskPKId); /// /// 获取取消换船详情 /// /// 任务主键 /// 返回结果 Task GetAbortChangeShipInfo(string taskPKId); /// /// 手工批量重新比对BC /// /// 任务主键数组 /// 返回结果 Task ManualReCompareBC(string[] PKIds); /// /// 下载截单EDI /// /// 任务主键 /// 订单号 /// 是否使用货代代码 /// 货代代码 /// 货代称呼 /// 文件功能 (9原始,1 更新,5 退舱 ) /// 发送类型 B-订舱 E-截单 /// Task DownloadClosingEDI(string taskPKId, string orderNo, bool useForwarderCode, string forwarderCode, string forwarderName, string fileRole, string sendType); /// /// 发送截单EDI /// /// 任务主键 /// 订单号 /// 是否使用货代代码 /// 货代代码 /// 货代称呼 /// 文件功能 (9原始,1 更新,5 退舱 ) /// 发送类型 E-截单 /// 返回结果 Task SendClosingEDI(string taskPKId, string orderNo, bool useForwarderCode, string forwarderCode, string forwarderName, string fileRole, string sendType); /// /// 计算LARA纸计算页数 /// /// 请求LARA纸详情 /// 返回结果 Task> CalcLaraPageNumbers(CalcLaraPageNumbersDto model); /// /// 创建BC任务 /// /// 文件 /// BC变更内容后文件 /// BC任务详情JSON /// 返回回执 Task CreateBCTaskJob(IFormFile file, IFormFile modifyFile, string jsonData); /// /// 获取任务列表 /// /// 查询条件 /// 返回结果 //Task> GetTaskList(QueryTaskManageDto queryTaskManageDto); /// /// 创建DRAFT任务 /// /// 文件 /// BC变更内容后文件 /// BC任务详情JSON /// 返回回执 Task CreateDRAFTTaskJob(IFormFile file, IFormFile modifyFile, string jsonData); /// /// 创建截单回执任务 /// /// 文件 /// 截单回执变更内容后文件 /// 截单回执任务详情JSON /// 返回回执 Task CreateSISubmittedTaskJob(IFormFile file, IFormFile modifyFile, string jsonData); } }