Фрилансеры предложат решение вашей задачи уже через несколько минут!

Публикация заказа на фриланс бирже не займет много времени.

12 дней назад
Игорь Кабанов
47 лет, Россия
13 лет в сервисе
Был онлайн 3 часа назад
12 дней назад

С 01.07.2020 в РФ вводится обязательная маркировка лекарств. Занимется этим https://честныйзнак.рф/ (далее ЧЗ). 
Нужно для клиники сделать виндовую службу, которая обеспечит обмен данными между расположенным в интернете сервером ЧЗ, и расположенным в локальной сети MS SQL Server.
.
Т.е. служба работает, раз в Х секунд проверяет наличие новых документов в определенных таблицах в SQL Server. Если я в SQL Server добавил в заданную таблицу xml документ, например "Накладная приема лекарств", то служба должна передать его на сервер ЧЗ. 
Раз в Y минут служба проверяет наличие новых документов на сервере ЧЗ, и при наличии, загружает их, и кладет в SQL Server.
При появлении в таблице в SQL Server новой записи "получить справочник Х", служба получает из ЧЗ справочник Х.
Визуализация, обработка и формирование документов не нужна, нужен транспортный уровень. Т.е. авторизация, ЭЦП, получение данных, отправка данных, постраничное получение, интервалы между запросами, логирование, устойчивость к ошибкам, обработка ошибок. 
.
Язык разработки MS C#. В качестве базы данных используется MS SQL Server 2008R2 Express. 
.
Требуемые навыки, и используемые инструменты:
• Бесплатная редакция MS C# (нужно будет поднять и настроить на предоставленном компе)
• MS SQL Server 2008 R2 Express (добавление объектов в существующую базу)
• Клиентская часть REST API сервисов, HTTP, HTTPS, SSL (RSA и ГОСТ), УКЭП aka ЭЦП
• Для организации доступа, желателен постоянный внешний ip
.
Работа сдается в виде исходных кодов. У Вас будет удаленный доступ к двум компьютерам. На компьютере #1 (билд сервер) производится компиляция службы, после чего служба ставится на компьютер #2, и там поверяется ее работа. 
.
ЧЗ предоставляет открытый тестовый стенд, и два варианта доступа к системе: рабочий, и "песочницу". Для "песочницы", и доступа к рабочему серверу ЧЗ нужна постоянная (не тестовая) УКЭП, УКЭП точно будет на компьютере #2, под вопросом - на компьютере #1 (это важно?). 
.
Собственником кода является Заказчик.
Инструменты общения во время разработки - телеграмм и скайп.
Требуется аккуратное оформление кода, наличие комментариев, при необходимости - пояснения что и как в коде работает.
Правила оформления кода - будут предоставлены отдельным документом, если в этом будет необходимость.
Потребуются пояснения и, возможно, демонстрация, по настройке сертификатов, ЭЦП, и прочей обвязки, нужной для работы службы.
По времени, я предполагаю, на работу нужно около недели рабочего времени. Это моя оценка объема работ, а не требование по срокам.
Оплата в рублях. Предпочтительно ЯД, или Сбер, но можно обсудить. Безопасная сделка не используется.
Стоимость я предполагаю около 30 тыс, зависит от предложений. Предполагаю, что могу ошибаться как в меньшую, так и в большую сторону.
Оплата после завершения работ, возможно разбиение на этапы. 
.
Насколько я понимаю описание https://честныйзнак.рф/upload/iblock/200/IS-_Markirovka_.-MDLP.-Protokol-obmena-interfeysnogo-urovnya.pdf, логика ЧЗ такая, что во всех многообразных функциях и обращениях к серверу ЧЗ, все значимые данные компонуются в json/xml, и передаются как одно целое. Это означает, что мы можем вынести формирование xml / json / get строки за пределы разрабатываемой службы. То есть Вам, как разработчику, не надо будет отдельно программировать каждый из упомянутых в "Протоколе обмена" методов. Допустим, есть метод 7.5.1. "Получение объекта ФИАС по идентификатору адресного объекта". Служба берет из MS Sql: Адресную строку "Endpoint: GET <endpoint>/<version>/reestr/fias/addrobj/{addrobj}", тип метода get/post, json со всеми параметрами (подготовленный за пределами службы, в данном случае пустой). И посылает в ЧЗ, не зная, что это за метод, и не кодируя его параметры. Ответ тоже приходит в формате json, и разборку полученного json на отдельные параметры тоже выносим за пределы службы.
Отдельно стоят методы, в которых отсылаются xml документы, потому что <xml> надо преобразовать в base64, и это преобразование желательно возложить на службу.
в "Протоколе обмена..." говорится, что документы большого объема пересылаются через WebDAV. В этом же документе в п. "5.5. Получение информации об ограничении размера небольших документов" говорится, что сейчас большим считается документ размером более 1 Мб. Накладные, и т.п. документы в формате xml занимают в разы меньше места, чем 1 Мб. Соответственно, исходим из предположения, что WebDAV НЕ нужен.
Этапы:
1. Обсудить и согласовать список используемых компонентов, если таковые потребуются. Если нужны платные компоненты, об этом желательно сказать до начала работ.
2. Поднять на виртуальном сервере #1 MS студию для C#, при необходмиости - установить и настроить нужные компоненты. 
3. Подключение к серверам и авторизация.
4. "Простые" get запросы в ЧЗ без параметров. 
5. Методы, где нужно преобразовывать xml в base64. Логирование, отладка, устойчивость работы.
6. Тестовая работа, исправление найденных недостатков
7. Гарантийное сопровождение (обсудить срок)
.
Данное ТЗ является достаточно черновым. При необходимости уточнений, и наличии вопросов, обращайтесь в личку, или по скайпу.
Более детальное ТЗ, структура данных для sql, и т.п., будет формироваться в процессе работы.
.
Краткая инструкция по быстрому старту для изучения API, инструкция по подключению к тестовому стенду.
https://честныйзнак.рф/upload/iblock/25b/Kratkaya_instruktsiya_po_bystromu_startu_dlya_izucheniya_API.pdf
.
ИС "Маркировка". МДЛП. Протокол обмена интерфейсного уровня.
https://честныйзнак.рф/upload/iblock/200/IS-_Markirovka_.-MDLP.-Protokol-obmena-interfeysnogo-urovnya.pdf
.
Подборка документов от ЧЗ для разработчиков
https://честныйзнак.рф/business/projects/medicines/documents/for_developers/

  1. Прием заявок
  2. Выбор исполнителя
  3. Выполнение заказа
  4. Обмен отзывами
Выбранный исполнитель
Алексей К.
Алексей К. 
47 лет, Украина
7 лет в сервисе
Был онлайн 9 минут назад
1 день назад

$400

10 дней

  • Рекламное место свободно
    15 дней за $5
  • Рекламное место свободно
    15 дней за $5
Алексей П.
47 лет, Россия
3 года в сервисе
Был онлайн 3 часа назад
12 дней назад

Безопасный платеж

ТОП-50 — Прикладное ПО
Алексей К.
Алексей К. 
47 лет, Украина
7 лет в сервисе
Был онлайн 9 минут назад
12 дней назад

Другие заказы в категории «Прикладное ПО»

Здесь заказчик и фрилансеры могут обсуждать заказ до начала его выполнения.
Фрилансеры могут участвовать в обсуждении только после подачи заявки.
Здесь заказчик будет контролировать выполнение заказа и общаться с исполнителем.
Доступ к этому разделу имеют только заказчик и выбранный исполнитель.
Все материалы этого раздела закрыты от поисковых систем.