Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

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

Rev 2827 Rev 3186
Línea 6... Línea 6...
6
 
6
 
7
use Laminas\Db\Adapter\AdapterInterface;
7
use Laminas\Db\Adapter\AdapterInterface;
8
use LeadersLinked\Hydrator\ObjectPropertyHydrator;
8
use LeadersLinked\Hydrator\ObjectPropertyHydrator;
9
use LeadersLinked\Model\Behavior;
9
use LeadersLinked\Model\Behavior;
-
 
10
use LeadersLinked\Mapper\Common\MapperCommon;
-
 
11
use Laminas\Db\ResultSet\HydratingResultSet;
-
 
12
use Laminas\Paginator\Paginator;
Línea 10... Línea 13...
10
use LeadersLinked\Mapper\Common\MapperCommon;
13
use Laminas\Paginator\Adapter\DbSelect;
Línea 11... Línea 14...
11
 
14
 
Línea 54... Línea 57...
54
    }
57
    }
Línea 55... Línea 58...
55
 
58
 
56
    /**
59
    /**
57
     *
60
     *
58
     * @param int $company_id
61
     * @param int $company_id
59
     * @param int $behavior_type_id_default
62
     * @param int $behavior_id_default
60
     * @return Behavior
63
     * @return Behavior
61
     */
64
     */
62
    public function fetchOneByCompanyId($company_id, $behavior_type_id_default) {
65
    public function fetchOneByCompanyIdAndIdDefault($company_id, $behavior_id_default) {
63
        $select = $this->sql->select(self::_TABLE);
66
        $select = $this->sql->select(self::_TABLE);
-
 
67
        $select->where->equalTo('company_id', $company_id);
64
        $select->where->equalTo('company_id', $company_id);
68
        $select->where->equalTo('behavior_id_default', $behavior_id_default);
Línea 65... Línea 69...
65
        $select->limit(1);
69
        $select->limit(1);
66
 
70
 
67
        $prototype = new Behavior();
71
        $prototype = new Behavior();
Línea 91... Línea 95...
91
        $select->where->isNull('company_id');
95
        $select->where->isNull('company_id');
Línea 92... Línea 96...
92
 
96
 
93
        $prototype = new Behavior();
97
        $prototype = new Behavior();
94
        return $this->executeFetchAllObject($select, $prototype);
98
        return $this->executeFetchAllObject($select, $prototype);
-
 
99
    }
-
 
100
    
-
 
101
    /**
-
 
102
     *
-
 
103
     * @param int $company_id
-
 
104
     * @param int $behavior_type_id_default
-
 
105
     * @return Behavior[]
-
 
106
     */
-
 
107
    public function fetchAllCompanyIdOnlyActives($company_id) {
-
 
108
        $select = $this->sql->select(self::_TABLE);
-
 
109
        $select->where->equalTo('company_id', $company_id);
-
 
110
        $select->where->equalTo('status', Behavior::STATUS_ACTIVE);
-
 
111
        
-
 
112
        $prototype = new Behavior();
-
 
113
        return $this->executeFetchAllObject($select, $prototype);
-
 
114
    }
-
 
115
    
-
 
116
    /**
-
 
117
     *
-
 
118
     * @return Behavior[]
-
 
119
     */
-
 
120
    public function fetchAllByDefaultOnlyActives() {
-
 
121
        $select = $this->sql->select(self::_TABLE);
-
 
122
        $select->where->isNull('company_id');
-
 
123
        $select->where->equalTo('status', Behavior::STATUS_ACTIVE);
-
 
124
        
-
 
125
        $prototype = new Behavior();
-
 
126
        return $this->executeFetchAllObject($select, $prototype);
Línea 95... Línea 127...
95
    }
127
    }
96
 
128
 
97
    /**
129
    /**
98
     *
130
     *
Línea 128... Línea 160...
128
 
160
 
129
 
161
 
130
 
162
 
131
    /**
163
    /**
132
     *
164
     *
133
     * @param Behavior $behaviorType
165
     * @param Behavior $behavior
134
     * @return boolean
166
     * @return boolean
135
     */
167
     */
Línea 136... Línea 168...
136
    public function insert($behaviorType) {
168
    public function insert($behavior) {
137
        $hydrator = new ObjectPropertyHydrator();
169
        $hydrator = new ObjectPropertyHydrator();
Línea 138... Línea 170...
138
        $values = $hydrator->extract($behaviorType);
170
        $values = $hydrator->extract($behavior);
139
 
171
 
140
        $insert = $this->sql->insert(self::_TABLE);
172
        $insert = $this->sql->insert(self::_TABLE);
141
        $insert->values($values);
173
        $insert->values($values);
Línea 142... Línea 174...
142
 
174
 
143
 
175
 
Línea 144... Línea 176...
144
        $result = $this->executeInsert($insert);
176
        $result = $this->executeInsert($insert);
145
        if ($result) {
177
        if ($result) {
146
            $behaviorType->id = $this->lastInsertId;
178
            $behavior->id = $this->lastInsertId;
147
        }
179
        }
148
 
180
 
149
        return $result;
181
        return $result;
150
    }
182
    }
151
 
183
 
Línea 152... Línea 184...
152
    /**
184
    /**
153
     *
185
     *
154
     * @param Behavior $behaviorType
186
     * @param Behavior $behavior
Línea 155... Línea 187...
155
     * @return boolean
187
     * @return boolean
156
     */
188
     */
Línea 157... Línea 189...
157
    public function update($behaviorType) {
189
    public function update($behavior) {
158
        $hydrator = new ObjectPropertyHydrator();
190
        $hydrator = new ObjectPropertyHydrator();
159
        $values = $hydrator->extract($behaviorType);
191
        $values = $hydrator->extract($behavior);
160
 
192
 
161
        $update = $this->sql->update(self::_TABLE);
193
        $update = $this->sql->update(self::_TABLE);
162
        $update->set($values);
194
        $update->set($values);
163
        $update->where->equalTo('id', $behaviorType->id);
195
        $update->where->equalTo('id', $behavior->id);
164
 
196
 
Línea 258... Línea 290...
258
        $select->limit(1);
290
        $select->limit(1);
Línea 259... Línea 291...
259
        
291
        
260
        $prototype = new Behavior();
292
        $prototype = new Behavior();
261
        return $this->executeFetchOneObject($select, $prototype);
293
        return $this->executeFetchOneObject($select, $prototype);
-
 
294
    }
-
 
295
    
-
 
296
    /**
-
 
297
     *
-
 
298
     * @param string $search
-
 
299
     * @param int $page
-
 
300
     * @param int $records_per_page
-
 
301
     * @param string $order_field
-
 
302
     * @param string $order_direction
-
 
303
     * @return Paginator
-
 
304
     */
-
 
305
    public function fetchAllDataTable($search, $page = 1, $records_per_page = 10, $order_field = 'description', $order_direction = 'ASC') {
-
 
306
        $prototype = new Behavior();
-
 
307
        $select = $this->sql->select(self::_TABLE);
-
 
308
        $select->where->isNull('company_id');
-
 
309
        
-
 
310
        if ($search) {
-
 
311
            $select->where->like('description', '%' . $search . '%');
-
 
312
        }
-
 
313
        $select->order($order_field . ' ' . $order_direction);
-
 
314
        
-
 
315
        $hydrator = new ObjectPropertyHydrator();
-
 
316
        $resultset = new HydratingResultSet($hydrator, $prototype);
-
 
317
        
-
 
318
        $adapter = new DbSelect($select, $this->sql, $resultset);
-
 
319
        $paginator = new Paginator($adapter);
-
 
320
        $paginator->setItemCountPerPage($records_per_page);
-
 
321
        $paginator->setCurrentPageNumber($page);
-
 
322
        
-
 
323
        
-
 
324
        return $paginator;
-
 
325
    }
-
 
326
    
-
 
327
    /**
-
 
328
     *
-
 
329
     * @param int $company_id
-
 
330
     * @param string $search
-
 
331
     * @param int $page
-
 
332
     * @param int $records_per_page
-
 
333
     * @param string $order_field
-
 
334
     * @param string $order_direction
-
 
335
     * @return Paginator
-
 
336
     */
-
 
337
    public function fetchAllDataTableByCompanyId($company_id, $search, $page = 1, $records_per_page = 10, $order_field = 'description', $order_direction = 'ASC') {
-
 
338
        $prototype = new Behavior();
-
 
339
        $select = $this->sql->select(self::_TABLE);
-
 
340
        $select->where->equalTo('company_id', $company_id);
-
 
341
        
-
 
342
        
-
 
343
        if ($search) {
-
 
344
            $select->where->NEST->like('description', '%' . $search . '%')->UNNEST;
-
 
345
        }
-
 
346
        $select->order($order_field . ' ' . $order_direction);
-
 
347
        
-
 
348
        $hydrator = new ObjectPropertyHydrator();
-
 
349
        $resultset = new HydratingResultSet($hydrator, $prototype);
-
 
350
        
-
 
351
        $adapter = new DbSelect($select, $this->sql, $resultset);
-
 
352
        $paginator = new Paginator($adapter);
-
 
353
        $paginator->setItemCountPerPage($records_per_page);
-
 
354
        $paginator->setCurrentPageNumber($page);
-
 
355
        
-
 
356
        
-
 
357
        return $paginator;
Línea 262... Línea 358...
262
    }
358
    }