Many Changes
This commit is contained in:
84
imports/lexoffice/vendors/index.js
vendored
Normal file
84
imports/lexoffice/vendors/index.js
vendored
Normal file
@@ -0,0 +1,84 @@
|
||||
const csv = require("csv-parser")
|
||||
const fs = require("fs")
|
||||
const path = require("path")
|
||||
const {createClient} = require("@supabase/supabase-js")
|
||||
|
||||
const supabase = createClient("https://uwppvcxflrcsibuzsbil.supabase.co","eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InV3cHB2Y3hmbHJjc2lidXpzYmlsIiwicm9sZSI6InNlcnZpY2Vfcm9sZSIsImlhdCI6MTcwMDkzODE5NCwiZXhwIjoyMDE2NTE0MTk0fQ.6hOkD1J8XBkVJUm-swv0ngLQ74xrEYr28EEbo0rUrts")
|
||||
const tenant = 8
|
||||
let rows = []
|
||||
let vendors = []
|
||||
let contacts = []
|
||||
fs.createReadStream(path.join(__dirname, "../../input/contacts.csv"), "utf-8")
|
||||
.pipe(csv({ separator: ";" }))
|
||||
.on("data", (data) => rows.push(data))
|
||||
.on("end", async function () {
|
||||
console.log("finished");
|
||||
console.log(rows)
|
||||
|
||||
vendors = rows.map(i => {
|
||||
|
||||
let item = {
|
||||
vendorNumber : Number(i.Lieferantennummer),
|
||||
tenant: tenant,
|
||||
name: i.Firmenname,
|
||||
infoData: {
|
||||
zip: i["PLZ 1"],
|
||||
city: i["Ort 1"],
|
||||
ustid: i["Umsatzsteuer ID"],
|
||||
street: i["Straße 1"],
|
||||
country: i["Land 1"],
|
||||
tel: i["Telefon 1"],
|
||||
email: i["E-Mail 1"]
|
||||
}
|
||||
}
|
||||
|
||||
return item
|
||||
|
||||
})
|
||||
|
||||
rows.forEach(i => {
|
||||
if(i["Ansprechpartner 1 Vorname"] ||i["Ansprechpartner 1 Nachname"] ||i["Ansprechpartner 1"] ||i["Ansprechpartner 1 Anrede"] ||i["Ansprechpartner 1 E-Mail"] ||i["Ansprechpartner 1 Telefon"]) {
|
||||
let item = {
|
||||
firstName: i["Ansprechpartner 1 Vorname"],
|
||||
lastName: i["Ansprechpartner 1 Nachname"],
|
||||
fullName: i["Ansprechpartner 1"],
|
||||
salutation: i["Ansprechpartner 1 Anrede"],
|
||||
email: i["Ansprechpartner 1 E-Mail"],
|
||||
phoneHome: i["Ansprechpartner 1 Telefon"],
|
||||
tenant: tenant,
|
||||
vendorNumber: i["Lieferantennummer"]
|
||||
}
|
||||
|
||||
contacts.push(item)
|
||||
}
|
||||
|
||||
|
||||
})
|
||||
|
||||
|
||||
const {data:vendorsData,error: vendorsError} = await supabase.from("vendors").insert(vendors).select()
|
||||
console.log(vendorsData)
|
||||
console.log(vendorsError)
|
||||
|
||||
contacts = contacts.map(i => {
|
||||
let item = {
|
||||
...i,
|
||||
vendor: vendorsData.find(v => v.vendorNumber === i.vendorNumber).id
|
||||
}
|
||||
|
||||
delete item.vendorNumber
|
||||
|
||||
return item
|
||||
})
|
||||
|
||||
const {data:contactsData,error: contactsError} = await supabase.from("contacts").insert(contacts).select()
|
||||
console.log(contactsData)
|
||||
console.log(contactsError)
|
||||
|
||||
|
||||
//console.log(rows)
|
||||
})
|
||||
.on("error", function (error) {
|
||||
console.log(error.message);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user