https://github.com/bazuka5801/SteamFakePlayer/tree/master/SteamFakePlayer Там 3 программы, скомпилировать , что-бы запускались и отправить мне)
Задача для Алексея Панкова users/Qulac, интеграция с ЧЗ
Задача для Алексея Панкова https://www.weblancer.net/users/Qulac, интеграция с ЧЗ
.
С 01.07.2020 в РФ вводится обязательная маркировка лекарств. Занимается этим https://честныйзнак.рф/ (далее ЧЗ).
Нужно сделать виндовую службу, которая обеспечит обмен данными между расположенным в интернете сервером ЧЗ, и расположенным в локальной сети MS SQL Server.
.
Т.е. служба работает, раз в Х секунд проверяет наличие новых документов в определенных таблицах в SQL Server. Если я в SQL Server добавил в заданную таблицу xml документ, например "Накладная приема лекарств", то служба должна передать его на сервер ЧЗ.
Раз в Y минут служба проверяет наличие новых документов на сервере ЧЗ, и при наличии, загружает их, и кладет в SQL Server.
При появлении в таблице в SQL Server новой записи "получить справочник Х", служба получает из ЧЗ справочник Х.
Визуализация, обработка и формирование документов не нужна, нужен транспортный уровень. Т.е. авторизация, УКЭП, сертификаты, получение данных, отправка данных, постраничное получение, интервалы между запросами, логирование, устойчивость к ошибкам, обработка ошибок, преобразование в/из base64, и т.п.
.
Язык разработки MS C#. В качестве базы данных используется MS SQL Server 2008R2 Express.
Совместимость - винды, кроме совсем уж древних, типа ХР, и мобильных.
.
Требуемые навыки, и используемые инструменты:
• Бесплатная редакция MS C# (нужно будет поднять и настроить на предоставленном компе)
• MS SQL Server 2008 R2 Express (добавление объектов в существующую базу)
• Клиентская часть REST API сервисов, HTTP, HTTPS, SSL (RSA и ГОСТ), УКЭП
.
Есть доступ к Песочнице ЧЗ. Заказчик предоставляет компьютер, с установленной УКЭП, и работающим личным кабинетом ЧЗ, и установленной базой MS SQL. Тестирование производится на этом компьютере.
Когда Заказчик собирает проект из исходного кода у себя на компьютере, в случае проблем Исполнитель помогает Заказчику с ними разобраться.
.
Собственником кода является Заказчик.
Инструменты общения во время разработки - телеграмм и скайп.
В случае использования каких-либо внешних компонентов в C#, обязательно их согласование.
Требуется аккуратное оформление кода, наличие комментариев, при необходимости - пояснения что и как в коде работает.
Правила оформления кода - будут предоставлены отдельным документом, если в этом будет необходимость.
Потребуются пояснения и, возможно, демонстрация, по настройке сертификатов, ЭЦП, и прочей обвязки, нужной для работы службы.
По времени, я предполагаю, на работу нужно около недели рабочего времени. Это моя оценка объема работ, а не требование по срокам.
.
Насколько я понимаю описание https://честныйзнак.рф/upload/iblock/200/IS-_Markirovka_.-MDLP.-Protokol-obmena-interfeysnogo-urovnya.pdf, логика ЧЗ такая, что во всех многообразных функциях и обращениях к серверу ЧЗ, все значимые данные компонуются в json/xml, и передаются как одно целое. Это означает, что мы можем вынести формирование xml / json / get строки за пределы разрабатываемой службы. То есть Вам, как Разработчику, не надо будет отдельно программировать каждый из упомянутых в "Протоколе обмена" методов. Допустим, есть метод 7.5.1. "Получение объекта ФИАС по идентификатору адресного объекта". Служба берет из MS Sql: Адресную строку "Endpoint: GET //reestr/fias/addrobj/{addrobj}", тип метода get/post, json со всеми параметрами (подготовленный за пределами службы, в данном случае пустой). И посылает в ЧЗ, не зная, что это за метод, и не кодируя его параметры. Ответ тоже приходит в формате json, и разборку полученного json на отдельные параметры тоже выносим за пределы службы.
Отдельно стоят методы, в которых отсылаются xml документы, потому что надо преобразовать в base64 и подписать, и это преобразование желательно возложить на службу.
в "Протоколе обмена..." говорится, что документы большого объема пересылаются через WebDAV. В этом же документе в п. "5.5. Получение информации об ограничении размера небольших документов" говорится, что сейчас большим считается документ размером более 1 Мб. Накладные, и т.п. документы в формате xml занимают в разы меньше места, чем 1 Мб. Соответственно, исходим из предположения, что WebDAV НЕ нужен.
.
Перечисление что нужно от службы:
1. base64 кодировка xml, раскодировка, подписание xml УКЭП
2. Всякое разное логирование
3. Задержка между однотипными запросами, как это прописано в правилах ЧЗ. Т.е. например если в chz_out лежит 5 однотипных документов, которые надо отправить в ЧЗ, то отправлять их все одновременно, по правилам ЧЗ, нельзя, надо не чаще чем 1 документ в Х секунд.
4. Обработка ошибок отправки/получения данных, и повторные попытки отправки/получения тех же данных
5. Для обновления справочников по расписанию, проверке наличия в ЧЗ новых документов и т.п. - запуск заданной хранимки(ок) по расписанию. Сами хранимки пишет Заказчик
6. Возможность простейшего xor шифрования паролей из настроечного файла
7. Настроечный файл желателен ini, чтобы техподдержку не переучивать на xml
8. Черновая структура данных MS SQL готова. Нужен будет скрипт для создания структуры данных MS SQL, для возможности быстрой установки на новых компьютерах. Могу с этим помочь
9. Скорее всего, я что-нибудь забыл, список может пополняться, но я стараюсь не злобствовать.
.
Этапы:
1. Коннект к ЧЗ, авторизация
2. Получение ответа на любой запрос по https. Ошибки сертификатов при этом не должны гаситься. Для простоты, можно не в виде службы, а в виде приложения
3. Вся обвязка. Общение с MS Sql, логирование, настройки, и т.п.
.
Оплата:
Первый этап 20%, второй и третий по 40%
Исполнитель показывает работу этапа на тестовой машине, если все ОК, то этап оплачивается. Исходный код передается после оплаты этапа, хотя может передаваться и до - на усмотрение Исполнителя. Этап считается завершенным после успешной сборки проекта на компьютере Заказчика, и устранения выявленных недостатков, т.е. после оплаты.
Оплата в рублях, со Сбера на Альфабанк. Безопасная сделка не используется.
Стоимость 30 тыс ($400).
.
Краткая инструкция по быстрому старту для изучения API, инструкция по подключению к тестовому стенду.
.
ИС "Маркировка". МДЛП. Протокол обмена интерфейсного уровня. Настройка сертификатов и т.п. описано в разделе 4.5
.
Подборка документов от ЧЗ для разработчиков
https://честныйзнак.рф/business/projects/medicines/documents/for_developers/
Выбранный исполнитель
Заявки фрилансеров
Похожие заказы
- $10Прикладное ПО3 заявкиЗакрыт5 лет назад
Нужно приложение, которое бы могло реализовать распознавание номерных знаков автомобилей с видео записи камеры наблюдения Есть однополосная дорога, идущая в двух направлениях - полоса в каждую сторону. Нужно в базу записывать Число ...
Прикладное ПО2 заявкиЗакрыт5 лет назадВот видео https://drive.google.com/file/d/14rcYiEGWXB92sEZIaHrX5T74r2E3gsUc/view?usp=sharing Нужен скрипт, чтобы распознавать время появления и исчезновения надписей в облачках. Возможно можно использовать этот https://git.clapity.eu/Id/YoloCR но я не знаю как его запустить. Если вы сможете проверить его работоспособность и настроить ...
Прикладное ПО4 заявкиЗакрыт5 лет назадТребуется добавить функцию отсутствия переноса по словам в текстовом редакторе с открытым кодом (c++). Как это реализовано в обычном блокноте, если снять галочку с "переноса по словам". Названия редактора - Textroom. Он ...
Прикладное ПО1 исполнительЗакрыт5 лет назад- $5000
Необходимо разработать устройство, определяющее расстояние между объектами от нескольких метров до нескольких десятков сантиметров. Пример: люди ходят с устройствами, и при достижении определенного расстояния, устройство фиксирует расстояние и отправляет на сервер. Главное - это ...
Прикладное ПО3 заявкиЗакрыт5 лет назад Нужно сделать прогу которая выкачивает номера телефонов с страницы пользователя с определенных групп
Прикладное ПО9 заявокЗакрыт5 лет назад- $10000
Ищем 2х программистов C/С++, C# Developer. Задача: разработка прикладного программного обеспечения. Ориентировочный срок участия в проекте 1 год. Оплата обсуждается по результатам собеседования. Требования к кандидату: ...
Прикладное ПО4 заявкиЗакрыт5 лет назад Доброго времени суток! Есть проект линейных LED часов. Часы должны работать на ардуино, иметь будильник и разумеется кнопки которыми устанавливается будильник и при необходимости корректируется время.
Прикладное ПО2 заявкиЗакрыт5 лет назадНа сервере хранятся логины, хэши к паролям и баланс аккаунтов. Нужно реализовать логирование в popup (расширение в гугл хром), чтобы клиент, введя логин и пароль, мог увидеть свой баланс. Жду предложения по стоимости и ...
Прикладное ПОнет заявокЗакрыт5 лет назадЗадача Приветствую! Требуется по примеру написать ТЗ на проект 1в1. Исполнение проекта пока десктопное, связанное с сервером поставщика. Учётная ERP. Если есть что-то готовое на тему автозапчастей+автосервисов - готовы рассмотреть ...
Прикладное ПО3 заявкиЗакрыт5 лет назад