Incam_Intranet/gestion_pedido.php

318 lines
15 KiB
PHP

<?php
include("seguridad.php");
include("functions.php");
$idPedido=$_GET['idPedido'];
include_once("html/cabecera.php");
include_once("Objects/HTML.php");
include_once("Objects/Pedido.php");
$pedido=new Pedido($idPedido,$usuario);
$html=new HTML($locale);
// Comprobamos los permisos
// Sólo el gerente de ese pedido puede editarlo
if(($pedido->getValor("gerente")!=$usuario->getValor("oid"))
&& !$usuario->tieneRol("1")){
header("Location: aplicacion.php?e=permiso");
exit;
}
// Comprobamos si estamos haciendo algo
$action="";
if (isset($_POST['action']) || isset($_GET['action'])) {
if (isset($_POST['action']) && ($_POST['action']!="")) {
$action = $_POST['action'];
} else {
if (isset($_GET['action']) && ($_GET['action']!="")) {
$action = $_GET['action'];
}
}
}
$errores = array();
$mensaje="";
switch ($action) {
case "edit":
try{
/*Apartado en el que se limpiaran los campos observacion de los si/no */
if($_POST['disp_turnos']=="n"){
$_POST['turnos'] = "";
}
if($_POST['disp_guardias']=="n"){
$_POST['guardias'] = "";
}
if($_POST['disp_viajar']=="n"){
$_POST['viajar'] = "";
}
if($_POST['disp_internacional']=="n"){
$_POST['internacional'] = "";
}
if($_POST['diafecha_solicitud']<10) $_POST['diafecha_solicitud']="0".$_POST['diafecha_solicitud'];
if($_POST['mesfecha_solicitud']<10) $_POST['mesfecha_solicitud']="0".$_POST['mesfecha_solicitud'];
if($_POST['diafecha_ini']<10) $_POST['diafecha_ini']="0".$_POST['diafecha_ini'];
if($_POST['mesfecha_ini']<10) $_POST['mesfecha_ini']="0".$_POST['mesfecha_ini'];
if($_POST['diafecha_fin']<10) $_POST['diafecha_fin']="0".$_POST['diafecha_fin'];
if($_POST['mesfecha_fin']<10) $_POST['mesfecha_fin']="0".$_POST['mesfecha_fin'];
if($_POST['diafecha_recepcion']<10) $_POST['diafecha_recepcion']="0".$_POST['diafecha_recepcion'];
if($_POST['mesfecha_recepcion']<10) $_POST['mesfecha_recepcion']="0".$_POST['mesfecha_recepcion'];
$fecha_solicitud_cliente = stripinput($_POST['anyofecha_solicitud'])."-".stripinput($_POST['mesfecha_solicitud'])."-".stripinput($_POST['diafecha_solicitud']);
$fecha_inicio_servicio = stripinput($_POST['anyofecha_ini'])."-".stripinput($_POST['mesfecha_ini'])."-".stripinput($_POST['diafecha_ini']);
$fecha_fin_servicio = stripinput($_POST['anyofecha_fin'])."-".stripinput($_POST['mesfecha_fin'])."-".stripinput($_POST['diafecha_fin']);
$fecha_recepcion_solicitud = stripinput($_POST['anyofecha_recepcion'])."-".stripinput($_POST['mesfecha_recepcion'])."-".stripinput($_POST['diafecha_recepcion']);
if(count($errores)==0){
$pedido->setCampo("num_solicitud_cliente",$_POST['num_solicitud_cliente']);
$pedido->setCampo("nombre",$_POST['nombre']);
$pedido->setCampo("denominacion_cliente",$_POST['denominacion_cliente']);
$pedido->setCampo("prioridad",$_POST['prioridad']);
$pedido->setCampo("empleados",$_POST['empleados']);
$pedido->setCampo("duracion",$_POST['duracion']);
$pedido->setCampo("gerente",$_POST['gerente']);
$pedido->setCampo("cliente",$_POST['clientes']);
$pedido->setCampo("salario_min",$_POST['salario_min']);
$pedido->setCampo("salario_max",$_POST['salario_max']);
$pedido->setCampo("procedencia",$_POST['procedencia']);
$pedido->setCampo("tasa_economica",$_POST['tasa_economica']);
$pedido->setCampo("observaciones_direccion",$_POST['observaciones_direccion']);
$pedido->setCampo("turnos",$_POST['turnos']);
$pedido->setCampo("guardias",$_POST['guardias']);
$pedido->setCampo("viajar",$_POST['viajar']);
$pedido->setCampo("internacional",$_POST['internacional']);
$pedido->setCampo("direccion_solicitud",$_POST['direccion_solicitud']);
$pedido->setCampo("fecha_solicitud_cliente",$fecha_solicitud_cliente);
$pedido->setCampo("fecha_inicio_servicio",$fecha_inicio_servicio);
$pedido->setCampo("fecha_fin_servicio",$fecha_fin_servicio);
$pedido->setCampo("fecha_recepcion_solicitud",$fecha_recepcion_solicitud);
$pedido->addPerfiles($_POST['perfil']);
$pedido->addTecnologias($_POST['tecnologia']);
$pedido->addIdiomas($_POST['idiomas']);
$pedido->addProvincias($_POST['provincias']);
$pedido->setCampo("observaciones",$_POST['observaciones']);
$mensaje=$locale['1063'];
}
} catch (Exception $e){
$mensaje=$locale[$e->getMessage()];
}
break;
case "dellTec": $idAction=$_GET['id'];
$pedido->removeTecnologia($idAction);
$mensaje=$locale['1064'];
break;
case "dellIdi": $idAction=$_GET['id'];
$pedido->removeIdioma($idAction);
$mensaje=$locale['1065'];
break;
case "dellLoc": $idAction=$_GET['id'];
$pedido->removeProvincia($idAction);
$mensaje=$locale['1089'];
break;
case "dellPer": $idAction=$_GET['id'];
$pedido->removePerfil($idAction);
$mensaje=$locale['1090'];
break;
default:
break;
}
echo $html->menuPedidos($usuario,"");
echo "<h2>".$pedido->getValor("oid") ." - ". $pedido->getValor("nombre")."</h2>";
if($mensaje!=""){
// Mostramos el mensaje
if(in_array("9",$errores)){
echo "<div class=\"aviso error\">".$mensaje."</div>";
}else{
echo "<div class=\"aviso ok\">".$mensaje."</div>";
}
}
echo '<form method="POST" action="gestion_pedido.php?idPedido='.$pedido->getValor("oid").'" name="form_registro" enctype="multipart/form-data">';
echo "<input type=\"hidden\" name=\"action\" value=\"edit\" />";
echo '<input type="submit" value="'.$locale['gu'].'" onclick="return comprobar_registro(this)" class="button">';
echo '<div class="encabezado">'.$locale['Solicitudes005'].'</div>';
echo "<table id=\"editPedido\" width=\"100%\">" .
"<tr>";
echo "<td>".$locale['1043']."<input type=\"text\" name=\"nombre\" value=\"".$pedido->getValor("nombre")."\" size=\"39\" maxlength=\"30\" >" .
"<br/><br/>".$locale['1043_1']."<input type=\"text\" name=\"denominacion_cliente\" value=\"".$pedido->getValor("denominacion_cliente")."\" size=\"30\" maxlength=\"30\" >" .
"<br/><br/>".$locale['Solicitudes001']."&nbsp;&nbsp;<input type=\"text\" name=\"num_solicitud_cliente\" value=\"".$pedido->getValor("num_solicitud_cliente")."\" size=\"30\" maxlength=\"20\" ></td>";
echo "<td>".$locale['Solicitudes004']. "&nbsp;&nbsp;"; rellena_fecha_select($pedido->getValor("fecha_solicitud_cliente"), "fecha_solicitud");
echo "<br/><br/>" .$locale['1022'].":&nbsp;&nbsp;&nbsp;"; rellena_prioridad_select("prioridad",$pedido->getValor("prioridad"));
echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".$locale['1024_1'].": <input type=\"text\" name=\"empleados\" value=\"".$pedido->getValor("empleados")."\" maxlenght=\"3\" size=\"2\" />";
echo "<br/><br/>".$locale['1504'] ."&nbsp;&nbsp;";
$auxiliar = '<option selected value="">'.$locale['ns'].'</option>';
rellena_desplegable_select_oid("clientes","clientes",$auxiliar,$pedido->getValor("cliente"));
"</td>";
echo "<td>".$locale['Solicitudes002']."&nbsp;&nbsp;";
rellena_fecha_select($pedido->getValor("fecha_inicio_servicio"), "fecha_ini");
echo "<br/><br/>".$locale['Solicitudes003']."&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
rellena_fecha_select($pedido->getValor("fecha_fin_servicio"), "fecha_fin");
echo "<br/><br/>".$locale['1026'].": <input type=\"text\" name=\"duracion\" value=\"".$pedido->getValor("duracion")."\" maxlenght=\"3\" size=\"2\" />";
echo "</td></tr>";
echo "<tr><td>". $locale['Solicitudes006']."&nbsp;&nbsp;"; rellena_fecha_select($pedido->getValor("fecha_recepcion_solicitud"), "fecha_recepcion");
echo "<br/><br/>". $locale['1800'];
rellena_procedencias("procedencia",$auxiliar,$pedido->getValor("procedencia"));
echo "&nbsp;&nbsp;&nbsp;&nbsp;".$locale['1027'];
$auxiliar = '<option value="">'.$locale['ns'].'</option>';
rellena_personal_permiso("gerente","GP",$auxiliar,$pedido->getValor("gerente"));
echo "</td><td>";
echo $locale['129'];
rellena_desplegable_select_oidCol("salario","id","nombre","salario_min",$auxiliar,$pedido->getValor("salario_min"));
echo ' - '.$locale['130'].'';
rellena_desplegable_select_oidCol("salario","id","nombre","salario_max",$auxiliar,$pedido->getValor("salario_max"));
echo "</td><td>".$locale['Solicitudes007']."&nbsp;&nbsp;<input type=\"text\" name=\"tasa_economica\" value=\"".$pedido->getValor("tasa_economica")."\" size=\"15\" maxlength=\"10\" >";
echo "</td></tr>";
echo "<tr><td>".$locale['123']."<br/>";
$idiomas=$pedido->getIdiomas();
$keyidiomas=array_values($idiomas);
// Mostramos la lista para borrar
if(count($idiomas)>0){
foreach ($idiomas as $nombre =>$valor) {
echo $nombre." <a href=\"gestion_pedido.php?idPedido=".$pedido->getValor("oid")."&action=dellIdi&id=".$valor."\">Borrar</a><br />";
}
} else {?>
<span class="errorcampo"><?php if($pedido->getValor("pesoIdioma") > 0) echo $locale['1097'];?></span><br />
<?php
}
echo $html->listaSelect("idiomas","oid","id","idiomas",array("",$locale['ns']),$keyidiomas,false,true,"10");
echo "</td><td>".$locale['209']."<br/>";
$localidades=$pedido->getProvincias();
$keylocalidades=array_values($localidades);
// Mostramos la lista para borrar
if(count($localidades)>0){
foreach ($localidades as $nombre =>$valor) {
echo $nombre." <a href=\"gestion_pedido.php?idPedido=".$pedido->getValor("oid")."&action=dellLoc&id=".$valor."\">Borrar</a><br />";
}
} else {
?>
<span class="errorcampo"><?php echo $locale['1097']; ?></span><br />
<?php
}
echo $html->listaSelect("provincias","oid","id","provincias",array("",$locale['ns']),$keylocalidades,false,true,"10");
echo '&nbsp;&nbsp;<textarea name="observaciones_direccion" rows="9" cols="30" style="overflow: auto;">'.$pedido->getValor("observaciones_direccion").'</textarea>';
//$locale['132'].$pedido->getValor("nombre_estado");
echo "</td><td>".$locale['Solicitudes008']."&nbsp;&nbsp;<input type=\"text\" name=\"direccion_solicitud\" value=\"".$pedido->getValor("direccion_solicitud")."\" size=\"30\" maxlength=\"50\" >";
echo "</td></tr>";
echo "</table>";
/////////////////////
//DATOS ADICIONALES
/////////////////////
echo '<input type="submit" value="'.$locale['gu'].'" onclick="return comprobar_registro(this)" class="button">';
echo '<div class="encabezado">'.$locale['1550'].'</div>';
echo '<table align="center" width="100%">';
echo '<tr>';
//CAMPO DISPONIBILIDAD TURNOS
echo '<td width="33%">'.$locale['Solicitudes009'].'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
echo '<select name="disp_turnos" onchange="javascript:if(this.options[this.selectedIndex].value == \'n\') {disable(\'turnos\');}else{enable(\'turnos\')}">';
if ($pedido->getValor("turnos") != "")
echo '<option value="s" selected>SI</option><option value="n">NO</option>';
else
echo '<option value="s" >SI</option><option value="n" selected>NO</option>';
echo '</select>';
echo '<br><input type="text" id="turnos" name="turnos" value="'.$pedido->getValor("turnos").'" size="40" maxlength="200"';
if ($pedido->getValor("turnos") != "")
echo '>';
else
echo 'disabled>';
echo '</td>';
//CAMPO DISPONIBILIDAD GUARDIAS
echo '<td width="33%">'.$locale['Candidato002'].'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
echo '<select name="disp_guardias" onchange="javascript:if(this.options[this.selectedIndex].value == \'n\') {disable(\'guardias\');}else{enable(\'guardias\')}">';
if ($pedido->getValor("guardias") != "")
echo '<option value="s" selected>SI</option><option value="n">NO</option>';
else
echo '<option value="s" >SI</option><option value="n" selected>NO</option>';
echo '</select>';
echo '<br><input type="text" id="guardias" name="guardias" value="'.$pedido->getValor("guardias").'" size="40" maxlength="200"';
if ($pedido->getValor("guardias") != "")
echo '>';
else
echo 'disabled>';
echo '</td>';
//CAMPO DISPONIBILIDAD VIAJAR
echo '<td width="33%">'.$locale['Candidato003'].'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
echo '<select name="disp_viajar" onchange="javascript:if(this.options[this.selectedIndex].value == \'n\') {disable(\'viajar\');}else{enable(\'viajar\')}">';
if ($pedido->getValor("viajar") != "")
echo '<option value="s" selected>SI</option><option value="n">NO</option>';
else
echo '<option value="s" >SI</option><option value="n" selected>NO</option>';
echo '</select>';
echo '<br><input type="text" id="viajar" name="viajar" value="'.$pedido->getValor("viajar").'" size="40" maxlength="200"';
if ($pedido->getValor("viajar") != "")
echo '>';
else
echo 'disabled>';
echo '</td></tr>';
//CAMPO DISPONIBILIDAD INTERNACIONAL
echo '<tr><td colspan="3">'.$locale['Candidato004'].'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
echo '<select name="disp_internacional" onchange="javascript:if(this.options[this.selectedIndex].value == \'n\') {disable(\'internacional\');}else{enable(\'internacional\')}">';
if ($pedido->getValor("internacional") != "")
echo '<option value="s" selected>SI</option><option value="n">NO</option>';
else
echo '<option value="s" >SI</option><option value="n" selected>NO</option>';
echo '</select>';
echo '<br><input type="text" id="internacional" name="internacional" value="'.$pedido->getValor("internacional").'" size="40" maxlength="200"';
if ($pedido->getValor("internacional") != "")
echo '>';
else
echo 'disabled>';
echo '</td>';
echo '</tr>';
echo '<tr><td colspan="3" align="center">'.$locale['135'].'<br><textarea name="observaciones" rows="7" cols="120" style="overflow: auto; width:100%; ">'.
$pedido->getValor("observaciones").
'</textarea></td></tr>';
echo "</table>";
///////////////////////////
//CAPACIDADES PROFESIONALES
///////////////////////////
echo '<div id="capacidades" name="capacidades" class="encabezado">'.$locale['Capacidades001'].'</div>';
echo '<input language="javascript" type="button" value="'.$locale['Capacidades003'].'" class="button" onclick="if(popup(\'addCapacidadProfesional.php?id_solicitud='.$pedido->getValor("oid").'&entidad=solicitud\', \'notes\')) window.location.reload()">';
$CapacidadesProfesionales = $pedido->getCapacidadesProfesionales();
VerListaCapacidadesProfesionales($CapacidadesProfesionales, "gestion_pedido");
echo '<input type="submit" value="'.$locale['gu'].'" onclick="return comprobar_registro(this)" class="button">';
echo '<div class="encabezado">'.$locale['1552'].'</div>';
echo '<tr><td colspan="3" align="center">'.$locale['127'].'<br><textarea name="historial" readonly rows="8" cols="120" maxlength="300" style="overflow: auto;">';
echo $pedido->getHistorial();
echo '</textarea></td></tr>';
/* Botones de guardar y restablecer */
echo "<!--tr><td colspan=\"3\" align=\"center\">";
echo '<input type="submit" value="'.$locale['gu'].'" onclick="return comprobar_registro(this)" class="button">';
echo '<input type="reset" value="'.$locale['res'].'" class="button"></td>';
echo "</tr></table-->";
echo "</form>";
include_once("html/pie.php");
?>