1 <?php
2
3 namespace PLus\Orders\Repositories\Order;
4
5 6 7 8 9
10 class ItemareastateRepository extends \PLus\Orders\Repositories\Repository {
11
12
13 function addAreaState($itemorder_id, $area_id, $user_id) {
14 try {
15 $this->getTable()->insert(array('itemorder_id' => $itemorder_id, 'area_id' => $area_id, 'user_id' => $user_id));
16
17 } catch (\PDOException $ex) {
18 throw $ex;
19 }
20 }
21
22 23 24 25 26 27 28
29 public function countAreaState($itemorder_id, $area_id) {
30 return $this->getTable()
31 ->select('COUNT(*) AS cnt')
32 ->where('itemorder_id ? AND area_id ? AND isresult ?', $itemorder_id, $area_id, NULL)
33 ->fetch();
34
35 }
36
37 38 39 40 41 42
43 public function countItemState($itemorder_id) {
44 return $this->getTable()
45 ->select('COUNT(*) AS cnt')
46 ->where('itemorder_id ? AND isresult ?', $itemorder_id, NULL)
47 ->fetch();
48 }
49
50 51 52 53 54 55 56 57
58 public function updateState($itemorder_id, $area_id, $user_id) {
59 try {
60 $this->getTable()->where(array('itemorder_id' => $itemorder_id, 'area_id' => $area_id, 'isresult' => NULL))
61 ->update(array('isresult' => 1, 'user_id' => $user_id, 'created' => date('Y-m-d H:i:s')));
62 } catch (Exception $ex) {
63 throw $ex;
64 }
65 }
66
67 68 69 70 71 72
73 public function findAreaNotResult($itemorder_id) {
74 return $this->getTable()
75 ->select('item_area_state.*,area.name')
76 ->where('isresult', NULL)
77 ->where('itemorder_id', $itemorder_id);
78 }
79 }
80