Exemple #1
0
def get_nombre_archivo_from_tv(tv):
    """
    Devuelve el nombre del archivo que se generará a partir
    del nombre del widget TreeView.
    """
    nomtreeview = tv.get_name().replace(" ", "_")
    nomarchivo = os.path.join(gettempdir(), "%s_%s.pdf" % (
                    nomtreeview, give_me_the_name_baby()))
    return nomarchivo
Exemple #2
0
def gettempfilename(nombre = ""):
    """
    Devuelve una ruta de fichero tomando como base «nombre». Usa una marca de 
    tiempo para evitar conflictos de nombre, ya que siempre devolverá una 
    ruta en el directorio temporal del usuario.
    """
    nomarchivo = "{0}_{1}.pdf".format(nombre, give_me_the_name_baby())
    ruta = os.path.join(gettempdir(), nomarchivo)
    return ruta
Exemple #3
0
def go_from_peticion(peticion):
    """
    Construye el PDF a partir de un objeto peticion y no de sus datos
    sueltos.
    """
    obra = peticion.obra
    cliente = obra.cliente
    direccion = obra.direccion
    if not direccion:
        direccion = pclases.Direccion.get_direccion_por_defecto()
    ciudad = direccion.ciudad
    provincia = ciudad.provincia
    datos_peticion = {"hoja": peticion.id, 
                      "fecha pedido": 
                        fecha.str_fecha(peticion.fechaSolicitud), 
                      "fecha recogida":  
                        fecha.str_fecha(peticion.fechaRecogida), 
                      "hora": fecha.str_hora_corta(peticion.horaRecogida), 
                      "observaciones": peticion.observaciones, 
                      "recibido por": 
                        peticion.usuario and peticion.usuario.nombre or ""}
    strobra = obra and obra.nombre or ""
    if obra and obra.direccion:
        strobra += "({0})".format(obra.direccion.get_direccion_completa())
    datos_obra = {"cliente": cliente and cliente.nombre or "", 
                  "obra": obra, 
                  "solicitante": peticion and peticion.solicitante or "",
                  "persona de contacto": peticion and peticion.contacto 
                    and peticion.contacto.get_nombre_completo() or ""}
    datos_material = {"material": peticion.material 
                        and peticion.material.nombre or ""}
    datos_ensayo = [e.nombre for e in peticion.ensayos]
    try:
        dde = pclases.get_dde()
        datos_de_la_empresa = [os.path.join("imagenes", dde.logo),
                               #dde.nombre +
                               # (dde.cif and " (" + dde.str_cif_o_nif() +": " 
                               #  + dde.cif + ")" or ""),
                               dde.direccion,
                               "%s %s (%s), %s" % (dde.cp,
                                                   dde.ciudad,
                                                   dde.provincia,
                                                   dde.pais),
                               ]
        if dde.fax:
            if dde.fax.strip() == dde.telefono.strip():
                datos_de_la_empresa.append("Telf. y fax: %s" % dde.telefono)
            else:
                datos_de_la_empresa.append("Telf.: %s" % (dde.telefono))
                datos_de_la_empresa.append("Fax: %s" % (dde.fax))
        #if dde.email:
        #    datos_de_la_empresa.append(dde.email)
    except IndexError:
        datos_de_la_empresa = [None]
    nomarchivo = os.path.join(gettempdir(),
                              "peticion_{0}_{1}.pdf".format(
                                peticion.id, give_me_the_name_baby()))
    return go("Peticion {0}".format(peticion.id), 
              nomarchivo,
              datos_de_la_empresa,
              datos_peticion,
              datos_obra, 
              datos_material,
              datos_ensayo)