إدارة المسائل القانونية

المسألة القانونية هي حاوية للبيانات ذات الصلة بموضوع معيّن، مثل دعوى تقاضي أو تحقيق. تتضمن المسألة القانونية العناصر التالية:

  • طلبات البحث المحفوظة
  • حالات تجميد البيانات
  • الحسابات التي تتم مشاركة المسألة القانونية معها
  • مجموعات التصدير
  • مسار التدقيق

لاستخدام موارد Google Vault، يجب أن يمتلك الحساب امتيازات Vault المطلوبة وأن يتمكّن من الوصول إلى المسألة القانونية. للوصول إلى مسألة قانونية، يجب أن يكون الحساب قد أنشأ المسألة القانونية أو تمت مشاركتها معه أو أن يكون لديه امتياز عرض جميع المسائل القانونية.

تتضمّن المسألة القانونية الحالات التالية:

ولايةالوصف
فتحالمسألة القانونية نشطة، ويمكنك إنشاء عمليات تجميد البيانات وإجراء عمليات بحث وتصدير البيانات بداخلها.
النشاط التجاري مغلقعادةً ما يتم إغلاق المسألة القانونية عند اكتمال التحقيق. ويمكن إعادة فتح المسائل القانونية المغلقة في أي وقت. قبل إغلاق مسألة قانونية، احذف جميع عمليات تجميد البيانات المرتبطة بها.
محذوفةيمكن حذف مسألة قانونية لتصبح غير متاحة تمامًا. تبقى المسألة القانونية المحذوفة في "المهملات" لمدة 30 يومًا تقريبًا، ويمكن خلال هذه المدة استعادتها. وبعد هذه المدة، يتم حذف المسألة القانونية نهائيًا. لا يمكن حذف سوى المسائل القانونية المغلقة فقط.

مراحل النشاط

إنشاء مسألة قانونية

ينشئ المثال التالي مسألة قانونية جديدة باسم ووصف.

جافا

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

الحصول على مسألة قانونية

هناك طريقتان لعرض المسألة القانونية: BASIC (تلقائيًا) وFULL. تضيف طريقة العرض FULL أذونات المسألة القانونية إلى طريقة العرض BASIC.

يسترد المثال التالي المسألة القانونية المحدّدة.

جافا

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

إدراج المسائل القانونية

يوضّح المثال التالي كيفية إدراج جميع المسائل القانونية المفتوحة والمغلقة والمحذوفة. تعرض واجهة برمجة التطبيقات تلقائيًا ما يصل إلى 100 مسألة قانونية لكل طلب.

جافا

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

Python

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

يوضّح المثال التالي كيفية إدراج جميع المسائل القانونية المفتوحة والمغلقة والمحذوفة على مستوى طلبات متعددة.

جافا

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)

يوضّح المثال التالي كيفية إدراج المسائل القانونية التي لها حالة محدّدة.

جافا

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

تعديل مسألة قانونية

يعدّل المثال التالي اسم مسألة قانونية ووصفها.

جافا

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

إغلاق مسألة قانونية

يوضّح المثال التالي كيفية إغلاق مسألة قانونية.

جافا

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

حذف مسألة قانونية أو استعادتها أو إعادة فتحها

يوضّح المثال التالي كيفية حذف مسألة قانونية أو استعادتها أو إعادة فتحها.

جافا

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
 

أذونات المسألة القانونية

تحتوي كل مسألة قانونية على مجموعة أذونات تحدّد المستخدمين الذين يمكنهم الوصول إليها أو تعديلها. يمكنك الاطّلاع على هذه الأذونات من خلال الحصول على طريقة العرض FULL لمسألة قانونية.

جافا

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