· CREATED — (не обязательный) дата создания талона в формате DD. MM. YYYY. По умолчанию — текущая дата.
В случае успеха возвращает массив найденных талонов.
В случае неудачи возвращает false.
Пример использования:
$arFilter=array( 'TALON_DATE'=>array('COMPARSION'=>'between','START_DATE'=>'15.08.2012','END_DATE'=>'24.08.2012') ); print_r(MCTalon::GetList($arFilter)); |
Update
mixed Update ( int id array fields ) |
Метод обновляет талон с указанным ID.
id – уникальный ID талона.
fields - массив полей талона. В качестве ключей данного массива допустимо использовать:
· TYPE_ID — тип приема.
· TIME_START — время начала приема в формате hh:mm:ss.
· TIME_END — время конца приема в формате hh:mm:ss.
· TALON_DATE – дата приема в формате DD. MM. YYYY.
· SERVICE_ID — ID услуги.
· SITE_ID — (не обязательный) ID сайта.
· RESERVED_IN – время резервирования.
· EMPLOYEE — ID сотрудника.
· EXPORTED — Флаг эксопртирования в МИС.
· USER_INFO — ID профиля пользователя.
· STATE – ID статуса талона.
В случае успеха возвращает ID обновленного талона.
В случае неудачи возвращает false.
Вспомогательные методы
Reserve
mixed Reserve( array fields ) |
Метод резервирует талон, либо обновляет время его резервирования.
fields – массив параметров талона. Подробнее смотри метод MCTalon::Add.
В случае успеха возвращает массив вида:
Array( 'ID' => уникальный номер талона 'RESERVED_IN' => время резервирования ) |
В случае неудачи возвращает сообщение об ошибке.
Save
Save( MCRecordWizard wizard ) |
Метод сохраняет итоговые данные записи на прием. Регистрирует нового пациента (если нужно) и отправляет письмо с уведомлением о регистрации. Создает (либо обновляет) профиль пациента. Обновляет зарезервированный пациентом талон. Так же обрабатывает событие OnAfterTalonSave.
wizard – объект типа MCRecordWizard.
ChangeState
ChangeState( int id int state string comment = '' ) |
Метод меняет статус талона и отправляет почтовое уведомление пациенту, если у него был указан адрес электронной почты.
id – ID талона.
state – ID статуса талона.
comment – (не обязательный) комментарий о причине изменения статуса.
GetNotExported
mixed GetNotExported( string site_id = false ) |
Метод возвращает список талонов, не экспортированных в МИС.
site_id – ID сайта. Если указан, то возвращаются талоны только для этого сайта.
В случае успеха возвращает массив ID талонов с группировкй по ID сайта.
В случае неудачи возвращает false.
GetStateName
mixed GetStateName( int id ) |
Метод возвращает имя по умолчанию по ID статуса.
GetTalonData
mixed GetTalonData( int TimeRange array iblocks = array() ) |
Метод анализирует данные расписания начиная с текущего момента и до указанное время вперед. Возвращает статистическую информацию о возможности записаться к сотрудникам, число свободных талонов у них.
TimeRange — интервал времени, за который нужно анализировать данные. Задается в сеундах, прибавляется к текущей дате при выборке данных.
iblocks – массив ID инфоблоков. В качестве ключей данного массива допустимо использовать:
· service — ID инфоблока услуг.
· placement – ID инфоблока помещений. В настоящий момент не задействовано.
· sector — ID инфоблока врачебных участков. В настоящий момент не задействовано.
GetTalonPlace
mixed GetTalonPlace ( int id array select = array('PLACEMENT','SECTOR') ) |
Метод возвращает информацию о месте приема (врачебный участок, кабинет).
id – ID талона.
select – массив, указывающий что выбирать. Может содержать два значения:
· PLACEMENT — искать данные о кабинете.
· SECTOR — искать данные о врачебном участке.
GetTalonServices
mixed GetTalonServices ( array filter ) |
Метод возвращает список услуг, на которые есть талоны, удовлетворяющие условиям фильтрации.
filter – массив параметров талона. В качестве ключей данного массива допустимо использовать:
· TALON — ID талона
· TYPE — тип приема.
· TALON_DATE – дата приема в формате DD. MM. YYYY.
· SITE_ID — (не обязательный) ID сайта.
· EMPLOYEE — ID сотрудника.
· USER_INFO — ID профиля пользователя.
· STATE – ID статуса талона.
Класс MCUser
Свойства класса
· MCPeriod::$LAST_ERRORS – содержит массив ошибок, которые возникли во время работы последнего метода.
Основные методы
AddUserInfo
mixed AddUserInfo( array fields ) |
Метод добавляет новый профиль пользователя.
fields – массив полей. В качестве ключей данного массива допустимо использовать:
- SITE_ID - (не обязательный) ID сайта. По умолчанию используется значение константы SITE_ID. USER_ID - (не обязательный) ID пользователя. По умолчанию NULL (профиль незарегистрированного пользователя. PROPERTIES — массив свойств для сохраненя в профиле. Каждое значение — это массив вида:
array( 'PARAMETER_ID' => ID свойства 'PARAMETER_VALUE' => Значение свойства. ) |
В случае успеха возвращает ID созданного профиля.
В случае неудачи возвращает false.
ClearUserInfo
ClearUserInfo() |
Метод удаляет все профили пользователей.
СreateUser
mixed СreateUser( string email string LAST_NAME string FIRST_NAME string SECOND_NAME string login = false string password = false ) |
Метод-обертка над стандартным CUser:Add(). Создает пользователя и отправляет ему уведомление о регистрации.
email – адрес электронной почты для отправки.
LAST_NAME – фамилия записавшегося пациента.
FIRST_NAME – имя записавшегося пациента.
SECOND_NAME – отчество записавшегося пациента.
login — логин пациента. Если не задан — используется email.
password — Пароль. Если не задан — генерируется случайный шестизначный пароль.
В случае успеха возвращает ID созданного пользователя.
В случае неудачи возвращает false.
DeleteUserInfo
DeleteUserInfo( int id ) |
Метод удаляет профиль пользователя.
id — ID удаляемого профиля.
GetUserInfo
mixed GetUserInfo( array filter ) |
Метод ищет профиль пользователей заданного сайта, удовлетворяющие фильтру.
filter – массив фильтрации. В качестве ключей данного массива допустимо использовать:
- ID – ID профиля. USER_ID — ID пользователя. SITE_ID — (не обязательный) ID сайта. По умолчанию используется значение константы SITE_ID.
В случае успеха возвращает массив с информацией о профилях.
В случае неудачи возвращает false.
UpdateUserInfo
mixed UpdateUserInfo( int id array fields ) |
Метод обновляет профиль пользователя.
id – ID обновляемого профиля.
fields – массив полей. В качестве ключей данного массива допустимо использовать:
- USER_ID - ID пользователя. PROPERTIES — массив свойств для сохраненя в профиле. Каждое значение — это массив вида:
array( 'PARAMETER_ID' => ID свойства 'PARAMETER_VALUE' => Значение свойства. ) |
В случае успеха возвращает ID обновленного профиля.
В случае неудачи возвращает false.
Вспомогательные методы
GeneratePassword
string GeneratePassword( int length ) |
Метод генерирует пароль из символов следующего диапазона: [a-z0-9A-Z].
length – длина генерируемого пароля.
ExistUserEmail
mixed ExistUserEmail( string email ) |
Метод проверяет существование адреса электронной почты в списке пользователей.
email — адрес электронной почты.
В случае успеха возвращает ID пользователя, которому принадлежит электронная почта.
В случае неудачи возвращает false.
ExistUserLogin
mixed ExistUserLogin( string login ) |
Метод проверяет существование пользователя с указанным логином.
login — логин пользователя.
В случае успеха возвращает ID пользователя с указанным логином.
В случае неудачи возвращает false.
IsUserRecordedToday
bool IsUserRecordedToday( MCRecordWizard wizard ) |
Метод проверяет записан ли уже пользователь в выбранный им день на выбранную им услугу под выбранным профилем.
wizard – объект класса MCRecordWizard с данными о записи на прием.
В случае успеха возвращает true.
В случае неудачи возвращает false.
NewRecordAlert
NewRecordAlert( string email MCRecordWizard wizard string LAST_NAME string FIRST_NAME ) |
Метод отправляет пациенту уведомление о записи на прием. Код шаблона письма — make_rekord_mail.
email – адрес электронной почты для отправки.
wizard – объект класса MCRecordWizard с данными о записи на прием.
LAST_NAME – фамилия записавшегося пациента.
FIRST_NAME – имя записавшегося пациента.
RegistrationAlert
RegistrationAlert( string login string password string email string LAST_NAME string FIRST_NAME ) |
Метод отправляет уведомление о автоматической регистрации на сайте. Код шаблона письма — make_record_with_user_user.
login — логин пациента.
password — сгенерированный пароль.
email – адрес электронной почты для отправки.
LAST_NAME – фамилия записавшегося пациента.
FIRST_NAME – имя записавшегося пациента.
Класс MCUserProperties
Свойства класса:
· MCPeriod::$LAST_ERRORS – содержит массив ошибок, которые возникли во время работы последнего метода.
Поля, используемые в методах
Название поля | Тип | Описание |
ID | число | ID свойства. |
NAME | строка | Название свойства. |
TYPE | число | Тип свойства. Может устанавливаться с помощью констант: · mc_uprop_type_string · mc_uprop_type_number · mc_uprop_type_email · mc_uprop_type_date От типа обычно зависит html код редактирования свойства по умолчанию, а так же способ проверки значения свойства. |
CODE | строка | Символьный код свойства. |
SITE_ID | строка | ID сайта, для которого свойство является активным. |
REQUIRED | число | Признак обязательности заполнения свойства. 0 — не обязательно, 1 — обязательно. |
EXPORT | число | Признак необходимости экспортировать значение свойства в МИС. 0 — не экспортируется, 1 — экспортируется. |
SORT | число | Влияет на порядок сортировки свойств при выводе. |
VALUE | строка | Значение свойства. |
DISPLAY_VALUE | строка | html код элемента редактирования свойства. |
Основные методы
Add
mixed Add( array fields ) |
Метод добавляет новое свойство в список свойств, которые можно использовать в карточке пациента.
fields – массив параметров пользовательского свойства. В качестве ключей данного массива допустимо использовать:
· NAME - название свойства.
· TYPE - тип свойства.
· CODE - символьный код свойства.
· SITE_ID — (не обязательно) ID сайта, для которого свойство будет активным.
· REQUIRED - (не обязательно, должен быть указан SITE_ID) свойство обязательно для заполнения.
· EXPORT - (не обязательно, должен быть указан SITE_ID) свойство нужно экспортировать в МИС.
· SORT - (не обязательно, должен быть указан SITE_ID) порядок сортировки.
В случае успеха возвращает ID добавленного свойства.
В случае неудачи возвращает false.
Пример использования:
$arFields=array( 'NAME'=>'возраст', 'TYPE'=>mc_uprop_type_string, 'SITE_ID'=> 's1', 'REQUIRED'=>'Y', 'EXPORT'=>'Y' ); echo MCUserProperties::Add($arFields); |
CheckField
array CheckField( array field ) |
Метод проверяет заполнены ли обязательные поля для добавления/обновления свойства.
field - массив параметров пользовательского свойства. В качестве ключей данного массива допустимо использовать:
· NAME - название свойства.
· TYPE - тип свойства.
· CODE - символьный код свойства.
· SITE_ID — (не обязательно) ID сайта, для которого свойство будет активным.
· REQUIRED - (не обязательно, должен быть указан SITE_ID) свойство обязательно для заполнения.
· EXPORT - (не обязательно, должен быть указан SITE_ID) свойство нужно экспортировать в МИС.
· SORT - (не обязательно, должен быть указан SITE_ID) порядок сортировки.
Возвращает массив со списком ошибок. Если массив пустой — все заполнено верно.
CheckValue
mixed CheckValue( array property ) |
Метод проверяет корректность значения свойства.
property – массив полей, соответствующий результату работы метода GetList. В качестве ключей данного массива допустимо использовать:
· NAME — название свойства.
· TYPE — тип свойства.
· VALUE — значение свойства.
· SITES — Массив привязки к сайтам. Ключи массива — ID сайтов, значения — массивы, содержащие как минимум следующий ключ:
· REQUIRED — признак обязательно ли свойство для заполнения.
Возвращает массив со списком ошибок. Если массив пустой — все заполнено верно.
Clear
Clear() |
Метод удаляет все свойства (кроме системных), а так уже сохраненные значения этих свойств в профилях пользователей.
ClearLinks
ClearLinks() |
Метод удаляет привязки всех свойств (кроме системных) к сайтам.
Delete
bool Delete( int id ) |
Метод удаляет свойство.
id – ID удаляемого свойства.
В случае успеха возвращает true.
В случае неудачи возвращает false.
GetList
mixed GetList( array filter array order = array() bool onlyUsed = false ) |
Метод возвращает список свойств с информацией о привязке этих свойств к сайтам.
filter – массив для фильтрации. В качестве ключей данного массива допустимо использовать:
· ID — ID свойства.
· SITE_ID — ID сайта, к которому привязано свойство.
· NAME — название свойства.
order – массив полей для сортировки.
onlyUsed – Требует указания SITE_ID в фильтре. Если флаг установлен — метод вернет только свойства, привязанные к указанному сайту.
В случае успеха возвращает массив свойств.
В случае неудачи возвращает false.
GetPropertyListHtml
array GetPropertyListHtml( array properties array values array params ) |
Метод возвращает список свойств, переданный в properties, добавляя к каждому свойству поде DISPLAY_VALUE.
properties - массив полей, соответствующий результату работы метода GetList.
values — массив значений свойств. Элементы — массивы, сожержащие следующие ключи:
· CODE - символьный код свойства.
· VALUE — значение свойства.
params — массив параметров. В настоящий момент не используется, введен для будущего расширения списка типов свойств.
GetTypeList
array GetTypeList() |
Метод возвращает список поддерживаемых типов свойств следующего вида:
array( ID => Название свойства по умолчанию, ID => Название свойства по умолчанию, ID => Название свойства по умолчанию, .............. ) |
Update
mixed Update( int id array fields ) |
Метод обновляет свойство.
id – ID обновляемого свойства.
fields – массив полей свойства. В качестве ключей данного массива допустимо использовать:
· NAME - название свойства.
· TYPE - тип свойства.
· CODE - символьный код свойства.
· SITE_ID — (не обязательно) ID сайта, для которого свойство будет активным.
· REQUIRED - (не обязательно, должен быть указан SITE_ID) свойство обязательно для заполнения.
· EXPORT - (не обязательно, должен быть указан SITE_ID) свойство нужно экспортировать в МИС.
· SORT - (не обязательно, должен быть указан SITE_ID) порядок сортировки.
В случае успеха возвращает ID обновленного свойства.
В случае неудачи возвращает false.
Вспомогательные методы
GetNewPropertyID
mixed GetNewPropertyID() |
Метод возвращает ID, с которым будет добавлено следующее новое свойство.
Класс MCWeek
Вспомогательный класс для работы с расписанием за неделю.
Свойства класса
· MCPeriod::$LAST_ERRORS – содержит массив ошибок, которые возникли во время работы последнего метода.
Поля, используемые в методах
Смотри поля класса MCSchedule
Основные методы
Add
Add( int startTime array fields ) |
Метод быстро добавляет расписание сразу на неделю через массовую вставку.
startTime – время начала недели в timestamp.
fields – массив записей расписания на неделю. Каждый элемент массива — отдельная запись расписания в виде массива. В качестве ключей данного массива допустимо использовать:
· EMPLOYEE — (не обязательный) ID сотрудника (из списка пользователей).
· SERVICE — (не обязательный) ID услуги (элемент инфоблока услуг).
· PERIOD ID периода.
· WEEK_DAY - День недели от 1 до 7
· SITE_ID — (не обязательный) ID сайта, по умолчанию используется значение системной константы SITE_ID.
Copy
Copy( array params array changes ) |
Метод позволяет скопировать существующую неделю в другую.
params – массив параметров копирования. В качестве ключей данного массива допустимо использовать:
· COPY_FROM – Дата начала копируемой недели в формате DD. MM. YYYY.
· EMPLOYEE – ID сотрудника (Из списка пользователей).
· SERVICE – ID услуги (элемент инфоблока услуг).
· SITE_ID – (не обязательный) – ID сайта. По умолчание берется значение константы SITE_ID.
changes – Массив изменений, которые вносятся при копировании. В качестве ключей данного массива допустимо использовать:
· COPY_DATE — дата начала недели, на которую копируется расписание.
· SERVICE – ID новой услуги, если нужно.
· EMPLOYEE — ID нового сотрудника, если нужно.
· SITE_ID — ID сайта, если расписание переносится с одного сайта на другой.
GetList
array GetList( array filter ) |
Метод для получения списка недель с заполненным расписанием, соответствующих условиям фильтрации.
filter – массив параметров фильтрации. В качестве ключей данного массива допустимо использовать:
- EMPLOYEE – ID сотрудника. SITE_ID — ID сайта.
· WEEK_START - дата начала недели, к которой относится запись расписания. Имеет два возможных формата:
· Строка даты в формате "DD. MM. YYYY".
· Массив вида
array ( 'COMPARSION' => способ сравнения, может принимать значения: between, >, <, =, <=, >=, <>. 'START_DATE' => дата в формате "DD. MM. YYYY", 'END_DATE' => дата в формате "DD. MM. YYYY", используется только при способе сравнения between ) |
Возвращает массив с информацией о неделях.
Заключение
В руководстве были рассмотрены основные классы модуля «1С-Битрикс: Сайт медицинской организации (расширенный) (sitemedicine_ext)» и их методы.
Предложения по доработке API модуля или этого руководства можно отправлять в службу технической поддержки компании, выбирая решение «Сайт медицинской организации»:
http://*****/support/index. php
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 |


