案件是指裝載所有與特定主題 (例如訴訟案件或調查) 相關資料的容器。案件包含:
- 已儲存的搜尋查詢
- 保留項目
- 共用案件的帳戶
- 匯出集
- 稽核追蹤記錄
如要使用保管箱資源,帳戶必須擁有必要的保管箱 權限並可存取 技術。如要存取案件,帳戶必須成功建立案件,並具備 與自己共用的案件,或是擁有「查看所有案件」權限。
案件具有下列狀態:
州 | 說明 |
---|---|
開啟 | 案件已啟用,您可以建立訴訟保留、執行搜尋,以及匯出案件中的資料。 |
已結束 | 通常在調查完成時,案件就會關閉。 您隨時可以重新開啟已關閉的案件。 |
已刪除 | 您可以刪除案件,讓案件完全無法使用。 刪除的案件會在「垃圾桶」中保留約 30 天,這段期間內仍可還原。寬限期過後,案件就會永久清除。 |
建立案件
下列範例使用指定名稱和說明建立新案件。
Java
Matter matter = new Matter(); matter.setName("Matter Name"); matter.setDescription("Matter Description"); Matter createdMatter = client.matters().create(matter).execute();
Python
def create_matter(service): matter_content = { 'name': 'Matter Name', 'description': 'Matter Description', } matter = service.matters().create(body=matter_content).execute() return matter
接收案件
案件有兩種檢視畫面:基本 (預設) 和 FULL。FULL 檢視畫面會在基本檢視畫面中加入重要權限。
以下範例會擷取指定的案件。
Java
client.matters().get(matterId).execute(); // Returns BASIC view. client.matters().get(matterId).setView("BASIC").execute(); client.matters().get(matterId).setView("FULL").execute();
Python
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 個)。
Java
ListmattersList = client.matters().list().execute().getMatters();
Python
mattersList = client.matters().list().execute()
以下範例說明如何針對多項要求,列出所有未解決、已關閉和已刪除的案件。
Java
ListMattersResponse firstPageResponse = client.matters().list().setPageSize(20).execute(); String nextPageToken = firstPageResponse.getNextPageToken()); if (nextPageToken != null) { client.matters().list().setPageToken(nextPageToken).setPageSize(20).execute(); }
Python
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)
以下範例說明如何列出特定狀態的案件。
Java
// 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();
Python
# 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()
更新案件
以下範例會更新案件的名稱和說明。
Java
String matterId = "matterId"; Matter matter = new Matter().setName("New Name").setDescription("New Description"); vault.matters().update(matterId, matter).execute();
Python
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
關閉案件
以下範例說明如何關閉案件。
Java
String matterId = "matterId"; // If the matter still has holds, this operation will fail. client.matters().close(matterId, new CloseMatterRequest()).execute();
Python
def close_matter(service, matter_id): close_response = service.matters().close( matterId=matter_id, body={}).execute() return close_response['matter']
刪除、取消刪除或重新開啟案件
以下範例說明如何刪除、取消刪除或重新開啟案件。
Java
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());
Python
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
Matter 權限
每個案件都具備一組存取權限,可供使用者存取或編輯。您可以查看案件的完整資料檢視,瞭解相關資訊。
Java
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();
Python
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()