Create an application for managing services within a pet clinic. The application should keep track of services, registered animals for appointments, and their owners.
An animal is identified by breed, birth date, weight, sex, and an owner. An owner can have multiple animals.
The assistant should see all available appointments and prices for each service, as well as the state of each appointment.
Before finalizing an appointment registration, the application should check availability based on date and time. The appointment is finalized by converting it into a consultation.
The property "name" in the table "appointment_state" can have the values: "Pending", "Processed" and "Canceled".
In entity "appointment_state", name represents the state that will be displayed on the screen, label represents the value that programmer will use to filter the states, and the uuid represents a value to distinguish the states.
Note: The value of the field "uuid" is generated automatically.