Changeset 1245 for trunk/workflow/inc/class.so_orgchart.inc.php
- Timestamp:
- 08/03/09 09:52:13 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/workflow/inc/class.so_orgchart.inc.php
r795 r1245 142 142 143 143 if ($this->isAdmin) 144 $query = "SELECT organizacao_id, nome, descricao, ativa, url_imagem FROM organizacao ORDER BY nome";144 $query = "SELECT organizacao_id, nome, descricao, ativa, url_imagem, sitio FROM organizacao ORDER BY nome"; 145 145 else 146 146 { … … 169 169 * @access public 170 170 */ 171 function addOrganization($name, $description, $imageURL, $active )171 function addOrganization($name, $description, $imageURL, $active, $siteURL) 172 172 { 173 173 $this->_checkAccess(null, true); 174 174 175 $query = "INSERT INTO organizacao(nome, descricao, url_imagem, ativa ) VALUES(?, ?, ?, ?)";176 $result = $this->db->query($query, array($name, $description, $imageURL, $active ));175 $query = "INSERT INTO organizacao(nome, descricao, url_imagem, ativa, sitio) VALUES(?, ?, ?, ?, ?)"; 176 $result = $this->db->query($query, array($name, $description, $imageURL, $active, $siteURL)); 177 177 $this->_checkError($result); 178 178 … … 190 190 * @access public 191 191 */ 192 function updateOrganization($name, $description, $imageURL, $active, $organizationID )193 { 194 $this->_checkAccess($organizationID); 195 196 $query = "UPDATE organizacao SET nome = ?, descricao = ?, url_imagem = ?, ativa = ? WHERE (organizacao_id = ?)";197 $result = $this->db->query($query, array($name, $description, $imageURL, $active, $ organizationID));192 function updateOrganization($name, $description, $imageURL, $active, $organizationID, $siteURL) 193 { 194 $this->_checkAccess($organizationID); 195 196 $query = "UPDATE organizacao SET nome = ?, descricao = ?, url_imagem = ?, ativa = ?, sitio = ? WHERE (organizacao_id = ?)"; 197 $result = $this->db->query($query, array($name, $description, $imageURL, $active, $siteURL, $organizationID)); 198 198 $this->_checkError($result); 199 199 … … 618 618 $this->_checkAccess($organizationID); 619 619 620 $query = "SELECT organizacao_id, localidade_id, centro_custo_id, descricao FROM localidade WHERE organizacao_id = ? ORDER BY descricao"; 620 $query_fields = 'organizacao_id, localidade_id, centro_custo_id, descricao, empresa, endereco, complemento, cep, bairro, cidade, uf'; 621 $query = "SELECT {$query_fields} FROM localidade WHERE organizacao_id = ? ORDER BY descricao"; 621 622 $result = $this->db->query($query, array($organizationID)); 622 623 $this->_checkError($result); … … 638 639 * @access public 639 640 */ 640 function addLocal($organizationID, $costCenter, $description )641 { 642 $this->_checkAccess($organizationID); 643 644 $query = "INSERT INTO localidade(organizacao_id, centro_custo_id, descricao ) VALUES(?, ?, ?)";645 $result = $this->db->query($query, array($organizationID, $costCenter, $description ));641 function addLocal($organizationID, $costCenter, $description, $company, $address, $complement, $zipCode, $neighborhood, $city, $state ) 642 { 643 $this->_checkAccess($organizationID); 644 645 $query = "INSERT INTO localidade(organizacao_id, centro_custo_id, descricao, empresa, endereco, complemento, cep, bairro, cidade, uf) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"; 646 $result = $this->db->query($query, array($organizationID, $costCenter, $description, $company, $address, $complement, $zipCode, $neighborhood, $city, $state )); 646 647 $this->_checkError($result); 647 648 … … 658 659 * @access public 659 660 */ 660 function updateLocal($organizationID, $costCenter, $description, $localID )661 { 662 $this->_checkAccess($organizationID); 663 664 $query = "UPDATE localidade SET organizacao_id = ?, centro_custo_id = ?, descricao = ? WHERE (localidade_id = ?)";665 $result = $this->db->query($query, array($organizationID, $costCenter, $description, $ localID));661 function updateLocal($organizationID, $costCenter, $description, $localID, $company, $address, $complement, $zipCode, $neighborhood, $city, $state ) 662 { 663 $this->_checkAccess($organizationID); 664 665 $query = "UPDATE localidade SET organizacao_id = ?, centro_custo_id = ?, descricao = ?, empresa = ?, endereco = ?, complemento = ?, cep = ?, bairro = ?, cidade = ?, uf = ? WHERE (localidade_id = ?)"; 666 $result = $this->db->query($query, array($organizationID, $costCenter, $description, $company, $address, $complement, $zipCode, $neighborhood, $city, $state, $localID) ); 666 667 $this->_checkError($result); 667 668 … … 699 700 700 701 $supervisors = '{' . implode(', ', $this->db->GetRow('SELECT COALESCE(titular_funcionario_id, -1) AS titular_funcionario_id, COALESCE(substituto_funcionario_id, -1) AS substituto_funcionario_id FROM area WHERE (area_id = ?) AND (organizacao_id = ?)', array($areaID, $organizationID))) . '}'; 701 $query = "SELECT funcionario_id, funcionario_status_id, centro_custo_id, localidade_id, organizacao_id, area_id, cargo_id, nivel, funcionario_categoria_id FROM funcionario WHERE ((area_id = ?) AND (organizacao_id = ?)) OR (funcionario_id = ANY (?))";702 $query = "SELECT funcionario_id, funcionario_status_id, centro_custo_id, localidade_id, organizacao_id, area_id, cargo_id, nivel, funcionario_categoria_id, titulo FROM funcionario WHERE ((area_id = ?) AND (organizacao_id = ?)) OR (funcionario_id = ANY (?))"; 702 703 $result = $this->db->query($query, array($areaID, $organizationID, $supervisors)); 703 704 $this->_checkError($result); … … 772 773 773 774 /* load employee information */ 774 $query = "SELECT f.funcionario_id, f.funcionario_status_id, f.centro_custo_id, f.localidade_id, f.organizacao_id, f.area_id, f.cargo_id, f.nivel, f.funcionario_categoria_id, a.sigla AS area_sigla FROM funcionario f, area a WHERE (f.area_id = a.area_id) AND (f.organizacao_id = $organizationID) AND (f.funcionario_id IN (" . implode(',', array_keys($unifiedResult)) ."))";775 $query = "SELECT f.funcionario_id, f.funcionario_status_id, f.centro_custo_id, f.localidade_id, f.organizacao_id, f.area_id, f.cargo_id, f.nivel, f.funcionario_categoria_id, f.titulo, a.sigla AS area_sigla FROM funcionario f, area a WHERE (f.area_id = a.area_id) AND (f.organizacao_id = $organizationID) AND (f.funcionario_id IN (" . implode(',', array_keys($unifiedResult)) ."))"; 775 776 $result = $this->db->query($query); 776 777 $this->_checkError($result); … … 803 804 * @access public 804 805 */ 805 function addEmployee($employeeID, $organizationID, $areaID, $costCenterID, $localID, $employeeStatusID, $jobTitleID, $level, $employeeCategoryID )806 function addEmployee($employeeID, $organizationID, $areaID, $costCenterID, $localID, $employeeStatusID, $jobTitleID, $level, $employeeCategoryID, $title) 806 807 { 807 808 $this->_checkAccess($organizationID); … … 818 819 } 819 820 820 $query = "INSERT INTO funcionario(funcionario_id, organizacao_id, area_id, centro_custo_id, localidade_id, funcionario_status_id, cargo_id, nivel, funcionario_categoria_id ) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?)";821 $result = $this->db->query($query, array($employeeID, $organizationID, $areaID, $costCenterID, $localID, $employeeStatusID, $jobTitleID, $level, $employeeCategoryID ));821 $query = "INSERT INTO funcionario(funcionario_id, organizacao_id, area_id, centro_custo_id, localidade_id, funcionario_status_id, cargo_id, nivel, funcionario_categoria_id, titulo) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"; 822 $result = $this->db->query($query, array($employeeID, $organizationID, $areaID, $costCenterID, $localID, $employeeStatusID, $jobTitleID, $level, $employeeCategoryID, $title)); 822 823 $this->_checkError($result); 823 824 … … 839 840 * @access public 840 841 */ 841 function updateEmployee($employeeID, $organizationID, $areaID, $costCenterID, $localID, $employeeStatusID, $jobTitleID, $level, $employeeCategoryID )842 { 843 $this->_checkAccess($organizationID); 844 845 $query = "UPDATE funcionario SET area_id = ?, centro_custo_id = ?, localidade_id = ?, funcionario_status_id = ?, cargo_id = ?, nivel = ?, funcionario_categoria_id = ? WHERE (funcionario_id = ?) AND (organizacao_id = ?)";846 $result = $this->db->query($query, array($areaID, $costCenterID, $localID, $employeeStatusID, $jobTitleID, $level, $employeeCategoryID, $ employeeID, $organizationID));842 function updateEmployee($employeeID, $organizationID, $areaID, $costCenterID, $localID, $employeeStatusID, $jobTitleID, $level, $employeeCategoryID, $title) 843 { 844 $this->_checkAccess($organizationID); 845 846 $query = "UPDATE funcionario SET area_id = ?, centro_custo_id = ?, localidade_id = ?, funcionario_status_id = ?, cargo_id = ?, nivel = ?, funcionario_categoria_id = ?, titulo = ? WHERE (funcionario_id = ?) AND (organizacao_id = ?)"; 847 $result = $this->db->query($query, array($areaID, $costCenterID, $localID, $employeeStatusID, $jobTitleID, $level, $employeeCategoryID, $title, $employeeID, $organizationID)); 847 848 $this->_checkError($result); 848 849 … … 1084 1085 if ($entry === false) 1085 1086 return array('error' => 'Funcionário não encontrado.'); 1087 1086 1088 $outputInfo[] = array( 1087 1089 'name' => 'Nome', 1088 1090 'value' => $employeeEntry['cn']); 1091 1092 $outputInfo[] = array( 1093 'name' => 'Telefone', 1094 'value' => ( ! empty( $employeeEntry['telephonenumber'] ) ? $employeeEntry['telephonenumber'] : '' ) ); 1089 1095 1090 1096 if (!empty($employeeEntry['employeenumber'])) … … 1101 1107 $employeeInfo = $orgchart->getEmployee($employeeID); 1102 1108 $employeeStatusInfo = $orgchart->getEmployeeStatus($employeeInfo['funcionario_status_id']); 1109 1103 1110 $outputInfo[] = array( 1104 1111 'name' => 'Status', … … 1113 1120 } 1114 1121 1115 if (!empty($employeeInfo['cargo_id'])) 1122 $cargo = NULL; 1123 if ( !empty( $employeeInfo['titulo'] ) ) 1124 { 1125 $cargo = $employeeInfo['titulo']; 1126 } 1127 else if ( !empty($employeeInfo['cargo_id']) ) 1116 1128 { 1117 1129 $jobTitleInfo = $orgchart->getJobTitle($employeeInfo['cargo_id']); 1118 $outputInfo[] = array( 1119 'name' => 'Cargo', 1120 'value' => $jobTitleInfo['descricao'] . ((!empty($employeeInfo['nivel'])) ? (' (Nível: ' . $employeeInfo['nivel'] . ')') : '')); 1121 } 1130 $cargo = $jobTitleInfo['descricao']; 1131 } 1132 1133 if ( $cargo ) 1134 $cargo .= ( !empty($employeeInfo['nivel']) ? " (Nível: {$employeeInfo['nivel']})" : '' ); 1135 1136 $outputInfo[] = array( 1137 'name' => 'Cargo', 1138 'value' => ( $cargo ? $cargo : '' ) 1139 ); 1122 1140 1123 1141 $areaInfo = $orgchart->getArea($employeeInfo['area_id']); … … 1130 1148 'name' => 'Localidade', 1131 1149 'value' => $localInfo['descricao']); 1150 1151 $outputInfo[] = array( 1152 'name' => 'Empresa', 1153 'value' => ( ! empty( $localInfo['empresa'] ) ? $localInfo['empresa'] : '') );; 1154 1155 $outputInfo[] = array( 1156 'name' => 'Endereço', 1157 'value' => ( ! empty( $localInfo['endereco'] ) ? $localInfo['endereco'] : '') ); 1158 1159 $outputInfo[] = array( 1160 'name' => 'Complemento', 1161 'value' => ( ! empty( $localInfo['complemento'] ) ? $localInfo['complemento'] : '') );; 1162 1163 $outputInfo[] = array( 1164 'name' => 'Cep', 1165 'value' => ( ! empty( $localInfo['cep'] ) ? $localInfo['cep'] : '') ); 1166 1167 $outputInfo[] = array( 1168 'name' => 'Bairro', 1169 'value' => ( ! empty( $localInfo['bairro'] ) ? $localInfo['bairro'] : '') ); 1170 1171 $outputInfo[] = array( 1172 'name' => 'Cidade', 1173 'value' => ( ! empty( $localInfo['cidade'] ) ? $localInfo['cidade'] : '') ); 1132 1174 1133 1175 if (!empty($employeeInfo['centro_custo_id'])) … … 1138 1180 'name' => 'Centro de Custo', 1139 1181 'value' => $costCenterInfo['descricao']); 1182 1183 $outputInfo[] = array( 1184 'name' => 'e-mail', 1185 'value' => $employeeEntry['mail']); 1186 1187 $organizationInfo = $orgchart->getOrganization( $employeeInfo['organizacao_id'] ); 1188 1189 $outputInfo[] = array( 1190 'name' => 'sitio', 1191 'value' => $organizationInfo['sitio']); 1140 1192 1141 1193 return array('info' => $outputInfo); … … 1204 1256 return array('info' => $outputInfo); 1205 1257 } 1258 1259 /** 1260 * Lista todos os telefones da organização. 1261 * @return array Lista de telefones da organização. 1262 * @access public 1263 */ 1264 function getTelephones( $organizationID ) 1265 { 1266 $this -> _checkAccess( $organizationID ); 1267 1268 $query = "SELECT organizacao_id, telefone_id, descricao, numero FROM telefone WHERE organizacao_id = ? ORDER BY descricao"; 1269 $result = $this -> db -> query( $query, array( $organizationID ) ); 1270 $this -> _checkError( $result ); 1271 1272 $output = $result->GetArray(-1); 1273 for ($i = 0; $i < count($output); $i++) 1274 for ($j = 0; $j < $result->_numOfFields; $j++) 1275 unset($output[$i][$j]); 1276 1277 return $output; 1278 } 1279 1280 /** 1281 * Adiciona um telefone a uma organização. 1282 * @param int $organizationID O ID da organização. 1283 * @param string $description A descrição da localidade. 1284 * @param string $number String com os números de telefones. 1285 * @return bool TRUE se a ação foi concluída com êxito e FALSE caso contrário. 1286 * @access public 1287 */ 1288 function addTelephone( $organizationID, $description, $number ) 1289 { 1290 $this->_checkAccess( $organizationID ); 1291 1292 $query = "INSERT INTO telefone( organizacao_id, descricao, numero ) VALUES( ?, ?, ? )"; 1293 $result = $this -> db -> query( $query, array( $organizationID, $description, $number ) ); 1294 $this -> _checkError( $result ); 1295 1296 return (($result === false) ? false : true); 1297 } 1298 1299 /** 1300 * Remove um telefone. 1301 * @param int $organizationID O ID da organização. 1302 * @param int $telephoneID O ID do telefone. 1303 * @return bool TRUE se a ação foi concluída com êxito e FALSE caso contrário. 1304 * @access public 1305 */ 1306 function removeTelephone( $organizationID, $telephoneID ) 1307 { 1308 $this->_checkAccess( $organizationID ); 1309 1310 $query = "DELETE FROM telefone WHERE (telefone_id = ?) AND (organizacao_id = ?)"; 1311 $result = $this -> db -> query( $query, array( $telephoneID, $organizationID ) ); 1312 $this -> _checkError( $result ); 1313 1314 return ( ( $result === false ) ? false : true ); 1315 } 1316 1317 /** 1318 * Atualiza um telefone. 1319 * @param int $organizationID O ID da organização. 1320 * @param int $telephoneID O ID do telefone. 1321 * @param string $description A descrição do telefone. 1322 * @param string $number String com os números de telefones. 1323 * @return bool TRUE se a ação foi concluída com êxito e FALSE caso contrário. 1324 * @access public 1325 */ 1326 function updateTelephone( $organizationID, $telephoneID, $description, $number ) 1327 { 1328 $this->_checkAccess( $organizationID ); 1329 1330 $query = "UPDATE telefone SET descricao = ?, numero = ? WHERE (telefone_id = ?)"; 1331 $result = $this -> db -> query( $query, array( $description, $number, $telephoneID ) ); 1332 $this->_checkError( $result ); 1333 1334 return ( ( $result === false ) ? false : true ); 1335 } 1206 1336 } 1207 1337 ?>
Note: See TracChangeset
for help on using the changeset viewer.