public class DepartmetnsService
extends java.lang.Object
| Constructor and Description |
|---|
DepartmetnsService() |
| Modifier and Type | Method and Description |
|---|---|
java.lang.String |
deleteDepartment(java.lang.String departmentID,
java.lang.String locale)
Метод удаляет подразделение
URL rest/api/departments/delete
Method GET |
java.lang.String |
getDepartment(java.lang.String departmentID,
java.lang.String locale)
Метод возвращает информацию о подразделении подразделение
URL rest/api/departments/get
Method GET |
java.lang.String |
getDepartmentCards(java.lang.String departmentID,
java.lang.String locale)
Возвращает список дополнительных карточек для данного подразделения
URL rest/api/departments/get_cards
Method GET Для заполнения полей карточки надо использовать метод APIFormsService#save |
java.lang.String |
getDepartmentsAsList(java.lang.String locale,
java.lang.Integer partNumber,
java.lang.Integer countInPart)
Метод возвращает список подразделений (без учета структуры)
URL rest/api/departments/list
Method GET * @return Список департаментов, описание полей департамента смотрите в методе FileCabinetWrapper#getDepartmentasJson |
java.lang.String |
getDepartmentsByFieldValue(java.lang.String formUUID,
java.lang.String formCode,
java.lang.String fieldName,
java.lang.String value,
java.lang.String locale)
ВНИМАНИЕ!
|
java.lang.String |
getDepartmentsContent(java.lang.String departmentID,
boolean onlyPosition,
boolean onlyDepartments,
java.lang.String locale)
Метод используется для получения информации о департаменте (подразделения и должности)
Тип: GET
URL: rest/api/departments/content
|
java.lang.String |
getUserID() |
java.lang.String |
saveDepartment(java.lang.String nameRu,
java.lang.String nameKz,
java.lang.String nameEn,
java.lang.String positionNameRu,
java.lang.String positionNameKz,
java.lang.String positionNameEn,
java.lang.String pointersCode,
java.lang.String departmentID,
java.lang.String parentDepartmentID,
int number,
java.lang.String locale)
Метод создает/изменяет подразделение орг структуры
URL rest/api/departments/save
Method POST |
Response |
searchDepartments(java.util.List<java.lang.String> codes,
java.util.List<java.lang.String> names,
int recordsCount,
int startRecord,
java.lang.String codeSearchTypeP,
java.lang.String nameSearchTypeP,
java.lang.String deleted,
java.lang.String locale)
Метод поиска подразделений
URL: /rest/api/departments/search
Тип: GET
Метод принимает следующие параметры:
name - название подразделения (необяз.), может быть передано несколько значений
pointer_code - код показателя (необяз.), может быть передано несколько значений
recordsCount - количество результатов, которые необходимо вернуть (по умолчанию 30). |
public java.lang.String saveDepartment(java.lang.String nameRu,
java.lang.String nameKz,
java.lang.String nameEn,
java.lang.String positionNameRu,
java.lang.String positionNameKz,
java.lang.String positionNameEn,
java.lang.String pointersCode,
java.lang.String departmentID,
java.lang.String parentDepartmentID,
int number,
java.lang.String locale)
Метод создает/изменяет подразделение орг структуры
URL rest/api/departments/savenameRu - Название подразделения на русском языке, FormParamnameKz - Название подразделения на казахском языке, FormParamnameEn - Название подразделения на английском языке, FormParampositionNameRu - Название должности руководителя на русском языке, FormParampositionNameKz - Название должности руководителя на казахском языке, FormParampositionNameEn - Название должности руководителя на английском языке, FormParampointersCode - код показателя, FormParamnumber - порядковый номер подразделенияdepartmentID - UUID подразделения (для создания нового подразделения необходимо передать null), FormParamparentDepartmentID - UUID родительского подразделения, FormParamlocale - локаль, QueryParampublic java.lang.String deleteDepartment(java.lang.String departmentID,
java.lang.String locale)
Метод удаляет подразделение
URL rest/api/departments/deletedepartmentID - UUID подразделения, которое надо удалить (QueryParam)locale - локаль (QueryParam)public java.lang.String getDepartment(java.lang.String departmentID,
java.lang.String locale)
Метод возвращает информацию о подразделении подразделение
URL rest/api/departments/getdepartmentID - UUID подразделения, QueryParamlocale - локаль, QueryParamFileCabinetWrapper#getDepartmentasJson(arta.synergy.web.common.client.data.filecabinet.Department, String)public java.lang.String getDepartmentsAsList(java.lang.String locale,
java.lang.Integer partNumber,
java.lang.Integer countInPart)
Метод возвращает список подразделений (без учета структуры)
URL rest/api/departments/listFileCabinetWrapper#getDepartmentasJson(arta.synergy.web.common.client.data.filecabinet.Department, String)public java.lang.String getDepartmentsContent(java.lang.String departmentID,
boolean onlyPosition,
boolean onlyDepartments,
java.lang.String locale)
departmentID - идентификатор департаментаonlyPosition - true - отображение должностей только одного департамента (по умолчанию false)onlyDepartments - true - отображение подотделов только одного департамента (по умолчанию false)locale - локаль
[
{
"departments":
[
{
"departmentID": "7b097e72-e303-487f-83a1-cb76397abd57",
"departmentName": "Департамент технологий",
"hasChildDepartments" : false,
"pointerCode" : "code",
"departmentHead":
{
"headID": "f9b0b304-c856-4bcf-8615-e13cded16a14",
"headName": "Иванов И.И."
}
},
{
"departmentID": "8ii056e72-e563-667f-14j7-cb31867qwe66",
"departmentName": "Департамент развития",
"hasChildDepartments" : true,
"departmentHead":
{
"headID": "179bda2e-6d55-4ed5-b1be-890ffad280ba",
"headName": "Петров П.П."
}
}
],
"positions":
[
{
"positionID": "dc890ecf-e340-4ada-b7e6-d6541486a599",
"positionName": "Маркетолог",
"code": "shifr2",
"pointerCode": "code2",
"employees":
[
{
"employeeID": "f40b665c-f1f4-40b3-bdc5-291911def539",
"employeeName": "Попов П.В."
},
{
"employeeID": "22cc3118-3bcd-4543-98b4-a30982ba5c2a",
"employeeName": "Сидоров С.В."
},
{
"employeeID": "414acd59-aaf8-4202-8c00-b39e1fe73bbc",
"employeeName": "Орлов О.О."
}
]
},
{
"positionID": "2d9a641d-178c-4b05-b2f4-a231958718fd",
"positionName": "Финансовый аналитик",
"code": "shifr1",
"pointerCode": "code1",
"employees":
[
{
"employeeID": "c4ddd6b1-ade2-4ee2-ace5-aaec6a81d02a",
"employeeName": "Мартынов М.М."
},
{
"employeeID": "ee71a4c6-888a-4f04-86de-44ab394f5749",
"employeeName": "Быков Г.Г."
}
]
},
{
"positionID": "22a48f88-199a-4398-8eb6-15ba8ef35deb",
"positionName": "Юрист",
"code": "shifr3",
"pointerCode": "code3",
"employees":
[
{
"employeeID": "a2ba229b-366f-4d9c-b8bd-31742a7a519a",
"employeeName": "Мусина А.М."
},
{
"employeeID": "a5b67a57-bcba-4513-bc2d-089400457a53",
"employeeName": "Дарбаева Г.Г."
},
{
"employeeID": "ca936f83-3d4e-4c09-b393-9e548d18bc04",
"employeeName": "Жакин Н.Б."
},
{
"employeeID": "ff666f77-7ii8-5b09-o565-2f555v33qq11",
"employeeName": "Васильев Г.В."
}
]
}
]
}
]
departments - массив подотделов данного департамента:
departmentID - UUID подразделения
departmentName - название подотдела на языке локали, переданной в параметре locale
hasChildDepartments - есть ли дочерние департаменты
pointerCode - код для показателей департамента
departmentHead - руководитель подотдела:
headID - UUID руководителя
headName - Ф.И.О. руководителя в формате "Фамилия И.О."
positions - массив должностей данного департамента:
positionID - UUID должности
positionName - название должности на языке локали, переданной в параметре locale
pointerCode - код для показателей должности
code - шифр должности
type - тип должности
employees - массив сотрудников на данной должности:
employeeID - UUID сотрудника
employeeName - Ф.И.О. сотрудника в формате "Фамилия И.О."
public java.lang.String getDepartmentCards(java.lang.String departmentID,
java.lang.String locale)
Возвращает список дополнительных карточек для данного подразделения
URL rest/api/departments/get_cardsdepartmentID - UUID подразделенияlocale - локаль пользователяAPIFormsService.save(String, String, String, String, String, String)public java.lang.String getDepartmentsByFieldValue(java.lang.String formUUID,
java.lang.String formCode,
java.lang.String fieldName,
java.lang.String value,
java.lang.String locale)
ВНИМАНИЕ! Логика данного метода реализована некорректно, поэтому не рекомендуем его использовать. В скором времени метод будет заменен на правильный
Находит подразделения по значению поля дополнительной карточки и возвращает список их идентификаторов
URL rest/api/departments/get_by_field_value
Method GET
Предполагается, что данный метод будет использоваться для реализации интеграционных решений (синхронизации орг структуры ARTA Synergy с орг структурой сторонней системы). В дополнительной карточке подразделения может храниться идентификатор соответствующего подразделения в сторонней системе, этот метод позволит найти идентификатор подразделения в нашей системе по его идентификатору из сторонней системы
Поиск производится по сначала по ключу, а в случае отсутствия ключа - по значению (key и value из данных компонента, /api/asforms/data/{dataUUID}).
Для компонента "Переключатель вариантов" это порядок обратный, сначала по value, затем - по key. Надо учитывать, что в этом компоненте из-за особенностей реализации в key хранится название вариантов, а в value - значение.
formUUID - uuid формы, по полю которой необходимо произвести поискformCode - code формы, по полю которой необходимо произвести поискfieldName - название поля, по которому необходимо произвести поискvalue - значение поляlocale - локаль пользователяpublic java.lang.String getUserID()
public Response searchDepartments(java.util.List<java.lang.String> codes,
java.util.List<java.lang.String> names,
int recordsCount,
int startRecord,
java.lang.String codeSearchTypeP,
java.lang.String nameSearchTypeP,
java.lang.String deleted,
java.lang.String locale)
Метод поиска подразделений
URL: /rest/api/departments/search
Тип: GET
Метод принимает следующие параметры:
name - название подразделения (необяз.), может быть передано несколько значенийpointer_code - код показателя (необяз.), может быть передано несколько значенийrecordsCount - количество результатов, которые необходимо вернуть (по умолчанию 30). Максимальное значение параметра 100startRecord - номер записи результатов, начиная с которой будут возвращены записи (по умолчанию 0)searchTypeN - тип сравнения для параметра name (по умолчанию partial). Может принимать следующие значения:
exact - точное совпадение поискового запроса и значения поляpartial - вхождение поискового запроса в значение поляsearchTypePC - тип сравнения для параметра pointer_code (по умолчанию exact). Может принимать следующие значения:
exact - точное совпадение поискового запроса и значения поляpartial - вхождение поискового запроса в значение поляdeleted - включать ли в результат поиска удаленные департаменты. Допустимые значения: true или falselocale - локаль пользователя. Данный параметр учитывается при поиске по названию должностиВ случае успешного выполнения метод возвращает массив строк, являющихся идентификаторами подразделений.
Пример запроса:
/rest/api/departments/search?pointer_code=dep1&pointer_code=dep3
Пример возвращаемого ответа:
[ "rgg66d1-ad54-5462-aef5-aggrr55fd02a", "vgikwj4c6-88gh-ef44-3ffe-oepjfee5d6" ]
При указании одновременно разных параметров результат запроса будет связан логическим И.
Пример запроса: /rest/api/departments/search?pointer_code=dep5&name=Департамент5
А при указании одновременно одинаковых параметров, результат будет производится по логическому ИЛИ.
Пример запроса: /rest/api/departments/search?pointer_code=code1&pointer_code=code2
В случае если по переданным входным параметрам ничего не найдено, сервер возвращает пустой массив.