Oniel Méndez Nieves 4 лет назад
Родитель
Сommit
3d25696be4
19 измененных файлов: 587 добавлений и 287 удалений
  1. Двоичные данные
      __pycache__/adminver.cpython-36.pyc
  2. Двоичные данные
      __pycache__/enfermeriaver.cpython-36.pyc
  3. Двоичные данные
      __pycache__/transcripcionmaker.cpython-36.pyc
  4. Двоичные данные
      __pycache__/visitas_enfermeria.cpython-36.pyc
  5. Двоичные данные
      __pycache__/visitas_oficina.cpython-36.pyc
  6. 348
    141
      adminver.py
  7. 23
    11
      dash-run.py
  8. 67
    27
      enfermeriaver.py
  9. 9
    1
      static/admin.js
  10. 19
    5
      static/adminver.js
  11. 8
    0
      static/enfermeria.js
  12. 19
    5
      static/enfermeriaver.js
  13. 1
    1
      static/forma.js
  14. 5
    12
      templates/dash.html
  15. 9
    20
      templates/table.html
  16. 2
    1
      templates/transcripcion.html
  17. 70
    63
      transcripcionmaker.py
  18. 3
    0
      visitas_enfermeria.py
  19. 4
    0
      visitas_oficina.py

Двоичные данные
__pycache__/adminver.cpython-36.pyc Просмотреть файл


Двоичные данные
__pycache__/enfermeriaver.cpython-36.pyc Просмотреть файл


Двоичные данные
__pycache__/transcripcionmaker.cpython-36.pyc Просмотреть файл


Двоичные данные
__pycache__/visitas_enfermeria.cpython-36.pyc Просмотреть файл


Двоичные данные
__pycache__/visitas_oficina.cpython-36.pyc Просмотреть файл


+ 348
- 141
adminver.py Просмотреть файл

@@ -6,10 +6,10 @@ import sqlalchemy as db
6 6
 # esta funcion se obtiene cuando un administrador quiere ver los perfiles de administradores
7 7
 #   url: /admin/ver/admin
8 8
 def admin():
9
-    query = 'SELECT u.id, u.nombres, u.apellidos, u.email FROM usuarios u,administracion a WHERE u.id = a.user_id'
10
-    result_db = connection.execute(query).fetchall()
9
+
11 10
 
12 11
     ###### headers
12
+    # headers contiene los titulos de las columnas
13 13
 
14 14
     headers = '['
15 15
     headers += '{"nombre":"Nombre"}'
@@ -22,66 +22,101 @@ def admin():
22 22
     headers += ','
23 23
     headers += '{"nombre":"Editar"}'
24 24
     headers += ']'
25
+    #
26
+    # headers={}
27
+    # headers.update({"nombre":"Nombre"})
28
+    # headers.update({"nombre":"Posicion"})
29
+    # headers.update({"nombre":"Email"})
30
+    # headers.update({"1":"Codigo"})
31
+    # headers.update({"nombre":"Informacion"})
32
+    # headers.update({"nombre":"Editar"})
25 33
 
26
-    ###### tabla
27 34
 
28 35
 
29
-    modal_content = '['
36
+    ###### tabla
37
+    # tabla contiene la informacion que sale en las filas
38
+    query = 'SELECT u.id, u.nombres, u.apellidos, u.email \
39
+            FROM usuarios u,administracion a \
40
+            WHERE u.id = a.user_id'
41
+    result_db = connection.execute(query).fetchall()
42
+
30 43
     tabla = '['
31 44
     i = 0
32 45
     len_result = len(result_db)
33 46
     for q in result_db:
34 47
         i = i+1
35 48
         tabla += '{'
36
-        modal_content += '{'
37 49
         tabla += '"Nombre":"'+(q[1])+' '+(q[2])+'"'
38
-        modal_content += '"Nombre":"'+(q[1])+' '+(q[2])+'"'
39 50
         tabla += ','
40
-        modal_content += ','
41 51
 
42 52
         query = 'SELECT posicion FROM administracion a WHERE a.user_id = ' + str(q[0])
43 53
         posicion = connection.execute(query).fetchall()
44
-
45 54
         tabla += '"Posicion":"'+(str(posicion[0][0]))+'"'
46
-        modal_content += '"Posicion":"'+(str(posicion[0][0]))+'"'
47 55
 
48 56
         tabla += ','
49
-        modal_content += ','
50 57
         tabla += '"Email":"'+(q[3])+'"'
51
-        modal_content += '"Email":"'+(q[3])+'"'
52 58
         tabla += ','
53
-        modal_content += ','
54 59
         tabla += '"user_id":"'+(str(q[0]))+'"'
55
-        modal_content += '"user_id":"'+(str(q[0]))+'"'
56 60
         tabla += '}'
57
-        modal_content += '}'
61
+
58 62
         if i < len_result:
59 63
             tabla += ','
60
-            modal_content += ','
61 64
     tabla += ']'
65
+
66
+
67
+    ###### modal_content
68
+    # modal_content contiene la informacion única de cada fila al presionar 'ver mas'
69
+
70
+    query = 'SELECT u.id, u.nombres, u.apellidos, u.email \
71
+            FROM usuarios u,administracion a \
72
+            WHERE u.id = a.user_id'
73
+    result_db = connection.execute(query).fetchall()
74
+
75
+    modal_content = '['
76
+    i = 0
77
+    len_result = len(result_db)
78
+    for q in result_db:
79
+        i = i+1
80
+
81
+        modal_content += '{'
82
+        modal_content += '"Nombre":"'+(q[1])+' '+(q[2])+'"'
83
+        modal_content += ','
84
+        query = 'SELECT posicion FROM administracion a WHERE a.user_id = ' + str(q[0])
85
+        posicion = connection.execute(query).fetchall()
86
+        modal_content += '"Posicion":"'+(str(posicion[0][0]))+'"'
87
+        modal_content += ','
88
+        modal_content += '"Email":"'+(q[3])+'"'
89
+        modal_content += ','
90
+        modal_content += '"user_id":"'+(str(q[0]))+'"'
91
+        modal_content += '}'
92
+
93
+        if i < len_result:
94
+            modal_content += ','
62 95
     modal_content += ']'
63 96
 
64 97
     ###### info
65 98
 
66 99
     info = '{'
67
-    info += '"dash_name":"Manejar Administracion"'
100
+    info += '"dash_name":"Manejar Administracion"' #nombre en el header
68 101
     info += ','
69
-    info += '"dash_link":"/admin/ver/"'
102
+    info += '"dash_link":"/admin/ver/"' #link si click el header
70 103
     info += ','
71
-    info += '"dash_sub_name":"Administracion Registrados"'
104
+    info += '"dash_sub_name":"Administracion Registrados"' #titulo grande de la pagina
72 105
     info += ','
73
-    info += '"add":"Anadir Administracion"'
106
+    info += '"add":"Anadir Administracion"' #texto en el boton para a~nadir perfil
74 107
     info += ','
75
-    info += '"add_link":"/admin/forma/add/administracion/"'
108
+    info += '"add_link":"/admin/forma/add/administracion/"' #direccion para el boton para a~nadir perfil
76 109
     info += ','
77 110
     info += '"bot1":"Ver Mas"' #texto del primer boton en una fila
78 111
     info += ','
79 112
     info += '"bot2":"Editar"' #texto del segundo boton en una fila
80 113
     info += ','
81
-    info += '"dir2":"/admin/forma/edit/administracion/"'
114
+    info += '"dir2":"/admin/forma/edit/administracion/"' #direccion del segundo boton
82 115
     info += '}'
83 116
 
117
+
84 118
     ###### modal
119
+    # modal contiene el titulo y la direccion parcial del modal
85 120
 
86 121
     modal = '{'
87 122
     modal += '"infoName":"Ver informacion"'
@@ -91,16 +126,14 @@ def admin():
91 126
 
92 127
     result = '{"headers":'+headers+',"tabla":'+tabla+',"modal_content":'+modal_content+',"info":'+info+',"modal":'+modal+'}'
93 128
 
94
-    # print(result)
95 129
     return(result)
96 130
 
97 131
 # esta funcion se obtiene cuando un administrador quiere ver los perfiles de encargados
98 132
 #   url: /admin/ver/encargados
99 133
 def encargados():
100
-    query = 'SELECT u.id, u.nombres, u.apellidos, u.email FROM usuarios u,madres m WHERE u.id = m.user_id'
101
-    result_db = connection.execute(query).fetchall()
102 134
 
103 135
     ###### headers
136
+    # headers contiene los titulos de las columnas
104 137
 
105 138
     headers = '['
106 139
     headers += '{"nombre":"Nombre"}'
@@ -114,65 +147,96 @@ def encargados():
114 147
     headers += '{"nombre":"Editar"}'
115 148
     headers += ']'
116 149
 
150
+
117 151
     ###### tabla
152
+    # tabla contiene la informacion que sale en las filas
118 153
 
154
+    query = 'SELECT u.id, u.nombres, u.apellidos, u.email \
155
+    FROM usuarios u,madres m \
156
+    WHERE u.id = m.user_id'
157
+    result_db = connection.execute(query).fetchall()
119 158
 
120 159
     tabla = '['
121
-    modal_content = '['
122 160
     i = 0
123 161
     len_result = len(result_db)
124 162
     for q in result_db:
125 163
         i = i+1
126 164
         tabla += '{'
127
-        modal_content += '{'
128 165
         tabla += '"Nombre":"'+(q[1])+' '+(q[2])+'"'
129
-        modal_content += '"Nombre":"'+(q[1])+' '+(q[2])+'"'
130 166
         tabla += ','
131
-        modal_content += ','
132 167
 
133 168
         query = 'SELECT count(*) FROM madres_estudiantes me WHERE me.madre_id = ' + str(q[0])
134 169
         total_hijos = connection.execute(query).fetchall()
135 170
 
136 171
         tabla += '"Hijos Matriculados":"'+str(total_hijos[0][0])+'"'
137
-        modal_content += '"Hijos Matriculados":"'+str(total_hijos[0][0])+'"'
138 172
 
139 173
         tabla += ','
140
-        modal_content += ','
141 174
         tabla += '"Email":"'+(q[3])+'"'
142
-        modal_content += '"Email":"'+(q[3])+'"'
143 175
         tabla += ','
144
-        modal_content += ','
145 176
         tabla += '"user_id":"'+str(q[0])+'"'
146
-        modal_content += '"user_id":"'+str(q[0])+'"'
147 177
         tabla += '}'
148
-        modal_content += '}'
149 178
         if i < len_result:
150 179
             tabla += ','
151
-            modal_content += ','
152 180
     tabla += ']'
181
+
182
+
183
+
184
+
185
+    ###### modal_content
186
+    # modal_content contiene la informacion única de cada fila al presionar 'ver mas'
187
+
188
+    query = 'SELECT u.id, u.nombres, u.apellidos, u.email \
189
+    FROM usuarios u,madres m \
190
+    WHERE u.id = m.user_id'
191
+    result_db = connection.execute(query).fetchall()
192
+
193
+    modal_content = '['
194
+    i = 0
195
+    len_result = len(result_db)
196
+    for q in result_db:
197
+        i = i+1
198
+        modal_content += '{'
199
+        modal_content += '"Nombre":"'+(q[1])+' '+(q[2])+'"'
200
+        modal_content += ','
201
+
202
+        query = 'SELECT count(*) FROM madres_estudiantes me WHERE me.madre_id = ' + str(q[0])
203
+        total_hijos = connection.execute(query).fetchall()
204
+
205
+        modal_content += '"Hijos Matriculados":"'+str(total_hijos[0][0])+'"'
206
+
207
+        modal_content += ','
208
+        modal_content += '"Email":"'+(q[3])+'"'
209
+        modal_content += ','
210
+        modal_content += '"user_id":"'+str(q[0])+'"'
211
+        modal_content += '}'
212
+        if i < len_result:
213
+            modal_content += ','
153 214
     modal_content += ']'
154 215
 
216
+
217
+
155 218
     ###### info
156 219
 
157 220
     info = '{'
158
-    info += '"dash_name":"Manejar Encargados"'
221
+    info += '"dash_name":"Manejar Encargados"' #nombre en el header
159 222
     info += ','
160
-    info += '"dash_link":"/admin/ver/"'
223
+    info += '"dash_link":"/admin/ver/"' #link si click el header
161 224
     info += ','
162
-    info += '"dash_sub_name":"Encargados Registrados"'
225
+    info += '"dash_sub_name":"Encargados Registrados"' #titulo grande de la pagina
163 226
     info += ','
164
-    info += '"add":"Anadir Encargados"'
227
+    info += '"add":"Anadir Encargados"' #texto en el boton para a~nadir perfil
165 228
     info += ','
166
-    info += '"add_link":"/admin/forma/add/madre/"'
229
+    info += '"add_link":"/admin/forma/add/madre/"' #direccion para el boton para a~nadir perfil
167 230
     info += ','
168 231
     info += '"bot1":"Ver Mas"' #texto del primer boton en una fila
169 232
     info += ','
170 233
     info += '"bot2":"Editar"' #texto del segundo boton en una fila
171 234
     info += ','
172
-    info += '"dir2":"/admin/forma/edit/madre/"'
235
+    info += '"dir2":"/admin/forma/edit/madre/"' #direccion del segundo boton
173 236
     info += '}'
174 237
 
175 238
     ###### modal
239
+    # modal contiene el titulo y la direccion parcial del modal
176 240
 
177 241
     modal = '{'
178 242
     modal += '"infoName":"Ver informacion"'
@@ -182,17 +246,15 @@ def encargados():
182 246
 
183 247
     result = '{"headers":'+headers+',"tabla":'+tabla+',"modal_content":'+modal_content+',"info":'+info+',"modal":'+modal+'}'
184 248
 
185
-    # print(result)
186 249
     return(result)
187 250
 
188 251
 
189 252
 # esta funcion se obtiene cuando un administrador quiere ver los perfiles de enfermeras
190 253
 #   url: /admin/ver/enfermeria
191 254
 def enfermeria():
192
-    query = 'SELECT u.id, u.nombres, u.apellidos, u.email FROM usuarios u,enfermeras e WHERE u.id = e.user_id'
193
-    result_db = connection.execute(query).fetchall()
194 255
 
195 256
     ###### headers
257
+    # headers contiene los titulos de las columnas
196 258
 
197 259
     headers = '['
198 260
     headers += '{"nombre":"Nombre"}'
@@ -206,65 +268,93 @@ def enfermeria():
206 268
     headers += '{"nombre":"Editar"}'
207 269
     headers += ']'
208 270
 
271
+
209 272
     ###### tabla
273
+    # tabla contiene la informacion que sale en las filas
210 274
 
275
+    query = 'SELECT u.id, u.nombres, u.apellidos, u.email \
276
+            FROM usuarios u,enfermeras e \
277
+            WHERE u.id = e.user_id'
278
+    result_db = connection.execute(query).fetchall()
211 279
 
212 280
     tabla = '['
213
-    modal_content = '['
214 281
     i = 0
215 282
     len_result = len(result_db)
216 283
     for q in result_db:
217 284
         i = i+1
218 285
         tabla += '{'
219
-        modal_content += '{'
220 286
         tabla += '"Nombre":"'+(q[1])+' '+(q[2])+'"'
221
-        modal_content += '"Nombre":"'+(q[1])+' '+(q[2])+'"'
222 287
         tabla += ','
223
-        modal_content += ','
224 288
 
225 289
         query = 'SELECT especialidad FROM enfermeras e WHERE e.user_id = ' + str(q[0])
226 290
         especialidad = connection.execute(query).fetchall()
227 291
 
228 292
         tabla += '"Especialidad":"'+(str(especialidad[0][0]))+'"'
229
-        modal_content += '"Especialidad":"'+(str(especialidad[0][0]))+'"'
230 293
 
231 294
         tabla += ','
232
-        modal_content += ','
233 295
         tabla += '"Email":"'+(q[3])+'"'
234
-        modal_content += '"Email":"'+(q[3])+'"'
235 296
         tabla += ','
236
-        modal_content += ','
237 297
         tabla += '"user_id":"'+str(q[0])+'"'
238
-        modal_content += '"user_id":"'+str(q[0])+'"'
239 298
         tabla += '}'
240
-        modal_content += '}'
241 299
         if i < len_result:
242 300
             tabla += ','
243
-            modal_content += ','
244 301
     tabla += ']'
302
+
303
+
304
+
305
+    ###### modal_content
306
+    # modal_content contiene la informacion única de cada fila al presionar 'ver mas'
307
+
308
+    query = 'SELECT u.id, u.nombres, u.apellidos, u.email \
309
+            FROM usuarios u,enfermeras e \
310
+            WHERE u.id = e.user_id'
311
+    result_db = connection.execute(query).fetchall()
312
+
313
+    modal_content = '['
314
+    i = 0
315
+    len_result = len(result_db)
316
+    for q in result_db:
317
+        i = i+1
318
+
319
+        query = 'SELECT especialidad FROM enfermeras e WHERE e.user_id = ' + str(q[0])
320
+        especialidad = connection.execute(query).fetchall()
321
+
322
+        modal_content += '{'
323
+        modal_content += '"Nombre":"'+(q[1])+' '+(q[2])+'"'
324
+        modal_content += ','
325
+        modal_content += '"Especialidad":"'+(str(especialidad[0][0]))+'"'
326
+        modal_content += ','
327
+        modal_content += '"Email":"'+(q[3])+'"'
328
+        modal_content += ','
329
+        modal_content += '"user_id":"'+str(q[0])+'"'
330
+        modal_content += '}'
331
+        if i < len_result:
332
+            modal_content += ','
245 333
     modal_content += ']'
246 334
 
335
+
247 336
     ###### info
248 337
 
249 338
     info = '{'
250
-    info += '"dash_name":"Manejar Enfermeria"'
339
+    info += '"dash_name":"Manejar Enfermeria"' #nombre en el header
251 340
     info += ','
252
-    info += '"dash_link":"/admin/ver/"'
341
+    info += '"dash_link":"/admin/ver/"' #link si click el header
253 342
     info += ','
254
-    info += '"dash_sub_name":"Enfermeras Registrados"'
343
+    info += '"dash_sub_name":"Enfermeras Registrados"' #titulo grande de la pagina
255 344
     info += ','
256
-    info += '"add":"Anadir Enfermera"'
345
+    info += '"add":"Anadir Enfermera"' #texto en el boton para a~nadir perfil
257 346
     info += ','
258
-    info += '"add_link":"/admin/forma/add/enfermera/"'
347
+    info += '"add_link":"/admin/forma/add/enfermera/"' #direccion para el boton para a~nadir perfil
259 348
     info += ','
260 349
     info += '"bot1":"Ver Mas"' #texto del primer boton en una fila
261 350
     info += ','
262 351
     info += '"bot2":"Editar"' #texto del segundo boton en una fila
263 352
     info += ','
264
-    info += '"dir2":"/admin/forma/edit/enfermera/"'
353
+    info += '"dir2":"/admin/forma/edit/enfermera/"' #direccion del segundo boton
265 354
     info += '}'
266 355
 
267 356
     ###### modal
357
+    # modal contiene el titulo y la direccion parcial del modal
268 358
 
269 359
     modal = '{'
270 360
     modal += '"infoName":"Ver informacion"'
@@ -274,17 +364,15 @@ def enfermeria():
274 364
 
275 365
     result = '{"headers":'+headers+',"tabla":'+tabla+',"modal_content":'+modal_content+',"info":'+info+',"modal":'+modal+'}'
276 366
 
277
-    # print(result)
278 367
     return(result)
279 368
 
280 369
 
281 370
 # esta funcion se obtiene cuando un administrador quiere ver los perfiles de estudiantes
282 371
 #   url: /admin/ver/estudiantes
283 372
 def estudiantes():
284
-    query = 'SELECT u.id, u.nombres, u.apellidos, u.email FROM usuarios u, estudiantes m WHERE u.id = m.user_id'
285
-    result_db = connection.execute(query).fetchall()
286 373
 
287 374
     ###### headers
375
+    # headers contiene los titulos de las columnas
288 376
 
289 377
     headers = '['
290 378
     headers += '{"nombre":"Nombre"}'
@@ -297,46 +385,73 @@ def estudiantes():
297 385
     headers += ','
298 386
     headers += '{"nombre":"Editar"}'
299 387
     headers += ']'
300
-    # headers = '[{"nombre":"Nombre"},{"nombre":"Posicion"},{"nombre":"Informacion"},{"nombre":"Editar"}]'
388
+
389
+
301 390
 
302 391
     ###### tabla
392
+    # tabla contiene la informacion que sale en las filas
303 393
 
394
+    query = 'SELECT u.id, u.nombres, u.apellidos, u.email \
395
+            FROM usuarios u, estudiantes m \
396
+            WHERE u.id = m.user_id'
397
+    result_db = connection.execute(query).fetchall()
304 398
 
305 399
     tabla = '['
306
-    modal_content = '['
307 400
     i = 0
308 401
     len_result = len(result_db)
309 402
     for q in result_db:
310 403
         i = i+1
311 404
         tabla += '{'
312
-        modal_content += '{'
313 405
         tabla += '"Nombre":"'+(q[1])+' '+(q[2])+'"'
314
-        modal_content += '"Nombre":"'+(q[1])+' '+(q[2])+'"'
315 406
         tabla += ','
316
-        modal_content += ','
317 407
 
318 408
         query = 'SELECT grado FROM estudiantes e WHERE e.user_id = ' + str(q[0])
319 409
         total_hijos = connection.execute(query).fetchall()
320 410
 
321 411
         tabla += '"Hijos Matriculados":"'+str(total_hijos[0][0])+'"'
322
-        modal_content += '"Hijos Matriculados":"'+str(total_hijos[0][0])+'"'
323 412
 
324 413
         tabla += ','
325
-        modal_content += ','
326 414
         tabla += '"Email":"'+(q[3])+'"'
327
-        modal_content += '"Email":"'+(q[3])+'"'
328 415
         tabla += ','
329
-        modal_content += ','
330 416
         tabla += '"user_id":"'+str(q[0])+'"'
331
-        modal_content += '"user_id":"'+str(q[0])+'"'
332 417
         tabla += '}'
333
-        modal_content += '}'
334 418
         if i < len_result:
335 419
             tabla += ','
336
-            modal_content += ','
337 420
     tabla += ']'
421
+
422
+
423
+
424
+    ###### modal_content
425
+    # modal_content contiene la informacion única de cada fila al presionar 'ver mas'
426
+
427
+    query = 'SELECT u.id, u.nombres, u.apellidos, u.email \
428
+            FROM usuarios u, estudiantes m \
429
+            WHERE u.id = m.user_id'
430
+    result_db = connection.execute(query).fetchall()
431
+
432
+    modal_content = '['
433
+    i = 0
434
+    len_result = len(result_db)
435
+    for q in result_db:
436
+        i = i+1
437
+
438
+        query = 'SELECT grado FROM estudiantes e WHERE e.user_id = ' + str(q[0])
439
+        total_hijos = connection.execute(query).fetchall()
440
+
441
+        modal_content += '{'
442
+        modal_content += '"Nombre":"'+(q[1])+' '+(q[2])+'"'
443
+        modal_content += ','
444
+        modal_content += '"Hijos Matriculados":"'+str(total_hijos[0][0])+'"'
445
+        modal_content += ','
446
+        modal_content += '"Email":"'+(q[3])+'"'
447
+        modal_content += ','
448
+        modal_content += '"user_id":"'+str(q[0])+'"'
449
+        modal_content += '}'
450
+        if i < len_result:
451
+            modal_content += ','
338 452
     modal_content += ']'
339 453
 
454
+
340 455
     ###### info
341 456
 
342 457
     info = '{'
@@ -358,6 +473,7 @@ def estudiantes():
358 473
     info += '}'
359 474
 
360 475
     ###### modal
476
+    # modal contiene el titulo y la direccion parcial del modal
361 477
 
362 478
     modal = '{'
363 479
     modal += '"infoName":"Ver informacion"'
@@ -375,6 +491,7 @@ def estudiantes():
375 491
 # esta funcion se obtiene cuando un administrador quiere ver los perfiles de
376 492
 #   url: /admin/ver/facultad
377 493
 def facultad():
494
+    # headers contiene los titulos de las columnas
378 495
 
379 496
     ###### headers
380 497
 
@@ -389,71 +506,97 @@ def facultad():
389 506
     headers += ','
390 507
     headers += '{"nombre":"Editar"}'
391 508
     headers += ']'
392
-    # headers = '[{"nombre":"Nombre"},{"nombre":"Posicion"},{"nombre":"Informacion"},{"nombre":"Editar"}]'
393 509
 
394 510
 
395 511
     ###### tabla
512
+    # tabla contiene la informacion que sale en las filas
396 513
 
397
-    query = 'SELECT u.id, u.nombres, u.apellidos, u.email FROM usuarios u,facultad f WHERE u.id = f.user_id'
514
+    query = 'SELECT u.id, u.nombres, u.apellidos, u.email \
515
+            FROM usuarios u,facultad f \
516
+            WHERE u.id = f.user_id'
398 517
     result_db = connection.execute(query).fetchall()
399 518
 
400 519
 
401 520
     tabla = '['
402
-    modal_content = '['
403 521
     i = 0
404 522
     len_result = len(result_db)
405 523
     for q in result_db:
406 524
         i = i+1
407 525
         tabla += '{'
408
-        modal_content += '{'
409 526
         tabla += '"Nombre":"'+(q[1])+' '+(q[2])+'"'
410
-        modal_content += '"Nombre":"'+(q[1])+' '+(q[2])+'"'
411 527
         tabla += ','
412
-        modal_content += ','
413 528
 
414 529
         query = 'SELECT f.especialidad FROM facultad f WHERE f.user_id =' + str(q[0])
415 530
         total_hijos = connection.execute(query).fetchall()
416 531
 
417 532
         tabla += '"Hijos Matriculados":"'+str(total_hijos[0][0])+'"'
418
-        modal_content += '"Hijos Matriculados":"'+str(total_hijos[0][0])+'"'
419 533
 
420 534
         tabla += ','
421
-        modal_content += ','
422 535
         tabla += '"Email":"'+(q[3])+'"'
423
-        modal_content += '"Email":"'+(q[3])+'"'
424 536
         tabla += ','
425
-        modal_content += ','
426 537
         tabla += '"user_id":"'+str(q[0])+'"'
427
-        modal_content += '"user_id":"'+str(q[0])+'"'
428 538
         tabla += '}'
429
-        modal_content += '}'
430 539
         if i < len_result:
431 540
             tabla += ','
432
-            modal_content += ','
433 541
     tabla += ']'
542
+
543
+
544
+
545
+    ###### modal_content
546
+    # modal_content contiene la informacion única de cada fila al presionar 'ver mas'
547
+
548
+    query = 'SELECT u.id, u.nombres, u.apellidos, u.email \
549
+            FROM usuarios u,facultad f \
550
+            WHERE u.id = f.user_id'
551
+    result_db = connection.execute(query).fetchall()
552
+
553
+
554
+    modal_content = '['
555
+    i = 0
556
+    len_result = len(result_db)
557
+    for q in result_db:
558
+        i = i+1
559
+
560
+        query = 'SELECT f.especialidad FROM facultad f WHERE f.user_id =' + str(q[0])
561
+        total_hijos = connection.execute(query).fetchall()
562
+
563
+        modal_content += '{'
564
+        modal_content += '"Nombre":"'+(q[1])+' '+(q[2])+'"'
565
+        modal_content += ','
566
+        modal_content += '"Hijos Matriculados":"'+str(total_hijos[0][0])+'"'
567
+        modal_content += ','
568
+        modal_content += '"Email":"'+(q[3])+'"'
569
+        modal_content += ','
570
+        modal_content += '"user_id":"'+str(q[0])+'"'
571
+        modal_content += '}'
572
+        if i < len_result:
573
+            modal_content += ','
434 574
     modal_content += ']'
435 575
 
576
+
577
+
436 578
     ###### info
437 579
 
438 580
     info = '{'
439
-    info += '"dash_name":"Manejar Facultad"'
581
+    info += '"dash_name":"Manejar Facultad"' #nombre en el header
440 582
     info += ','
441
-    info += '"dash_link":"/admin/ver/"'
583
+    info += '"dash_link":"/admin/ver/"' #link si click el header
442 584
     info += ','
443
-    info += '"dash_sub_name":"Facultad Registrados"'
585
+    info += '"dash_sub_name":"Facultad Registrados"' #titulo grande de la pagina
444 586
     info += ','
445
-    info += '"add":"Anadir Facultad"'
587
+    info += '"add":"Anadir Facultad"' #texto en el boton para a~nadir perfil
446 588
     info += ','
447
-    info += '"add_link":"/admin/forma/add/facultad/"'
589
+    info += '"add_link":"/admin/forma/add/facultad/"' #direccion para el boton para a~nadir perfil
448 590
     info += ','
449 591
     info += '"bot1":"Ver Mas"' #texto del primer boton en una fila
450 592
     info += ','
451 593
     info += '"bot2":"Editar"' #texto del segundo boton en una fila
452 594
     info += ','
453
-    info += '"dir2":"/admin/forma/edit/facultad/"'
595
+    info += '"dir2":"/admin/forma/edit/facultad/"' #direccion del segundo boton
454 596
     info += '}'
455 597
 
456 598
     ###### modal
599
+    # modal contiene el titulo y la direccion parcial del modal
457 600
 
458 601
     modal = '{'
459 602
     modal += '"infoName":"Ver informacion"'
@@ -471,18 +614,9 @@ def facultad():
471 614
 #   url: /admin/ver/visitas_oficina
472 615
 
473 616
 def visita():
474
-    query ='SELECT t1.id, t2.nombres e_nombre, t2.apellidos e_apellido,\
475
-                t1.nombres p_nombre, t1.apellidos p_apellido, t1.razon, t1.acciones, t1.fecha\
476
-            FROM (SELECT v.id, u.nombres, u.apellidos,v.razon, v.acciones, v.fecha\
477
-                  	FROM visitas_oficina v, usuarios u\
478
-                  	WHERE v.estudiante_id = u.id) t1,\
479
-            	 (SELECT v.id, u.nombres, u.apellidos\
480
-                  	FROM visitas_oficina v, usuarios u\
481
-                  	WHERE v.administradora_id = u.id) t2\
482
-            WHERE t1.id=t2.id'
483
-    result_db = connection.execute(query).fetchall()
484 617
 
485 618
     ###### headers
619
+    # headers contiene los titulos de las columnas
486 620
 
487 621
     headers = '['
488 622
     headers += '{"nombre":"Dia y hora"}'
@@ -496,9 +630,22 @@ def visita():
496 630
     headers += '{"nombre":"Editar"}'
497 631
     headers += ']'
498 632
 
633
+
634
+
499 635
     ###### tabla
636
+    # tabla contiene la informacion que sale en las filas
637
+
638
+    query ='SELECT t1.id, t2.nombres e_nombre, t2.apellidos e_apellido,\
639
+                t1.nombres p_nombre, t1.apellidos p_apellido, t1.razon, t1.acciones, t1.fecha\
640
+            FROM (SELECT v.id, u.nombres, u.apellidos,v.razon, v.acciones, v.fecha\
641
+                  	FROM visitas_oficina v, usuarios u\
642
+                  	WHERE v.estudiante_id = u.id) t1,\
643
+            	 (SELECT v.id, u.nombres, u.apellidos\
644
+                  	FROM visitas_oficina v, usuarios u\
645
+                  	WHERE v.administradora_id = u.id) t2\
646
+            WHERE t1.id=t2.id'
647
+    result_db = connection.execute(query).fetchall()
500 648
 
501
-    modal_content = '['
502 649
     tabla = '['
503 650
     i = 0
504 651
     len_result = len(result_db)
@@ -512,16 +659,53 @@ def visita():
512 659
         dia_hora = dia + ' ' + hora
513 660
 
514 661
         tabla           += '{'
515
-        modal_content   += '{'
516 662
         tabla           += '"Dia y hora":"'+dia_hora+'"'
517 663
         tabla           += ','
518 664
         tabla           += '"Nombre Administrador":"'+(q[1])+' '+(q[2])+'"'
519
-        modal_content   += '"Nombre Administrador":"'+(q[1])+' '+(q[2])+'"'
520 665
         tabla           += ','
521
-        modal_content   += ','
522 666
         tabla           += '"Nombre Estudiante":"'+(q[3])+' '+(q[4])+'"'
523
-        modal_content   += '"Nombre Estudiante":"'+(q[3])+' '+(q[4])+'"'
524 667
         tabla           += ','
668
+
669
+
670
+        tabla           += '"user_id":"'+str(q[0])+'"'
671
+        tabla           += '}'
672
+
673
+        if i < len_result:
674
+            tabla        += ','
675
+    tabla               += ']'
676
+
677
+
678
+
679
+    ###### modal_content
680
+    # modal_content contiene la informacion única de cada fila al presionar 'ver mas'
681
+
682
+    query ='SELECT t1.id, t2.nombres e_nombre, t2.apellidos e_apellido,\
683
+                t1.nombres p_nombre, t1.apellidos p_apellido, t1.razon, t1.acciones, t1.fecha\
684
+            FROM (SELECT v.id, u.nombres, u.apellidos,v.razon, v.acciones, v.fecha\
685
+                  	FROM visitas_oficina v, usuarios u\
686
+                  	WHERE v.estudiante_id = u.id) t1,\
687
+            	 (SELECT v.id, u.nombres, u.apellidos\
688
+                  	FROM visitas_oficina v, usuarios u\
689
+                  	WHERE v.administradora_id = u.id) t2\
690
+            WHERE t1.id=t2.id'
691
+    result_db = connection.execute(query).fetchall()
692
+
693
+    modal_content = '['
694
+    i = 0
695
+    len_result = len(result_db)
696
+    for q in result_db:
697
+        i = i+1
698
+
699
+        dia = str(q[7]).split(' ')[0]
700
+        hora = str(q[7]).split(' ')[1]
701
+        hora = hora.split(':')
702
+        hora = hora[0]+':'+hora[1]
703
+        dia_hora = dia + ' ' + hora
704
+
705
+        modal_content   += '{'
706
+        modal_content   += '"Nombre Administrador":"'+(q[1])+' '+(q[2])+'"'
707
+        modal_content   += ','
708
+        modal_content   += '"Nombre Estudiante":"'+(q[3])+' '+(q[4])+'"'
525 709
         modal_content   += ','
526 710
 
527 711
         modal_content   += '"Dia y hora":"'+dia_hora+'"'
@@ -529,40 +713,38 @@ def visita():
529 713
         modal_content   += '"Razon":"'+(q[5])+'"'
530 714
         modal_content   += ','
531 715
         modal_content   += '"Explicación":"'+(q[6])+'"'
532
-
533
-
534 716
         modal_content   += ','
535
-        tabla           += '"user_id":"'+str(q[0])+'"'
536 717
         modal_content   += '"user_id":"'+str(q[0])+'"'
537
-        tabla           += '}'
538 718
         modal_content   += '}'
539 719
         if i < len_result:
540
-            tabla        += ','
541 720
             modal_content+= ','
542
-    tabla               += ']'
543 721
     modal_content       += ']'
544 722
 
723
+
724
+
545 725
     ###### info
546 726
 
547 727
     info = '{'
548
-    info += '"dash_name":"Administración- Manejar Visitas"'
728
+    info += '"dash_name":"Administración- Manejar Visitas"' #nombre en el header
549 729
     info += ','
550
-    info += '"dash_link":"/admin/ver/"'
730
+    info += '"dash_link":"/admin/ver/"' #link si click el header
551 731
     info += ','
552
-    info += '"dash_sub_name":"Visitas hechas"'
732
+    info += '"dash_sub_name":"Visitas hechas"' #titulo grande de la pagina
553 733
     info += ','
554
-    info += '"add":"Anadir Visita"'
734
+    info += '"add":"Anadir Visita"' #texto en el boton para a~nadir perfil
555 735
     info += ','
556
-    info += '"add_link":"/admin/forma/add/visitas_oficina/"'
736
+    info += '"add_link":"/admin/forma/add/visitas_oficina/"' #direccion para el boton para a~nadir perfil
557 737
     info += ','
558 738
     info += '"bot1":"Ver Mas"' #texto del primer boton en una fila
559 739
     info += ','
560 740
     info += '"bot2":"Editar"' #texto del segundo boton en una fila
561 741
     info += ','
562
-    info += '"dir2":"/admin/forma/edit/visitas_oficina/"'
742
+    info += '"dir2":"/admin/forma/edit/visitas_oficina/"' #direccion del segundo boton
563 743
     info += '}'
564 744
 
745
+
565 746
     ###### modal
747
+    # modal contiene el titulo y la direccion parcial del modal
566 748
     modal = '{'
567 749
     modal += '"infoName":"Ver informacion"'
568 750
     modal += ','
@@ -571,7 +753,6 @@ def visita():
571 753
 
572 754
     result = '{"headers":'+headers+',"tabla":'+tabla+',"modal_content":'+modal_content+',"info":'+info+',"modal":'+modal+'}'
573 755
 
574
-    # print(result)
575 756
     return(result)
576 757
 
577 758
 
@@ -579,10 +760,9 @@ def visita():
579 760
 #   url: /admin/ver/visitas_oficina
580 761
 
581 762
 def transcripcion():
582
-    query = 'SELECT u.id, u.nombres, u.apellidos, u.email FROM usuarios u, estudiantes m WHERE u.id = m.user_id'
583
-    result_db = connection.execute(query).fetchall()
584 763
 
585 764
     ###### headers
765
+    # headers contiene los titulos de las columnas
586 766
 
587 767
     headers = '['
588 768
     headers += '{"nombre":"Nombre"}'
@@ -595,52 +775,79 @@ def transcripcion():
595 775
     headers += ','
596 776
     headers += '{"nombre":"Transcripción"}'
597 777
     headers += ']'
598
-    # headers = '[{"nombre":"Nombre"},{"nombre":"Posicion"},{"nombre":"Informacion"},{"nombre":"Editar"}]'
778
+
599 779
 
600 780
     ###### tabla
781
+    # tabla contiene la informacion que sale en las filas
782
+
783
+    query = 'SELECT u.id, u.nombres, u.apellidos, u.email \
784
+            FROM usuarios u, estudiantes m \
785
+            WHERE u.id = m.user_id'
786
+    result_db = connection.execute(query).fetchall()
601 787
 
602 788
 
603 789
     tabla = '['
604
-    modal_content = '['
605 790
     i = 0
606 791
     len_result = len(result_db)
607 792
     for q in result_db:
608 793
         i = i+1
609 794
         tabla += '{'
610
-        modal_content += '{'
611 795
         tabla += '"Nombre":"'+(q[1])+' '+(q[2])+'"'
612
-        modal_content += '"Nombre":"'+(q[1])+' '+(q[2])+'"'
613 796
         tabla += ','
614
-        modal_content += ','
615 797
 
616 798
         query = 'SELECT grado FROM estudiantes e WHERE e.user_id = ' + str(q[0])
617
-        total_hijos = connection.execute(query).fetchall()
799
+        grado = connection.execute(query).fetchall()
618 800
 
619
-        tabla += '"Grado":"'+str(total_hijos[0][0])+'"'
620
-        modal_content += '"Grado":"'+str(total_hijos[0][0])+'"'
801
+        tabla += '"Grado":"'+str(grado[0][0])+'"'
621 802
 
622 803
         tabla += ','
623
-        modal_content += ','
624 804
         tabla += '"Email":"'+(q[3])+'"'
625
-        modal_content += '"Email":"'+(q[3])+'"'
626 805
         tabla += ','
627
-        modal_content += ','
628 806
         tabla += '"user_id":"'+str(q[0])+'"'
629
-        modal_content += '"user_id":"'+str(q[0])+'"'
630 807
         tabla += '}'
631
-        modal_content += '}'
632 808
         if i < len_result:
633 809
             tabla += ','
634
-            modal_content += ','
635 810
     tabla += ']'
811
+
812
+
813
+    ###### modal_content
814
+    # modal_content contiene la informacion única de cada fila al presionar 'ver mas'
815
+    query = 'SELECT u.id, u.nombres, u.apellidos, u.email \
816
+            FROM usuarios u, estudiantes m \
817
+            WHERE u.id = m.user_id'
818
+    result_db = connection.execute(query).fetchall()
819
+
820
+    modal_content = '['
821
+    i = 0
822
+    len_result = len(result_db)
823
+    for q in result_db:
824
+        i = i+1
825
+
826
+        query = 'SELECT grado FROM estudiantes e WHERE e.user_id = ' + str(q[0])
827
+        grado = connection.execute(query).fetchall()
828
+
829
+        modal_content += '{'
830
+        modal_content += '"Nombre":"'+(q[1])+' '+(q[2])+'"'
831
+        modal_content += ','
832
+        modal_content += '"Grado":"'+str(grado[0][0])+'"'
833
+        modal_content += ','
834
+        modal_content += '"Email":"'+(q[3])+'"'
835
+        modal_content += ','
836
+        modal_content += '"user_id":"'+str(q[0])+'"'
837
+        modal_content += '}'
838
+        if i < len_result:
839
+            modal_content += ','
636 840
     modal_content += ']'
637 841
 
842
+
843
+
844
+
638 845
     ###### info
639 846
 
640 847
     info = '{'
641 848
     info += '"dash_name":"Manejar Estudiantes"' #nombre en el header
642 849
     info += ','
643
-    info += '"dash_link":"/admin/ver/"' #link al click el header
850
+    info += '"dash_link":"/admin/ver/"' #link si click el header
644 851
     info += ','
645 852
     info += '"dash_sub_name":"Estudiantes Registrados"' #titulo grande de la pagina
646 853
     info += ','
@@ -656,6 +863,7 @@ def transcripcion():
656 863
     info += '}'
657 864
 
658 865
     ###### modal
866
+    # modal contiene el titulo y la direccion parcial del modal
659 867
 
660 868
     modal = '{'
661 869
     modal += '"infoName":"Ver informacion"'
@@ -665,5 +873,4 @@ def transcripcion():
665 873
 
666 874
     result = '{"headers":'+headers+',"tabla":'+tabla+',"modal_content":'+modal_content+',"info":'+info+',"modal":'+modal+'}'
667 875
 
668
-    # print(result)
669 876
     return(result)

+ 23
- 11
dash-run.py Просмотреть файл

@@ -10,12 +10,29 @@ import transcripcionmaker
10 10
 
11 11
 app = Flask(__name__)
12 12
 
13
+############# estas direcciones no son del producto final. son para pruebas.
13 14
 @app.route("/", methods=['GET', 'POST'])
14 15
 @app.route("/home/", methods=['GET', 'POST'])
15 16
 def home():
16 17
     return render_template('dash.html', jscript="perfilesInfo.js")
17
-
18
-
18
+#############
19
+
20
+
21
+'''
22
+estas direcciones permiten ver las siguientes paginas de los siguientes perfiles:
23
+    admin:
24
+        ver y editar los perfiles de
25
+                            admin
26
+                            facultad
27
+                            enfermeria
28
+                            encargados
29
+                            estudiantes
30
+        ver y manejar las visitas en la oficina
31
+        crear las transcripcion
32
+
33
+    enfermeras:
34
+        pueden ver y crear visitas hechas en la enfermeria
35
+'''
19 36
 @app.route("/<perfil>/ver/", methods=['GET', 'POST'])
20 37
 @app.route("/<perfil>/ver/<pagina>/", methods=['GET', 'POST'])
21 38
 def perfil(perfil, pagina=None):
@@ -31,16 +48,11 @@ def perfil(perfil, pagina=None):
31 48
             return render_template('table.html', jscript="enfermeriaver.js", pagina=pagina)
32 49
     return render_template('error.html')
33 50
 
34
-# @app.route("/<perfil>/editar/<pagina>/", methods=['GET', 'POST'])
35
-# @app.route("/<perfil>/editar/<pagina>/<id>", methods=['GET', 'POST'])
36
-# def perfil(perfil, pagina, id=None):
37
-#     if (perfil=='admin'):
38
-#         if (pagina=='estudiante'):
39
-#             return render_template('dash.html', jscript="admin.js", pagina=pagina)
40
-#         if(pagina in ['admin','facultad','enfermeria','encargados','estudiantes']):
41
-#             return render_template('table.html', jscript="adminver.js", pagina=pagina)
42
-#     return render_template('error.html')
43 51
 
52
+'''
53
+estas direcciones son llamadas por las paginass de la seccion anterior.
54
+    estas direcciones regresan la informacion guardada en la base de datos.
55
+'''
44 56
 @app.route('/<perfil>/datos/', methods=['GET', 'POST'])
45 57
 @app.route('/<perfil>/datos/<pagina>/', methods=['GET', 'POST'])
46 58
 def datos(perfil, pagina=None):

+ 67
- 27
enfermeriaver.py Просмотреть файл

@@ -2,18 +2,9 @@ from connect import connection
2 2
 import sqlalchemy as db
3 3
 
4 4
 def visitas():
5
-    query ='SELECT t1.id, t2.nombres e_nombre, t2.apellidos e_apellido,\
6
-                t1.nombres p_nombre, t1.apellidos p_apellido, t1.razon, t1.acciones, t1.fecha\
7
-            FROM (SELECT v.id, u.nombres, u.apellidos,v.razon, v.acciones, v.fecha\
8
-                  	FROM visitas_enfermeria v, usuarios u\
9
-                  	WHERE v.estudiante_id = u.id) t1,\
10
-            	 (SELECT v.id, u.nombres, u.apellidos\
11
-                  	FROM visitas_enfermeria v, usuarios u\
12
-                  	WHERE v.enfermera_id = u.id) t2\
13
-            WHERE t1.id=t2.id'
14
-    result_db = connection.execute(query).fetchall()
15 5
 
16 6
     ###### headers
7
+    # headers contiene los titulos de las columnas
17 8
 
18 9
     headers = '['
19 10
     headers += '{"nombre":"Dia y hora"}'
@@ -27,9 +18,21 @@ def visitas():
27 18
     headers += '{"nombre":"Editar"}'
28 19
     headers += ']'
29 20
 
21
+
30 22
     ###### tabla
23
+    # tabla contiene la informacion que sale en las filas
24
+
25
+    query ='SELECT t1.id, t2.nombres e_nombre, t2.apellidos e_apellido,\
26
+                t1.nombres p_nombre, t1.apellidos p_apellido, t1.razon, t1.acciones, t1.fecha\
27
+            FROM (SELECT v.id, u.nombres, u.apellidos,v.razon, v.acciones, v.fecha\
28
+                  	FROM visitas_enfermeria v, usuarios u\
29
+                  	WHERE v.estudiante_id = u.id) t1,\
30
+            	 (SELECT v.id, u.nombres, u.apellidos\
31
+                  	FROM visitas_enfermeria v, usuarios u\
32
+                  	WHERE v.enfermera_id = u.id) t2\
33
+            WHERE t1.id=t2.id'
34
+    result_db = connection.execute(query).fetchall()
31 35
 
32
-    modal_content = '['
33 36
     tabla = '['
34 37
     i = 0
35 38
     len_result = len(result_db)
@@ -43,17 +46,55 @@ def visitas():
43 46
         dia_hora = dia + ' ' + hora
44 47
 
45 48
         tabla           += '{'
46
-        modal_content   += '{'
47 49
         tabla           += '"Dia y hora":"'+dia_hora+'"'
48
-        modal_content   += '"Nombre Enfermera":"'+(q[1])+' '+(q[2])+'"'
49 50
         tabla           += ','
50
-        modal_content   += ','
51 51
         tabla           += '"Nombre Estudiante":"'+(q[3])+' '+(q[4])+'"'
52
-        modal_content   += '"Nombre Estudiante":"'+(q[3])+' '+(q[4])+'"'
53 52
         tabla           += ','
54
-        modal_content   += ','
55 53
 
56 54
         tabla           += '"Razon":"'+(q[5])+'"'
55
+
56
+
57
+        tabla           += ','
58
+        tabla           += '"user_id":"'+str(q[0])+'"'
59
+        tabla           += '}'
60
+        if i < len_result:
61
+            tabla        += ','
62
+    tabla               += ']'
63
+
64
+
65
+
66
+    ###### modal_content
67
+    # modal_content contiene la informacion única de cada fila al presionar 'ver mas'
68
+
69
+    query ='SELECT t1.id, t2.nombres e_nombre, t2.apellidos e_apellido,\
70
+                t1.nombres p_nombre, t1.apellidos p_apellido, t1.razon, t1.acciones, t1.fecha\
71
+            FROM (SELECT v.id, u.nombres, u.apellidos,v.razon, v.acciones, v.fecha\
72
+                  	FROM visitas_enfermeria v, usuarios u\
73
+                  	WHERE v.estudiante_id = u.id) t1,\
74
+            	 (SELECT v.id, u.nombres, u.apellidos\
75
+                  	FROM visitas_enfermeria v, usuarios u\
76
+                  	WHERE v.enfermera_id = u.id) t2\
77
+            WHERE t1.id=t2.id'
78
+    result_db = connection.execute(query).fetchall()
79
+
80
+    modal_content = '['
81
+    i = 0
82
+    len_result = len(result_db)
83
+    for q in result_db:
84
+        i = i+1
85
+
86
+        dia = str(q[7]).split(' ')[0]
87
+        hora = str(q[7]).split(' ')[1]
88
+        hora = hora.split(':')
89
+        hora = hora[0]+':'+hora[1]
90
+        dia_hora = dia + ' ' + hora
91
+
92
+        modal_content   += '{'
93
+        modal_content   += '"Nombre Enfermera":"'+(q[1])+' '+(q[2])+'"'
94
+        modal_content   += ','
95
+        modal_content   += '"Nombre Estudiante":"'+(q[3])+' '+(q[4])+'"'
96
+        modal_content   += ','
97
+
57 98
         modal_content   += '"Razon":"'+(q[5])+'"'
58 99
         modal_content   += ','
59 100
         modal_content   += '"Explicación":"'+(q[6])+'"'
@@ -61,39 +102,38 @@ def visitas():
61 102
         modal_content   += '"Dia y hora":"'+dia_hora+'"'
62 103
 
63 104
 
64
-        tabla           += ','
65 105
         modal_content   += ','
66
-        tabla           += '"user_id":"'+str(q[0])+'"'
67 106
         modal_content   += '"user_id":"'+str(q[0])+'"'
68
-        tabla           += '}'
69 107
         modal_content   += '}'
70 108
         if i < len_result:
71
-            tabla        += ','
72 109
             modal_content+= ','
73
-    tabla               += ']'
74 110
     modal_content       += ']'
75 111
 
112
+
113
+
76 114
     ###### info
77 115
 
78 116
     info = '{'
79
-    info += '"dash_name":"Enfermeria- Manejar Visitas"'
117
+    info += '"dash_name":"Enfermeria- Manejar Visitas"' #nombre en el header
80 118
     info += ','
81
-    info += '"dash_link":"/enfermeria/ver/"'
119
+    info += '"dash_link":"/enfermeria/ver/"' #link si click el header
82 120
     info += ','
83
-    info += '"dash_sub_name":"Visitas hechas"'
121
+    info += '"dash_sub_name":"Visitas hechas"' #titulo grande de la pagina
84 122
     info += ','
85
-    info += '"add":"Anadir Visita"'
123
+    info += '"add":"Anadir Visita"'  #texto en el boton para a~nadir perfil
86 124
     info += ','
87
-    info += '"add_link":"/enfermeria/forma/add/visitas_enfermeria/"'
125
+    info += '"add_link":"/enfermeria/forma/add/visitas_enfermeria/"'  #direccion para el boton para a~nadir perfil
88 126
     info += ','
89 127
     info += '"bot1":"Ver Mas"' #texto del primer boton en una fila
90 128
     info += ','
91 129
     info += '"bot2":"Editar"' #texto del segundo boton en una fila
92 130
     info += ','
93
-    info += '"dir2":"/enfermeria/forma/edit/visitas_enfermeria/"'
131
+    info += '"dir2":"/enfermeria/forma/edit/visitas_enfermeria/"'  #direccion del segundo boton
94 132
     info += '}'
95 133
 
96 134
     ###### modal
135
+    # modal contiene el titulo y la direccion parcial del modal
136
+
97 137
     modal = '{'
98 138
     modal += '"infoName":"Ver informacion"'
99 139
     modal += ','

+ 9
- 1
static/admin.js Просмотреть файл

@@ -1,3 +1,11 @@
1
+/*
2
+este archivo contiene la siguiente informacion de cada boton que le aparece en
3
+  el dashboard del administrador ($scope.opciones):
4
+      texto
5
+      direccion
6
+tambien contiene el nombre que aparece en la esquina superior izq. y la dirreccion
7
+  al presionarlo ($scope.info)
8
+*/
1 9
 var dash = angular.module('dash',[]);
2 10
 
3 11
 dash.controller('dashController', function($scope){
@@ -52,7 +60,7 @@ dash.controller('dashController', function($scope){
52 60
     }
53 61
   ];
54 62
   $scope.info = {
55
-      dash_name:'Dashboard de Administracion',
63
+      dash_name:'Dashboard de Administración',
56 64
       dash_link:'/',
57 65
     };
58 66
 });

+ 19
- 5
static/adminver.js Просмотреть файл

@@ -1,5 +1,8 @@
1
+/*
2
+este archivo llama a la base de datos con la informacion adecuada basado en cual
3
+pagina el administrador esta accesando
4
+*/
1 5
 var table = angular.module('table',['ngSanitize']);
2
-// var table = angular.module('table',[]);
3 6
 
4 7
 table.controller('tableController', function tableController($http, $scope, pagina){
5 8
 
@@ -7,15 +10,26 @@ table.controller('tableController', function tableController($http, $scope, pagi
7 10
   console.log(',datos,admin,'+pagina);
8 11
 
9 12
   $http.get(url).then(function(response) {
13
+    // headers contiene los titulos de las columnas
10 14
     $scope.headers = response.data.headers;
15
+
16
+    // tabla contiene la informacion de cada fila
11 17
     $scope.tabla = response.data.tabla;
18
+
19
+    // info contiene la siguiente informacion:
20
+    //    texto del header y su link
21
+    //    titulo de la pagina
22
+    //    texto y link del boton de añadir
23
+    //    texto del boton de 'ver mas'
24
+    //    texto y link del boton de 'editar'
12 25
     $scope.info = response.data.info;
26
+
27
+    // modal contiene el titulo y la direccion parcial del modal
13 28
     $scope.modal = response.data.modal;
29
+
30
+    // modal_content contiene la informacion única de cada fila al presionar 'ver mas'
14 31
     $scope.modal_content = response.data.modal_content;
32
+
15 33
     console.log(response.data);
16
-    // document.write(response.data.headers);
17
-    // document.write(response.data.tabla);
18
-    // document.write(response.data.info);
19
-    // document.write(response.data.modal);
20 34
   });
21 35
 });

+ 8
- 0
static/enfermeria.js Просмотреть файл

@@ -1,3 +1,11 @@
1
+/*
2
+este archivo contiene la siguiente informacion de cada boton que le aparece en
3
+  el dashboard del enfermeria ($scope.opciones):
4
+      texto
5
+      direccion
6
+tambien contiene el nombre que aparece en la esquina superior izq. y la dirreccion
7
+  al presionarlo ($scope.info)
8
+*/
1 9
 var dash = angular.module('dash',[]);
2 10
 
3 11
 dash.controller('dashController', function($scope){

+ 19
- 5
static/enfermeriaver.js Просмотреть файл

@@ -1,5 +1,8 @@
1
+/*
2
+este archivo llama a la base de datos con la informacion adecuada basado en cual
3
+pagina la enfermera esta accesando
4
+*/
1 5
 var table = angular.module('table',['ngSanitize']);
2
-// var table = angular.module('table',[]);
3 6
 
4 7
 table.controller('tableController', function tableController($http, $scope, pagina){
5 8
 
@@ -7,15 +10,26 @@ table.controller('tableController', function tableController($http, $scope, pagi
7 10
   console.log(',datos,admin,'+pagina);
8 11
 
9 12
   $http.get(url).then(function(response) {
13
+    // headers contiene los titulos de las columnas
10 14
     $scope.headers = response.data.headers;
15
+
16
+    // tabla contiene la informacion de cada fila
11 17
     $scope.tabla = response.data.tabla;
18
+
19
+    // info contiene la siguiente informacion:
20
+    //    texto del header y su link
21
+    //    titulo de la pagina
22
+    //    texto y link del boton de añadir
23
+    //    texto del boton de 'ver mas'
24
+    //    texto y link del boton de 'editar'
12 25
     $scope.info = response.data.info;
26
+
27
+    // modal contiene el titulo y la direccion parcial del modal
13 28
     $scope.modal = response.data.modal;
29
+
30
+    // modal_content contiene la informacion única de cada fila al presionar 'ver mas'
14 31
     $scope.modal_content = response.data.modal_content;
32
+
15 33
     console.log(response.data);
16
-    // document.write(response.data.headers);
17
-    // document.write(response.data.tabla);
18
-    // document.write(response.data.info);
19
-    // document.write(response.data.modal);
20 34
   });
21 35
 });

+ 1
- 1
static/forma.js Просмотреть файл

@@ -5,7 +5,7 @@ var forma = angular.module('forma', ['ngSanitize']);
5 5
 forma.controller('FormController', function FormController($http, $scope, accion, tipo, id, user_type, $window) {
6 6
   	console.log(accion +","+ tipo +","+ id);
7 7
   	var url = '/'+user_type+'/formaDatos/'+accion+'/'+tipo+'/'
8
-  	if(id)
8
+  	if(id!='None')
9 9
   	{
10 10
   		url+= id;
11 11
   	}

+ 5
- 12
templates/dash.html Просмотреть файл

@@ -1,43 +1,36 @@
1 1
 <html>
2 2
 
3
-  <!-- empieza los includes -->
4 3
   <head>
5 4
     <title>Draft</title>
6 5
     <meta name="viewport" content="width=device-width, initial-scale=1">
7 6
     <meta charset="UTF-8">
8 7
     <link rel="icon" href="/../Icon.ico" sizes="32x32">
9
-    <!-- <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"> -->
10 8
     <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
11 9
     <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script>
12 10
     <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"></script>
13 11
     <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
14 12
     <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css">
15
-
16
-
17
-    <!-- el .css -->
18 13
     <link rel="stylesheet" href="{{ url_for('static', filename='estilo.css') }}" />
19
-
20
-    <!-- los .js que quiero usar -->
21 14
     <script type="text/javascript" src="{{ url_for('static', filename=jscript) }}"></script>
22 15
     <script>
16
+    // la variable 'pagina' la usa el javascript para que el *-run.py sepa
17
+    //      cual funcion del python file llamar, basado en la direccion.
18
+    //        esta funcion se encarga de comunicarse con la base de datos.
23 19
       dash.value("pagina", "{{pagina}}")
24 20
     </script>
25
-    {% raw %}
26
-    {{perfil}}{{pagina}}{{id}}{{jscript}}
27
-    {% endraw %}
28
-
29 21
   </head>
30
-  <!-- termina los includes -->
31 22
 
32 23
   <body ng-app="dash" ng-controller="dashController">
33 24
     <nav class="navbar header navbar-dark bg-dark navbar-expand">
34 25
       {% raw %}
26
+      <!-- el texto en la parte superior izquerda -->
35 27
       <a class="navbar-brand" href="{{info.dash_link}}">{{info.dash_name}}</a>
36 28
       {% endraw %}
37 29
     </nav>
38 30
 
39 31
     <div class="container-fluid text-center">
40 32
       {% raw %}
33
+      <!-- esto genera cada boton -->
41 34
       <a ng-repeat="opcion in opciones" href="{{opcion.dir}}" class="btn task boton mr-4">{{opcion.nombre}}</a>
42 35
       {% endraw %}
43 36
     </div>

+ 9
- 20
templates/table.html Просмотреть файл

@@ -1,41 +1,25 @@
1 1
 <html>
2 2
 
3
-  <!-- empieza los includes -->
4 3
   <head>
5 4
     <title>Draft</title>
6 5
     <meta name="viewport" content="width=device-width, initial-scale=1">
7 6
     <meta charset="UTF-8">
8 7
     <link rel="icon" href="/../Icon.ico" sizes="32x32">
9
-    <!-- <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"> -->
10 8
     <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
11 9
     <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script>
12 10
     <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"></script>
13
-    <!-- <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script> -->
14 11
     <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css">
15 12
     <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"></script>
16 13
     <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular-sanitize.js"></script>
17
-
18
-    <!-- el .css -->
19 14
     <link rel="stylesheet" href="{{ url_for('static', filename='estilo.css') }}" />
20
-
21
-    <!-- los .js que quiero usar -->
22 15
     <script type="text/javascript" src="{{ url_for('static', filename=jscript) }}"></script>
23 16
     <script>
24
-    // la variable 'pagina' la usa el javascript para que el run.py sepa cual python file abrir.
25
-    //        este python file se encarga de comunicarse con la base de datos.
17
+    // la variable 'pagina' la usa el javascript para que el *-run.py sepa
18
+    //      cual funcion del python file llamar, basado en la direccion.
19
+    //        esta funcion se encarga de comunicarse con la base de datos.
26 20
       table.value("pagina", "{{pagina}}")
27 21
     </script>
28
-    {% raw %}
29
-    <!-- {{headers}} -->
30
-    <!-- {{tabla}} -->
31
-    <!-- {{info}} -->
32
-    <!-- {{modal}} -->
33
-    <!-- {{modal_content}} -->
34
-    {% endraw %}
35
-
36 22
   </head>
37
-  <!-- termina los includes -->
38
-
39 23
 
40 24
   <body ng-app="table" ng-controller="tableController">
41 25
     <nav class="navbar navbar-dark bg-dark navbar-expand">
@@ -55,8 +39,10 @@
55 39
       <div class="row" >
56 40
         <div class="col-2" >
57 41
           <div class="topnav">
42
+            <!-- la proxima seccion de codigo es solamente para el searchbox sobre la tabla. -->
58 43
             <!-- ################################ con ayuda de w3schools:
59
-                                                How TO - Filter/Search Table-->
44
+                                                How TO - Filter/Search Table
45
+            -->
60 46
             <input type="text" id="myInput" onkeyup="filter_search()" placeholder="Search..">
61 47
             <script>
62 48
               function filter_search() {
@@ -94,6 +80,7 @@
94 80
           <!-- <button href='./' type="submit">Submit</button> -->
95 81
         </div>
96 82
         <div class="col-4" >
83
+          <!-- el boton de a~nadir, el cual lleva a un form -->
97 84
           {% raw %}
98 85
           <a class="btn button boton mr-4" href="{{info.add_link}}">{{info.add}}</a>
99 86
           {% endraw %}
@@ -104,9 +91,11 @@
104 91
           <table id='tabla'>
105 92
             <tr>
106 93
               {% raw %}
94
+              <!-- imprime los titulos de cada columna -->
107 95
               <th ng-repeat="header in headers" class="header2">{{header.nombre}}</th>
108 96
               {% endraw %}
109 97
             </tr>
98
+            <!-- para imprimir cada fila -->
110 99
             <tr ng-repeat="row in tabla">
111 100
               {% raw %}
112 101
               <!-- la proxima linea asume que las entradas en la tabla tienen un id unico con -->

+ 2
- 1
templates/transcripcion.html Просмотреть файл

@@ -105,7 +105,7 @@
105 105
                 <td>
106 106
                   <div ng-bind-html="clase.nombre"></div>
107 107
                 </td>
108
-                <td>
108
+                <td ng-if='clase.porciento'>
109 109
                   <div ng-if="clase.porciento >= 90                       " >A</div>
110 110
                   <div ng-if="clase.porciento >= 80 && clase.porciento <= 89" >B</div>
111 111
                   <div ng-if="clase.porciento >= 70 && clase.porciento <= 79" >C</div>
@@ -143,6 +143,7 @@
143 143
 //        este python file se encarga de comunicarse con la base de datos.
144 144
   // table.value("id", "{{id}}")
145 145
 </script>
146
+<!-- /testing -->
146 147
 
147 148
 
148 149
 </html>

+ 70
- 63
transcripcionmaker.py Просмотреть файл

@@ -7,14 +7,18 @@ def crear_transcripcion(id):
7 7
 
8 8
 
9 9
     ###### headers
10
+    # headers contiene los titulos de las columnas
10 11
     headers={}
11 12
     headers.update({"1":"Codigo"})
12 13
     headers.update({"2":"Curso"})
13 14
     headers.update({"3":"Nota"})
14 15
     headers.update({"4":"Porciento"})
15 16
 
16
-    ###### estudiante
17 17
 
18
+    ###### estudiante
19
+    # estudiante contiene la informacion del estudiante:
20
+    #     nombres, apellidos, email, fecha_nacimiento, direccion1, direccion2, ciudad
21
+    #       estudiante.update({"pais, zipcode, telefono1, telefono2
18 22
     query = 'SELECT nombres, apellidos, email, fecha_nacimiento, direccion1, direccion2, ciudad, pais, zipcode,\
19 23
                 telefono1, telefono2\
20 24
             FROM usuarios u, estudiantes m \
@@ -48,7 +52,7 @@ def crear_transcripcion(id):
48 52
 
49 53
 
50 54
     ###### semestres
51
-
55
+    # semestres se encarga de agrupar las clases por semestre
52 56
 
53 57
     #funcion para obtener el promedio en un semestre dado
54 58
     def get_promedio_del_semestre(id, semestre):
@@ -78,8 +82,9 @@ def crear_transcripcion(id):
78 82
     ctr3=1
79 83
     if len(clases)>0:
80 84
         codigo_semestre = clases[0][1]
85
+        # por cada clase en el resultado
81 86
         for clase in clases:
82
-            #add clases al semestre
87
+            #se agrupan las clases si el codigo del semestre es el mismo
83 88
             if codigo_semestre == clase[1]:
84 89
                 curso = {}
85 90
                 curso.update({"id":str(clase[0])})
@@ -92,6 +97,8 @@ def crear_transcripcion(id):
92 97
                 semestre.update({codigo_semestre+'//'+str(ctr):curso})
93 98
             #si el semestre es distinto,
94 99
 
100
+            #si el codigo del semestre cambia, se inserte el semestre con el codigo viejo en semestres,
101
+            #       y se comienza un semestre nuevo con el nuevo codigo
95 102
             elif codigo_semestre != clase[1]:
96 103
                 # add semestre a semestres
97 104
                 promedio = {}
@@ -118,6 +125,7 @@ def crear_transcripcion(id):
118 125
             ctr += 1
119 126
             ctr2 += 1
120 127
 
128
+            # si estamo con la ultima clase, se inserte en el semestre actual, y el semestre en semestres
121 129
             if ctr2==len(clases):
122 130
                 promedio = {}
123 131
                 promedio_semestre = get_promedio_del_semestre(id, curso.get('Semestre'))
@@ -134,67 +142,66 @@ def crear_transcripcion(id):
134 142
     result.update({"estudiante":estudiante})
135 143
     result.update({"semestres":semestres})
136 144
 
137
-    # print(result)
138
-
139
-    #####################################################################
140
-    #####################################################################
141
-    #####################################################################
142
-
143
-
144
-    # https://www.blog.pythonlibrary.org/2018/06/05/creating-pdfs-with-pyfpdf-and-python/
145
-    from fpdf import FPDF, HTMLMixin
146
-
147
-    class HTML2PDF(FPDF, HTMLMixin):
148
-        pass
149
-
150
-    html = '''<h1 align="center">PyFPDF HTML Demo</h1>
151
-    <p>This is regular text</p>
152
-    <p>You can also <b>bold</b>, <i>italicize</i> or <u>underline</u>
153
-    '''
154
-    pdf = HTML2PDF()
155
-    pdf.add_page()
156
-    pdf.write_html(html)
157
-    # pdf.output('html2pdf.pdf')
158
-
159
-    ##########
160 145
 
161
-    # pdf = FPDF()
146
+    # #####################################################################
147
+    # #####################################################################
148
+    # #####################################################################
149
+    #
150
+    #
151
+    # # https://www.blog.pythonlibrary.org/2018/06/05/creating-pdfs-with-pyfpdf-and-python/
152
+    # from fpdf import FPDF, HTMLMixin
153
+    #
154
+    # class HTML2PDF(FPDF, HTMLMixin):
155
+    #     pass
156
+    #
157
+    # html = '''<h1 align="center">PyFPDF HTML Demo</h1>
158
+    # <p>This is regular text</p>
159
+    # <p>You can also <b>bold</b>, <i>italicize</i> or <u>underline</u>
160
+    # '''
161
+    # pdf = HTML2PDF()
162 162
     # pdf.add_page()
163
-    pdf.set_font("Arial", size=12)
164
-    pdf.cell(200, 10, txt="Welcome to Python!", ln=1, align="C")
165
-    pdf.cell(200, 10, txt="Welcome to Python!", ln=1, align="C")
166
-    pdf.cell(200, 10, txt="Welcome to Python!", ln=1, align="C")
167
-    pdf.rect(20, 20, 100, 50)
168
-
169
-    ###########
170
-    spacing=1
171
-    data = [['First Name', 'Last Name', 'email', 'zip'],
172
-            ['Mike', 'Driscoll', 'mike@somewhere.com', '55555'],
173
-            ['John', 'Doe', 'jdoe@doe.com', '12345'],
174
-            ['Nina', 'Ma', 'inane@where.com', '54321']
175
-            ]
176
-
177
-    # pdf = FPDF()
178
-    pdf.set_font("Arial", size=12)
179
-    # pdf.add_page()
180
-
181
-    col_width = pdf.w / 4.5
182
-    row_height = pdf.font_size
183
-    for row in data:
184
-        for item in row:
185
-            pdf.cell(col_width, row_height*spacing,
186
-                     txt=item, border=1)
187
-        pdf.ln(row_height*spacing)
188
-
189
-
190
-    ###########
191
-
192
-    pdf.output("simple_demo.pdf")
193
-
194
-
195
-
196
-    #####################################################################
197
-    #####################################################################
198
-    #####################################################################
163
+    # pdf.write_html(html)
164
+    # # pdf.output('html2pdf.pdf')
165
+    #
166
+    # ##########
167
+    #
168
+    # # pdf = FPDF()
169
+    # # pdf.add_page()
170
+    # pdf.set_font("Arial", size=12)
171
+    # pdf.cell(200, 10, txt="Welcome to Python!", ln=1, align="C")
172
+    # pdf.cell(200, 10, txt="Welcome to Python!", ln=1, align="C")
173
+    # pdf.cell(200, 10, txt="Welcome to Python!", ln=1, align="C")
174
+    # pdf.rect(20, 20, 100, 50)
175
+    #
176
+    # ###########
177
+    # spacing=1
178
+    # data = [['First Name', 'Last Name', 'email', 'zip'],
179
+    #         ['Mike', 'Driscoll', 'mike@somewhere.com', '55555'],
180
+    #         ['John', 'Doe', 'jdoe@doe.com', '12345'],
181
+    #         ['Nina', 'Ma', 'inane@where.com', '54321']
182
+    #         ]
183
+    #
184
+    # # pdf = FPDF()
185
+    # pdf.set_font("Arial", size=12)
186
+    # # pdf.add_page()
187
+    #
188
+    # col_width = pdf.w / 4.5
189
+    # row_height = pdf.font_size
190
+    # for row in data:
191
+    #     for item in row:
192
+    #         pdf.cell(col_width, row_height*spacing,
193
+    #                  txt=item, border=1)
194
+    #     pdf.ln(row_height*spacing)
195
+    #
196
+    #
197
+    # ###########
198
+    #
199
+    # pdf.output("simple_demo.pdf")
200
+    #
201
+    #
202
+    #
203
+    # #####################################################################
204
+    # #####################################################################
205
+    # #####################################################################
199 206
 
200 207
     return jsonify(result)

+ 3
- 0
visitas_enfermeria.py Просмотреть файл

@@ -21,6 +21,7 @@ def prepara_values_visita(data):
21 21
 			values_list.update({item:data[item]})
22 22
 	return values_list
23 23
 
24
+# esta funcion se encarga de editar las entradas de visitas
24 25
 def edit(data):
25 26
 	visitas_enfermeria = db.Table('visitas_enfermeria', metadata, autoload=True, autoload_with=engine)
26 27
 	values_list=prepara_values_visita(data)
@@ -30,6 +31,7 @@ def edit(data):
30 31
 
31 32
 	return redirect(url_for("formas",perfil='enfermeria', accion="edit", tipo="visitas_enfermeria", id=data['id']))
32 33
 
34
+# esta funcion se encarga de crear nuevas entradas a las visitas
33 35
 def add(data):
34 36
 	visitas_enfermeria = db.Table('visitas_enfermeria', metadata, autoload=True, autoload_with=engine)
35 37
 	values_list=prepara_values_visita(data)
@@ -38,6 +40,7 @@ def add(data):
38 40
 	return redirect(url_for("formas",perfil='enfermeria', accion="edit", tipo="visitas_enfermeria", id=data['id']))
39 41
 
40 42
 
43
+# cuando se desea add datos de la base de datos, esta funcion
41 44
 def add_form():
42 45
 	i=1
43 46
 	orden=1

+ 4
- 0
visitas_oficina.py Просмотреть файл

@@ -18,6 +18,7 @@ def prepara_values_visita(data):
18 18
 		values_list.update({item:data[item]})
19 19
 	return values_list
20 20
 
21
+# esta funcion se encarga de editar las entradas de visitas
21 22
 def edit(data):
22 23
 	visitas_oficina = db.Table('visitas_oficina', metadata, autoload=True, autoload_with=engine)
23 24
 	values_list=prepara_values_visita(data)
@@ -27,6 +28,7 @@ def edit(data):
27 28
 
28 29
 	return redirect(url_for("formas",perfil='admin', accion="edit", tipo="visitas_oficina", id=data['id']))
29 30
 
31
+# esta funcion se encarga de crear nuevas entradas a las visitas
30 32
 def add(data):
31 33
 	visitas_oficina = db.Table('visitas_oficina', metadata, autoload=True, autoload_with=engine)
32 34
 	values_list=prepara_values_visita(data)
@@ -35,6 +37,7 @@ def add(data):
35 37
 	return redirect(url_for("formas",perfil='admin', accion="edit", tipo="visitas_oficina", id=data['id']))
36 38
 
37 39
 
40
+# cuando se desea add datos de la base de datos, esta funcion
38 41
 def add_form():
39 42
 	i=1
40 43
 	orden=1
@@ -52,6 +55,7 @@ def add_form():
52 55
 	data.update({"abled":True})
53 56
 	return jsonify(data)
54 57
 
58
+# cuando se desea editar datos de la base de datos, esta funcion llena los campos con los valores actulaes.
55 59
 def edit_form(id, disabled=False):
56 60
 	visitas_oficina = db.Table('visitas_oficina', metadata, autoload=True, autoload_with=engine)
57 61
 	query = db.select([visitas_oficina.columns.razon, visitas_oficina.columns.acciones, visitas_oficina.columns.fecha])