diff --git a/ds-wms-service/DS.Module.DjyRulesEngine/RuleEngineService.cs b/ds-wms-service/DS.Module.DjyRulesEngine/RuleEngineService.cs index 6c32df57..b7a5fb59 100644 --- a/ds-wms-service/DS.Module.DjyRulesEngine/RuleEngineService.cs +++ b/ds-wms-service/DS.Module.DjyRulesEngine/RuleEngineService.cs @@ -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 { diff --git a/ds-wms-service/DS.WMS.Core/ObjectMapping.cs b/ds-wms-service/DS.WMS.Core/ObjectMapping.cs new file mode 100644 index 00000000..ab40e8b7 --- /dev/null +++ b/ds-wms-service/DS.WMS.Core/ObjectMapping.cs @@ -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 + { + /// + /// 使用自动对象映射 + /// + /// + /// + public static IApplicationBuilder UseObjectMapping(this IApplicationBuilder builder) + { + TypeAdapterConfig + .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 + .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 + .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 + .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 + .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 + .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; + } + } +} diff --git a/ds-wms-service/DS.WMS.Core/Op/Method/SeaExportService.cs b/ds-wms-service/DS.WMS.Core/Op/Method/SeaExportService.cs index ea8f6afb..170ffe2a 100644 --- a/ds-wms-service/DS.WMS.Core/Op/Method/SeaExportService.cs +++ b/ds-wms-service/DS.WMS.Core/Op/Method/SeaExportService.cs @@ -65,260 +65,6 @@ public partial class SeaExportService : ISeaExportService _djyServiceStatusService = _serviceProvider.GetRequiredService(); _ruleEngineService = _serviceProvider.GetRequiredService(); - #region 设置对象映射 - TypeAdapterConfig - .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 - .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 - .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 - .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 - .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 - .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 设置对象映射 } /// diff --git a/ds-wms-service/DS.WMS.Core/Op/Method/TaskInteraction/TaskService.cs b/ds-wms-service/DS.WMS.Core/Op/Method/TaskInteraction/TaskService.cs index cddb8c12..eb78a418 100644 --- a/ds-wms-service/DS.WMS.Core/Op/Method/TaskInteraction/TaskService.cs +++ b/ds-wms-service/DS.WMS.Core/Op/Method/TaskInteraction/TaskService.cs @@ -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,10 +554,10 @@ 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; - } + } result = FlowService.Value.AuditFlowInstance(new FlowAuditInfo { @@ -673,11 +672,12 @@ namespace DS.WMS.Core.Op.Method.TaskInteraction }); } - async Task CheckRulesAsync(long bsId, BusinessType businessType) + async Task CheckRulesAsync(long bsId, BusinessType businessType, RuleEngineType ruleType) { var rulesReq = new RuleEngineReq(); var order = await TenantDb.Queryable().Where(x => x.Id == bsId).FirstAsync(); rulesReq.Main.BusinessInfo = order.Adapt(); + 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 } } } + + /// + /// 校验规则类型 + /// + public enum RuleEngineType + { + /// + /// 订单提交审核 + /// + COMMON_ORDER_AUDIT, + + /// + /// 订舱 + /// + COMMON_OCEAN_BOOKING + } } diff --git a/ds-wms-service/DS.WMS.OpApi/Program.cs b/ds-wms-service/DS.WMS.OpApi/Program.cs index af24c306..31cb4585 100644 --- a/ds-wms-service/DS.WMS.OpApi/Program.cs +++ b/ds-wms-service/DS.WMS.OpApi/Program.cs @@ -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(); // //־м // app.UseMiddleware(); +app.UseObjectMapping(); + // ȿ֤ app.UseAuthentication(); // ȻȨм