-
Notifications
You must be signed in to change notification settings - Fork 23
/
Copy pathkorvaavat.class.php
93 lines (73 loc) · 2.3 KB
/
korvaavat.class.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
<?php
class Korvaavat {
public $id;
public $tuote;
public $paatuote;
function __construct($tuoteno) {
global $kukarow;
// Tuotenumero on pakko olla
if (empty($tuoteno)) exit("Korvaavat ketjun haku tarvitsee tuotenumeron");
// Haetaan haetun tuotteen tiedot korvaavuusketjusta
$query = "SELECT *
FROM korvaavat
WHERE yhtio = '{$kukarow['yhtio']}'
AND tuoteno = '{$tuoteno}'
LIMIT 1";
$tuote_result = pupe_query($query);
$tuote = mysql_fetch_assoc($tuote_result);
// Ketju ja tuote talteen
$this->id = $tuote['id'];
$this->tuote = $tuote;
}
/**
* Haetaan koko korvaavuusketju
*/
function tuotteet($options = array()) {
global $kukarow;
$tuotteet = array();
$conditions = '';
if (!empty($options)) {
// Tsekataan tarvittavat parametrit
if ($options['korvaavuusketjun_jarjestys'] == 'K') {
if ($this->tuote['jarjestys'] == 0) {
$this->tuote['jarjestys'] = 9999;
}
$conditions = "HAVING jarjestys <= {$this->tuote['jarjestys']}";
}
}
if ($this->id) {
// Haetaan korvaavat ketju ja tuotteiden tiedot
$query = "SELECT 'korvaava' as tyyppi, if (jarjestys=0, 9999, jarjestys) jarjestys, tuote.*
FROM korvaavat
JOIN tuote ON korvaavat.yhtio=tuote.yhtio AND korvaavat.tuoteno=tuote.tuoteno
WHERE korvaavat.yhtio = '{$kukarow['yhtio']}'
AND korvaavat.id = {$this->id}
$conditions
ORDER BY jarjestys desc, tuoteno";
$result = pupe_query($query);
while ($tuote = mysql_fetch_assoc($result)) {
$tuotteet[$tuote['tuoteno']] = $tuote;
}
}
return $tuotteet;
}
/**
* Hakee ketjun päätuotteen
*/
function paatuote() {
global $kukarow;
// Haetaan ketjun päätuote
if ($this->id) {
$query = "SELECT *
FROM korvaavat
WHERE yhtio = '{$kukarow['yhtio']}'
AND id = {$this->id}
ORDER BY if (jarjestys=0, 9999, jarjestys), tuoteno
LIMIT 1";
$result = pupe_query($query);
$ketju = mysql_fetch_assoc($result);
$this->paatuote = $ketju;
}
return $this->paatuote['tuoteno'];
}
}