【发布时间】:2022-06-19 02:42:38
【问题描述】:
我目前有两个列表,一个来自外部 api (splynx),它返回所有客户的列表,另一个列表返回来自 Zoho crm 中联系人模块的所有帐户名称的列表,目前,我只想编写一个代码来确认两个列表是否包含匹配的条目(例如 splynx 列表中的一个条目与 crm 列表中的另一个条目匹配)。 我真正想要实现的是对于每个匹配条目,我想使用 Splynx 中的客户 ID 字段更新 crm 记录,并在 CRM 的帐户模块中使用名为 Splynx ID 的自定义字段(因为此 ID 是自动生成的,以便维护两个应用程序的一致性)。我想知道这是否可以实现。
这是我目前写的代码
headersmap = Map();
headersmap.put("Authorization","Basic xxxxxxx);
response = invokeurl
[
url :"https://selfcare.dotmac.ng/api/2.0/admin/customers/customer?"
type :GET
headers:headersmap
];
AccountlistSplynx = List();
li1 = List();
li2 = List();
li3 = List();
rows = response.toJSONList();
rows1 = response.toJSONList();
rows2 = response.toJSONList();
for each row in rows
{
Name = row.getjson("name");
AccountlistSplynx.add(Name);
}
for each row in rows1
{
Address = row.getjson("street_1");
li1.add(Address);
}
for each row in rows2
{
CustomerID = row.getjson("id");
li2.add(CustomerID);
}
Accountlistzoho = List();
mp = Map();
contacts = zoho.crm.getRecords("Contacts");
for each contact in contacts
{
account = ifnull(contact.getJSON("Account_Name"),Map());
if(account.size() > 0)
{
accountname = account.getJSON("name");
Accountlistzoho.add(accountname);
}
}
if ( Accountlistzoho == AccountlistSplynx )
{
info "Matching records!";
}
else
{
info "No matching records!";
}
我还想知道这是否是尝试实现此目标的最佳途径,因为在我意识到我没有为客户创建自定义字段之前,我已经将这些联系人从 Splynx 导入到 CRM 中
【问题讨论】: