Konuları yönetin

Konu, dava veya araştırma gibi belirli bir konuyla ilgili verilerin yer aldığı kapsayıcıdır. Bir konu aşağıdaki öğeleri içerir:

  • Kayıtlı arama sorguları
  • Bekletmeler
  • Konunun paylaşıldığı hesaplar
  • Dışa aktarma grupları
  • Denetim takibi

Google Apps Kasası kaynaklarıyla çalışmak için hesabın gerekli Apps Kasası ayrıcalıklarına ve konuya erişime sahip olması gerekir. Bir konuya erişmek için hesabın konuyu oluşturmuş olması, konunun hesapla paylaşılmış olması veya Tüm Konuları Görüntüleme ayrıcalığına sahip olması gerekir.

Bir konu aşağıdaki durumlara sahip olabilir:

EyaletAçıklama
Konu etkin olduğunda muhafaza oluşturabilir, arama yapabilir ve verileri dışa aktarabilirsiniz.
KapalıGenellikle inceleme tamamlandığında konu kapatılır. Kapatılan konuları dilediğiniz zaman yeniden açabilirsiniz. Bir konuyu kapatmadan önce konuyla ilişkili tüm muhafazaları silin.
SilindiBir konu, tamamen kullanılamaz hale gelecek şekilde silinebilir. Silinen bir konu yaklaşık 30 gün boyunca Çöp Kutusu'nda kalır ve bu süre içinde geri yüklenebilir. Bu sürenin sonunda konu kalıcı olarak tamamen silinir. Yalnızca kapatılan konular silinebilir.

Müşteri yaşam döngüsü

Konu oluşturma

Aşağıdaki örnekte, ad ve açıklama içeren yeni bir konu oluşturulmaktadır.

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

Bir konuyu alma

Bir konunun iki görünümü vardır: BASIC (varsayılan) ve FULL. FULL görünümü, BASIC görünümüne madde izinleri ekler.

Aşağıdaki örnek, belirtilen konuyu alır.

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

Listeler önemlidir

Aşağıdaki örnekte, açık, kapalı ve silinmiş tüm konuların nasıl listeleneceği gösterilmektedir. API, varsayılan olarak istek başına en fazla 100 konu döndürür.

Java

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

Python

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

Aşağıdaki örnekte, birden fazla istekte tüm açık, kapalı ve silinmiş konuların nasıl listeleneceği gösterilmektedir.

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)

Aşağıdaki örnekte, belirtilen bir eyaletteki konuların nasıl listeleneceği gösterilmektedir.

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

Bir konuyu güncelleme

Aşağıdaki örnekte, bir konunun adı ve açıklaması güncellenmektedir.

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

Bir konuyu kapatma

Aşağıdaki örnekte bir konunun nasıl kapatılacağı gösterilmektedir.

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

Bir konuyu silme, silme işlemini geri alma veya yeniden açma

Aşağıdaki örnekte bir konunun nasıl silineceği, silinmesinin nasıl geri alınacağı veya konunun nasıl yeniden açılacağı gösterilmektedir.

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
 

Dava izinleri

Her bir konu için, kimlerin erişebileceğini veya düzenleyebileceğini belirten bir izin grubu vardır. Bunu, bir konunun FULL görünümünü alarak görüntüleyebilirsiniz.

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