Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

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

Rev 1 Rev 169
Línea 82... Línea 82...
82
        return $this->executeFetchOneObject($select, $prototype);
82
        return $this->executeFetchOneObject($select, $prototype);
83
    }
83
    }
Línea 84... Línea 84...
84
    
84
    
85
    /**
85
    /**
-
 
86
     *
-
 
87
     * @param int $company_id
-
 
88
     * @param $competency_id_default
-
 
89
     * @return Competency
-
 
90
     */
-
 
91
    public function fetchOneByCompanyIdAndCompetencyIdDefault($company_id, $competency_id_default)
-
 
92
    {
-
 
93
        $select = $this->sql->select(self::_TABLE);
-
 
94
        $select->where->equalTo('company_id', $company_id);
-
 
95
        $select->where->equalTo('competency_id_default', $competency_id_default);
-
 
96
        $select->limit(1);
-
 
97
        
-
 
98
        $prototype = new Competency();
-
 
99
        return $this->executeFetchOneObject($select, $prototype);
-
 
100
    }
-
 
101
    
-
 
102
    
-
 
103
    /**
-
 
104
     *
-
 
105
     * @param string $uuid
-
 
106
     * @return Competency[]
-
 
107
     */
-
 
108
    public function fetchAllByDefault()
-
 
109
    {
-
 
110
        $select = $this->sql->select(self::_TABLE);
-
 
111
        $select->where->isNull('company_id');
-
 
112
 
-
 
113
        
-
 
114
        $prototype = new Competency();
-
 
115
        return $this->executeFetchAllObject($select, $prototype);
-
 
116
    }
-
 
117
    
-
 
118
    /**
86
     *
119
     *
87
     * @param string $search
120
     * @param string $search
88
     * @param int $page
121
     * @param int $page
89
     * @param int $records_per_page
122
     * @param int $records_per_page
90
     * @param string $order_field
123
     * @param string $order_field
Línea 103... Línea 136...
103
        }
136
        }
104
        $select->order($order_field . ' ' . $order_direction);
137
        $select->order($order_field . ' ' . $order_direction);
Línea 105... Línea 138...
105
        
138
        
Línea -... Línea 139...
-
 
139
        $resultset  = new HydratingResultSet();
-
 
140
        
-
 
141
        $adapter = new DbSelect($select, $this->sql, $resultset);
-
 
142
        $paginator = new Paginator($adapter);
-
 
143
        $paginator->setItemCountPerPage($records_per_page);
-
 
144
        $paginator->setCurrentPageNumber($page);
-
 
145
        
-
 
146
        
-
 
147
        return $paginator;
-
 
148
    }
-
 
149
    
-
 
150
    /**
-
 
151
     *
-
 
152
     * @param int $company_id
-
 
153
     * @param string $search
-
 
154
     * @param int $page
-
 
155
     * @param int $records_per_page
-
 
156
     * @param string $order_field
-
 
157
     * @param string $order_direction
-
 
158
     * @return Paginator
-
 
159
     */
-
 
160
    public function fetchAllDataTableByCompanyId($company_id, $search, $page = 1, $records_per_page = 10, $order_field= 'name', $order_direction = 'ASC')
-
 
161
    {
-
 
162
        $select = $this->sql->select();
-
 
163
        $select->columns(['id', 'uuid', 'name', 'status']);
-
 
164
        $select->from(['c' => self::_TABLE]);
-
 
165
        $select->join(['ct' => CompetencyTypeMapper::_TABLE], 'c.competency_type_id =  ct.id', ['type' => 'name']);
-
 
166
        $select->where->equalTo('c.company_id', $company_id);
-
 
167
        
-
 
168
        
-
 
169
        if($search) {
-
 
170
            $select->where->NEST->like('name', '%' . $search . '%')->or
-
 
171
            ->like('type', '%' . $search . '%')->UNNEST;
-
 
172
        }
-
 
173
        $select->order($order_field . ' ' . $order_direction);
-
 
174
        
106
        $resultset  = new HydratingResultSet();
175
        $resultset  = new HydratingResultSet();
107
        
176
        
108
        $adapter = new DbSelect($select, $this->sql, $resultset);
177
        $adapter = new DbSelect($select, $this->sql, $resultset);
109
        $paginator = new Paginator($adapter);
178
        $paginator = new Paginator($adapter);