修改INTTRA

usertest
jianghaiqing 4 months ago
parent 943a2bed19
commit a0f0af1c72

@ -1309,30 +1309,31 @@ namespace DS.WMS.Core.Op.Method
/*
1EdiCode
*/
if (!string.IsNullOrWhiteSpace(order.MBLFrt))
if (!string.IsNullOrWhiteSpace(order.MBLFrtCode))
{
long mblFrt = long.Parse(order.MBLFrt);
var codeInfo = tenantDb.Queryable<CodeFrt>().First(x => x.Status == StatusEnum.Enable && x.EdiCode == order.MBLFrtCode);
var mapInfo = tenantDb.Queryable<MappingFrt>().First(t => t.Module.Equals(CONST_MAPPING_MODULE, StringComparison.OrdinalIgnoreCase)
&& t.CarrierId == order.CarrierId && t.LinkId == mblFrt);
if (mapInfo != null)
{
primaryModel.BLFRTEDICODE = mapInfo.MapCode?.Trim();
}
else
if (codeInfo != null)
{
var codeInfo = tenantDb.Queryable<CodeFrt>().First(x => x.Status == StatusEnum.Enable && x.Id == mblFrt);
//primaryModel.BLFRTEDICODE = codeInfo.EdiCode;
primaryModel.BLFRT = codeInfo.FrtName;
if (codeInfo != null && !string.IsNullOrWhiteSpace(codeInfo.EdiCode))
var mapInfo = tenantDb.Queryable<MappingFrt>().First(t => t.Module.Equals(CONST_MAPPING_MODULE, StringComparison.OrdinalIgnoreCase)
&& t.CarrierId == order.CarrierId && t.LinkId == codeInfo.Id);
if (mapInfo != null)
{
primaryModel.BLFRTEDICODE = codeInfo.EdiCode;
primaryModel.BLFRTEDICODE = mapInfo.MapCode?.Trim();
}
else
{
return DataResult<string>.Failed($"付费方式{order.MBLFrt}的基础代码未找到");
primaryModel.BLFRTEDICODE = codeInfo.EdiCode;
}
}
else
{
return DataResult<string>.Failed($"付费方式{order.MBLFrt}的基础代码未找到");
}
}
else
{
@ -1342,31 +1343,33 @@ namespace DS.WMS.Core.Op.Method
#region 运输条款EDI
//运输条款EDI
if (!string.IsNullOrWhiteSpace(order.Service))
if (!string.IsNullOrWhiteSpace(order.ServiceCode))
{
long serviceId = long.Parse(order.Service);
//long serviceId = long.Parse(order.Service);
var mapInfo = tenantDb.Queryable<MappingService>()
.First(t => t.Module.Equals(CONST_MAPPING_MODULE, StringComparison.OrdinalIgnoreCase) && t.CarrierId == order.CarrierId && t.Id == serviceId);
var codeInfo = tenantDb.Queryable<CodeService>().First(x => x.Status == StatusEnum.Enable && x.EdiCode == order.ServiceCode);
if(mapInfo != null)
if (codeInfo != null)
{
primaryModel.SERVICEEDICODE = mapInfo.MapCode;
}
else
{
//运输条款EDI
var codeService = tenantDb.Queryable<CodeService>().First(x => x.Status == StatusEnum.Enable && x.Id == serviceId);
//primaryModel.BLFRTEDICODE = codeInfo.EdiCode;
primaryModel.SERVICE = codeInfo.ServiceName;
if (codeService != null && !string.IsNullOrWhiteSpace(codeService.EdiCode))
var mapInfo = tenantDb.Queryable<MappingService>().First(t => t.Module.Equals(CONST_MAPPING_MODULE, StringComparison.OrdinalIgnoreCase)
&& t.CarrierId == order.CarrierId && t.LinkId == codeInfo.Id);
if (mapInfo != null)
{
primaryModel.SERVICEEDICODE = codeService.EdiCode;
primaryModel.SERVICEEDICODE = mapInfo.MapCode?.Trim();
}
else
{
return DataResult<string>.Failed($"运输条款{order.Service}的基础代码未找到");
primaryModel.SERVICEEDICODE = codeInfo.EdiCode;
}
}
else
{
return DataResult<string>.Failed($"运输条款{order.MBLFrt}的基础代码未找到");
}
}
#endregion
@ -1422,16 +1425,19 @@ namespace DS.WMS.Core.Op.Method
}
//2023-06-15 按照沟通要求,如果主提单号为空,并且订舱编号不为空,可以去订舱编号填入主提单号
if (string.IsNullOrWhiteSpace(primaryModel.MBLNO))
if (ediRouteEnum != EDIRouteEnum.INTTRA)
{
if (!string.IsNullOrWhiteSpace(order.CustomerNo))
//2023-06-15 按照沟通要求,如果主提单号为空,并且订舱编号不为空,可以去订舱编号填入主提单号
if (string.IsNullOrWhiteSpace(primaryModel.MBLNO))
{
_logger.Info("批次={no} 主题单号为空 MBLNO={mblno} 取订舱编号补到主提单号 custno={custno}", batchNo, primaryModel.MBLNO, order.CustomerNo);
if (req.SendType.Equals("B", StringComparison.OrdinalIgnoreCase))
if (!string.IsNullOrWhiteSpace(order.CustomerNo))
{
primaryModel.MBLNO = order.CustomerNo;
_logger.Info("批次={no} 主题单号为空 MBLNO={mblno} 取订舱编号补到主提单号 custno={custno}", batchNo, primaryModel.MBLNO, order.CustomerNo);
if (req.SendType.Equals("B", StringComparison.OrdinalIgnoreCase))
{
primaryModel.MBLNO = order.CustomerNo;
}
}
}
}
@ -1449,6 +1455,9 @@ namespace DS.WMS.Core.Op.Method
var portRlt = GetPackageEDICode(packageId, codePackageList, mapPackageList, order.CarrierId, CONST_MAPPING_MODULE);
if (codePackageList.Any(b => b.Id == packageId))
primaryModel.KINDPKGS = codePackageList.FirstOrDefault(b => b.Id == packageId).PackageName;
if (portRlt.Succeeded)
{
primaryModel.KINDPKGS_EDI_CODE = portRlt.Data;
@ -1557,6 +1566,12 @@ namespace DS.WMS.Core.Op.Method
primaryModel.ETA = primaryModel.ETD;
}
if (ediRouteEnum == EDIRouteEnum.INTTRA)
{
if (!string.IsNullOrWhiteSpace(ediExtModel.CustomerName))
primaryModel.WEITUO = ediExtModel.CustomerName;
}
primaryModel.KINGTAREWEIGHT = ediExtModel.KingTareweight.HasValue ? ediExtModel.KingTareweight.Value : 0;
_logger.Info("批次={no} 提取箱完成 数量={total}", batchNo, contaList.Count);
@ -1589,9 +1604,12 @@ namespace DS.WMS.Core.Op.Method
var mapRlt = GetPackageEDICode(packageId, codePackageList, mapPackageList, order.CarrierId, CONST_MAPPING_MODULE);
if (codePackageList.Any(b => b.Id == packageId))
contaModel.KINDPKGS = codePackageList.FirstOrDefault(b => b.Id == packageId).PackageName;
if (mapRlt.Succeeded)
{
primaryModel.KINDPKGS_EDI_CODE = mapRlt.Data;
contaModel.KINDPKGS_EDI_CODE = mapRlt.Data;
}
else
{
@ -1622,6 +1640,9 @@ namespace DS.WMS.Core.Op.Method
var mapRlt = GetPackageEDICode(packageId, codePackageList, mapPackageList, order.CarrierId, CONST_MAPPING_MODULE);
if (codePackageList.Any(b => b.Id == packageId))
cargoModel.KINDPKGS = codePackageList.FirstOrDefault(b => b.Id == packageId).PackageName;
if (mapRlt.Succeeded)
{
cargoModel.KINDPKGS_EDI_CODE = mapRlt.Data;
@ -2569,6 +2590,16 @@ namespace DS.WMS.Core.Op.Method
/// <returns></returns>
private DataResult<string> GetPackageEDICode(long packageCodeId, List<CodePackage> codePackageList, List<MappingPackage> mapPackageList, long carrierId, string moduleName)
{
var tenantDb = saasService.GetBizDbScopeById(user.TenantId);
if (!codePackageList.Any(b => b.Id == packageCodeId))
{
var codePackage = tenantDb.Queryable<CodePackage>().First(a => a.Id == packageCodeId);
if (codePackage != null)
codePackageList.Add(codePackage);
}
//如果历史港口映射有记录直接返回
if (mapPackageList.Any(a => a.LinkId == packageCodeId))
{
@ -2580,7 +2611,7 @@ namespace DS.WMS.Core.Op.Method
return DataResult<string>.FailedData(edi);
}
var tenantDb = saasService.GetBizDbScopeById(user.TenantId);
var mapPackageInfo = tenantDb.Queryable<MappingPackage>()
.First(a => a.Module.Equals(CONST_MAPPING_MODULE, StringComparison.OrdinalIgnoreCase) && a.CarrierId == carrierId && a.LinkId == packageCodeId);

@ -102,7 +102,7 @@ public partial class SeaExportService : ISeaExportService
.Map(dto => dto.ORDERNO, poco => poco.OrderNo)
.Map(dto => dto.YARD, poco => poco.Yard)
.Map(dto => dto.MBLNO, poco => poco.MBLNO)
.Map(dto => dto.BLFRT, poco => poco.MBLFrt)
.Map(dto => dto.BLFRT, poco => poco.MBLFrtCode)
.Map(dto => dto.VESSEL, poco => poco.Vessel)
.Map(dto => dto.VOYNO, poco => poco.Voyno)
.Map(dto => dto.NVOYNO, poco => poco.InnerVoyno)
@ -154,7 +154,7 @@ public partial class SeaExportService : ISeaExportService
.Map(dto => dto.ISSUEPLACE, poco => poco.IssuePlace)
.Map(dto => dto.ISSUEDATE, poco => poco.IssueDate)
.Map(dto => dto.ISSUEPLACEID, poco => poco.IssuePlace)
.Map(dto => dto.SERVICE, poco => poco.Service)
.Map(dto => dto.SERVICE, poco => poco.ServiceCode)
.Map(dto => dto.CONTRACTNO, poco => poco.ContractNo)
.Map(dto => dto.SERVICECONTRACTNO, poco => poco.ServiceContractNo)
//.Map(dto => dto.CONSIGNEEPOSTCODE, poco => poco.)

Loading…
Cancel
Save