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.

JavaPython
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

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.

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

Elenco delle questioni

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

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

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

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

L'esempio seguente mostra come elencare le questioni di uno stato specificato.

JavaPython
// 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();
# 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.

JavaPython
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

Chiudere una pratica

L'esempio seguente mostra come chiudere una richiesta.

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

Eliminare, annullare l'eliminazione o riaprire una pratica

L'esempio seguente mostra come eliminare, annullare l'eliminazione o riaprire una richiesta.

JavaPython
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

 

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.

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