changes for Version 6.6
This commit is contained in:
parent
19b89cef6b
commit
5c7c18400e
@ -27,8 +27,7 @@
|
||||
</setting>
|
||||
<setting name="Recipient" serializeAs="Xml">
|
||||
<value>
|
||||
<ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
||||
<ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
||||
<string>nsw@textbausteine.net</string>
|
||||
</ArrayOfString>
|
||||
</value>
|
||||
@ -50,4 +49,12 @@
|
||||
</setting>
|
||||
</bsmd.ReportGenerator.Properties.Settings>
|
||||
</applicationSettings>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="BouncyCastle.Crypto" publicKeyToken="0e99375e54769942" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-1.9.0.0" newVersion="1.9.0.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
@ -43,8 +43,8 @@
|
||||
<AssemblyOriginatorKeyFile>..\bsmdKey.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="log4net, Version=2.0.12.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\log4net.2.0.12\lib\net45\log4net.dll</HintPath>
|
||||
<Reference Include="log4net, Version=2.0.13.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\log4net.2.0.13\lib\net45\log4net.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="MigraDoc.DocumentObjectModel-gdi, Version=1.50.5147.0, Culture=neutral, PublicKeyToken=f94615aa0424f9eb, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\PDFsharp-MigraDoc-gdi.1.50.5147\lib\net20\MigraDoc.DocumentObjectModel-gdi.dll</HintPath>
|
||||
@ -65,8 +65,8 @@
|
||||
<Reference Include="System.Configuration" />
|
||||
<Reference Include="System.Configuration.Install" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.114.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.114.0\lib\net45\System.Data.SQLite.dll</HintPath>
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.115.5, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.115.5\lib\net45\System.Data.SQLite.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Management" />
|
||||
@ -79,7 +79,7 @@
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="..\..\..\ENI-2\ENI2\ENI2\LocalizedLookup.cs">
|
||||
<Compile Include="..\ENI2\LocalizedLookup.cs">
|
||||
<Link>LocalizedLookup.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\bsmd.database\Properties\AssemblyProductInfo.cs">
|
||||
@ -161,12 +161,12 @@
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="$(SolutionDir)\.nuget\NuGet.targets" Condition="Exists('$(SolutionDir)\.nuget\NuGet.targets')" />
|
||||
<Import Project="..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.114.0\build\net45\Stub.System.Data.SQLite.Core.NetFramework.targets" Condition="Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.114.0\build\net45\Stub.System.Data.SQLite.Core.NetFramework.targets')" />
|
||||
<Import Project="..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.115.5\build\net45\Stub.System.Data.SQLite.Core.NetFramework.targets" Condition="Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.115.5\build\net45\Stub.System.Data.SQLite.Core.NetFramework.targets')" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.114.0\build\net45\Stub.System.Data.SQLite.Core.NetFramework.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.114.0\build\net45\Stub.System.Data.SQLite.Core.NetFramework.targets'))" />
|
||||
<Error Condition="!Exists('..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.115.5\build\net45\Stub.System.Data.SQLite.Core.NetFramework.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.115.5\build\net45\Stub.System.Data.SQLite.Core.NetFramework.targets'))" />
|
||||
</Target>
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="log4net" version="2.0.12" targetFramework="net45" />
|
||||
<package id="log4net" version="2.0.13" targetFramework="net45" />
|
||||
<package id="PDFsharp-MigraDoc-gdi" version="1.50.5147" targetFramework="net45" />
|
||||
<package id="Stub.System.Data.SQLite.Core.NetFramework" version="1.0.114.0" targetFramework="net45" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.114.3" targetFramework="net45" />
|
||||
<package id="Stub.System.Data.SQLite.Core.NetFramework" version="1.0.115.5" targetFramework="net45" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.115.5" targetFramework="net45" />
|
||||
</packages>
|
||||
@ -23,9 +23,9 @@ namespace bsmd.database
|
||||
/// </summary>
|
||||
public static class Extensions
|
||||
{
|
||||
private static ILog _log = LogManager.GetLogger(typeof(Extensions));
|
||||
private static Regex splitRegex = new Regex(@"(""((\\"")|([^""]))*"")|('((\\')|([^']))*')|(\S+)");
|
||||
private static char[] splitDelimiter = new[] { ',', ';', ' ' };
|
||||
private static readonly ILog _log = LogManager.GetLogger(typeof(Extensions));
|
||||
private static readonly Regex splitRegex = new Regex(@"(""((\\"")|([^""]))*"")|('((\\')|([^']))*')|(\S+)");
|
||||
private static readonly char[] splitDelimiter = new[] { ',', ';', ' ' };
|
||||
|
||||
public static bool IsNullOrEmpty(this String str)
|
||||
{
|
||||
@ -96,8 +96,7 @@ namespace bsmd.database
|
||||
|
||||
public static DateTime? TryParseDateTime(string text)
|
||||
{
|
||||
DateTime date;
|
||||
if(DateTime.TryParse(text, DateTimeFormatInfo.InvariantInfo, DateTimeStyles.AdjustToUniversal, out date))
|
||||
if (DateTime.TryParse(text, DateTimeFormatInfo.InvariantInfo, DateTimeStyles.AdjustToUniversal, out DateTime date))
|
||||
{
|
||||
return date;
|
||||
}
|
||||
@ -110,8 +109,7 @@ namespace bsmd.database
|
||||
|
||||
public static double? TryParseDouble(string text)
|
||||
{
|
||||
double d;
|
||||
if (Double.TryParse(text, NumberStyles.Any, NumberFormatInfo.InvariantInfo, out d))
|
||||
if (Double.TryParse(text, NumberStyles.Any, NumberFormatInfo.InvariantInfo, out double d))
|
||||
{
|
||||
return d;
|
||||
}
|
||||
@ -153,6 +151,29 @@ namespace bsmd.database
|
||||
return str.Substring(0, maxLen);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// returns maximum size of following non-whitespace characters (aka size of "longest" word)
|
||||
/// </summary>
|
||||
public static int MaxLenNoWS(this string str)
|
||||
{
|
||||
int max = 0;
|
||||
int currentMax = 0;
|
||||
for(int i = 0; i < str.Length; i++)
|
||||
{
|
||||
if(Char.IsWhiteSpace(str[i]))
|
||||
{
|
||||
if (currentMax > max) max = currentMax;
|
||||
currentMax = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
currentMax++;
|
||||
}
|
||||
}
|
||||
if (currentMax > max) max = currentMax;
|
||||
return max;
|
||||
}
|
||||
|
||||
public static void BubbleSort(this IList o)
|
||||
{
|
||||
for (int i = o.Count - 1; i >= 0; i--)
|
||||
|
||||
@ -68,6 +68,7 @@ namespace bsmd.database
|
||||
[ShowReport]
|
||||
[Validation(ValidationCode.NOT_NULL)]
|
||||
[MaxLength(255)]
|
||||
[MaxWordLength(14)]
|
||||
[ENI2Validation]
|
||||
public string ProductName { get; set; }
|
||||
|
||||
@ -136,6 +137,7 @@ namespace bsmd.database
|
||||
[ShowReport]
|
||||
[Validation(ValidationCode.NOT_NULL)]
|
||||
[MaxLength(24)]
|
||||
[MaxWordLength(6)]
|
||||
[ENI2Validation]
|
||||
public string StowagePosition { get; set; }
|
||||
|
||||
@ -157,6 +159,7 @@ namespace bsmd.database
|
||||
|
||||
[ShowReport]
|
||||
[MaxLength(255)]
|
||||
[MaxWordLength(35)]
|
||||
[ENI2Validation]
|
||||
public string Remarks { get; set; }
|
||||
|
||||
|
||||
@ -46,6 +46,7 @@ namespace bsmd.database
|
||||
[ShowReport]
|
||||
[Validation(ValidationCode.NOT_NULL)]
|
||||
[MaxLength(255)]
|
||||
[MaxWordLength(30)]
|
||||
[ENI2Validation]
|
||||
public string ProductName { get; set; }
|
||||
|
||||
@ -57,6 +58,7 @@ namespace bsmd.database
|
||||
[ShowReport]
|
||||
[Validation(ValidationCode.NOT_NULL)]
|
||||
[MaxLength(24)]
|
||||
[MaxWordLength(20)]
|
||||
[ENI2Validation]
|
||||
public string StowagePosition { get; set; }
|
||||
|
||||
@ -74,6 +76,7 @@ namespace bsmd.database
|
||||
|
||||
[ShowReport]
|
||||
[MaxLength(255)]
|
||||
[MaxWordLength(45)]
|
||||
[ENI2Validation]
|
||||
public string Remarks { get; set; }
|
||||
|
||||
|
||||
@ -148,11 +148,13 @@ namespace bsmd.database
|
||||
|
||||
[ShowReport]
|
||||
[MaxLength(24)]
|
||||
[MaxWordLength(15)]
|
||||
[ENI2Validation]
|
||||
public string ContainerNumber { get; set; }
|
||||
|
||||
[ShowReport]
|
||||
[MaxLength(24)]
|
||||
[MaxWordLength(15)]
|
||||
[ENI2Validation]
|
||||
public string VehicleLicenseNumber { get; set; }
|
||||
|
||||
@ -160,6 +162,7 @@ namespace bsmd.database
|
||||
[Validation(ValidationCode.NOT_NULL)]
|
||||
[MaxLength(24)]
|
||||
[ENI2Validation]
|
||||
[MaxWordLength(9)]
|
||||
public string StowagePosition { get; set; }
|
||||
|
||||
[ShowReport]
|
||||
@ -191,6 +194,7 @@ namespace bsmd.database
|
||||
|
||||
[ShowReport]
|
||||
[MaxLength(255)]
|
||||
[MaxWordLength(50)]
|
||||
[ENI2Validation]
|
||||
public string Remarks { get; set; }
|
||||
|
||||
|
||||
@ -43,6 +43,7 @@ namespace bsmd.database
|
||||
[ShowReport]
|
||||
[Validation(ValidationCode.NOT_NULL)]
|
||||
[MaxLength(255)]
|
||||
[MaxWordLength(15)]
|
||||
[ENI2Validation]
|
||||
public string BulkCargoShippingName { get; set; }
|
||||
|
||||
@ -69,6 +70,7 @@ namespace bsmd.database
|
||||
[ShowReport]
|
||||
[Validation(ValidationCode.NOT_NULL)]
|
||||
[MaxLength(24)]
|
||||
[MaxWordLength(8)]
|
||||
[ENI2Validation]
|
||||
public string StowagePosition { get; set; }
|
||||
|
||||
@ -86,6 +88,7 @@ namespace bsmd.database
|
||||
|
||||
[ShowReport]
|
||||
[MaxLength(255)]
|
||||
[MaxWordLength(35)]
|
||||
[ENI2Validation]
|
||||
public string Remarks { get; set; }
|
||||
|
||||
|
||||
@ -37,6 +37,7 @@ namespace bsmd.database
|
||||
[ShowReport]
|
||||
[Validation(ValidationCode.NOT_NULL)]
|
||||
[MaxLength(255)]
|
||||
[MaxWordLength(20)]
|
||||
[ENI2Validation]
|
||||
public string Name { get; set; }
|
||||
|
||||
@ -70,6 +71,7 @@ namespace bsmd.database
|
||||
[ShowReport]
|
||||
[Validation(ValidationCode.NOT_NULL)]
|
||||
[MaxLength(24)]
|
||||
[MaxWordLength(10)]
|
||||
[ENI2Validation]
|
||||
public string StowagePosition { get; set; }
|
||||
|
||||
@ -87,6 +89,7 @@ namespace bsmd.database
|
||||
|
||||
[ShowReport]
|
||||
[MaxLength(255)]
|
||||
[MaxWordLength(40)]
|
||||
[ENI2Validation]
|
||||
public string Remarks { get; set; }
|
||||
|
||||
|
||||
@ -212,6 +212,18 @@ namespace bsmd.database
|
||||
}
|
||||
}
|
||||
|
||||
/// check for max printable word size (report table overflow)
|
||||
if (Attribute.IsDefined(property, typeof(MaxWordLengthAttribute)))
|
||||
{
|
||||
MaxWordLengthAttribute mwla = Attribute.GetCustomAttribute(property, typeof(MaxWordLengthAttribute)) as MaxWordLengthAttribute;
|
||||
|
||||
if (value.MaxLenNoWS() > mwla.MaxWordLength)
|
||||
{
|
||||
// put out a warning this might be overflowing in the report
|
||||
violations.Add(RuleEngine.CreateViolation(ValidationCode.WORDOVERFLOW, property.Name, value, entity.Title, identifier, entity.Tablename));
|
||||
}
|
||||
}
|
||||
|
||||
// check properties
|
||||
|
||||
switch (validationCode)
|
||||
|
||||
@ -48,6 +48,7 @@ namespace bsmd.database
|
||||
MMSI = 29,
|
||||
INVALID_NUMBER_CHARS = 30,
|
||||
OPTIONAL_FLAG_CODE,
|
||||
WORDOVERFLOW,
|
||||
E121 = 121,
|
||||
E122 = 122,
|
||||
E123 = 123,
|
||||
@ -225,4 +226,25 @@ namespace bsmd.database
|
||||
|
||||
#endregion
|
||||
|
||||
#region Überprüfung der maximalen Wort/Text-Länge innerhalb eines Strings
|
||||
|
||||
[AttributeUsage(AttributeTargets.Property)]
|
||||
public class MaxWordLengthAttribute : Attribute
|
||||
{
|
||||
private int maxWordLength;
|
||||
|
||||
public MaxWordLengthAttribute(int length)
|
||||
{
|
||||
this.maxWordLength = length;
|
||||
}
|
||||
|
||||
public int MaxWordLength
|
||||
{
|
||||
get { return this.maxWordLength; }
|
||||
set { this.maxWordLength = value; }
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
}
|
||||
|
||||
@ -21,6 +21,11 @@ namespace bsmd.email
|
||||
// cleanup is done somewhere else
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// keine Ahnung was das macht
|
||||
/// </summary>
|
||||
public IAuthenticationSecretDetector AuthenticationSecretDetector { get; set; }
|
||||
|
||||
public void LogClient(byte[] buffer, int offset, int count)
|
||||
{
|
||||
string logString = Encoding.Default.GetString(buffer, offset, count);
|
||||
|
||||
@ -30,8 +30,7 @@
|
||||
</setting>
|
||||
<setting name="Recipient" serializeAs="Xml">
|
||||
<value>
|
||||
<ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
||||
<ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
||||
<string>nsw@textbausteine.net</string>
|
||||
</ArrayOfString>
|
||||
</value>
|
||||
@ -59,4 +58,12 @@
|
||||
</setting>
|
||||
</bsmd.email.Properties.Settings>
|
||||
</applicationSettings>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="BouncyCastle.Crypto" publicKeyToken="0e99375e54769942" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-1.9.0.0" newVersion="1.9.0.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
@ -40,20 +40,20 @@
|
||||
<AssemblyOriginatorKeyFile>..\bsmdKey.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="BouncyCastle.Crypto, Version=1.8.10.0, Culture=neutral, PublicKeyToken=0e99375e54769942, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Portable.BouncyCastle.1.8.10\lib\net40\BouncyCastle.Crypto.dll</HintPath>
|
||||
<Reference Include="BouncyCastle.Crypto, Version=1.9.0.0, Culture=neutral, PublicKeyToken=0e99375e54769942, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Portable.BouncyCastle.1.9.0\lib\net40\BouncyCastle.Crypto.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="EmailValidation, Version=1.0.0.0, Culture=neutral, PublicKeyToken=60f3df2f38e92638, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\EmailValidation.1.0.4\lib\net45\EmailValidation.dll</HintPath>
|
||||
<HintPath>..\packages\EmailValidation.1.0.6\lib\net45\EmailValidation.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="log4net, Version=2.0.12.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\log4net.2.0.12\lib\net45\log4net.dll</HintPath>
|
||||
<Reference Include="log4net, Version=2.0.13.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\log4net.2.0.13\lib\net45\log4net.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="MailKit, Version=2.13.0.0, Culture=neutral, PublicKeyToken=4e064fe7c44a8f1b, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MailKit.2.13.0\lib\net45\MailKit.dll</HintPath>
|
||||
<Reference Include="MailKit, Version=2.15.0.0, Culture=neutral, PublicKeyToken=4e064fe7c44a8f1b, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MailKit.2.15.0\lib\net45\MailKit.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="MimeKit, Version=2.13.0.0, Culture=neutral, PublicKeyToken=bede1c8a46c66814, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MimeKit.2.13.0\lib\net45\MimeKit.dll</HintPath>
|
||||
<Reference Include="MimeKit, Version=2.15.0.0, Culture=neutral, PublicKeyToken=bede1c8a46c66814, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MimeKit.2.15.1\lib\net45\MimeKit.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
|
||||
@ -1,9 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="EmailValidation" version="1.0.4" targetFramework="net45" />
|
||||
<package id="log4net" version="2.0.12" targetFramework="net45" />
|
||||
<package id="MailKit" version="2.13.0" targetFramework="net45" />
|
||||
<package id="MimeKit" version="2.13.0" targetFramework="net45" />
|
||||
<package id="Portable.BouncyCastle" version="1.8.10" targetFramework="net45" />
|
||||
<package id="EmailValidation" version="1.0.6" targetFramework="net45" />
|
||||
<package id="log4net" version="2.0.13" targetFramework="net45" />
|
||||
<package id="MailKit" version="2.15.0" targetFramework="net45" />
|
||||
<package id="MimeKit" version="2.15.1" targetFramework="net45" />
|
||||
<package id="Portable.BouncyCastle" version="1.9.0" targetFramework="net45" />
|
||||
<package id="System.Buffers" version="4.5.1" targetFramework="net45" />
|
||||
</packages>
|
||||
Loading…
Reference in New Issue
Block a user