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.

277 lines
7.5 KiB
C#

using DS.Module.Core;
using DS.Module.Core.Data;
using DS.WMS.Core.Info.Dtos;
using DS.WMS.Core.Info.Interface;
using DS.WMS.Core.Op.Dtos;
using DS.WMS.Core.Op.EDI;
using DS.WMS.Core.Op.Interface;
using DS.WMS.Core.Sys.Dtos;
using DS.WMS.Core.Sys.Interface;
using Microsoft.AspNetCore.Mvc;
using Org.BouncyCastle.Ocsp;
namespace DS.WMS.OpApi.Controllers;
/// <summary>
/// 海运出口信息-模块
/// </summary>
public class SeaExportController : ApiController
{
private readonly ISeaExportService _invokeService;
/// <summary>
/// 构造函数
/// </summary>
/// <param name="invokeService"></param>
public SeaExportController(ISeaExportService invokeService)
{
_invokeService = invokeService;
}
/// <summary>
/// 列表
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[HttpPost]
[Route("GetSeaExportList")]
public DataResult<List<SeaExportRes>> GetSeaExportList([FromBody] PageRequest request)
{
var res = _invokeService.GetListByPage(request);
return res;
}
/// <summary>
/// 编辑
/// </summary>
/// <param name="req"></param>
/// <returns></returns>
[HttpPost]
[Route("EditSeaExport")]
public DataResult EditSeaExport([FromBody] SeaExportReq req)
{
var res = _invokeService.EditSeaExport(req);
return res;
}
/// <summary>
/// 详情
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
[HttpGet]
[Route("GetSeaExportInfo")]
public DataResult<SeaExportRes> GetSeaExportInfo([FromQuery] string id)
{
var res = _invokeService.GetSeaExportInfo(id);
return res;
}
/// <summary>
/// 批量编辑
/// </summary>
/// <param name="req"></param>
/// <returns></returns>
[HttpPost]
[Route("SeaExportBatchEdit")]
public DataResult SeaExportBatchEdit([FromBody] SeaExportBatchEditReq req)
{
var res = _invokeService.SeaExportBatchEdit(req);
return res;
}
/// <summary>
/// 业务单据删除
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
[HttpGet]
[Route("SeaExportDel")]
public DataResult SeaExportDel([FromQuery] string id)
{
var res = _invokeService.SeaExportDel(id);
return res;
}
/// <summary>
/// 业务单据批量删除
/// </summary>
/// <param name="req"></param>
/// <returns></returns>
[HttpPost]
[Route("SeaExportBatchDel")]
public DataResult SeaExportBatchDel([FromBody] IdModel req)
{
var res = _invokeService.SeaExportBatchDel(req);
return res;
}
/// <summary>
/// 业务单据复制-单票
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
[HttpGet]
[Route("SeaExportCopy")]
public DataResult SeaExportCopy([FromQuery] string id)
{
var res = _invokeService.SeaExportCopy(id);
return res;
}
/// <summary>
/// 获取场站数据
/// </summary>
/// <param name="id">业务Id</param>
/// <param name="isWeb">是否网站数据 默认false</param>
/// <returns></returns>
[HttpGet]
[Route("GetYardData")]
public async Task<DataResult<string>> GetYardData([FromQuery] string id, bool isWeb = false)
{
return await _invokeService.GetYardData(id, isWeb);
}
/// <summary>
/// 发起运踪订阅或者更新提单号
/// </summary>
/// <param name="req"></param>
/// <returns></returns>
[HttpPost]
[Route("SendOrUpdateTrace")]
public async Task<DataResult<string>> SendOrUpdateTrace([FromBody]List<BillTraceReq> req)
{
return await _invokeService.SendOrUpdateTrace(req);
}
/// <summary>
/// 运踪退订
/// </summary>
/// <param name="req"></param>
/// <returns></returns>
[HttpPost]
[Route("UnsubscribeBillTrace")]
public async Task<DataResult<string>> UnsubscribeBillTrace([FromBody]List<BillTraceUnsubscribeList> req)
{
return await _invokeService.UnsubscribeBillTrace(req);
}
6 months ago
/// <summary>
/// 获取VGM、VGM SI链接
/// </summary>
/// <param name="id">业务Id</param>
/// <returns></returns>
[HttpGet]
[Route("VgmLink")]
public async Task<DataResult<string[]>> VgmLink([FromQuery] string id)
{
return await _invokeService.VgmLink(id);
}
/// <summary>
/// 发送VGM
/// </summary>
/// <param name="id">业务Id</param>
/// <returns></returns>
[HttpGet]
[Route("VgmSend")]
public async Task<DataResult<string>> VgmSend([FromQuery] string id)
{
return await _invokeService.VgmSend(id);
}
/// <summary>
/// 批量获取vgm
/// </summary>
/// <param name="ids">业务id 逗号拼接</param>
/// <returns></returns>
[HttpGet]
[Route("GetVmgDataList")]
public async Task<DataResult<List<BatchVGM>>> GetVmgDataList([FromQuery] string ids)
{
return await _invokeService.GetVmgDataList(ids);
}
/// <summary>
/// 批量保存vgm
/// </summary>
/// <param name="req"></param>
/// <returns></returns>
[HttpPost]
[Route("SaveBatchVgm")]
public async Task<DataResult<string>> SaveBatchVgm([FromBody] List<BatchVGMList> req)
{
return await _invokeService.SaveBatchVgm(req);
}
/// <summary>
/// 获取提箱小票链接
/// </summary>
/// <param name="id">业务Id</param>
/// <returns></returns>
[HttpGet]
[Route("TxxpLink")]
public async Task<DataResult<string>> TxxpLink([FromQuery] string id)
{
return await _invokeService.TxxpLink(id);
}
/// <summary>
/// 检查是否VOLTA并返回初始数据
/// </summary>
/// <param name="req"></param>
/// <returns></returns>
[HttpPost]
[Route("CheckAndInitVOLTAEdi")]
public DataResult<VOLTAEDIBaseModel> CheckAndInitVOLTAEdi([FromBody] BookingOrClosingEDIOrderReq req)
{
return _invokeService.CheckAndInitVOLTAEdi(req);
}
/// <summary>
/// 发送订舱、截单EDI
/// </summary>
/// <param name="req">订舱、截单EDI请求</param>
/// <returns>返回回执</returns>
[HttpPost]
[Route("SendBookingOrClosingEDI")]
public async Task<DataResult<string>> SendBookingOrClosingEDI([FromBody] BookingOrClosingEDIOrderReq req)
{
return await _invokeService.SendBookingOrClosingEDI(req);
}
/// <summary>
/// 下载订舱、截单EDI
/// </summary>
/// <param name="req">订舱、截单EDI请求</param>
/// <returns>返回回执</returns>
[HttpPost]
[Route("DownloadBookingOrClosingEDI")]
public async Task<IActionResult> DownloadBookingOrClosingEDI([FromBody] BookingOrClosingEDIOrderReq req)
{
return await _invokeService.DownloadBookingOrClosingEDI(req);
}
/// <summary>
/// 发送下货纸
/// </summary>
/// <param name="id">业务id</param>
/// <returns></returns>
[HttpGet]
[Route("SendXHZ")]
public async Task<DataResult> SendXHZ([FromQuery] string id)
{
return await _invokeService.SendXHZ(id);
}
/// <summary>
/// 船司电放提交
/// </summary>
/// <param name="req">订舱主键数组</param>
/// <returns>每单的处理提交结果</returns>
[HttpPost]
[Route("SubmitTelex")]
public async Task<DataResult<List<SubmitTelexResultDto>>> SubmitTelex([FromBody] IdModel req)
{
var res = await _invokeService.SubmitTelex(req);
return res;
}
}