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')
def more_info(id): vets = vet_repository.select_all_vets() vets = sorted(vets, key=lambda vet: vet.name) chosen_vet = vet_repository.select_vet(id) return render_template('/vets/index.html', nav_button_highlighted=True, more_info=True, chosen_vet=chosen_vet, vets=vets)
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
def edit_animal(id): name = request.form["name"] dob = request.form["dob"] animal_type = request.form["animal_type"] treatment_notes = request.form["notes"] owner = owner_repository.select_owner(request.form["owner_id"]) vet = vet_repository.select_vet(request.form["vet_id"]) new_animal = Animal(name, dob, animal_type, owner, treatment_notes, vet, id) animal_repository.update_animal(new_animal) return redirect('/animals/'+id+'/more')
def select_all_animals(): results = run_sql("SELECT * FROM animals WHERE archived=%s", ["FALSE"]) animals = [] for result in results: owner = owner_repository.select_owner(result["owner_id"]) vet = vet_repository.select_vet(result["vet_id"]) animal = Animal(result["name"], result["date_of_birth"], result["animal_type"], owner, result["treatment_notes"], vet, result["id"]) animals.append(animal) return animals
def select_animal(id): sql = "SELECT * FROM animals WHERE id=%s" value = [id] result = run_sql(sql, value)[0] if result is not None: owner = owner_repository.select_owner(result["owner_id"]) vet = vet_repository.select_vet(result["vet_id"]) animal = Animal(result["name"], result["date_of_birth"], result["animal_type"], owner, result["treatment_notes"], vet, result["id"]) return animal
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
def get_all_animals(owner): sql = "SELECT * FROM animals WHERE owner_id=%s" value = [owner.id] results = run_sql(sql, value) animals = [] for result in results: vet = vet_repository.select_vet(result["vet_id"]) animal = Animal(result["name"], result["date_of_birth"], result["animal_type"], owner, result["treatment_notes"], vet, result["id"]) animals.append(animal) return animals
def add_new_animal(): name = request.form["name"].capitalize() dob = request.form["dob"] dob = "2021-02-04" dob = dob.split('-') if len(dob)==3: if len(dob[1]) <2: dob[1] = "0" + dob[1] dob = dob[2]+"/"+dob[1]+"/"+dob[0] animal_type = request.form["animal_type"].capitalize() treatment_notes = request.form["notes"].capitalize() owner = owner_repository.select_owner(request.form["owner_id"]) vet = vet_repository.select_vet(request.form["vet_id"]) new_animal = Animal(name, dob, animal_type, owner, treatment_notes, vet) animal_repository.save_new_animal(new_animal) return redirect('/animals')
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
def delete_vet(id): vet = vet_repository.select_vet(id) vet_repository.archive_vet(vet) return redirect('/vets')
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())