Gestisci le pratiche

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

  • Query di ricerca salvate
  • Blocchi
  • Account con cui la pratica viene condivisa
  • Insiemi di esportazione
  • Audit trail

Per utilizzare le risorse di Vault, l'account deve disporre dei privilegi di Vault obbligatori e dell'accesso alla questione. Per accedere a una pratica, l'account deve averla creata, deve averla condivisa o disporre del privilegio Visualizzazione di tutte le pratiche.

Una richiesta ha i seguenti stati:

StatoDescrizione
ApriLa richiesta è attiva e puoi creare blocchi, eseguire ricerche ed esportare i dati al suo interno.
ChiusaIn genere, al termine di un'indagine, la questione viene chiusa.

Le pratiche chiuse possono essere riaperte in qualsiasi momento.

EliminatoUna richiesta può essere eliminata in modo che non sia più disponibile.

Una richiesta eliminata rimane nel cestino per circa 30 giorni, durante i quali può essere ripristinata. Trascorso questo periodo, la richiesta viene eliminata definitivamente.

ciclo di vita di Matters

Creare una pratica

Il seguente esempio crea una nuova richiesta con il nome e la descrizione specificati.

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

Ricevere una richiesta

Esistono due visualizzazioni di una richiesta: DI BASE (predefinita) e COMPLETA. La visualizzazione COMPLETA aggiunge le autorizzazioni Matter alla visualizzazione DI BASE.

L'esempio seguente recupera la questione 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 questioni

L'esempio seguente mostra come elencare tutte le richieste aperte, chiuse ed eliminate (fino a un massimo di 100 per richiesta).

Java

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

Python

mattersList = client.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 questioni di uno stato specificato.

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 richiesta

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

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

Chiudere una pratica

L'esempio seguente mostra come chiudere una richiesta.

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, annullare l'eliminazione o riaprire una richiesta.

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

Per ogni richiesta è impostato un insieme di autorizzazioni che indica chi può accedervi o modificarla. Puoi visualizzare questa informazione accedendo alla visualizzazione COMPLETA di una richiesta.

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