Proyectos de Subversion LeadersLinked - Backend

Rev

Rev 15746 | Rev 15748 | Ir a la última revisión | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 15746 Rev 15747
Línea 84... Línea 84...
84
                        $isJson = strpos($raw, 'json');
84
                        $isJson = strpos($raw, 'json');
85
                    }
85
                    }
86
                }
86
                }
87
            }
87
            }
Línea 88... Línea 88...
88
 
88
 
Línea 89... Línea 89...
89
            if ($isJson) {
89
            //if ($isJson) {
90
 
90
 
91
                $data = [
91
            $data = [
-
 
92
                'items' => [],
-
 
93
                'total' => 0,
-
 
94
 
-
 
95
            ];
-
 
96
 
-
 
97
            $search = $this->params()->fromQuery('search');
-
 
98
            $search = empty($search['value']) ? '' : filter_var($search['value'], FILTER_SANITIZE_STRING);
-
 
99
            $page               = intval($this->params()->fromQuery('start', 1), 10);
-
 
100
            $records_x_page     = intval($this->params()->fromQuery('length', 10), 10);
-
 
101
            $order =  $this->params()->fromQuery('order', []);
-
 
102
            $order_field        = empty($order[0]['column']) ? 99 :  intval($order[0]['column'], 10);
-
 
103
            $order_direction    = empty($order[0]['dir']) ? 'ASC' : strtoupper(filter_var($order[0]['dir'], FILTER_SANITIZE_STRING));
Línea 92... Línea -...
92
                    'items' => [],
-
 
93
                    'total' => 0,
-
 
94
 
-
 
95
                ];
-
 
96
 
-
 
97
                $search = $this->params()->fromQuery('search');
-
 
98
                $search = empty($search['value']) ? '' : filter_var($search['value'], FILTER_SANITIZE_STRING);
-
 
99
                $page               = intval($this->params()->fromQuery('start', 1), 10);
-
 
100
                $records_x_page     = intval($this->params()->fromQuery('length', 10), 10);
-
 
101
                $order =  $this->params()->fromQuery('order', []);
-
 
102
                $order_field        = empty($order[0]['column']) ? 99 :  intval($order[0]['column'], 10);
-
 
103
                $order_direction    = empty($order[0]['dir']) ? 'ASC' : strtoupper(filter_var($order[0]['dir'], FILTER_SANITIZE_STRING));
-
 
104
                $fields =  ['first_name', 'last_name', 'corporate_email', 'activity'];
104
            $fields =  ['first_name', 'last_name', 'corporate_email', 'activity'];
105
                $order_field = isset($fields[$order_field]) ? $fields[$order_field] : 'first_name';
105
            $order_field = isset($fields[$order_field]) ? $fields[$order_field] : 'first_name';
106
 
106
 
Línea 107... Línea 107...
107
                if (!in_array($order_direction, ['ASC', 'DESC'])) {
107
            if (!in_array($order_direction, ['ASC', 'DESC'])) {
108
                    $order_direction = 'ASC';
108
                $order_direction = 'ASC';
109
                }
109
            }
110
 
110
 
111
 
111
 
112
                //Quede aqui en el mapper
112
            //Quede aqui en el mapper
113
                $discoveryContactLogMapper = DiscoveryContactLogMapper::getInstance($this->adapter);
113
            $discoveryContactLogMapper = DiscoveryContactLogMapper::getInstance($this->adapter);
114
                $contactLogMappers = $discoveryContactLogMapper->fetchAll();
114
            $contactLogMappers = $discoveryContactLogMapper->fetchAll();
115
 
115
 
116
                // foreach ($contactLogMappers as $contactLogMapper) {
116
            // foreach ($contactLogMappers as $contactLogMapper) {
117
                $queryMapper = QueryMapper::getInstance($this->adapter);
117
            $queryMapper = QueryMapper::getInstance($this->adapter);
118
                $sql = $queryMapper->getSql();
118
            $sql = $queryMapper->getSql();
119
                $select = $sql->select();
119
            $select = $sql->select();
120
                $select->columns(['user_id', 'activity', 'details', 'added_on']);
120
            $select->columns(['user_id', 'activity', 'details', 'added_on']);
121
                $select->from(['tb1' => DiscoveryContactLogMapper::_TABLE], ['activity', 'details', 'added_on']);
121
            $select->from(['tb1' => DiscoveryContactLogMapper::_TABLE], ['activity', 'details', 'added_on']);
122
                $select->join(['tb2' => UserMapper::_TABLE], 'tb1.user_id = tb2.id', ['uuid', 'first_name', 'last_name', 'email']);
122
            $select->join(['tb2' => UserMapper::_TABLE], 'tb1.user_id = tb2.id', ['uuid', 'first_name', 'last_name', 'email']);
123
                $select->join(['tb3' => CompanyMapper::_TABLE], 'tb1.company_id = tb3.id', ['name']);
123
            $select->join(['tb3' => CompanyMapper::_TABLE], 'tb1.company_id = tb3.id', ['name']);
124
                //$select->where->equalTo('tb1.company_id', $contactLogMapper->company_id);
124
            //$select->where->equalTo('tb1.company_id', $contactLogMapper->company_id);
125
 
125
 
126
                if ($search) {
126
            if ($search) {
127
                    $select->where->nest()
127
                $select->where->nest()
Línea 128... Línea 128...
128
                        ->like('first_name', '%' . $search . '%')
128
                    ->like('first_name', '%' . $search . '%')
129
                        ->or->like('last_name', '%' . $search . '%')
129
                    ->or->like('last_name', '%' . $search . '%')
130
                        ->or->like('email', '%' . $search . '%')
130
                    ->or->like('email', '%' . $search . '%')
131
                        ->unnest();
131
                    ->unnest();
132
                }
132
            }
133
 
133
 
134
                $select->order($order_field . ' ' . $order_direction);
134
            $select->order($order_field . ' ' . $order_direction);
135
                $hydrator   = new ArraySerializableHydrator();
135
            $hydrator   = new ArraySerializableHydrator();
136
                $resultset  = new HydratingResultSet($hydrator);
136
            $resultset  = new HydratingResultSet($hydrator);
137
                $adapter = new DbSelect($select, $sql, $resultset);
137
            $adapter = new DbSelect($select, $sql, $resultset);
138
                $paginator = new Paginator($adapter);
138
            $paginator = new Paginator($adapter);
139
                $paginator->setItemCountPerPage($records_x_page);
139
            $paginator->setItemCountPerPage($records_x_page);
140
                $paginator->setCurrentPageNumber($page);
140
            $paginator->setCurrentPageNumber($page);
141
 
141
 
142
 
142
 
143
                $items = [];
143
            $items = [];
144
                $records = $paginator->getCurrentItems();
144
            $records = $paginator->getCurrentItems();
145
                foreach ($records as $record) {
145
            foreach ($records as $record) {
146
 
146
 
147
                    $dt_added_on = \DateTime::createFromFormat('Y-m-d H:i:s', $record['added_on']);
147
                $dt_added_on = \DateTime::createFromFormat('Y-m-d H:i:s', $record['added_on']);
148
                    $added_on = $dt_added_on->format('d/m/Y h:i a');
148
                $added_on = $dt_added_on->format('d/m/Y h:i a');
149
                    $item = [
149
                $item = [
150
                        'uuid' => $record['uuid'],
150
                    'uuid' => $record['uuid'],
151
                        'first_name' => ucwords(strtolower($record['first_name'])),
151
                    'first_name' => ucwords(strtolower($record['first_name'])),
152
                        'last_name' => ucwords(strtolower($record['last_name'])),
152
                    'last_name' => ucwords(strtolower($record['last_name'])),
Línea 153... Línea 153...
153
                        'email' => strtolower($record['email']),
153
                    'email' => strtolower($record['email']),
154
                        'company' => $record['name'],
154
                    'company' => $record['name'],
Línea 155... Línea 155...
155
                        'activity' => $record['activity'],
155
                    'activity' => $record['activity'],
156
                        'details' => $record['details'],
156
                    'details' => $record['details'],
Línea 157... Línea 157...
157
                        'added_on' => $added_on,
157
                    'added_on' => $added_on,
158
                    ];
158
                ];
159
 
159
 
160
 
160
 
161
                    array_push($items, $item);
161
                array_push($items, $item);
162
                }
162
            }
163
 
163
 
164
                $data['items'] = $items;
164
            $data['items'] = $items;
Línea 165... Línea 165...
165
                $data['total'] = $paginator->getTotalItemCount();
165
            $data['total'] = $paginator->getTotalItemCount();
166
 
166