Changeset 6205 for branches/2.2
- Timestamp:
- 05/16/12 10:16:32 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2.2/workflow/inc/local/classes/class.wf_orgchart.php
r6201 r6205 16 16 */ 17 17 var $db; 18 var $ldap;19 18 20 19 /** … … 27 26 $this->db = &Factory::getInstance('WorkflowObjects')->getDBWorkflow()->Link_ID; 28 27 $this->db->setFetchMode(ADODB_FETCH_ASSOC); 29 30 $this->ldap = Factory::getInstance('wf_cached_ldap');31 28 } 32 29 … … 1139 1136 1140 1137 /** 1141 * Busca lista de funcionários pela sua localidade.1142 *1143 * Este método busca todos os funcionários de uma localidade, ou, caso a localidade não seja passada, retorna todos os funcionários.1144 * @param int $localID O ID da localidade.1145 * @param int $organizationID O ID da organização.1146 * @param boolean $searchLdap True, caso seja necessário buscar no LDAP os dados dos usuários. Ou false, caso contrário.1147 * @return array Uma array contendo os dados dos usários e sua localidade1148 * @access public1149 */1150 function getEmployeesByLocalID($localID = 0, $organizationID = 1, $searchLdap = false)1151 {1152 if(!is_numeric($localID) || !is_numeric($organizationID))1153 return false;1154 1155 $query = "SELECT DISTINCT " .1156 " l.organizacao_id, " .1157 " l.localidade_id, " .1158 " l.descricao AS localidade_descricao, " .1159 " f.funcionario_id, " .1160 " f.area_id, " .1161 " a.sigla AS area_sigla " .1162 "FROM funcionario f " .1163 "INNER JOIN localidade l " .1164 "ON (f.localidade_id = l.localidade_id) " .1165 "INNER JOIN area a " .1166 "ON (f.area_id = a.area_id) " .1167 "INNER JOIN funcionario_status fs " .1168 "ON (f.funcionario_status_id = fs.funcionario_status_id) " .1169 "WHERE (l.organizacao_id = ?) AND (fs.exibir = 'S') ";1170 1171 $param[] = $organizationID;1172 if(!empty($localID)){1173 $query .= " AND l.localidade_id = ? ";1174 $param[] = $localID;1175 }1176 1177 $query .= "ORDER BY l.descricao, a.sigla ";1178 1179 $result = $this->db->query($query, $param);1180 if (!$result)1181 return false;1182 1183 $output = $result->GetArray(-1);1184 1185 if(is_array($output) && $searchLdap){1186 foreach($output AS $k => $value){1187 $user_data = $this->ldap->getEntryByID($value['funcionario_id']);1188 $output[$k]['nome'] = $user_data['cn'];1189 $output[$k]['telefone'] = $user_data['telephonenumber'];1190 }1191 }1192 1193 return $output;1194 }1195 1196 /**1197 1138 * Busca lista de funcionários de uma área pelo ID da área. 1198 1139 *
Note: See TracChangeset
for help on using the changeset viewer.