コード例 #1
0
def edit_animal_page(id):
    vets = vet_repository.select_all_vets()
    owners = owner_repository.select_all_owners()
    chosen_animal = animal_repository.select_animal(id)
    animals = animal_repository.select_all_animals()
    animals = sorted(animals, key=lambda animal:animal.name)

    return render_template('animals/index.html', owners=owners, vets=vets, chosen_animal=chosen_animal, animals=animals, edit_info=True, more_info=True)
コード例 #2
0
def add_new_appointment():
    date = request.form["date"]
    time = request.form["time"]
    notes = request.form["notes"]
    vet = vet_repository.select_vet(request.form["vet_id"])
    animal = animal_repository.select_animal(request.form["animal_id"])
    appointment = Appointment(date, time, vet, animal, notes)
    appointment_repository.save_new_appointment(appointment)
    return redirect('/appointments')
コード例 #3
0
def new_animal_appointment_page(id):
    animal = animal_repository.select_animal(id)
    vets = vet_repository.select_all_vets()
    animals = animal_repository.select_all_animals()
    return render_template('appointments/new.html',
                           chosen=True,
                           chosen_animal=animal,
                           animal=animal,
                           animals=animals,
                           vets=vets)
コード例 #4
0
def select_appointment(id):
    sql = "SELECT * FROM appointments WHERE id=%s"
    value = [id]
    result = run_sql(sql, value)[0]
    if result is not None:
        vet = vet_repository.select_vet(result["vet_id"])
        animal = animal_repository.select_animal(result["animal_id"])
        appointment = Appointment(result["date"], result["time"], vet, animal,
                                  result["additional_notes"], result["id"])
        return appointment
コード例 #5
0
def select_all_appointments():
    sql = "SELECT * FROM appointments"
    results = run_sql(sql)
    appointments = []
    for result in results:
        animal = animal_repository.select_animal(result["animal_id"])
        vet = vet_repository.select_vet(result["vet_id"])
        appointment = Appointment(result["date"], result["time"], vet, animal,
                                  result["additional_notes"], result["id"])
        appointments.append(appointment)
    return appointments
コード例 #6
0
def filter_appointments(date, vet_id, animal_id):
    filter_values_to_match = f"{bool(date)} {bool(vet_id)} {bool(animal_id)}"

    filter_dictionary = {
        "False False False":
        "",
        "True False False":
        f"WHERE date = '{date}'",
        "False False True":
        f"WHERE animal_id = {animal_id}",
        "False True False":
        f"WHERE vet_id = {vet_id}",
        "True False True":
        f"WHERE date = '{date}' AND animal_id =  {animal_id}",
        "True True False":
        f"WHERE date = '{date}' AND vet_id = {vet_id}",
        "False True True":
        f"WHERE vet_id = {vet_id} AND animal_id = {animal_id}",
        "True True True":
        f"WHERE date = '{date}' AND vet_id = {vet_id} AND animal_id = {animal_id}"
    }

    sql = f"SELECT * FROM appointments {filter_dictionary[filter_values_to_match]}"

    results = run_sql(sql)
    appointments = []
    for result in results:

        # if (vet_id != "" and int(vet_id) != result["vet_id"]) or (animal_id != "" and int(animal_id) != result["animal_id"]) or (date != "" and date != result["date"]):
        #     continue
        vet = vet_repository.select_vet(result["vet_id"])
        animal = animal_repository.select_animal(result["animal_id"])
        appointment = Appointment(result["date"], result["time"], vet, animal,
                                  result["additional_notes"], result["id"])
        appointments.append(appointment)
    return appointments
コード例 #7
0
                  vet_3)
animal_4 = Animal("Gerry", "13/2/2020", "Giraffe", owner_4,
                  "Easy to find in a busy shop", vet_4)

vet_repository.save_new_vet(vet_1)
vet_repository.save_new_vet(vet_2)
vet_repository.save_new_vet(vet_3)
vet_repository.save_new_vet(vet_4)

owner_repository.save_new_owner(owner_1)
animal_repository.save_new_animal(animal_1)
owner_repository.save_new_owner(owner_2)
animal_repository.save_new_animal(animal_2)
owner_repository.save_new_owner(owner_3)
animal_repository.save_new_animal(animal_3)
owner_repository.save_new_owner(owner_4)
animal_repository.save_new_animal(animal_4)
animal_repository.save_new_animal(animal_5)

# vet_repository.update_vet(vet_1)
# owner_repository.update_owner(owner_1)
# animal_repository.update_animal(animal_1)

print(animal_repository.select_animal(1))
print(vet_repository.select_vet(1))
print(owner_repository.select_owner(1))

print(animal_repository.select_all_animals())
print(owner_repository.select_all_owners())
print(vet_repository.select_all_vets())
コード例 #8
0
def archive_animal(id):
    animal = animal_repository.select_animal(id)
    animal_repository.archive_animal(animal)
    return redirect('/animals')

    
コード例 #9
0
def more_animal_info(id):
    animals = animal_repository.select_all_animals()
    animals = sorted(animals, key=lambda animal:animal.name)
    chosen_animal = animal_repository.select_animal(id)

    return render_template('animals/index.html', chosen_animal=chosen_animal, more_info=True, animals=animals)