Доступ к клиентам
Структура моделей, назначение полей
Модель Client — представляет клиента
* @property integer $id // ИД * @property string $address // Адрес * @property string $home_phone // Домашний телефон * @property string $work_phone // Рабочий телефон * @property string $fax // Факс * @property string $note // Текст * @property integer $type_id // Тип клиента * @property integer $how_find // Как нашли * @property double $balance // Текущий баланс - менять только через интерфейс программы * @property string $email // email * @property string $city // Устарело, будет удалено * @property integer $city_id // ИД города из модели city * @property string $date_register // Дата регистрации * @property string $cell_phone // Мобильный телефон * @property string $zip // Почтовый индекс * @property string $registration_index // не используется * @property integer $vip // не используется * @property string $last_name // Фамилия * @property string $first_name //Имя * @property string $middle_name // Отчество * @property string $status // 'ACTIVE' - активный,'DISABLED' - неактивный,'DELETED' - удален,'TEMPORARY' - временный * @property integer $discount //Скидка * @property string $passport_series //Паспортные данные * @property string $lab_number //Лабораторный номер * @property string $street_id // ИД улицы * @property string $apartment // Номер дома и квартиры * @property string $unsubscribe // Отписан от уведомлений * @property string $number_of_journal // Номер журнала * @property integer $phone_prefix //Код страны
Модель Street — улицы
* @property integer $id * @property string $title * @property integer $city_id * @property string $type // Тип улицы enum(street,bulvar,prospeсt,pereulok)
Модель clientPhone — поиск клиентов по номеру телефона нужно осуществлять через эту модель
* @property integer $client_id // содержит id клиента * @property string $type // может принимать 'home','work' или 'cell' * @property string $original_phone // содержит оригинальное значение * @property string $clean_phone // содержит чистый телефон, только цифры.
Модель Pet — питомца
* @property integer $id // ИД питомца * @property integer $owner_id // Ид владельца * @property integer $type_id // Вид * @property string $alias // Кличка * @property string $sex // Пол enum(MALE, FEMALE, CASTRATED, STERIALIZED) * @property string $date_register //Дата регистрации * @property string $birthday // Дата рождения * @property string $note // Примечение * @property integer $breed_id // Порода * @property integer $old_id // устарело * @property integer $color_id // цвет * @property string $deathnote // Примечание при отметке о смерти * @property string $deathdate // Дата смерти * @property string $chip_number // Номер чипа * @property string $lab_number //Номер для лаборатории * @property string $status //Статус * @property string $picture //Картинка
Модель PetType — вид питомца
* @property integer $id // ИД * @property string $title // Название
Модель Breed — породы
* @property integer $id * @property string $title * @property integer $pet_type_id
Примеры запросов
Общие сведения о запросах к API
Создание временного клиента
curl -l -H "Accept: application/json" -H "X-REST-API-KEY: ee9528f3b9c3ad9cdecfbd9723043334" -X \ POST -d '{"first_name": "Alex", "last_name":"Solt", "status":"TEMPORARY"}' \ http://example/rest/api/client
{
"success": true, "message": "Record(s) Created", "data": { "totalCount": 1, "client": [{ "id": "2", "address": "", "home_phone": "", "work_phone": "", "fax": "", "note": "", "type_id": "3", "how_find": "8", "balance": "0", "email": "", "city": "", "city_id": "50", "date_register": "2012-06-15 16:38:28", "cell_phone": "", "zip": "", "registration_index": null, "vip": "0", "last_name": "Петров", "first_name": "Петр", "middle_name": "", "status": "ACTIVE", "discount": "0", "passport_series": "", "lab_number": "", "street_id": "0", "apartment": "", "unsubscribe": "0", "number_of_journal": "", "phone_prefix": "0" }] }
}
Создание питомца с минимальными данными
- curl -l -H «Accept: application/json» -H «X-REST-API-KEY: ee9528f3b9c3ad9cdecfbd9723043334» -X \
POST -d ‘{«alias»: «Little Devil», «owner_id»:»23″}’ \ http://example/rest/api/pet
<code> {
"success": true, "message": "Record(s) Created", "data": { "totalCount": 1, "pet": [{ "chip_number": "", "lab_number": "", "status": "alive", "alias": "Little Devil", "owner_id": "23", "id": "24", "type_id": null, "sex": null, "date_register": null, "birthday": null, "note": null, "breed_id": null, "old_id": null, "color_id": null, "deathnote": null, "deathdate": null }] }
}
Список обязательных полей
создание клиента: обязательных полей для запроса нет. При передаче пустого запроса создаст клиента с пустыми полями, но при редактировании через интерфейс потребует заполнение полей: last_name city_id обновление клиента: обязательных полей для запроса нет, передадут поле из сущности, его и обновит