diff --git a/src/components/Autocomplete.svelte b/src/components/Autocomplete.svelte index 5d7c60c..5dd3eb8 100644 --- a/src/components/Autocomplete.svelte +++ b/src/components/Autocomplete.svelte @@ -113,7 +113,7 @@ import { parse } from "papaparse"; import { configData, db } from "./../stores.js"; - import * as notifier from './../notifier.js' + import * as notifier from "./../notifier.js"; let datensatz_schueler = "", datensatz_medien = "", - datensatz_sonstige = {nichtschueler: 1, memo: ''}, + datensatz_sonstige = { nichtschueler: 1, memo: "" }, warten; const update_sonstige = () => { try { - $db.prepare(` + console.log( + $db + .prepare( + ` INSERT INTO schueler (name, vorname, nichtschueler, memo) VALUES(:name, :vorname, :nichtschueler, :memo) - `).run(datensatz_sonstige) - } catch (e) { console.log(e) } - } + ` + ) + .run(datensatz_sonstige) + ); + datensatz_sonstige = { nichtschueler: 1, memo: "" }; + notifier.fertig("Nutzer hinzugefügt"); + } catch (e) { + console.log(e); + notifier.fehler("Fehler beim Hinzufügen des Nutzers:", e.message); + } + }; const update_schueler = async () => { warten = true; const res = await parse(datensatz_schueler, { comments: "#", - header: true + header: true, }); // id|name|vorname|jahr|klasse|kurs|kurs_lehrer const values = res.data; let schueler = {}, kurse = {}; - values.forEach(v => { - schueler[v.id] = [ - v.id, - v.jahr, - v.klasse, - v.name, - v.vorname - ]; + values.forEach((v) => { + schueler[v.id] = [v.id, v.jahr, v.klasse, v.name, v.vorname]; }); - const jahr = values[0].jahr + const jahr = values[0].jahr; const schueler_values = Object.values(schueler) - .map( - a => `(${a[0]}, ${a[1]}, '${a[2]}', '${a[3]}', '${a[4]}')` - ) + .map((a) => `(${a[0]}, ${a[1]}, '${a[2]}', '${a[3]}', '${a[4]}')`) .join(","); const kurszugehoerigkeit_values = values - .map(v => `(${v.id}, '${v.kurs_lehrer||''}', '${v.kurs||''}')`) + .map((v) => `(${v.id}, '${v.kurs_lehrer || ""}', '${v.kurs || ""}')`) .join(","); const query = [ `DELETE FROM schueler WHERE NOT EXISTS ( SELECT * FROM ausleihe WHERE ausleihe.schueler_id = schueler.id)`, `INSERT INTO schueler (schild_id, jahr, klasse, name, vorname) VALUES ${schueler_values} ON CONFLICT (schild_id) DO UPDATE SET jahr = ${jahr}`, `DELETE FROM kurszugehoerigkeit`, - `INSERT INTO kurszugehoerigkeit (schild_id, kurs_lehrer, kurs) VALUES ${kurszugehoerigkeit_values}` + `INSERT INTO kurszugehoerigkeit (schild_id, kurs_lehrer, kurs) VALUES ${kurszugehoerigkeit_values}`, ]; try { - query.forEach(q => $db.prepare(q).run()); - datensatz_schueler = '' - notifier.fertig('Schüler importiert') + query.forEach((q) => $db.prepare(q).run()); + datensatz_schueler = ""; + notifier.fertig("Schüler importiert"); } catch (e) { - notifier.fehler('Fehler beim Schülerimport:', e.message) - console.log(e) + notifier.fehler("Fehler beim Schülerimport:", e.message); + console.log(e); } warten = false; }; const update_medien = async () => { const res = await parse(datensatz_medien, { comments: "#" }); const values = res.data; - const medien = values.map(b => b[0]); + const medien = values.map((b) => b[0]); const insert = $db.prepare( "INSERT INTO medienbezeichnung (name) VALUES (?)" ); - const insertMany = $db.transaction(medien => { + const insertMany = $db.transaction((medien) => { for (const medium of medien) insert.run(medium); }); try { insertMany(medien); datensatz_medien = ""; - notifier.fertig('Medientitel importiert') + notifier.fertig("Medientitel importiert"); } catch (e) { - notifier.fehler('Fehler beim Medienimport:', e.message) + notifier.fehler("Fehler beim Medienimport:", e.message); console.log(e); } }; @@ -95,12 +98,16 @@
Name | Vorame | +Bemerkung | {i + 1} | {s.name} | {s.vorname} | +{s.memo} | {/each}
---|