Se revisa el historial de candidatos, solicitudes y ofertas, se cambian las tablas de historial para tener campo id
git-svn-id: https://192.168.0.254/svn/Proyectos.Incam_Intranet/trunk@99 e2b1556b-49f8-d141-9351-52d6861a72d9
This commit is contained in:
parent
dc577d3296
commit
3c571c428e
@ -43,11 +43,35 @@ class Candidato extends Persona {
|
|||||||
*/
|
*/
|
||||||
$sesion = $this->usuario->getValor("oid");
|
$sesion = $this->usuario->getValor("oid");
|
||||||
if ($this->usuario->tieneRol(1) || $this->usuario->tieneRol(4)) {
|
if ($this->usuario->tieneRol(1) || $this->usuario->tieneRol(4)) {
|
||||||
return parent::setCampo($nombre, $valor);
|
$viejo = $this->getValor($nombre);
|
||||||
|
$resultado = parent::setCampo($nombre, $valor);
|
||||||
|
///////////////////////////////////////////////////
|
||||||
|
//SOLO ACTUALIZA EL HISTORIAL LOS CAMBIOS DE ESTADO
|
||||||
|
///////////////////////////////////////////////////
|
||||||
|
if ($nombre == "estado") {
|
||||||
|
$estado_viejo = $this->darNombreEstado($viejo, "sp");
|
||||||
|
$estado_nuevo = $this->darNombreEstado($valor, "sp");
|
||||||
|
$historial = "Cambio de estado (". $estado_viejo ." a ". $estado_nuevo .")";
|
||||||
|
$this->actualizarHistorial($historial);
|
||||||
|
}
|
||||||
|
return $resultado;
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
//Campos que se pueden editar por el gerente, ya sea directamente o mediante una transición.
|
//Campos que se pueden editar por el gerente, ya sea directamente o mediante una transición.
|
||||||
if (($nombre == "observaciones" || $nombre == "msgEstado" || $nombre = "diasEspera" || $nombre == "estado") && $this->usuario->tieneRol(3)) {
|
if (($nombre == "observaciones" || $nombre == "msgEstado" || $nombre = "diasEspera" || $nombre == "estado") && $this->usuario->tieneRol(3)) {
|
||||||
return parent::setCampo($nombre, $valor);
|
$viejo = $this->getValor($nombre);
|
||||||
|
$resultado = parent::setCampo($nombre, $valor);
|
||||||
|
///////////////////////////////////////////////////
|
||||||
|
//SOLO ACTUALIZA EL HISTORIAL LOS CAMBIOS DE ESTADO
|
||||||
|
///////////////////////////////////////////////////
|
||||||
|
if ($nombre == "estado") {
|
||||||
|
$estado_viejo = $this->darNombreEstado($viejo, "sp");
|
||||||
|
$estado_nuevo = $this->darNombreEstado($valor, "sp");
|
||||||
|
$historial = "Cambio de estado (". $estado_viejo ." a ". $estado_nuevo .")";
|
||||||
|
$this->actualizarHistorial($historial);
|
||||||
|
}
|
||||||
|
return $resultado;
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
$error = "El usuario no tiene permisos para editar al candidato.";
|
$error = "El usuario no tiene permisos para editar al candidato.";
|
||||||
throw new Exception($error);
|
throw new Exception($error);
|
||||||
@ -57,6 +81,12 @@ class Candidato extends Persona {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function darNombreEstado($cod, $idioma) {
|
||||||
|
$consulta = "SELECT NOMBRE from candidatos_estados WHERE cod=\"" . $cod . "\" AND idioma=\"" . $idioma . "\"";
|
||||||
|
$bd = new BD();
|
||||||
|
return $bd->getCampo($consulta);
|
||||||
|
}
|
||||||
|
|
||||||
function addCurriculum($fichero) {
|
function addCurriculum($fichero) {
|
||||||
//PERMISOS:
|
//PERMISOS:
|
||||||
/*
|
/*
|
||||||
|
|||||||
@ -51,11 +51,13 @@ class ListaCandidatos extends ListaPersonas {
|
|||||||
* @param campos - datos del candidato.
|
* @param campos - datos del candidato.
|
||||||
*/
|
*/
|
||||||
function addCandidato($campos) {
|
function addCandidato($campos) {
|
||||||
$campos["estado"] = 510;
|
$campos["estado"] = 510; //Pendiente de clasificar
|
||||||
$id = parent::addPersona($campos);
|
$id = parent::addPersona($campos);
|
||||||
$candidato = new Candidato($this->usuario, $id);
|
$candidato = new Candidato($this->usuario, $id);
|
||||||
$mensaje = "Nuevo candidato";
|
$mensaje = "Nuevo candidato";
|
||||||
$candidato->actualizarHistorial($mensaje);
|
$candidato->actualizarHistorial($mensaje);
|
||||||
|
$mensaje = "Estado inicial ( ". $candidato->darNombreEstado($campos["estado"],"sp") ." )";
|
||||||
|
$candidato->actualizarHistorial($mensaje);
|
||||||
return $id;
|
return $id;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -196,6 +196,8 @@ include_once("Objects/Pedido.php");
|
|||||||
$p = new Pedido($id, $this->gestor);
|
$p = new Pedido($id, $this->gestor);
|
||||||
$mensaje = "Nueva solicitud de oferta";
|
$mensaje = "Nueva solicitud de oferta";
|
||||||
$p->actualizarHistorial($mensaje);
|
$p->actualizarHistorial($mensaje);
|
||||||
|
$mensaje = "Estado inicial ( ". $p->darNombreEstado($campos["estado"],"sp") ." )";
|
||||||
|
$p->actualizarHistorial($mensaje);
|
||||||
}
|
}
|
||||||
return $id;
|
return $id;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -60,6 +60,12 @@ class Oferta {
|
|||||||
return $bd->execQuery($consulta);
|
return $bd->execQuery($consulta);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function darNombreEstado($cod, $idioma) {
|
||||||
|
$consulta = "SELECT NOMBRE from candidaturas_estados WHERE cod=\"" . $cod . "\" AND idioma=\"" . $idioma . "\"";
|
||||||
|
$bd = new BD();
|
||||||
|
return $bd->getCampo($consulta);
|
||||||
|
}
|
||||||
|
|
||||||
function getValor($nombre) {
|
function getValor($nombre) {
|
||||||
if (array_key_exists($nombre, $this->campos)) {
|
if (array_key_exists($nombre, $this->campos)) {
|
||||||
// El campo ya lo habíamos recuperamos, lo mostramos
|
// El campo ya lo habíamos recuperamos, lo mostramos
|
||||||
@ -186,14 +192,17 @@ class Oferta {
|
|||||||
|
|
||||||
// Guardar en el historial
|
// Guardar en el historial
|
||||||
$valor = $this->getValorMulti($nombre, $valor);
|
$valor = $this->getValorMulti($nombre, $valor);
|
||||||
if ($viejo == "" && $valor != "") {
|
|
||||||
$historial = "$nombre (de - a $valor)";
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
} else {
|
//SOLO ACTUALIZA EL HISTORIAL LOS CAMBIOS DE ESTADO Y ASIGNACIONES DE CANDIDATOS
|
||||||
$historial = "$nombre (de $viejo a $valor)";
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
}
|
if ($nombre == "estado") {
|
||||||
if ($nombre = "estado") {
|
$estado_viejo = $this->darNombreEstado($viejo, "sp");
|
||||||
$this->actualizarHistorial($historial);
|
$estado_nuevo = $this->darNombreEstado($valor, "sp");
|
||||||
}
|
$historial = "Cambio de estado (". $estado_viejo ." a ". $estado_nuevo .")";
|
||||||
|
$this->actualizarHistorial($historial);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@ -245,7 +254,7 @@ class Oferta {
|
|||||||
$historial = "";
|
$historial = "";
|
||||||
$oid = $this->getValor("oid");
|
$oid = $this->getValor("oid");
|
||||||
|
|
||||||
$consulta = "SELECT * FROM historial_oferta WHERE oid_h='$oid' ORDER BY fecha_h DESC";
|
$consulta = "SELECT * FROM historial_oferta WHERE oid_h='$oid' ORDER BY id DESC";
|
||||||
$bd = new BD();
|
$bd = new BD();
|
||||||
$resultado = $bd->execQuery($consulta);
|
$resultado = $bd->execQuery($consulta);
|
||||||
|
|
||||||
@ -277,7 +286,7 @@ class Oferta {
|
|||||||
//TODO CANDIDATO ASOCIADO A UNA OFERTA (este como este su situación) pasará a disponible si no tiene alguna otra oferta,
|
//TODO CANDIDATO ASOCIADO A UNA OFERTA (este como este su situación) pasará a disponible si no tiene alguna otra oferta,
|
||||||
//si tiene alguna otra oferta asociada se deja tal cual esta su situación
|
//si tiene alguna otra oferta asociada se deja tal cual esta su situación
|
||||||
//El estado del candidato no cambia si está asociado a alguna otra oferta, sino pasará a Disponible
|
//El estado del candidato no cambia si está asociado a alguna otra oferta, sino pasará a Disponible
|
||||||
case 560: return true; break;
|
case 560:;
|
||||||
case 510:;
|
case 510:;
|
||||||
case 521:;
|
case 521:;
|
||||||
case 522:;
|
case 522:;
|
||||||
@ -285,11 +294,16 @@ class Oferta {
|
|||||||
case 530:;
|
case 530:;
|
||||||
case 540:;
|
case 540:;
|
||||||
case 550:
|
case 550:
|
||||||
|
//Modificamos historial de candidato
|
||||||
|
$mensaje = "Se quita en oferta ". $this->getValor("referencia");
|
||||||
|
$candidato->actualizarHistorial($mensaje);
|
||||||
|
//Modificamos historial de la oferta
|
||||||
|
$nombre_candidato = $candidato->getValor("nombre") . " " . $candidato->getValor("apellidos");
|
||||||
|
$mensaje = "El candidato ".$nombre_candidato." se quita de la oferta";
|
||||||
|
$this->actualizarHistorial($mensaje);
|
||||||
|
//Cambiamos de estado al candidato
|
||||||
if (count($numOfertasCandidato) <= 1) {
|
if (count($numOfertasCandidato) <= 1) {
|
||||||
$candidato->transita("540", "");
|
$candidato->transita("540", "");
|
||||||
$nombre_candidato = $candidato->getValor("nombre") . " " . $candidato->getValor("apellidos");
|
|
||||||
$mensaje = "El candidato ".$nombre_candidato." pasa a estado Disponible";
|
|
||||||
$this->actualizarHistorial($mensaje);
|
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
break;
|
break;
|
||||||
@ -317,6 +331,13 @@ class Oferta {
|
|||||||
//Disponible asignado, el estado del candidato no cambia, solo se asigna a la oferta y ya está.
|
//Disponible asignado, el estado del candidato no cambia, solo se asigna a la oferta y ya está.
|
||||||
case 560:
|
case 560:
|
||||||
$this->setCampo("candidato", $idCandidato);
|
$this->setCampo("candidato", $idCandidato);
|
||||||
|
//Modificamos historial de candidato
|
||||||
|
$mensaje = "Asignado en oferta ". $this->getValor("referencia");
|
||||||
|
$candidato->actualizarHistorial($mensaje);
|
||||||
|
//Modificamos historial de oferta
|
||||||
|
$nombre_candidato = $candidato->getValor("nombre") . " " . $candidato->getValor("apellidos");
|
||||||
|
$mensaje = "Asignado el candidato ".$nombre_candidato;
|
||||||
|
$this->actualizarHistorial($mensaje);
|
||||||
return true;
|
return true;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -327,10 +348,15 @@ class Oferta {
|
|||||||
case 523:;
|
case 523:;
|
||||||
case 540:
|
case 540:
|
||||||
$this->setCampo("candidato", $idCandidato);
|
$this->setCampo("candidato", $idCandidato);
|
||||||
|
//Modificamos historial de candidato
|
||||||
|
$mensaje = "Asignado en oferta ". $this->getValor("referencia");
|
||||||
|
$candidato->actualizarHistorial($mensaje);
|
||||||
|
//Modificamos historial de oferta
|
||||||
|
$nombre_candidato = $candidato->getValor("nombre") . " " . $candidato->getValor("apellidos");
|
||||||
|
$mensaje = "Asignado el candidato ".$nombre_candidato;
|
||||||
|
$this->actualizarHistorial($mensaje);
|
||||||
|
//Cambiamos el estado del candidato
|
||||||
if ($candidato->transita("560", "")){
|
if ($candidato->transita("560", "")){
|
||||||
$nombre_candidato = $candidato->getValor("nombre") . " " . $candidato->getValor("apellidos");
|
|
||||||
$mensaje = "Asignado el candidato ".$nombre_candidato. "-->".$candidato->getValor("estado");
|
|
||||||
$this->actualizarHistorial($mensaje);
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@ -346,6 +372,13 @@ class Oferta {
|
|||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$this->setCampo("candidato", $idCandidato);
|
$this->setCampo("candidato", $idCandidato);
|
||||||
|
//Modificamos historial de candidato
|
||||||
|
$mensaje = "Asignado en oferta ". $this->getValor("referencia");
|
||||||
|
$candidato->actualizarHistorial($mensaje);
|
||||||
|
//Modificamos historial de oferta
|
||||||
|
$nombre_candidato = $candidato->getValor("nombre") . " " . $candidato->getValor("apellidos");
|
||||||
|
$mensaje = "Asignado el candidato ".$nombre_candidato;
|
||||||
|
$this->actualizarHistorial($mensaje);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|||||||
@ -177,6 +177,14 @@ class Pedido {
|
|||||||
return $this->campos;
|
return $this->campos;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function darNombreEstado($cod, $idioma) {
|
||||||
|
$consulta = "SELECT NOMBRE from pedidos_estados WHERE cod=\"" . $cod . "\" AND idioma=\"" . $idioma . "\"";
|
||||||
|
$bd = new BD();
|
||||||
|
echo $consulta;
|
||||||
|
return $bd->getCampo($consulta);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Asigna un nuevo campo al pedido.
|
* Asigna un nuevo campo al pedido.
|
||||||
*
|
*
|
||||||
@ -204,12 +212,14 @@ class Pedido {
|
|||||||
if ($bd->execQuery($consulta)) {
|
if ($bd->execQuery($consulta)) {
|
||||||
// Comprobamos multivaluado y casos especiales:
|
// Comprobamos multivaluado y casos especiales:
|
||||||
$valor = $this->getValorMulti($nombre, $valor);
|
$valor = $this->getValorMulti($nombre, $valor);
|
||||||
if ($viejo == "" && $valor != "") {
|
|
||||||
$historial = "$nombre (de - a $valor)";
|
///////////////////////////////////////////////////
|
||||||
} else {
|
//SOLO ACTUALIZA EL HISTORIAL LOS CAMBIOS DE ESTADO
|
||||||
$historial = "$nombre (de $viejo a $valor)";
|
///////////////////////////////////////////////////
|
||||||
}
|
if ($nombre == "estado") {
|
||||||
//$this->actualizarHistorial($historial);
|
$historial = "Cambio de estado (". $viejo ." a ". $valor .")";
|
||||||
|
$this->actualizarHistorial($historial);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@ -943,7 +953,7 @@ class Pedido {
|
|||||||
$historial = "";
|
$historial = "";
|
||||||
$oid = $this->getValor("oid");
|
$oid = $this->getValor("oid");
|
||||||
|
|
||||||
$consulta = "SELECT * FROM historial_pedido WHERE oid_h='$oid' ORDER BY fecha_h DESC";
|
$consulta = "SELECT * FROM historial_pedido WHERE oid_h='$oid' ORDER BY id DESC";
|
||||||
$bd = new BD();
|
$bd = new BD();
|
||||||
$resultado = $bd->execQuery($consulta);
|
$resultado = $bd->execQuery($consulta);
|
||||||
|
|
||||||
|
|||||||
@ -242,19 +242,6 @@
|
|||||||
// if($bd->execQuery($consulta)){
|
// if($bd->execQuery($consulta)){
|
||||||
//Comprobamos multivaluado y casos especiales:
|
//Comprobamos multivaluado y casos especiales:
|
||||||
$valor = $this->getValorMulti($nombre, $valor);
|
$valor = $this->getValorMulti($nombre, $valor);
|
||||||
|
|
||||||
if(($nombre == "observaciones") || ($nombre == "descripcion")){
|
|
||||||
$historial = $nombre;
|
|
||||||
}else if($viejo == "" && $valor != ""){
|
|
||||||
$historial = "$nombre (de - a $valor)";
|
|
||||||
}else{
|
|
||||||
$historial = "$nombre (de $viejo a $valor)";
|
|
||||||
}
|
|
||||||
//Hay campos que no actualizan el historial
|
|
||||||
if(($nombre != "msgEstado") && ($nombre != "diasEspera")){
|
|
||||||
//$this->actualizarHistorial($historial);
|
|
||||||
}
|
|
||||||
// }
|
|
||||||
return $dato;
|
return $dato;
|
||||||
}else{
|
}else{
|
||||||
return "";
|
return "";
|
||||||
@ -1032,7 +1019,7 @@
|
|||||||
$historial = "";
|
$historial = "";
|
||||||
$oid = $this->getValor("oid");
|
$oid = $this->getValor("oid");
|
||||||
|
|
||||||
$consulta = "SELECT * FROM historial_usuario WHERE oid_h='$oid' ORDER BY fecha_h DESC";
|
$consulta = "SELECT * FROM historial_usuario WHERE oid_h='$oid' ORDER BY id desc";
|
||||||
$bd = new BD();
|
$bd = new BD();
|
||||||
$resultado = $bd->execQuery($consulta);
|
$resultado = $bd->execQuery($consulta);
|
||||||
|
|
||||||
|
|||||||
@ -386,8 +386,11 @@ if (in_array("curriculum", $mostrarDetalle)) { ?>
|
|||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<?php }
|
<?php }
|
||||||
|
|
||||||
|
///////////
|
||||||
|
//HISTORIAL
|
||||||
|
///////////
|
||||||
if (in_array("historial", $mostrarDetalle)) { ?>
|
if (in_array("historial", $mostrarDetalle)) { ?>
|
||||||
<!-- HISTORIAL -->
|
|
||||||
<div class="encabezado"><a name="historial"></a><?php echo $locale['1552']; ?></div>
|
<div class="encabezado"><a name="historial"></a><?php echo $locale['1552']; ?></div>
|
||||||
<table align="center" width="100%"><td>
|
<table align="center" width="100%"><td>
|
||||||
<tr>
|
<tr>
|
||||||
@ -397,5 +400,6 @@ if (in_array("curriculum", $mostrarDetalle)) { ?>
|
|||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<?php } ?>
|
<?php } ?>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user