Version 5.0.5
This commit is contained in:
parent
09c4e38513
commit
dccb6f178b
@ -26,12 +26,12 @@
|
||||
<value>1000</value>
|
||||
</setting>
|
||||
<setting name="LockingServerAddress" serializeAs="String">
|
||||
<value>http://192.168.2.4/LockingService/LockingService.svc</value>
|
||||
<!--value>http://heupferd/bsmd.LockingService/LockingService.svc</value-->
|
||||
<!--value>http://192.168.2.4/LockingService/LockingService.svc</value-->
|
||||
<value>http://heupferd/bsmd.LockingService/LockingService.svc</value>
|
||||
</setting>
|
||||
<setting name="ConnectionString" serializeAs="String">
|
||||
<value>Data Source=192.168.2.12;Initial Catalog=nsw;Uid=dfuser;Pwd=dfpasswd;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False</value>
|
||||
<!--value>Data Source=(localdb)\Projects;Initial Catalog=nsw;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False</value-->
|
||||
<!--value>Data Source=192.168.2.12;Initial Catalog=nsw;Uid=dfuser;Pwd=dfpasswd;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False</value-->
|
||||
<value>Data Source=(localdb)\Projects;Initial Catalog=nsw;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False</value>
|
||||
</setting>
|
||||
</ENI2.Properties.Settings>
|
||||
</applicationSettings>
|
||||
|
||||
@ -35,8 +35,8 @@
|
||||
<MinimumRequiredVersion>3.5.1.0</MinimumRequiredVersion>
|
||||
<CreateWebPageOnPublish>true</CreateWebPageOnPublish>
|
||||
<WebPage>publish.html</WebPage>
|
||||
<ApplicationRevision>1</ApplicationRevision>
|
||||
<ApplicationVersion>5.0.4.%2a</ApplicationVersion>
|
||||
<ApplicationRevision>0</ApplicationRevision>
|
||||
<ApplicationVersion>5.0.5.%2a</ApplicationVersion>
|
||||
<UseApplicationTrust>false</UseApplicationTrust>
|
||||
<CreateDesktopShortcut>true</CreateDesktopShortcut>
|
||||
<PublishWizardCompleted>true</PublishWizardCompleted>
|
||||
|
||||
Binary file not shown.
@ -1110,7 +1110,9 @@ namespace bsmd.ReportGenerator
|
||||
if (LocalizedLookup.getVesselTypes().ContainsKey(value))
|
||||
result = string.Format("{0} - {1}", value, LocalizedLookup.getVesselTypes()[value]);
|
||||
break;
|
||||
case "INFShipClass":
|
||||
case "INF-Ship-Class":
|
||||
case "INF - Ship - Class":
|
||||
{
|
||||
switch(value)
|
||||
{
|
||||
@ -1121,6 +1123,7 @@ namespace bsmd.ReportGenerator
|
||||
}
|
||||
}
|
||||
break;
|
||||
case "PackingGroup":
|
||||
case "Packing Group":
|
||||
{
|
||||
switch (value)
|
||||
|
||||
@ -264,6 +264,11 @@ namespace bsmd.database
|
||||
errors.Add(RuleEngine.CreateError(ValidationCode.IMPLAUSIBLE, "Flashpoint_CEL", null, this.Title, this.Identifier, this.HAZ.IsDeparture ? "HAZD" : "HAZA"));
|
||||
}
|
||||
|
||||
if(!this.Hazards.HasValue)
|
||||
{
|
||||
violations.Add(RuleEngine.CreateViolation(ValidationCode.V810, "Hazards", null, this.Title, this.Identifier, this.HAZ.IsDeparture ? "HAZD" : "HAZA"));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
@ -2,6 +2,6 @@
|
||||
|
||||
[assembly: AssemblyCompany("schick Informatik")]
|
||||
[assembly: AssemblyProduct("BSMD NSW interface")]
|
||||
[assembly: AssemblyInformationalVersion("5.0.4")]
|
||||
[assembly: AssemblyInformationalVersion("5.0.5")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2014-2018 schick Informatik")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
@ -1,4 +1,4 @@
|
||||
using System.Reflection;
|
||||
|
||||
[assembly: AssemblyVersion("5.0.4.*")]
|
||||
[assembly: AssemblyVersion("5.0.5.*")]
|
||||
|
||||
|
||||
@ -158,6 +158,10 @@ namespace bsmd.database
|
||||
props.AddRange(objType.GetProperties().Where(prop => Attribute.IsDefined(prop, typeof(ValidationAttribute))));
|
||||
// add "block" validation properties to check list
|
||||
props.AddRange(objType.GetProperties().Where( prop => Attribute.IsDefined(prop, attribType)) );
|
||||
// alle "MaxLength" Properties hinzufügen die sonst keine Validierung haben
|
||||
props.AddRange(objType.GetProperties().Where(prop => (!Attribute.IsDefined(prop, typeof(ValidationAttribute)) &&
|
||||
!Attribute.IsDefined(prop, attribType) &&
|
||||
Attribute.IsDefined(prop, typeof(MaxLengthAttribute)))));
|
||||
|
||||
foreach (PropertyInfo property in props)
|
||||
{
|
||||
|
||||
@ -79,6 +79,7 @@ namespace bsmd.database
|
||||
V807 = 807,
|
||||
V808 = 808,
|
||||
V809 = 809,
|
||||
V810 = 810,
|
||||
V821 = 821,
|
||||
}
|
||||
|
||||
|
||||
@ -21,7 +21,7 @@ namespace bsmd.dbh.ResponseService
|
||||
bsmd.dbh.response.RootReportingClassesPartial ReportingClassesPartial,
|
||||
bsmd.dbh.response.RootReportingClassesError RootReportingClassesError,
|
||||
bsmd.dbh.response.RootReportingClassesResetted ReportingClassesResetted,
|
||||
bsmd.dbh.response.Message[] Messages);
|
||||
bsmd.dbh.response.RootMessage[] Messages);
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -18,7 +18,7 @@ namespace bsmd.dbh.ResponseService
|
||||
bsmd.dbh.response.RootReportingClassesPartial ReportingClassesPartial,
|
||||
bsmd.dbh.response.RootReportingClassesError RootReportingClassesError,
|
||||
bsmd.dbh.response.RootReportingClassesResetted ReportingClassesResetted,
|
||||
bsmd.dbh.response.Message[] Messages)
|
||||
bsmd.dbh.response.RootMessage[] Messages)
|
||||
{
|
||||
|
||||
// Der Fehler hier aktuell ist dass alles funktioniert, außer dass "Messages" nicht
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// Dieser Code wurde von einem Tool generiert.
|
||||
// Laufzeitversion:4.0.30319.34209
|
||||
// Laufzeitversion:4.0.30319.42000
|
||||
//
|
||||
// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
|
||||
// der Code erneut generiert wird.
|
||||
@ -11,13 +11,14 @@
|
||||
using System.Xml.Serialization;
|
||||
|
||||
//
|
||||
// This source code was auto-generated by xsd, Version=4.0.30319.1.
|
||||
// Dieser Quellcode wurde automatisch generiert von xsd, Version=4.6.1055.0.
|
||||
//
|
||||
|
||||
namespace bsmd.dbh.response
|
||||
{
|
||||
|
||||
/// <remarks/>
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.6.1055.0")]
|
||||
[System.SerializableAttribute()]
|
||||
[System.Diagnostics.DebuggerStepThroughAttribute()]
|
||||
[System.ComponentModel.DesignerCategoryAttribute("code")]
|
||||
@ -34,8 +35,12 @@ namespace bsmd.dbh.response
|
||||
|
||||
private string transitIdField;
|
||||
|
||||
private string[] sisNumbersField;
|
||||
|
||||
private System.DateTime timestampField;
|
||||
|
||||
private string senderReferenceField;
|
||||
|
||||
private RootType typeField;
|
||||
|
||||
private RootReportingClassesFull reportingClassesFullField;
|
||||
@ -46,7 +51,7 @@ namespace bsmd.dbh.response
|
||||
|
||||
private RootReportingClassesResetted reportingClassesResettedField;
|
||||
|
||||
private Message[] messagesField;
|
||||
private RootMessage[] messagesField;
|
||||
|
||||
/// <remarks/>
|
||||
public string Version
|
||||
@ -100,6 +105,20 @@ namespace bsmd.dbh.response
|
||||
}
|
||||
}
|
||||
|
||||
/// <remarks/>
|
||||
[System.Xml.Serialization.XmlArrayItemAttribute("SisNumber", IsNullable = false)]
|
||||
public string[] SisNumbers
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.sisNumbersField;
|
||||
}
|
||||
set
|
||||
{
|
||||
this.sisNumbersField = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <remarks/>
|
||||
public System.DateTime Timestamp
|
||||
{
|
||||
@ -113,6 +132,19 @@ namespace bsmd.dbh.response
|
||||
}
|
||||
}
|
||||
|
||||
/// <remarks/>
|
||||
public string SenderReference
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.senderReferenceField;
|
||||
}
|
||||
set
|
||||
{
|
||||
this.senderReferenceField = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <remarks/>
|
||||
public RootType Type
|
||||
{
|
||||
@ -180,7 +212,7 @@ namespace bsmd.dbh.response
|
||||
|
||||
/// <remarks/>
|
||||
[System.Xml.Serialization.XmlArrayItemAttribute("Message", IsNullable = false)]
|
||||
public Message[] Messages
|
||||
public RootMessage[] Messages
|
||||
{
|
||||
get
|
||||
{
|
||||
@ -194,7 +226,7 @@ namespace bsmd.dbh.response
|
||||
}
|
||||
|
||||
/// <remarks/>
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.6.1055.0")]
|
||||
[System.SerializableAttribute()]
|
||||
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
|
||||
public enum RootType
|
||||
@ -217,7 +249,7 @@ namespace bsmd.dbh.response
|
||||
}
|
||||
|
||||
/// <remarks/>
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.6.1055.0")]
|
||||
[System.SerializableAttribute()]
|
||||
[System.Diagnostics.DebuggerStepThroughAttribute()]
|
||||
[System.ComponentModel.DesignerCategoryAttribute("code")]
|
||||
@ -225,11 +257,11 @@ namespace bsmd.dbh.response
|
||||
public partial class RootReportingClassesFull
|
||||
{
|
||||
|
||||
private RootReportingClassesFullReportingClass[] reportingClassField;
|
||||
private ReportingClassCode[] reportingClassField;
|
||||
|
||||
/// <remarks/>
|
||||
[System.Xml.Serialization.XmlElementAttribute("ReportingClass")]
|
||||
public RootReportingClassesFullReportingClass[] ReportingClass
|
||||
public ReportingClassCode[] ReportingClass
|
||||
{
|
||||
get
|
||||
{
|
||||
@ -243,10 +275,9 @@ namespace bsmd.dbh.response
|
||||
}
|
||||
|
||||
/// <remarks/>
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.6.1055.0")]
|
||||
[System.SerializableAttribute()]
|
||||
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
|
||||
public enum RootReportingClassesFullReportingClass
|
||||
public enum ReportingClassCode
|
||||
{
|
||||
|
||||
/// <remarks/>
|
||||
@ -261,6 +292,9 @@ namespace bsmd.dbh.response
|
||||
/// <remarks/>
|
||||
SEC,
|
||||
|
||||
/// <remarks/>
|
||||
AGNT,
|
||||
|
||||
/// <remarks/>
|
||||
POBA,
|
||||
|
||||
@ -326,7 +360,7 @@ namespace bsmd.dbh.response
|
||||
}
|
||||
|
||||
/// <remarks/>
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.6.1055.0")]
|
||||
[System.SerializableAttribute()]
|
||||
[System.Diagnostics.DebuggerStepThroughAttribute()]
|
||||
[System.ComponentModel.DesignerCategoryAttribute("code")]
|
||||
@ -334,11 +368,11 @@ namespace bsmd.dbh.response
|
||||
public partial class RootReportingClassesPartial
|
||||
{
|
||||
|
||||
private RootReportingClassesPartialReportingClass[] reportingClassField;
|
||||
private ReportingClassCode[] reportingClassField;
|
||||
|
||||
/// <remarks/>
|
||||
[System.Xml.Serialization.XmlElementAttribute("ReportingClass")]
|
||||
public RootReportingClassesPartialReportingClass[] ReportingClass
|
||||
public ReportingClassCode[] ReportingClass
|
||||
{
|
||||
get
|
||||
{
|
||||
@ -352,90 +386,7 @@ namespace bsmd.dbh.response
|
||||
}
|
||||
|
||||
/// <remarks/>
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
|
||||
[System.SerializableAttribute()]
|
||||
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
|
||||
public enum RootReportingClassesPartialReportingClass
|
||||
{
|
||||
|
||||
/// <remarks/>
|
||||
NOA_NOD,
|
||||
|
||||
/// <remarks/>
|
||||
ATA,
|
||||
|
||||
/// <remarks/>
|
||||
ATD,
|
||||
|
||||
/// <remarks/>
|
||||
SEC,
|
||||
|
||||
/// <remarks/>
|
||||
POBA,
|
||||
|
||||
/// <remarks/>
|
||||
POBD,
|
||||
|
||||
/// <remarks/>
|
||||
NAME,
|
||||
|
||||
/// <remarks/>
|
||||
TIEFA,
|
||||
|
||||
/// <remarks/>
|
||||
TIEFD,
|
||||
|
||||
/// <remarks/>
|
||||
BKRA,
|
||||
|
||||
/// <remarks/>
|
||||
BKRD,
|
||||
|
||||
/// <remarks/>
|
||||
STAT,
|
||||
|
||||
/// <remarks/>
|
||||
LADG,
|
||||
|
||||
/// <remarks/>
|
||||
INFO,
|
||||
|
||||
/// <remarks/>
|
||||
SERV,
|
||||
|
||||
/// <remarks/>
|
||||
PRE72H,
|
||||
|
||||
/// <remarks/>
|
||||
MDH,
|
||||
|
||||
/// <remarks/>
|
||||
WAS,
|
||||
|
||||
/// <remarks/>
|
||||
CREW,
|
||||
|
||||
/// <remarks/>
|
||||
PAS,
|
||||
|
||||
/// <remarks/>
|
||||
BPOL,
|
||||
|
||||
/// <remarks/>
|
||||
TOWA,
|
||||
|
||||
/// <remarks/>
|
||||
TOWD,
|
||||
|
||||
/// <remarks/>
|
||||
HAZA,
|
||||
|
||||
/// <remarks/>
|
||||
HAZD,
|
||||
}
|
||||
|
||||
/// <remarks/>
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.6.1055.0")]
|
||||
[System.SerializableAttribute()]
|
||||
[System.Diagnostics.DebuggerStepThroughAttribute()]
|
||||
[System.ComponentModel.DesignerCategoryAttribute("code")]
|
||||
@ -443,11 +394,11 @@ namespace bsmd.dbh.response
|
||||
public partial class RootReportingClassesError
|
||||
{
|
||||
|
||||
private RootReportingClassesErrorReportingClass[] reportingClassField;
|
||||
private ReportingClassCode[] reportingClassField;
|
||||
|
||||
/// <remarks/>
|
||||
[System.Xml.Serialization.XmlElementAttribute("ReportingClass")]
|
||||
public RootReportingClassesErrorReportingClass[] ReportingClass
|
||||
public ReportingClassCode[] ReportingClass
|
||||
{
|
||||
get
|
||||
{
|
||||
@ -461,90 +412,7 @@ namespace bsmd.dbh.response
|
||||
}
|
||||
|
||||
/// <remarks/>
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
|
||||
[System.SerializableAttribute()]
|
||||
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
|
||||
public enum RootReportingClassesErrorReportingClass
|
||||
{
|
||||
|
||||
/// <remarks/>
|
||||
NOA_NOD,
|
||||
|
||||
/// <remarks/>
|
||||
ATA,
|
||||
|
||||
/// <remarks/>
|
||||
ATD,
|
||||
|
||||
/// <remarks/>
|
||||
SEC,
|
||||
|
||||
/// <remarks/>
|
||||
POBA,
|
||||
|
||||
/// <remarks/>
|
||||
POBD,
|
||||
|
||||
/// <remarks/>
|
||||
NAME,
|
||||
|
||||
/// <remarks/>
|
||||
TIEFA,
|
||||
|
||||
/// <remarks/>
|
||||
TIEFD,
|
||||
|
||||
/// <remarks/>
|
||||
BKRA,
|
||||
|
||||
/// <remarks/>
|
||||
BKRD,
|
||||
|
||||
/// <remarks/>
|
||||
STAT,
|
||||
|
||||
/// <remarks/>
|
||||
LADG,
|
||||
|
||||
/// <remarks/>
|
||||
INFO,
|
||||
|
||||
/// <remarks/>
|
||||
SERV,
|
||||
|
||||
/// <remarks/>
|
||||
PRE72H,
|
||||
|
||||
/// <remarks/>
|
||||
MDH,
|
||||
|
||||
/// <remarks/>
|
||||
WAS,
|
||||
|
||||
/// <remarks/>
|
||||
CREW,
|
||||
|
||||
/// <remarks/>
|
||||
PAS,
|
||||
|
||||
/// <remarks/>
|
||||
BPOL,
|
||||
|
||||
/// <remarks/>
|
||||
TOWA,
|
||||
|
||||
/// <remarks/>
|
||||
TOWD,
|
||||
|
||||
/// <remarks/>
|
||||
HAZA,
|
||||
|
||||
/// <remarks/>
|
||||
HAZD,
|
||||
}
|
||||
|
||||
/// <remarks/>
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.6.1055.0")]
|
||||
[System.SerializableAttribute()]
|
||||
[System.Diagnostics.DebuggerStepThroughAttribute()]
|
||||
[System.ComponentModel.DesignerCategoryAttribute("code")]
|
||||
@ -552,11 +420,11 @@ namespace bsmd.dbh.response
|
||||
public partial class RootReportingClassesResetted
|
||||
{
|
||||
|
||||
private RootReportingClassesResettedReportingClass[] reportingClassField;
|
||||
private ReportingClassCode[] reportingClassField;
|
||||
|
||||
/// <remarks/>
|
||||
[System.Xml.Serialization.XmlElementAttribute("ReportingClass")]
|
||||
public RootReportingClassesResettedReportingClass[] ReportingClass
|
||||
public ReportingClassCode[] ReportingClass
|
||||
{
|
||||
get
|
||||
{
|
||||
@ -570,95 +438,12 @@ namespace bsmd.dbh.response
|
||||
}
|
||||
|
||||
/// <remarks/>
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
|
||||
[System.SerializableAttribute()]
|
||||
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
|
||||
public enum RootReportingClassesResettedReportingClass
|
||||
{
|
||||
|
||||
/// <remarks/>
|
||||
NOA_NOD,
|
||||
|
||||
/// <remarks/>
|
||||
ATA,
|
||||
|
||||
/// <remarks/>
|
||||
ATD,
|
||||
|
||||
/// <remarks/>
|
||||
SEC,
|
||||
|
||||
/// <remarks/>
|
||||
POBA,
|
||||
|
||||
/// <remarks/>
|
||||
POBD,
|
||||
|
||||
/// <remarks/>
|
||||
NAME,
|
||||
|
||||
/// <remarks/>
|
||||
TIEFA,
|
||||
|
||||
/// <remarks/>
|
||||
TIEFD,
|
||||
|
||||
/// <remarks/>
|
||||
BKRA,
|
||||
|
||||
/// <remarks/>
|
||||
BKRD,
|
||||
|
||||
/// <remarks/>
|
||||
STAT,
|
||||
|
||||
/// <remarks/>
|
||||
LADG,
|
||||
|
||||
/// <remarks/>
|
||||
INFO,
|
||||
|
||||
/// <remarks/>
|
||||
SERV,
|
||||
|
||||
/// <remarks/>
|
||||
PRE72H,
|
||||
|
||||
/// <remarks/>
|
||||
MDH,
|
||||
|
||||
/// <remarks/>
|
||||
WAS,
|
||||
|
||||
/// <remarks/>
|
||||
CREW,
|
||||
|
||||
/// <remarks/>
|
||||
PAS,
|
||||
|
||||
/// <remarks/>
|
||||
BPOL,
|
||||
|
||||
/// <remarks/>
|
||||
TOWA,
|
||||
|
||||
/// <remarks/>
|
||||
TOWD,
|
||||
|
||||
/// <remarks/>
|
||||
HAZA,
|
||||
|
||||
/// <remarks/>
|
||||
HAZD,
|
||||
}
|
||||
|
||||
/// <remarks/>
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.6.1055.0")]
|
||||
[System.SerializableAttribute()]
|
||||
[System.Diagnostics.DebuggerStepThroughAttribute()]
|
||||
[System.ComponentModel.DesignerCategoryAttribute("code")]
|
||||
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
|
||||
public partial class Message
|
||||
public partial class RootMessage
|
||||
{
|
||||
|
||||
private string idField;
|
||||
@ -723,7 +508,7 @@ namespace bsmd.dbh.response
|
||||
}
|
||||
|
||||
/// <remarks/>
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.6.1055.0")]
|
||||
[System.SerializableAttribute()]
|
||||
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
|
||||
public enum RootMessageType
|
||||
@ -741,5 +526,4 @@ namespace bsmd.dbh.response
|
||||
/// <remarks/>
|
||||
ERROR,
|
||||
}
|
||||
|
||||
}
|
||||
@ -1249,7 +1249,27 @@ namespace bsmd.dbh
|
||||
rootIMDG.GeneralCargoIBC = imdgPos.GeneralCargoIBC.Value ? DBHWebReference.RootSECValidISSCOnBoard.Y : DBHWebReference.RootSECValidISSCOnBoard.N;
|
||||
rootIMDG.ContainerNumber = imdgPos.ContainerNumber;
|
||||
rootIMDG.VehicleLicenseNumber = imdgPos.VehicleLicenseNumber;
|
||||
// rootIMDG.StowagePosition = imdgPos.StowagePosition;
|
||||
|
||||
if (imdgPos.StowagePosition.IsNullOrEmpty())
|
||||
{
|
||||
rootIMDG.Items = new string[3];
|
||||
rootIMDG.ItemsElementName = new ItemsChoiceType4[3];
|
||||
|
||||
rootIMDG.Items[0] = imdgPos.Bay;
|
||||
rootIMDG.ItemsElementName[0] = ItemsChoiceType4.Bay;
|
||||
|
||||
rootIMDG.Items[1] = imdgPos.Row;
|
||||
rootIMDG.ItemsElementName[1] = ItemsChoiceType4.Row;
|
||||
|
||||
rootIMDG.Items[2] = imdgPos.Tier;
|
||||
rootIMDG.ItemsElementName[2] = ItemsChoiceType4.Tier;
|
||||
}
|
||||
else
|
||||
{
|
||||
rootIMDG.Items = new string[1] { imdgPos.StowagePosition };
|
||||
rootIMDG.ItemsElementName = new ItemsChoiceType4[1] { ItemsChoiceType4.StowagePosition };
|
||||
}
|
||||
|
||||
rootIMDG.PortOfLoading = imdgPos.PortOfLoading;
|
||||
rootIMDG.PortOfDischarge = imdgPos.PortOfDischarge;
|
||||
rootIMDG.Remarks = imdgPos.Remarks;
|
||||
@ -1482,7 +1502,27 @@ namespace bsmd.dbh
|
||||
rootIMDG.GeneralCargoIBC = imdgPos.GeneralCargoIBC.Value ? RootSECValidISSCOnBoard.Y : RootSECValidISSCOnBoard.N;
|
||||
rootIMDG.ContainerNumber = imdgPos.ContainerNumber;
|
||||
rootIMDG.VehicleLicenseNumber = imdgPos.VehicleLicenseNumber;
|
||||
//rootIMDG.StowagePosition = imdgPos.StowagePosition;
|
||||
|
||||
if (imdgPos.StowagePosition.IsNullOrEmpty())
|
||||
{
|
||||
rootIMDG.Items = new string[3];
|
||||
rootIMDG.ItemsElementName = new ItemsChoiceType4[3];
|
||||
|
||||
rootIMDG.Items[0] = imdgPos.Bay;
|
||||
rootIMDG.ItemsElementName[0] = ItemsChoiceType4.Bay;
|
||||
|
||||
rootIMDG.Items[1] = imdgPos.Row;
|
||||
rootIMDG.ItemsElementName[1] = ItemsChoiceType4.Row;
|
||||
|
||||
rootIMDG.Items[2] = imdgPos.Tier;
|
||||
rootIMDG.ItemsElementName[2] = ItemsChoiceType4.Tier;
|
||||
}
|
||||
else
|
||||
{
|
||||
rootIMDG.Items = new string[1] { imdgPos.StowagePosition };
|
||||
rootIMDG.ItemsElementName = new ItemsChoiceType4[1] { ItemsChoiceType4.StowagePosition };
|
||||
}
|
||||
|
||||
rootIMDG.PortOfLoading = imdgPos.PortOfLoading;
|
||||
rootIMDG.PortOfDischarge = imdgPos.PortOfDischarge;
|
||||
rootIMDG.Remarks = imdgPos.Remarks;
|
||||
|
||||
@ -22,10 +22,10 @@ namespace bsmd.dbh
|
||||
private static ILog _log = LogManager.GetLogger("dbh Response");
|
||||
|
||||
public static void ProcessResponse(string VisitId, string TransitId, DateTime Timestamp,
|
||||
string SenderReference, response.RootType Type, bsmd.dbh.response.Message[] Messages,
|
||||
string SenderReference, response.RootType Type, bsmd.dbh.response.RootMessage[] Messages,
|
||||
bsmd.dbh.response.RootReportingClassesFull ReportingClassesFull,
|
||||
bsmd.dbh.response.RootReportingClassesPartial ReportingClassesPartial,
|
||||
bsmd.dbh.response.RootReportingClassesError RootReportingClassesError,
|
||||
bsmd.dbh.response.RootReportingClassesError ReportingClassesError,
|
||||
bsmd.dbh.response.RootReportingClassesResetted ReportingClassesResetted,
|
||||
string connectionString)
|
||||
{
|
||||
@ -52,8 +52,14 @@ namespace bsmd.dbh
|
||||
}
|
||||
|
||||
DatabaseEntity dbEntity = DBManager.Instance.GetMessageById(messageId);
|
||||
if (dbEntity != null)
|
||||
Message aMessage = dbEntity as Message;
|
||||
|
||||
if (aMessage != null)
|
||||
{
|
||||
_log.InfoFormat("Message type {0} found for SenderReference {1}", ((Message)dbEntity).MessageNotificationClassDisplay, messageId);
|
||||
foreach (MessageError existingError in aMessage.ErrorList)
|
||||
DBManager.Instance.Delete(existingError);
|
||||
}
|
||||
|
||||
MessageCore aCore = null;
|
||||
if (dbEntity == null)
|
||||
@ -65,6 +71,7 @@ namespace bsmd.dbh
|
||||
aCore.BSMDStatusInternal = MessageCore.BSMDStatus.RESPONDED;
|
||||
aCore.Cancelled = true;
|
||||
DBManager.Instance.Save(aCore);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@ -79,23 +86,27 @@ namespace bsmd.dbh
|
||||
_log.WarnFormat("SenderReference DB Entity Object is no MessageHeader, aborting ({0})", dbEntity.GetType());
|
||||
return;
|
||||
}
|
||||
Message aMessage = dbEntity as Message;
|
||||
|
||||
switch (Type)
|
||||
{
|
||||
case dbh.response.RootType.VISIT:
|
||||
// neue VISIT - ID
|
||||
_log.InfoFormat("Visit-Id received: {0}", VisitId ?? "??!");
|
||||
if(!VisitId.IsNullOrEmpty())
|
||||
aMessage.MessageCore.VisitId = VisitId;
|
||||
aMessage.MessageCore.BSMDStatusInternal = MessageCore.BSMDStatus.PREPARE;
|
||||
aMessage.SendSuccess = true;
|
||||
DBManager.Instance.Save(aMessage.MessageCore);
|
||||
aMessage.InternalStatus = Message.BSMDStatus.CONFIRMED;
|
||||
DBManager.Instance.Save(aMessage);
|
||||
break;
|
||||
case dbh.response.RootType.TRANSIT:
|
||||
_log.InfoFormat("Transit-Id received: {0}", TransitId ?? "??!");
|
||||
aMessage.MessageCore.TransitId = TransitId;
|
||||
aMessage.MessageCore.BSMDStatusInternal = MessageCore.BSMDStatus.PREPARE;
|
||||
aMessage.SendSuccess = true;
|
||||
DBManager.Instance.Save(aMessage.MessageCore);
|
||||
aMessage.InternalStatus = Message.BSMDStatus.CONFIRMED;
|
||||
DBManager.Instance.Save(aMessage);
|
||||
break;
|
||||
case dbh.response.RootType.RESET:
|
||||
// Die Liste ist auch bei erfolgtem RESET offenbar immer NULL...
|
||||
@ -116,15 +127,48 @@ namespace bsmd.dbh
|
||||
aMessage.SendSuccess = true;
|
||||
aMessage.InternalStatus = Message.BSMDStatus.CONFIRMED;
|
||||
aMessage.Status = Message.MessageStatus.ACCEPTED;
|
||||
_log.InfoFormat("CONFIRMED");
|
||||
_log.InfoFormat("full message class accepted");
|
||||
}
|
||||
else
|
||||
if ((ReportingClassesPartial != null) && (ReportingClassesPartial.ReportingClass.Length > 0))
|
||||
{
|
||||
_log.InfoFormat("no match");
|
||||
// this was successful, save status to MessageHeader
|
||||
aMessage.SendSuccess = true;
|
||||
aMessage.InternalStatus = Message.BSMDStatus.ERROR;
|
||||
aMessage.Status = Message.MessageStatus.ACCEPTED;
|
||||
_log.InfoFormat("partial message class accepted");
|
||||
}
|
||||
if ((ReportingClassesError != null) && (ReportingClassesError.ReportingClass.Length > 0))
|
||||
{
|
||||
// this was successful, save status to MessageHeader
|
||||
aMessage.SendSuccess = true;
|
||||
aMessage.InternalStatus = Message.BSMDStatus.ERROR;
|
||||
aMessage.Status = Message.MessageStatus.ACCEPTED;
|
||||
_log.InfoFormat("message class accepted but error");
|
||||
}
|
||||
|
||||
// check the whole thing for completion
|
||||
MessageCore core = DBManager.Instance.GetMessageCoreById(aMessage.MessageCoreId.Value);
|
||||
bool stillSomethingSent = false;
|
||||
foreach(Message message in DBManager.Instance.GetMessagesForCore(core, DBManager.MessageLoad.ALL))
|
||||
{
|
||||
if (aMessage.Id.Value == message.Id.Value) continue;
|
||||
if(message.InternalStatus == Message.BSMDStatus.SENT)
|
||||
{
|
||||
stillSomethingSent = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(!stillSomethingSent && (core.BSMDStatusInternal == MessageCore.BSMDStatus.SENT))
|
||||
{
|
||||
core.BSMDStatusInternal = MessageCore.BSMDStatus.RESPONDED;
|
||||
DBManager.Instance.Save(core);
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
|
||||
if (Messages != null)
|
||||
{
|
||||
// Status zu den jeweiligen Nachrichten. Bei uns sollte die Anzahl hier immer 1 sein, da wir die Dinger
|
||||
|
||||
Loading…
Reference in New Issue
Block a user