المسألة القانونية هي حاوية للبيانات ذات الصلة بموضوع معيّن، مثل دعوى تقاضي أو تحقيق. تتضمّن المسألة القانونية العناصر التالية:
- طلبات البحث المحفوظة
- حالات تجميد البيانات
- الحسابات التي تتم مشاركة المسألة القانونية معها
- مجموعات التصدير
- مسار التدقيق
للعمل باستخدام موارد 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 مسألة لكل طلب.
جافا
ListmattersList = 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. ListopenMattersList = 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(); ListmatterPermissions = 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()