Download the PHP package alex-nzr/bit-umc-sdk without Composer

On this page you can find all versions of the php package alex-nzr/bit-umc-sdk. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package bit-umc-sdk

SDK по работе с SOAP-API 1C БИТ.УМЦ

Требования:

PHP >= 8.1

BIT.UMC >=2.0.48.15(Prof)

BIT.UMC >=2.1.24.9(Corp)

Установка

Установка через composer

Добавить пакет в зависимости composer.json:

Запустить установку composer:

или

Скачать исходники

Актуальная версия, распаковать и скопировать в папку с проектом.

Использование

Публикация базы 1С

Для работы интеграции база 1С должна быть опубликована на веб-сервере и иметь возможность принимать запросы с внешних ресурсов.

API

Для начала работы с API, нужно создать экземпляр клиента и передать ему необходимые конфигурационные данные.

Ниже образец. Логин пользователя 1С - 1cUser, пароль - 1cUserPassword. База 1С опубликована на веб-сервере и имеет адрес http://88.29.123.512:3500/umc/.

_SDK имеет каркас классов для подключения не по soap, а по http. Но данная возможность не реализована и большинство классов представляют собой заглушки, так как полноценной интеграции через http-сервисы в БИТ.УМЦ нет, а есть только сервис для создания лида (лист ожидания). Он не представляет особого интереса и вести полноценную разработку http-скоупа ради него нет желания. Также, на момент написания этой инструкции имеются сервисы для интеграции с Битрикс24 и ЕГИСЗ, которые не предоставляют функционал, необходимый для выгрузки расписания и создания заявок.

Следующий шаг — создание сервиса для чтения и записи информации.

После этого можно начинать "общение" с 1С.

Список клиник

Обработка неуспешного ответа во всех методах происходит аналогично примеру выше, поэтому в последующих примерах рассматриваться не будет.

Список сотрудников

Примечание: уникальный id специализации генерируется в рантайме из её названия, так как нет возможности получить его из 1С по имеющемуся API. Также возвращается только специализация, выбранная основной. Получение дополнительных специализаций в API БИТ.УМЦ не предусмотрено. В случае, когда основная специализация не указана, у сотрудника в соответствующей графе будет указано "Без основной специализации"

Номенклатура

Расписание

Примечание: уникальный id специализации генерируется в рантайме из её названия, так как нет возможности получить его из 1С по имеющемуся API

Ни один из параметров метода не является обязательным. По умолчанию возвращается расписание по всем врачам всех клиник за 14 дней.

Структура возвращаемого массива следующая:

Ключи первого уровня — уникальные идентификаторы клиник.

Ключи второго уровня — уникальные идентификаторы специализаций доступных в данной клинике.

Ключи третьего уровня — уникальные идентификаторы врачей, для которых сформировано расписание в вышестоящей клинике и вышестоящая специализация выбрана основной в настройках 1С.

В массиве данных по врачу есть его ФИО, название специализации, длительность приёма из настроек 1С (durationFrom1C), длительность приёма из 1С, переведённая в секунды (durationInSeconds) и расписание(timetable).

Расписание имеет три ключа:

free - общее свободное время без разбивки на интервалы длительности приёма. Может быть разделено на части, если есть занятые участками времени. В противном случае будет представлять собой один интервал, равный длине рабочего дня соответствующего сотрудника.

busy - занятое время.

freeFormatted - свободное время, разбитое на интервалы длительности приёма из 1С (durationFrom1C), либо на интервалы по 30 минут, если данных по длительности не получено.

В каждый из этих трёх разделов вложены массивы под ключами в виде даты в формате "d-m-Y". Внутри, соответственно, временные отрезки относящиеся к данному дню.

typeOfTimeUid - идентификатор вида времени графика. Кроме идентификатора, никакой информации о нём не предоставляется.

Статус заявки

Создание листа ожидания

Для конфигурирования параметров заявок используется отдельный класс ANZ\BitUmc\SDK\Builder\Order

Бронирование времени

По сути — это такое же создание заявки, как и при записи на приём, но требуется меньшее количество параметров, статус заявки в 1С будет "Забронировано" и в ответе придёт уникальный идентификатор созданной заявки, который можно использовать для её обновления или удаления. При создании полноценной заявки (Запись на приём), API БИТ.УМЦ не возвращает её идентификатор. Поэтому, если нужно где-то хранить созданные заявки и в дальнейшем как-то использовать, то запись нужно производить с предварительным бронированием.

Запись на приём

*Если не устанавливать идентификатор или передать пустую строку, то создастся новая заявка, иначе будет изменена старая

**Переданная длительность не учитывается если указаны услуги (setServices). Также есть "особенности" апи УМЦ - длительность считается по услугам, только если для услуги указана индивидуальная длительность для конкретного врача. А также всё время будет суммироваться в первой услуге, а остальные будут без длительности. Длительность из карточки услуги не учитывается, если указан врач, а врач - обязательное поле. Если у выбранных услуг нет индивидуальной длительности, то длительность приёма будет взята из настроек учётных политик. Почему нельзя было сделать нормально? У меня такой же вопрос, но техподдержка УМЦ предпочла на него не отвечать. Поэтому работаем с тем, что есть, к сожалению.

Удаление заявки

Примеры работы

Ознакомиться с примерами использования можно тут.


All versions of bit-umc-sdk with dependencies

PHP Build Version
Package Version
Requires php Version >=8.1
ext-soap Version *
ext-simplexml Version *
ext-json Version *
psr/log Version 3.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package alex-nzr/bit-umc-sdk contains the following files

Loading the files please wait ....