|
@ -33,7 +33,7 @@ export class HomeComponent { |
|
|
arrayBuffer: any; |
|
|
arrayBuffer: any; |
|
|
filelist: any = []; |
|
|
filelist: any = []; |
|
|
arrayToBeSend: any = []; |
|
|
arrayToBeSend: any = []; |
|
|
subscriptions: Subscription[] = []; |
|
|
|
|
|
|
|
|
customerPhonenumbers: string[] = []; |
|
|
|
|
|
|
|
|
constructor( |
|
|
constructor( |
|
|
private routerService: RouterService, |
|
|
private routerService: RouterService, |
|
@ -61,26 +61,63 @@ export class HomeComponent { |
|
|
this.isSalesForm = !this.isSalesForm; |
|
|
this.isSalesForm = !this.isSalesForm; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
submitForm() { |
|
|
|
|
|
console.log('inside submit form'); |
|
|
|
|
|
|
|
|
triggerWhatsappMessages(phoneNumber: string[]) { |
|
|
|
|
|
const httpBody = { |
|
|
|
|
|
messages: [ |
|
|
|
|
|
{ |
|
|
|
|
|
from: '447491163530', |
|
|
|
|
|
// TODO: need check if we can send array here
|
|
|
|
|
|
to: phoneNumber[1], |
|
|
|
|
|
messageId: 'a28dd97c-1ffb-4fcf-99f1-0b557ed381da', |
|
|
|
|
|
content: { |
|
|
|
|
|
templateName: 'infobip_kz_test_hsm_2', |
|
|
|
|
|
templateData: { |
|
|
|
|
|
body: { |
|
|
|
|
|
placeholders: ['BFL Credit Card'], |
|
|
|
|
|
}, |
|
|
|
|
|
}, |
|
|
|
|
|
language: 'en_GB', |
|
|
|
|
|
}, |
|
|
|
|
|
callbackData: 'Callback data', |
|
|
|
|
|
}, |
|
|
|
|
|
], |
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
this.homeService.sendWhatsApp(httpBody).subscribe( |
|
|
|
|
|
(res) => { |
|
|
|
|
|
console.log('success', res); |
|
|
|
|
|
this.isLoading = false; |
|
|
|
|
|
}, |
|
|
|
|
|
(err) => { |
|
|
|
|
|
console.log('failed',err); |
|
|
|
|
|
this.isLoading = false; |
|
|
|
|
|
} |
|
|
|
|
|
) |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
readExcelFile(){ |
|
|
|
|
|
this.isLoading = true; |
|
|
let fileReader = new FileReader(); |
|
|
let fileReader = new FileReader(); |
|
|
fileReader.readAsArrayBuffer(this.file); |
|
|
fileReader.readAsArrayBuffer(this.file); |
|
|
|
|
|
|
|
|
fileReader.onload = (e) => { |
|
|
fileReader.onload = (e) => { |
|
|
this.arrayBuffer = fileReader.result; |
|
|
this.arrayBuffer = fileReader.result; |
|
|
var data = new Uint8Array(this.arrayBuffer); |
|
|
|
|
|
var arr = new Array(); |
|
|
|
|
|
for (var i = 0; i != data.length; ++i) |
|
|
|
|
|
|
|
|
let data = new Uint8Array(this.arrayBuffer); |
|
|
|
|
|
let arr = new Array(); |
|
|
|
|
|
let phoneNumber: string[] = []; |
|
|
|
|
|
|
|
|
|
|
|
for (let i = 0; i != data.length; ++i){ |
|
|
arr[i] = String.fromCharCode(data[i]); |
|
|
arr[i] = String.fromCharCode(data[i]); |
|
|
var bstr = arr.join(''); |
|
|
|
|
|
var workbook = XLSX.read(bstr, { type: 'binary' }); |
|
|
|
|
|
var first_sheet_name = workbook.SheetNames[0]; |
|
|
|
|
|
var worksheet = workbook.Sheets[first_sheet_name]; |
|
|
|
|
|
// console.log(XLSX.utils.sheet_to_json(worksheet, { raw: true }));
|
|
|
|
|
|
// var arraylist = XLSX.utils.sheet_to_json(worksheet, { raw: true });
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
let bstr = arr.join(''); |
|
|
|
|
|
let workbook = XLSX.read(bstr, { type: 'binary' }); |
|
|
|
|
|
let first_sheet_name = workbook.SheetNames[0]; |
|
|
|
|
|
let worksheet = workbook.Sheets[first_sheet_name]; |
|
|
this.filelist = XLSX.utils.sheet_to_json(worksheet, { raw: true }); |
|
|
this.filelist = XLSX.utils.sheet_to_json(worksheet, { raw: true }); |
|
|
console.log(this.filelist); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// pull data according to upload file type
|
|
|
if (this.isSalesForm) { |
|
|
if (this.isSalesForm) { |
|
|
console.log(this.isSalesForm); |
|
|
|
|
|
for (let i = 0; i < this.filelist.length; i++) { |
|
|
for (let i = 0; i < this.filelist.length; i++) { |
|
|
var details = { |
|
|
var details = { |
|
|
'CUSTOMER NAME': this.filelist[i]['CUSTOMER NAME'], |
|
|
'CUSTOMER NAME': this.filelist[i]['CUSTOMER NAME'], |
|
@ -89,9 +126,9 @@ export class HomeComponent { |
|
|
'DATE OF ENQUIRY': this.filelist[i]['DATE OF ENQUIRY'], |
|
|
'DATE OF ENQUIRY': this.filelist[i]['DATE OF ENQUIRY'], |
|
|
}; |
|
|
}; |
|
|
this.arrayToBeSend.push(details); |
|
|
this.arrayToBeSend.push(details); |
|
|
|
|
|
phoneNumber.push(this.filelist[i]['PHONE NUMBER']); |
|
|
} |
|
|
} |
|
|
} else { |
|
|
} else { |
|
|
console.log(this.isSalesForm); |
|
|
|
|
|
for (let i = 0; i < this.filelist.length; i++) { |
|
|
for (let i = 0; i < this.filelist.length; i++) { |
|
|
var details = { |
|
|
var details = { |
|
|
'CUSTOMER NAME': this.filelist[i]['Customer'], |
|
|
'CUSTOMER NAME': this.filelist[i]['Customer'], |
|
@ -100,49 +137,17 @@ export class HomeComponent { |
|
|
'DATE OF ENQUIRY': this.filelist[i]['Ready For Invoice Date Time'], |
|
|
'DATE OF ENQUIRY': this.filelist[i]['Ready For Invoice Date Time'], |
|
|
}; |
|
|
}; |
|
|
this.arrayToBeSend.push(details); |
|
|
this.arrayToBeSend.push(details); |
|
|
|
|
|
phoneNumber.push(this.filelist[i]['PHONE NUMBER']); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
console.log(this.arrayToBeSend); |
|
|
|
|
|
const phoneNumber: any = []; |
|
|
|
|
|
for (let i = 0; i < this.arrayToBeSend.length; i++) { |
|
|
|
|
|
console.log(this.arrayToBeSend[i]['PHONE NUMBER']); |
|
|
|
|
|
phoneNumber.push(this.arrayToBeSend[i]['PHONE NUMBER']); |
|
|
|
|
|
} |
|
|
|
|
|
console.log(phoneNumber); |
|
|
|
|
|
const body = { |
|
|
|
|
|
messages: [ |
|
|
|
|
|
{ |
|
|
|
|
|
from: '447491163530', |
|
|
|
|
|
to: phoneNumber, |
|
|
|
|
|
messageId: 'a28dd97c-1ffb-4fcf-99f1-0b557ed381da', |
|
|
|
|
|
content: { |
|
|
|
|
|
templateName: 'infobip_kz_test_hsm_2', |
|
|
|
|
|
templateData: { |
|
|
|
|
|
body: { |
|
|
|
|
|
placeholders: ['BFL Credit Card'], |
|
|
|
|
|
}, |
|
|
|
|
|
}, |
|
|
|
|
|
language: 'en_GB', |
|
|
|
|
|
}, |
|
|
|
|
|
callbackData: 'Callback data', |
|
|
|
|
|
}, |
|
|
|
|
|
], |
|
|
|
|
|
}; |
|
|
|
|
|
this.subscriptions.push( |
|
|
|
|
|
this.homeService.sendWhatsApp(body).subscribe( |
|
|
|
|
|
(res) => { |
|
|
|
|
|
console.log(res); |
|
|
|
|
|
}, |
|
|
|
|
|
(err) => { |
|
|
|
|
|
console.log(err); |
|
|
|
|
|
} |
|
|
|
|
|
) |
|
|
|
|
|
); |
|
|
|
|
|
|
|
|
// after reading file and storing all phonenumbers in an array
|
|
|
|
|
|
// call whatsapp sending api function here
|
|
|
|
|
|
this.triggerWhatsappMessages(phoneNumber); |
|
|
}; |
|
|
}; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
addfile(event: any) { |
|
|
addfile(event: any) { |
|
|
this.file = event.target.files[0]; |
|
|
this.file = event.target.files[0]; |
|
|
console.log('insiide addfile function'); |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
} |
|
|
} |