private PhoneRM CreatePhoneForAssociate(Commands.V1.Associate.Phone.CreateForAssociate cmd) { Phone phone = Phone.CreateForAssociate(_phones++, cmd.IsPrimary, cmd.AssociateId, Extension.Create(cmd.Extension), PhoneTypeLookup.PhoneTypes[cmd.PhoneTypeId]); if (_repository.PhoneExistsForAssociate(phone, cmd.AssociateId)) { throw new InvalidOperationException($"Phone already exists for Associate {cmd.AssociateId}"); } _repository.AddPhoneForAssociate(phone, cmd.AssociateId); return(Conversions.GetPhoneRM(phone)); }