示例#1
0
def sendEmailToUser(userIDData, userIDDest):
    #Conseguir el correo del usuario para obtener la direccion
    mail = getUserEmailAddress(userIDDest)
    if (mail):
        print("Preparando correo electronico...")
        #preparar el correo
        msg = MIMEMultipart()
        msg['From'] = smtpUsername
        msg['To'] = mail
        msg['Subject'] = "Historial tomas de presion para el usuario " + userIDData
        body = "Se anexa el archivo excel con el historial del usuario " + userIDData
        msg.attach(MIMEText(body, 'plain'))
        print("Success!!")
        print("Agregando archivo " + userIDData + ".xlsx a correo electronico")
        #Agregamos el archivo
        part = MIMEBase('application', "octet-stream")
        part.set_payload(open(userIDData + ".xlsx", "rb").read())
        Encoders.encode_base64(part)
        part.add_header('Content-Disposition',
                        'attachment; filename="' + userIDData + '.xlsx"')
        msg.attach(part)
        text = msg.as_string()
        print("Success!!")
        print("Enviando email...")
        server.sendmail(smtpUsername, mail, text)
        print("Correo enviado con exito a " + mail)
        #Eliminar el arhcivo
        print("Eliminando archivo cache")
        os.remove(userIDData + ".xlsx")
        print("Success!!")
        resultJson = {"success": "yes"}
        return resultJson
    else:
        return mysql.sendErrorMssg(
            "Error consiguiendo el correo electronico del usuario")
示例#2
0
def getUserDataToExml(userID):
    print("Generando archivo XLSX para usuario " + userID)
    #Creamos el archivo de excel
    workbook = xlsxwriter.Workbook(userID+'.xlsx')
    worksheet = workbook.add_worksheet()
    print("Agregando Header con la informacion del paciente...")
    #agregar header al archivo de excel
    worksheet=addHeaderToExcelFile(worksheet,userID)
    if(worksheet==False):return mysql.sendErrorMssg("Error creando el header del archivo")
    #agregar el historial de los pacientes
    print("Agregando historial del paciente...")
    worksheet=loadUserDataIntoWorksheet(worksheet,userID)
    if(worksheet==False):return mysql.sendErrorMssg("Error insertando el historial del paciente")
    #cerramos el archivo de excel
    print("Success!!...")
    workbook.close()
    print("Guardado en disco!")
    successJson={"success":"yes"}
    return successJson
示例#3
0
def validateUser(userID, userPassword):
    print("Validando usuario con la base de datos....")
    #Pedir al servidor mysql los datos
    data = mysql.fetchDataFromDatabase(
        "SELECT password FROM usuario WHERE userID='" + userID + "'")
    row = mysql.getFirstElement(data)
    #Ver si las claves estan correctas
    if (row[0] != userPassword):
        print("Las claves no son validas para el usuario " + userID)
        return mysql.sendErrorMssg("Error, las claves no son correctas")
    #Regresar success
    print("Usuario validado con exito!")
    returnJson = {"success", "yes"}
    return returnJson
示例#4
0
def summary():
    try:
        if (request.method == "POST"):
            #Conseguir los parametros POST
            requestedUserID = request.form["requestedUserID"]
            userID = request.form['userID']
            userPassword = request.form['userPassword']
            #Validar que tenga una cuenta en la base de datos
            d = validateUser(userID, userPassword)
            if 'error' in d:
                return jsonify(d)
            d = getUserDataToExml(requestedUserID)
            #Ver si ocurrio un error
            if 'error' in d:
                return jsonify(d)
            #llamar funcion para enviar el correo con el archivo
            d = sendEmailToUser(requestedUserID, userID)
            return jsonify(d)
        else:
            return jsonify(sendErrorMssg("Error en los parametros POST"))
    except Exception as e:
        print(e)
        return jsonify(sendErrorMssg("Error interno de servidor"))