Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function wybierz_zamowienia(zlecenia_page) {
- $('#tabela_body_zamowienia').html('<tr><td colspan="10"><img align="center" src="images/ikony/loading11.gif" /></td></tr>');
- var wartosc_typ_samochodu = $('#zlecenia_typ_samochodu').val();
- var wartosc_typ_licencji = $('#zlecenia_typ_licencji').val();
- var wartosc_zysk_min = $('#zlecenia_zysk_min').val();
- var wartosc_kara_max = $('#zlecenia_kara_max').val();
- var wartosc_odleglosc_max = $('#zlecenia_odleglosc_max').val();
- var wartosc_garaz_docelowy = $('#zlecenia_garaz_docelowy').val();
- var wartosc_miasto_docelowe = $('#zlecenia_miasto_docelowe').val();
- $.post("ajax/1/zlecenia_szukaj.php", {
- samochod: wartosc_typ_samochodu,
- licencja: wartosc_typ_licencji,
- zysk_min: wartosc_zysk_min,
- kara_max: wartosc_kara_max,
- odleglosc_max: wartosc_odleglosc_max,
- miasto_docelowe: wartosc_miasto_docelowe,
- garaz_docelowy: wartosc_garaz_docelowy,
- page: zlecenia_page
- }, function(data) {
- $('#tabela_body_zamowienia').html(data);
- bierzZamowienia()
- }, "html");
- }
- var bierzZamowienia = (() => {
- let limitIlosci
- let aktualnieZebrane = 0
- let czyZbierac = true
- let wybraneDrewno
- const RODZAJE_DREWNA = [
- 'Bale dębowe',
- 'Bale sosnowe',
- 'Deski sosnowe',
- 'Dluzyca',
- 'Drzewo mieszane',
- 'Kłody brzozowe',
- 'Kłody dębowe',
- 'Kłody jesionowe',
- 'Kłody sosnowe',
- 'Kłody topolowe',
- 'Papierowka',
- 'Tarcica',
- ]
- const modal = document.createElement('div')
- const selektorDrewna = document.createElement('select')
- RODZAJE_DREWNA.forEach(rodzaj => {
- const opcjaWyboruDrewna = document.createElement('option')
- opcjaWyboruDrewna.value = rodzaj + ' '
- opcjaWyboruDrewna.innerHTML = rodzaj
- selektorDrewna.appendChild(opcjaWyboruDrewna)
- })
- const labelSelektoruDrewna = document.createElement('h2')
- labelSelektoruDrewna.innerHTML = 'Wybierz tryb drewna'
- const przyciskSubmit = document.createElement('button')
- przyciskSubmit.onclick = zapiszDaneOdUzytkownika
- przyciskSubmit.innerHTML = 'Uruchom skrypt Tirówex 2000'
- const labelIlosci = document.createElement('h2')
- labelIlosci.innerHTML = 'Wybierz ilość drewna'
- const wprowadzLimitIlosci = document.createElement('input')
- wprowadzLimitIlosci.value = 100000
- modal.appendChild(labelSelektoruDrewna)
- modal.appendChild(selektorDrewna)
- modal.appendChild(labelIlosci)
- modal.appendChild(wprowadzLimitIlosci)
- modal.appendChild(document.createElement('hr'))
- modal.appendChild(przyciskSubmit)
- modal.style.cssText = 'position:absolute; background-color:white; z-index:100000; left:50%; margin-left:-25px;'
- function zapiszDaneOdUzytkownika() {
- limitIlosci = wprowadzLimitIlosci.value
- wybraneDrewno = selektorDrewna.value
- modal.style.cssText = 'display: none;'
- setInterval(() => {
- if (!czyZbierac) return
- console.log('Odświeżanie')
- odswiezZamowienia()
- }, 1000)
- }
- function wezIlosc(wiersz) {
- return +Array.from(wiersz)[4].innerHTML.replace(/ /g, '')
- }
- function wezZaplata(wiersz) {
- return +Array.from(wiersz)[5].innerHTML.replace(/ /g, '')
- }
- function wezPrzycisk(wiersz) {
- return wiersz[10].children[0]
- }
- function wezTypDrewna(wiersz) {
- return wiersz[1].children[0]
- }
- function czyTypDrewnaSieZgadza(typDrewna) {
- return typDrewna === wybraneDrewno
- }
- function czyWziac(stosunek, typDrewna) {
- const ilosc = stosunek[0]
- const zaplata = stosunek[1]
- return (zaplata * 2 > ilosc) && czyTypDrewnaSieZgadza(typDrewna)
- }
- function bierzZamowienia() {
- const zamowienia = Array.from(document.getElementById('tabela_body_zamowienia').children)
- const wierszeZamowien = Array.from(zamowienia.map(zamowienie => zamowienie.children))
- const komorkiWierszyZamowien = wierszeZamowien.map(wiersz => Array.from(wiersz))
- const stosunkiIlosciDoZaplat = komorkiWierszyZamowien.map(wiersz => {
- return {
- ilosc: wezIlosc(wiersz),
- zaplata: wezZaplata(wiersz),
- czyOK: czyWziac([wezIlosc(wiersz), wezZaplata(wiersz)], wezTypDrewna(wiersz)),
- przycisk: wezPrzycisk(wiersz)
- }
- })
- const listaBanglujacychZamowien = stosunkiIlosciDoZaplat.filter(stosunek => stosunek.czyOK)
- listaBanglujacychZamowien.forEach(zamowienie => {
- if ((aktualnieZebrane + zamowienie.ilosc) > LIMIT_ILOSCI ) {
- alert('Zebrano planowaną ilość zamówień')
- czyZbierac = false
- }
- aktualnieZebrane += zamowienie.ilosc
- zamowienie.przycisk.click()
- })
- }
- function odswiezZamowienia() {
- document.getElementById('tabela_body_zamowienia').parentElement.children[0].children[0].children[0].children[0].click()
- }
- return bierzZamowienia
- })()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement