This commit is contained in:
Georgy Khatuncev 2021-06-05 23:24:07 +05:00
parent 72c7ef702a
commit c27ae16867
210 changed files with 778 additions and 124 deletions

Binary file not shown.

@ -543,7 +543,7 @@ namespace DataClient
My_Close(needCloseConeection); My_Close(needCloseConeection);
} }
public byte[] Full_Pasp_Download(string file) public Pasport Full_Pasp_Download(string file)
{ {
if (string.IsNullOrEmpty(file)) throw new ArgumentException("Path to file can't be null or empty."); if (string.IsNullOrEmpty(file)) throw new ArgumentException("Path to file can't be null or empty.");
@ -553,14 +553,22 @@ namespace DataClient
try { if (!SendBytes(CreateCode((uint)Code.pasp_download, file))) throw new IOException("Can't send bytes to server."); } try { if (!SendBytes(CreateCode((uint)Code.pasp_download, file))) throw new IOException("Can't send bytes to server."); }
catch { My_Close(needCloseConeection); throw; } catch { My_Close(needCloseConeection); throw; }
byte[] res = null; var pasp = new Pasport();
var res = new List<byte>();
try try
{ {
res = ReceiveBytes(); res.AddRange(ReceiveBytes(1));
if (res.Count == 1 && res[0] == 0x01)
{
res.AddRange(ReceiveBytes(16));
if(res.Count == 17 && res[16] == 0x01)
res.AddRange(ReceiveBytes(1512));
}
pasp.PaspByte = res.ToArray();
} }
catch { My_Close(needCloseConeection); throw; } catch { My_Close(needCloseConeection); throw; }
finally { My_Close(needCloseConeection); } finally { My_Close(needCloseConeection); }
return res; return pasp;
} }

@ -42,10 +42,11 @@ namespace DataClient.Struct
public class Pasport public class Pasport
{ {
//functions //functions
private DateTime? ByteToDate(byte[] arr) private DateTime? ByteToDate(byte[] arr) { return ByteToDate(arr, 0); }
private DateTime? ByteToDate(byte[] arr, int index)
{ {
if (arr == null || arr.Length != 7) return null; if (arr == null || (index + 7) > arr.Length) return null;
return new DateTime(arr[0] | arr[1] << 8, arr[2], arr[3], arr[4], arr[5], arr[6]); return new DateTime(arr[index] | arr[index + 1] << 8, arr[index + 2], arr[index + 3], arr[index + 4], arr[index + 5], arr[index + 6]);
} }
private byte[] DateToByte(DateTime? date) private byte[] DateToByte(DateTime? date)
{ {
@ -61,6 +62,24 @@ namespace DataClient.Struct
(byte)date.Value.Second (byte)date.Value.Second
}; };
} }
private string ByteToString(byte[] arr) { return ByteToString(arr, 0, arr.Length); }
private string ByteToString(byte[] arr, int index, int length)
{
if (arr == null || arr.Length == 0 || index < 0 || length < 0)
return "";
Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
var enc = Encoding.GetEncoding(866);
var res = new List<byte>();
for (var i = index; i < (index + length); i++)
{
if (i >= arr.Length) break;
if (arr[i] == 0x00) continue;
res.Add(arr[i]);
}
return enc.GetString(res.ToArray());
}
private byte[] StringToByte(uint? size = null, string str = null) private byte[] StringToByte(uint? size = null, string str = null)
{ {
Encoding.RegisterProvider(CodePagesEncodingProvider.Instance); Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
@ -157,112 +176,72 @@ namespace DataClient.Struct
} }
set set
{ {
Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
var enc = Encoding.GetEncoding(866);
var count = 0; var count = 0;
var tmpArr = Array.Empty<byte>();
if (value == null) return; if (value == null) return;
if (value.Length < (count + 1) || value[count] != 0x01) return; if (value.Length < (count + 1) || value[count] != 0x01) return;
count++; count++;
if (value.Length < (count + 1)) return; if (value.Length < (count + 1)) return;
numVDP = value[count]; numVDP = value[count]; count++;
count++;
if (value.Length < (count + 7)) return; if (value.Length < (count + 7)) return;
tmpArr = new byte[7]; dStart = ByteToDate(value, count); count += 7;
Array.Copy(value, count, tmpArr, 0, 7);
dStart = ByteToDate(tmpArr);
count += 7;
if (value.Length < (count + 7)) return; if (value.Length < (count + 7)) return;
tmpArr = new byte[7]; dEnd = ByteToDate(value, count); count += 7;
Array.Copy(value, count, tmpArr, 0, 7);
dEnd = ByteToDate(tmpArr);
count += 7;
if (value.Length < (count + 1) || value[count] != 0x01) { hasPasport = false; return; } if (value.Length < (count + 1) || value[count] != 0x01) { hasPasport = false; return; }
hasPasport = true; hasPasport = true; count++;
count++;
if (value.Length < (count + 4)) return; if (value.Length < (count + 4)) return;
tmpArr = new byte[4]; kod_npl = BitConverter.ToInt32(value, count); count += 4;
Array.Copy(value, count, tmpArr, 0, 4);
kod_npl = BitConverter.ToInt32(tmpArr);
count += 4;
if (value.Length < (count + 12)) return; if (value.Length < (count + 12)) return;
nplav = enc.GetString(value, count, 12); nplav = ByteToString(value, count, 12); count += 12;
count += 12;
if (value.Length < (count + 11)) return; if (value.Length < (count + 11)) return;
rm = enc.GetString(value, count, 11); rm = ByteToString(value, count, 11); count += 11;
count += 11;
if (value.Length < (count + 101)) return; if (value.Length < (count + 101)) return;
splav = enc.GetString(value, count, 101); splav = ByteToString(value, count, 101); count += 101;
count += 101;
if (value.Length < (count + 51)) return; if (value.Length < (count + 51)) return;
iS = enc.GetString(value, count, 51); iS = ByteToString(value, count, 51); count += 51;
count += 51;
if (value.Length < (count + 2)) return; if (value.Length < (count + 2)) return;
notd = BitConverter.ToUInt16(value, count); notd = BitConverter.ToUInt16(value, count); count += 2;
count += 2;
if (value.Length < (count + 2)) return; if (value.Length < (count + 2)) return;
vessl = BitConverter.ToUInt16(value, count); vessl = BitConverter.ToUInt16(value, count); count += 2;
count += 2;
if (value.Length < (count + 2)) return; if (value.Length < (count + 2)) return;
diam = BitConverter.ToUInt16(value, count); diam = BitConverter.ToUInt16(value, count); count += 2;
count += 2;
if (value.Length < (count + 2)) return; if (value.Length < (count + 2)) return;
prpl = BitConverter.ToUInt16(value, count); prpl = BitConverter.ToUInt16(value, count); count += 2;
count += 2;
if (value.Length < (count + 9)) return; if (value.Length < (count + 9)) return;
tin = enc.GetString(value, count, 9); tin = ByteToString(value, count, 9); count += 9;
count += 9;
if (value.Length < (count + 9)) return; if (value.Length < (count + 9)) return;
dzap = enc.GetString(value, count, 9); dzap = ByteToString(value, count, 9); count += 9;
count += 9;
if (value.Length < (count + 2)) return; if (value.Length < (count + 2)) return;
dlog = BitConverter.ToInt16(value, count); dlog = BitConverter.ToInt16(value, count); count += 2;
count += 2;
if (value.Length < (count + 2)) return; if (value.Length < (count + 2)) return;
last = BitConverter.ToInt16(value, count); last = BitConverter.ToInt16(value, count); count += 2;
count += 2;
if (value.Length < (count + 2)) return; if (value.Length < (count + 2)) return;
dlper = BitConverter.ToInt16(value, count); dlper = BitConverter.ToInt16(value, count); count += 2;
count += 2;
if (value.Length < (count + 51)) return; if (value.Length < (count + 51)) return;
nazn = enc.GetString(value, count, 51); nazn = ByteToString(value, count, 51); count += 51;
count += 51;
if (value.Length < (count + 2)) return; if (value.Length < (count + 2)) return;
kompl = BitConverter.ToUInt16(value, count); kompl = BitConverter.ToUInt16(value, count); count += 2;
count += 2;
if (value.Length < (count + 2)) return; if (value.Length < (count + 2)) return;
izl = BitConverter.ToUInt16(value, count); izl = BitConverter.ToUInt16(value, count); count += 2;
count += 2;
if (value.Length < (count + 4)) return; if (value.Length < (count + 4)) return;
robm = BitConverter.ToSingle(value, count); robm = BitConverter.ToSingle(value, count); count += 4;
count += 4;
if (value.Length < (count + 4)) return; if (value.Length < (count + 4)) return;
rizol = BitConverter.ToSingle(value, count); rizol = BitConverter.ToSingle(value, count); count += 4;
count += 4;
if (value.Length < (count + 2)) return; if (value.Length < (count + 2)) return;
dkr = BitConverter.ToUInt16(value, count); dkr = BitConverter.ToUInt16(value, count); count += 2;
count += 2;
if (value.Length < (count + 51)) return; if (value.Length < (count + 51)) return;
nkon = enc.GetString(value, count, 51); nkon = ByteToString(value, count, 51); count += 51;
count += 51;
if (value.Length < (count + 6)) return; if (value.Length < (count + 6)) return;
pos = enc.GetString(value, count, 6); pos = ByteToString(value, count, 6); count += 6;
count += 6;
if (value.Length < (count + 51)) return; if (value.Length < (count + 51)) return;
ukaz = enc.GetString(value, count, 51); ukaz = ByteToString(value, count, 51); count += 51;
count += 51;
if (value.Length < (count + 51)) return; if (value.Length < (count + 51)) return;
zakaz = enc.GetString(value, count, 51); zakaz = ByteToString(value, count, 51); count += 51;
count += 51;
if (value.Length < (count + 51)) return; if (value.Length < (count + 51)) return;
kat = enc.GetString(value, count, 51); kat = ByteToString(value, count, 51); count += 51;
count += 51;
if (value.Length < (count + 3)) return; if (value.Length < (count + 3)) return;
pril = enc.GetString(value, count, 3); pril = ByteToString(value, count, 3); count += 3;
count += 3;
if (value.Length < (count + 1023)) return; if (value.Length < (count + 1023)) return;
rezerved = enc.GetString(value, count, 1023); rezerved = ByteToString(value, count, 1023); count += 1023;
count += 1023;
} }
} }
} }

@ -0,0 +1,16 @@
{
"servers": [
{
"name": "STP 1",
"ip": "10.10.45.151",
"port": 1070,
"dir": "Y:\\data"
},
{
"name": "STP 2",
"ip": "10.10.45.152",
"port": 1070,
"dir": "Z:\\data"
}
]
}

@ -0,0 +1,199 @@
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v5.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v5.0": {
"DataClient/0.0.3": {
"dependencies": {
"NLog": "4.7.10",
"NLog.Extensions.Logging": "1.7.2",
"Newtonsoft.Json": "13.0.1"
},
"runtime": {
"DataClient.dll": {}
}
},
"Microsoft.Extensions.Configuration.Abstractions/5.0.0": {
"dependencies": {
"Microsoft.Extensions.Primitives": "5.0.0"
},
"runtime": {
"lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.dll": {
"assemblyVersion": "5.0.0.0",
"fileVersion": "5.0.20.51904"
}
}
},
"Microsoft.Extensions.DependencyInjection/5.0.0": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection.Abstractions": "5.0.0"
},
"runtime": {
"lib/net5.0/Microsoft.Extensions.DependencyInjection.dll": {
"assemblyVersion": "5.0.0.0",
"fileVersion": "5.0.20.51904"
}
}
},
"Microsoft.Extensions.DependencyInjection.Abstractions/5.0.0": {
"runtime": {
"lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
"assemblyVersion": "5.0.0.0",
"fileVersion": "5.0.20.51904"
}
}
},
"Microsoft.Extensions.Logging/5.0.0": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "5.0.0",
"Microsoft.Extensions.DependencyInjection.Abstractions": "5.0.0",
"Microsoft.Extensions.Logging.Abstractions": "5.0.0",
"Microsoft.Extensions.Options": "5.0.0"
},
"runtime": {
"lib/netstandard2.1/Microsoft.Extensions.Logging.dll": {
"assemblyVersion": "5.0.0.0",
"fileVersion": "5.0.20.51904"
}
}
},
"Microsoft.Extensions.Logging.Abstractions/5.0.0": {
"runtime": {
"lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll": {
"assemblyVersion": "5.0.0.0",
"fileVersion": "5.0.20.51904"
}
}
},
"Microsoft.Extensions.Options/5.0.0": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection.Abstractions": "5.0.0",
"Microsoft.Extensions.Primitives": "5.0.0"
},
"runtime": {
"lib/net5.0/Microsoft.Extensions.Options.dll": {
"assemblyVersion": "5.0.0.0",
"fileVersion": "5.0.20.51904"
}
}
},
"Microsoft.Extensions.Primitives/5.0.0": {
"runtime": {
"lib/netcoreapp3.0/Microsoft.Extensions.Primitives.dll": {
"assemblyVersion": "5.0.0.0",
"fileVersion": "5.0.20.51904"
}
}
},
"Newtonsoft.Json/13.0.1": {
"runtime": {
"lib/netstandard2.0/Newtonsoft.Json.dll": {
"assemblyVersion": "13.0.0.0",
"fileVersion": "13.0.1.25517"
}
}
},
"NLog/4.7.10": {
"runtime": {
"lib/netstandard2.0/NLog.dll": {
"assemblyVersion": "4.0.0.0",
"fileVersion": "4.7.10.13013"
}
}
},
"NLog.Extensions.Logging/1.7.2": {
"dependencies": {
"Microsoft.Extensions.Configuration.Abstractions": "5.0.0",
"Microsoft.Extensions.Logging": "5.0.0",
"NLog": "4.7.10"
},
"runtime": {
"lib/net5.0/NLog.Extensions.Logging.dll": {
"assemblyVersion": "1.0.0.0",
"fileVersion": "1.7.2.1548"
}
}
}
}
},
"libraries": {
"DataClient/0.0.3": {
"type": "project",
"serviceable": false,
"sha512": ""
},
"Microsoft.Extensions.Configuration.Abstractions/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-ETjSBHMp3OAZ4HxGQYpwyGsD8Sw5FegQXphi0rpoGMT74S4+I2mm7XJEswwn59XAaKOzC15oDSOWEE8SzDCd6Q==",
"path": "microsoft.extensions.configuration.abstractions/5.0.0",
"hashPath": "microsoft.extensions.configuration.abstractions.5.0.0.nupkg.sha512"
},
"Microsoft.Extensions.DependencyInjection/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-Rc2kb/p3Ze6cP6rhFC3PJRdWGbLvSHZc0ev7YlyeU6FmHciDMLrhoVoTUEzKPhN5ZjFgKF1Cf5fOz8mCMIkvpA==",
"path": "microsoft.extensions.dependencyinjection/5.0.0",
"hashPath": "microsoft.extensions.dependencyinjection.5.0.0.nupkg.sha512"
},
"Microsoft.Extensions.DependencyInjection.Abstractions/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-ORj7Zh81gC69TyvmcUm9tSzytcy8AVousi+IVRAI8nLieQjOFryRusSFh7+aLk16FN9pQNqJAiMd7BTKINK0kA==",
"path": "microsoft.extensions.dependencyinjection.abstractions/5.0.0",
"hashPath": "microsoft.extensions.dependencyinjection.abstractions.5.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Logging/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-MgOwK6tPzB6YNH21wssJcw/2MKwee8b2gI7SllYfn6rvTpIrVvVS5HAjSU2vqSku1fwqRvWP0MdIi14qjd93Aw==",
"path": "microsoft.extensions.logging/5.0.0",
"hashPath": "microsoft.extensions.logging.5.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Logging.Abstractions/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-NxP6ahFcBnnSfwNBi2KH2Oz8Xl5Sm2krjId/jRR3I7teFphwiUoUeZPwTNA21EX+5PtjqmyAvKaOeBXcJjcH/w==",
"path": "microsoft.extensions.logging.abstractions/5.0.0",
"hashPath": "microsoft.extensions.logging.abstractions.5.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Options/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-CBvR92TCJ5uBIdd9/HzDSrxYak+0W/3+yxrNg8Qm6Bmrkh5L+nu6m3WeazQehcZ5q1/6dDA7J5YdQjim0165zg==",
"path": "microsoft.extensions.options/5.0.0",
"hashPath": "microsoft.extensions.options.5.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Primitives/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-cI/VWn9G1fghXrNDagX9nYaaB/nokkZn0HYAawGaELQrl8InSezfe9OnfPZLcJq3esXxygh3hkq2c3qoV3SDyQ==",
"path": "microsoft.extensions.primitives/5.0.0",
"hashPath": "microsoft.extensions.primitives.5.0.0.nupkg.sha512"
},
"Newtonsoft.Json/13.0.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-ppPFpBcvxdsfUonNcvITKqLl3bqxWbDCZIzDWHzjpdAHRFfZe0Dw9HmA0+za13IdyrgJwpkDTDA9fHaxOrt20A==",
"path": "newtonsoft.json/13.0.1",
"hashPath": "newtonsoft.json.13.0.1.nupkg.sha512"
},
"NLog/4.7.10": {
"type": "package",
"serviceable": true,
"sha512": "sha512-rcegW7kYOCjl7wX0SzsqpPBqnJ51JKi1WkYb6QBVX0Wc5IgH19Pv4t/co+T0s06OS0Ne44xgkY/mHg0PdrmJow==",
"path": "nlog/4.7.10",
"hashPath": "nlog.4.7.10.nupkg.sha512"
},
"NLog.Extensions.Logging/1.7.2": {
"type": "package",
"serviceable": true,
"sha512": "sha512-0y1QziAUCdePQc4itPOQF3xDcs0iE9NHlIK0hE0eA0+Ef6E9dnJDPveNu7w2ckYaDfJIFHpOoLK8sZmNEyiBCw==",
"path": "nlog.extensions.logging/1.7.2",
"hashPath": "nlog.extensions.logging.1.7.2.nupkg.sha512"
}
}
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

@ -0,0 +1,4 @@
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v5.0", FrameworkDisplayName = "")]

@ -0,0 +1,23 @@
//------------------------------------------------------------------------------
// <auto-generated>
// Этот код создан программой.
// Исполняемая версия:4.0.30319.42000
//
// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае
// повторной генерации кода.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("DataClient")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Release")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("0.0.3.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("0.0.3")]
[assembly: System.Reflection.AssemblyProductAttribute("DataClient")]
[assembly: System.Reflection.AssemblyTitleAttribute("DataClient")]
[assembly: System.Reflection.AssemblyVersionAttribute("0.0.3.0")]
// Создано классом WriteCodeFragment MSBuild.

@ -0,0 +1 @@
e480fc7f37c19bb3afbdfca97bffb5429904cde2

@ -0,0 +1,8 @@
is_global = true
build_property.TargetFramework = net5.0
build_property.TargetPlatformMinVersion =
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.PublishSingleFile =
build_property.IncludeAllContentForSelfExtract =
build_property._SupportedPlatformList = Android,iOS,Linux,macOS,Windows

Binary file not shown.

@ -0,0 +1 @@
a328cb2222d42dc01388bbdc69d054e8d72e5f87

@ -0,0 +1,13 @@
D:\GIT\ASCKU_PC\DataClient\bin\Release\net5.0\Config\config.json
D:\GIT\ASCKU_PC\DataClient\bin\Release\net5.0\DataClient.deps.json
D:\GIT\ASCKU_PC\DataClient\bin\Release\net5.0\DataClient.dll
D:\GIT\ASCKU_PC\DataClient\bin\Release\net5.0\ref\DataClient.dll
D:\GIT\ASCKU_PC\DataClient\bin\Release\net5.0\DataClient.pdb
D:\GIT\ASCKU_PC\DataClient\obj\Release\net5.0\DataClient.csprojAssemblyReference.cache
D:\GIT\ASCKU_PC\DataClient\obj\Release\net5.0\DataClient.GeneratedMSBuildEditorConfig.editorconfig
D:\GIT\ASCKU_PC\DataClient\obj\Release\net5.0\DataClient.AssemblyInfoInputs.cache
D:\GIT\ASCKU_PC\DataClient\obj\Release\net5.0\DataClient.AssemblyInfo.cs
D:\GIT\ASCKU_PC\DataClient\obj\Release\net5.0\DataClient.csproj.CoreCompileInputs.cache
D:\GIT\ASCKU_PC\DataClient\obj\Release\net5.0\DataClient.dll
D:\GIT\ASCKU_PC\DataClient\obj\Release\net5.0\ref\DataClient.dll
D:\GIT\ASCKU_PC\DataClient\obj\Release\net5.0\DataClient.pdb

Binary file not shown.

Binary file not shown.

Binary file not shown.

@ -2,13 +2,15 @@
"servers": [ "servers": [
{ {
"name": "STP 1", "name": "STP 1",
"address": "10.10.45.151:1070", "ip": "10.10.45.151",
"archive": "Y:\\data" "port": 1070,
"dir": "Y:\\data"
}, },
{ {
"name": "STP 2", "name": "STP 2",
"address": "10.10.45.152:1070", "ip": "10.10.45.152",
"archive": "Z:\\data" "port": 1070,
"dir": "Z:\\data"
} }
] ]
} }

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
Release/Test2/NLog.dll Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

@ -8,15 +8,123 @@
".NETCoreApp,Version=v5.0": { ".NETCoreApp,Version=v5.0": {
"Test2/1.0.0": { "Test2/1.0.0": {
"dependencies": { "dependencies": {
"STPClient": "1.0.0" "DataClient": "0.0.3",
"NLog": "4.7.10",
"NLog.Extensions.Logging": "1.7.2"
}, },
"runtime": { "runtime": {
"Test2.dll": {} "Test2.dll": {}
} }
}, },
"STPClient/1.0.0": { "Microsoft.Extensions.Configuration.Abstractions/5.0.0": {
"dependencies": {
"Microsoft.Extensions.Primitives": "5.0.0"
},
"runtime": { "runtime": {
"STPClient.dll": {} "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.dll": {
"assemblyVersion": "5.0.0.0",
"fileVersion": "5.0.20.51904"
}
}
},
"Microsoft.Extensions.DependencyInjection/5.0.0": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection.Abstractions": "5.0.0"
},
"runtime": {
"lib/net5.0/Microsoft.Extensions.DependencyInjection.dll": {
"assemblyVersion": "5.0.0.0",
"fileVersion": "5.0.20.51904"
}
}
},
"Microsoft.Extensions.DependencyInjection.Abstractions/5.0.0": {
"runtime": {
"lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
"assemblyVersion": "5.0.0.0",
"fileVersion": "5.0.20.51904"
}
}
},
"Microsoft.Extensions.Logging/5.0.0": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "5.0.0",
"Microsoft.Extensions.DependencyInjection.Abstractions": "5.0.0",
"Microsoft.Extensions.Logging.Abstractions": "5.0.0",
"Microsoft.Extensions.Options": "5.0.0"
},
"runtime": {
"lib/netstandard2.1/Microsoft.Extensions.Logging.dll": {
"assemblyVersion": "5.0.0.0",
"fileVersion": "5.0.20.51904"
}
}
},
"Microsoft.Extensions.Logging.Abstractions/5.0.0": {
"runtime": {
"lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll": {
"assemblyVersion": "5.0.0.0",
"fileVersion": "5.0.20.51904"
}
}
},
"Microsoft.Extensions.Options/5.0.0": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection.Abstractions": "5.0.0",
"Microsoft.Extensions.Primitives": "5.0.0"
},
"runtime": {
"lib/net5.0/Microsoft.Extensions.Options.dll": {
"assemblyVersion": "5.0.0.0",
"fileVersion": "5.0.20.51904"
}
}
},
"Microsoft.Extensions.Primitives/5.0.0": {
"runtime": {
"lib/netcoreapp3.0/Microsoft.Extensions.Primitives.dll": {
"assemblyVersion": "5.0.0.0",
"fileVersion": "5.0.20.51904"
}
}
},
"Newtonsoft.Json/13.0.1": {
"runtime": {
"lib/netstandard2.0/Newtonsoft.Json.dll": {
"assemblyVersion": "13.0.0.0",
"fileVersion": "13.0.1.25517"
}
}
},
"NLog/4.7.10": {
"runtime": {
"lib/netstandard2.0/NLog.dll": {
"assemblyVersion": "4.0.0.0",
"fileVersion": "4.7.10.13013"
}
}
},
"NLog.Extensions.Logging/1.7.2": {
"dependencies": {
"Microsoft.Extensions.Configuration.Abstractions": "5.0.0",
"Microsoft.Extensions.Logging": "5.0.0",
"NLog": "4.7.10"
},
"runtime": {
"lib/net5.0/NLog.Extensions.Logging.dll": {
"assemblyVersion": "1.0.0.0",
"fileVersion": "1.7.2.1548"
}
}
},
"DataClient/0.0.3": {
"dependencies": {
"NLog": "4.7.10",
"NLog.Extensions.Logging": "1.7.2",
"Newtonsoft.Json": "13.0.1"
},
"runtime": {
"DataClient.dll": {}
} }
} }
} }
@ -27,7 +135,77 @@
"serviceable": false, "serviceable": false,
"sha512": "" "sha512": ""
}, },
"STPClient/1.0.0": { "Microsoft.Extensions.Configuration.Abstractions/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-ETjSBHMp3OAZ4HxGQYpwyGsD8Sw5FegQXphi0rpoGMT74S4+I2mm7XJEswwn59XAaKOzC15oDSOWEE8SzDCd6Q==",
"path": "microsoft.extensions.configuration.abstractions/5.0.0",
"hashPath": "microsoft.extensions.configuration.abstractions.5.0.0.nupkg.sha512"
},
"Microsoft.Extensions.DependencyInjection/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-Rc2kb/p3Ze6cP6rhFC3PJRdWGbLvSHZc0ev7YlyeU6FmHciDMLrhoVoTUEzKPhN5ZjFgKF1Cf5fOz8mCMIkvpA==",
"path": "microsoft.extensions.dependencyinjection/5.0.0",
"hashPath": "microsoft.extensions.dependencyinjection.5.0.0.nupkg.sha512"
},
"Microsoft.Extensions.DependencyInjection.Abstractions/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-ORj7Zh81gC69TyvmcUm9tSzytcy8AVousi+IVRAI8nLieQjOFryRusSFh7+aLk16FN9pQNqJAiMd7BTKINK0kA==",
"path": "microsoft.extensions.dependencyinjection.abstractions/5.0.0",
"hashPath": "microsoft.extensions.dependencyinjection.abstractions.5.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Logging/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-MgOwK6tPzB6YNH21wssJcw/2MKwee8b2gI7SllYfn6rvTpIrVvVS5HAjSU2vqSku1fwqRvWP0MdIi14qjd93Aw==",
"path": "microsoft.extensions.logging/5.0.0",
"hashPath": "microsoft.extensions.logging.5.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Logging.Abstractions/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-NxP6ahFcBnnSfwNBi2KH2Oz8Xl5Sm2krjId/jRR3I7teFphwiUoUeZPwTNA21EX+5PtjqmyAvKaOeBXcJjcH/w==",
"path": "microsoft.extensions.logging.abstractions/5.0.0",
"hashPath": "microsoft.extensions.logging.abstractions.5.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Options/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-CBvR92TCJ5uBIdd9/HzDSrxYak+0W/3+yxrNg8Qm6Bmrkh5L+nu6m3WeazQehcZ5q1/6dDA7J5YdQjim0165zg==",
"path": "microsoft.extensions.options/5.0.0",
"hashPath": "microsoft.extensions.options.5.0.0.nupkg.sha512"
},
"Microsoft.Extensions.Primitives/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-cI/VWn9G1fghXrNDagX9nYaaB/nokkZn0HYAawGaELQrl8InSezfe9OnfPZLcJq3esXxygh3hkq2c3qoV3SDyQ==",
"path": "microsoft.extensions.primitives/5.0.0",
"hashPath": "microsoft.extensions.primitives.5.0.0.nupkg.sha512"
},
"Newtonsoft.Json/13.0.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-ppPFpBcvxdsfUonNcvITKqLl3bqxWbDCZIzDWHzjpdAHRFfZe0Dw9HmA0+za13IdyrgJwpkDTDA9fHaxOrt20A==",
"path": "newtonsoft.json/13.0.1",
"hashPath": "newtonsoft.json.13.0.1.nupkg.sha512"
},
"NLog/4.7.10": {
"type": "package",
"serviceable": true,
"sha512": "sha512-rcegW7kYOCjl7wX0SzsqpPBqnJ51JKi1WkYb6QBVX0Wc5IgH19Pv4t/co+T0s06OS0Ne44xgkY/mHg0PdrmJow==",
"path": "nlog/4.7.10",
"hashPath": "nlog.4.7.10.nupkg.sha512"
},
"NLog.Extensions.Logging/1.7.2": {
"type": "package",
"serviceable": true,
"sha512": "sha512-0y1QziAUCdePQc4itPOQF3xDcs0iE9NHlIK0hE0eA0+Ef6E9dnJDPveNu7w2ckYaDfJIFHpOoLK8sZmNEyiBCw==",
"path": "nlog.extensions.logging/1.7.2",
"hashPath": "nlog.extensions.logging.1.7.2.nupkg.sha512"
},
"DataClient/0.0.3": {
"type": "project", "type": "project",
"serviceable": false, "serviceable": false,
"sha512": "" "sha512": ""

Binary file not shown.

Binary file not shown.

@ -9,6 +9,7 @@ using System.Collections.Generic;
using System.Text; using System.Text;
using System.IO; using System.IO;
using System.Threading.Tasks; using System.Threading.Tasks;
using DataClient.Struct;
namespace Test2 namespace Test2
{ {
@ -60,34 +61,55 @@ namespace Test2
var t = new NETClient("10.10.45.151", 1070); var t = new NETClient("10.10.45.151", 1070);
t.RetryCount = 10; t.RetryCount = 10;
t.RetryInterval = 0.1; t.RetryInterval = 0.1;
var d_start = DateTime.Now; var work_dir = "D:/pasports";
var d_end = new DateTime(2021, 01, 01); Directory.CreateDirectory(work_dir);
var dir_year = t.Full_Dir_Browse();
Console.WriteLine("Read main dir.");
foreach (var a in dir_year)
{
if (a == "current") continue;
Console.WriteLine(" Read dir " + a + ".");
var dir_month = t.Full_Dir_Browse(a);
foreach(var b in dir_month)
{
Console.WriteLine(" Read dir " + b + ".");
var dir_day = t.Full_Dir_Browse(b);
foreach(var c in dir_day)
{
Console.WriteLine(" Read dir " + c + ".");
var pasports = t.Full_Dir_Browse(c);
foreach(var d in pasports)
{
var count = 0; var count = 0;
Directory.CreateDirectory(Directory.GetCurrentDirectory() + "/test"); Pasport pasp;
for (var d = d_start; d >= d_end; d = d.AddDays(-1)) do
{ {
var pasplist = t.Full_Dir_Browse(d.ToString("yyyy'/'MM'/'dd")); Console.WriteLine(" Read " + count + " pasp: " + d);
if (pasplist != null) pasp = t.Full_Pasp_Download(d);
foreach(var p in pasplist) count = (pasp.HasData && pasp.hasPasport) ? 3 : count + 1;
} while (count < 3);
Directory.CreateDirectory(work_dir + "/" + c);
var res = pasp.PaspByte;
var name = (pasp.hasPasport && !string.IsNullOrEmpty(pasp.nplav)) ? pasp.nplav : (pasp.numVDP.HasValue) ? pasp.numVDP.Value.ToString("D2") : "Jane_Doe";
Console.Write(" Write pasp " + name + ": byte; ");
using (var file = new FileStream(work_dir + "/" + c + "/" + name, FileMode.Create, FileAccess.Write))
{ {
var pasp = t.Full_Pasp_Download(p); file.Write(res, 0, res.Length);
using (var file = new FileStream(Directory.GetCurrentDirectory() + "/test/pasp" + count.ToString() + ".txt", FileMode.Create, FileAccess.Write))
{
file.Write(pasp, 0, pasp.Length);
} }
count++; Console.WriteLine("read;");
/* using (var file = new StreamWriter(work_dir + "/" + c + "/" + name + "_read.txt"))
for(var i = 0; i < pasp.Length; i++)
{ {
Console.Write(" " + pasp[i].ToString("X2")); file.WriteLine(pasp.HasData); file.WriteLine(pasp.numVDP); file.WriteLine(pasp.dStart); file.WriteLine(pasp.dEnd);
if ((i + 1) % 16 == 0) Console.WriteLine(); file.WriteLine(pasp.hasPasport); file.WriteLine(pasp.kod_npl); file.WriteLine(pasp.nplav); file.WriteLine(pasp.rm);
file.WriteLine(pasp.splav); file.WriteLine(pasp.iS); file.WriteLine(pasp.notd); file.WriteLine(pasp.vessl);
file.WriteLine(pasp.diam); file.WriteLine(pasp.prpl); file.WriteLine(pasp.tin); file.WriteLine(pasp.dzap);
file.WriteLine(pasp.dlog); file.WriteLine(pasp.last); file.WriteLine(pasp.dlper); file.WriteLine(pasp.nazn);
file.WriteLine(pasp.kompl); file.WriteLine(pasp.izl); file.WriteLine(pasp.robm); file.WriteLine(pasp.rizol);
file.WriteLine(pasp.dkr); file.WriteLine(pasp.nkon); file.WriteLine(pasp.pos); file.WriteLine(pasp.ukaz);
file.WriteLine(pasp.zakaz); file.WriteLine(pasp.kat); file.WriteLine(pasp.pril); file.WriteLine(pasp.rezerved);
}
}
} }
Console.WriteLine();
Console.Write("Press button...");
Console.ReadKey();
Console.WriteLine();
*/
} }
} }
} }

@ -4,6 +4,6 @@ https://go.microsoft.com/fwlink/?LinkID=208121.
--> -->
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup> <PropertyGroup>
<History>True|2021-05-27T05:25:07.0935906Z;False|2021-05-27T10:24:29.8656359+05:00;True|2021-05-27T10:23:03.9710447+05:00;</History> <History>True|2021-06-05T18:21:31.7001275Z;True|2021-05-27T10:25:07.0935906+05:00;False|2021-05-27T10:24:29.8656359+05:00;True|2021-05-27T10:23:03.9710447+05:00;</History>
</PropertyGroup> </PropertyGroup>
</Project> </Project>

Binary file not shown.

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More