while ($tryro = mysql_fetch_array($tryre)) { $osastot[$tryro['selite']] = $tryro['selitetark']; } $tryre = t_avainsana("TRY"); $tuoteryhmat = array(); while ($tryro = mysql_fetch_array($tryre)) { $tuoteryhmat[$tryro['selite']] = $tryro['selitetark']; } $params = array('alkuvv' => $alkuvv, 'alkukk' => $alkukk, 'alkupp' => $alkupp, 'loppuvv' => $loppuvv, 'loppukk' => $loppukk, 'loppupp' => $loppupp, 'edalkupvm' => $edalkupvm, 'edloppupvm' => $edloppupvm, 'tuoteryhmat' => $tuoteryhmat, 'osastot' => $osastot, 'ytunnus' => $ytunnus); echo t('Haetaan myyntitiedot') . '<br/>'; $data_array = array(); $bar = new ProgressBar(); $bar->initialize(count($asiakkaat) - 1); foreach ($asiakkaat as $asiakas) { $bar->increase(); $tilaukset = hae_tilaukset($params, $asiakas['tunnus']); $summa_array = array('sumkpled' => 0, 'sumkplva' => 0, 'sumed' => 0, 'sumva' => 0); foreach ($tilaukset['osastoittain'] as $tilaus) { $summa_array['sumkpled'] += $tilaus['kpled']; $summa_array['sumkplva'] += $tilaus['kplva']; $summa_array['sumed'] += $tilaus['ed']; $summa_array['sumva'] += $tilaus['va']; } $summa_array2 = array('sumkpled' => 0, 'sumkplva' => 0, 'sumed' => 0, 'sumva' => 0); foreach ($tilaukset['tuoteryhmittain'] as $tilaus) { $summa_array2['sumkpled'] += $tilaus['kpled']; $summa_array2['sumkplva'] += $tilaus['kplva']; $summa_array2['sumed'] += $tilaus['ed']; $summa_array2['sumva'] += $tilaus['va']; } $data_array[] = array('asiakasrow' => $asiakas, 'tilaukset_ilman_try' => $tilaukset['osastoittain'], 'summat_ilman_try' => $summa_array, 'tilaukset_try' => $tilaukset['tuoteryhmittain'], 'summat_try' => $summa_array2);
/** * @param DByhteys $db * @param User $user * @return stdClass[] */ function hae_tilaukset(DByhteys $db, User $user) { $sql = "SELECT tilaus.id, tilaus.paivamaara, tilaus.kasitelty,\n\t\t\t\tSUM(tilaus_tuote.kpl) AS kpl,\n\t\t\t\tSUM( tilaus_tuote.kpl * ( (tilaus_tuote.pysyva_hinta*(1+tilaus_tuote.pysyva_alv))\n\t\t\t\t\t* (1-tilaus_tuote.pysyva_alennus) ) ) AS summa\n\t\t\tFROM tilaus\n\t\t\tLEFT JOIN tilaus_tuote ON tilaus_tuote.tilaus_id = tilaus.id\n\t\t\tWHERE kayttaja_id = ?\n\t\t\tGROUP BY tilaus.id"; return $db->query($sql, [$user->id], DByhteys::FETCH_ALL); } // Jos käyttäjä on admin, ja tarkoitus hakea asiakkaan tilaukset if ($user->isAdmin() && !empty($_GET['id'])) { $asiakas = new User($db, $_GET['id']); $tilaukset = hae_tilaukset($db, $asiakas); } else { $tilaukset = hae_tilaukset($db, $user); //Muuten haetaan vain sis.kirj. käyttäjän tilaukset } ?> <!DOCTYPE html> <html lang="fi"> <head> <meta charset="UTF-8"> <title>Tilaushistoria</title> <link rel="stylesheet" href="css/styles.css"> <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons"> <script src="https://code.jquery.com/jquery-3.1.1.min.js"></script> </head> <body> <?php include 'header.php';
<?php $pupe_DataTables = "maksutapahtumaselaus"; require "../inc/parametrit.inc"; if (isset($tilaus) and $tilaus["toiminto"] == "kuittikopio") { require "tulosta_asiakkaan_kuitti.inc"; $kuitti_params = array("avaa_lipas_lopuksi" => false); tulosta_asiakkaan_kuitti($tilaus["laskunro"], $kukarow["kuittitulostin"], $kuitti_params); } $rajaus = isset($rajaus) ? $rajaus : array(); $rajaus = kasittele_rajaus($rajaus); echo "<h1 class='head'>" . t("Maksutapahtumaselaus") . "<h1><hr>"; piirra_hakuformi($rajaus); $tilaukset = hae_tilaukset($rajaus); piirra_tilaus_table($tilaukset, $rajaus, $pupe_DataTables); require "inc/footer.inc"; function piirra_hakuformi($rajaus) { echo "<form name='hakuformi' id='hakuformi'>"; echo "<table>"; echo "<tr>"; echo "<th><label for='rajaus_alku_paiva'>" . t("Syötä alkupäivämäärä") . " (Pp-Kk-Vvvv)</label></th>"; echo "<td>"; echo "<input type='number'\n name='rajaus[alku][paiva]'\n id='rajaus_alku_paiva'\n required\n min='1'\n max='31'\n value='{$rajaus["alku"]["paiva"]}'>"; echo "<input type='number'\n name='rajaus[alku][kuukausi]'\n id='rajaus_alku_kuukausi'\n required\n min='1'\n max='12'\n value='{$rajaus["alku"]["kuukausi"]}'>"; echo "<input type='number'\n name='rajaus[alku][vuosi]'\n id='rajaus_alku_vuosi'\n required\n min='1'\n max='9999'\n value='{$rajaus["alku"]["vuosi"]}'>"; echo "</td>"; echo "</tr>"; echo "<tr>"; echo "<th><label for='rajaus_loppu_paiva'>" . t("Syötä loppupäivämäärä") . " (Pp-Kk-Vvvv)</label></th>"; echo "<td>";
$request['loppu_pvm'] = date('d.m.Y', strtotime('now')); $pvm_array = explode('.', $request['loppu_pvm']); $request['ppl'] = $pvm_array[0]; $request['kkl'] = $pvm_array[1]; $request['vvl'] = $pvm_array[2]; } if ($request['tee'] == 'nayta_tilaus') { require 'naytatilaus.inc'; } else { echo_kayttoliittyma($request); if ($request['tee'] == 'hae_tilaukset') { $validations = array('sarjanro' => 'mitavaan', 'asiakas' => 'mitavaan', 'toimittaja' => 'mitavaan', 'tuote' => 'mitavaan', 'alku_pvm' => 'paiva', 'loppu_pvm' => 'paiva'); $required = array('alku_pvm', 'loppu_pvm'); $validator = new FormValidator($validations, $required); if ($validator->validate($request)) { $tilaukset = hae_tilaukset($request); //esitellään tilaus tyypit tässä jotta validaatio luokka ei yritä valitoida niitä. $request['tyypit'] = array('L' => t("Myyntitilaus"), 'O' => t("Ostotilaus"), 'A' => t("Työmääräys")); echo_tilaukset_raportti($tilaukset, $request); } else { echo $validator->getScript(); } } } function hae_tilaukset($request) { global $kukarow, $yhtiorow; $sarjanumero_where = ""; if (!empty($request['sarjanumero'])) { $sarjanumero_where = " AND sarjanumeroseuranta.sarjanumero LIKE '%{$request['sarjanumero']}%'"; }
* Hakee tilaukset * @param DByhteys $db * @return stdClass[] */ function hae_tilaukset(DByhteys $db) { $sql = "SELECT tilaus.id, tilaus.paivamaara, kayttaja.etunimi, kayttaja.sukunimi, \n\t\t\t\tSUM(tilaus_tuote.kpl * (tilaus_tuote.pysyva_hinta * (1+tilaus_tuote.pysyva_alv))) AS summa\n\t\t\tFROM tilaus\n\t\t\tLEFT JOIN kayttaja\n\t\t\t\tON kayttaja.id = tilaus.kayttaja_id\n\t\t\tLEFT JOIN tilaus_tuote\n\t\t\t\tON tilaus_tuote.tilaus_id = tilaus.id\n\t\t\tWHERE tilaus.kasitelty = 0\n\t\t\tGROUP BY tilaus.id"; return $db->query($sql, NULL, FETCH_ALL); } /** Merkitään tilaukset käsitellyiksi */ if (isset($_POST['set_done'])) { foreach ($_POST['ids'] as $id) { $db->query("UPDATE tilaus SET kasitelty = 1 WHERE id = ?", [$id]); } } $tilaukset = hae_tilaukset($db); ?> <!DOCTYPE html> <html lang="fi"> <head> <meta charset="UTF-8"> <link rel="stylesheet" href="css/styles.css"> <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons"> <script src="https://code.jquery.com/jquery-3.1.1.min.js"></script> <title>Tilaukset</title> </head> <body> <?php require 'header.php'; ?> <main class="main_body_container">