Quản lý vấn đề

Vấn đề là một vùng chứa tất cả dữ liệu liên quan đến một chủ đề cụ thể, chẳng hạn như một vụ kiện hoặc một cuộc điều tra. Một vấn đề bao gồm:

  • Cụm từ tìm kiếm đã lưu
  • Giữ
  • Các tài khoản được chia sẻ vấn đề
  • Xuất nhóm
  • Dấu vết kiểm tra

Để xử lý các tài nguyên trong Vault, tài khoản phải có các đặc quyền bắt buộc đối với Vault và quyền truy cập vào vấn đề. Để truy cập vào một vấn đề, tài khoản phải là người tạo vấn đề, được chia sẻ vấn đề hoặc có đặc quyền Xem tất cả vấn đề.

Một vấn đề có các trạng thái sau:

Tiểu bangMô tả
Đang mởVấn đề này đang hoạt động và bạn có thể tạo yêu cầu lưu giữ dữ liệu, chạy tìm kiếm và xuất dữ liệu trong đó.
Đã đóngThường thì khi cuộc điều tra hoàn tất, vấn đề sẽ được đóng.

Bạn có thể mở lại các vấn đề đã đóng bất cứ lúc nào.

Đã xóaBạn có thể xoá một vấn đề để vấn đề đó không còn xuất hiện nữa.

Một vấn đề đã xoá sẽ vẫn nằm trong Thùng rác trong khoảng 30 ngày. Trong thời gian này, bạn có thể khôi phục vấn đề đó. Sau khoảng thời gian đó, vấn đề sẽ bị xoá vĩnh viễn.

vòng đời của vấn đề

Tạo vấn đề

Ví dụ sau đây tạo một vấn đề mới có tên và nội dung mô tả được chỉ định.

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

Nhận một vấn đề

Có hai chế độ xem về một vấn đề: CƠ BẢN (mặc định) và ĐẦY ĐỦ. Chế độ xem ĐẦY ĐỦ sẽ thêm quyền đối với vấn đề vào chế độ xem CƠ BẢN.

Ví dụ sau đây truy xuất vấn đề đã chỉ định.

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();

Liệt kê vấn đề

Ví dụ sau đây cho biết cách liệt kê tất cả các vấn đề đang mở, đã đóng và đã xoá (tối đa 100 vấn đề theo yêu cầu mặc định).

Java

List mattersList = client.matters().list().execute().getMatters();

Python

mattersList = client.matters().list().execute()

Ví dụ sau đây cho biết cách liệt kê tất cả các vấn đề đang mở, đã đóng và đã xoá trên nhiều yêu cầu.

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)

Ví dụ sau đây cho biết cách liệt kê các vấn đề của một tiểu bang cụ thể.

Java

// Only get open matters.
List openMattersList = 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()

Cập nhật vấn đề

Ví dụ sau đây cập nhật tên và nội dung mô tả của một vấn đề.

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

Đóng vấn đề

Ví dụ sau đây cho thấy cách đóng một vấn đề.

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']
 

Xoá, huỷ xoá hoặc mở lại một vấn đề

Ví dụ sau đây cho biết cách xoá, huỷ xoá hoặc mở lại một vấn đề.

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

 

Quyền đối với Matter

Mỗi vấn đề có một nhóm quyền cho biết những người có thể truy cập hoặc chỉnh sửa vấn đề đó. Bạn có thể xem thông tin này bằng cách xem chế độ XEM ĐẦY ĐỦ của một vấn đề.

Java

String matterId = "Matter Id";
String accountId = "Account Id";
 
// List permissions for a matter.
Matter matter = client.matters().get(matterId).setView("FULL").execute();
List matterPermissions = 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()