Subversion-Projekte lars-tiefland.ci

Revision

Revision 1281 | Revision 1332 | Zur aktuellen Revision | Details | Vergleich mit vorheriger | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
1132 lars 1
<?php
2
 
3
/**
4
 *
5
 * @package WebanOS CI
6
 * @author Lars Tiefland <ltiefland@gmail.com>
7
 * @copyright 2016
8
 * @version $Rev: 1309 $
9
 */
10
 
11
class Order_model extends CI_Model
12
{
13
	public function __construct()
14
	{
15
		parent::__construct();
1136 lars 16
		$this->load->model('bestelladresse_model', 'bestelladresse');
17
		$this->load->model('artikel_to_bestellung_model', 'artikel');
1309 lars 18
		$this->load->model('dokumente_model', 'dokumente');
1132 lars 19
	}
20
 
21
	public function get_list()
22
	{
23
		$orders = array();
24
		$sql = "SELECT
1173 lars 25
				b.id
1132 lars 26
			FROM
1150 lars 27
				Bestellung b
1132 lars 28
			ORDER BY
1152 lars 29
				b.id DESC
1145 lars 30
			LIMIT
31
				100
1132 lars 32
		";
33
		$res = $GLOBALS['order_db']->query($sql);
1134 lars 34
		while ($order = $res->unbuffered_row('array'))
1132 lars 35
		{
1173 lars 36
			$order = $this->get($order['id']);
1132 lars 37
			$orders[] = $order;
38
		}
39
		return $orders;
40
	}
1173 lars 41
 
42
	public function get($id)
43
	{
44
		$orders = array();
45
		$sql = "SELECT
46
				b.id,
1273 lars 47
				b.language,
1192 lars 48
				b.shops_ID,
49
				b.login,
1173 lars 50
				bill_addr_id,
51
				ship_addr_id,
52
				erstellt_am,
1204 lars 53
				erstellt_von,
54
				letzte_aenderung_am,
55
				letzte_aenderung_von,
1173 lars 56
				status,
1281 lars 57
				gesamtsumme_buffer,
1173 lars 58
				fremd_id,
59
				artikelstatus_buffer,
60
				rechnungsstatus_buffer,
61
				lieferscheinstatus_buffer,
62
				bezahlt,
63
				bezahlt_am,
1273 lars 64
				s.name AS shop,
1277 lars 65
				ba.name AS bestellart
1173 lars 66
			FROM
67
				Bestellung b
68
			JOIN
69
				shops s
70
			ON
71
				s.id=b.shops_id
1273 lars 72
			JOIN
73
				bestellart ba
74
			ON
1274 lars 75
				ba.id=b.bestellart_id
1173 lars 76
			WHERE
77
				b.id=".$id."
78
		";
79
		$res = $GLOBALS['order_db']->query($sql);
80
		$order = $res->unbuffered_row('array');
81
		$billAddr = $this->bestelladresse->get($order['bill_addr_id']);
82
		$shipAddr = $this->bestelladresse->get($order['ship_addr_id']);
83
		$artikel = $this->artikel->get($order['id']);
1309 lars 84
		$dokumente = $this->dokumente->get_list($order['id']);
1173 lars 85
		$artikelstatus_buffer = unserialize($order["artikelstatus_buffer"]);
86
		foreach ($artikelstatus_buffer as $key => $value)
87
		{
88
			switch ($key)
89
			{
90
				case "statusOffen":
91
					$info[$key]["class"] = "status_red";
92
					break;
93
				case "statusInBearbeitung":
94
					$info[$key]["class"] = "status_yellow";
95
					break;
96
				case "statusReserviert":
97
					$info[$key]["class"] = "status_blue";
98
					break;
99
				case "statusErledigt":
100
					$info[$key]["class"] = "status_green";
101
					break;
102
				case "statusAbgeschlossen":
103
				default:
104
					$info[$key]["class"] = "status_white";
105
					break;
106
 
107
			}
108
			$info[$key]["wert"] = $value;
109
		}
110
		$order["info"] = $info;
111
		$rechnungsstatus_buffer = unserialize($order["rechnungsstatus_buffer"]);
112
		foreach ($rechnungsstatus_buffer as $key => $value)
113
		{
114
			switch ($key)
115
			{
116
				case "rechnungSchreiben":
117
					$rstatus[$key]["class"] = "status_red";
118
					break;
119
				case "rechnungGeschrieben":
120
					$rstatus[$key]["class"] = "status_yellow";
121
					break;
122
				case "rechnungBezahlt":
123
					$rstatus[$key]["class"] = "status_green";
124
					break;
125
 
126
			}
127
			$rstatus[$key]["wert"] = $value;
128
		}
129
		$order["rechnungsstatus"] = $rstatus;
130
		$lieferscheinstatus_buffer = unserialize($order["lieferscheinstatus_buffer"]);
131
		foreach ($lieferscheinstatus_buffer as $key => $value)
132
		{
133
			switch ($key)
134
			{
135
				case "lieferscheinSchreiben":
136
					$lstatus[$key]["class"] = "status_yellow";
137
					break;
138
				case "lieferscheinGeschrieben":
139
					$lstatus[$key]["class"] = "status_green";
140
					break;
141
				case "lieferscheinOffen":
142
					$lstatus[$key]["class"] = "status_red";
143
					break;
144
 
145
			}
146
			$lstatus[$key]["wert"] = $value;
147
		}
148
		$order['lieferscheinstatus'] = $lstatus;
1309 lars 149
		$order['dokumente'] = $dokumente;
1173 lars 150
		$order['artikel'] = $artikel;
151
		$order['shipAddr'] = $shipAddr;
152
		$order['billAddr'] = $billAddr;
153
 
154
		return $order;
155
	}
1132 lars 156
}
157
 
158
?>