From fc44a3fd8d22d8893c33aba8986516e2aa8fcc76 Mon Sep 17 00:00:00 2001 From: Jean Jacques Avril Date: Wed, 16 Feb 2022 23:08:28 +0100 Subject: [PATCH] Adjusted logic to use new csv storage --- data/userdb.csv | 1228 ++++++++++++++++++++++++++++++++++++++++++- data/userdb.csv.bak | 10 + src/Keyboard.cpp | 2 + src/Rfid.cpp | 4 +- src/UserDb.cpp | 20 +- src/UserDb.h | 11 +- src/main.cpp | 56 +- 7 files changed, 1275 insertions(+), 56 deletions(-) create mode 100644 data/userdb.csv.bak diff --git a/data/userdb.csv b/data/userdb.csv index 37c5072..25d49ec 100644 --- a/data/userdb.csv +++ b/data/userdb.csv @@ -1,10 +1,1218 @@ -1,Max1,Muster,RFID,12341,1 -2,Max2,Muster,RFID,12342,1 -3,Max3,Muster,RFID,12343,1 -4,Max4,Muster,RFID,12344,1 -5,Max5,Muster,RFID,12345,1 -6,Max6,Muster,RFID,12346,1 -7,Max7,Muster,RFID,12347,1 -8,Max8,Muster,RFID,12348,1 -9,Max9,Muster,RFID,12349,1 -10,Max20,Muster,RFID,12340,1 \ No newline at end of file +1;Max1;Muster;RFID;12341;1 +2;Max2;Muster;RFID;12342;1 +3;Max3;Muster;RFID;12343;1 +4;Max4;Muster;RFID;12344;1 +5;Max5;Muster;RFID;12345;1 +6;Max6;Muster;RFID;12346;1 +7;Max7;Muster;RFID;12347;1 +8;Max8;Muster;RFID;12348;1 +9;Max9;Muster;RFID;12349;1 +10;Max10;Muster;RFID;12350;1 +11;Max11;Muster;RFID;12351;1 +12;Max12;Muster;RFID;12352;1 +13;Max13;Muster;RFID;12353;1 +14;Max14;Muster;RFID;12354;1 +15;Max15;Muster;RFID;12355;1 +16;Max16;Muster;RFID;12356;1 +17;Max17;Muster;RFID;12357;1 +18;Max18;Muster;RFID;12358;1 +19;Max19;Muster;RFID;12359;1 +20;Max20;Muster;RFID;12360;1 +21;Max21;Muster;RFID;12361;1 +22;Max22;Muster;RFID;12362;1 +23;Max23;Muster;RFID;12363;1 +24;Max24;Muster;RFID;12364;1 +25;Max25;Muster;RFID;12365;1 +26;Max26;Muster;RFID;12366;1 +27;Max27;Muster;RFID;12367;1 +28;Max28;Muster;RFID;12368;1 +29;Max29;Muster;RFID;12369;1 +30;Max30;Muster;RFID;12370;1 +31;Max31;Muster;RFID;12371;1 +32;Max32;Muster;RFID;12372;1 +33;Max33;Muster;RFID;12373;1 +34;Max34;Muster;RFID;12374;1 +35;Max35;Muster;RFID;12375;1 +36;Max36;Muster;RFID;12376;1 +37;Max37;Muster;RFID;12377;1 +38;Max38;Muster;RFID;12378;1 +39;Max39;Muster;RFID;12379;1 +40;Max40;Muster;RFID;12380;1 +41;Max41;Muster;RFID;12381;1 +42;Max42;Muster;RFID;12382;1 +43;Max43;Muster;RFID;12383;1 +44;Max44;Muster;RFID;12384;1 +45;Max45;Muster;RFID;12385;1 +46;Max46;Muster;RFID;12386;1 +47;Max47;Muster;RFID;12387;1 +48;Max48;Muster;RFID;12388;1 +49;Max49;Muster;RFID;12389;1 +50;Max50;Muster;RFID;12390;1 +51;Max51;Muster;RFID;12391;1 +52;Max52;Muster;RFID;12392;1 +53;Max53;Muster;RFID;12393;1 +54;Max54;Muster;RFID;12394;1 +55;Max55;Muster;RFID;12395;1 +56;Max56;Muster;RFID;12396;1 +57;Max57;Muster;RFID;12397;1 +58;Max58;Muster;RFID;12398;1 +59;Max59;Muster;RFID;12399;1 +60;Max60;Muster;RFID;12400;1 +61;Max61;Muster;RFID;12401;1 +62;Max62;Muster;RFID;12402;1 +63;Max63;Muster;RFID;12403;1 +64;Max64;Muster;RFID;12404;1 +65;Max65;Muster;RFID;12405;1 +66;Max66;Muster;RFID;12406;1 +67;Max67;Muster;RFID;12407;1 +68;Max68;Muster;RFID;12408;1 +69;Max69;Muster;RFID;12409;1 +70;Max70;Muster;RFID;12410;1 +71;Max71;Muster;RFID;12411;1 +72;Max72;Muster;RFID;12412;1 +73;Max73;Muster;RFID;12413;1 +74;Max74;Muster;RFID;12414;1 +75;Max75;Muster;RFID;12415;1 +76;Max76;Muster;RFID;12416;1 +77;Max77;Muster;RFID;12417;1 +78;Max78;Muster;RFID;12418;1 +79;Max79;Muster;RFID;12419;1 +80;Max80;Muster;RFID;12420;1 +81;Max81;Muster;RFID;12421;1 +82;Max82;Muster;RFID;12422;1 +83;Max83;Muster;RFID;12423;1 +84;Max84;Muster;RFID;12424;1 +85;Max85;Muster;RFID;12425;1 +86;Max86;Muster;RFID;12426;1 +87;Max87;Muster;RFID;12427;1 +88;Max88;Muster;RFID;12428;1 +89;Max89;Muster;RFID;12429;1 +90;Max90;Muster;RFID;12430;1 +91;Max91;Muster;RFID;12431;1 +92;Max92;Muster;RFID;12432;1 +93;Max93;Muster;RFID;12433;1 +94;Max94;Muster;RFID;12434;1 +95;Max95;Muster;RFID;12435;1 +96;Max96;Muster;RFID;12436;1 +97;Max97;Muster;RFID;12437;1 +98;Max98;Muster;RFID;12438;1 +99;Max99;Muster;RFID;12439;1 +100;Max100;Muster;RFID;12440;1 +101;Max101;Muster;RFID;12441;1 +102;Max102;Muster;RFID;12442;1 +103;Max103;Muster;RFID;12443;1 +104;Max104;Muster;RFID;12444;1 +105;Max105;Muster;RFID;12445;1 +106;Max106;Muster;RFID;12446;1 +107;Max107;Muster;RFID;12447;1 +108;Max108;Muster;RFID;12448;1 +109;Max109;Muster;RFID;12449;1 +110;Max110;Muster;RFID;12450;1 +111;Max111;Muster;RFID;12451;1 +112;Max112;Muster;RFID;12452;1 +113;Max113;Muster;RFID;12453;1 +114;Max114;Muster;RFID;12454;1 +115;Max115;Muster;RFID;12455;1 +116;Max116;Muster;RFID;12456;1 +117;Max117;Muster;RFID;12457;1 +118;Max118;Muster;RFID;12458;1 +119;Max119;Muster;RFID;12459;1 +120;Max120;Muster;RFID;12460;1 +121;Max121;Muster;RFID;12461;1 +122;Max122;Muster;RFID;12462;1 +123;Max123;Muster;RFID;12463;1 +124;Max124;Muster;RFID;12464;1 +125;Max125;Muster;RFID;12465;1 +126;Max126;Muster;RFID;12466;1 +127;Max127;Muster;RFID;12467;1 +128;Max128;Muster;RFID;12468;1 +129;Max129;Muster;RFID;12469;1 +130;Max130;Muster;RFID;12470;1 +131;Max131;Muster;RFID;12471;1 +132;Max132;Muster;RFID;12472;1 +133;Max133;Muster;RFID;12473;1 +134;Max134;Muster;RFID;12474;1 +135;Max135;Muster;RFID;12475;1 +136;Max136;Muster;RFID;12476;1 +137;Max137;Muster;RFID;12477;1 +138;Max138;Muster;RFID;12478;1 +139;Max139;Muster;RFID;12479;1 +140;Max140;Muster;RFID;12480;1 +141;Max141;Muster;RFID;12481;1 +142;Max142;Muster;RFID;12482;1 +143;Max143;Muster;RFID;12483;1 +144;Max144;Muster;RFID;12484;1 +145;Max145;Muster;RFID;12485;1 +146;Max146;Muster;RFID;12486;1 +147;Max147;Muster;RFID;12487;1 +148;Max148;Muster;RFID;12488;1 +149;Max149;Muster;RFID;12489;1 +150;Max150;Muster;RFID;12490;1 +151;Max151;Muster;RFID;12491;1 +152;Max152;Muster;RFID;12492;1 +153;Max153;Muster;RFID;12493;1 +154;Max154;Muster;RFID;12494;1 +155;Max155;Muster;RFID;12495;1 +156;Max156;Muster;RFID;12496;1 +157;Max157;Muster;RFID;12497;1 +158;Max158;Muster;RFID;12498;1 +159;Max159;Muster;RFID;12499;1 +160;Max160;Muster;RFID;12500;1 +161;Max161;Muster;RFID;12501;1 +162;Max162;Muster;RFID;12502;1 +163;Max163;Muster;RFID;12503;1 +164;Max164;Muster;RFID;12504;1 +165;Max165;Muster;RFID;12505;1 +166;Max166;Muster;RFID;12506;1 +167;Max167;Muster;RFID;12507;1 +168;Max168;Muster;RFID;12508;1 +169;Max169;Muster;RFID;12509;1 +170;Max170;Muster;RFID;12510;1 +171;Max171;Muster;RFID;12511;1 +172;Max172;Muster;RFID;12512;1 +173;Max173;Muster;RFID;12513;1 +174;Max174;Muster;RFID;12514;1 +175;Max175;Muster;RFID;12515;1 +176;Max176;Muster;RFID;12516;1 +177;Max177;Muster;RFID;12517;1 +178;Max178;Muster;RFID;12518;1 +179;Max179;Muster;RFID;12519;1 +180;Max180;Muster;RFID;12520;1 +181;Max181;Muster;RFID;12521;1 +182;Max182;Muster;RFID;12522;1 +183;Max183;Muster;RFID;12523;1 +184;Max184;Muster;RFID;12524;1 +185;Max185;Muster;RFID;12525;1 +186;Max186;Muster;RFID;12526;1 +187;Max187;Muster;RFID;12527;1 +188;Max188;Muster;RFID;12528;1 +189;Max189;Muster;RFID;12529;1 +190;Max190;Muster;RFID;12530;1 +191;Max191;Muster;RFID;12531;1 +192;Max192;Muster;RFID;12532;1 +193;Max193;Muster;RFID;12533;1 +194;Max194;Muster;RFID;12534;1 +195;Max195;Muster;RFID;12535;1 +196;Max196;Muster;RFID;12536;1 +197;Max197;Muster;RFID;12537;1 +198;Max198;Muster;RFID;12538;1 +199;Max199;Muster;RFID;12539;1 +200;Max200;Muster;RFID;12540;1 +201;Max201;Muster;RFID;12541;1 +202;Max202;Muster;RFID;12542;1 +203;Max203;Muster;RFID;12543;1 +204;Max204;Muster;RFID;12544;1 +205;Max205;Muster;RFID;12545;1 +206;Max206;Muster;RFID;12546;1 +207;Max207;Muster;RFID;12547;1 +208;Max208;Muster;RFID;12548;1 +209;Max209;Muster;RFID;12549;1 +210;Max210;Muster;RFID;12550;1 +211;Max211;Muster;RFID;12551;1 +212;Max212;Muster;RFID;12552;1 +213;Max213;Muster;RFID;12553;1 +214;Max214;Muster;RFID;12554;1 +215;Max215;Muster;RFID;12555;1 +216;Max216;Muster;RFID;12556;1 +217;Max217;Muster;RFID;12557;1 +218;Max218;Muster;RFID;12558;1 +219;Max219;Muster;RFID;12559;1 +220;Max220;Muster;RFID;12560;1 +221;Max221;Muster;RFID;12561;1 +222;Max222;Muster;RFID;12562;1 +223;Max223;Muster;RFID;12563;1 +224;Max224;Muster;RFID;12564;1 +225;Max225;Muster;RFID;12565;1 +226;Max226;Muster;RFID;12566;1 +227;Max227;Muster;RFID;12567;1 +228;Max228;Muster;RFID;12568;1 +229;Max229;Muster;RFID;12569;1 +230;Max230;Muster;RFID;12570;1 +231;Max231;Muster;RFID;12571;1 +232;Max232;Muster;RFID;12572;1 +233;Max233;Muster;RFID;12573;1 +234;Max234;Muster;RFID;12574;1 +235;Max235;Muster;RFID;12575;1 +236;Max236;Muster;RFID;12576;1 +237;Max237;Muster;RFID;12577;1 +238;Max238;Muster;RFID;12578;1 +239;Max239;Muster;RFID;12579;1 +240;Max240;Muster;RFID;12580;1 +241;Max241;Muster;RFID;12581;1 +242;Max242;Muster;RFID;12582;1 +243;Max243;Muster;RFID;12583;1 +244;Max244;Muster;RFID;12584;1 +245;Max245;Muster;RFID;12585;1 +246;Max246;Muster;RFID;12586;1 +247;Max247;Muster;RFID;12587;1 +248;Max248;Muster;RFID;12588;1 +249;Max249;Muster;RFID;12589;1 +250;Max250;Muster;RFID;12590;1 +251;Max251;Muster;RFID;12591;1 +252;Max252;Muster;RFID;12592;1 +253;Max253;Muster;RFID;12593;1 +254;Max254;Muster;RFID;12594;1 +255;Max255;Muster;RFID;12595;1 +256;Max256;Muster;RFID;12596;1 +257;Max257;Muster;RFID;12597;1 +258;Max258;Muster;RFID;12598;1 +259;Max259;Muster;RFID;12599;1 +260;Max260;Muster;RFID;12600;1 +261;Max261;Muster;RFID;12601;1 +262;Max262;Muster;RFID;12602;1 +263;Max263;Muster;RFID;12603;1 +264;Max264;Muster;RFID;12604;1 +265;Max265;Muster;RFID;12605;1 +266;Max266;Muster;RFID;12606;1 +267;Max267;Muster;RFID;12607;1 +268;Max268;Muster;RFID;12608;1 +269;Max269;Muster;RFID;12609;1 +270;Max270;Muster;RFID;12610;1 +271;Max271;Muster;RFID;12611;1 +272;Max272;Muster;RFID;12612;1 +273;Max273;Muster;RFID;12613;1 +274;Max274;Muster;RFID;12614;1 +275;Max275;Muster;RFID;12615;1 +276;Max276;Muster;RFID;12616;1 +277;Max277;Muster;RFID;12617;1 +278;Max278;Muster;RFID;12618;1 +279;Max279;Muster;RFID;12619;1 +280;Max280;Muster;RFID;12620;1 +281;Max281;Muster;RFID;12621;1 +282;Max282;Muster;RFID;12622;1 +283;Max283;Muster;RFID;12623;1 +284;Max284;Muster;RFID;12624;1 +285;Max285;Muster;RFID;12625;1 +286;Max286;Muster;RFID;12626;1 +287;Max287;Muster;RFID;12627;1 +288;Max288;Muster;RFID;12628;1 +289;Max289;Muster;RFID;12629;1 +290;Max290;Muster;RFID;12630;1 +291;Max291;Muster;RFID;12631;1 +292;Max292;Muster;RFID;12632;1 +293;Max293;Muster;RFID;12633;1 +294;Max294;Muster;RFID;12634;1 +295;Max295;Muster;RFID;12635;1 +296;Max296;Muster;RFID;12636;1 +297;Max297;Muster;RFID;12637;1 +298;Max298;Muster;RFID;12638;1 +299;Max299;Muster;RFID;12639;1 +300;Max300;Muster;RFID;12640;1 +301;Max301;Muster;RFID;12641;1 +302;Max302;Muster;RFID;12642;1 +303;Max303;Muster;RFID;12643;1 +304;Max304;Muster;RFID;12644;1 +305;Max305;Muster;RFID;12645;1 +306;Max306;Muster;RFID;12646;1 +307;Max307;Muster;RFID;12647;1 +308;Max308;Muster;RFID;12648;1 +309;Max309;Muster;RFID;12649;1 +310;Max310;Muster;RFID;12650;1 +311;Max311;Muster;RFID;12651;1 +312;Max312;Muster;RFID;12652;1 +313;Max313;Muster;RFID;12653;1 +314;Max314;Muster;RFID;12654;1 +315;Max315;Muster;RFID;12655;1 +316;Max316;Muster;RFID;12656;1 +317;Max317;Muster;RFID;12657;1 +318;Max318;Muster;RFID;12658;1 +319;Max319;Muster;RFID;12659;1 +320;Max320;Muster;RFID;12660;1 +321;Max321;Muster;RFID;12661;1 +322;Max322;Muster;RFID;12662;1 +323;Max323;Muster;RFID;12663;1 +324;Max324;Muster;RFID;12664;1 +325;Max325;Muster;RFID;12665;1 +326;Max326;Muster;RFID;12666;1 +327;Max327;Muster;RFID;12667;1 +328;Max328;Muster;RFID;12668;1 +329;Max329;Muster;RFID;12669;1 +330;Max330;Muster;RFID;12670;1 +331;Max331;Muster;RFID;12671;1 +332;Max332;Muster;RFID;12672;1 +333;Max333;Muster;RFID;12673;1 +334;Max334;Muster;RFID;12674;1 +335;Max335;Muster;RFID;12675;1 +336;Max336;Muster;RFID;12676;1 +337;Max337;Muster;RFID;12677;1 +338;Max338;Muster;RFID;12678;1 +339;Max339;Muster;RFID;12679;1 +340;Max340;Muster;RFID;12680;1 +341;Max341;Muster;RFID;12681;1 +342;Max342;Muster;RFID;12682;1 +343;Max343;Muster;RFID;12683;1 +344;Max344;Muster;RFID;12684;1 +345;Max345;Muster;RFID;12685;1 +346;Max346;Muster;RFID;12686;1 +347;Max347;Muster;RFID;12687;1 +348;Max348;Muster;RFID;12688;1 +349;Max349;Muster;RFID;12689;1 +350;Max350;Muster;RFID;12690;1 +351;Max351;Muster;RFID;12691;1 +352;Max352;Muster;RFID;12692;1 +353;Max353;Muster;RFID;12693;1 +354;Max354;Muster;RFID;12694;1 +355;Max355;Muster;RFID;12695;1 +356;Max356;Muster;RFID;12696;1 +357;Max357;Muster;RFID;12697;1 +358;Max358;Muster;RFID;12698;1 +359;Max359;Muster;RFID;12699;1 +360;Max360;Muster;RFID;12700;1 +361;Max361;Muster;RFID;12701;1 +362;Max362;Muster;RFID;12702;1 +363;Max363;Muster;RFID;12703;1 +364;Max364;Muster;RFID;12704;1 +365;Max365;Muster;RFID;12705;1 +366;Max366;Muster;RFID;12706;1 +367;Max367;Muster;RFID;12707;1 +368;Max368;Muster;RFID;12708;1 +369;Max369;Muster;RFID;12709;1 +370;Max370;Muster;RFID;12710;1 +371;Max371;Muster;RFID;12711;1 +372;Max372;Muster;RFID;12712;1 +373;Max373;Muster;RFID;12713;1 +374;Max374;Muster;RFID;12714;1 +375;Max375;Muster;RFID;12715;1 +376;Max376;Muster;RFID;12716;1 +377;Max377;Muster;RFID;12717;1 +378;Max378;Muster;RFID;12718;1 +379;Max379;Muster;RFID;12719;1 +380;Max380;Muster;RFID;12720;1 +381;Max381;Muster;RFID;12721;1 +382;Max382;Muster;RFID;12722;1 +383;Max383;Muster;RFID;12723;1 +384;Max384;Muster;RFID;12724;1 +385;Max385;Muster;RFID;12725;1 +386;Max386;Muster;RFID;12726;1 +387;Max387;Muster;RFID;12727;1 +388;Max388;Muster;RFID;12728;1 +389;Max389;Muster;RFID;12729;1 +390;Max390;Muster;RFID;12730;1 +391;Max391;Muster;RFID;12731;1 +392;Max392;Muster;RFID;12732;1 +393;Max393;Muster;RFID;12733;1 +394;Max394;Muster;RFID;12734;1 +395;Max395;Muster;RFID;12735;1 +396;Max396;Muster;RFID;12736;1 +397;Max397;Muster;RFID;12737;1 +398;Max398;Muster;RFID;12738;1 +399;Max399;Muster;RFID;12739;1 +400;Max400;Muster;RFID;12740;1 +401;Max401;Muster;RFID;12741;1 +402;Max402;Muster;RFID;12742;1 +403;Max403;Muster;RFID;12743;1 +404;Max404;Muster;RFID;12744;1 +405;Max405;Muster;RFID;12745;1 +406;Max406;Muster;RFID;12746;1 +407;Max407;Muster;RFID;12747;1 +408;Max408;Muster;RFID;12748;1 +409;Max409;Muster;RFID;12749;1 +410;Max410;Muster;RFID;12750;1 +411;Max411;Muster;RFID;12751;1 +412;Max412;Muster;RFID;12752;1 +413;Max413;Muster;RFID;12753;1 +414;Max414;Muster;RFID;12754;1 +415;Max415;Muster;RFID;12755;1 +416;Max416;Muster;RFID;12756;1 +417;Max417;Muster;RFID;12757;1 +418;Max418;Muster;RFID;12758;1 +419;Max419;Muster;RFID;12759;1 +420;Max420;Muster;RFID;12760;1 +421;Max421;Muster;RFID;12761;1 +422;Max422;Muster;RFID;12762;1 +423;Max423;Muster;RFID;12763;1 +424;Max424;Muster;RFID;12764;1 +425;Max425;Muster;RFID;12765;1 +426;Max426;Muster;RFID;12766;1 +427;Max427;Muster;RFID;12767;1 +428;Max428;Muster;RFID;12768;1 +429;Max429;Muster;RFID;12769;1 +430;Max430;Muster;RFID;12770;1 +431;Max431;Muster;RFID;12771;1 +432;Max432;Muster;RFID;12772;1 +433;Max433;Muster;RFID;12773;1 +434;Max434;Muster;RFID;12774;1 +435;Max435;Muster;RFID;12775;1 +436;Max436;Muster;RFID;12776;1 +437;Max437;Muster;RFID;12777;1 +438;Max438;Muster;RFID;12778;1 +439;Max439;Muster;RFID;12779;1 +440;Max440;Muster;RFID;12780;1 +441;Max441;Muster;RFID;12781;1 +442;Max442;Muster;RFID;12782;1 +443;Max443;Muster;RFID;12783;1 +444;Max444;Muster;RFID;12784;1 +445;Max445;Muster;RFID;12785;1 +446;Max446;Muster;RFID;12786;1 +447;Max447;Muster;RFID;12787;1 +448;Max448;Muster;RFID;12788;1 +449;Max449;Muster;RFID;12789;1 +450;Max450;Muster;RFID;12790;1 +451;Max451;Muster;RFID;12791;1 +452;Max452;Muster;RFID;12792;1 +453;Max453;Muster;RFID;12793;1 +454;Max454;Muster;RFID;12794;1 +455;Max455;Muster;RFID;12795;1 +456;Max456;Muster;RFID;12796;1 +457;Max457;Muster;RFID;12797;1 +458;Max458;Muster;RFID;12798;1 +459;Max459;Muster;RFID;12799;1 +460;Max460;Muster;RFID;12800;1 +461;Max461;Muster;RFID;12801;1 +462;Max462;Muster;RFID;12802;1 +463;Max463;Muster;RFID;12803;1 +464;Max464;Muster;RFID;12804;1 +465;Max465;Muster;RFID;12805;1 +466;Max466;Muster;RFID;12806;1 +467;Max467;Muster;RFID;12807;1 +468;Max468;Muster;RFID;12808;1 +469;Max469;Muster;RFID;12809;1 +470;Max470;Muster;RFID;12810;1 +471;Max471;Muster;RFID;12811;1 +472;Max472;Muster;RFID;12812;1 +473;Max473;Muster;RFID;12813;1 +474;Max474;Muster;RFID;12814;1 +475;Max475;Muster;RFID;12815;1 +476;Max476;Muster;RFID;12816;1 +477;Max477;Muster;RFID;12817;1 +478;Max478;Muster;RFID;12818;1 +479;Max479;Muster;RFID;12819;1 +480;Max480;Muster;RFID;12820;1 +481;Max481;Muster;RFID;12821;1 +482;Max482;Muster;RFID;12822;1 +483;Max483;Muster;RFID;12823;1 +484;Max484;Muster;RFID;12824;1 +485;Max485;Muster;RFID;12825;1 +486;Max486;Muster;RFID;12826;1 +487;Max487;Muster;RFID;12827;1 +488;Max488;Muster;RFID;12828;1 +489;Max489;Muster;RFID;12829;1 +490;Max490;Muster;RFID;12830;1 +491;Max491;Muster;RFID;12831;1 +492;Max492;Muster;RFID;12832;1 +493;Max493;Muster;RFID;12833;1 +494;Max494;Muster;RFID;12834;1 +495;Max495;Muster;RFID;12835;1 +496;Max496;Muster;RFID;12836;1 +497;Max497;Muster;RFID;12837;1 +498;Max498;Muster;RFID;12838;1 +499;Max499;Muster;RFID;12839;1 +500;Max500;Muster;RFID;12840;1 +501;Max501;Muster;RFID;12841;1 +502;Max502;Muster;RFID;12842;1 +503;Max503;Muster;RFID;12843;1 +504;Max504;Muster;RFID;12844;1 +505;Max505;Muster;RFID;12845;1 +506;Max506;Muster;RFID;12846;1 +507;Max507;Muster;RFID;12847;1 +508;Max508;Muster;RFID;12848;1 +509;Max509;Muster;RFID;12849;1 +510;Max510;Muster;RFID;12850;1 +511;Max511;Muster;RFID;12851;1 +512;Max512;Muster;RFID;12852;1 +513;Max513;Muster;RFID;12853;1 +514;Max514;Muster;RFID;12854;1 +515;Max515;Muster;RFID;12855;1 +516;Max516;Muster;RFID;12856;1 +517;Max517;Muster;RFID;12857;1 +518;Max518;Muster;RFID;12858;1 +519;Max519;Muster;RFID;12859;1 +520;Max520;Muster;RFID;12860;1 +521;Max521;Muster;RFID;12861;1 +522;Max522;Muster;RFID;12862;1 +523;Max523;Muster;RFID;12863;1 +524;Max524;Muster;RFID;12864;1 +525;Max525;Muster;RFID;12865;1 +526;Max526;Muster;RFID;12866;1 +527;Max527;Muster;RFID;12867;1 +528;Max528;Muster;RFID;12868;1 +529;Max529;Muster;RFID;12869;1 +530;Max530;Muster;RFID;12870;1 +531;Max531;Muster;RFID;12871;1 +532;Max532;Muster;RFID;12872;1 +533;Max533;Muster;RFID;12873;1 +534;Max534;Muster;RFID;12874;1 +535;Max535;Muster;RFID;12875;1 +536;Max536;Muster;RFID;12876;1 +537;Max537;Muster;RFID;12877;1 +538;Max538;Muster;RFID;12878;1 +539;Max539;Muster;RFID;12879;1 +540;Max540;Muster;RFID;12880;1 +541;Max541;Muster;RFID;12881;1 +542;Max542;Muster;RFID;12882;1 +543;Max543;Muster;RFID;12883;1 +544;Max544;Muster;RFID;12884;1 +545;Max545;Muster;RFID;12885;1 +546;Max546;Muster;RFID;12886;1 +547;Max547;Muster;RFID;12887;1 +548;Max548;Muster;RFID;12888;1 +549;Max549;Muster;RFID;12889;1 +550;Max550;Muster;RFID;12890;1 +551;Max551;Muster;RFID;12891;1 +552;Max552;Muster;RFID;12892;1 +553;Max553;Muster;RFID;12893;1 +554;Max554;Muster;RFID;12894;1 +555;Max555;Muster;RFID;12895;1 +556;Max556;Muster;RFID;12896;1 +557;Max557;Muster;RFID;12897;1 +558;Max558;Muster;RFID;12898;1 +559;Max559;Muster;RFID;12899;1 +560;Max560;Muster;RFID;12900;1 +561;Max561;Muster;RFID;12901;1 +562;Max562;Muster;RFID;12902;1 +563;Max563;Muster;RFID;12903;1 +564;Max564;Muster;RFID;12904;1 +565;Max565;Muster;RFID;12905;1 +566;Max566;Muster;RFID;12906;1 +567;Max567;Muster;RFID;12907;1 +568;Max568;Muster;RFID;12908;1 +569;Max569;Muster;RFID;12909;1 +570;Max570;Muster;RFID;12910;1 +571;Max571;Muster;RFID;12911;1 +572;Max572;Muster;RFID;12912;1 +573;Max573;Muster;RFID;12913;1 +574;Max574;Muster;RFID;12914;1 +575;Max575;Muster;RFID;12915;1 +576;Max576;Muster;RFID;12916;1 +577;Max577;Muster;RFID;12917;1 +578;Max578;Muster;RFID;12918;1 +579;Max579;Muster;RFID;12919;1 +580;Max580;Muster;RFID;12920;1 +581;Max581;Muster;RFID;12921;1 +582;Max582;Muster;RFID;12922;1 +583;Max583;Muster;RFID;12923;1 +584;Max584;Muster;RFID;12924;1 +585;Max585;Muster;RFID;12925;1 +586;Max586;Muster;RFID;12926;1 +587;Max587;Muster;RFID;12927;1 +588;Max588;Muster;RFID;12928;1 +589;Max589;Muster;RFID;12929;1 +590;Max590;Muster;RFID;12930;1 +591;Max591;Muster;RFID;12931;1 +592;Max592;Muster;RFID;12932;1 +593;Max593;Muster;RFID;12933;1 +594;Max594;Muster;RFID;12934;1 +595;Max595;Muster;RFID;12935;1 +596;Max596;Muster;RFID;12936;1 +597;Max597;Muster;RFID;12937;1 +598;Max598;Muster;RFID;12938;1 +599;Max599;Muster;RFID;12939;1 +600;Max600;Muster;RFID;12940;1 +601;Max601;Muster;RFID;12941;1 +602;Max602;Muster;RFID;12942;1 +603;Max603;Muster;RFID;12943;1 +604;Max604;Muster;RFID;12944;1 +605;Max605;Muster;RFID;12945;1 +606;Max606;Muster;RFID;12946;1 +607;Max607;Muster;RFID;12947;1 +608;Max608;Muster;RFID;12948;1 +609;Max609;Muster;RFID;12949;1 +610;Max610;Muster;RFID;12950;1 +611;Max611;Muster;RFID;12951;1 +612;Max612;Muster;RFID;12952;1 +613;Max613;Muster;RFID;12953;1 +614;Max614;Muster;RFID;12954;1 +615;Max615;Muster;RFID;12955;1 +616;Max616;Muster;RFID;12956;1 +617;Max617;Muster;RFID;12957;1 +618;Max618;Muster;RFID;12958;1 +619;Max619;Muster;RFID;12959;1 +620;Max620;Muster;RFID;12960;1 +621;Max621;Muster;RFID;12961;1 +622;Max622;Muster;RFID;12962;1 +623;Max623;Muster;RFID;12963;1 +624;Max624;Muster;RFID;12964;1 +625;Max625;Muster;RFID;12965;1 +626;Max626;Muster;RFID;12966;1 +627;Max627;Muster;RFID;12967;1 +628;Max628;Muster;RFID;12968;1 +629;Max629;Muster;RFID;12969;1 +630;Max630;Muster;RFID;12970;1 +631;Max631;Muster;RFID;12971;1 +632;Max632;Muster;RFID;12972;1 +633;Max633;Muster;RFID;12973;1 +634;Max634;Muster;RFID;12974;1 +635;Max635;Muster;RFID;12975;1 +636;Max636;Muster;RFID;12976;1 +637;Max637;Muster;RFID;12977;1 +638;Max638;Muster;RFID;12978;1 +639;Max639;Muster;RFID;12979;1 +640;Max640;Muster;RFID;12980;1 +641;Max641;Muster;RFID;12981;1 +642;Max642;Muster;RFID;12982;1 +643;Max643;Muster;RFID;12983;1 +644;Max644;Muster;RFID;12984;1 +645;Max645;Muster;RFID;12985;1 +646;Max646;Muster;RFID;12986;1 +647;Max647;Muster;RFID;12987;1 +648;Max648;Muster;RFID;12988;1 +649;Max649;Muster;RFID;12989;1 +650;Max650;Muster;RFID;12990;1 +651;Max651;Muster;RFID;12991;1 +652;Max652;Muster;RFID;12992;1 +653;Max653;Muster;RFID;12993;1 +654;Max654;Muster;RFID;12994;1 +655;Max655;Muster;RFID;12995;1 +656;Max656;Muster;RFID;12996;1 +657;Max657;Muster;RFID;12997;1 +658;Max658;Muster;RFID;12998;1 +659;Max659;Muster;RFID;12999;1 +660;Max660;Muster;RFID;13000;1 +661;Max661;Muster;RFID;13001;1 +662;Max662;Muster;RFID;13002;1 +663;Max663;Muster;RFID;13003;1 +664;Max664;Muster;RFID;13004;1 +665;Max665;Muster;RFID;13005;1 +666;Max666;Muster;RFID;13006;1 +667;Max667;Muster;RFID;13007;1 +668;Max668;Muster;RFID;13008;1 +669;Max669;Muster;RFID;13009;1 +670;Max670;Muster;RFID;13010;1 +671;Max671;Muster;RFID;13011;1 +672;Max672;Muster;RFID;13012;1 +673;Max673;Muster;RFID;13013;1 +674;Max674;Muster;RFID;13014;1 +675;Max675;Muster;RFID;13015;1 +676;Max676;Muster;RFID;13016;1 +677;Max677;Muster;RFID;13017;1 +678;Max678;Muster;RFID;13018;1 +679;Max679;Muster;RFID;13019;1 +680;Max680;Muster;RFID;13020;1 +681;Max681;Muster;RFID;13021;1 +682;Max682;Muster;RFID;13022;1 +683;Max683;Muster;RFID;13023;1 +684;Max684;Muster;RFID;13024;1 +685;Max685;Muster;RFID;13025;1 +686;Max686;Muster;RFID;13026;1 +687;Max687;Muster;RFID;13027;1 +688;Max688;Muster;RFID;13028;1 +689;Max689;Muster;RFID;13029;1 +690;Max690;Muster;RFID;13030;1 +691;Max691;Muster;RFID;13031;1 +692;Max692;Muster;RFID;13032;1 +693;Max693;Muster;RFID;13033;1 +694;Max694;Muster;RFID;13034;1 +695;Max695;Muster;RFID;13035;1 +696;Max696;Muster;RFID;13036;1 +697;Max697;Muster;RFID;13037;1 +698;Max698;Muster;RFID;13038;1 +699;Max699;Muster;RFID;13039;1 +700;Max700;Muster;RFID;13040;1 +701;Max701;Muster;RFID;13041;1 +702;Max702;Muster;RFID;13042;1 +703;Max703;Muster;RFID;13043;1 +704;Max704;Muster;RFID;13044;1 +705;Max705;Muster;RFID;13045;1 +706;Max706;Muster;RFID;13046;1 +707;Max707;Muster;RFID;13047;1 +708;Max708;Muster;RFID;13048;1 +709;Max709;Muster;RFID;13049;1 +710;Max710;Muster;RFID;13050;1 +711;Max711;Muster;RFID;13051;1 +712;Max712;Muster;RFID;13052;1 +713;Max713;Muster;RFID;13053;1 +714;Max714;Muster;RFID;13054;1 +715;Max715;Muster;RFID;13055;1 +716;Max716;Muster;RFID;13056;1 +717;Max717;Muster;RFID;13057;1 +718;Max718;Muster;RFID;13058;1 +719;Max719;Muster;RFID;13059;1 +720;Max720;Muster;RFID;13060;1 +721;Max721;Muster;RFID;13061;1 +722;Max722;Muster;RFID;13062;1 +723;Max723;Muster;RFID;13063;1 +724;Max724;Muster;RFID;13064;1 +725;Max725;Muster;RFID;13065;1 +726;Max726;Muster;RFID;13066;1 +727;Max727;Muster;RFID;13067;1 +728;Max728;Muster;RFID;13068;1 +729;Max729;Muster;RFID;13069;1 +730;Max730;Muster;RFID;13070;1 +731;Max731;Muster;RFID;13071;1 +732;Max732;Muster;RFID;13072;1 +733;Max733;Muster;RFID;13073;1 +734;Max734;Muster;RFID;13074;1 +735;Max735;Muster;RFID;13075;1 +736;Max736;Muster;RFID;13076;1 +737;Max737;Muster;RFID;13077;1 +738;Max738;Muster;RFID;13078;1 +739;Max739;Muster;RFID;13079;1 +740;Max740;Muster;RFID;13080;1 +741;Max741;Muster;RFID;13081;1 +742;Max742;Muster;RFID;13082;1 +743;Max743;Muster;RFID;13083;1 +744;Max744;Muster;RFID;13084;1 +745;Max745;Muster;RFID;13085;1 +746;Max746;Muster;RFID;13086;1 +747;Max747;Muster;RFID;13087;1 +748;Max748;Muster;RFID;13088;1 +749;Max749;Muster;RFID;13089;1 +750;Max750;Muster;RFID;13090;1 +751;Max751;Muster;RFID;13091;1 +752;Max752;Muster;RFID;13092;1 +753;Max753;Muster;RFID;13093;1 +754;Max754;Muster;RFID;13094;1 +755;Max755;Muster;RFID;13095;1 +756;Max756;Muster;RFID;13096;1 +757;Max757;Muster;RFID;13097;1 +758;Max758;Muster;RFID;13098;1 +759;Max759;Muster;RFID;13099;1 +760;Max760;Muster;RFID;13100;1 +761;Max761;Muster;RFID;13101;1 +762;Max762;Muster;RFID;13102;1 +763;Max763;Muster;RFID;13103;1 +764;Max764;Muster;RFID;13104;1 +765;Max765;Muster;RFID;13105;1 +766;Max766;Muster;RFID;13106;1 +767;Max767;Muster;RFID;13107;1 +768;Max768;Muster;RFID;13108;1 +769;Max769;Muster;RFID;13109;1 +770;Max770;Muster;RFID;13110;1 +771;Max771;Muster;RFID;13111;1 +772;Max772;Muster;RFID;13112;1 +773;Max773;Muster;RFID;13113;1 +774;Max774;Muster;RFID;13114;1 +775;Max775;Muster;RFID;13115;1 +776;Max776;Muster;RFID;13116;1 +777;Max777;Muster;RFID;13117;1 +778;Max778;Muster;RFID;13118;1 +779;Max779;Muster;RFID;13119;1 +780;Max780;Muster;RFID;13120;1 +781;Max781;Muster;RFID;13121;1 +782;Max782;Muster;RFID;13122;1 +783;Max783;Muster;RFID;13123;1 +784;Max784;Muster;RFID;13124;1 +785;Max785;Muster;RFID;13125;1 +786;Max786;Muster;RFID;13126;1 +787;Max787;Muster;RFID;13127;1 +788;Max788;Muster;RFID;13128;1 +789;Max789;Muster;RFID;13129;1 +790;Max790;Muster;RFID;13130;1 +791;Max791;Muster;RFID;13131;1 +792;Max792;Muster;RFID;13132;1 +793;Max793;Muster;RFID;13133;1 +794;Max794;Muster;RFID;13134;1 +795;Max795;Muster;RFID;13135;1 +796;Max796;Muster;RFID;13136;1 +797;Max797;Muster;RFID;13137;1 +798;Max798;Muster;RFID;13138;1 +799;Max799;Muster;RFID;13139;1 +800;Max800;Muster;RFID;13140;1 +801;Max801;Muster;RFID;13141;1 +802;Max802;Muster;RFID;13142;1 +803;Max803;Muster;RFID;13143;1 +804;Max804;Muster;RFID;13144;1 +805;Max805;Muster;RFID;13145;1 +806;Max806;Muster;RFID;13146;1 +807;Max807;Muster;RFID;13147;1 +808;Max808;Muster;RFID;13148;1 +809;Max809;Muster;RFID;13149;1 +810;Max810;Muster;RFID;13150;1 +811;Max811;Muster;RFID;13151;1 +812;Max812;Muster;RFID;13152;1 +813;Max813;Muster;RFID;13153;1 +814;Max814;Muster;RFID;13154;1 +815;Max815;Muster;RFID;13155;1 +816;Max816;Muster;RFID;13156;1 +817;Max817;Muster;RFID;13157;1 +818;Max818;Muster;RFID;13158;1 +819;Max819;Muster;RFID;13159;1 +820;Max820;Muster;RFID;13160;1 +821;Max821;Muster;RFID;13161;1 +822;Max822;Muster;RFID;13162;1 +823;Max823;Muster;RFID;13163;1 +824;Max824;Muster;RFID;13164;1 +825;Max825;Muster;RFID;13165;1 +826;Max826;Muster;RFID;13166;1 +827;Max827;Muster;RFID;13167;1 +828;Max828;Muster;RFID;13168;1 +829;Max829;Muster;RFID;13169;1 +830;Max830;Muster;RFID;13170;1 +831;Max831;Muster;RFID;13171;1 +832;Max832;Muster;RFID;13172;1 +833;Max833;Muster;RFID;13173;1 +834;Max834;Muster;RFID;13174;1 +835;Max835;Muster;RFID;13175;1 +836;Max836;Muster;RFID;13176;1 +837;Max837;Muster;RFID;13177;1 +838;Max838;Muster;RFID;13178;1 +839;Max839;Muster;RFID;13179;1 +840;Max840;Muster;RFID;13180;1 +841;Max841;Muster;RFID;13181;1 +842;Max842;Muster;RFID;13182;1 +843;Max843;Muster;RFID;13183;1 +844;Max844;Muster;RFID;13184;1 +845;Max845;Muster;RFID;13185;1 +846;Max846;Muster;RFID;13186;1 +847;Max847;Muster;RFID;13187;1 +848;Max848;Muster;RFID;13188;1 +849;Max849;Muster;RFID;13189;1 +850;Max850;Muster;RFID;13190;1 +851;Max851;Muster;RFID;13191;1 +852;Max852;Muster;RFID;13192;1 +853;Max853;Muster;RFID;13193;1 +854;Max854;Muster;RFID;13194;1 +855;Max855;Muster;RFID;13195;1 +856;Max856;Muster;RFID;13196;1 +857;Max857;Muster;RFID;13197;1 +858;Max858;Muster;RFID;13198;1 +859;Max859;Muster;RFID;13199;1 +860;Max860;Muster;RFID;13200;1 +861;Max861;Muster;RFID;13201;1 +862;Max862;Muster;RFID;13202;1 +863;Max863;Muster;RFID;13203;1 +864;Max864;Muster;RFID;13204;1 +865;Max865;Muster;RFID;13205;1 +866;Max866;Muster;RFID;13206;1 +867;Max867;Muster;RFID;13207;1 +868;Max868;Muster;RFID;13208;1 +869;Max869;Muster;RFID;13209;1 +870;Max870;Muster;RFID;13210;1 +871;Max871;Muster;RFID;13211;1 +872;Max872;Muster;RFID;13212;1 +873;Max873;Muster;RFID;13213;1 +874;Max874;Muster;RFID;13214;1 +875;Max875;Muster;RFID;13215;1 +876;Max876;Muster;RFID;13216;1 +877;Max877;Muster;RFID;13217;1 +878;Max878;Muster;RFID;13218;1 +879;Max879;Muster;RFID;13219;1 +880;Max880;Muster;RFID;13220;1 +881;Max881;Muster;RFID;13221;1 +882;Max882;Muster;RFID;13222;1 +883;Max883;Muster;RFID;13223;1 +884;Max884;Muster;RFID;13224;1 +885;Max885;Muster;RFID;13225;1 +886;Max886;Muster;RFID;13226;1 +887;Max887;Muster;RFID;13227;1 +888;Max888;Muster;RFID;13228;1 +889;Max889;Muster;RFID;13229;1 +890;Max890;Muster;RFID;13230;1 +891;Max891;Muster;RFID;13231;1 +892;Max892;Muster;RFID;13232;1 +893;Max893;Muster;RFID;13233;1 +894;Max894;Muster;RFID;13234;1 +895;Max895;Muster;RFID;13235;1 +896;Max896;Muster;RFID;13236;1 +897;Max897;Muster;RFID;13237;1 +898;Max898;Muster;RFID;13238;1 +899;Max899;Muster;RFID;13239;1 +900;Max900;Muster;RFID;13240;1 +901;Max901;Muster;RFID;13241;1 +902;Max902;Muster;RFID;13242;1 +903;Max903;Muster;RFID;13243;1 +904;Max904;Muster;RFID;13244;1 +905;Max905;Muster;RFID;13245;1 +906;Max906;Muster;RFID;13246;1 +907;Max907;Muster;RFID;13247;1 +908;Max908;Muster;RFID;13248;1 +909;Max909;Muster;RFID;13249;1 +910;Max910;Muster;RFID;13250;1 +911;Max911;Muster;RFID;13251;1 +912;Max912;Muster;RFID;13252;1 +913;Max913;Muster;RFID;13253;1 +914;Max914;Muster;RFID;13254;1 +915;Max915;Muster;RFID;13255;1 +916;Max916;Muster;RFID;13256;1 +917;Max917;Muster;RFID;13257;1 +918;Max918;Muster;RFID;13258;1 +919;Max919;Muster;RFID;13259;1 +920;Max920;Muster;RFID;13260;1 +921;Max921;Muster;RFID;13261;1 +922;Max922;Muster;RFID;13262;1 +923;Max923;Muster;RFID;13263;1 +924;Max924;Muster;RFID;13264;1 +925;Max925;Muster;RFID;13265;1 +926;Max926;Muster;RFID;13266;1 +927;Max927;Muster;RFID;13267;1 +928;Max928;Muster;RFID;13268;1 +929;Max929;Muster;RFID;13269;1 +930;Max930;Muster;RFID;13270;1 +931;Max931;Muster;RFID;13271;1 +932;Max932;Muster;RFID;13272;1 +933;Max933;Muster;RFID;13273;1 +934;Max934;Muster;RFID;13274;1 +935;Max935;Muster;RFID;13275;1 +936;Max936;Muster;RFID;13276;1 +937;Max937;Muster;RFID;13277;1 +938;Max938;Muster;RFID;13278;1 +939;Max939;Muster;RFID;13279;1 +940;Max940;Muster;RFID;13280;1 +941;Max941;Muster;RFID;13281;1 +942;Max942;Muster;RFID;13282;1 +943;Max943;Muster;RFID;13283;1 +944;Max944;Muster;RFID;13284;1 +945;Max945;Muster;RFID;13285;1 +946;Max946;Muster;RFID;13286;1 +947;Max947;Muster;RFID;13287;1 +948;Max948;Muster;RFID;13288;1 +949;Max949;Muster;RFID;13289;1 +950;Max950;Muster;RFID;13290;1 +951;Max951;Muster;RFID;13291;1 +952;Max952;Muster;RFID;13292;1 +953;Max953;Muster;RFID;13293;1 +954;Max954;Muster;RFID;13294;1 +955;Max955;Muster;RFID;13295;1 +956;Max956;Muster;RFID;13296;1 +957;Max957;Muster;RFID;13297;1 +958;Max958;Muster;RFID;13298;1 +959;Max959;Muster;RFID;13299;1 +960;Max960;Muster;RFID;13300;1 +961;Max961;Muster;RFID;13301;1 +962;Max962;Muster;RFID;13302;1 +963;Max963;Muster;RFID;13303;1 +964;Max964;Muster;RFID;13304;1 +965;Max965;Muster;RFID;13305;1 +966;Max966;Muster;RFID;13306;1 +967;Max967;Muster;RFID;13307;1 +968;Max968;Muster;RFID;13308;1 +969;Max969;Muster;RFID;13309;1 +970;Max970;Muster;RFID;13310;1 +971;Max971;Muster;RFID;13311;1 +972;Max972;Muster;RFID;13312;1 +973;Max973;Muster;RFID;13313;1 +974;Max974;Muster;RFID;13314;1 +975;Max975;Muster;RFID;13315;1 +976;Max976;Muster;RFID;13316;1 +977;Max977;Muster;RFID;13317;1 +978;Max978;Muster;RFID;13318;1 +979;Max979;Muster;RFID;13319;1 +980;Max980;Muster;RFID;13320;1 +981;Max981;Muster;RFID;13321;1 +982;Max982;Muster;RFID;13322;1 +983;Max983;Muster;RFID;13323;1 +984;Max984;Muster;RFID;13324;1 +985;Max985;Muster;RFID;13325;1 +986;Max986;Muster;RFID;13326;1 +987;Max987;Muster;RFID;13327;1 +988;Max988;Muster;RFID;13328;1 +989;Max989;Muster;RFID;13329;1 +990;Max990;Muster;RFID;13330;1 +991;Max991;Muster;RFID;13331;1 +992;Max992;Muster;RFID;13332;1 +993;Max993;Muster;RFID;13333;1 +994;Max994;Muster;RFID;13334;1 +995;Max995;Muster;RFID;13335;1 +996;Max996;Muster;RFID;13336;1 +997;Max997;Muster;RFID;13337;1 +998;Max998;Muster;RFID;13338;1 +999;Max999;Muster;RFID;13339;1 +1000;Max1000;Muster;RFID;13340;1 +1001;Max1001;Muster;RFID;13341;1 +1002;Max1002;Muster;RFID;13342;1 +1003;Max1003;Muster;RFID;13343;1 +1004;Max1004;Muster;RFID;13344;1 +1005;Max1005;Muster;RFID;13345;1 +1006;Max1006;Muster;RFID;13346;1 +1007;Max1007;Muster;RFID;13347;1 +1008;Max1008;Muster;RFID;13348;1 +1009;Max1009;Muster;RFID;13349;1 +1010;Max1010;Muster;RFID;13350;1 +1011;Max1011;Muster;RFID;13351;1 +1012;Max1012;Muster;RFID;13352;1 +1013;Max1013;Muster;RFID;13353;1 +1014;Max1014;Muster;RFID;13354;1 +1015;Max1015;Muster;RFID;13355;1 +1016;Max1016;Muster;RFID;13356;1 +1017;Max1017;Muster;RFID;13357;1 +1018;Max1018;Muster;RFID;13358;1 +1019;Max1019;Muster;RFID;13359;1 +1020;Max1020;Muster;RFID;13360;1 +1021;Max1021;Muster;RFID;13361;1 +1022;Max1022;Muster;RFID;13362;1 +1023;Max1023;Muster;RFID;13363;1 +1024;Max1024;Muster;RFID;13364;1 +1025;Max1025;Muster;RFID;13365;1 +1026;Max1026;Muster;RFID;13366;1 +1027;Max1027;Muster;RFID;13367;1 +1028;Max1028;Muster;RFID;13368;1 +1029;Max1029;Muster;RFID;13369;1 +1030;Max1030;Muster;RFID;13370;1 +1031;Max1031;Muster;RFID;13371;1 +1032;Max1032;Muster;RFID;13372;1 +1033;Max1033;Muster;RFID;13373;1 +1034;Max1034;Muster;RFID;13374;1 +1035;Max1035;Muster;RFID;13375;1 +1036;Max1036;Muster;RFID;13376;1 +1037;Max1037;Muster;RFID;13377;1 +1038;Max1038;Muster;RFID;13378;1 +1039;Max1039;Muster;RFID;13379;1 +1040;Max1040;Muster;RFID;13380;1 +1041;Max1041;Muster;RFID;13381;1 +1042;Max1042;Muster;RFID;13382;1 +1043;Max1043;Muster;RFID;13383;1 +1044;Max1044;Muster;RFID;13384;1 +1045;Max1045;Muster;RFID;13385;1 +1046;Max1046;Muster;RFID;13386;1 +1047;Max1047;Muster;RFID;13387;1 +1048;Max1048;Muster;RFID;13388;1 +1049;Max1049;Muster;RFID;13389;1 +1050;Max1050;Muster;RFID;13390;1 +1051;Max1051;Muster;RFID;13391;1 +1052;Max1052;Muster;RFID;13392;1 +1053;Max1053;Muster;RFID;13393;1 +1054;Max1054;Muster;RFID;13394;1 +1055;Max1055;Muster;RFID;13395;1 +1056;Max1056;Muster;RFID;13396;1 +1057;Max1057;Muster;RFID;13397;1 +1058;Max1058;Muster;RFID;13398;1 +1059;Max1059;Muster;RFID;13399;1 +1060;Max1060;Muster;RFID;13400;1 +1061;Max1061;Muster;RFID;13401;1 +1062;Max1062;Muster;RFID;13402;1 +1063;Max1063;Muster;RFID;13403;1 +1064;Max1064;Muster;RFID;13404;1 +1065;Max1065;Muster;RFID;13405;1 +1066;Max1066;Muster;RFID;13406;1 +1067;Max1067;Muster;RFID;13407;1 +1068;Max1068;Muster;RFID;13408;1 +1069;Max1069;Muster;RFID;13409;1 +1070;Max1070;Muster;RFID;13410;1 +1071;Max1071;Muster;RFID;13411;1 +1072;Max1072;Muster;RFID;13412;1 +1073;Max1073;Muster;RFID;13413;1 +1074;Max1074;Muster;RFID;13414;1 +1075;Max1075;Muster;RFID;13415;1 +1076;Max1076;Muster;RFID;13416;1 +1077;Max1077;Muster;RFID;13417;1 +1078;Max1078;Muster;RFID;13418;1 +1079;Max1079;Muster;RFID;13419;1 +1080;Max1080;Muster;RFID;13420;1 +1081;Max1081;Muster;RFID;13421;1 +1082;Max1082;Muster;RFID;13422;1 +1083;Max1083;Muster;RFID;13423;1 +1084;Max1084;Muster;RFID;13424;1 +1085;Max1085;Muster;RFID;13425;1 +1086;Max1086;Muster;RFID;13426;1 +1087;Max1087;Muster;RFID;13427;1 +1088;Max1088;Muster;RFID;13428;1 +1089;Max1089;Muster;RFID;13429;1 +1090;Max1090;Muster;RFID;13430;1 +1091;Max1091;Muster;RFID;13431;1 +1092;Max1092;Muster;RFID;13432;1 +1093;Max1093;Muster;RFID;13433;1 +1094;Max1094;Muster;RFID;13434;1 +1095;Max1095;Muster;RFID;13435;1 +1096;Max1096;Muster;RFID;13436;1 +1097;Max1097;Muster;RFID;13437;1 +1098;Max1098;Muster;RFID;13438;1 +1099;Max1099;Muster;RFID;13439;1 +1100;Max1100;Muster;RFID;13440;1 +1101;Max1101;Muster;RFID;13441;1 +1102;Max1102;Muster;RFID;13442;1 +1103;Max1103;Muster;RFID;13443;1 +1104;Max1104;Muster;RFID;13444;1 +1105;Max1105;Muster;RFID;13445;1 +1106;Max1106;Muster;RFID;13446;1 +1107;Max1107;Muster;RFID;13447;1 +1108;Max1108;Muster;RFID;13448;1 +1109;Max1109;Muster;RFID;13449;1 +1110;Max1110;Muster;RFID;13450;1 +1111;Max1111;Muster;RFID;13451;1 +1112;Max1112;Muster;RFID;13452;1 +1113;Max1113;Muster;RFID;13453;1 +1114;Max1114;Muster;RFID;13454;1 +1115;Max1115;Muster;RFID;13455;1 +1116;Max1116;Muster;RFID;13456;1 +1117;Max1117;Muster;RFID;13457;1 +1118;Max1118;Muster;RFID;13458;1 +1119;Max1119;Muster;RFID;13459;1 +1120;Max1120;Muster;RFID;13460;1 +1121;Max1121;Muster;RFID;13461;1 +1122;Max1122;Muster;RFID;13462;1 +1123;Max1123;Muster;RFID;13463;1 +1124;Max1124;Muster;RFID;13464;1 +1125;Max1125;Muster;RFID;13465;1 +1126;Max1126;Muster;RFID;13466;1 +1127;Max1127;Muster;RFID;13467;1 +1128;Max1128;Muster;RFID;13468;1 +1129;Max1129;Muster;RFID;13469;1 +1130;Max1130;Muster;RFID;13470;1 +1131;Max1131;Muster;RFID;13471;1 +1132;Max1132;Muster;RFID;13472;1 +1133;Max1133;Muster;RFID;13473;1 +1134;Max1134;Muster;RFID;13474;1 +1135;Max1135;Muster;RFID;13475;1 +1136;Max1136;Muster;RFID;13476;1 +1137;Max1137;Muster;RFID;13477;1 +1138;Max1138;Muster;RFID;13478;1 +1139;Max1139;Muster;RFID;13479;1 +1140;Max1140;Muster;RFID;13480;1 +1141;Max1141;Muster;RFID;13481;1 +1142;Max1142;Muster;RFID;13482;1 +1143;Max1143;Muster;RFID;13483;1 +1144;Max1144;Muster;RFID;13484;1 +1145;Max1145;Muster;RFID;13485;1 +1146;Max1146;Muster;RFID;13486;1 +1147;Max1147;Muster;RFID;13487;1 +1148;Max1148;Muster;RFID;13488;1 +1149;Max1149;Muster;RFID;13489;1 +1150;Max1150;Muster;RFID;13490;1 +1151;Max1151;Muster;RFID;13491;1 +1152;Max1152;Muster;RFID;13492;1 +1153;Max1153;Muster;RFID;13493;1 +1154;Max1154;Muster;RFID;13494;1 +1155;Max1155;Muster;RFID;13495;1 +1156;Max1156;Muster;RFID;13496;1 +1157;Max1157;Muster;RFID;13497;1 +1158;Max1158;Muster;RFID;13498;1 +1159;Max1159;Muster;RFID;13499;1 +1160;Max1160;Muster;RFID;13500;1 +1161;Max1161;Muster;RFID;13501;1 +1162;Max1162;Muster;RFID;13502;1 +1163;Max1163;Muster;RFID;13503;1 +1164;Max1164;Muster;RFID;13504;1 +1165;Max1165;Muster;RFID;13505;1 +1166;Max1166;Muster;RFID;13506;1 +1167;Max1167;Muster;RFID;13507;1 +1168;Max1168;Muster;RFID;13508;1 +1169;Max1169;Muster;RFID;13509;1 +1170;Max1170;Muster;RFID;13510;1 +1171;Max1171;Muster;RFID;13511;1 +1172;Max1172;Muster;RFID;13512;1 +1173;Max1173;Muster;RFID;13513;1 +1174;Max1174;Muster;RFID;13514;1 +1175;Max1175;Muster;RFID;13515;1 +1176;Max1176;Muster;RFID;13516;1 +1177;Max1177;Muster;RFID;13517;1 +1178;Max1178;Muster;RFID;13518;1 +1179;Max1179;Muster;RFID;13519;1 +1180;Max1180;Muster;RFID;13520;1 +1181;Max1181;Muster;RFID;13521;1 +1182;Max1182;Muster;RFID;13522;1 +1183;Max1183;Muster;RFID;13523;1 +1184;Max1184;Muster;RFID;13524;1 +1185;Max1185;Muster;RFID;13525;1 +1186;Max1186;Muster;RFID;13526;1 +1187;Max1187;Muster;RFID;13527;1 +1188;Max1188;Muster;RFID;13528;1 +1189;Max1189;Muster;RFID;13529;1 +1190;Max1190;Muster;RFID;13530;1 +1191;Max1191;Muster;RFID;13531;1 +1192;Max1192;Muster;RFID;13532;1 +1193;Max1193;Muster;RFID;13533;1 +1194;Max1194;Muster;RFID;13534;1 +1195;Max1195;Muster;RFID;13535;1 +1196;Max1196;Muster;RFID;13536;1 +1197;Max1197;Muster;RFID;13537;1 +1198;Max1198;Muster;RFID;13538;1 +1199;Max1199;Muster;RFID;13539;1 +1200;Max1200;Muster;RFID;13540;1 +1201;Max1201;Muster;RFID;13541;1 +1202;Max1202;Muster;RFID;13542;1 +1203;Max1203;Muster;RFID;13543;1 +1204;Max1204;Muster;RFID;13544;1 +1205;Max1205;Muster;RFID;13545;1 +1206;Max1206;Muster;RFID;13546;1 +1207;Max1207;Muster;RFID;13547;1 +1208;Max1208;Muster;RFID;13548;1 +1209;Max1209;Muster;RFID;13549;1 +1210;Max1210;Muster;RFID;13550;1 +1211;Max1211;Muster;RFID;13551;1 +1212;Max1212;Muster;RFID;13552;1 +1213;Max1213;Muster;RFID;13553;1 +1214;Max1214;Muster;RFID;13554;1 +1215;Max1215;Muster;RFID;13555;1 +1216;Max1216;Muster;RFID;13556;1 +1217;Max1217;Muster;RFID;13557;1 +1218;Max1218;Muster;D34E030B;13558;1 diff --git a/data/userdb.csv.bak b/data/userdb.csv.bak new file mode 100644 index 0000000..37c5072 --- /dev/null +++ b/data/userdb.csv.bak @@ -0,0 +1,10 @@ +1,Max1,Muster,RFID,12341,1 +2,Max2,Muster,RFID,12342,1 +3,Max3,Muster,RFID,12343,1 +4,Max4,Muster,RFID,12344,1 +5,Max5,Muster,RFID,12345,1 +6,Max6,Muster,RFID,12346,1 +7,Max7,Muster,RFID,12347,1 +8,Max8,Muster,RFID,12348,1 +9,Max9,Muster,RFID,12349,1 +10,Max20,Muster,RFID,12340,1 \ No newline at end of file diff --git a/src/Keyboard.cpp b/src/Keyboard.cpp index d4aa4fa..66a1fe6 100644 --- a/src/Keyboard.cpp +++ b/src/Keyboard.cpp @@ -84,7 +84,9 @@ void Keyboard::scanColumn(uint8_t *key_ptr, uint8_t start, uint8_t stop) _timeElapsed = millis(); this->_lastKey = *key_ptr; this->_buffer.push_back(mapChr(*key_ptr)); + #ifdef DEBUG Serial.print(*key_ptr); + #endif return; } } diff --git a/src/Rfid.cpp b/src/Rfid.cpp index 12782d8..5656e2c 100644 --- a/src/Rfid.cpp +++ b/src/Rfid.cpp @@ -24,7 +24,7 @@ void Rfid::scan() this->_rfid = ""; for (byte i = 0; i < this->_mfrc522.uid.size; i++) { - this->_rfid += this->_mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " "; + this->_rfid += this->_mfrc522.uid.uidByte[i] < 0x10 ? "0" : ""; this->_rfid += String(this->_mfrc522.uid.uidByte[i], HEX); } this->_rfid.trim(); @@ -32,7 +32,9 @@ void Rfid::scan() if (this->_rfid != this->_lastRfid || millis() > this->_lastRfidScan + RFID_TIMEOUT) { _status = 1; + #ifdef DEBUG Serial.print(this->_rfid); + #endif this->_lastRfid = this->_rfid; this->_lastRfidScan = millis(); } diff --git a/src/UserDb.cpp b/src/UserDb.cpp index 9d7f458..881da6a 100644 --- a/src/UserDb.cpp +++ b/src/UserDb.cpp @@ -48,24 +48,8 @@ User UserDb::user_by_uid(unsigned long cmp){ void UserDb::print_to_serial() { Serial.println("Starting UserDB Test Read"); - // File userdb_file = LittleFS.open("userdb.csv","r"); - // if (!userdb_file) - //{ - // Serial.println("Failed to open file for reading"); - // return; - // } - // unsigned int line = 0; - // while(userdb_file.available()){ - // String temp = userdb_file.readStringUntil('\n'); - // User res = read_csv_line(temp); - // Serial.println(res.toString()); - // line++; - // } - Iterator it = begin(); - do - { + for(Iterator it = begin(); it.has_next(); ++it){ User temp = *it; Serial.println(temp.toString()); - ++it; - } while (it.has_next()); + } } diff --git a/src/UserDb.h b/src/UserDb.h index 68a7310..4d7c6e0 100644 --- a/src/UserDb.h +++ b/src/UserDb.h @@ -26,7 +26,7 @@ namespace userdb mutable String last_name; mutable String rfid_uid; mutable String user_pin; - mutable bool enabled = true; + mutable bool enabled = false; bool operator<(const User &o) const { return uid < o.uid; } bool operator==(const User &o) const { return uid == o.uid; } String toString() @@ -53,7 +53,7 @@ namespace userdb int str_length = instring.length() - 1; for (int i = 0; i < str_length; i++) { - if (instring.charAt(i) == ',') + if (instring.charAt(i) == ';') { locations[location_index] = i; location_index++; @@ -106,11 +106,11 @@ namespace userdb } bool has_next() { - return db_file.available(); + return available; } void next() { - if (has_next()) + if (db_file.available()) { String temp = db_file.readStringUntil('\n'); current = read_csv_line(temp, line); @@ -118,6 +118,8 @@ namespace userdb } else { + available=false; + current=User{}; db_file.close(); } }; @@ -125,6 +127,7 @@ namespace userdb private: File db_file; User current; + bool available = true; unsigned int line = 0; }; Iterator begin() { return Iterator(LittleFS.open("userdb.csv", "r")); } diff --git a/src/main.cpp b/src/main.cpp index ba4cdad..454ed81 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -6,7 +6,7 @@ #include "Interface.h" #include #include -#include "Users.h" +//#include "Users.h" #include "UserDb.h" #include "Persistence.h" // File persistence @@ -27,46 +27,56 @@ IPAddress gateway(192, 168, 4, 9); IPAddress subnet(255, 255, 255, 0); // User DB -Users users(persistence); +//Users users(persistence); void setup() { Persistence::Configuration config = persistence.loadConfig(); - users.ImportFromPersistence(); + //users.ImportFromPersistence(); Serial.begin(9600); Serial.print("Starting"); Serial.println(WiFi.softAPConfig(local_IP, gateway, subnet) ? "Ready" : "Failed!"); - Serial.println(WiFi.softAP(config.SSID) ? "Ready" : "Failed!"); + if (strlen(config.PASS)>0) + Serial.println(WiFi.softAP(config.SSID, config.PASS) ? "Ready" : "Failed!"); + else + Serial.println(WiFi.softAP(config.SSID) ? "Ready" : "Failed!"); + delay(250); +#ifdef DEBUG userdatabase.print_to_serial(); - //delay(500); +#endif keyboard.begin(&Wire); rfid.begin(); iface.begin(&keyboard); - //while(users.countUsers()<100){ - // users.addUser("Harry","Potter","","1234"); - //} - Serial.println(userdatabase.user_by_pin("12348").toString()); - //users.PrintAllToSerial(); - //Serial.println(persistence.TestRead()); - //users.ExportToPersistence(); - //Serial.println(persistence.TestRead()); - } void loop() { keyboard.scanAsync(); rfid.scan(); - std::vector logon_users; - if (iface.pinAvailable() && !users.checkPin(iface.getPin(), &logon_users)) - iface.showMessage("Login failed!", "-> Pin incorrect", 3000); - else if (rfid.available() && !users.checkRfid(rfid.getID(), &logon_users)) - iface.showMessage("Login failed!", "-> Unkown Card", 3000); - else if (logon_users.size() > 0) + userdb::User login_user; + if (iface.pinAvailable()) { - iface.greetUser(logon_users[0].first_name + " " + logon_users[0].last_name); - Serial.print(users.toString(&logon_users[0])); - logon_users.clear(); + login_user = userdatabase.user_by_pin(iface.getPin()); + if (login_user.enabled == false) + { + iface.showMessage("Login failed!", "-> Pin incorrect", 3000); + return; + } + } + else if (rfid.available()) + { + login_user = userdatabase.user_by_rfid(rfid.getID()); + if (login_user.enabled == false) + { + iface.showMessage("Login failed!", "-> Unkown Card", 3000); + return; + } + } + + if (login_user.enabled == true) + { + iface.greetUser(login_user.first_name + " " + login_user.last_name); + Serial.println("Logon from User " + login_user.toString()); } iface.render(); } \ No newline at end of file