如何使用xero节点包装程序xero-node更新联系人的帐号?

时间:2019-09-02 04:32:50

标签: node.js xero-api

我正在尝试通过xero api和xero-node实现此目标:

  1. 使用Xero API进行API调用并获取所有联系人。
  2. 对“联系人”中“帐号”中值为空的新联系人进行检查。
  3. 创建唯一的CRN(客户参考号),并检查该唯一号以前是否曾使用过。
  4. 将此唯一的CRN更新为与[帐号]联系。

我目前能够实现的目标:

  1. 使用xero-node“ get”方法获取的所有可用联系人
  2. 选中应用于联系人的联系人,以查找没有帐号的联系人并将其存储在数组中
  3. 对存储在数组中的所有联系人执行更新操作,但是现在仅更新最后一个联系人。

这是更新方法的代码

noAccountNumContacts is the array of the IDs of those contact which has no account number

let xero = new XeroClient(config);

let noAccountNumContacts = [];

const result = await xero.contacts.get();

const contacts = result.Contacts;

contacts.map(contact => {

    const { ContactID, Name, AccountNumber } = contact;

    if (AccountNumber === undefined) {

      noAccountNumContacts.push(ContactID);

    }

});

noAccountNumContacts.map(contact => {

  xero.contacts.update({

    ContactID: contact,

    AccountNumber: 123456

  });

});

我希望此代码可以更新存储在array(noAccountNumContacts)中的ID的帐号。但是我现在得到的是,更新呼叫仅更新单个联系人,而不更新所有联系人。

尝试了很多之后,我无法找到解决方案。您能帮我了解我在做什么错吗?另外,如何生成可以用作联系人帐号的唯一CRN?

0 个答案:

没有答案