Skip to content

clientService

clientService

GetTable(params, [mapper]) ⇒ Promise.<({successfully: boolean, pagination: {values: Array.<Object>, totalCount: number}}|null)>

Получает список клиентов с пагинацией и фильтрами статуса


Принимаемые параметры

ParamTypeDescription
paramsObject
params.paginationObjectПараметры пагинации (page, rowsPerPage, sortBy, descending)
params.clientStatusFiltersArray.<number>Фильтры по статусу клиента
params.clientStatusesArray.<number>Список статусов клиента
[params.contactId]stringID контакта для фильтрации
[mapper]functionФункция трансформации ответа. См. clientTableMapper

Возвращаемые данные

Returns: Promise.<({successfully: boolean, pagination: {values: Array.<Object>, totalCount: number}}|null)> - Объект с пагинацией или null при ошибке


Пример

js
// Ответ (без маппера):
{
  successfully: true,
  pagination: {
    values: [
      {
        id: 123, contactId: 456, clientStatus: 1,
        firstName: "Max", lastName: "Mustermann",
        birthdate: "1985-03-15T00:00:00", gender: 1,
        address: {
          googlePlaceId: "ChIJ...", country: "Germany", region: "Berlin",
          regionCodeId: 1, city: "Berlin", street: "Hauptstraße",
          house: "10", flat: "2A", postalCode: "10115",
          location: { x: 13.388, y: 52.517 }, addressComment: ""
        },
        insurance: { type: 1, number: "A123456", insuranceCompanyId: 7, coveragePercentage: 100 },
        careServiceTypes: [1, 2], socialServicesOfficeId: 5,
        startCareDate: "2024-01-15", endCareDate: null, severityLevel: 3,
        assistanceTypes: [1], referralId: null, referral: null,
        partnerId: 10, preferredMailingTypes: [1],
        hasPets: false, hasHearingProblems: false, callViaRelatives: false,
        commentForAdministration: "", commentForEmployee: "",
        isDied: false, phoneLinkContacts: [...], emailLinkContacts: [...]
      }
    ],
    totalCount: 42
  }
}


GetById(id, [mapper]) ⇒ Promise.<(Object|null)>

Получает данные клиента по ID


Принимаемые параметры

ParamTypeDescription
idstringID клиента
[mapper]functionФункция трансформации ответа. См. clientByIdMapper, clientByIdForEditMapper

Возвращаемые данные

Returns: Promise.<(Object|null)> - Данные клиента или null при ошибке


Пример

js
// Ответ (без маппера):
{
  id: 123, contactId: 456, clientStatus: 1,
  firstName: "Max", lastName: "Mustermann",
  birthdate: "1985-03-15T00:00:00", gender: 1,
  address: {
    googlePlaceId: "ChIJ...", country: "Germany", region: "Berlin",
    regionCodeId: 1, city: "Berlin", street: "Hauptstraße",
    house: "10", flat: "2A", postalCode: "10115",
    location: { x: 13.388, y: 52.517 }, addressComment: ""
  },
  insurance: { type: 1, number: "A123456", insuranceCompanyId: 7, coveragePercentage: 100 },
  careServiceTypes: [1, 2], socialServicesOfficeId: 5,
  startCareDate: "2024-01-15", endCareDate: null, severityLevel: 3,
  assistanceTypes: [1], referralId: null,
  referral: { sourceType: 1, detailType: 2, name: "Dr. Schmidt" },
  partnerId: 10, preferredMailingTypes: [1],
  hasPets: false, hasHearingProblems: false, callViaRelatives: false,
  commentForAdministration: "", commentForEmployee: "",
  isDied: false, phoneLinkContacts: [...], emailLinkContacts: [...]
}


UpdateStatus(params) ⇒ Promise.<({successfully: boolean}|null)>

Обновляет статус клиента


Принимаемые параметры

ParamTypeDescription
paramsObject
params.clientIdstringID клиента
params.statusnumberНовый статус (значение из CLIENT_STATUSES_MAP)

Возвращаемые данные

Returns: Promise.<({successfully: boolean}|null)> - Ответ API или null при ошибке


Пример

js
// Ответ:
{ successfully: true }


Update(clientData) ⇒ Promise.<({successfully: boolean}|null)>

Обновляет данные существующего клиента


Принимаемые параметры

ParamTypeDescription
clientDataObjectДанные клиента (id, contactId, firstName, lastName, birthDate, gender, address, insurance, careServiceTypes и др.)

Возвращаемые данные

Returns: Promise.<({successfully: boolean}|null)> - Ответ API или null при ошибке


Пример

js
// Ответ:
{ successfully: true }


Create(clientData) ⇒ Promise.<({successfully: boolean}|null)>

Создаёт нового клиента


Принимаемые параметры

ParamTypeDescription
clientDataObjectДанные клиента (contactId, status, firstName, lastName, birthDate, gender, address, insurance, careServiceTypes и др.)

Возвращаемые данные

Returns: Promise.<({successfully: boolean}|null)> - Ответ API или null при ошибке


Пример

js
// Ответ:
{ successfully: true }


GetFiles(params, [mapper]) ⇒ Promise.<({successfully: boolean, pagination: {values: Array.<{id: number, fileType: number, fileName: string, filePath: string, createdAt: string}>, totalCount: number}}|null)>

Получает файлы клиента с пагинацией


Принимаемые параметры

ParamTypeDescription
paramsObject
params.clientIdstringID клиента
params.paginationObjectПараметры пагинации (page, rowsPerPage, sortBy, descending)
[mapper]functionФункция трансформации ответа

Возвращаемые данные

Returns: Promise.<({successfully: boolean, pagination: {values: Array.<{id: number, fileType: number, fileName: string, filePath: string, createdAt: string}>, totalCount: number}}|null)> - Объект с пагинацией файлов или null при ошибке


Пример

js
// Ответ:
{
  successfully: true,
  pagination: {
    values: [
      { id: 1, fileType: 2, fileName: "contract.pdf", filePath: "/files/contract.pdf", createdAt: "2024-03-10T14:30:00" }
    ],
    totalCount: 5
  }
}


AddFiles(params) ⇒ Promise.<({successfully: boolean}|null)>

Добавляет файлы клиенту


Принимаемые параметры

ParamTypeDescription
paramsObject
params.clientIdstringID клиента
params.filesArrayМассив файлов [{ fileType: number, file: File }]

Возвращаемые данные

Returns: Promise.<({successfully: boolean}|null)> - Ответ API или null при ошибке


Пример

js
// Ответ:
{ successfully: true }


MarkAsNotClient(params) ⇒ Promise.<({successfully: boolean}|null)>

Вносит данные об отказе клиента


Принимаемые параметры

ParamTypeDescription
paramsObject
params.clientIdstringID клиента
params.reasonstringПричина отказа

Возвращаемые данные

Returns: Promise.<({successfully: boolean}|null)> - Ответ API или null при ошибке


Пример

js
// Ответ:
{ successfully: true }