source: pmb4.2/trunk/fuentes/pmb/migracion_NIA.php @ 852

Last change on this file since 852 was 852, checked in by jrpelegrina, 5 years ago

WIP in lliurex features and modifications 9

File size: 6.9 KB
Line 
1<?php
2
3
4// Modulo para migrar los alumnos al NIA //
5
6if (stristr($_SERVER['REQUEST_URI'], ".inc.php")) die("no access");
7
8
9
10$base_path=".";                           
11$base_auth = "ADMINISTRATION_AUTH"; 
12$base_title = "\$msg[7]";   
13require_once ("$base_path/includes/init.inc.php"); 
14
15include("$include_path/messages/help/$lang/migracion_NIA.txt");
16
17function migracion_nia($dbh){
18  global $msg;
19
20 // 3. Creamos si es necesario crear (o ya esta creado) el campo empr_cb_old en la tabla empr_custom
21        $name_cb='empr_cb_old'; 
22        $sql_cb="SELECT idchamp from empr_custom WHERE name='" .$name_cb. "'";
23        $existe_cb_old=@mysql_query($sql_cb, $dbh);
24       
25        if (@mysql_num_rows($existe_cb_old)==0){       
26                $etiqueta='Codi anterior al NIA';
27                $type='text';
28                $datatype='small_text';
29                $options='<OPTIONS FOR="text"><SIZE>15</SIZE><MAXSIZE>15</MAXSIZE> <REPEATABLE>0</REPEATABLE> <ISHTML>0</ISHTML></OPTIONS>';
30                $sql_cb_old="INSERT INTO empr_custom(name,titre,type,datatype,options) values('" .$name_cb. "','" .$etiqueta. "','" .$type. "','" .$datatype. "','" .$options. "')"; 
31                $nuevo_campo=@mysql_query($sql_cb_old, $dbh);
32        }
33
34  //4. Creamos si es necesario crear el campo empr_migrado en la tabla empr     
35
36        $sql="SELECT column_name from INFORMATION_SCHEMA.columns where table_schema='pmb' and table_name='empr' AND column_name='empr_Migrado'";
37        $existeMigrado=@mysql_query($sql, $dbh);
38        //Si el campo empr_Tipo no existe se crea
39        if (@mysql_num_rows($existeMigrado)==0){
40                $sql="ALTER TABLE empr ADD empr_Migrado varchar(1)";
41                $insert=@mysql_query($sql, $dbh);
42                       
43        }       
44       
45// 5. Copiamos el campo empr_cb en la tabla empr_custom_values y cambiamos el campo empr_cb por empr_NIA
46        $sql_alumnos_migrar="SELECT id_empr,empr_cb, empr_NIA from empr where NOT ISNULL(empr_NIA)";
47        $alumnos_migrar=@mysql_query($sql_alumnos_migrar, $dbh);
48        $total_migrar=@mysql_num_rows($alumnos_migrar);
49        $codigos=array();
50       
51               
52        $sql_idcb_old="SELECT idchamp from empr_custom where name='" .$name_cb. "'";
53        $id_cb_old=@mysql_query($sql_idcb_old, $dbh);
54        $row2 =mysql_fetch_array($id_cb_old);
55        $j=0;
56        for ($i=0;$i<$total_migrar;$i++){
57                $row1 = mysql_fetch_array($alumnos_migrar);
58                $idempr=$row1['id_empr'];
59                $old_cb=$row1['empr_cb'];
60                $sql_comprobacion="SELECT * from empr_custom_values where empr_custom_champ='" .$row2['idchamp']. "'and empr_custom_origine='" .$idempr. "'";
61                $existe_registro=@mysql_num_rows(@mysql_query($sql_comprobacion,$dbh));
62                if ($existe_registro==0){
63                        $sql_insert_cb="INSERT INTO empr_custom_values(empr_custom_champ,empr_custom_origine,empr_custom_small_text) values('" .$row2['idchamp']. "','" .$idempr. "', '" .$old_cb. "')";
64                        $insertcb=@mysql_query($sql_insert_cb, $dbh);
65                        $idempr=$row1['id_empr'];
66                        $cb_nia=$row1['empr_NIA'];
67                        $sql_update="UPDATE empr SET empr_cb='" .$cb_nia ."', empr_Migrado='S' WHERE id_empr='" .$idempr. "'";
68                        $resulmig = @mysql_query($sql_update, $dbh);
69                        $codigos[$j]=$cb_nia;
70                        $j++;
71                       
72                           
73                }
74        }
75        $codigosJS=json_encode($codigos); 
76        print "<h3><center>$msg[migr_ejecutada]</center></h3>";
77        //print "<INPUT type='button' name='imprimercarte' class='bouton' value='$msg[genera_carnets_NIA]' onclick='valida_formulario(".$codigosJS.")'/>";
78        print '<form id="form1" name="form1" method="post" action="circ.php?categ=carnetsUsuariosMigrados"/>';
79        print "<div>
80                <input class='bouton' type='submit' value=' $msg[genera_carnets_NIA]'/>
81                </div>
82                </form>";
83
84} 
85
86function show_data($dbh){
87    global $msg;
88
89  //1.Comprobamos si ya se ha realizado un migración anteriormente
90    $name_cb='empr_cb_old';
91    $sql_idcb_old="SELECT idchamp from empr_custom where name='" .$name_cb. "'";
92    $id_cb_old=@mysql_query($sql_idcb_old, $dbh);
93    $valor=mysql_fetch_array($id_cb_old);
94   
95    $sql_comprobacion="SELECT * from empr_custom_values where empr_custom_champ='" .$valor['idchamp']. "'";
96    $existen_registros=@mysql_num_rows(@mysql_query($sql_comprobacion,$dbh));
97   
98 
99    if ($existen_registros==0){ 
100
101        $sql_NIA="SELECT column_name from INFORMATION_SCHEMA.columns where table_schema='pmb' and table_name='empr' AND column_name='empr_NIA'";
102        $existeNIA=@mysql_query($sql_NIA, $dbh);
103   
104        if (@mysql_num_rows($existeNIA)>0){     
105       
106                $sql_nia="SELECT count(distinct empr_NIA) from empr";
107                $total_nia=mysql_fetch_row(@mysql_query($sql_nia, $dbh));
108       
109                $sql_sinnia="SELECT count(*) from empr where (ISNULL(empr_NIA) or empr_NIA='') and ISNULL(empr_Tipo) and (YEAR(UTC_DATE())-YEAR(empr_date_expiration))<2";
110                $total_sinnia=mysql_fetch_row(@mysql_query($sql_sinnia,$dbh));   
111       
112         
113        //2. Comprobamos que la mayoria de los alumnos dispone del nia
114               
115                if ($total_nia[0] > $total_sinnia[0]){
116               
117                        $sql_total="SELECT count(*) from empr";
118                        $total_users=mysql_fetch_row(@mysql_query($sql_total, $dbh));
119               
120                        //$sql_duplicados="SELECT count(*) from empr group by empr_NIA having count(*)>1";
121       
122                        $sql_sinmigrar="SELECT count(*) from empr where (ISNULL(empr_NIA) or empr_NIA='')";
123                        $total_sinmigrar=mysql_fetch_row(@mysql_query($sql_sinmigrar,$dbh));     
124   
125                        print "
126                                <style>
127                                        table, th, td {
128                                                border: 0px solid black;
129                                        }
130                                </style>
131
132                                <table border=0 style=width:50%>
133                                        <tr>
134                                                <td border=0 width='15%'><left><b>" .$msg['migr_total_registros']. "</b></left></td>
135                                                <td border=0 width='10%'><left><input name='Total registros' value='" . $total_users[0] . "' type='text' size='6' disabled></left></td>                 
136                                        </tr>
137                                        <tr>
138                                                <td border=0 width='15%'><left><b>" .$msg['migr_total_nia']. "</b></left></td>
139                                                <td border=0 width='10%'><left><input name='Total registros NIA' value='" . $total_nia[0] . "' type='text' size='6' disabled></left></td>                       
140                                        </tr>
141                                        <tr>
142                                                <td border=0 width='15%'><left><b>" .$msg['migr_total_simigrar']. "<b></left></td>
143                                                <td border=0 width='10%'><left><input name='Total registros sin NIA' value='" . $total_sinmigrar[0] . "' type='text' size='6' disabled></left></td>
144                                                <td border=0 width='30%'><left><b><a href=./edit.php?categ=empr&sub=no_migrados>$msg[consulta_informe_no_migrados]</b></left></td>                     
145                                        </tr>
146                                </table>";
147                        print "
148                        <input class='bouton' type='button' value=' $msg[migr_exe] ' onClick=\"document.location='./admin.php?categ=empr&sub=migration&action=migrar'\" />";
149                }else{
150       
151                        print "<h3><center>$msg[migr_noactivada]</center></h3>";
152                }
153       
154        }else{ 
155                               
156                print "<h3><center>$msg[migr_noactivada]</center></h3>";
157        }
158
159 }else{
160        print "<h3><center>$msg[migr_noactivada]</center></h3>";
161}
162
163}
164
165
166switch($action){
167
168        case 'migrar':
169                migracion_nia($dbh);           
170        break;
171        default:
172                show_data($dbh);
173        break; 
174
175}
176
177?>
178
179<SCRIPT type="text/javaScript">
180
181function valida_formulario(codigos)
182{
183     var url="";
184 
185    // Abrimos una ventana con los carnets
186    url = './pdf.php?pdfdoc=listadoCarnets&empr_cb=' + codigos;
187    window.open(url, 'print_PDF', 'toolbar=no, dependent=yes, width=600, height=500, resizable=yes');
188   
189   
190}
191
192</SCRIPT>
193
194
Note: See TracBrowser for help on using the repository browser.