EndPoint - create_packet_bills_inv
Method - POST
Этим методом создаются талоны, по одному на каждую услугу из списка услуг в параметрах запроса.
А потом создается общий счет на все услуги в этих талонах.
ID пациента, (при методе авторизации пользователя по умолчанию), это логин в basic авторизации.
Если используется другой логин пользователя или авторизация по x-api-key,
то нужно использовать метод определения Patients_ID
методами 0.2. get_patient / данные о пользователе или 0.4. find_patient_by_fio / поиск пациента по ФИО+ДР+телефон
Коды услуг и цены можно получить из метода 2.3. get_cost_servs_all / cписок услуг с ценами
Все параметры обязательны
Название параметра | Тип данных | Описание |
---|---|---|
patients_id | integer | ID пациента |
datebill | string | Дата, на которую создаются талоны и вычисляется цена это дата планируемого оказания услуг. Может отличаться от даты счета и даты оплаты, которые всегда текущие. |
filial_id | integer | ID филиала |
create | integer | (обязательный параметр) значения 0 или 1: 0 – посчитать стоимость услуг и выдать сумму для аванса 1 – создать талоны и общий счет на оплату |
servs | [{}] | Список услуг для талона/счета |
code | string | код услуги |
cnt | integer | количество |
Название параметра | Тип данных | Описание |
---|---|---|
msgcode | string | код результата выполнения запроса |
message | string | текст результата выполнения запроса |
invoice_id | integer | ID созданного счета, если счет не существует, = -1 |
total_amount | money | сумма счета |
servs | [] | Список услуг в талоне/счете |
bill_id | integer | ID талона, если талон не существует, = -1 |
serv_id | integer | ID услуги |
serv_code | string | код услуги |
serv_name | string | Наименование услуги |
cnt | integer | количество |
price | money | цена одной услуги |
cost | money | стоимость=цена*количество |
url - http://127.0.0.1:45670/create_packet_bills_inv
body -
{ "patients_id":143514, "datebill":"2021-02-28", "filial_id":1, "create":0, "servs": [ { "code":"A21.03.002.001", "cnt":1 },{ "code":"A21.01.003.001", "cnt":2 } ] }
curl "http://127.0.0.1:45670/create_packet_bills_inv" \ -X POST \ -d "{\n \"patients_id\":143514,\n \"datebill\":\"2021-02-28\",\n \"filial_id\":1,\n \"create\":0,\n \"servs\":\n [\n {\n \"code\":\"A21.03.002.001\",\n \"cnt\":1\n},{\n \"code\":\"A21.01.003.001\",\n \"cnt\":2\n }\n ]\n}"
[{"invoice_id": -1, "total_amount": 1960.00, "msgcode": 0, "message": "все услуги подобраны, счет не создан т.к. create=0", "servs": [{"bill_id": -1, "serv_id": 18103, "serv_code": "A21.03.002.001", "serv_name": "Массаж спины", "cnt": 1.00, "price": 490.00, "cost": 490.00 }, { "bill_id": -1, "serv_id": 18100, "serv_code": "A21.01.003.001", "serv_name": "Массаж воротниковой зоны", "cnt": 2.00, "price": 490.00, "cost": 980.00 }] }]
Список Кодов и Сообщений Результат выполнения запроса.
msgcode | message | доп.информация |
---|---|---|
0 | все услуги подобраны, счет не создан т.к. create=0 | invoice_id=-1 – т.е. счет не создан total_amount=1960.00 - сумма услуг для оплаты, например, методом MAKE_PAYMENT |
1 | все услуги подобраны, созданы талоны и счет | invoice_id=1111 – т.е. возвращается номер счета total_amount=1960.00 - сумма услуг в счете |
2 | операция отменена, т.к. по кодам найдены не все услуги | invoice_id=-1 – т.е. счет не создан total_amount=0.00 - сумма услуг пуста, т.к. есть ошибка в указании списка услуг. и в этом случае нужно смотреть услугу, у которой serv_id пуст. |