Фрагмент программы для отправки реестра прямых выплат в ФСС



//-- файл реестра создается до вызова сервиса


//-- Считать сертификат страхователя

// SerialNumberCerClient - серийный номер сертификата

string SerialNumberCerClient = "01AB18273187CE28373423";
X509Certificate2 x509client = getCrypto_CertifClient(SerialNumberCerClient, filelog);
if (x509client == null) return;


//-- Подписать файл

// filename - файл реестра
// x509client - сертификат страхователя
string filename = "D:\\temp\\FSS\\files\\test.xml";
byte[] filesign;
try
{
filesign = SignFile(filename, x509client);
put_string_Log(filelog, "Файл подписан");
}
catch (Exception ex1)
{
put_string_Log(filelog, "Ошибка подписи файла. " + ex1.Message);
return;
}


//-- Считать сертификат ФСС

// SerialNumberCerFSS - серийный номер сертификата

string SerialNumberCerFSS = "2398423HG87KQ1728";
X509Certificate2 x509FSS = getCrypto_CertifFSS(SerialNumberCerFSS, filelog);
if (x509FSS == null) return;


//-- Зашифровать файл

// filesign - подписанное сообщение для сервиса
// x509FSS - сертификат ФСС

byte[] fileencrypt;
try
{
fileencrypt = EncryptFile(filesign, x509FSS);
put_string_Log(filelog, "Файл зашифрован");
}
catch (Exception ex3)
{
put_string_Log(filelog, "Ошибка шифрования файла. " + ex3.Message);
return;
}


//-- Вызвать сервис

// filenameout - имя выходного файла с ответом сервиса
// fileencrypt - зашифрованное сообщение для сервиса
// file_ext - имя файла реестра, отправляемое сервису
//
try
{
call_ServiceFSS_Gateway(filenameout, fileencrypt, file_ext);
put_string_Log(filelog, "Сервис вызван, ответ получен -> " + filenameout);
}
catch (Exception ex4)
{
put_string_Log(filelog, "Ошибка вызова сервиса. " + ex4.Message);
return;
}


Выходной файл с ответом сервиса - test_out.xml:

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"> <s:Header /> <s:Body> <SendFileResponse xmlns="http://asystems.fss"> <SendFileResult xmlns:a="http://schemas.datacontract.org/2004/07/AS.FSS.Gateway.ExtService.Model" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"> <a:ExtID> <2020-0526-08375-40-7812043050> </a:ExtID> <a:RegNum> <7812043050> </a:RegNum> </SendFileResult> </s:Body> </s:Envelope>



Вернуться на главную страницу