Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // if godzina.length < 5 ma pierwszenstwo i chuj
- // if rodzenstwo == true && wiek == ten sam lub +1 / -1 wiekszy
- console.log('dzialam');
- let pn15 = [], pn16 = [] , pn17 = [], wt15 , wt16 = [], wt17 = []
- const przedzial = (pierwszaGodzina, drugaGodzina, trzeciaGodzina, czwartaGodzina) => {
- let array = []
- for (let i = pierwszaGodzina; i < drugaGodzina + 1; i++ ) {
- array.push(i);
- }
- for (let i = trzeciaGodzina; i < czwartaGodzina + 1; i++ ) {
- array.push(i);
- }
- return array;
- }
- let teczka = [
- // {
- // ankieta : ,
- // wiek : ,
- // opis : ,
- // pn : ,
- // wt : ,
- // sr : ,
- // czw : ,
- // pt : ,
- // sb : ,
- // nd : ,
- // rodzenstwo : false,
- // ilosc : 1
- // },
- {
- ankieta : 30,
- wiek : 6,
- opis : 'wszystkie w okresie wakacyjnym',
- pn : przedzial(8,17),
- wt : przedzial(8,17),
- sr : przedzial(8,17),
- czw : przedzial(8,17),
- pt : przedzial(8,17),
- sb : przedzial(8,17),
- nd : '',
- rodzenstwo : false,
- ilosc : 1
- },
- {
- ankieta : 17,
- wiek : 6,
- opis : 'dopiero od wrzesnia w weekendy',
- pn : przedzial(16,17),
- wt : przedzial(16,17),
- sr : przedzial(16,17),
- czw : przedzial(16,17),
- pt : przedzial(16,17),
- sb : '',
- nd : '',
- rodzenstwo : false,
- ilosc : 1
- },
- {
- ankieta : 6,
- wiek : 6,
- opis : '',
- pn : przedzial(10,19),
- wt : przedzial(10,16, 18,20),
- sr : przedzial(10,19),
- czw : przedzial(10,16, 18, 20),
- pt : przedzial(10,19),
- sb : '',
- nd : '',
- rodzenstwo : false,
- ilosc : 1
- },
- {
- ankieta : 26,
- wiek : 8,
- opis : '',
- pn : przedzial(16,20),
- wt : przedzial(16,20),
- sr : przedzial(16,20),
- czw : przedzial(16,20),
- pt : przedzial(16,20),
- sb : przedzial(8-20),
- nd : przedzial(8-20),
- rodzenstwo : false,
- ilosc : 2
- },
- {
- ankieta : 50,
- wiek : 8,
- opis : '50b',
- pn : przedzial(16,17),
- wt : przedzial(16,17),
- sr : przedzial(16,17),
- czw : przedzial(16,17),
- pt : przedzial(16,17),
- sb : przedzial(8-20),
- nd : przedzial(8-20),
- rodzenstwo : true,
- ilosc : 1
- },
- {
- ankieta : 50,
- wiek : 7,
- opis : '50a',
- pn : przedzial(16,17),
- wt : przedzial(16,17),
- sr : przedzial(16,17),
- czw : przedzial(16,17),
- pt : przedzial(16,17),
- sb : przedzial(8-20),
- nd : przedzial(8-20),
- rodzenstwo : true,
- ilosc : 1
- },
- {
- ankieta : 47,
- wiek : 7,
- opis : '47a 7 w sierpniu 2k19. w weekendy po poludniu jak juz to pozniej',
- pn : '',
- wt : '',
- sr : '',
- czw : '',
- pt : '',
- sb : przedzial(8,12, 16,20),
- nd : przedzial(8,12, 16,20),
- rodzenstwo : true,
- ilosc : 1
- },
- {
- ankieta : 32,
- wiek : 7,
- opis : 'c',
- pn : '',
- wt : [16],
- sr : '',
- czw : [16],
- pt : [16],
- sb : przedzial(8,20),
- nd : przedzial(8,20),
- rodzenstwo : true,
- ilosc : 1
- },
- {
- ankieta : 49,
- wiek : 7,
- opis : 'narazie 2 razy potem od 4 do 6',
- pn : '',
- wt : '',
- sr : przedzial(16,20),
- czw : '',
- pt : przedzial(16,20),
- sb : przedzial(12,13,16,20),
- nd : '',
- rodzenstwo : false,
- ilosc : 2
- },
- {
- ankieta : 100,
- wiek : 6,
- opis : '7 lat w grudniu 2k19',
- pn : przedzial(16,20),
- wt : przedzial(16,20),
- sr : przedzial(16,20),
- czw : przedzial(16,20),
- pt : '',
- sb : '',
- nd : '',
- rodzenstwo : false,
- ilosc : 2
- },
- {
- ankieta : 32,
- wiek : 4,
- opis : 'b',
- pn : '',
- wt : [16],
- sr : [16],
- czw : [16],
- pt : [16],
- sb : przedzial(8,20),
- nd : '',
- rodzenstwo : true,
- ilosc : 1
- },
- {
- ankieta : 32,
- wiek : 4,
- opis : 'a',
- pn : [0],
- wt : [16],
- sr : [16],
- czw : [16],
- pt : [16],
- sb : przedzial(8,20),
- nd : '',
- rodzenstwo : true,
- ilosc : 1
- },
- {
- ankieta : 65,
- wiek : 5,
- opis : 'b',
- pn : przedzial(10,12),
- wt : przedzial(10,12),
- sr : przedzial(10,12),
- czw : przedzial(10,12),
- pt : '',
- sb : '',
- nd : '',
- rodzenstwo : true,
- ilosc : 1
- },
- {
- ankieta : 59,
- wiek : 4,
- opis : 'b',
- pn : przedzial(13,16),
- wt : przedzial(13,16),
- sr : przedzial(13,16),
- czw : przedzial(13,16),
- pt : przedzial(13,16),
- sb : przedzial(9,12),
- nd : '',
- rodzenstwo : true,
- ilosc : 1
- },
- {
- ankieta : 59,
- wiek : 5,
- opis : 'a',
- pn : przedzial(13,16),
- wt : przedzial(13,16),
- sr : przedzial(13,16),
- czw : przedzial(13,16),
- pt : przedzial(13,16),
- sb : przedzial(9,12),
- nd : '',
- rodzenstwo : true,
- ilosc : 1
- },
- {
- ankieta : 1,
- wiek : 5,
- opis : '3 tez moze byc razy w tygodniu',
- pn : przedzial(17,19),
- wt : przedzial(17,19),
- sr : przedzial(17,19),
- czw : przedzial(17,19),
- pt : przedzial(17,19),
- sb : '',
- nd : '',
- rodzenstwo : false,
- ilosc : 2
- },
- {
- ankieta : 84,
- wiek : 5,
- opis : 'a . To jest kolezanka leny Pająk od Marty Pająk dlatego daje ze rodzenstwo',
- pn : przedzial(17,18),
- wt : przedzial(17,18),
- sr : przedzial(17,18),
- czw : przedzial(17,18),
- pt : przedzial(17,18),
- sb : przedzial(17,18),
- nd : przedzial(17,18),
- rodzenstwo : true,
- ilosc : 1
- },
- {
- ankieta : 84,
- wiek : 5,
- opis : 'b . Lena Pająk . 4.5 lat',
- pn : przedzial(17,18),
- wt : przedzial(17,18),
- sr : przedzial(17,18),
- czw : przedzial(17,18),
- pt : przedzial(17,18),
- sb : przedzial(17,18),
- nd : przedzial(17,18),
- rodzenstwo : true,
- ilosc : 1
- },
- {
- ankieta : 45,
- wiek : 6,
- opis : '5.5 lat',
- pn : przedzial(15,19),
- wt : przedzial(15,19),
- sr : przedzial(15,19),
- czw : przedzial(15,19),
- pt : przedzial(15,19),
- sb : '',
- nd : '',
- rodzenstwo : false,
- ilosc : 1
- },
- {
- ankieta : 101,
- wiek : 5,
- opis : 'Żurek',
- pn : przedzial(16,18),
- wt : przedzial(16,18),
- sr : przedzial(16,18),
- czw : przedzial(16,18),
- pt : przedzial(16,18),
- sb : '',
- nd : '',
- rodzenstwo : false,
- ilosc : 1
- },
- {
- ankieta : 60,
- wiek : 4,
- opis : '',
- pn : '',
- wt : '',
- sr : przedzial(16,18),
- czw : '',
- pt : '',
- sb : '',
- nd : '',
- rodzenstwo : false,
- ilosc : 1
- },
- {
- ankieta : 7,
- wiek : 4,
- opis : '4lata w sierpniu',
- pn : przedzial(17,20),
- wt : przedzial(17,20),
- sr : przedzial(17,20),
- czw : przedzial(17,20),
- pt : przedzial(17,20),
- sb : przedzial(10,20),
- nd : '',
- rodzenstwo : false,
- ilosc : 2
- },
- {
- ankieta : 8,
- wiek : 4,
- opis : 'czwartki, srody ale ciezko',
- pn : przedzial(15,19),
- wt : '',
- sr : przedzial(15,19),
- czw : przedzial(15,19),
- pt : '',
- sb : '',
- nd : '',
- rodzenstwo : false,
- ilosc : 1
- },
- {
- ankieta : 42,
- wiek : 4,
- opis : '3.5 lat',
- pn : '',
- wt : '',
- sr : przedzial(16,19),
- czw : przedzial(16,19),
- pt : przedzial(16,19),
- sb : '',
- nd : '',
- rodzenstwo : false,
- ilosc : 1
- },
- {
- ankieta : 25,
- wiek : 4,
- opis : '3,5',
- pn : przedzial(16,18),
- wt : '',
- sr : '',
- czw : przedzial(16,18),
- pt : '',
- sb : przedzial(9,20),
- nd : '',
- rodzenstwo : false,
- ilosc : 1
- },
- {
- ankieta : 10,
- wiek : 4,
- opis : '3,5',
- pn : przedzial(16,20),
- wt : przedzial(16,20),
- sr : przedzial(16,20),
- czw : przedzial(16,20),
- pt : przedzial(16,20),
- sb : '',
- nd : '',
- rodzenstwo : false,
- ilosc : 1
- },
- {
- ankieta : 59,
- wiek : 3,
- opis : 'c',
- pn : przedzial(9-16),
- wt : przedzial(9-16),
- sr : przedzial(9-16),
- czw : przedzial(9-16),
- pt : przedzial(9-16),
- sb : przedzial(9,12),
- nd : '',
- rodzenstwo : true,
- ilosc : 1
- },
- {
- ankieta : 9,
- wiek : 3,
- opis : '',
- pn : przedzial(15,18),
- wt : przedzial(15,18),
- sr : przedzial(15,18),
- czw : przedzial(16-18),
- pt : przedzial(16-18),
- sb : '',
- nd : '',
- rodzenstwo : false,
- ilosc : 1
- },
- {
- ankieta : 67,
- wiek : 3,
- opis : '',
- pn : przedzial(16,18),
- wt : przedzial(16,18),
- sr : przedzial(16,18),
- czw : przedzial(16,18),
- pt : '',
- sb : '',
- nd : '',
- rodzenstwo : false,
- ilosc : 1
- },
- {
- ankieta : 85,
- wiek : 3,
- opis : '',
- pn : przedzial(16,18),
- wt : przedzial(16,18),
- sr : przedzial(16,18),
- czw : przedzial(16,18),
- pt : przedzial(16,18),
- sb : przedzial(16,18),
- nd : przedzial(16,18),
- rodzenstwo : false,
- ilosc : 1
- },
- {
- ankieta : 47,
- wiek : 3,
- opis : 'b, fajnie jakby dzieci mialy w ten sam dzien zajecia',
- pn : '',
- wt : '',
- sr : '',
- czw : '',
- pt : '',
- sb : przedzial(8,20),
- nd : przedzial(8,20),
- rodzenstwo : true,
- ilosc : 1
- },
- {
- ankieta : 65,
- wiek : 2,
- opis : 'a',
- pn : przedzial(10,12),
- wt : przedzial(10,12),
- sr : przedzial(10,12),
- czw : przedzial(10,12),
- pt : '',
- sb : '',
- nd : '',
- rodzenstwo : true,
- ilosc : 1
- },
- {
- ankieta : 69,
- wiek : 2,
- opis : '',
- pn : przedzial(15,18),
- wt : przedzial(15,18),
- sr : przedzial(15,18),
- czw : przedzial(15,18),
- pt : przedzial(15,18),
- sb : '',
- nd : '',
- rodzenstwo : false,
- ilosc : 1
- },
- {
- ankieta : 58,
- wiek : 2,
- opis : '',
- pn : przedzial(9,12),
- wt : przedzial(9,12),
- sr : przedzial(9,12),
- czw : przedzial(9,12),
- pt : przedzial(9,12),
- sb : '',
- nd : '',
- rodzenstwo : false,
- ilosc : 1
- },
- {
- ankieta : 57,
- wiek : 2,
- opis : 'co trzeci weekend wypada',
- pn : przedzial(16,18),
- wt : przedzial(16,18),
- sr : przedzial(16,18),
- czw : przedzial(16,18),
- pt : przedzial(16,18),
- sb : przedzial(8,12,14,20),
- nd : przedzial(8,12,14,20),
- rodzenstwo : false,
- ilosc : 1
- },
- {
- ankieta : 70,
- wiek : 2,
- opis : 'od wrzesnia odpadaja piatki',
- pn : przedzial(11,18),
- wt : przedzial(11,18),
- sr : przedzial(11,18),
- czw : przedzial(11,18),
- pt : przedzial(11,18),
- sb : przedzial(11,18),
- nd : przedzial(11,18),
- rodzenstwo : false,
- ilosc : 2
- },
- {
- ankieta : 11,
- wiek : 2,
- opis : '11a jeszcze z dwoma kolezankami',
- pn : przedzial(16,18),
- wt : przedzial(16,18),
- sr : przedzial(16,18),
- czw : '',
- pt : '',
- sb : '',
- nd : '',
- rodzenstwo : true,
- ilosc : 1
- },
- {
- ankieta : 11,
- wiek : 2,
- opis : '11b jeszcze z dwoma kolezankami. poltorej roku',
- pn : przedzial(8,9,12,18),
- wt : przedzial(15,18),
- sr : przedzial(8,9,12,18),
- czw : przedzial(8,9,12,18),
- pt : przedzial(8,9,12,18),
- sb : przedzial(8,9,12,18),
- nd : przedzial(8,9,12,18),
- rodzenstwo : true,
- ilosc : 1
- },
- {
- ankieta : 11,
- wiek : 2,
- opis : '1c jeszcze z dwoma kolezankami. ma 16miesiecy. minimum 2 razy chce',
- pn : przedzial(8,18),
- wt : przedzial(8,18),
- sr : przedzial(8,18),
- czw : '',
- pt : '',
- sb : '',
- nd : '',
- rodzenstwo : true,
- ilosc : 2
- },
- {
- ankieta : 18,
- wiek : 2,
- opis : '2.5roku',
- pn : przedzial(10,20),
- wt : przedzial(10,20),
- sr : przedzial(10,20),
- czw : przedzial(10,20),
- pt : przedzial(10,20),
- sb : '',
- nd : '',
- rodzenstwo : false,
- ilosc : 2
- },
- {
- ankieta : 21,
- wiek : 3,
- opis : 'ma rodzenstwo ale nie mamy ankiety',
- pn : przedzial(9,17),
- wt : '',
- sr : przedzial(9,17),
- czw : '',
- pt : przedzial(9,17),
- sb : przedzial(9,17),
- nd : przedzial(9,17),
- rodzenstwo : false,
- ilosc : 2
- },
- {
- ankieta : 36,
- wiek : 2,
- opis : '2.7msc',
- pn : przedzial(15,16),
- wt : przedzial(15,16),
- sr : przedzial(15,16),
- czw : przedzial(15,16),
- pt : przedzial(15,16),
- sb : '',
- nd : '',
- rodzenstwo : false,
- ilosc : 1
- },
- {
- ankieta : 52,
- wiek : 2,
- opis : '2.5roku',
- pn : przedzial(16,17),
- wt : przedzial(16,17),
- sr : przedzial(16,17),
- czw : przedzial(16,17),
- pt : przedzial(16,17),
- sb : przedzial(8,20),
- nd : przedzial(8,20),
- rodzenstwo : false,
- ilosc : 2
- },
- // DO 2 LAT
- {
- ankieta : 86,
- wiek : 1,
- opis : '16msc',
- pn : przedzial(10,14),
- wt : przedzial(10,14),
- sr : przedzial(10,14),
- czw : przedzial(10,14),
- pt : '',
- sb : '',
- nd : '',
- rodzenstwo : false,
- ilosc : 1
- },
- {
- ankieta : 39,
- wiek : 1,
- opis : '1.5roku',
- pn : przedzial(9,16),
- wt : '',
- sr : przedzial(9,16),
- czw : '',
- pt : przedzial(9,16),
- sb : przedzial(9,16),
- nd : przedzial(9,16),
- rodzenstwo : false,
- ilosc : 1
- },
- {
- ankieta : 68,
- wiek : 1,
- opis : '1rok 3msc',
- pn : przedzial(9,17),
- wt : przedzial(9,17),
- sr : przedzial(9,17),
- czw : przedzial(9,17),
- pt : przedzial(9,17),
- sb : '',
- nd : '',
- rodzenstwo : false,
- ilosc : 2
- },
- {
- ankieta : 41,
- wiek : 2,
- opis : 'w bieruniu ma taniej xD',
- pn : '',
- wt : [18],
- sr : [18],
- czw : [18],
- pt : '',
- sb : '',
- nd : '',
- rodzenstwo : false,
- ilosc : 1
- },
- // {
- // ankieta : ,
- // wiek : ,
- // opis : ,
- // pn : ,
- // wt : ,
- // sr : ,
- // czw : ,
- // pt : ,
- // sb : ,
- // nd : ,
- // rodzenstwo : false,
- // ilosc : 1
- // },
- ]
- console.log(teczka, 'teczka stan początkowy');
- /* funkcja sprawdza wiek dziecka oraz
- czy jest dostepny w dniu i godzinie przekazanej do funkcji podczas wywołania
- Jeśli wszystko sie zgadza to ankieta jest pushowana do odpowiedniej tablicy "maluchy/dwulatki etc".
- Równocześnie odejmuje -= 1 ilosc zajec. Gdy ilosc zajec = 1. Ankieta trafia do tablicy usun.
- Funkcja sprawdza, która tablica ma najwiecej elementów i tworzy z niej grupę
- Ankiety zostają usuwane z głównej tablicy "teczka" gdy grupa stworzna ma wiecej niz 3 osoby.
- */
- const dobierzGrupe = (teczka, dzien, czas, grupa ) => {
- let maluchy = []
- let dwulatki = [];
- let czterolatki = [];
- let szesciolatki = [];
- // dzien = eval(dzien);
- let usun = [];
- // console.log(Object.entries(ankieta), 'object Entries');
- teczka.forEach( ankieta => {
- // ankieta = Object.entries(ankieta);
- // console.log(ankieta, 'ankieta entries')
- if ( ankieta.wiek === 1 && Object.entries(ankieta)[dzien][1].includes(czas)
- ) {
- maluchy.push(ankieta);
- if(ankieta.ilosc == 1) {
- usun.push(ankieta);
- } else {
- ankieta.ilosc -= 1;
- }
- }
- if ((ankieta.wiek === 2 || ankieta.wiek === 3) && Object.entries(ankieta)[dzien][1].includes(czas) ) {
- // console.log(ankieta);
- // console.log(ankieta, ' ankieta');
- // console.log(ankieta.pn, + ' ankieta poniedzialek');
- dwulatki.push(ankieta);
- // teczka.shift(ankieta);
- if(ankieta.ilosc == 1) {
- usun.push(ankieta);
- } else {
- ankieta.ilosc -= 1;
- }
- }
- if ( (ankieta.wiek === 4 || ankieta.wiek === 5) && Object.entries(ankieta)[dzien][1].includes(czas) ) {
- czterolatki.push(ankieta);
- if(ankieta.ilosc == 1) {
- usun.push(ankieta);
- } else {
- ankieta.ilosc -= 1;
- }
- }
- if ( (ankieta.wiek === 6 || ankieta.wiek === 7 || ankieta.wiek === 8) && Object.entries(ankieta)[dzien][1].includes(czas) ) {
- szesciolatki.push(ankieta);
- if(ankieta.ilosc == 1) {
- usun.push(ankieta);
- } else {
- ankieta.ilosc -= 1;
- }
- }
- });
- if(maluchy.length > dwulatki.length && maluchy.length > czterolatki.length && maluchy.length > szesciolatki.length ) {
- console.log(maluchy.length, 'maluchy tworze grupe');
- grupa.push(maluchy);
- } else if (dwulatki.length > czterolatki.length && dwulatki.length > szesciolatki.length && dwulatki.length > maluchy.length) {
- console.log(dwulatki.length, 'dwulatki tworze grupe');
- grupa.push(dwulatki);
- } else if (czterolatki.length > dwulatki.length && czterolatki.length > szesciolatki.length && czterolatki.length > maluchy.length) {
- console.log(czterolatki.length, 'czterolatki tworze grupe');
- grupa.push(czterolatki);
- } else if (szesciolatki.length > dwulatki.length && szesciolatki.length > czterolatki.length && szesciolatki.length > maluchy.length) {
- console.log(szesciolatki.length ,'szesciolatki tworze grupe');
- grupa.push(szesciolatki);
- } else if (szesciolatki.length == dwulatki.length || szesciolatki.length == czterolatki.length || dwulatki.length == czterolatki.length || maluchy.length == dwulatki.length || maluchy.length == czterolatki.length || maluchy.length == szesciolatki.length ) {
- console.log(szesciolatki.length, 'szesciolatki remis');
- console.log(czterolatki.length, 'czterolatki remis');
- console.log(dwulatki.length, 'dwulatki remis');
- console.log(maluchy.length, 'maluchy remis');
- }
- //usuwa z tabeli tylko gdy grupa ma ponad 3 osoby
- // console.log(teczka, 'teczka');
- console.log(usun, 'do usuniecia');
- if(usun.length > 3) {
- usun.forEach(ankieta => {
- console.log('USUWANIE')
- let usuwanko = teczka.indexOf(ankieta);
- delete teczka[usuwanko];
- });
- };
- // console.log(teczka, 'teczka po usunieciu');
- console.log(grupa, 'stworzona grupa');
- };
- // 3 : pn / 4 : wt / 5 : sr / 6 : czw / 7 : pt / 8 : sb / 9 : nd
- //pon
- dobierzGrupe(teczka, 3 , 17, pn17);
- dobierzGrupe(teczka, 3 , 16, pn16);
- dobierzGrupe(teczka, 3 , 15, pn15);
- dobierzGrupe(teczka, 4 , 16, wt16);
- console.log(pn15, 'pon 15');
- console.log(pn16, 'pon 16');
- console.log(pn17, 'pon 17');
- console.log(wt16, 'wt 16')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement