From 842f87c78442a3bde5bf89398a913db5718b764b Mon Sep 17 00:00:00 2001 From: PAN Lei Date: Tue, 1 Oct 2024 22:58:32 +0200 Subject: [PATCH] bind contact list with phone serial --- src/appointment.js | 15 ++++++++++++++- src/excel/ExcelUtil.js | 5 +++-- src/models/ContactPojo.js | 3 ++- 3 files changed, 19 insertions(+), 4 deletions(-) diff --git a/src/appointment.js b/src/appointment.js index 8a7165b..0b3061f 100644 --- a/src/appointment.js +++ b/src/appointment.js @@ -118,6 +118,16 @@ function shuffle(array) { return array; } +function getContactListForDevice(device, allContactList) { + let contactList = []; + allContactList.forEach((contact) => { + if (contact.serial === device.serial) { + contactList.push(contact) + } + }) + return contactList; +} + async function startBookWithNumbers(startNumber, endNumber, selectedStore, pathToExcelFile = '/Users/lpan/Desktop/contact_all.xlsx', audioAnalyse = true, alertBeep = false) { console.log("startBookWithNumbers() called, with alertBeep:" + alertBeep) console.log("startBookWithNumbers() called, with audioAnalyse:" + audioAnalyse) @@ -191,7 +201,10 @@ async function startBookWithNumbers(startNumber, endNumber, selectedStore, pathT for (let i = 0; i < filteredDeviceList.length; i++) { let device = filteredDeviceList[i]; let port = startForwordingForDevice(device) - startWithList(listWithoutBlackContact.slice(i * segmentNumber, segmentNumber * (i + 1)), device, sender, selectedStore, audioAnalyse, alertBeep, port); + // let _contactList = listWithoutBlackContact.slice(i * segmentNumber, segmentNumber * (i + 1)) + let _contactList = getContactListForDevice(device, listWithoutBlackContact) + console.log("contactList: for device:" + device.serial + " has " + _contactList.length) + startWithList(_contactList, device, sender, selectedStore, audioAnalyse, alertBeep, port); } }) diff --git a/src/excel/ExcelUtil.js b/src/excel/ExcelUtil.js index f01ae93..cf38eb5 100644 --- a/src/excel/ExcelUtil.js +++ b/src/excel/ExcelUtil.js @@ -19,11 +19,12 @@ class ExcelUtil { if (store === undefined || store.length === 0) { store = "random" } - let ipCountry = info[5]; + let serial = info[5]; + let ipCountry = info[6]; if (ipCountry === undefined || ipCountry.length === 0) { ipCountry = "FR" } - let newContact = new ContactPojo(phoneNumber, passportNumber, lastName, firstName, mail, store, ipCountry); + let newContact = new ContactPojo(phoneNumber, passportNumber, lastName, firstName, mail, store, ipCountry, serial); contactList.push(newContact); } } diff --git a/src/models/ContactPojo.js b/src/models/ContactPojo.js index 6088605..66c4a5d 100644 --- a/src/models/ContactPojo.js +++ b/src/models/ContactPojo.js @@ -1,6 +1,6 @@ class ContactPojo { - constructor(phoneNumber, passportNumber, lastName, firstName, mail, store, ipCountry) { + constructor(phoneNumber, passportNumber, lastName, firstName, mail, store, ipCountry, serial) { this.phoneNumber = phoneNumber; this.passportNumber = passportNumber; this.lastName = lastName; @@ -8,6 +8,7 @@ class ContactPojo { this.mail = mail; this.store = store; this.ipCountry = ipCountry; + this.serial = serial; } }