Rumah >pembangunan bahagian belakang >C++ >Bekerja dengan Keahlian Pasukan Matter Menggunakan IntApp Walls API

Bekerja dengan Keahlian Pasukan Matter Menggunakan IntApp Walls API

Mary-Kate Olsen
Mary-Kate Olsenasal
2025-01-05 13:16:40738semak imbas

IntApp Walls API ialah alat yang berkuasa untuk mengurus dinding beretika dan mengawal akses kepada data sensitif dengan selamat. Dengan memanfaatkan operasinya, pembangun boleh berinteraksi dengan pasukan penting dengan cekap, mengurus keahlian dan memastikan pematuhan terhadap keperluan kerahsiaan.

Intapp Walls API ialah perkhidmatan web SOAP yang menyediakan antara muka program untuk berinteraksi dengan aplikasi Intapp Walls. Ia digunakan sebagai perkhidmatan web komponen standard.

Demi kesederhanaan, kod sampel dalam dokumen ini mengetepikan pemeriksaan ralat, pengendalian pengecualian, pengelogan dan amalan lain. Ia bertujuan untuk tujuan ilustrasi sahaja dan tidak semestinya menggambarkan amalan pengekodan terbaik.

Di sini saya melalui dua senario utama:

  1. Mendapatkan semula dan menyenaraikan keahlian pasukan perkara.
  2. Menambah ahli baharu pada pasukan perkara sedia ada.

Dengan memahami dan menggunakan operasi API IntApp Walls seperti "GetMatterTeamForMatter", "LoadMatterTeam" dan "AddUsersToMatterTeam", anda boleh menyelaraskan tugas yang berkaitan dengan pengurusan dinding beretika. Contoh berikut termasuk coretan kod dan panduan langkah demi langkah.

Dokumen ini tidak akan merangkumi butiran khusus mengkonfigurasi akses pembangunan kepada IntApp Walls API. Walau bagaimanapun, penyelesaian pengurusan mesti dipasang pada domain tempatan anda dan perkhidmatan web biasanya boleh diakses melalui fail bernama "APIService.svc", yang harus ditambah sebagai rujukan perkhidmatan dalam Visual Studio.

Working with Matter Team Membership Using the IntApp Walls API

Kod sampel merujuk kepada operasi IntApp Walls API berikut:

GetMatterTeamForMatter: Mendapat ID pasukan perkara yang dikaitkan dengan perkara yang ditentukan.
LoadMatterTeam: Memuatkan sifat pasukan jirim.
GetDMSUserID: Dapatkan ID pengguna DMS. Sesetengah kaedah API memerlukan ID pengguna DMS untuk pengguna. Sebagai contoh, kaedah CreateWall() memerlukan ID pengguna ialah DMS, bukan ID penjaga masa pengguna atau ID sistem rekod. Kaedah ini boleh digunakan untuk mendapatkan ID pengguna DMS diberikan ID lain yang diketahui untuk pengguna.
LoadMatterTeamMembership: Memuatkan keahlian pasukan perkara.
GetWarningsIfUserIsIncluded: Mendapat sebarang amaran yang akan dijana jika pengguna yang ditentukan telah diberikan akses (iaitu, disertakan) kepada pelanggan atau perkara tertentu. Fungsi ini mengembalikan sebarang amaran yang mungkin dijana oleh dinding etika yang bercanggah.
AddUsersToMatterTeam: Menambahkan pengguna pada pasukan perkara sedia ada dengan peranan tertentu.

Contoh: Mendapatkan dan Menyenaraikan Keahlian Pasukan
Coretan kod berikut menggunakan operasi IntApp Walls API "GetMatterTeamForMatter" dan "LoadMatterTeam" untuk mendapatkan semula senarai ahli pasukan perkara dan kemudian menulis butir-butir keahlian pasukan pada konsol.

Nota:
• Bekerja dengan API IntApp biasanya memerlukan keistimewaan khusus, selalunya diberikan kepada akaun perkhidmatan dengan akses IntApp Walls yang sesuai.
• Rujukan kepada "intapp_web_api" dalam coretan kod di bawah, merujuk kepada nama rujukan perkhidmatan API IntApp anda seperti yang ditakrifkan dalam Visual Studio.

Working with Matter Team Membership Using the IntApp Walls API

Langkah 1 Dapatkan nombor ID pasukan perkara yang diuruskan oleh IntApp Walls yang unik.
Dapatkan ID pasukan perkara yang dikaitkan dengan perkara tertentu. ID pasukan perkara ini kemudiannya akan digunakan untuk mendapatkan butiran keahlian pasukan perkara itu.

Untuk mencapai ini, gunakan operasi "GetMatterTeamForMatter", yang memerlukan parameter "matterID". "MatterID" lazimnya ialah ID yang dijana secara dalaman, kadangkala dirujuk sebagai "nombor kes." Nilai ini dibekalkan oleh pengguna atau pengaturcara daripada sumber jenis Penjaga Masa mereka sendiri.

string matterID = "01234"; // matterID supplied by you
string matterTeamID = String.Empty; // the return value

// get the walls matter team id
// example of matter team id "COOLE-033517"
matterTeamID = intapp_web_api.GetMatterTeamForMatter(matterID);

public static string GetMatterTeamForMatter(string matterID)
{
  intapp_web_api.Matter matter = new intapp_web_api.Matter();
  string matterTeamID = string.Empty;

  try
  {
    intapp_web_api.APIServiceClient intapp_web_api = new intapp_web_api.APIServiceClient();
    matterTeamID = intapp_web_api.GetMatterTeamForMatter(matterID);

    if ((string.IsNullOrEmpty(matterTeamID)))
    {
      matterTeamID = "blank";
    }
  }
  catch (Exception ex)
  {
    if (string.IsNullOrEmpty(matterTeamID) || ex.Message == "Error")
    {
      matterTeamID = "blank";
    }
  }
  return matterTeamID;
}

Langkah 2 Muatkan Keputusan Pasukan Perkara
Tentukan kaedah "LoadMatterTeam" dan gunakan pembolehubah nombor ID pasukan perkara yang diuruskan oleh IntApp Walls "matterTeamID" yang diperoleh daripada melaksanakan kaedah "GetMatterTeamForMatter" untuk memanggil kaedah "LoadMatterTeam" untuk mendapatkan semula pasukan perkara. Lelaran melalui koleksi "Keahlian Pengguna" dalam pasukan perkara dan keluarkan ID dan peranan pasukan pengguna kepada konsol.

public static intapp_web_api.MatterTeam LoadMatterTeam(string matterTeamID)
{
  intapp_web_api.MatterTeam matterTeam = new intapp_web_api.MatterTeam();

  try
  {
    intapp_web_api.APIServiceClient intapp_web_api = new intapp_web_api.APIServiceClient();
    matterTeam = intapp_web_api.LoadMatterTeam(wallscaseteamid);
  }
  catch (Exception ex)
  {
    throw new Exception(ex.Message.ToString());
  }

  return matterTeam;
}

MatterTeam the_matter_team_list = LoadMatterTeam(wallscaseteamid);

using (APIServiceClient intapp_web_api = new APIServiceClient())
{
  // iterate through the usermemberships collection in the matterteam
  foreach (UserMembership user in the_matter_team_list.UserMemberships)
  {
    string _userid = user.UserId.ToString(); // get the user id
    string _therole = user.Role.ToString(); // get the user role

    // output the user team id and role to the console
    Console.WriteLine($"user team id: {_userid}");
    Console.WriteLine($"user team role: {_therole}");
  }
}

Contoh: Menambah Ahli Baharu pada Keahlian Pasukan Perkara Sedia Ada
Membina operasi "GetMatterTeamForMatter" dan "LoadMatterTeam" untuk mendapatkan semula senarai ahli pasukan perkara, coretan kod berikut menunjukkan cara menggunakan IntApp Walls API untuk menyemak keahlian pasukan sedia ada dan menambah ahli baharu pada pasukan jika mereka belum lagi ahli.

Nota:
• Memanipulasi pasukan IntApp Walls melalui IntApp API memerlukan keistimewaan khusus, yang berada di luar skop dokumen ini. Peminta juga perlu berada dalam peranan pentadbir urusan IntApp Walls seperti yang ditakrifkan dalam IntApp Walls.
• Bekerja dengan API IntApp biasanya memerlukan keistimewaan khusus, selalunya diberikan kepada akaun perkhidmatan dengan akses IntApp Walls yang sesuai.
• Rujukan kepada "intapp_web_api" dalam coretan kod di bawah, merujuk kepada nama rujukan perkhidmatan API IntApp anda seperti yang ditakrifkan dalam Visual Studio.

Working with Matter Team Membership Using the IntApp Walls API

Langkah 1: Menggunakan operasi "GetDMSUserID", Dapatkan "sAMAccountName" pengguna yang ingin anda tambahkan pada pasukan Walls.
"sAMAccountName" (Nama Akaun Pengurus Akaun Keselamatan) ialah atribut dalam Microsoft Active Directory (AD) yang mewakili nama log masuk pengguna yang digunakan untuk mengesahkan ke domain.

string theid = "jsmith"; // the sAMAccountName ad account name of user to add
string wallsuserid = string.Empty;

wallsuserid = intapp_web_api.GetDMSUserID(UserIDSource.WindowsNetworkLogon, $@"YourDomainName\{theid}") // change "YourDomainName" to your domain name

// check if wallsuserid contains a value
if (string.IsNullOrEmpty(wallsuserid))
{
  Console.WriteLine("the user you are trying to add to Walls team does not exists in Walls");
  return;
}

Langkah 2: Semak sama ada Perkara itu wujud dalam Walls.

string matterID = "01234"; // matterID supplied by you
string matterTeamID = String.Empty; // the return value

// get the walls matter team id
// example of matter team id "COOLE-033517"
matterTeamID = intapp_web_api.GetMatterTeamForMatter(matterID);

public static string GetMatterTeamForMatter(string matterID)
{
  intapp_web_api.Matter matter = new intapp_web_api.Matter();
  string matterTeamID = string.Empty;

  try
  {
    intapp_web_api.APIServiceClient intapp_web_api = new intapp_web_api.APIServiceClient();
    matterTeamID = intapp_web_api.GetMatterTeamForMatter(matterID);

    if ((string.IsNullOrEmpty(matterTeamID)))
    {
      matterTeamID = "blank";
    }
  }
  catch (Exception ex)
  {
    if (string.IsNullOrEmpty(matterTeamID) || ex.Message == "Error")
    {
      matterTeamID = "blank";
    }
  }
  return matterTeamID;
}

Langkah 3: Jika Perkara itu wujud, adakah pengguna sudah menjadi ahli pasukan?

public static intapp_web_api.MatterTeam LoadMatterTeam(string matterTeamID)
{
  intapp_web_api.MatterTeam matterTeam = new intapp_web_api.MatterTeam();

  try
  {
    intapp_web_api.APIServiceClient intapp_web_api = new intapp_web_api.APIServiceClient();
    matterTeam = intapp_web_api.LoadMatterTeam(wallscaseteamid);
  }
  catch (Exception ex)
  {
    throw new Exception(ex.Message.ToString());
  }

  return matterTeam;
}

MatterTeam the_matter_team_list = LoadMatterTeam(wallscaseteamid);

using (APIServiceClient intapp_web_api = new APIServiceClient())
{
  // iterate through the usermemberships collection in the matterteam
  foreach (UserMembership user in the_matter_team_list.UserMemberships)
  {
    string _userid = user.UserId.ToString(); // get the user id
    string _therole = user.Role.ToString(); // get the user role

    // output the user team id and role to the console
    Console.WriteLine($"user team id: {_userid}");
    Console.WriteLine($"user team role: {_therole}");
  }
}

Langkah 4: Adakah penambahan pengguna pada pasukan Matter akan menyebabkan konflik dalaman?

string theid = "jsmith"; // the sAMAccountName ad account name of user to add
string wallsuserid = string.Empty;

wallsuserid = intapp_web_api.GetDMSUserID(UserIDSource.WindowsNetworkLogon, $@"YourDomainName\{theid}") // change "YourDomainName" to your domain name

// check if wallsuserid contains a value
if (string.IsNullOrEmpty(wallsuserid))
{
  Console.WriteLine("the user you are trying to add to Walls team does not exists in Walls");
  return;
}

Langkah 5: Akhir sekali, tambahkan pengguna pada pasukan Matter.

string matterID = "01234"; // matterID supplied by you

try
{
  matterTeamID = intapp_web_api.GetMatterTeamForMatter(matterID);
}
catch (Exception ex)
{
  if (ex.Message.Contains("The matter") && ex.Message.Contains("does not exist"))
  {
    Console.WriteLine("the matter does do not exist");
    return;
  }
  else
  {
    Console.WriteLine(ex.Message);
    return;
  }
}

Kesimpulan
API IntApp Walls menawarkan set operasi yang komprehensif untuk mengurus keahlian pasukan perkara dan melindungi maklumat sensitif. Daripada mendapatkan butiran pasukan hingga menambah ahli baharu semasa menyemak konflik, fungsi API ini membolehkan penyepaduan lancar dengan aliran kerja anda dan pematuhan kepada dasar dinding beretika. Dengan pelaksanaan yang betul, pengurusan pasukan perkara menjadi proses yang diperkemas dan cekap yang menegakkan integriti data.

Atas ialah kandungan terperinci Bekerja dengan Keahlian Pasukan Matter Menggunakan IntApp Walls API. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn