Дело — это контейнер для всех данных, относящихся к определённой теме, например, судебному разбирательству или расследованию. Дело включает в себя:
- Сохраненные поисковые запросы
- Держится
- Аккаунты, с которыми делятся этим вопросом
- Экспорт наборов
- Аудиторский след
Для работы с ресурсами Vault у учётной записи должны быть необходимые привилегии Vault и доступ к делу. Для доступа к делу у учётной записи должна быть возможность создать дело, предоставить доступ к делу или иметь право « Просмотр всех дел» .
Дело имеет следующие состояния:
Состояние | Описание |
---|---|
Открыть | Дело активно, и вы можете создавать в нем удержания, выполнять поиск и экспортировать данные. |
Закрыто | Обычно после завершения расследования дело закрывается. Закрытые дела могут быть возобновлены в любое время. |
Удалено | Дело можно удалить, и оно станет полностью недоступным. Удалённое дело будет храниться в Корзине около 30 дней, в течение которых его можно восстановить. По истечении этого срока дело будет окончательно удалено. |
Создать дело
В следующем примере создается новое дело с указанным именем и описанием.
Ява
Matter matter = new Matter(); matter.setName("Matter Name"); matter.setDescription("Matter Description"); Matter createdMatter = client.matters().create(matter).execute();
Питон
def create_matter(service): matter_content = { 'name': 'Matter Name', 'description': 'Matter Description', } matter = service.matters().create(body=matter_content).execute() return matter
Получить дело
Существует два представления дела: BASIC (по умолчанию) и FULL. Полное представление добавляет разрешения к BASIC-представлению.
В следующем примере извлекается указанная тема.
Ява
client.matters().get(matterId).execute(); // Returns BASIC view. client.matters().get(matterId).setView("BASIC").execute(); client.matters().get(matterId).setView("FULL").execute();
Питон
matter_id = getMatterId() service.matters().get(matterId=matter_id).execute(); // Returns BASIC view. service.matters().get(matterId=matter_id, view='BASIC').execute(); service.matters().get(matterId=matter_id, view='FULL').execute();
Список имеет значение
В следующем примере показано, как составить список всех открытых, закрытых и удаленных дел (до 100 дел по умолчанию на запрос).
Ява
ListmattersList = client.matters().list().execute().getMatters();
Питон
mattersList = client.matters().list().execute()
В следующем примере показано, как составить список всех открытых, закрытых и удаленных дел по нескольким запросам.
Ява
ListMattersResponse firstPageResponse = client.matters().list().setPageSize(20).execute(); String nextPageToken = firstPageResponse.getNextPageToken()); if (nextPageToken != null) { client.matters().list().setPageToken(nextPageToken).setPageSize(20).execute(); }
Питон
list_response1 = service.matters().list( view='FULL', pageSize=10).execute() for matter in list_response1['matters']: print(matter) if ‘nextPageToken’ in list_response1: list_response2 = service.matters().list( pageSize=10, pageToken=list_response1['nextPageToken']).execute() for matter in list_response2['matters']: print(matter)
В следующем примере показано, как составить список дел определенного штата.
Ява
// Only get open matters. ListopenMattersList = client.matters().list().setState("OPEN").execute().getMatters(); // Only get closed matters. List closedMattersList = client.matters().list().setState("CLOSED").execute().getMatters(); // Only get deleted matters. List deletedMattersList = client.matters().list().setState("DELETED").execute().getMatters();
Питон
# Only get open matters. openMattersList = client.matters().list( state='OPEN').execute() # Only get closed matters. closedMattersList = client.matters().list( state='CLOSED').execute() # Only get deleted matters. deletedMattersList = client.matters().list( state='DELETED').execute()
Обновить вопрос
В следующем примере обновляется название и описание дела.
Ява
String matterId = "matterId"; Matter matter = new Matter().setName("New Name").setDescription("New Description"); vault.matters().update(matterId, matter).execute();
Питон
def update_matter(service, matter_id): wanted_matter = { 'name': 'New Matter Name', 'description': 'New Description' } updated_matter = service.matters().update( matterId=matter_id, body=wanted_matter).execute() return updated_matter
Закрыть дело
В следующем примере показано, как закрыть дело.
Ява
String matterId = "matterId"; // If the matter still has holds, this operation will fail. client.matters().close(matterId, new CloseMatterRequest()).execute();
Питон
def close_matter(service, matter_id): close_response = service.matters().close( matterId=matter_id, body={}).execute() return close_response['matter']
Удалить, восстановить или повторно открыть дело
В следующем примере показано, как удалить, восстановить или повторно открыть дело.
Ява
Matter matter = client.matters().get(matterId).execute(); // Delete the matter. client.matters().delete(matter.getMatterId()); // Undelete the matter. client.matters().undelete(matter.getMatterId(), new UndeleteRequest()); // Reopen the matter. client.matters().reopen(matter.getMatterId(), new ReopenMatterRequest());
Питон
def reopen_matter(service, matter_id): reopen_response = service.matters().reopen( matterId=matter_id, body={}).execute() return reopen_response['matter'] def delete_matter(service, matter_id): service.matters().delete(matterId=matter_id).execute() return get_matter(matter_id) def undelete_matter(service, matter_id): undeleted_matter = service.matters().undelete( matterId=matter_id, body={}).execute() return undeleted_matter
Разрешения на материалы
У каждого дела есть набор разрешений, определяющий, кто может его просматривать и редактировать. Вы можете узнать это, перейдя на ПОЛНЫЙ просмотр дела.
Ява
String matterId = "Matter Id"; String accountId = "Account Id"; // List permissions for a matter. Matter matter = client.matters().get(matterId).setView("FULL").execute(); ListmatterPermissions = matter.getMatterPermissions(); // Add a user to the permission set. client .matters() .addPermissions(matterId) .setMatterPermissionAccountId(accountId) .setMatterPermissionRole("COLLABORATOR") .execute(); // Remove a user from the permission set. client .matters() .removePermissions(matterId) .setAccountId(accountId) .execute();
Питон
def list_matter_permission(service, matter_id): matter = service.matters().get(matterId=matter_id, view='FULL').execute() return matter['matterPermissions'] def add_matter_permission(service, matter_id, account_id): permission = service.matters().addPermissions( matterId=matter_id, matterPermission_accountId=account_id, matterPermission_role='COLLABORATOR', sendEmails='False', ccMe='False').execute() return permission def remove_matter_permission(service, matter_id, account_id): service.matters().removePermissions( matterId=matter_id, accountId=account_id).execute()