IsolatedArea.cs
2.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
using System;
using System.Collections.Generic;
using System.Linq;
using Newtonsoft.Json;
using Sungero.Core;
using Sungero.ExchangeCore.Structures.Module;
namespace Sungero.ExchangeCore.Isolated.DpadConverter
{
public class DpadConverter
{
/// <summary>
/// Получить данные штампа с подписями.
/// </summary>
/// <param name="stamp">Штамп.</param>
/// <returns>Dpad штамп.</returns>
public virtual NpoComputer.DpadCP.Converter.Stamps.SignatureStampGenerator GetSignatureStamp(Structures.Module.IDpadSignatureStamp stamp)
{
var documentInfo = new NpoComputer.DpadCP.Converter.Stamps.DocumentInfo()
{
DocumentId = stamp.PageStampInfo.DocumentId,
Title = stamp.PageStampInfo.Title
};
var dpadStamp = new NpoComputer.DpadCP.Converter.Stamps.SignatureStampGenerator(documentInfo);
dpadStamp.StampWidth = stamp.StampWidth;
foreach (var signature in stamp.Signatures)
{
var dpadSignature = new NpoComputer.Dpad.Converter.SignatureInfo();
dpadSignature.CertificateIssuer = signature.CertificateIssuer;
dpadSignature.CertificateSerialNumber = signature.CertificateSerialNumber;
dpadSignature.FormalizedPoATitle = signature.FormalizedPoATitle;
dpadSignature.FormalizedPoAUnifiedNumber = signature.FormalizedPoAUnifiedNumber;
dpadSignature.OrganizationInfo = signature.OrganizationInfo;
dpadSignature.PersonInfo = signature.PersonInfo;
dpadSignature.SignIcon = this.GetDpadSignIcon(signature.SignIcon);
dpadSignature.SigningDate = signature.SigningDate;
dpadSignature.Status = signature.Status;
dpadStamp.Signatures.Add(dpadSignature);
}
return dpadStamp;
}
/// <summary>
/// Получить иконку подписания Dpad.
/// </summary>
/// <param name="signIcon">Значение иконки подписания.</param>
/// <returns>Иконка подписания Dpad.</returns>
public virtual NpoComputer.DpadCP.Converter.SignIcon GetDpadSignIcon(int signIcon)
{
switch (signIcon)
{
case 0: return NpoComputer.DpadCP.Converter.SignIcon.None;
case 1: return NpoComputer.DpadCP.Converter.SignIcon.Warning;
case 2: return NpoComputer.DpadCP.Converter.SignIcon.Sign;
default: throw new Exception(string.Format("Unexpected SignIcon value: {0}.", signIcon));
}
}
}
}