/// <summary>
        /// Update or insert an animal
        /// </summary>
        /// <param name="animal"></param>
        /// <returns></returns>
        public async Task <bool> UpdateOrInsertAsync(Animal animal)
        {
            // First check if the animal exists
            var existingAnimal = await AnimalRepository.GetByKeyAsync(animal.Rfid);

            if (existingAnimal != null)
            {
                return(await AnimalRepository.UpdateEntityAsync(animal) == 1);
            }
            else
            {
                return(await AnimalRepository.InsertEntityAsync(animal) == 1);
            }
        }