|
|
|
@ -1031,26 +1031,28 @@ namespace Myshipping.Application
|
|
|
|
|
4、请求相应的链接。
|
|
|
|
|
5、返回成功写入附件。
|
|
|
|
|
*/
|
|
|
|
|
if (string.IsNullOrWhiteSpace(bookingOrder.MBLNO))
|
|
|
|
|
|
|
|
|
|
//2023-07-06 按照最新要求,从订舱编号取单号
|
|
|
|
|
if (string.IsNullOrWhiteSpace(bookingOrder.CUSTNO))
|
|
|
|
|
{
|
|
|
|
|
if (!string.IsNullOrWhiteSpace(bookingOrder.CUSTNO))
|
|
|
|
|
if (!string.IsNullOrWhiteSpace(bookingOrder.MBLNO))
|
|
|
|
|
{
|
|
|
|
|
result.bno = $"订 {bookingOrder.CUSTNO}";
|
|
|
|
|
result.bno = $"订 {bookingOrder.MBLNO}";
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
result.bno = $"NO.{sortNo}";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
throw Oops.Bah($"主提单号不能为空");
|
|
|
|
|
throw Oops.Bah($"订舱编号不能为空");
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
if (Regex.IsMatch(bookingOrder.MBLNO, "\\bESL\\w+"))
|
|
|
|
|
if (Regex.IsMatch(bookingOrder.CUSTNO, "\\bESL\\w+"))
|
|
|
|
|
{
|
|
|
|
|
_logger.LogInformation("批次={no} id={id} 主提单号没填写参考号,无法继续", batchNo, bookingOrder.Id);
|
|
|
|
|
_logger.LogInformation("批次={no} id={id} 订舱编号没填写参考号,无法继续", batchNo, bookingOrder.Id);
|
|
|
|
|
|
|
|
|
|
throw Oops.Oh($"主提单号不是有效的参考号");
|
|
|
|
|
throw Oops.Oh($"订舱编号不是有效的参考号");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -1058,13 +1060,13 @@ namespace Myshipping.Application
|
|
|
|
|
.FirstOrDefault(t => t.Module.Equals(CONST_MAPPING_MANIALLO_CHK_MODULE_ROUTE, StringComparison.OrdinalIgnoreCase)
|
|
|
|
|
&& t.Code.Equals(bookingOrder.CARRIERID?.Trim(), StringComparison.OrdinalIgnoreCase));
|
|
|
|
|
|
|
|
|
|
_logger.LogInformation("提单号【{mbl}】根据订舱的船公司代码{ca} 提取船公司映射完成,结果={rlt}",
|
|
|
|
|
bookingOrder.MBLNO, bookingOrder.CARRIERID, bcOrDraftRouteCfg);
|
|
|
|
|
_logger.LogInformation("订舱编号【{mbl}】根据订舱的船公司代码{ca} 提取船公司映射完成,结果={rlt}",
|
|
|
|
|
bookingOrder.CUSTNO, bookingOrder.CARRIERID, bcOrDraftRouteCfg);
|
|
|
|
|
|
|
|
|
|
if (bcOrDraftRouteCfg == null)
|
|
|
|
|
{
|
|
|
|
|
_logger.LogInformation("提单号{mbl} 根据订舱的船公司代码{ca} 提取船公司映射失败",
|
|
|
|
|
bookingOrder.MBLNO, bookingOrder.CARRIERID);
|
|
|
|
|
_logger.LogInformation("订舱编号{mbl} 根据订舱的船公司代码{ca} 提取船公司映射失败",
|
|
|
|
|
bookingOrder.CUSTNO, bookingOrder.CARRIERID);
|
|
|
|
|
|
|
|
|
|
throw Oops.Bah($"船公司={bookingOrder.CARRIERID} 暂不支持舱位分配查询");
|
|
|
|
|
}
|
|
|
|
@ -1074,13 +1076,13 @@ namespace Myshipping.Application
|
|
|
|
|
var bcUrl = _cache.GetAllDictData().GetAwaiter().GetResult()
|
|
|
|
|
.FirstOrDefault(x => x.TypeCode == "url_set" && x.Code.Equals(urlKey, StringComparison.OrdinalIgnoreCase))?.Value;
|
|
|
|
|
|
|
|
|
|
_logger.LogInformation("提单号{mbl} 根据订舱的船公司代码{ca} 提取舱位分配查询URL完成,结果={rlt}",
|
|
|
|
|
bookingOrder.MBLNO, bookingOrder.CARRIERID, bcUrl);
|
|
|
|
|
_logger.LogInformation("订舱编号{mbl} 根据订舱的船公司代码{ca} 提取舱位分配查询URL完成,结果={rlt}",
|
|
|
|
|
bookingOrder.CUSTNO, bookingOrder.CARRIERID, bcUrl);
|
|
|
|
|
|
|
|
|
|
if (string.IsNullOrWhiteSpace(bcUrl))
|
|
|
|
|
{
|
|
|
|
|
_logger.LogInformation("提单号{0} 根据订舱的船公司代码{1} 提取舱位分配查询URL失败,未取到配置key={key}",
|
|
|
|
|
bookingOrder.MBLNO, bookingOrder.CARRIERID, urlKey);
|
|
|
|
|
_logger.LogInformation("订舱编号{0} 根据订舱的船公司代码{1} 提取舱位分配查询URL失败,未取到配置key={key}",
|
|
|
|
|
bookingOrder.CUSTNO, bookingOrder.CARRIERID, urlKey);
|
|
|
|
|
|
|
|
|
|
throw Oops.Bah($"船公司={bookingOrder.CARRIERID} 未配置请求地址{urlKey} 请联系管理员");
|
|
|
|
|
}
|
|
|
|
@ -1100,7 +1102,7 @@ namespace Myshipping.Application
|
|
|
|
|
{
|
|
|
|
|
u = userWebAccountConfig.Account?.Trim(),
|
|
|
|
|
p = userWebAccountConfig.Password?.Trim(),
|
|
|
|
|
so_no = bookingOrder.MBLNO,
|
|
|
|
|
so_no = bookingOrder.CUSTNO,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
_logger.LogInformation("批次={no} json={json} 请求舱位分配查询远端下载开始", batchNo, JSON.Serialize(requestDto));
|
|
|
|
@ -1137,18 +1139,19 @@ namespace Myshipping.Application
|
|
|
|
|
|
|
|
|
|
throw Oops.Oh($"订舱信息获取失败,无法更新");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* //2023-07-06 按照最新要求,从订舱编号取单号,所以这里不判断了
|
|
|
|
|
if(Regex.IsMatch(bkInfo.MBLNO,"\\bESL\\w+"))
|
|
|
|
|
{
|
|
|
|
|
_logger.LogInformation("批次={no} id={id} 主提单号已变更,无法更新", batchNo, bookingOrder.Id);
|
|
|
|
|
|
|
|
|
|
throw Oops.Oh($"主提单号已变更,无法更新");
|
|
|
|
|
}
|
|
|
|
|
}*/
|
|
|
|
|
|
|
|
|
|
_logger.LogInformation("批次={no} 变更前记录 id={id} MBLNO={MBLNO} CUSTNO={CUSTNO} esl_no={eslno}",
|
|
|
|
|
batchNo, bookingOrder.Id, bkInfo.MBLNO, bkInfo.CUSTNO, rlt.data.esl_no);
|
|
|
|
|
|
|
|
|
|
bkInfo.CUSTNO = bkInfo.MBLNO;
|
|
|
|
|
//bkInfo.CUSTNO = bkInfo.MBLNO;
|
|
|
|
|
bkInfo.MBLNO = rlt.data.esl_no.Trim().ToUpper();
|
|
|
|
|
bkInfo.UpdatedTime = DateTime.Now;
|
|
|
|
|
bkInfo.UpdatedUserId = UserManager.UserId;
|
|
|
|
@ -1156,7 +1159,6 @@ namespace Myshipping.Application
|
|
|
|
|
|
|
|
|
|
await _bookingOrderRepository.AsUpdateable(bkInfo).UpdateColumns(it => new
|
|
|
|
|
{
|
|
|
|
|
it.CUSTNO,
|
|
|
|
|
it.MBLNO,
|
|
|
|
|
it.UpdatedTime,
|
|
|
|
|
it.UpdatedUserId,
|
|
|
|
|