cjy 3 months ago
commit 3d0646efa2

@ -78,7 +78,6 @@ namespace DS.Module.DjyRulesEngine
req.Head.MessageType = "BUSI_RULE";
req.Head.RequestAction = "CheckRule";
req.Main.ProjectCode = ["COMMON_OCEAN_BOOKING"];
var uriBuilder = new UriBuilder
{

@ -0,0 +1,285 @@
using DS.Module.DjyRulesEngine;
using DS.WMS.Core.Op.Dtos;
using DS.WMS.Core.Op.Entity;
using Mapster;
using Microsoft.AspNetCore.Builder;
namespace DS.WMS.Core
{
public static class ObjectMapping
{
/// <summary>
/// 使用自动对象映射
/// </summary>
/// <param name="builder"></param>
/// <returns></returns>
public static IApplicationBuilder UseObjectMapping(this IApplicationBuilder builder)
{
TypeAdapterConfig<SeaExportEdi, SeaExportEDIBaseModel>
.NewConfig()
.Map(dto => dto.WEITUO, poco => poco.CustomerName)
.Map(dto => dto.OpEName, poco => poco.OpEName)
.Map(dto => dto.OpTel, poco => poco.OpTel)
.Map(dto => dto.OpEmail, poco => poco.OpEmail)
.Map(dto => dto.EDIATTN, poco => poco.EDIAttn)
.Map(dto => dto.EDIATTNTEL, poco => poco.EDIAttnTel)
.Map(dto => dto.EDIATTNEMAIL, poco => poco.EDIAttnMail)
.Map(dto => dto.AMSCONSIGNEE, poco => poco.AMSConsignee)
.Map(dto => dto.AMSNOTIFYPARTY, poco => poco.AMSNotifyParty)
.Map(dto => dto.MasterBOLIndicator, poco => poco.MasterBolIndicator)
.Map(dto => dto.KINGTAREWEIGHT, poco => poco.KingTareweight)
.Map(dto => dto.ConsigneeEdiCode, poco => poco.ConsigneeEdiCode)
.Map(dto => dto.ShipperEdiCode, poco => poco.ShipperEdiCode)
.Map(dto => dto.SalesRepCode, poco => poco.SalerCode)
.Map(dto => dto.ACIHBL, poco => poco.ACIHBL)
.Map(dto => dto.S0CC0C, poco => poco.S0CC0C)
.Map(dto => dto.cKHI, poco => poco.CKHI)
.Map(dto => dto.cNCM, poco => poco.CNCM)
.Map(dto => dto.wNCM, poco => poco.WNCM)
.Map(dto => dto.CNPTNo, poco => poco.CNPTNo)
.Map(dto => dto.ORDERREMARK, poco => poco.OrderRemark)
//.Map(dto => dto.ERNCODE, poco => poco.)
//.Map(dto => dto.TACCODE, poco => poco.)
//.Map(dto => dto.VAECODE, poco => poco.)
//.Map(dto => dto.FECCODE, poco => poco.)
;
TypeAdapterConfig<SeaExport, SeaExportEDIBaseModel>
.NewConfig()
.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.MBLFrtCode)
.Map(dto => dto.VESSEL, poco => poco.Vessel)
.Map(dto => dto.VOYNO, poco => poco.Voyno)
.Map(dto => dto.NVOYNO, poco => poco.InnerVoyno)
.Map(dto => dto.ETD, poco => poco.ETD)
.Map(dto => dto.ETA, poco => poco.ETA)
.Map(dto => dto.CLOSINGDATE, poco => poco.ClosingDate)
.Map(dto => dto.EDIREMARK, poco => poco.EdiRemark)
//.Map(dto => dto.SIREMARK, poco => poco.)
//.Map(dto => dto.BYCOUNTRY, poco => poco.)
.Map(dto => dto.CARRIER, poco => poco.Carrier)
.Map(dto => dto.CARRIERID, poco => poco.Carrier)
.Map(dto => dto.SHIPPER, poco => poco.ShipperContent)
.Map(dto => dto.CONSIGNEE, poco => poco.ConsigneeContent)
.Map(dto => dto.NOTIFYPARTY, poco => poco.NotifyPartyContent)
.Map(dto => dto.NOTIFYPARTY2, poco => poco.SecondNotifyPartyContent)
.Map(dto => dto.HSCODE, poco => poco.HSCode)
.Map(dto => dto.GOODSNAME, poco => poco.GoodsName)
.Map(dto => dto.MARKS, poco => poco.Marks)
//.Map(dto => dto.PLACERECEIPTID, poco => poco.ReceiptPlace)
.Map(dto => dto.PLACERECEIPT, poco => poco.ReceiptPlace)
//.Map(dto => dto.PORTLOADID, poco => poco.LoadPort)
.Map(dto => dto.PORTLOAD, poco => poco.LoadPort)
//.Map(dto => dto.PORTDISCHARGEID, poco => poco.DischargePort)
.Map(dto => dto.PORTDISCHARGE, poco => poco.DischargePort)
.Map(dto => dto.TRANSPORTID, poco => poco.TransPortCode)
.Map(dto => dto.TRANSPORT, poco => poco.TransPort)
//.Map(dto => dto.PLACEDELIVERYID, poco => poco.DeliveryPlace)
.Map(dto => dto.PLACEDELIVERY, poco => poco.DeliveryPlace)
//.Map(dto => dto.DESTINATIONID, poco => poco.Destination)
.Map(dto => dto.DESTINATION, poco => poco.Destination)
.Map(dto => dto.PKGS, poco => poco.PKGS)
.Map(dto => dto.KINDPKGS, poco => poco.KindPkgs)
.Map(dto => dto.CBM, poco => poco.CBM)
.Map(dto => dto.CARGOID, poco => poco.CargoId)
.Map(dto => dto.DCLASS, poco => poco.DangerClass)
.Map(dto => dto.DUNNO, poco => poco.DangerNo)
.Map(dto => dto.DPAGE, poco => poco.DangerPage)
.Map(dto => dto.DLABEL, poco => poco.DangerLabel)
.Map(dto => dto.TEMPSET, poco => poco.TemperatureSet)
.Map(dto => dto.TEMPMIN, poco => poco.TemperatureMin)
.Map(dto => dto.TEMPMAX, poco => poco.TemperatureMax)
.Map(dto => dto.REEFERF, poco => poco.ReeferQuantity)
.Map(dto => dto.HUMIDITY, poco => poco.Humidity)
.Map(dto => dto.PREPARDAT, poco => poco.PrepareAt)
.Map(dto => dto.PREPARDATID, poco => poco.PrepareAt)
.Map(dto => dto.PAYABLEAT, poco => poco.PayableAt)
.Map(dto => dto.PAYABLEATID, poco => poco.PayableAt)
.Map(dto => dto.NOBILL, poco => poco.NoBill)
.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.ServiceCode)
.Map(dto => dto.CONTRACTNO, poco => poco.ContractNo)
.Map(dto => dto.SERVICECONTRACTNO, poco => poco.ServiceContractNo)
//.Map(dto => dto.CONSIGNEEPOSTCODE, poco => poco.)
//.Map(dto => dto.CONSIGNEECOUNTRY, poco => poco.)
//.Map(dto => dto.CONSIGNEETAXNO, poco => poco.)
//.Map(dto => dto.NOTIFYPARTYPOSTCODE, poco => poco.)
//.Map(dto => dto.NOTIFYPARTYCOUNTRY, poco => poco.)
//.Map(dto => dto.NOTIFYPARTYTAXNO, poco => poco.)
//.Map(dto => dto.CONSIGNEEDOORADDR, poco => poco.)
//.Map(dto => dto.SHIPPERDOORADDR, poco => poco.)
//.Map(dto => dto.SCACCODE, poco => poco.)
//.Map(dto => dto.ITNCODE, poco => poco.)
//.Map(dto => dto.FREIGHTPAYER, poco => poco.)
//.Map(dto => dto.AMSCODE, poco => poco.)
.Map(dto => dto.ISCONTAINERSOC, poco => poco.IsContainerSoc)
.Map(dto => dto.DESCRIPTION, poco => poco.Description)
.Map(dto => dto.CARGOID, poco => poco.CargoId)
//.Map(dto => dto.GOODSCODE, poco => poco.GoodsName)
//.Map(dto => dto.SERVICEEDICODE, poco => poco.)
;
TypeAdapterConfig<OpCtn, SeaExportCtnEDIBaseModel>
.NewConfig()
.Map(dto => dto.CNTRNO, poco => poco.CntrNo)
.Map(dto => dto.TEU, poco => poco.TEU)
.Map(dto => dto.CTNNUM, poco => poco.CtnNum)
.Map(dto => dto.CTNSTATUS, poco => poco.CtnStatus)
.Map(dto => dto.SEALNO, poco => poco.SealNo)
.Map(dto => dto.PKGS, poco => poco.PKGS)
.Map(dto => dto.KINDPKGS, poco => poco.KindPkgs)
.Map(dto => dto.KGS, poco => poco.KGS)
.Map(dto => dto.CBM, poco => poco.CBM)
.Map(dto => dto.TAREWEIGHT, poco => poco.TareWeight)
.Map(dto => dto.WEIGHKGS, poco => poco.WeightKGS)
.Map(dto => dto.WEIGHTYPE, poco => poco.WeightType)
.Map(dto => dto.WEIGHSIGN, poco => poco.WeightSign)
;
TypeAdapterConfig<OpCtnDetail, SeaExportCtnDetailEDIBaseModel>
.NewConfig()
.Map(dto => dto.HSCODE, poco => poco.HSCode)
.Map(dto => dto.MARKS, poco => poco.Marks)
.Map(dto => dto.DESCRIPTION, poco => poco.Description)
.Map(dto => dto.PKGS, poco => poco.PKGS)
.Map(dto => dto.KINDPKGS, poco => poco.KindPkgs)
.Map(dto => dto.KGS, poco => poco.KGS)
.Map(dto => dto.CBM, poco => poco.CBM);
//.IgnoreNonMapped(true);//只映射Map指定的属性其他属性都排除;
#region 大简云规则校验
//映射规则引擎
TypeAdapterConfig<SeaExport, RulesEngineOrderBookingMainBusinessInfo>
.NewConfig()
.Map(dto => dto.ContrNo, poco => poco.ContractNo)
.Map(dto => dto.OPID, poco => poco.OperatorId)
.Map(dto => dto.OP, poco => poco.OperatorName)
.Map(dto => dto.DOCID, poco => poco.Doc)
.Map(dto => dto.Doc, poco => poco.DocName)
.Map(dto => dto.SaleId, poco => poco.SaleId)
.Map(dto => dto.Sale, poco => poco.Sale)
.Map(dto => dto.CustserviceId, poco => poco.CustomerService)
.Map(dto => dto.Custservice, poco => poco.CustomerServiceName)
.Map(dto => dto.MasterBlNo, poco => poco.MBLNO)
.Map(dto => dto.HouseBlNo, poco => poco.HBLNO)
.Map(dto => dto.BookingNo, poco => poco.BookingNo)
.Map(dto => dto.ServContrNo, poco => poco.ServiceContractNo)
.Map(dto => dto.Shipper, poco => poco.Shipper)
.Map(dto => dto.ShipperId, poco => poco.ShipperId)
.Map(dto => dto.Consignee, poco => poco.Consignee)
.Map(dto => dto.ConsigneeId, poco => poco.ConsigneeId)
.Map(dto => dto.NotifyParty, poco => poco.NotifyParty)
.Map(dto => dto.NotifyPartyId, poco => poco.NotifyPartyId)
.Map(dto => dto.NotifyPrt2, poco => poco.SecondNotifyParty)
.Map(dto => dto.Yard, poco => poco.Yard)
.Map(dto => dto.YardId, poco => poco.YardId)
.Map(dto => dto.Vessel, poco => poco.Vessel)
.Map(dto => dto.VesselId, poco => poco.VesselId)
.Map(dto => dto.Voyno, poco => poco.Voyno)
.Map(dto => dto.VoynoIn, poco => poco.InnerVoyno)
.Map(dto => dto.ETD, poco => poco.ETD)
.Map(dto => dto.ATD, poco => poco.ATD)
.Map(dto => dto.ETA, poco => poco.ETA)
.Map(dto => dto.ClosingDate, poco => poco.ClosingDate)
.Map(dto => dto.CloseDocDate, poco => poco.CloseDocDate)
.Map(dto => dto.CloseVGMDate, poco => poco.CloseVgmDate)
.Map(dto => dto.PortLoad, poco => poco.LoadPort)
.Map(dto => dto.PortLoadId, poco => poco.LoadPortId)
.Map(dto => dto.PlaceReceipt, poco => poco.ReceiptPlace)
.Map(dto => dto.PlaceReceiptId, poco => poco.ReceiptPlaceId)
.Map(dto => dto.PortDischarge, poco => poco.DischargePort)
.Map(dto => dto.PortDischargeId, poco => poco.DischargePortId)
.Map(dto => dto.PlaceDelivery, poco => poco.DeliveryPlace)
.Map(dto => dto.PlaceDeliveryId, poco => poco.DeliveryPlaceId)
.Map(dto => dto.Destination, poco => poco.Destination)
.Map(dto => dto.DestinationId, poco => poco.DestinationId)
.Map(dto => dto.NoBill, poco => poco.NoBill)
.Map(dto => dto.CopyNoBill, poco => poco.CopyNoBill)
.Map(dto => dto.IssueType, poco => poco.IssueType)
.Map(dto => dto.IssueDate, poco => poco.IssueDate)
.Map(dto => dto.IssuePlace, poco => poco.IssuePlace)
.Map(dto => dto.Blfrt, poco => poco.MBLFrt)
.Map(dto => dto.PrepardAt, poco => poco.PrepareAt)
.Map(dto => dto.PayableAt, poco => poco.PayableAt)
.Map(dto => dto.Service, poco => poco.Service)
.Map(dto => dto.Marks, poco => poco.Marks)
.Map(dto => dto.HsCode, poco => poco.HSCode)
.Map(dto => dto.GoodsDescription, poco => poco.Description)
.Map(dto => dto.PKGs, poco => poco.PKGS)
.Map(dto => dto.KindPKGs, poco => poco.KindPkgs)
.Map(dto => dto.KGs, poco => poco.KGS)
.Map(dto => dto.CBM, poco => poco.CBM)
.Map(dto => dto.TotalNO, poco => poco.TotalNo)
.Map(dto => dto.CntrTotal, poco => poco.CntrTotal)
.Map(dto => dto.Carrier, poco => poco.Carrier)
//.Map(dto => dto.CarrierId, poco => poco.Carrier)
.Map(dto => dto.CargoId, poco => poco.CargoId)
.Map(dto => dto.DClass, poco => poco.DangerClass)
.Map(dto => dto.DUnno, poco => poco.DangerNo)
.Map(dto => dto.DPage, poco => poco.DangerPage)
.Map(dto => dto.DLabel, poco => poco.DangerLabel)
//.Map(dto => dto.DLinkMan, poco => poco.dan)
.Map(dto => dto.TempId, poco => poco.TemperatureUnit)
.Map(dto => dto.TempSet, poco => poco.TemperatureSet)
.Map(dto => dto.Reeferf, poco => poco.ReeferQuantity)
.Map(dto => dto.Humidity, poco => poco.Humidity)
.Map(dto => dto.TempMin, poco => poco.TemperatureMin)
.Map(dto => dto.TempMax, poco => poco.TemperatureMax)
.Map(dto => dto.IsContaSOC, poco => poco.IsContainerSoc)
.Map(dto => dto.YardRemark, poco => poco.YardRemark)
//.Map(dto => dto.CompId, poco => poco.OrgId.ToString())
//.Map(dto => dto.CompName, poco => poco.OrgId.ToString())
//.Map(dto => dto.CustserviceName, poco => poco.CustserviceName)
.Map(dto => dto.Forwarder, poco => poco.Forwarder)
.Map(dto => dto.ShipAgency, poco => poco.ShipAgency)
.Map(dto => dto.CustomsER, poco => poco.Customser)
.Map(dto => dto.TruckER, poco => poco.Trucker)
.Map(dto => dto.AgentId, poco => poco.AgentId)
.Map(dto => dto.CustomerId, poco => poco.CustomerId)
.Map(dto => dto.ForwarderId, poco => poco.ForwarderId)
.Map(dto => dto.ShipAgencyId, poco => poco.ShipAgencyId)
.Map(dto => dto.CustomsERId, poco => poco.CustomserId)
.Map(dto => dto.TruckERId, poco => poco.TruckerId)
//.Map(dto => dto.AgentName, poco => poco.Agent)
.Map(dto => dto.WeiTo, poco => poco.CustomerName)
//.Map(dto => dto.SCACCode, poco => poco.sca)
//.Map(dto => dto.ITNCode, poco => poco.it)
.Map(dto => dto.PrePardAtId, poco => poco.PrepareAtId)
//.Map(dto => dto.PayableAtId, poco => poco.pa)
.Map(dto => dto.CustNo, poco => poco.CustomNo)
.Map(dto => dto.TransportId, poco => poco.TransPortCode)
.Map(dto => dto.Transport, poco => poco.TransPort)
.Map(dto => dto.IsMutipleGoods, poco => poco.IsMoreGood);
#endregion 大简云规则校验
TypeAdapterConfig<OpCtn, RulesEngineOrderBookingContaInfo>
.NewConfig()
.Map(dto => dto.ContaType, poco => poco.CtnCode)
.Map(dto => dto.ContaTypeName, poco => poco.CtnAll)
.Map(dto => dto.ContaNo, poco => poco.CntrNo)
.Map(dto => dto.TEU, poco => poco.TEU)
.Map(dto => dto.SealNo, poco => poco.SealNo)
.Map(dto => dto.PKGs, poco => poco.PKGS)
.Map(dto => dto.KindPKGs, poco => poco.KindPkgs)
.Map(dto => dto.KGs, poco => poco.KGS)
.Map(dto => dto.CBM, poco => poco.CBM)
.Map(dto => dto.TareWeight, poco => poco.TareWeight)
.Map(dto => dto.WeighKGs, poco => poco.WeightKGS)
.Map(dto => dto.WeighType, poco => poco.WeightType)
.Map(dto => dto.ContaStatus, poco => poco.CtnStatus)
;
return builder;
}
}
}

@ -65,260 +65,6 @@ public partial class SeaExportService : ISeaExportService
_djyServiceStatusService = _serviceProvider.GetRequiredService<IDjyServiceStatusService>();
_ruleEngineService = _serviceProvider.GetRequiredService<IRuleEngineService>();
#region 设置对象映射
TypeAdapterConfig<SeaExportEdi, SeaExportEDIBaseModel>
.NewConfig()
.Map(dto => dto.WEITUO, poco => poco.CustomerName)
.Map(dto => dto.OpEName, poco => poco.OpEName)
.Map(dto => dto.OpTel, poco => poco.OpTel)
.Map(dto => dto.OpEmail, poco => poco.OpEmail)
.Map(dto => dto.EDIATTN, poco => poco.EDIAttn)
.Map(dto => dto.EDIATTNTEL, poco => poco.EDIAttnTel)
.Map(dto => dto.EDIATTNEMAIL, poco => poco.EDIAttnMail)
.Map(dto => dto.AMSCONSIGNEE, poco => poco.AMSConsignee)
.Map(dto => dto.AMSNOTIFYPARTY, poco => poco.AMSNotifyParty)
.Map(dto => dto.MasterBOLIndicator, poco => poco.MasterBolIndicator)
.Map(dto => dto.KINGTAREWEIGHT, poco => poco.KingTareweight)
.Map(dto => dto.ConsigneeEdiCode, poco => poco.ConsigneeEdiCode)
.Map(dto => dto.ShipperEdiCode, poco => poco.ShipperEdiCode)
.Map(dto => dto.SalesRepCode, poco => poco.SalerCode)
.Map(dto => dto.ACIHBL, poco => poco.ACIHBL)
.Map(dto => dto.S0CC0C, poco => poco.S0CC0C)
.Map(dto => dto.cKHI, poco => poco.CKHI)
.Map(dto => dto.cNCM, poco => poco.CNCM)
.Map(dto => dto.wNCM, poco => poco.WNCM)
.Map(dto => dto.CNPTNo, poco => poco.CNPTNo)
.Map(dto => dto.ORDERREMARK, poco => poco.OrderRemark)
//.Map(dto => dto.ERNCODE, poco => poco.)
//.Map(dto => dto.TACCODE, poco => poco.)
//.Map(dto => dto.VAECODE, poco => poco.)
//.Map(dto => dto.FECCODE, poco => poco.)
;
TypeAdapterConfig<SeaExport, SeaExportEDIBaseModel>
.NewConfig()
.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.MBLFrtCode)
.Map(dto => dto.VESSEL, poco => poco.Vessel)
.Map(dto => dto.VOYNO, poco => poco.Voyno)
.Map(dto => dto.NVOYNO, poco => poco.InnerVoyno)
.Map(dto => dto.ETD, poco => poco.ETD)
.Map(dto => dto.ETA, poco => poco.ETA)
.Map(dto => dto.CLOSINGDATE, poco => poco.ClosingDate)
.Map(dto => dto.EDIREMARK, poco => poco.EdiRemark)
//.Map(dto => dto.SIREMARK, poco => poco.)
//.Map(dto => dto.BYCOUNTRY, poco => poco.)
.Map(dto => dto.CARRIER, poco => poco.Carrier)
.Map(dto => dto.CARRIERID, poco => poco.Carrier)
.Map(dto => dto.SHIPPER, poco => poco.ShipperContent)
.Map(dto => dto.CONSIGNEE, poco => poco.ConsigneeContent)
.Map(dto => dto.NOTIFYPARTY, poco => poco.NotifyPartyContent)
.Map(dto => dto.NOTIFYPARTY2, poco => poco.SecondNotifyPartyContent)
.Map(dto => dto.HSCODE, poco => poco.HSCode)
.Map(dto => dto.GOODSNAME, poco => poco.GoodsName)
.Map(dto => dto.MARKS, poco => poco.Marks)
//.Map(dto => dto.PLACERECEIPTID, poco => poco.ReceiptPlace)
.Map(dto => dto.PLACERECEIPT, poco => poco.ReceiptPlace)
//.Map(dto => dto.PORTLOADID, poco => poco.LoadPort)
.Map(dto => dto.PORTLOAD, poco => poco.LoadPort)
//.Map(dto => dto.PORTDISCHARGEID, poco => poco.DischargePort)
.Map(dto => dto.PORTDISCHARGE, poco => poco.DischargePort)
.Map(dto => dto.TRANSPORTID, poco => poco.TransPortCode)
.Map(dto => dto.TRANSPORT, poco => poco.TransPort)
//.Map(dto => dto.PLACEDELIVERYID, poco => poco.DeliveryPlace)
.Map(dto => dto.PLACEDELIVERY, poco => poco.DeliveryPlace)
//.Map(dto => dto.DESTINATIONID, poco => poco.Destination)
.Map(dto => dto.DESTINATION, poco => poco.Destination)
.Map(dto => dto.PKGS, poco => poco.PKGS)
.Map(dto => dto.KINDPKGS, poco => poco.KindPkgs)
.Map(dto => dto.CBM, poco => poco.CBM)
.Map(dto => dto.CARGOID, poco => poco.CargoId)
.Map(dto => dto.DCLASS, poco => poco.DangerClass)
.Map(dto => dto.DUNNO, poco => poco.DangerNo)
.Map(dto => dto.DPAGE, poco => poco.DangerPage)
.Map(dto => dto.DLABEL, poco => poco.DangerLabel)
.Map(dto => dto.TEMPSET, poco => poco.TemperatureSet)
.Map(dto => dto.TEMPMIN, poco => poco.TemperatureMin)
.Map(dto => dto.TEMPMAX, poco => poco.TemperatureMax)
.Map(dto => dto.REEFERF, poco => poco.ReeferQuantity)
.Map(dto => dto.HUMIDITY, poco => poco.Humidity)
.Map(dto => dto.PREPARDAT, poco => poco.PrepareAt)
.Map(dto => dto.PREPARDATID, poco => poco.PrepareAt)
.Map(dto => dto.PAYABLEAT, poco => poco.PayableAt)
.Map(dto => dto.PAYABLEATID, poco => poco.PayableAt)
.Map(dto => dto.NOBILL, poco => poco.NoBill)
.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.ServiceCode)
.Map(dto => dto.CONTRACTNO, poco => poco.ContractNo)
.Map(dto => dto.SERVICECONTRACTNO, poco => poco.ServiceContractNo)
//.Map(dto => dto.CONSIGNEEPOSTCODE, poco => poco.)
//.Map(dto => dto.CONSIGNEECOUNTRY, poco => poco.)
//.Map(dto => dto.CONSIGNEETAXNO, poco => poco.)
//.Map(dto => dto.NOTIFYPARTYPOSTCODE, poco => poco.)
//.Map(dto => dto.NOTIFYPARTYCOUNTRY, poco => poco.)
//.Map(dto => dto.NOTIFYPARTYTAXNO, poco => poco.)
//.Map(dto => dto.CONSIGNEEDOORADDR, poco => poco.)
//.Map(dto => dto.SHIPPERDOORADDR, poco => poco.)
//.Map(dto => dto.SCACCODE, poco => poco.)
//.Map(dto => dto.ITNCODE, poco => poco.)
//.Map(dto => dto.FREIGHTPAYER, poco => poco.)
//.Map(dto => dto.AMSCODE, poco => poco.)
.Map(dto => dto.ISCONTAINERSOC, poco => poco.IsContainerSoc)
.Map(dto => dto.DESCRIPTION, poco => poco.Description)
.Map(dto => dto.CARGOID, poco => poco.CargoId)
//.Map(dto => dto.GOODSCODE, poco => poco.GoodsName)
//.Map(dto => dto.SERVICEEDICODE, poco => poco.)
;
TypeAdapterConfig<OpCtn, SeaExportCtnEDIBaseModel>
.NewConfig()
.Map(dto => dto.CNTRNO, poco => poco.CntrNo)
.Map(dto => dto.TEU, poco => poco.TEU)
.Map(dto => dto.CTNNUM, poco => poco.CtnNum)
.Map(dto => dto.CTNSTATUS, poco => poco.CtnStatus)
.Map(dto => dto.SEALNO, poco => poco.SealNo)
.Map(dto => dto.PKGS, poco => poco.PKGS)
.Map(dto => dto.KINDPKGS, poco => poco.KindPkgs)
.Map(dto => dto.KGS, poco => poco.KGS)
.Map(dto => dto.CBM, poco => poco.CBM)
.Map(dto => dto.TAREWEIGHT, poco => poco.TareWeight)
.Map(dto => dto.WEIGHKGS, poco => poco.WeightKGS)
.Map(dto => dto.WEIGHTYPE, poco => poco.WeightType)
.Map(dto => dto.WEIGHSIGN, poco => poco.WeightSign)
;
TypeAdapterConfig<OpCtnDetail, SeaExportCtnDetailEDIBaseModel>
.NewConfig()
.Map(dto => dto.HSCODE, poco => poco.HSCode)
.Map(dto => dto.MARKS, poco => poco.Marks)
.Map(dto => dto.DESCRIPTION, poco => poco.Description)
.Map(dto => dto.PKGS, poco => poco.PKGS)
.Map(dto => dto.KINDPKGS, poco => poco.KindPkgs)
.Map(dto => dto.KGS, poco => poco.KGS)
.Map(dto => dto.CBM, poco => poco.CBM);
//.IgnoreNonMapped(true);//只映射Map指定的属性其他属性都排除;
//映射规则引擎
TypeAdapterConfig<SeaExport, RulesEngineOrderBookingMainBusinessInfo>
.NewConfig()
.Map(dto => dto.ContrNo, poco => poco.ContractNo)
.Map(dto => dto.MasterBlNo, poco => poco.MBLNO)
.Map(dto => dto.HouseBlNo, poco => poco.HBLNO)
.Map(dto => dto.BookingNo, poco => poco.BookingNo)
.Map(dto => dto.ServContrNo, poco => poco.ServiceContractNo)
.Map(dto => dto.Shipper, poco => poco.Shipper)
.Map(dto => dto.ShipperId, poco => poco.ShipperId)
.Map(dto => dto.Consignee, poco => poco.Consignee)
.Map(dto => dto.ConsigneeId, poco => poco.ConsigneeId)
.Map(dto => dto.NotifyParty, poco => poco.NotifyParty)
.Map(dto => dto.NotifyPartyId, poco => poco.NotifyPartyId)
.Map(dto => dto.NotifyPrt2, poco => poco.SecondNotifyParty)
.Map(dto => dto.Yard, poco => poco.Yard)
.Map(dto => dto.YardId, poco => poco.YardId)
.Map(dto => dto.Vessel, poco => poco.Vessel)
.Map(dto => dto.VesselId, poco => poco.VesselId)
.Map(dto => dto.Voyno, poco => poco.Voyno)
.Map(dto => dto.VoynoIn, poco => poco.InnerVoyno)
.Map(dto => dto.ETD, poco => poco.ETD)
.Map(dto => dto.ATD, poco => poco.ATD)
.Map(dto => dto.ETA, poco => poco.ETA)
.Map(dto => dto.ClosingDate, poco => poco.ClosingDate)
.Map(dto => dto.CloseDocDate, poco => poco.CloseDocDate)
.Map(dto => dto.CloseVGMDate, poco => poco.CloseVgmDate)
.Map(dto => dto.PortLoad, poco => poco.LoadPort)
.Map(dto => dto.PortLoadId, poco => poco.LoadPortId)
.Map(dto => dto.PlaceReceipt, poco => poco.ReceiptPlace)
.Map(dto => dto.PlaceReceiptId, poco => poco.ReceiptPlaceId)
.Map(dto => dto.PortDischarge, poco => poco.DischargePort)
.Map(dto => dto.PortDischargeId, poco => poco.DischargePortId)
.Map(dto => dto.PlaceDelivery, poco => poco.DeliveryPlace)
.Map(dto => dto.PlaceDeliveryId, poco => poco.DeliveryPlaceId)
.Map(dto => dto.Destination, poco => poco.Destination)
.Map(dto => dto.DestinationId, poco => poco.DestinationId)
.Map(dto => dto.NoBill, poco => poco.NoBill)
.Map(dto => dto.CopyNoBill, poco => poco.CopyNoBill)
.Map(dto => dto.IssueType, poco => poco.IssueType)
.Map(dto => dto.IssueDate, poco => poco.IssueDate)
.Map(dto => dto.IssuePlace, poco => poco.IssuePlace)
.Map(dto => dto.Blfrt, poco => poco.MBLFrt)
.Map(dto => dto.PrepardAt, poco => poco.PrepareAt)
.Map(dto => dto.PayableAt, poco => poco.PayableAt)
.Map(dto => dto.Service, poco => poco.Service)
.Map(dto => dto.Marks, poco => poco.Marks)
.Map(dto => dto.HsCode, poco => poco.HSCode)
.Map(dto => dto.GoodsDescription, poco => poco.Description)
.Map(dto => dto.PKGs, poco => poco.PKGS)
.Map(dto => dto.KindPKGs, poco => poco.KindPkgs)
.Map(dto => dto.KGs, poco => poco.KGS)
.Map(dto => dto.CBM, poco => poco.CBM)
.Map(dto => dto.TotalNO, poco => poco.TotalNo)
.Map(dto => dto.CntrTotal, poco => poco.CntrTotal)
.Map(dto => dto.Carrier, poco => poco.Carrier)
//.Map(dto => dto.CarrierId, poco => poco.Carrier)
.Map(dto => dto.CargoId, poco => poco.CargoId)
.Map(dto => dto.DClass, poco => poco.DangerClass)
.Map(dto => dto.DUnno, poco => poco.DangerNo)
.Map(dto => dto.DPage, poco => poco.DangerPage)
.Map(dto => dto.DLabel, poco => poco.DangerLabel)
//.Map(dto => dto.DLinkMan, poco => poco.dan)
.Map(dto => dto.TempId, poco => poco.TemperatureUnit)
.Map(dto => dto.TempSet, poco => poco.TemperatureSet)
.Map(dto => dto.Reeferf, poco => poco.ReeferQuantity)
.Map(dto => dto.Humidity, poco => poco.Humidity)
.Map(dto => dto.TempMin, poco => poco.TemperatureMin)
.Map(dto => dto.TempMax, poco => poco.TemperatureMax)
.Map(dto => dto.IsContaSOC, poco => poco.IsContainerSoc)
.Map(dto => dto.YardRemark, poco => poco.YardRemark)
//.Map(dto => dto.CompId, poco => poco.OrgId.ToString())
//.Map(dto => dto.CompName, poco => poco.OrgId.ToString())
//.Map(dto => dto.CustserviceName, poco => poco.CustserviceName)
.Map(dto => dto.Forwarder, poco => poco.Forwarder)
.Map(dto => dto.ShipAgency, poco => poco.ShipAgency)
.Map(dto => dto.CustomsER, poco => poco.Customser)
.Map(dto => dto.TruckER, poco => poco.Trucker)
.Map(dto => dto.AgentId, poco => poco.AgentId)
.Map(dto => dto.CustomerId, poco => poco.CustomerId)
.Map(dto => dto.ForwarderId, poco => poco.ForwarderId)
.Map(dto => dto.ShipAgencyId, poco => poco.ShipAgencyId)
.Map(dto => dto.CustomsERId, poco => poco.CustomserId)
.Map(dto => dto.TruckERId, poco => poco.TruckerId)
//.Map(dto => dto.AgentName, poco => poco.Agent)
.Map(dto => dto.WeiTo, poco => poco.CustomerName)
//.Map(dto => dto.SCACCode, poco => poco.sca)
//.Map(dto => dto.ITNCode, poco => poco.it)
.Map(dto => dto.PrePardAtId, poco => poco.PrepareAtId)
//.Map(dto => dto.PayableAtId, poco => poco.pa)
.Map(dto => dto.CustNo, poco => poco.CustomNo)
.Map(dto => dto.TransportId, poco => poco.TransPortCode)
.Map(dto => dto.Transport, poco => poco.TransPort)
.Map(dto => dto.IsMutipleGoods, poco => poco.IsMoreGood);
TypeAdapterConfig<OpCtn, RulesEngineOrderBookingContaInfo>
.NewConfig()
.Map(dto => dto.ContaType, poco => poco.CtnCode)
.Map(dto => dto.ContaTypeName, poco => poco.CtnAll)
.Map(dto => dto.ContaNo, poco => poco.CntrNo)
.Map(dto => dto.TEU, poco => poco.TEU)
.Map(dto => dto.SealNo, poco => poco.SealNo)
.Map(dto => dto.PKGs, poco => poco.PKGS)
.Map(dto => dto.KindPKGs, poco => poco.KindPkgs)
.Map(dto => dto.KGs, poco => poco.KGS)
.Map(dto => dto.CBM, poco => poco.CBM)
.Map(dto => dto.TareWeight, poco => poco.TareWeight)
.Map(dto => dto.WeighKGs, poco => poco.WeightKGS)
.Map(dto => dto.WeighType, poco => poco.WeightType)
.Map(dto => dto.ContaStatus, poco => poco.CtnStatus)
;
#endregion 设置对象映射
}
/// <summary>

@ -19,7 +19,6 @@ using DS.WMS.Core.TaskPlat;
using DS.WMS.Core.TaskPlat.Dtos;
using DS.WMS.Core.TaskPlat.Entity;
using DS.WMS.Core.TaskPlat.Interface;
using LanguageExt.Common;
using Mapster;
using Masuit.Tools;
using Masuit.Tools.Systems;
@ -118,7 +117,7 @@ namespace DS.WMS.Core.Op.Method.TaskInteraction
if (request.TaskType == TaskBaseTypeEnum.WAIT_ORDER_AUDIT)
{
var result = await CheckRulesAsync(request.BusinessId, request.BusinessType);
var result = await CheckRulesAsync(request.BusinessId, request.BusinessType, RuleEngineType.COMMON_ORDER_AUDIT);
if (!result.Succeeded)
return result;
}
@ -460,7 +459,7 @@ namespace DS.WMS.Core.Op.Method.TaskInteraction
if (task.TaskStatus == TaskStatusEnum.Pending)
{
var result = await CheckRulesAsync(request.BusinessId, request.BusinessType);
var result = await CheckRulesAsync(request.BusinessId, request.BusinessType, RuleEngineType.COMMON_ORDER_AUDIT);
if (!result.Succeeded)
return result;
@ -555,7 +554,7 @@ namespace DS.WMS.Core.Op.Method.TaskInteraction
//如果当前审批为终审,则调用规则库进行校验
if (flowInstance.GetMarkerList().Length == 1)
{
result = await CheckRulesAsync(id, request.BusinessType.GetValueOrDefault());
result = await CheckRulesAsync(id, request.BusinessType.GetValueOrDefault(), RuleEngineType.COMMON_OCEAN_BOOKING);
if (!result.Succeeded)
return result;
}
@ -673,11 +672,12 @@ namespace DS.WMS.Core.Op.Method.TaskInteraction
});
}
async Task<DataResult> CheckRulesAsync(long bsId, BusinessType businessType)
async Task<DataResult> CheckRulesAsync(long bsId, BusinessType businessType, RuleEngineType ruleType)
{
var rulesReq = new RuleEngineReq();
var order = await TenantDb.Queryable<SeaExport>().Where(x => x.Id == bsId).FirstAsync();
rulesReq.Main.BusinessInfo = order.Adapt<RulesEngineOrderBookingMainBusinessInfo>();
rulesReq.Main.ProjectCode = [ruleType.ToString()];
var ruleResult = await RuleEngineService.Value.ExecuteSeaExportAuditRulesAsync(rulesReq);
if (string.Equals(ruleResult.Succ, bool.FalseString, StringComparison.OrdinalIgnoreCase))
@ -843,4 +843,20 @@ namespace DS.WMS.Core.Op.Method.TaskInteraction
}
}
}
/// <summary>
/// 校验规则类型
/// </summary>
public enum RuleEngineType
{
/// <summary>
/// 订单提交审核
/// </summary>
COMMON_ORDER_AUDIT,
/// <summary>
/// 订舱
/// </summary>
COMMON_OCEAN_BOOKING
}
}

@ -4,20 +4,17 @@ using DS.Module.AutofacModule;
using DS.Module.Core;
using DS.Module.Core.Extensions;
using DS.Module.Core.ServiceExtensions;
using DS.Module.ExcelModule;
using DS.Module.DjyRulesEngine;
using DS.Module.Jwt;
using DS.Module.MultiLanguage;
using DS.Module.PrintModule;
using DS.Module.RedisModule;
using DS.Module.SqlSugar;
using DS.Module.DjyServiceStatus;
using DS.Module.Swagger;
using DS.Module.UserModule;
using DS.WMS.Core;
using NLog.Web;
using Swashbuckle.AspNetCore.SwaggerUI;
using DS.Module.PrintModule;
using DS.Module.DjyRulesEngine;
using DS.Module.RedisModule;
using DS.WMS.Core.Sys.Interface;
using DS.WMS.Core.Sys.Method;
var builder = WebApplication.CreateBuilder(args);
var environment = builder.Environment.EnvironmentName;
@ -90,6 +87,8 @@ app.UseMiddleware<MultiLanguageMiddleware>();
// //操作日志中间件
// app.UseMiddleware<OperationLogMiddleware>();
app.UseObjectMapping();
// 先开启认证
app.UseAuthentication();
// 然后是授权中间件

Loading…
Cancel
Save