source: admin/WebConsole/gestores/gestor_programaciones.php @ a3e5d74

Last change on this file since a3e5d74 was b006040, checked in by OpenGnSys Support Team <soporte-og@…>, 5 years ago

#942 schedule commands (web)

  • Property mode set to 100644
File size: 8.1 KB
Line 
1<?php
2// *************************************************************************************************************************************************
3// Aplicación WEB: ogAdmWebCon
4// Autor: José Manuel Alonso (E.T.S.I.I.) Universidad de Sevilla
5// Fecha Creación: Año 2009-2010
6// Fecha Última modificación: Noviembre-2005
7// Nombre del fichero: gestor_programaciones.php
8// Descripción :
9//              Gestiona las programaciones de tareas y trabajos
10// *************************************************************************************************************************************************
11include_once("../includes/ctrlacc.php");
12include_once("../includes/CreaComando.php");
13include_once("../clases/AdoPhp.php");
14include_once("../includes/comunes.php");
15include_once("../includes/restfunctions.php");
16include_once("../includes/constantes.php");
17//________________________________________________________________________________________________________
18$op_alta=1;
19$op_modificacion=2;
20$op_eliminacion=3;
21$op_suspension=4;
22
23$pswop=0; // opcion alta,modificación o eliminación
24$pidprogramacion=0; // Identificador de la programación si se trata de mofdificación o eliminación
25$pidentificador=0; //  Identificador de la tarea o el trabajo que se está programando
26$ptipoaccion=0; //  Tipo de acción:tarea o trabajo
27$pnombrebloque=""; //  Nombre del bloque de programación
28$pannos=""; //  Valor hexadecimal que indica los años elegidos
29$pmeses=""; //  Valor hexadecimal que indica los meses elegidos
30$pdiario=""; //  Valor hexadecimal que indica los dias  elegidos en modalidad simple ( un sólo mes )
31$pdias=""; //  Valor hexadecimal que indica los días elegidos
32$psemanas=""; //  Valor hexadecimal que indica las semanas elegidas
33$phoras=""; //  Valor hexadecimal que indica las horas elegidas
34$pampm=0; //  Valor que indica la  modalidad a.m.=0 p.m.= 1
35$pminutos=0; //  Valor decimal que indica los minutos
36$psegundos=0; //  Valor decimal que indica los segundos
37$phorasini=""; //  Valor hexadecimal que indica las horas hasta elegidas
38$pampmini=0; //  Valor que indica la  modalidad a.m.=0 p.m.= 1 hora hasta
39$pminutosini=0; //  Valor decimal que indica los minutos hasa
40$phorasfin=""; //  Valor hexadecimal que indica las horas hasta elegidas
41$pampmfin=0; //  Valor que indica la  modalidad a.m.=0 p.m.= 1 hora hasta
42$pminutosfin=0; //  Valor decimal que indica los minutos hasa
43
44$wsw_sus=""; //  programación suspendida
45$psesion=0; //  Sesión de un comando programado
46
47if (isset($_POST["wswop"])) $pswop=$_POST["wswop"];
48if (isset($_POST["widprogramacion"])) $pidprogramacion=$_POST["widprogramacion"];
49if (isset($_POST["widentificador"])) $pidentificador=$_POST["widentificador"];
50if (isset($_POST["wtipoaccion"])) $ptipoaccion=$_POST["wtipoaccion"];
51if (isset($_POST["wnombrebloque"])) $pnombrebloque=$_POST["wnombrebloque"];
52if (isset($_POST["wannos"])) $pannos=$_POST["wannos"];
53if (isset($_POST["wmeses"])) $pmeses=$_POST["wmeses"];
54if (isset($_POST["wdiario"])) $pdiario=$_POST["wdiario"];
55if (isset($_POST["wdias"])) $pdias=$_POST["wdias"];
56if (isset($_POST["wsemanas"])) $psemanas=$_POST["wsemanas"];
57if (isset($_POST["whoras"])) $phoras=$_POST["whoras"];
58if (isset($_POST["wampm"])) $pampm=$_POST["wampm"];
59if (isset($_POST["wminutos"])) $pminutos=$_POST["wminutos"];
60if (isset($_POST["wsegundos"])) $psegundos=$_POST["wsegundos"];
61if (isset($_POST["whorasini"])) $phorasini=$_POST["whorasini"];
62if (isset($_POST["wampmini"])) $pampmini=$_POST["wampmini"];
63if (isset($_POST["wminutosini"])) $pminutosini=$_POST["wminutosini"];
64if (isset($_POST["whorasfin"])) $phorasfin=$_POST["whorasfin"];
65if (isset($_POST["wampmfin"])) $pampmfin=$_POST["wampmfin"];
66if (isset($_POST["wminutosfin"])) $pminutosfin=$_POST["wminutosfin"];
67
68if (isset($_POST["wsw_sus"])) $wsw_sus=$_POST["wsw_sus"];
69if (isset($_POST["wsesion"])) $psesion=$_POST["wsesion"];
70
71if(empty($pminutos)) $pminutos=0;
72if(empty($psegundos)) $psegundos=0;
73if(empty($pminutosini)) $pminutosini=0;
74if(empty($pminutosfin)) $pminutosfin=0;
75if($wsw_sus=='true')
76        $psw_sus=1;
77else
78        $psw_sus=0 ;
79
80if ($ptipoaccion == $EJECUCION_COMANDO)
81        $pidentificador = $psesion;
82
83if($pswop!=$op_suspension){
84        $result;
85        $idr=$pidprogramacion;
86        switch($pswop){
87                case $op_alta:
88                        $result = create_schedule($pidentificador, $ptipoaccion,
89                                $pnombrebloque, $pannos, $pmeses, $psemanas,
90                                $pdias, $pdiario, $phoras, $pampm, $pminutos);
91                        $swop=$op_alta;
92                        $schedule = get_schedule($pidentificador);
93                        $idr = max(array_column($schedule['schedule'], OG_REST_PARAM_ID));
94                        break;
95                case $op_eliminacion:
96                        $result = delete_schedule($pidprogramacion);
97                        $swop=$op_eliminacion;
98                        break;
99                case $op_modificacion:
100                        $result = update_schedule($pidprogramacion,
101                                $pidentificador, $pnombrebloque, $pannos,
102                                $pmeses, $pdiario, $phoras, $pampm, $pminutos);
103                        $swop = $op_modificacion;
104                        break;
105                default:
106                        break;
107        }
108        echo 'registro_programacion('.$idr.',"'.$pnombrebloque.'",'.$swop.')';
109}
110else{
111        if ($resul) { // Ha ocurrido algún error
112                $reporerr=0;
113                $repordes="Error al suspender la programación";
114                echo 'error_programacion()';
115        }
116        else{ // programacion registrada correctamente
117                echo 'resultado_suspender_programacion()';
118        }
119}
120// ***************************************************************************************************
121function Gestiona()
122{
123        global $cmd;
124        global $pswop;
125        global $pidprogramacion;
126        global $pidentificador;
127        global $ptipoaccion;
128        global $pnombrebloque;
129        global $pannos;
130        global $pmeses;
131        global $pdiario;
132        global $pdias;
133        global $psemanas;
134        global $phoras;
135        global $pampm;
136        global $pminutos;
137        global $psegundos;
138        global $phorasini;
139        global $pampmini;
140        global $pminutosini;
141        global $phorasfin;
142        global $pampmfin;
143        global $pminutosfin;
144        global $psw_sus;
145        global $psesion;
146        global $op_alta;
147        global $op_modificacion;
148        global $op_eliminacion;
149        global $op_suspension;
150
151        $cmd->CreaParametro("@idprogramacion",$pidprogramacion,1);
152
153        $cmd->CreaParametro("@tipoaccion",$ptipoaccion,1);
154        $cmd->CreaParametro("@identificador",$pidentificador,1);
155        $cmd->CreaParametro("@nombrebloque",$pnombrebloque,0);
156        $cmd->CreaParametro("@annos",$pannos,1);
157        $cmd->CreaParametro("@meses",$pmeses,1);
158        $cmd->CreaParametro("@diario",$pdiario,1);
159        $cmd->CreaParametro("@dias",$pdias,1);
160        $cmd->CreaParametro("@semanas",$psemanas,1);
161        $cmd->CreaParametro("@horas",$phoras,1);
162        $cmd->CreaParametro("@ampm",$pampm,1);
163        $cmd->CreaParametro("@minutos",$pminutos,1);
164        $cmd->CreaParametro("@segundos",$psegundos,1);
165        $cmd->CreaParametro("@inihoras",$phorasini,1);
166        $cmd->CreaParametro("@iniampm",$pampmini,1);
167        $cmd->CreaParametro("@iniminutos",$pminutosini,1);
168        $cmd->CreaParametro("@finhoras",$phorasfin,1);
169        $cmd->CreaParametro("@finampm",$pampmfin,1);
170        $cmd->CreaParametro("@finminutos",$pminutosfin,1);
171        $cmd->CreaParametro("@suspendida",$psw_sus,1);
172        $cmd->CreaParametro("@sesion",$psesion,1);
173        switch($pswop){
174                case $op_alta :
175                        $cmd->texto="INSERT INTO programaciones(tipoaccion,identificador,nombrebloque,annos,meses,diario,
176                                                dias,semanas,horas,ampm,minutos,segundos,horasini,ampmini,minutosini,horasfin,
177                                                ampmfin,minutosfin,suspendida,sesion)
178                                                VALUES (@tipoaccion,@identificador,@nombrebloque,@annos,@meses,@diario,@dias,
179                                                @semanas,@horas,@ampm,@minutos,@segundos,@inihoras,@iniampm,@iniminutos,@finhoras,
180                                                @finampm,@finminutos,@suspendida,@sesion)";
181                        $resul=$cmd->Ejecutar();
182                        if($resul)
183                                $pidprogramacion=$cmd->Autonumerico();
184                        break;
185                case $op_modificacion:
186                        $cmd->texto="UPDATE programaciones SET nombrebloque=@nombrebloque,annos=@annos,meses=@meses,diario=@diario,
187                                                dias=@dias,semanas=@semanas,horas=@horas,ampm=@ampm,minutos=@minutos,segundos=@segundos,
188                                                horasini=@inihoras,ampmini=@iniampm,minutosini=@iniminutos,horasfin=@finhoras,ampmfin=@finampm,
189                                                minutosfin=@finminutos,suspendida=@suspendida WHERE idprogramacion=@idprogramacion";
190                        $cmd->Traduce();
191                        $resul=$cmd->Ejecutar();
192                        break;
193                case $op_eliminacion :
194                        $cmd->texto="DELETE  FROM  programaciones WHERE idprogramacion=".$pidprogramacion;
195                        $resul=$cmd->Ejecutar();
196                        break;
197                case $op_suspension :
198                        $cmd->texto="UPDATE programaciones SET suspendida=@suspendida
199                                        WHERE identificador=@identificador AND tipoaccion=@tipoaccion";
200                        $resul=$cmd->Ejecutar();
201                        break;
202                default:
203                        break;
204        }
205        return($resul);
206}
207
208
209
Note: See TracBrowser for help on using the repository browser.