示例#1
0
def check_vitals():
    error = None

    # nurseID = request.form['nurseID']
    patID = request.form['patID']
    temp = request.form['temp']
    pulse_arg = request.form['pulse_arg']
    bp = request.form['bp']
    resp = request.form['resp']

    with dataconnector.Connection(app.config['SQL_CRED']['USR'],
                                  app.config['SQL_CRED']['USR']) as con:
        usr = con.login()
        nurseID = usr[1]
    if request.method == 'POST':
        if app.config['SQL_CRED']['USR'] == '' or app.config['SQL_CRED'][
                'PWD'] == '':
            error = 'Invalid Credentials. Please try again.'
        else:
            with dataconnector.Connection(
                    app.config['SQL_CRED']['USR'],
                    app.config['SQL_CRED']['USR']) as con:
                print(nurseID, patID, temp, pulse_arg, bp, resp)
                con.check_vitals(nurseID, patID, temp, pulse_arg, bp, resp)
                return render_template('home.html',
                                       usr=app.config['SQL_CRED']['USR'])
    return render_template('home.html', usr=app.config['SQL_CRED']['USR'])
示例#2
0
def make_diagnosis():
    error = None

    # docID = request.form['docID']
    patID = request.form['patID']
    icdID = request.form['icdID']
    # icdDesc = request.form['desc']
    icdname = request.form['desc']  # icdname
    specifics = request.form['specs']

    with dataconnector.Connection(app.config['SQL_CRED']['USR'],
                                  app.config['SQL_CRED']['USR']) as con:
        usr = con.login()
        docID = usr[1]

    icdDesc = icdservice.get_entity_description(icdID)

    if request.method == 'POST':
        if app.config['SQL_CRED']['USR'] == '' or app.config['SQL_CRED'][
                'PWD'] == '':
            error = 'Invalid Credentials. Please try again.'
        else:
            with dataconnector.Connection(
                    app.config['SQL_CRED']['USR'],
                    app.config['SQL_CRED']['USR']) as con:
                print(docID, patID, icdID, icdDesc, icdname, specifics)
                con.make_diagnosis(docID, patID, icdID, icdDesc, icdname,
                                   specifics)
                return render_template('home.html',
                                       usr=app.config['SQL_CRED']['USR'])
    return render_template('home.html', usr=app.config['SQL_CRED']['USR'])
示例#3
0
def GetInternPerformanceData():
    with dataconnector.Connection(app.config['SQL_CRED']['USR'],
                                  app.config['SQL_CRED']['PWD']) as con:
        data = con.GetInternPerformanceData()
        data_top = con.GetInternsByMostPatient()
        id_most = [(str(d[0]) + ' ' + str(d[1])) for d in data_top]
        for_legend = list(set([(str(d[1]) + ' ' + str(d[2])) for d in data]))
        temp = []

        for d in for_legend:
            if d in id_most:
                temp += [d + '*']
            else:
                temp += [d]

        for_legend = temp

        for_label = list(set([(str(d[4])) for d in data]))
        for_label.sort()
        for_series = []

        for name in for_legend:
            series = []
            for date in for_label:
                for d in data:
                    if (str(d[4]) == date) and (str(d[1]) + ' ' + str(d[2])
                                                == name.replace('*', '')):
                        series.append(d[3])
            for_series += [series]
        return {
            'legendNames': for_legend,
            'labels': for_label,
            'series': for_series
        }
示例#4
0
def GetNursesByPatientAndDate():
    if (request.args.get('patID') == ''):
        patID = 0
    else:
        patID = request.args.get('patID')
    # if (request.args.get('startDate') == ''):
    #     startDate = 0
    # else:
    #     startDate = request.args.get('startDate')
    # if (request.args.get('endDate') == ''):
    #     endDate = 0
    # else:
    #     endDate = request.args.get('endDate')
    print('patID:', patID)
    startDate = datetime.date(datetime.now()) - timedelta(days=7)
    endDate = datetime.date(datetime.now())
    with dataconnector.Connection(app.config['SQL_CRED']['USR'],
                                  app.config['SQL_CRED']['USR']) as con:
        nurses = con.GetNursesByPatientAndDate(startDate, endDate, patID)
        if nurses and len(nurses) > 0:
            print("YEP! Good to go!")
        else:
            nurses = [(' ', ' ', ' ', ' ', ' ', ' ')]
        columns = [
            'nurse_ID', 'fname', 'lname', 'gen_name', 'dosage', 'date_time'
        ]
        nurses = jsonify([{k: str(val)
                           for val, k in zip(row, columns)} for row in nurses])
        print(nurses)
        return nurses
示例#5
0
def GetMedicineAllergyByMostPatients_forchart():
    with dataconnector.Connection(app.config['SQL_CRED']['USR'],
                                  app.config['SQL_CRED']['PWD']) as con:
        medz = con.GetMedicineAllergyByMostPatients()
        return {
            'labels': [('MED-' + str(med[0])) for med in medz],
            'series': [med[2] for med in medz]
        }
示例#6
0
 def GetPatientByDiagnosisAndDate(q=""):
     startDate = datetime.date(datetime.now()) - timedelta(days=7)
     endDate = datetime.date(datetime.now())
     with dataconnector.Connection(app.config['SQL_CRED']['USR'],
                                   app.config['SQL_CRED']['PWD']) as con:
         pats = con.GetPatientByDiagnosisAndDate(startDate, endDate, q)
         pats = [[str(val) for val in row] for row in pats]
         return pats
示例#7
0
def home(usr):
    try:
        with dataconnector.Connection(app.config['SQL_CRED']['USR'],
                                      app.config['SQL_CRED']['PWD']) as con:
            usr = con.login()
    except Exception as e:
        return render_template('home.html', error_msg=e)
    finally:
        return render_template('home.html', usr=usr + 'lol')
示例#8
0
def get_patients():
    search = request.args.get('search')
    with dataconnector.Connection(app.config['SQL_CRED']['USR'],
                                  app.config['SQL_CRED']['PWD']) as con:
        pats = con.get_patients(search)
        columns = ['pat_ID', 'fname', 'lname', 'dob', 'address', 'phone']
        pats = jsonify([{k: str(val)
                         for val, k in zip(row, columns)} for row in pats])
        print(pats)
        return pats
示例#9
0
def get_nurses_by_patient_and_date():
    with dataconnector.Connection(app.config['SQL_CRED']['USR'],
                                  app.config['SQL_CRED']['USR']) as con:
        nurses = con.get_nurses_by_patient_and_date(request.form['start_date'],
                                                    request.form['end_date'],
                                                    request.form['patID'])
        columns = ['nurse_id', 'fname', 'lname']
        nurses = jsonify([{k: str(val)
                           for val, k in zip(row, columns)} for row in nurses])
        print(nurses)
        return nurses
示例#10
0
def get_medicine_allergy_by_most_patients():
    with dataconnector.Connection(app.config['SQL_CRED']['USR'],
                                  app.config['SQL_CRED']['USR']) as con:
        # DO WE NEED THIS?
        med_allergies = con.get_medicine_allergy_by_most_patients(
            request.form['patID'])
        columns = ['med_ID', 'gen_name']
        med_allergies = jsonify([{k: str(val)
                                  for val, k in zip(row, columns)}
                                 for row in med_allergies])
        print(med_allergies)
        return med_allergies
示例#11
0
def GetPatientByDiagnosisAndDate():
    search = request.args.get('search')
    # print(search)
    startDate = datetime.date(datetime.now()) - timedelta(days=7)
    endDate = datetime.date(datetime.now())
    with dataconnector.Connection(app.config['SQL_CRED']['USR'],
                                  app.config['SQL_CRED']['USR']) as con:
        pats = con.GetPatientByDiagnosisAndDate(startDate, endDate, search)
        columns = ['pat_ID', 'fname', 'lname', 'dob', 'address', 'phone']
        pats = jsonify([{k: str(val)
                         for val, k in zip(row, columns)} for row in pats])
        print(pats)
        return pats
示例#12
0
def get_interns_by_most_patients():
    with dataconnector.Connection(app.config['SQL_CRED']['USR'],
                                  app.config['SQL_CRED']['USR']) as con:
        # DO WE NEED THIS?
        interns = con.get_interns_by_most_patients(request.form['start_date'],
                                                   request.form['end_date'],
                                                   request.form['patID'])
        columns = ['fname', 'lname']
        interns = jsonify([{k: str(val)
                            for val, k in zip(row, columns)}
                           for row in interns])
        print(interns)
        return interns
示例#13
0
def login():
    error = None
    if request.method == 'POST':
        app.config.update(SQL_CRED=dict(USR=request.form['username'],
                                        PWD=request.form['password']))
        if app.config['SQL_CRED']['USR'] == '' or app.config['SQL_CRED'][
                'PWD'] == '':
            error = 'Invalid Credentials. Please try again.'
        else:
            with dataconnector.Connection(
                    app.config['SQL_CRED']['USR'],
                    app.config['SQL_CRED']['USR']) as con:
                usr = con.login()
                return render_template('home.html', usr=usr[0])
    return render_template('login.html', error=error)
示例#14
0
def reg_patient():
    error = None
    if request.method == 'POST':
        if app.config['SQL_CRED']['USR'] == '' or app.config['SQL_CRED'][
                'PWD'] == '':
            error = 'Invalid Credentials. Please try again.'
        else:
            with dataconnector.Connection(
                    app.config['SQL_CRED']['USR'],
                    app.config['SQL_CRED']['USR']) as con:
                con.add_patient(request.form['fname'], request.form['lname'],
                                request.form['dob'], request.form['address'],
                                request.form['phone'])
                return render_template('home.html',
                                       usr=app.config['SQL_CRED']['USR'])
    return render_template('home.html', usr=app.config['SQL_CRED']['USR'])
示例#15
0
def get_allergens_of_patient():
    if (request.args.get('patID') == ''):
        patID = 0
    else:
        patID = request.args.get('patID')
    print('patID:', patID)
    with dataconnector.Connection(app.config['SQL_CRED']['USR'],
                                  app.config['SQL_CRED']['USR']) as con:
        allergens = con.get_allergens_of_patient(patID)
        if allergens and len(allergens) > 0:
            print("YEP! Good to go!")
        else:
            allergens = [(' ', ' ', ' ', ' ', ' ')]
        columns = [
            'AllergenID', 'AllergenType', 'Allergen', 'FirstName', 'LastName'
        ]
        allergens = jsonify([{k: str(val)
                              for val, k in zip(row, columns)}
                             for row in allergens])
        print(allergens)
        return allergens
示例#16
0
def GetResultsByPatient():
    if (request.args.get('patID') == ''):
        patID = 0
    else:
        patID = request.args.get('patID')
    print('patID:', patID)
    with dataconnector.Connection(app.config['SQL_CRED']['USR'],
                                  app.config['SQL_CRED']['USR']) as con:
        pat_results = con.GetResultsByPatient(patID)
        if pat_results and len(pat_results) > 0:
            print("YEP! Good to go!")
        else:
            pat_results = [(' ', ' ', ' ', ' ', ' ')]
        columns = [
            'TestType', 'TestName', 'TestResult', 'Attachment', 'TestDate'
        ]
        pat_results = jsonify([{k: str(val)
                                for val, k in zip(row, columns)}
                               for row in pat_results])
        print(pat_results)
        return pat_results
示例#17
0
 def get_patients(q=""):
     with dataconnector.Connection(app.config['SQL_CRED']['USR'],
                                   app.config['SQL_CRED']['PWD']) as con:
         pats = con.get_patients(q)
         pats = [[str(val) for val in row] for row in pats]
         return pats
示例#18
0
 def GetInternPerformanceData_perm():
     with dataconnector.Connection(app.config['SQL_CRED']['USR'],
                                   app.config['SQL_CRED']['PWD']) as con:
         data = con.GetInternPerformanceData()
         if (data):
             return 1
示例#19
0
 def GetMedicineAllergyByMostPatients_perm():
     with dataconnector.Connection(app.config['SQL_CRED']['USR'],
                                   app.config['SQL_CRED']['PWD']) as con:
         medz = con.GetMedicineAllergyByMostPatients()
         if (medz):
             return 1
示例#20
0
 def get_nurses():
     with dataconnector.Connection(app.config['SQL_CRED']['USR'],
                                   app.config['SQL_CRED']['PWD']) as con:
         nurses = con.get_nurses()
     return nurses
示例#21
0
 def get_doctors():
     with dataconnector.Connection(app.config['SQL_CRED']['USR'],
                                   app.config['SQL_CRED']['PWD']) as con:
         doctors = con.get_doctors()
     return doctors
示例#22
0
 def get_role():
     with dataconnector.Connection(app.config['SQL_CRED']['USR'],
                                   app.config['SQL_CRED']['PWD']) as con:
         tuple = con.get_role()
     return tuple