示例#1
0
        public async Task <AllergyUserResponse> SaveAsync(AllergyUser allergyUser)
        {
            var existingAllergy = await _allergyRepository.FindById(allergyUser.AllergyId);

            if (existingAllergy == null)
            {
                return(new AllergyUserResponse("Allergy not found"));
            }

            var existingUser = await _userRepository.FindById(allergyUser.UserId);

            if (existingUser == null)
            {
                return(new AllergyUserResponse("User not found"));
            }

            allergyUser.Allergy = existingAllergy;
            allergyUser.User    = existingUser;
            try
            {
                await _allergyUserRepository.SaveAsync(allergyUser);

                await _unitOfWork.CompleteAsync();

                return(new AllergyUserResponse(allergyUser));
            }
            catch (Exception e)
            {
                return(new AllergyUserResponse($"An error ocurred while saving the AllergyUser: {e.Message}"));
            }
        }
        public async Task <AllergyResponse> DeleteAsync(int id)
        {
            var existingPlan = await _allergyRepository.FindById(id);

            if (existingPlan == null)
            {
                return(new AllergyResponse("Plan not found"));
            }

            try
            {
                _allergyRepository.DeleteAsync(existingPlan);
                await _unitOfWork.CompleteAsync();

                return(new AllergyResponse(existingPlan));
            }
            catch (Exception e)
            {
                return(new AllergyResponse($"An error ocurred while deleting plan: {e.Message}"));
            }
        }