Example #1
0
 public static void MapTo(this MemberSearch search, SavedResumeSearchEntity entity, ICriteriaPersister criteriaPersister)
 {
     entity.createdTime = search.CreatedTime;
     entity.name        = search.Name;
     entity.ownerId     = search.OwnerId;
     entity.ResumeSearchCriteriaSetEntity = search.Criteria.MapTo <ResumeSearchCriteriaSetEntity, ResumeSearchCriteriaEntity, MemberSearchCriteria>(criteriaPersister, true);
 }
Example #2
0
        private Guid CreateSavedResumeSearch(string type, ICollection <KeyValuePair <string, string> > criteria)
        {
            var id = Guid.NewGuid();

            using (var dc = new MembersDataContext(_connectionFactory.CreateConnection()))
            {
                var entity = new SavedResumeSearchEntity
                {
                    id          = id,
                    createdTime = DateTime.Now,
                    name        = Name,
                    ResumeSearchCriteriaSetEntity = new ResumeSearchCriteriaSetEntity
                    {
                        id   = Guid.NewGuid(),
                        type = type,
                        ResumeSearchCriteriaEntities = CreateResumeSearchCriteria(criteria),
                    },
                };

                dc.SavedResumeSearchEntities.InsertOnSubmit(entity);
                dc.SubmitChanges();
            }

            return(id);
        }
Example #3
0
        public static SavedResumeSearchEntity Map(this MemberSearch search, ICriteriaPersister criteriaPersister)
        {
            var entity = new SavedResumeSearchEntity {
                id = search.Id
            };

            search.MapTo(entity, criteriaPersister);
            return(entity);
        }
Example #4
0
        private static void DeleteCriteria(MembersDataContext dc, SavedResumeSearchEntity entity)
        {
            if (entity.ResumeSearchCriteriaSetEntity != null)
            {
                // Need to check that there are no other searches or executions that are using this criteria.

                if (!IsCriteriaOwnedByOtherSearch(dc, entity.ResumeSearchCriteriaSetEntity.id, entity.id) && !IsCriteriaOwnedByExecution(dc, entity.ResumeSearchCriteriaSetEntity.id))
                {
                    dc.ResumeSearchCriteriaEntities.DeleteAllOnSubmit(entity.ResumeSearchCriteriaSetEntity.ResumeSearchCriteriaEntities);
                    dc.ResumeSearchCriteriaSetEntities.DeleteOnSubmit(entity.ResumeSearchCriteriaSetEntity);
                }
            }
        }
Example #5
0
        public static MemberSearch Map(this SavedResumeSearchEntity search, ICriteriaPersister criteriaPersister)
        {
            var memberSearch = new MemberSearch
            {
                Id          = search.id,
                CreatedTime = search.createdTime,
                Name        = search.name,
                OwnerId     = search.ownerId,
                Criteria    = search.ResumeSearchCriteriaSetEntity.MapTo <ResumeSearchCriteriaSetEntity, ResumeSearchCriteriaEntity, MemberSearchCriteria>(criteriaPersister, true)
            };

            // For some reason some database entries have a value of 2.

            var criteria = memberSearch.Criteria;

            if ((int)criteria.JobTitlesToSearch == 2)
            {
                criteria.JobTitlesToSearch = JobsToSearch.RecentJobs;
            }

            return(memberSearch);
        }