Gestisci pratiche

Una pratica è un contenitore per i dati relativi a un argomento specifico, ad esempio una controversia o un'indagine. Una pratica include i seguenti elementi:

  • Query di ricerca salvate
  • Blocchi
  • Account con cui la pratica viene condivisa
  • Esportare i set
  • Audit trail

Per lavorare con le risorse di Google Vault, un account deve disporre dei privilegi Vault richiesti e dell'accesso alla pratica. Per accedere a una pratica, un account deve averla creata, deve averla condivisa o deve disporre del privilegio Visualizzazione di tutte le pratiche.

Una pratica ha i seguenti stati:

StatoDescrizione
ApriLa pratica è attiva e puoi creare blocchi, eseguire ricerche ed esportare dati al suo interno.
ChiusoDi solito, al termine di un'indagine, la pratica viene chiusa. Le pratiche chiuse possono essere riaperte in qualsiasi momento. Prima di chiudere una pratica, elimina tutti i blocchi associati.
EliminatoUna pratica può essere eliminata in modo che non sia più disponibile. Una pratica eliminata rimane nel cestino per circa 30 giorni, durante i quali può essere ripristinata. Trascorso questo periodo, la pratica viene eliminata definitivamente. Solo le pratiche chiuse possono essere eliminate.

ciclo di vita delle pratiche

Creare una pratica

L'esempio seguente crea una nuova pratica con un nome e una descrizione.

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

Recuperare una pratica

Esistono due visualizzazioni di una pratica: BASIC (predefinita) e FULL. La visualizzazione FULL aggiunge le autorizzazioni della pratica alla visualizzazione BASIC.

L'esempio seguente recupera la pratica specificata.

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

Elenco delle pratiche

L'esempio seguente mostra come elencare tutte le pratiche aperte, chiuse ed eliminate. Per impostazione predefinita, l'API restituisce fino a 100 pratiche per richiesta.

Java

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

Python

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

L'esempio seguente mostra come elencare tutte le pratiche aperte, chiuse ed eliminate in più richieste.

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)

L'esempio seguente mostra come elencare le pratiche di uno stato specifico.

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

Aggiornare una pratica

L'esempio seguente aggiorna il nome e la descrizione di una pratica.

Java

String matterId = "matterId";
Matter matter = new Matter().setName("New Name")
    .setDescription("New Description");
client.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

Chiudere una pratica

L'esempio seguente mostra come chiudere una pratica.

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

Eliminare, annullare l'eliminazione o riaprire una pratica

L'esempio seguente mostra come eliminare, ripristinare o riaprire una pratica.

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
 

Autorizzazioni Matter

Ogni pratica ha un insieme di autorizzazioni che definiscono chi può accedervi o modificarla. Puoi visualizzare questo dato ottenendo la visualizzazione FULL di una pratica.

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