示例#1
0
 /// <summary>
 /// Отправляет сообщение с заявлением об участии в ЭДО СФ
 /// </summary>
 /// <param name="message">Сообщение с заявлением об участии в ЭДО СФ</param>
 /// <returns>Отправленное сообщение</returns>
 public SentMessage SendStatementOfInvoiceReglament(MessageOfStatement message)
 {
     return CheckAutorizedInvoke(() => client.SendStatementOfInvoiceReglament(Token, message));
 }
示例#2
0
        /// <summary>
        /// Отправка заявления об участии в ЭДО СФ
        /// </summary>
        public void SendStatementOfInvoiceReglament()
        {
            var certificate = _context.Certificate;
            var boxId = _context.CurrentBox;

            // требуется авторизация по сертификату
            if (certificate == null)
                ChooseCertificate();

            try
            {
                // создадим заявление
                var statement = _context.ServiceClient.GenerateStatementOfInvoiceReglament(boxId);

                // подпишем заявление
                var sign = Sign(statement.Content);
                if (sign == null)
                {
                    UserInput.Error("Не удалось подписать заявление об участии в ЭДО СФ");
                    return;
                }

                var document = new Document
                               {
                                   Id = Guid.NewGuid().ToString(),
                                   DocumentType = DocumentType.Untyped,
                                   UntypedKind = UntypedKind.StatementOfInvoiceReglament,
                                   FileName = statement.Name,
                                   Content = statement.Content
                               };
                // отправим сообщение с заявлением
                var message = new MessageOfStatement
                              {
                                  Id = Guid.NewGuid().ToString(),
                                  FromBoxId = _context.CurrentBox,
                                  Statement = document,
                                  Sign = new Sign
                                         {
                                             Id = Guid.NewGuid().ToString(),
                                             DocumentId = document.Id,
                                             Raw = sign
                                         }
                              };

                _context.ServiceClient.SendStatementOfInvoiceReglament(message);
                UserInput.Success("Заявление об участии в ЭДО СФ успешно отправлено!");
            }
            catch (ServerException ex)
            {
                UserInput.Error(ex.Message);
                return;
            }
        }