private static ReferralLeadProfile ToDomain(ReferralLeadProfileEntity entity)
 => new ReferralLeadProfile
 {
     ReferralLeadId = entity.ReferralLeadId,
     FirstName      = entity.FirstName,
     LastName       = entity.LastName,
     PhoneNumber    = entity.PhoneNumber,
     Email          = entity.Email,
     Note           = entity.Note
 };
        public async Task <ReferralLeadProfileErrorCodes> InsertAsync(ReferralLeadProfile referralLeadProfile)
        {
            using (var context = _contextFactory.CreateDataContext())
            {
                var entity = await context.ReferralLeadProfiles.FindAsync(referralLeadProfile.ReferralLeadId);

                if (entity != null)
                {
                    return(ReferralLeadProfileErrorCodes.ReferralLeadProfileAlreadyExists);
                }

                entity = new ReferralLeadProfileEntity(referralLeadProfile);

                entity = _encryptionService.Encrypt(entity);

                context.ReferralLeadProfiles.Add(entity);

                await context.SaveChangesAsync();
            }

            return(ReferralLeadProfileErrorCodes.None);
        }