Subversion-Projekte lars-tiefland.ci

Revision

Revision 1309 | Revision 1335 | 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: 1332 $
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,
1332 lars 63
				Bemerkung,
64
				Bemerkung_extern,
1173 lars 65
				bezahlt_am,
1273 lars 66
				s.name AS shop,
1277 lars 67
				ba.name AS bestellart
1173 lars 68
			FROM
69
				Bestellung b
70
			JOIN
71
				shops s
72
			ON
73
				s.id=b.shops_id
1273 lars 74
			JOIN
75
				bestellart ba
76
			ON
1274 lars 77
				ba.id=b.bestellart_id
1173 lars 78
			WHERE
79
				b.id=".$id."
80
		";
81
		$res = $GLOBALS['order_db']->query($sql);
82
		$order = $res->unbuffered_row('array');
83
		$billAddr = $this->bestelladresse->get($order['bill_addr_id']);
84
		$shipAddr = $this->bestelladresse->get($order['ship_addr_id']);
85
		$artikel = $this->artikel->get($order['id']);
1309 lars 86
		$dokumente = $this->dokumente->get_list($order['id']);
1173 lars 87
		$artikelstatus_buffer = unserialize($order["artikelstatus_buffer"]);
88
		foreach ($artikelstatus_buffer as $key => $value)
89
		{
90
			switch ($key)
91
			{
92
				case "statusOffen":
93
					$info[$key]["class"] = "status_red";
94
					break;
95
				case "statusInBearbeitung":
96
					$info[$key]["class"] = "status_yellow";
97
					break;
98
				case "statusReserviert":
99
					$info[$key]["class"] = "status_blue";
100
					break;
101
				case "statusErledigt":
102
					$info[$key]["class"] = "status_green";
103
					break;
104
				case "statusAbgeschlossen":
105
				default:
106
					$info[$key]["class"] = "status_white";
107
					break;
108
 
109
			}
110
			$info[$key]["wert"] = $value;
111
		}
112
		$order["info"] = $info;
113
		$rechnungsstatus_buffer = unserialize($order["rechnungsstatus_buffer"]);
114
		foreach ($rechnungsstatus_buffer as $key => $value)
115
		{
116
			switch ($key)
117
			{
118
				case "rechnungSchreiben":
119
					$rstatus[$key]["class"] = "status_red";
120
					break;
121
				case "rechnungGeschrieben":
122
					$rstatus[$key]["class"] = "status_yellow";
123
					break;
124
				case "rechnungBezahlt":
125
					$rstatus[$key]["class"] = "status_green";
126
					break;
127
 
128
			}
129
			$rstatus[$key]["wert"] = $value;
130
		}
131
		$order["rechnungsstatus"] = $rstatus;
132
		$lieferscheinstatus_buffer = unserialize($order["lieferscheinstatus_buffer"]);
133
		foreach ($lieferscheinstatus_buffer as $key => $value)
134
		{
135
			switch ($key)
136
			{
137
				case "lieferscheinSchreiben":
138
					$lstatus[$key]["class"] = "status_yellow";
139
					break;
140
				case "lieferscheinGeschrieben":
141
					$lstatus[$key]["class"] = "status_green";
142
					break;
143
				case "lieferscheinOffen":
144
					$lstatus[$key]["class"] = "status_red";
145
					break;
146
 
147
			}
148
			$lstatus[$key]["wert"] = $value;
149
		}
150
		$order['lieferscheinstatus'] = $lstatus;
1309 lars 151
		$order['dokumente'] = $dokumente;
1173 lars 152
		$order['artikel'] = $artikel;
153
		$order['shipAddr'] = $shipAddr;
154
		$order['billAddr'] = $billAddr;
155
 
156
		return $order;
157
	}
1132 lars 158
}
159
 
1332 lars 160
?>