Remodel of Profile System
Added isCompany to Customers changes in workingtimes.vue
This commit is contained in:
@@ -1,92 +1,108 @@
|
|||||||
Kundennummer;Lieferantennummer;Firmenname;Anrede;Kontakt;Vorname;Nachname;Steuernummer;Umsatzsteuer ID;Adresszusatz 1;Straße 1;PLZ 1;Ort 1;Land 1;Adresszusatz 2;Straße 2;PLZ 2;Ort 2;Land 2;Telefon 1;Telefon 2;E-Mail 1;E-Mail 2;Ansprechpartner 1;Ansprechpartner 1 Anrede;Ansprechpartner 1 Vorname;Ansprechpartner 1 Nachname;Ansprechpartner 1 E-Mail;Ansprechpartner 1 Telefon;Ansprechpartner 2;Ansprechpartner 2 Anrede;Ansprechpartner 2 Vorname;Ansprechpartner 2 Nachname;Ansprechpartner 2 E-Mail;Ansprechpartner 2 Telefon
|
Kundennummer;Lieferantennummer;Firmenname;Anrede;Kontakt;Vorname;Nachname;Steuernummer;Umsatzsteuer ID;Adresszusatz 1;Straße 1;PLZ 1;Ort 1;Land 1;Adresszusatz 2;Straße 2;PLZ 2;Ort 2;Land 2;Telefon 1;Telefon 2;E-Mail 1;E-Mail 2;Ansprechpartner 1;Ansprechpartner 1 Anrede;Ansprechpartner 1 Vorname;Ansprechpartner 1 Nachname;Ansprechpartner 1 E-Mail;Ansprechpartner 1 Telefon;Ansprechpartner 2;Ansprechpartner 2 Anrede;Ansprechpartner 2 Vorname;Ansprechpartner 2 Nachname;Ansprechpartner 2 E-Mail;Ansprechpartner 2 Telefon
|
||||||
;70096;Allknow GmbH;;;;;;DE304748974;;Prenzlauer Allee 173;10409;Berlin;DE;;;;;;;;;;;;;;;;;;;;;
|
10128;;;Herr;Sven Ahlhorn;Sven;Ahlhorn;;;;Sandelerm<72>ns 89;26441;Jever;DE;;;;;;;;rechnung@sandelcom.de;;;;;;;;;;;;;
|
||||||
;70050;Amazon EU S.<2E> r.l.;;;;;;DE814584193;;Marcel-Breuer-Str. 12;80807;M<>nchen;DE;;;;;;;;;;;;;;;;;;;;;
|
10115;;;Herr;Ewald Albers;Ewald;Albers;;;;Sandelerm<72>ns 99;26441;Jever;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
;70069;Antratek Electronics;;;;;;;;'s-Gravenweg 318-G;2911BK;Nieuwerkerk;NL;;;;;;;;info@antratek.de;;;;;;;;;;;;;
|
10050;;;Herr;Jan Albers;Jan;Albers;;;;Sandelerm<72>ns 76;26441;Jever;DE;;Sandelerm<72>ns 76;26441;Jever;DE;;;;;;;;;;;;;;;;
|
||||||
;70040;B&W Handelsgesellschaft mbH / Electropapa;;;;;;DE251356088;;Thormeyerstr. 1;01877;Bischofswerda;DE;;;;;;498853847;;support@electropapa.com;;;;;;;;;;;;;
|
10095;;;Frau;Julia Albers;Julia;Albers;;;;Sandelerm<72>ns 99;26441;Jever;DE;;;;;;;;rechnung@sandelcom.de;;;;;;;;;;;;;
|
||||||
;70062;Batna anteny 24;;;;;;PL5732901461;;;;;;;;;;;;;sales@anteny24.pl;;;;;;;;;;;;;
|
10102;;;Herr;Andreas Altenhofen;Andreas;Altenhofen;;;;Neu Augustengroden 4;26434;Wangerland;DE;;;;;;01701860034;;rechnung@sandelcom.de;andreas.altenhofen@freenet.de;;;;;;;;;;;;
|
||||||
;70060;Baugrund Ammerland GmbH;;;;;;DE279105744;;Robert-Bosch-Str. 12;26683;Saterland;DE;;;;;;04405/9250140;;info@baugrund-ammerland.de;;;;;;;;;;;;;
|
10101;;(ALT) Nordseebad Carolinensiel-Harlesiel GmbH;;;;;;;;Bahnhofstraße 40;26409;Wittmund-Carolinensiel;DE;;;;;;;;buchhaltung@carolinensiel.de;;Stephan J<>rgens;Herr;Stephan;J<>rgens;stephan.juergens@carolinensiel.de;04464 949386;;;;;;
|
||||||
;70042;Besserladen.de;;;;;;DE329409987;;An den H<>hner<65>ckern 3;97456;Dittelbrunn;DE;;;;;;'+4997257055807;;christian.fickert@besserladen.de;;;;;;;;;;;;;
|
10054;;Anke und Hinrich Schild GbR;;;;;;;;Elisabethgroden 3;26434;Wangerland;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
;70031;Bocksberger Maschinenbau;;;;;;DE343404399;;Berliner Str. 3;26419;Schortens;DE;;;;;;017643480652;;Bocksberger.Maschinenbau@web.de;;;;;;;;;;;;;
|
10073;;;Herr;Hans-Hermann Backhaus;Hans-Hermann;Backhaus;;;;Carolinsieler Straße 20;26409;Wittmund;DE;;;;;;;;rechnung@sandelcom.de;;;;;;;;;;;;;
|
||||||
;70084;B<>ttcher AG;;;;;;DE219636488;;Stadtrodaer Landstr. 1;07751;Jena;DE;;;;;;;;;;;;;;;;;;;;;
|
10090;;;Herr;Jan Backhaus;Jan;Backhaus;;;;Frederieken-Vorwerk 2;26434;Wangerland;DE;;;;;;;;jan.backhaus007@googlemail.com;rechnung@sandelcom.de;;;;;;;;;;;;
|
||||||
;70032;Brune-Mettcker Druck- und Verlags-GmbH;;;;;;;;Am Markt 18;26409;Wittmund;DE;;;;;;;;;;;;;;;;;;;;;
|
10019;;Baller-Ina e.V.;;;;;;;;Baumstraße 3;26409;Wittmund;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
;70012;BZN Hagebau Wittmund GmbH 8 Co. KG;;;;;54/202/08160;DE256602901;;Eggelinger Str. 18;26409;Wittmund;DE;;;;;;04462/8803-0;;;;;;;;;;;;;;;
|
10071;;;Herr;Andreas Balz;Andreas;Balz;;;;Auricher Straße 92;26409;Wittmund;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
;70074;Cafe Bar Celona;;;;;;;;Markt 4;26122;Oldenburg;DE;;;;;;;;;;;;;;;;;;;;;
|
10135;;;Herr;Andre Becker;Andre;Becker;;;;Tammhausen 1;26434;Wangerland;DE;;;;;;?+49 170 9247251?;;becker-tammhausen@t-online.de;rechnung@sandelcom.de;;;;;;;;;;;;
|
||||||
;70077;Combi Verbrauchermarkt Einkaufsst<73>tte GmbH & Co. KG;;;;;;;;Hauptstra<72>e 121;26446;Friedeburg;DE;;;;;;;;;;;;;;;;;;;;;
|
10116;;;Herr;Wiard Becker;Wiard;Becker;;;;Quanens 1;26434;Wangerland;DE;;;;;;015231885695;;rechnung@sandelcom.de;beckwia@gmail.com;;;;;;;;;;;;
|
||||||
;70059;Conrad Electronic SE;;;;;;DE131832937;;Klaus-Conrad-Str. 1;92242;Hirschau;DE;;;;;;004146869;;;;;;;;;;;;;;;
|
10105;;;Herr;Alfred Bischoff;Alfred;Bischoff;;;;Kantstraße 66;44627;Herne;DE;;Am Yachthafen 23b;26409;Wittmund;DE;;;alfred_bischoff@t-online.de;rechnung@sandelcom.de;;;;;;;;;;;;
|
||||||
;70018;Digital Charging Solutions GmbH;;;;;;DE331008729;;Mies-van-der-Rohe-Stra<72>e 6;80807;M<>nchen;DE;;;;;;;;;;;;;;;;;;;;;
|
10145;;BlueNodes GmbH;;;;;;;Benjamin Munkhart;Kreuzgasse 34;65510;Idstein;DE;;;;;;;;b.munkhart@blue-nodes.de;;;;;;;;;;;;;
|
||||||
;70036;Diversitas Hamburg GmbH;;;;;;DE311539541;;Von-Bargen-Str. 34;22041;Hamburg;DE;;;;;;'+49-40-20906700;;info@wlan-shop24.de;;;;;;;;;;;;;
|
10064;;;Herr;Hergen Bocksberger;Hergen;Bocksberger;;;;Kreuzweg 36;26419;Schortens;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
;70087;dynamic SHIELD GmbH (Conrad);;;;;;;;Bessemerstr. 38-42;12103;Berlin;DE;;;;;;;;;;;;;;;;;;;;;
|
10108;;;Herr;Reinhard Bocksberger;Reinhard;Bocksberger;;;;Klein Rhaude 1;26434;Wangerland;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
;70052;ebay;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
10097;;;Herr;Dirk Bremers;Dirk;Bremers;;;;Neu Augustengroden 23;26434;Wangerland;DE;;;;;;;;dirk.bremers78@gmail.com;rechnung@sandelcom.de;;;;;;;;;;;;
|
||||||
;70071;eBay GmbH;;;;;;DE200081785;;Albert-Einstein-Ring 2-6;14532;Kleinmachnow;DE;;;;;;09831-89135;;;;;;;;;;;;;;;
|
10014;;BRSG Wittmund e.V.;;;;;;;z.Hd. Herrn Heino Br<42>ling;Norder Straße 4;26409;Wittmund;DE;Heino Br<42>ling;Norder Straße 4;26409;Wittmund;DE;;;rechnung@sandelcom.de;;Heino Br<42>ling;Herr;Heino;Br<42>ling;;;;;;;;
|
||||||
;70083;Egon Senger GmbH (Mercedes);;;;;;DE331008729;;Bremer Heerstr. 401-4051;26135;Oldenburg;DE;;;;;;'+4944623231;;;;;;;;;;;;;;;
|
10140;;B<>rger und Verkehrsverein Wittmund e.V. (BUVV);;;;;;;;Horster Straße 32;26409;Wittmund;DE;;;;;;;;sven.poppinga@buvv-wittmund.de;info@buvv-wittmund.de;;;;;;;;;;;;
|
||||||
;70027;Elektor-Verlag GmbH;;;;;;DE121677814;;Kackertstr. 10;52072;Aachen;DE;;;;;;044629232831;;service@elektor.de;;;;;;;;;;;;;
|
10049;;B<>rgerverein Blersum-Leepens e.V.;;;;;;;;Fahnhusener Straße 29;26409;Wittmund;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
;70037;Elektrohandel Wandelt GmbH;;;;;;;;Askay 28;57439;Attendorn;DE;;;;;;0162/2351848;;kundenservice@elektro-wandelt.de;;;;;;;;;;;;;
|
10099;;CaVe Betriebsgesellschaft uG;;;;;;;;Neu Augustengroden 7-8;26434;Wangerland;DE;;;;;;;;georgwurm@wurm-immobilienberatung.de;rechnung@sandelcom.de;Georg Wurm;Herr;Georg;Wurm;georgwurm@wurm-immobilienberatung.de;;;;;;;
|
||||||
;70073;enercab Handel & Technik GmbH;;;;;;ATU77486515;;;;;;;;;;;'+432236318131;;info@enercab.at;;;;;;;;;;;;;
|
10036;;;Herr;Daniel Chabrowski;Daniel;Chabrowski;;;;Wittmunder Straße 24B;26409;Wittmund;DE;;;;;;;;rechnung@sandelcom.de;;;;;;;;;;;;;
|
||||||
;70082;EngelbertStrauss GmbH & Co. KG;;;;;;DE112494262;;Frankfurter Str. 93-108;63599;Biebergem<65>nd;DE;;;;;;'+4960509710-12;;info@strauss.de;;;;;;;;;;;;;
|
10100;;Cliner Immobilienvermietung GbR;;;;;;;;Wittmunder Str. 24b;26409;Wittmund/Carolinensiel;DE;;;;;;;;rechnung@sandelcom.de;;Stefan Tobias;Herr;Stefan;Tobias;info@cliner-immobilien.de;0170/5327323;;;;;;
|
||||||
;70005;eSmart GmbH;;;;;;DE253485445;;Dat Middelfeld 21;19065;Pinnow;DE;;;;;;491883654;;;;;;;;;;;;;;;
|
10110;;Dat Ossi-Hus;;;;;;;;Abens 36;26409;Wittmund;DE;;;;;;;;info@sandelcom.de;ossihuus@gmx.de;;;;;;;;;;;;
|
||||||
;70015;EWE Go GmbH;;;;;;DE315640644;;;;;;;;;;;'+4944136152-0;;info@ewe-go.de;;;;;;;;;;;;;
|
10142;;;Herr;Mike Deckers;Mike;Deckers;;;;Neu Augustengroden 6;26434;Wangerland;DE;;;;;;;;rechnung@sandelcom.de;mike.deckers@web.de;;;;;;;;;;;;
|
||||||
;70020;EWE TEL GmbH;;;;;23/64/200/00622;DE184286895;;Postfach 25 09;26015;Oldenburg;DE;;;;;;;;;;;;;;;;;;;;;
|
10000;;;Herr;Claudio De Polo;Claudio;De Polo;;;;Drostenstraße 9;26409;Wittmund;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
;70043;expert e-Commerce GmbH;;;;;27/200/14642;;;Bayernstr. 4;30855;Langenhagen;DE;;;;;;0203-80481842;;kundenservice@expert-commerce.de;;;;;;;;;;;;;
|
10144;;;Herr;Nils Dickhagen;Nils;Dickhagen;;;;Barumser Weg 1;26409;Wittmund;DE;;;;;;;;rechnung@sandelcom.de;nilsdickhagen@msn.com;;;;;;;;;;;;
|
||||||
;70094;Fa. Mikando;;;;;;DE323933342;;B<>rschlingstr. 15;92224;Amberg;DE;;;;;;;;;;;;;;;;;;;;;
|
10005;;Dorfb<66>rgerverein Sandelerm<72>ns und Umgebung e. V.;;;;;;;;Sandelerm<72>ns 89;26441;Jever;DE;;;;;;;;albers@sandelermoens.de;rechnung@sandelcom.de;Uwe Caspers;Herr;Uwe;Caspers;uwe.caspers@abwurf.de;;;;;;;
|
||||||
;70048;Federspiel Technology UG haftungsbeschr<68>nkt;;;;;;;;Am Schwarzen Brack 14;26452;Sande;DE;;;;;;'+4944227928890;;f.federspiel@federspiel.tech;;;;;;;;;;;;;
|
10122;;;Frau;Natascha Effen;Natascha;Effen;;;Cleverns-Sandel;Sandelerm<72>ns 89;26441;Jever;DE;;;;;;;;rechnung@sandelcom.de;Natascha.effen@web.de;;;;;;;;;;;;
|
||||||
;70047;Gerken GmbH;;;;;;DE291874572;;Flutstra<EFBFBD>e 88;26386;Wilhelmshaven;DE;;;;;;0211-97476-712;;info@gerken-arbeitsbuehnen.de;;;;;;;;;;;;;
|
10051;;Eheleute Deutschmann;;;;;;;;Wittmunder Straße 24B;26409;Wittmund;DE;;;;;;;;rechnung@sandelcom.de;;;;;;;;;;;;;
|
||||||
;70039;GETIC SIA;;;;;;DE331008729;;Satiksmes str. 6;LV3401;Liepaja;LV;;;;;;;;;;;;;;;;;;;;;
|
10058;;EHZ Ingenieurb<72>ro GmbH;;;;;;;;Norddeicher Straße 128;26506;Norden;DE;;;;;;;;;;Hanke Meinen;Herr;Hanke;Meinen;;;;;;;;
|
||||||
;70058;greenDOT.IT;;;;;;DE316712474;;Selztalstr. 3;55270;Schwabenheim;DE;;;;;;'+49(0)6130-9495-416;;info@greenDOT.IT;;Christoph Gutheil;Herr;Christoph;Gutheil;;;;;;;;
|
10076;;Eigent<6E>mergemeinschaft Krabbenpadd 4;;;;;;;Herrn Holger Goebel;Krabbenpadd 4;26409;Wittmund;DE;;;;;;;;rechnung@sandelcom.de;;;;;;;;;;;;;
|
||||||
;70001;Haufe Service Center GmbH;;;;;;;;Postfach;79091;Freiburg;DE;;;;;;;;;;;;;;;;;;;;;
|
10137;;;Frau;Friederike Eilts;Friederike;Eilts;;;;Neu Augustengroden 14;26434;Wangerland;DE;;;;;;;;rechnung@sandelcom.de;;;;;;;;;;;;;
|
||||||
;70006;Hetzner Online GmbH;;;;;;DE812871812;;Industriestr. 25;91710;Gunzenhausen;DE;;;;;;'+499831505-0;;info@hetzner.com;;;;;;;;;;;;;
|
10093;;;Herr;G<>nther Eilts;G<>nther;Eilts;;;;Deichstraße 108;26409;Wittmund;DE;;Fliederweg 11;26409;Wittmund;DE;;;rechnung@sandelcom.de;;Meike Eilts;Frau;Meike;Eilts;;;;;;;;
|
||||||
;70068;HORNBACH Baumarkt AG;;;;;24/652/3000/5;;;Heuweg;26389;Wilhelmshaven;DE;;;;;;0442175511-0;;;;;;;;;;;;;;;
|
10149;;Energiegenossenschaft f<>r Wittmund eG;;;;;;;;Am Markt 16;26409;Wittmund;DE;;;;;;;;mira.sturm@eg-wittmund.de;oliver.pristat@eg-wittmund.de;Mira Sturm;Frau;Mira;Sturm;;;;;;;;
|
||||||
;70011;IKEA Deutschland GmbH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
10138;;;Frau;Anke Ennen;Anke;Ennen;;;;Abens 38;26409;Wittmund;DE;;;;;;;;rechnung@sandelcom.de;;;;;;;;;;;;;
|
||||||
;70095;Ingenieurb<72>ro Gerdes GmbH;;;;;;DE323296725;;Erster Dwarsweg 7;26607;Aurich;DE;;;;;;;;;;Manfred Gerdes;Herr;Manfred;Gerdes;;;;;;;;
|
10118;;Federspiel Technology UG haftungsbeschr<68>nkt;;;;;70/200/75836;DE343020780;;Am Leeghamm 3;26441;Jever;DE;;Am Schwarzen Brack 14;26452;Sande;DE;04422 7928891;;rechnung@sandelcom.de;f.federspiel@federspiel.tech;Florian Federspiel;Herr;Florian;Federspiel;f.federspiel@federspiel.tech;;;;;;;
|
||||||
;70004;IT-BUDGET GmbH;;;;;;DE254288894;;Idsteiner Str. 81a;65232;Taunusstein;DE;;;;;;'+49(0)6128/48955-12;;v.jung@it-budget.de;;;;;;;;;;;;;
|
10048;;Ferienhaus Friesentraum;;;;;;;;In't Seeburger Winkel 1;26409;Wittmund;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
;70023;Jabben & Werdermann Steuerberatungsgesellschaft PartGmbB;;;;;70/205/53401;;;Schlosserstra<EFBFBD>e 40;26441;Jever;DE;;;;;;;;;;;;;;;;;;;;;
|
10074;;Ferienhaus Meents;;;;;;;;K<>nigsberger Straße 17;26409;Wittmund;DE;;;;;;;;rechnung@sandelcom.de;u.meents@web.de;Uwe Meents;Herr;Uwe;Meents;rechnung@sandelcom.de;;;;;;;
|
||||||
;70030;JACOB Elektronik GmbH;;;;;;DE261441153;;An der Ro<52>weid 5;76229;Karlsruhe;DE;;;;;;0721/94176-170;;b2b@jacob.de;;;;;;;;;;;;;
|
10024;;Ferienhaus SielerTraum;;;;;;;;Baumstr. 3;26409;Wittmund;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
;70061;Janzen's Autow<6F>sche GmbH & Co. KG;;;;;;;;Posthalterweg 10;26129;Oldenburg;DE;;;;;;;;;;;;;;;;;;;;;
|
10136;;Ferienhof Ahrenholtz;;;;;;;;Nauens 1;26434;Wangerland;DE;;;;;;;;;;Andreas Ahrenholz;Herr;Andreas;Ahrenholz;mail@ferienhof-ahrenholtz.de;;;;;;;
|
||||||
;70021;J. Siebels GmbH & Co. KG;;;;;71/201/03106;DE177387347;;An der Feuerwehr 2;26409;Wittmund;DE;;;;;;04462-8806-0;;info@johann-siebels.de;;;;;;;;;;;;;
|
10096;;Ferienhof Heinen;;;;;;;;Elisabethgroden 3b;26434;Wangerland;DE;;;;;;;;rechnung@sandelcom.de;;Heike Heinen;Frau;Heike;Heinen;info@ferienhof-heinen.de;;;;;;;
|
||||||
;70026;Kamm Lautsprecher;;;;;;DE313610859;;Chauvignystr. 27;65366;Geisenheim;DE;;;;;;;;versand@ehighend.de;;;;;;;;;;;;;
|
10124;;Ferien- und Freizeitcamp Carolinensiel;;;;;;;z. Hd. Patrick M<>ller;Sch<63>tzenweg 3;56457;Westernburg;DE;;;;;;;;info@ferien-und-freizeitcamp.de;;;;;;;;;;;;;
|
||||||
;70072;Landesamt f<>r Geoinformation und Landesvermessung Niedersachsen;;;;;;;Regionaldirektion Oldenburg-Cloppenburg;Stau 3;26122;Oldenburg;DE;;;;;;0441-9215-596;;katasterkarten-online@lgln.niedersachsen.de;;;;;;;;;;;;;
|
10129;;Ferienwohnungen Haus am Deichtor;;;;;;;;Neu Augstengroden 9;26434;Wangerland;DE;;;;;;;;rechnung@sandelcom.de;;Gerline Ahrends;Frau;Gerline;Ahrends;ferienwohnungen@hausamdeichtor.de;0151 67614194;;;;;;
|
||||||
;70093;Landkreis Wittmund;;;;;;;;Am Markt 9;26409;Wittmund;DE;;;;;;;;;;Jann Gerdes;Herr;Jann;Gerdes;bauamt@lk.wittmund.de;;;;;;;
|
10130;;Fremdenverkehr und B<>rgerverein der Funnixersiele e.V.;;;;;;;;Smittsh<73>rn 12;26409;Wittmund - Altfunnixsiel;DE;;;;;;;;hans-georg.otten@ewetel.net;support@sandelcom.de;Hans-Georg Otten;Herr;Hans-Georg;Otten;rechnung@sandelcom.de;;;;;;;
|
||||||
;70078;Ledger SAS;;;;;;FR03529991119;;;;;;;;;;;;;;;;;;;;;;;;;;
|
10113;;Friesland Musik;;;;;;;;Tettenser Tief 7;26434;Wangerland;DE;;;;;;;;mail@niclashabben.de;;Niclas Habben;Herr;Niclas;Habben;;;;;;;;
|
||||||
;70064;LGLN Niedersachsen;;;;;;;Regionaldirektion Oldenburg-Cloppenburg;Stau 3;26122;Oldenburg;DE;;;;;;0441-9215-596;;katasterkarten-online@lgln.niedersachsen.de;;;;;;;;;;;;;
|
10052;;;Herr;Justin G<>bel;Justin;G<>bel;;;;Neu Augustengroden 16;26434;Wangerland;DE;;;;;;;;rechnung@sandelcom.de;;;;;;;;;;;;;
|
||||||
;70014;Lizenzguru UG (haftungsbeschr<68>nkt);;;;;133/5848/3942;DE323771566;;K<>nigsallee 27;40212;D<>sseldorf;DE;;;;;;0800404068;;hallo@lizenzguru.de;;;;;;;;;;;;;
|
10020;;Golfclub Ostfriesland e.V.;;;;;;;;Am Golfplatz 4;26639;Wiesmoor;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
;70044;Manuel Rauch, itechnik24;;;;;;DE329407684;;Storchenweg 1;91737;Ornbau;DE;;;;;;08385-47643;;service@itechnik24.de;;;;;;;;;;;;;
|
10006;;;Herr;Reinhard Graaf;Reinhard;Graaf;;;;Sandel 58;26441;Jever;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
;70028;MD Sound GmbH & Co. KG;;;;;;DE815321024;;Wiesgarten 5;97783;Karsbach;DE;;;;;;093589700110;;info@md-sound.de;;;;;;;;;;;;;
|
10057;;;Frau;Ruth Harting;Ruth;Harting;;;;Schifferweg 6a;26409;Wittmund;DE;;;;;;;;rechnung@sandelcom.de;;;;;;;;;;;;;
|
||||||
;70035;medienkraftwerk GmbH;;;;;;DE813072672;;Felix-Wankel-Str. 13-15;53881;Euskirchen;DE;;;;;;'+49(0)2251148934;;info@medienkraftwerk.de;;;;;;;;;;;;;
|
10015;;;Herr;Andree Heeren;Andree;Heeren;;;;Baumstr. 3;26409;Wittmund;DE;;;;;;;;rechnung@sandelcom.de;;;;;;;;;;;;;
|
||||||
;70013;meerfarbig GmbH & Co. KG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
10098;;;Herr;Fred Hibbeler;Fred;Hibbeler;;;;Elisabethgroden 4;26434;Wangerland;DE;;;;;;;;Fred.Hibbeler@t-online.de;rechnung@sandelcom.de;;;;;;;;;;;;
|
||||||
;70008;Mercedes-Benz Leasing GmbH;;;;;;DE811121012;;Service Center Berlin;10841;Berlin;DE;;;;;;0121625071;;kundenservice@mercedes-bertz-bank.com;;;;;;;;;;;;;
|
10114;;;Herr;Falk Hohlen;Falk;Hohlen;;;;Klein Harmburg 1;26434;Wangerland;DE;;;;;;0174 7555149;;rechnung@sandelcom.de;falk.hohlen@gmx.de;;;;;;;;;;;;
|
||||||
;70017;Microsoft Ireland Operations Ltd;;;;;;DE192876773;;;;;;;;;;;;;;;;;;;;;;;;;;
|
10106;;;Frau;Heike H<>ke;Heike;H<>ke;;;;Neu Augustengroden 6;26434;Wangerland;DE;;;;;;04464 9455124;;hoeke.h@googlemail.com;rechnung@sandelcom.de;;;;;;;;;;;;
|
||||||
;70092;MMS E-COMMERCE GMBH;;;;;;DE233830101;;Media-Saturn-Stra<72>e 1;85053;Ingolstadt;DE;;;;;;;;;;;;;;;;;;;;;
|
10109;;Hotel Schluister Park GmbH;;;;;;;;Friedrichsschleuse 7;26409;Wittmund - Carolinensiel;DE;;;;;;;;rechnung@sandelcom.de;;Eike Jan<61>en;Herr;Eike;Jan<61>en;eike.janssen@hotel-schluister-park.de;;;;;;;
|
||||||
;70088;MultiOceans GmbH (ebay);;;;;;;;Hermann-Seger-Str. 18b;50226;Frechen;DE;;;;;;02234/6897850;;multioceans@hotmail.com;;;;;;;;;;;;;
|
10070;;;Herr;Stefan Janssen;Stefan;Janssen;;;;Gastweg 2;26427;Esens;DE;;;;;;;;rechnung@sandelcom.de;stefan.janssen1@mein.gmx.de;;;;;;;;;;;;
|
||||||
;70046;MUSIC STORE professional GmbH;;;;;;DE311029942;;Istanbulstr. 22-26;51103;K<>ln;DE;;;;;;'+49(0)2218884-0;;;;;;;;;;;;;;;
|
10104;;Johanniter-Unfall-Hilfe e.V.;;;;;;;Regionalverband Weser-Ems, z.Hd. Thomas Nappe;Alte Fleiwa 2a;26121;Oldenburg;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
;70089;NCC Design GmbH;;;;;;DE274595817;;Veit-Sto<74>-Str. 20;90579;Langenzenn;DE;;;;;;091019040040;;info@ncc-licht.de;;;;;;;;;;;;;
|
10094;;Kl<4B>ranlage Harlesiel der Stadt Wittmund;;;;;;;;Kurt-Schwitters-Platz 1;26409;Wittmund;DE;;Elisabethgroden 1a;26434;Wangerland;DE;;;rechnung@stadt.wittmund.de;;;;;;;;;;;;;
|
||||||
;70041;Nico's Baumdienst;;;;;;DE334472979;;Uhlandstr. 2;26409;Wittmund;DE;;;;;;017620723169;;nicoeilts@hotmail.com;;;;;;;;;;;;;
|
10025;;;Herr;Kai Koch;Kai;Koch;;;;Bremerstraße 25;26409;Wittmund;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
;70091;NT-SAT - Eugen Krais;;;;;;DE206681918;;Gewerbestr. 53;78054;Villingen-Schwenningen;DE;;;;;;077209592877;;e.krais@gmx.de;;;;;;;;;;;;;
|
10084;;;Herr;Werner Krautter;Werner;Krautter;;;;Ringstraße 27;27313;D<>rverden;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
;70034;OBI Bargen Heimwerkermarkt GmbH;;;;;;;;Am B<>llhamm 1;26441;Jever;DE;;;;;;;;;;;;;;;;;;;;;
|
10146;;;Herr;Helmke Kruse;Helmke;Kruse;;;;Altgarmssieler Straße 4;26434;Wangerland;DE;;;;;;;;helmke-kruse@t-online.de;;;;;;;;;;;;;
|
||||||
;70063;OBI GmbH & Co. KG, Filiale Oldenburg;;;;;;;;Ammerl<72>nder Heerstra<72>e 23-29;26129;Oldenburg;DE;;;;;;;;;;;;;;;;;;;;;
|
10112;;;Herr;Raimo Linderhaus;Raimo;Linderhaus;;;;Stumpenser M<>hle 1;26434;Wangerland;DE;;;;;;;;Raimo.L@t-online.de;rechnung@sandelcom.de;;;;;;;;;;;;
|
||||||
;70065;<3B>bVI Nooitrust (Vermessungsb<73>ro);;;;;;DE308624021;;Sch<63>tzenhofstr. 25;26441;Jever;DE;;;;;;044617468030;;info@vermessung-jever.de;;;;;;;;;;;;;
|
10143;;;Frau;Alexandra Lindner;Alexandra;Lindner;;;;M<>hlenstraße 10;26409;Wittmund-Carolinensiel;DE;;;;;;;;rechnung@sandelcom.de;alexandra.lindner78@gmx.de;;;;;;;;;;;;
|
||||||
;70085;oli.k computer und internetservice e.K.;;;;;;DE190622868;;Ulrichstr. 5;01326;Dresden;DE;;;;;;'+493518988045;;service@okluge.de;;;;;;;;;;;;;
|
10089;;;Herr;Arndt Lowien;Arndt;Lowien;;;;Neu Friederikengroden 1;26434;Wangerland;DE;;;;;;;;rechnung@sandelcom.de;;;;;;;;;;;;;
|
||||||
;70003;OMG.de GmbH;;;;;;DE213870514;;Kornkamp;26605;Aurich;DE;;;;;;04941-60445-0;;info@omg.de;;;;;;;;;;;;;
|
10077;;;Herr;Arndt Lowien;Arndt;Lowien;;;;Neu Friederikengroden 1;26434;Wangerland;DE;;;;;;;;rechnung@sandelcom.de;support@sandelcom.de;;;;;;;;;;;;
|
||||||
;70038;Projektor AG;;;;;;DE815496863;;Moltkestr. 123-131;50674;K<>ln;DE;;;;;;'+49221-719981-0;;vertrieb@projektor.ag;;;;;;;;;;;;;
|
10150;;;Frau;Madita Mattew;Madita;Mattew;;;;Neu Augustengroden 22;26434;Wangerland;DE;;;;;;'+49 1520 3373600;;madita.mattew@gmail.com;;;;;;;;;;;;;
|
||||||
;70016;reichelt elektronik GmbH & Co. KG;;;;;;DE259817039;;Elektroring 1;26452;Sande;DE;;;;;;;;;;;;;;;;;;;;;
|
10139;;Matthias Lerch;;;;;;;;Erke-Noth-Str. 12;26441;Jever;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
;70054;Re-In Retail International GmbH;;;;;;DE257660883;;Nordring 98a;90409;N<>rnberg;DE;;;;;;0911-32689888;;info@voelkner.de;;;;;;;;;;;;;
|
10147;;;Herr;Cornelius Meents;Cornelius;Meents;;;;Deichstraße 6;26409;Wittmund;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
;70045;Schrauben.Expert Michael Kr<4B>ger;;;;;32/096/6053/1;DE287167597;;Hauptstr. 129;53557;Bad H<>nningen;DE;;;;;;'+49263578869081;;info@schrauben-expert.de;;;;;;;;;;;;;
|
10111;;Meinen GmbH Bauunternehmen;;;;;;;;Leepenser Weg 18;26409;Wittmund;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
;70067;Score SB Station Wittmund;;;;;;;;Isumser Stra<EFBFBD>e 9;26409;Wittmund;DE;;;;;;;;;;;;;;;;;;;;;
|
10125;;;Herr;Bernd Melchers;Bernd;Melchers;;;;Schenumer Weg 14;26441;Jever;DE;;;;;;;;bernd.melchers@ewetel.net;rechnung@sandelcom.de;;;;;;;;;;;;
|
||||||
;70053;SeneticGmbH;;;;;;;;Kronstadter Str. 4;81677;M<>nchen;DE;;;;;;;;customerservice@senetic.com;;;;;;;;;;;;;
|
10141;;;Herr;J<>rg Meyer;J<>rg;Meyer;;;;Bahnhofstraße 39;26409;Wittmund-Carolinensiel;DE;;;;;;0176 25318588;;j.emely1@web.de;rechnung@sandelcom.de;;;;;;;;;;;;
|
||||||
;70090;ServiceNet EDV-Vertriebs GmbH;;;;;;DE812203871;;Provinzialstr. 40;53859;Niederkassel;DE;;;;;;;;shop@lichtleiterkabel.com;;;;;;;;;;;;;
|
10133;;;Herr;Martin Mick;Martin;Mick;;;;Gammens 3;26434;Wangerland;DE;;;;;;?+49 160 96261462?;;rechnung@sandelcom.de;mick-martin88@web.de;;;;;;;;;;;;
|
||||||
;70024;Shenzhen Nanxing Technology Co.,Ltd;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
10132;;;Herr;Gerd M<>ller;Gerd;M<>ller;;;;Neu Augstengroden 3;26434;Wangerland;DE;;;;;;;;gerd69mueller@t-online.de;rechnung@sandelcom.de;;;;;;;;;;;;
|
||||||
;70086;Smartphoneklinik M<>nchen;;;;;;DE319972027;;Herzog-Wilhelm-Str. 1;80331;M<>nchen;DE;;;;;;'+49(0)8941111585;;info@smartphoneklinik-muenchen.de;;;;;;;;;;;;;
|
10134;;;Herr;Hans-Gerd M<>ller;Hans-Gerd;M<>ller;;;;Wayens 2;26434;Wangerland;DE;;;;;;?+49 171 5591583?;;rechnung@sandelcom.de;;;;;;;;;;;;;
|
||||||
;70066;SMS.to Intergo Telecom Ltd;;;;;;CY10352115X;;Nikolaou Nikolaidi 3;8010;Paphos;CY;;;;;;;;;;;;;;;;;;;;;
|
10021;;Naturschutzhof Wittmunder Wald e.V.;;;;;;;;Auricher Straße 92;26409;Wittmund;DE;;;;;;;;glaum@wittmunder-wald.de;;Onno Poppinga;Herr;Onno;Poppinga;poppinga@projektfoerderung.de;;Katharina Glaum;Frau;Katharina;Glaum;poppinga@projektfoerderung.de;
|
||||||
;70057;Software-Monkeyz e.K.;;;;;20927305136;DE311594614;;Gro<72>enhainer Stra<72>e 4A;01609;Gr<47>ditz;DE;;;;;;;;;;;;;;;;;;;;;
|
10004;;Naturschutzstiftung Friesland Wittmund Wilhelmshaven;;;;;;;z. Hd. Frau Dr. Ilka Strubelt;Bahnhofstraße 29;26316;Varel;DE;;;;;;;;info@naturschutzstiftung-fww.de;rechnung@sandelcom.de;;;;;;;;;;;;
|
||||||
;70056;Stadt Wittmund;;;;;;;;Kurt-Schwitters-Platz 1;26409;Wittmund;DE;;;;;;044621983-0;;rathaus@stadt.wittmund.de;;;;;;;;;;;;;
|
10023;;Nico's Baumdienst;;;;;54/111/62323;DE334472979;;Uhlandstraße 2;26409;Wittmund;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
;70051;star-Tankstelle;;;;;;;;Bloherfelder Stra<72>e 126;26129;Oldenburg;DE;;;;;;0441-53717;;;;;;;;;;;;;;;
|
10131;;;Herr;Henry Ninnemann;Henry;Ninnemann;;;;Neu Augustengroden 9;26434;Wangerland;DE;;;;;;01738214264;;h.ninnemann@web.de;rechnung@sandelcom.de;;;;;;;;;;;;
|
||||||
;70009;TecDev Germany;;;;;70/144/08969;;;Insterburger Str. 11;26316;Varel;DE;;;;;;;;thommy.taube@tecdev-germany.de;;;;;;;;;;;;;
|
10016;;Nordseebad Carolinensiel-Harlesiel GmbH;;;;;;DE190348724;;Bahnhofstrasse 40;26409;Wittmund;DE;;;;;;;;buchhaltung@carolinensiel.de;;Stephan J<>rgens;Herr;Stephan;J<>rgens;buchhaltung@carolinensiel.de;;;;;;;
|
||||||
;70075;Telef<65>nica Germany GmbH & Co. OHG;;;;;;DE811889638;;Georg-Brauchle-Ring 50;80992;M<>nchen;DE;;;;;;;;business-team@telefonica.com;;;;;;;;;;;;;
|
10010;;OMG.de GmbH;;;;;;;;Kornkamp 40;26605;Aurich;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
;70002;Telekom DE GmbH;;;;;;DE122265872;;Landgrabenweg 151;53227;Bonn;DE;;;;;;08003302202;;;;;;;;;;;;;;;
|
10022;;;Herr;Matthias Ott;Matthias;Ott;;;;Auf dem Beul 6;57489;Drolshagen;DE;;;;;;;;info@dornumersiel-ferienhaus.de;rechnung@sandelcom.de;;;;;;;;;;;;
|
||||||
;70055;TEQTRADER GmbH;;;;;;DE351057424;;Scheveninger Str. 9A;12359;Berlin;DE;;;;;;'+49(0)30220136580;;info@teqtrader.de;;;;;;;;;;;;;
|
10107;;Poppinga Obsthof;;;;;;;z. Hd. Onno Poppinga;Accumer Riege 19;26553;Dornum;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
;70022;Thomann GmbH;;;;;;DE257375233;;Hans-Thomann-Str. 1;96138;Burgebrach;DE;;;;;;09546/922366;;info@thomann.de;;;;;;;;;;;;;
|
10091;;;Herr;Joke Pouliart;Joke;Pouliart;;;;Friedrichsgroden 3;26409;Wittmund;DE;;;;;;;;rechnung@sandelcom.de;;;;;;;;;;;;;
|
||||||
;70070;TS Wittmund GmbH;;;;;;;;Esenser Str. 58;26409;Wittmund;DE;;;;;;04462-2210;;;;;;;;;;;;;;;
|
10127;;;Herr;Christian Rauch;Christian;Rauch;;;;Brinksweg 4;26409;Wittmund;DE;;;;;;;;info@beratung-rauch.de;;;;;;;;;;;;;
|
||||||
;70007;Varia System GmbH;;;;;;DE279278184;;Dr.-Salvador-Allende-Str. 191;09119;Chemnitz;DE;;;;;;'+49(371)4007682;;info@varia.org;;;;;;;;;;;;;
|
10148;;;Herr;J<>rg Richter;J<>rg;Richter;;;;Friedrich-Augustengroden 15;26434;Wangerland;DE;;;;;;;;rechnung@sandelcom.de;Galabau-richter@ewe.net;;;;;;;;;;;;
|
||||||
;70080;VBG Unfallversicherung;;;;;;;;;22281;Hamburg;DE;;;;;;;;;;;;;;;;;;;;;
|
10026;;;Herr;Peter Sander;Peter;Sander;;;;Wittmunder Straße 24B;26409;Wittmund;DE;;;;;;;;rechnung@sandelcom.de;;;;;;;;;;;;;
|
||||||
;70081;WallboxCenter GmbH;;;;;;DE351498210;;Heegstr. 55c;45356;Essen;DE;;;;;;'+49(0)20184672470;;sales@wallboxcenter.de;;;;;;;;;;;;;
|
10008;;;Frau;Bettina Schild;Bettina;Schild;;;;Elisabethgroden 3;26434;Wangerland;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
;70019;WILTAnet GmbH;;;;;;DE326933718;;Lisa-Meitner-Str. 5;52511;Geilenkirchen;DE;;;;;;02451-4823635;;info@willisat.de;;;;;;;;;;;;;
|
10055;;;Herr;Ingo Schild;Ingo;Schild;;;;Elisabethgroden 3c;26434;Wangerland;DE;;;;;;;;rechnung@sandelcom.de;support@sandelcom.de;;;;;;;;;;;;
|
||||||
;70029;WIRmachenDRUCK GmbH;;;;;;DE261317770;;M<>hlbachstr. 7;71522;Backnang;DE;;;;;;'+49(0)711/995982-20;;info@wir-machen-druck.de;;;;;;;;;;;;;
|
10002;;;Herr;Norbert Schmied;Norbert;Schmied;;;;Strandbadstr. 9;42929;Wermelskirchen;DE;;Schollenpadd 5;26409;Wittmund;DE;0178 5174585;02193 2443;rechnung@sandelcom.de;norbert.schmied@t-online.de;;;;;;;;;;;;
|
||||||
;70033;WLAN-Discount24.de;;;;;;;;Von-Bargen-Stra<72>e 34;22041;Hamburg;DE;;;;;;;;;;;;;;;;;;;;;
|
10092;;;Herr;Hauke Schr<68>der;Hauke;Schr<68>der;;;;Berdumer Altengroden 5;26409;Wittmund;DE;;;;;;;;rechnung@sandelcom.de;info@sandelcom.de;;;;;;;;;;;;
|
||||||
|
10121;;Stadt Wiesmoor;;;;;;;z. Hd. Herrn Beekmann;Hauptstraße 193;26639;Wiesmoor;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
10053;;Stadt Wittmund;;;;;;;;Kurt-Schwitters Platz 1;26409;Wittmund;DE;;;;;;;;;;Klaus Ulferts;;Klaus;Ulferts;rechnung@stadt.wittmund.de;;Joachim Wulf;;Joachim;Wulf;;
|
||||||
|
10072;;;Frau;Uta Steffens;Uta;Steffens;;;;Enno-Ludwigs-Groden 6;26409;Wittmund;DE;;;;;;;;rechnung@sandelcom.de;;;;;;;;;;;;;
|
||||||
|
10001;;Verein f<>r Gesundheit und Selbsthilfe;;;;;;;;Kurt-Schwitters-Platz 2;26409;Wittmund;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
10065;;Vermietergemeinschaft Schollenpadd 2;;;;;;;;Bahlenstraße 5;31603;Diepenau;DE;;Schollenpadd 2;26409;Wittmund;DE;;;rechnung@sandelcom.de;Juergen.Tieker@t-online.de;J<>rgen Tieker;Herr;J<>rgen;Tieker;rechnung@sandelcom.de;;;;;;;
|
||||||
|
10083;;;Herr;Cornelis von Vliet;Cornelis;von Vliet;;;;Algershausenerstraße 43;26409;Wittmund;DE;;Algershausenerstraße 43;26409;Wittmund;DE;;;rechnung@sandelcom.de;;;;;;;;;;;;;
|
||||||
|
10103;;;Herr;Josef Weber;Josef;Weber;;;;Neu Augustengroden 12;26434;Wangerland;DE;;;;;;;;josefweb@gmx.de;rechnung@sandelcom.de;;;;;;;;;;;;
|
||||||
|
10119;;;Herr;Joachim Weerts;Joachim;Weerts;;;;Wegsh<73>rne 2;26434;Wangerland;DE;;;;;;;;j.weerts@wittmunderbau.de;rechnung@sandelcom.de;;;;;;;;;;;;
|
||||||
|
10011;;;Herr;Volker Weinberger;Volker;Weinberger;;;;Gr<47>newalds 28;79618;Rheinfelden;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
10013;;wireless GmbH;;;;;;DE189712696;;Heerstraße 55a;78628;Rottweil;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
10126;;Wohnpark Harlingerland;;;;;;;Haustechnik;Agnes-von-Rietberg-Straße 2;26409;Wittmund;DE;;Agnes-von-Rietberg-Straße 2;26409;Wittmund;DE;;;ht2-harlingerland@peterjanssengruppe.de;;Haustechnik;;Haustechnik;;ht2-harlingerland@peterjanssengruppe.de;;;;;;;
|
||||||
|
10088;;;Herr;Uwe Wolters;Uwe;Wolters;;;;Schanzweg Ost 5;26441;Jever;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
10085;;Zahnarztpraxis Heike Meinen;;;;;;;;Leepenser Weg 18;26409;Wittmund;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
10018;;;Herr;Darius Zibikas;Darius;Zibikas;;;;Emdener Straße 4;26409;Wittmund;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
10012;;;Herr;Ingo Zinnel;Ingo;Zinnel;;;;Eichelstrasse 65;63667;Nidda;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
10123;;Zusammenstromen GmbH;;;;;;;;Holzdamm 40;20099;Hamburg;DE;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
@@ -16,29 +16,24 @@ fs.createReadStream(path.join(__dirname, "../../input/customers.csv"), "utf-8")
|
|||||||
//console.log(rows)
|
//console.log(rows)
|
||||||
|
|
||||||
rows.forEach(i => {
|
rows.forEach(i => {
|
||||||
if(i.Firmenname) {
|
let item = {
|
||||||
let item = {
|
customerNumber : Number(i.Kundennummer),
|
||||||
customerNumber : Number(i.Kundennummer),
|
isCompany: i.Firmenname ? true : false,
|
||||||
tenant: tenant,
|
tenant: tenant,
|
||||||
name: i.Firmenname,
|
name: i.Firmenname ? i.Firmenname : i.Kontakt,
|
||||||
infoData: {
|
infoData: {
|
||||||
zip: i["PLZ 1"],
|
zip: i["PLZ 1"],
|
||||||
city: i["Ort 1"],
|
city: i["Ort 1"],
|
||||||
ustid: i["Umsatzsteuer ID"],
|
ustid: i["Umsatzsteuer ID"],
|
||||||
street: i["Straße 1"],
|
street: i["Straße 1"],
|
||||||
special: i["Adresszusatz 1"],
|
special: i["Adresszusatz 1"],
|
||||||
country: i["Land 1"],
|
country: i["Land 1"],
|
||||||
tel: i["Telefon 1"],
|
tel: i["Telefon 1"],
|
||||||
email: i["E-Mail 1"]
|
email: i["E-Mail 1"]
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
customers.push(item)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
customers.push(item)
|
||||||
|
|
||||||
|
|
||||||
})
|
})
|
||||||
|
|
||||||
rows.forEach(i => {
|
rows.forEach(i => {
|
||||||
|
|||||||
29
spaces/components/ProfileDropdown.vue
Normal file
29
spaces/components/ProfileDropdown.vue
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
<script setup>
|
||||||
|
const dataStore = useDataStore()
|
||||||
|
const supabase = useSupabaseClient()
|
||||||
|
//const tenants = ref(dataStore.getOwnProfile ? dataStore.getOwnProfile.tenants : [])
|
||||||
|
//const tenant = ref(dataStore.currentTenant)
|
||||||
|
|
||||||
|
const selectedProfile = ref(dataStore.activeProfile.id)
|
||||||
|
console.log(dataStore.ownProfiles)
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<USelectMenu
|
||||||
|
:options="dataStore.ownProfiles"
|
||||||
|
value-attribute="id"
|
||||||
|
class="w-40"
|
||||||
|
@change="dataStore.changeProfile(selectedProfile)"
|
||||||
|
v-model="selectedProfile"
|
||||||
|
>
|
||||||
|
<UButton color="gray" variant="ghost" :class="[open && 'bg-gray-50 dark:bg-gray-800']" class="w-full">
|
||||||
|
<UAvatar :alt="dataStore.tenants.find(i => dataStore.getProfileById(selectedProfile).tenant === i.id).name" size="md" />
|
||||||
|
|
||||||
|
<span class="truncate text-gray-900 dark:text-white font-semibold">{{dataStore.tenants.find(i => dataStore.getProfileById(selectedProfile).tenant === i.id).name}}</span>
|
||||||
|
</UButton>
|
||||||
|
|
||||||
|
<template #option="{option}">
|
||||||
|
{{dataStore.tenants.find(i => i.id === option.tenant).name}}
|
||||||
|
</template>
|
||||||
|
</USelectMenu>
|
||||||
|
</template>
|
||||||
@@ -1,25 +0,0 @@
|
|||||||
<script setup>
|
|
||||||
const dataStore = useDataStore()
|
|
||||||
|
|
||||||
const tenants = ref(dataStore.getOwnProfile ? dataStore.getOwnProfile.tenants : [])
|
|
||||||
const tenant = ref(dataStore.currentTenant)
|
|
||||||
|
|
||||||
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<template>
|
|
||||||
<USelectMenu
|
|
||||||
:options="tenants"
|
|
||||||
value-attribute="id"
|
|
||||||
option-attribute="name"
|
|
||||||
class="w-40"
|
|
||||||
@change="dataStore.changeTenant"
|
|
||||||
v-model="dataStore.currentTenant"
|
|
||||||
>
|
|
||||||
<UButton color="gray" variant="ghost" :class="[open && 'bg-gray-50 dark:bg-gray-800']" class="w-full">
|
|
||||||
<UAvatar :alt="tenants.find(i => i.id === dataStore.currentTenant).name" size="md" />
|
|
||||||
|
|
||||||
<span class="truncate text-gray-900 dark:text-white font-semibold">{{ tenants.find(i => i.id === dataStore.currentTenant).name }}</span>
|
|
||||||
</UButton>
|
|
||||||
</USelectMenu>
|
|
||||||
</template>
|
|
||||||
@@ -59,9 +59,9 @@ const items = computed(() => [
|
|||||||
<template>
|
<template>
|
||||||
<UDropdown mode="hover" :items="items" :ui="{ width: 'w-full', item: { disabled: 'cursor-text select-text' } }" :popper="{ strategy: 'absolute', placement: 'top' }" class="w-full">
|
<UDropdown mode="hover" :items="items" :ui="{ width: 'w-full', item: { disabled: 'cursor-text select-text' } }" :popper="{ strategy: 'absolute', placement: 'top' }" class="w-full">
|
||||||
<template #default="{ open }">
|
<template #default="{ open }">
|
||||||
<UButton color="gray" variant="ghost" class="w-full" :label="dataStore.getProfileById(user.id).fullName" :class="[open && 'bg-gray-50 dark:bg-gray-800']">
|
<UButton color="gray" variant="ghost" class="w-full" :label="dataStore.activeProfile.fullName" :class="[open && 'bg-gray-50 dark:bg-gray-800']">
|
||||||
<template #leading>
|
<template #leading>
|
||||||
<UAvatar :alt="dataStore.getProfileById(user.id) ? dataStore.getProfileById(user.id).fullName : ''" size="xs" />
|
<UAvatar :alt="dataStore.activeProfile ? dataStore.activeProfile.fullName : ''" size="xs" />
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<template #trailing>
|
<template #trailing>
|
||||||
@@ -76,7 +76,7 @@ const items = computed(() => [
|
|||||||
Angemeldet als
|
Angemeldet als
|
||||||
</p>
|
</p>
|
||||||
<p class="truncate font-medium text-gray-900 dark:text-white">
|
<p class="truncate font-medium text-gray-900 dark:text-white">
|
||||||
{{dataStore.getProfileById(user.id).email}}
|
{{dataStore.activeProfile.email}}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
31
spaces/composables/useSearch.js
Normal file
31
spaces/composables/useSearch.js
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
|
||||||
|
|
||||||
|
export const useSearch = (searchString,items) => {
|
||||||
|
const dataStore = useDataStore()
|
||||||
|
|
||||||
|
if(!searchString) {
|
||||||
|
return items
|
||||||
|
}
|
||||||
|
|
||||||
|
items = items.map(item => {
|
||||||
|
|
||||||
|
return {
|
||||||
|
...item,
|
||||||
|
customer: dataStore.getCustomerById(item.customer)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
console.log(items)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
return items.filter(i => JSON.stringify(i).includes(searchString))
|
||||||
|
|
||||||
|
/*return items.filter(item => {
|
||||||
|
return Object.values(item).some((value) => {
|
||||||
|
return String(value).toLowerCase().includes(searchString.toLowerCase())
|
||||||
|
})
|
||||||
|
})*/
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
<script setup>
|
<script setup>
|
||||||
|
|
||||||
import TenantDropdown from "~/components/TenantDropdown.vue";
|
import TenantDropdown from "~/components/ProfileDropdown.vue";
|
||||||
|
|
||||||
const dataStore = useDataStore()
|
const dataStore = useDataStore()
|
||||||
const colorMode = useColorMode()
|
const colorMode = useColorMode()
|
||||||
@@ -435,7 +435,7 @@ const footerLinks = [/*{
|
|||||||
<UDashboardPanel :width="250" :resizable="{ min: 200, max: 300 }" collapsible>
|
<UDashboardPanel :width="250" :resizable="{ min: 200, max: 300 }" collapsible>
|
||||||
<UDashboardNavbar class="!border-transparent" :ui="{ left: 'flex-1' }">
|
<UDashboardNavbar class="!border-transparent" :ui="{ left: 'flex-1' }">
|
||||||
<template #left>
|
<template #left>
|
||||||
<TenantDropdown class="w-full" />
|
<ProfileDropdown class="w-full" />
|
||||||
</template>
|
</template>
|
||||||
</UDashboardNavbar>
|
</UDashboardNavbar>
|
||||||
|
|
||||||
|
|||||||
@@ -9,6 +9,19 @@ const itemInfo = ref({
|
|||||||
resources: []
|
resources: []
|
||||||
})
|
})
|
||||||
|
|
||||||
|
const mapResources = () => {
|
||||||
|
itemInfo.value.resources.map(resource => {
|
||||||
|
|
||||||
|
|
||||||
|
return {
|
||||||
|
id: resource.id,
|
||||||
|
type: resource.type
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
const setupPage = () => {
|
const setupPage = () => {
|
||||||
if(route.query.start) itemInfo.value.start = route.query.start.replace(" ", "+")
|
if(route.query.start) itemInfo.value.start = route.query.start.replace(" ", "+")
|
||||||
@@ -47,17 +60,18 @@ setupPage()
|
|||||||
>
|
>
|
||||||
<USelectMenu
|
<USelectMenu
|
||||||
v-model="itemInfo.resources"
|
v-model="itemInfo.resources"
|
||||||
:options="dataStore.getResources"
|
:options="dataStore.getResourcesList"
|
||||||
option-attribute="title"
|
option-attribute="title"
|
||||||
value-attribute="id"
|
value-attribute="id"
|
||||||
multiple
|
multiple
|
||||||
@change=""
|
onChange="mapResources"
|
||||||
>
|
>
|
||||||
<template #label>
|
<template #label>
|
||||||
<span v-if="itemInfo.resources.length == 0">Keine Ressourcen ausgewählt</span>
|
<span v-if="itemInfo.resources.length == 0">Keine Ressourcen ausgewählt</span>
|
||||||
<span v-else >{{ itemInfo.resources.length }} ausgewählt</span>
|
<span v-else >{{ itemInfo.resources.length }} ausgewählt</span>
|
||||||
</template>
|
</template>
|
||||||
</USelectMenu>
|
</USelectMenu>
|
||||||
|
{{dataStore.getResourcesList}}
|
||||||
</UFormGroup>
|
</UFormGroup>
|
||||||
<UFormGroup
|
<UFormGroup
|
||||||
label="Titel:"
|
label="Titel:"
|
||||||
|
|||||||
@@ -59,6 +59,8 @@
|
|||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
|
|
||||||
|
import {useSearch} from "~/composables/useSearch.js";
|
||||||
|
|
||||||
definePageMeta({
|
definePageMeta({
|
||||||
middleware: "auth"
|
middleware: "auth"
|
||||||
})
|
})
|
||||||
@@ -124,7 +126,7 @@ const columns = computed(() => templateColumns.filter((column) => selectedColumn
|
|||||||
|
|
||||||
const searchString = ref('')
|
const searchString = ref('')
|
||||||
|
|
||||||
const filteredRows = computed(() => {
|
/*const filteredRows = computed(() => {
|
||||||
if(!searchString.value) {
|
if(!searchString.value) {
|
||||||
return dataStore.contacts
|
return dataStore.contacts
|
||||||
}
|
}
|
||||||
@@ -134,7 +136,12 @@ const filteredRows = computed(() => {
|
|||||||
return String(value).toLowerCase().includes(searchString.value.toLowerCase())
|
return String(value).toLowerCase().includes(searchString.value.toLowerCase())
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
})*/
|
||||||
|
|
||||||
|
const filteredRows = computed(() => {
|
||||||
|
return useSearch(searchString.value, dataStore.contacts)
|
||||||
})
|
})
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped>
|
<style scoped>
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ const tabItems = computed(() => {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: "Vorschau",
|
label: "Vorschau",
|
||||||
disabled: !itemInfo.value.customer && !itemInfo.value.contact
|
disabled: !itemInfo.value.customer
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
})
|
})
|
||||||
@@ -259,7 +259,10 @@ const getDocumentData = () => {
|
|||||||
//Compile Start & EndText
|
//Compile Start & EndText
|
||||||
const templateStartText = Handlebars.compile(itemInfo.value.startText);
|
const templateStartText = Handlebars.compile(itemInfo.value.startText);
|
||||||
const templateEndText = Handlebars.compile(itemInfo.value.endText);
|
const templateEndText = Handlebars.compile(itemInfo.value.endText);
|
||||||
console.log(templateStartText({vorname: contactData.firstName, nachname: contactData.lastName}))
|
console.log(templateStartText({
|
||||||
|
vorname: contactData ? contactData.firstName : "",
|
||||||
|
nachname: contactData ? contactData.lastName : ""
|
||||||
|
}))
|
||||||
console.log(templateEndText({zahlungsziel_in_tagen: 14}))
|
console.log(templateEndText({zahlungsziel_in_tagen: 14}))
|
||||||
|
|
||||||
|
|
||||||
@@ -289,7 +292,10 @@ const getDocumentData = () => {
|
|||||||
title: itemInfo.value.title,
|
title: itemInfo.value.title,
|
||||||
description: itemInfo.value.description,
|
description: itemInfo.value.description,
|
||||||
endText: templateEndText({zahlungsziel_in_tagen: itemInfo.value.paymentDays}),
|
endText: templateEndText({zahlungsziel_in_tagen: itemInfo.value.paymentDays}),
|
||||||
startText: templateStartText({vorname: contactData.firstName, nachname: contactData.lastName}),
|
startText: templateStartText({
|
||||||
|
vorname: contactData ? contactData.firstName : "",
|
||||||
|
nachname: contactData ? contactData.lastName : ""
|
||||||
|
}),
|
||||||
rows: rows,
|
rows: rows,
|
||||||
total: documentTotal.value
|
total: documentTotal.value
|
||||||
}
|
}
|
||||||
@@ -504,9 +510,11 @@ setupPage()
|
|||||||
class="flex-auto"
|
class="flex-auto"
|
||||||
>
|
>
|
||||||
<UButton
|
<UButton
|
||||||
:color="itemInfo.contact ? 'primary' : 'rose'"
|
color="none"
|
||||||
variant="outline"
|
variant="outline"
|
||||||
class="flex-1 justify-between">
|
class="flex-1 justify-between"
|
||||||
|
:disabled="!itemInfo.customer"
|
||||||
|
>
|
||||||
{{dataStore.getContactById(itemInfo.contact) ? dataStore.getContactById(itemInfo.contact).fullName : "Kein Kontakt ausgewählt"}}
|
{{dataStore.getContactById(itemInfo.contact) ? dataStore.getContactById(itemInfo.contact).fullName : "Kein Kontakt ausgewählt"}}
|
||||||
|
|
||||||
<UIcon name="i-heroicons-chevron-right-20-solid" class="w-5 h-5 transition-transform text-gray-400 dark:text-gray-500" :class="['transform rotate-90']" />
|
<UIcon name="i-heroicons-chevron-right-20-solid" class="w-5 h-5 transition-transform text-gray-400 dark:text-gray-500" :class="['transform rotate-90']" />
|
||||||
|
|||||||
@@ -20,7 +20,8 @@ const itemInfo = ref({
|
|||||||
infoData: {
|
infoData: {
|
||||||
country: "Deutschland"
|
country: "Deutschland"
|
||||||
},
|
},
|
||||||
active: true
|
active: true,
|
||||||
|
isCompany: true
|
||||||
})
|
})
|
||||||
|
|
||||||
//Functions
|
//Functions
|
||||||
@@ -225,6 +226,13 @@ setupPage()
|
|||||||
/>
|
/>
|
||||||
</UFormGroup>
|
</UFormGroup>
|
||||||
</UTooltip>
|
</UTooltip>
|
||||||
|
<UFormGroup
|
||||||
|
label="Firmenkunde:"
|
||||||
|
>
|
||||||
|
<UCheckbox
|
||||||
|
v-model="itemInfo.isCompany"
|
||||||
|
/>
|
||||||
|
</UFormGroup>
|
||||||
<UFormGroup
|
<UFormGroup
|
||||||
label="Notizen:"
|
label="Notizen:"
|
||||||
>
|
>
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
<UDashboardNavbar title="Kunden" :badge="filteredRows.length">
|
<UDashboardNavbar title="Kunden" :badge="filteredRows.length">
|
||||||
<template #right>
|
<template #right>
|
||||||
<UInput
|
<UInput
|
||||||
ref="searchinput"
|
id="searchinput"
|
||||||
v-model="searchString"
|
v-model="searchString"
|
||||||
icon="i-heroicons-funnel"
|
icon="i-heroicons-funnel"
|
||||||
autocomplete="off"
|
autocomplete="off"
|
||||||
@@ -45,6 +45,10 @@
|
|||||||
@select="(i) => router.push(`/customers/show/${i.id}`) "
|
@select="(i) => router.push(`/customers/show/${i.id}`) "
|
||||||
:empty-state="{ icon: 'i-heroicons-circle-stack-20-solid', label: 'Keine Kunden anzuzeigen' }"
|
:empty-state="{ icon: 'i-heroicons-circle-stack-20-solid', label: 'Keine Kunden anzuzeigen' }"
|
||||||
>
|
>
|
||||||
|
<template #isCompany-data="{row}">
|
||||||
|
<span v-if="row.isCompany">Firmenkunden</span>
|
||||||
|
<span v-else>Privatkunde</span>
|
||||||
|
</template>
|
||||||
<template #active-data="{row}">
|
<template #active-data="{row}">
|
||||||
<span v-if="row.active" class="text-primary-500">Aktiv</span>
|
<span v-if="row.active" class="text-primary-500">Aktiv</span>
|
||||||
<span v-else class="text-rose-500">Gesperrt</span>
|
<span v-else class="text-rose-500">Gesperrt</span>
|
||||||
@@ -85,6 +89,11 @@ const templateColumns = [
|
|||||||
label: "Name",
|
label: "Name",
|
||||||
sortable: true
|
sortable: true
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
key: "isCompany",
|
||||||
|
label: "Typ",
|
||||||
|
sortable: true
|
||||||
|
},
|
||||||
{
|
{
|
||||||
key: "notes",
|
key: "notes",
|
||||||
label: "Notizen",
|
label: "Notizen",
|
||||||
|
|||||||
@@ -81,8 +81,12 @@ setupPage()
|
|||||||
<div
|
<div
|
||||||
v-if="item.label === 'Informationen'"
|
v-if="item.label === 'Informationen'"
|
||||||
>
|
>
|
||||||
|
<div class="truncate">
|
||||||
|
<p v-if="currentItem.sellingPrice">Verkaufspreis: {{String(Number(currentItem.sellingPrice).toFixed(2)).replace(".",",")}} €</p>
|
||||||
|
<p>Beschreibung:</p>
|
||||||
|
<pre>{{currentItem.description}}</pre>
|
||||||
|
</div>
|
||||||
|
|
||||||
<span v-if="currentItem.sellingPrice">Verkaufspreis: {{String(Number(currentItem.sellingPrice).toFixed(2)).replace(".",",")}} €<br></span>
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
|
|||||||
2
spaces/pages/vendors/index.vue
vendored
2
spaces/pages/vendors/index.vue
vendored
@@ -2,7 +2,7 @@
|
|||||||
<UDashboardNavbar title="Lieferanten" :badge="filteredRows.length">
|
<UDashboardNavbar title="Lieferanten" :badge="filteredRows.length">
|
||||||
<template #right>
|
<template #right>
|
||||||
<UInput
|
<UInput
|
||||||
ref="searchinput"
|
id="searchinput"
|
||||||
v-model="searchString"
|
v-model="searchString"
|
||||||
icon="i-heroicons-funnel"
|
icon="i-heroicons-funnel"
|
||||||
autocomplete="off"
|
autocomplete="off"
|
||||||
|
|||||||
@@ -445,10 +445,10 @@ const setState = async (newState) => {
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<template #start-data="{row}">
|
<template #start-data="{row}">
|
||||||
{{dayjs(row.start, "HH:mm:ssZ").format("HH:mm")}} Uhr
|
{{dayjs(row.start, "HH:mm:ss").format("HH:mm")}} Uhr
|
||||||
</template>
|
</template>
|
||||||
<template #end-data="{row}">
|
<template #end-data="{row}">
|
||||||
{{dayjs(row.end, "HH:mm:ssZ").format("HH:mm")}} Uhr
|
{{dayjs(row.end, "HH:mm:ss").format("HH:mm")}} Uhr
|
||||||
</template>
|
</template>
|
||||||
<template #duration-data="{row}">
|
<template #duration-data="{row}">
|
||||||
{{getDuration(row).composed}}
|
{{getDuration(row).composed}}
|
||||||
|
|||||||
@@ -143,6 +143,9 @@ export const useDataStore = defineStore('data', () => {
|
|||||||
|
|
||||||
|
|
||||||
const profiles = ref([])
|
const profiles = ref([])
|
||||||
|
const ownProfiles = ref([])
|
||||||
|
const activeProfile = ref([])
|
||||||
|
const tenants = ref([])
|
||||||
const currentTenant = ref(null)
|
const currentTenant = ref(null)
|
||||||
const events = ref([])
|
const events = ref([])
|
||||||
const customers = ref([])
|
const customers = ref([])
|
||||||
@@ -180,6 +183,7 @@ export const useDataStore = defineStore('data', () => {
|
|||||||
const texttemplates =ref([])
|
const texttemplates =ref([])
|
||||||
const services =ref([])
|
const services =ref([])
|
||||||
const serviceCategories =ref([])
|
const serviceCategories =ref([])
|
||||||
|
const resources =ref([])
|
||||||
|
|
||||||
|
|
||||||
const rights = ref({
|
const rights = ref({
|
||||||
@@ -241,26 +245,54 @@ export const useDataStore = defineStore('data', () => {
|
|||||||
])
|
])
|
||||||
|
|
||||||
async function initializeData (userId) {
|
async function initializeData (userId) {
|
||||||
let profile = (await supabase.from("profiles").select().eq("user",userId).single()).data
|
|
||||||
|
|
||||||
currentTenant.value = profile.tenant
|
let profileconnections = (await supabase.from("profileconnections").select()).data
|
||||||
|
let profiles = (await supabase.from("profiles").select()).data
|
||||||
|
let profileId = profileconnections.find(i => i.active).profile_id
|
||||||
|
activeProfile.value = profiles.find(i => i.id === profileId)
|
||||||
|
currentTenant.value = activeProfile.value.tenant
|
||||||
|
|
||||||
await fetchData()
|
await fetchData()
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async function changeTenant() {
|
async function changeProfile(newActiveProfileId) {
|
||||||
loaded.value = false
|
loaded.value = false
|
||||||
await clearStore()
|
|
||||||
await fetchData()
|
|
||||||
router.push("/")
|
|
||||||
loaded.value = true
|
|
||||||
|
|
||||||
|
let profileconnections = (await supabase.from("profileconnections").select()).data
|
||||||
|
|
||||||
|
let oldActiveProfileId = profileconnections.find(i => i.active).profile_id
|
||||||
|
|
||||||
|
const {error} = await supabase.from("profileconnections").update({active: true}).eq("profile_id", newActiveProfileId)
|
||||||
|
|
||||||
|
if(error) {
|
||||||
|
console.log(error)
|
||||||
|
} else {
|
||||||
|
const {error} = await supabase.from("profileconnections").update({active: false}).eq("profile_id", oldActiveProfileId)
|
||||||
|
|
||||||
|
if(error) {
|
||||||
|
|
||||||
|
} else {
|
||||||
|
reloadNuxtApp({
|
||||||
|
path:"/",
|
||||||
|
ttl: 10000
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
/*await clearStore()
|
||||||
|
await fetchData()
|
||||||
|
router.push("/")
|
||||||
|
loaded.value = true*/
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
async function fetchData () {
|
async function fetchData () {
|
||||||
|
await fetchOwnProfiles()
|
||||||
await fetchProfiles()
|
await fetchProfiles()
|
||||||
await fetchDocuments()
|
await fetchDocuments()
|
||||||
|
await fetchTenants()
|
||||||
await fetchOwnTenant()
|
await fetchOwnTenant()
|
||||||
await fetchEvents()
|
await fetchEvents()
|
||||||
await fetchTasks()
|
await fetchTasks()
|
||||||
@@ -297,6 +329,7 @@ export const useDataStore = defineStore('data', () => {
|
|||||||
await fetchTextTemplates()
|
await fetchTextTemplates()
|
||||||
await fetchServices()
|
await fetchServices()
|
||||||
await fetchServiceCategories()
|
await fetchServiceCategories()
|
||||||
|
await fetchResources()
|
||||||
loaded.value = true
|
loaded.value = true
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -305,6 +338,8 @@ export const useDataStore = defineStore('data', () => {
|
|||||||
loaded.value = false
|
loaded.value = false
|
||||||
ownTenant.value = {}
|
ownTenant.value = {}
|
||||||
profiles.value = []
|
profiles.value = []
|
||||||
|
ownProfiles.value = []
|
||||||
|
tenants.value = []
|
||||||
events.value= []
|
events.value= []
|
||||||
customers.value= []
|
customers.value= []
|
||||||
tasks.value= []
|
tasks.value= []
|
||||||
@@ -341,6 +376,7 @@ export const useDataStore = defineStore('data', () => {
|
|||||||
texttemplates.value = []
|
texttemplates.value = []
|
||||||
services.value = []
|
services.value = []
|
||||||
serviceCategories.value = []
|
serviceCategories.value = []
|
||||||
|
resources.value = []
|
||||||
}
|
}
|
||||||
|
|
||||||
function hasRight (right) {
|
function hasRight (right) {
|
||||||
@@ -395,7 +431,7 @@ export const useDataStore = defineStore('data', () => {
|
|||||||
if(dataTypes[dataType].numberRangeHolder) {
|
if(dataTypes[dataType].numberRangeHolder) {
|
||||||
|
|
||||||
const numberRange = useNumberRange(dataType)
|
const numberRange = useNumberRange(dataType)
|
||||||
if(!dataTypes[dataType].numberRangeHolder) {
|
if(!data[dataTypes[dataType].numberRangeHolder]) {
|
||||||
data[dataTypes[dataType].numberRangeHolder] = await numberRange.useNextNumber()
|
data[dataTypes[dataType].numberRangeHolder] = await numberRange.useNextNumber()
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -517,12 +553,25 @@ export const useDataStore = defineStore('data', () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async function fetchOwnTenant () {
|
async function fetchOwnTenant () {
|
||||||
ownTenant.value = (await supabase.from("tenants").select().eq('id', currentTenant.value)).data[0]
|
ownTenant.value = (await supabase.from("tenants").select().eq('id', currentTenant.value).single()).data
|
||||||
}
|
}
|
||||||
|
|
||||||
async function fetchProfiles () {
|
async function fetchProfiles () {
|
||||||
profiles.value = (await supabase.from("profiles").select('* , tenants (id, name)').eq("tenant", currentTenant.value).order("fullName")).data
|
profiles.value = (await supabase.from("profiles").select().eq("tenant",currentTenant.value).order("fullName")).data
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async function fetchOwnProfiles () {
|
||||||
|
let profiles = (await supabase.from("profiles").select().order("fullName")).data
|
||||||
|
let conns = (await supabase.from("profileconnections").select()).data.map(i => i.profile_id)
|
||||||
|
console.log(conns)
|
||||||
|
console.log(profiles.filter(i => conns.includes(i.id)))
|
||||||
|
ownProfiles.value = profiles.filter(i => conns.includes(i.id))
|
||||||
|
}
|
||||||
|
|
||||||
|
async function fetchTenants () {
|
||||||
|
tenants.value = (await supabase.from("tenants").select()).data
|
||||||
|
}
|
||||||
|
|
||||||
async function fetchBankAccounts () {
|
async function fetchBankAccounts () {
|
||||||
bankAccounts.value = (await supabase.from("bankaccounts").select().eq('tenant', currentTenant.value)).data
|
bankAccounts.value = (await supabase.from("bankaccounts").select().eq('tenant', currentTenant.value)).data
|
||||||
}
|
}
|
||||||
@@ -636,6 +685,10 @@ export const useDataStore = defineStore('data', () => {
|
|||||||
serviceCategories.value = (await supabase.from("serviceCategories").select().eq('tenant', currentTenant.value)).data
|
serviceCategories.value = (await supabase.from("serviceCategories").select().eq('tenant', currentTenant.value)).data
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async function fetchResources() {
|
||||||
|
resources.value = (await supabase.from("resources").select().eq('tenant', currentTenant.value)).data
|
||||||
|
}
|
||||||
|
|
||||||
async function fetchDocuments () {
|
async function fetchDocuments () {
|
||||||
let tempDocuments = (await supabase.from("documents").select().eq('tenant', currentTenant.value)).data
|
let tempDocuments = (await supabase.from("documents").select().eq('tenant', currentTenant.value)).data
|
||||||
|
|
||||||
@@ -844,6 +897,32 @@ export const useDataStore = defineStore('data', () => {
|
|||||||
]
|
]
|
||||||
})
|
})
|
||||||
|
|
||||||
|
const getResourcesList = computed(() => {
|
||||||
|
return [
|
||||||
|
...profiles.value.filter(i => i.tenant === currentTenant.value).map(profile => {
|
||||||
|
return {
|
||||||
|
type: 'Mitarbeiter',
|
||||||
|
title: profile.fullName,
|
||||||
|
id: profile.id
|
||||||
|
}
|
||||||
|
}),
|
||||||
|
...vehicles.value.map(vehicle => {
|
||||||
|
return {
|
||||||
|
type: 'Fahrzeug',
|
||||||
|
title: vehicle.licensePlate,
|
||||||
|
id: vehicle.id
|
||||||
|
}
|
||||||
|
}),
|
||||||
|
...inventoryitems.value.filter(i=> i.usePlanning).map(item => {
|
||||||
|
return {
|
||||||
|
type: 'Inventar',
|
||||||
|
title: item.name,
|
||||||
|
id: item.id
|
||||||
|
}
|
||||||
|
})
|
||||||
|
]
|
||||||
|
})
|
||||||
|
|
||||||
const getEvents = computed(() => {
|
const getEvents = computed(() => {
|
||||||
return [
|
return [
|
||||||
...events.value.map(event => {
|
...events.value.map(event => {
|
||||||
@@ -880,6 +959,7 @@ export const useDataStore = defineStore('data', () => {
|
|||||||
const getEventsByResource = computed(() => {
|
const getEventsByResource = computed(() => {
|
||||||
let tempEvents = []
|
let tempEvents = []
|
||||||
events.value.forEach(event => {
|
events.value.forEach(event => {
|
||||||
|
console.log(event)
|
||||||
event.resources.forEach(resource => {
|
event.resources.forEach(resource => {
|
||||||
let eventColor = ownTenant.value.calendarConfig.eventTypes.find(type => type.label === event.type).color
|
let eventColor = ownTenant.value.calendarConfig.eventTypes.find(type => type.label === event.type).color
|
||||||
|
|
||||||
@@ -894,8 +974,8 @@ export const useDataStore = defineStore('data', () => {
|
|||||||
|
|
||||||
tempEvents.push({
|
tempEvents.push({
|
||||||
...event,
|
...event,
|
||||||
resourceId: resource.type !== 'Mitarbeiter' ? `${resource.type[0]}-${resource.id}`: resource.id,
|
resourceId: /*resource.type !== 'Mitarbeiter' ? `${resource.type[0]}-${resource.id}`:*/ resource.id,
|
||||||
resourceType: resource.type,
|
resourceType: "Mitarbeiter",
|
||||||
title: title,
|
title: title,
|
||||||
borderColor: eventColor,
|
borderColor: eventColor,
|
||||||
textColor: eventColor,
|
textColor: eventColor,
|
||||||
@@ -1049,12 +1129,15 @@ export const useDataStore = defineStore('data', () => {
|
|||||||
loaded,
|
loaded,
|
||||||
ownTenant,
|
ownTenant,
|
||||||
initializeData,
|
initializeData,
|
||||||
changeTenant,
|
changeProfile,
|
||||||
uploadFiles,
|
uploadFiles,
|
||||||
hasRight,
|
hasRight,
|
||||||
|
|
||||||
//Data
|
//Data
|
||||||
profiles,
|
profiles,
|
||||||
|
ownProfiles,
|
||||||
|
activeProfile,
|
||||||
|
tenants,
|
||||||
events,
|
events,
|
||||||
customers,
|
customers,
|
||||||
tasks,
|
tasks,
|
||||||
@@ -1100,6 +1183,7 @@ export const useDataStore = defineStore('data', () => {
|
|||||||
clearStore,
|
clearStore,
|
||||||
fetchOwnTenant,
|
fetchOwnTenant,
|
||||||
fetchProfiles,
|
fetchProfiles,
|
||||||
|
fetchOwnProfiles,
|
||||||
fetchBankAccounts,
|
fetchBankAccounts,
|
||||||
fetchBankStatements,
|
fetchBankStatements,
|
||||||
fetchEvents,
|
fetchEvents,
|
||||||
@@ -1161,6 +1245,7 @@ export const useDataStore = defineStore('data', () => {
|
|||||||
getDocumentTags,
|
getDocumentTags,
|
||||||
getMeasures,
|
getMeasures,
|
||||||
getResources,
|
getResources,
|
||||||
|
getResourcesList,
|
||||||
getEvents,
|
getEvents,
|
||||||
getEventsByResource,
|
getEventsByResource,
|
||||||
getCostCentresComposed,
|
getCostCentresComposed,
|
||||||
|
|||||||
Reference in New Issue
Block a user