Advertisement
Guest User

Untitled

a guest
May 4th, 2016
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.24 KB | None | 0 0
  1. year = 2016
  2. month = 4
  3. dias_totales = calendar.monthrange(year, month)[1]
  4. categorias = [datetime.date(year, month, day).strftime('%d/%m/%y') for day in range(1, dias_totales+1)]
  5. series = []
  6. documentos_por_usuario = {}
  7. for documento in data:
  8. usuario = documento.usuarios.nombre
  9. if usuario not in documentos_por_usuario:
  10. documentos_por_usuario[usuario] = [0] * dias_totales
  11. documentos_por_usuario[usuario][documento.registro.fecha_ingreso.day-1] += 1
  12.  
  13. for nombre, cantidades in documentos_por_usuario.items():
  14. series.append({
  15. 'name': nombre,
  16. 'data': cantidades
  17. })
  18.  
  19. form = SQLFORM.factory(
  20. Field('usuario', 'reference usuarios',requires=IS_IN_DB(db, db.usuarios, '%(nombre)s', zero='---- Elegir Opcion ----')),
  21. Field('desde', 'date'),
  22. Field('hasta', 'date'),
  23. )
  24. rango=[]
  25. series = []
  26. data = []
  27. categorias = []
  28. if form.process().accepted:
  29. usuario = form.vars.usuario
  30. desde = form.vars.desde
  31. hasta = form.vars.hasta
  32. dias_totales = (hasta - desde).days
  33. for days in range(dias_totales + 1):
  34. fecha = desde + relativedelta(days=days)
  35. rango.append(fecha)
  36. if desde is None or hasta is None:
  37. return
  38.  
  39. data = db((db.registro.usuario==usuario) &
  40. ((db.registro.fecha_ingreso>=desde) & (db.registro.fecha_ingreso<=hasta))
  41. ).select(
  42. db.usuarios.nombre,
  43. db.registro.numero_documento,
  44. db.registro.fecha_ingreso,
  45. left=(
  46. db.usuarios.on(db.usuarios.id==db.registro.usuario),
  47. )
  48. )
  49.  
  50. documentos_por_usuario = {}
  51. for documento in data:
  52. usuario = documento.usuarios.nombre
  53. if usuario not in documentos_por_usuario:
  54. documentos_por_usuario[usuario] = [0] * dias_totales
  55. documentos_por_usuario[usuario][documento.registro.fecha_ingreso.day-1] += 1
  56. for nombre, cantidades in documentos_por_usuario.items():
  57. series.append({
  58. 'name': nombre,
  59. 'data': cantidades
  60. })
  61.  
  62. categorias = [datetime.date(year, month, day).strftime('%d/%m/%y') for day in range(1, dias_totales+1)]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement