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

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

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

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

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

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

يمكن إعادة فتح المسائل القانونية المغلقة في أي وقت.

محذوفيمكن حذف مسألة قانونية لتصبح غير متاحة تمامًا.

ستبقى المسألة القانونية المحذوفة في "المهملات" لمدة 30 يومًا تقريبًا، ويمكن استعادتها خلال هذه المدة. وبعد هذه الفترة، تتم إزالة المسألة القانونية نهائيًا.

دورة حياة مهمة

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

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

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

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

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

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

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

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

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

Java

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

Python

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

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

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)

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

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

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

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

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

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

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

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

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

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

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

 

أذونات Matter

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

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