private Guid CreateResumeSearch(string type, ICollection <KeyValuePair <string, string> > criteria) { var id = Guid.NewGuid(); using (var dc = new MembersDataContext(_connectionFactory.CreateConnection())) { var entity = new ResumeSearchEntity { id = id, startTime = DateTime.Now, ResumeSearchCriteriaSetEntity = new ResumeSearchCriteriaSetEntity { id = Guid.NewGuid(), type = type, ResumeSearchCriteriaEntities = CreateResumeSearchCriteria(criteria), }, ResumeSearchResultSetEntity = new ResumeSearchResultSetEntity { id = Guid.NewGuid(), count = 0 }, }; dc.ResumeSearchEntities.InsertOnSubmit(entity); dc.SubmitChanges(); } return(id); }
public List <SearchReturnEntity> SearchResumeBaseFunction(ResumeSearchEntity entity) { try { var candidateName = string.IsNullOrWhiteSpace(entity.CandidateName) ? "" : entity.CandidateName; var list = resumeDb.GetResumeByEasySearchConditional(entity.ExtId, candidateName); return(RecombineResumeEntity(list, entity)); } catch (Exception e) { return(new List <SearchReturnEntity>()); } }
public static MemberSearchExecution Map(this ResumeSearchEntity entity, ICriteriaPersister criteriaPersister) { return(new MemberSearchExecution { Id = entity.id, Context = entity.context, StartTime = entity.startTime, Duration = entity.duration == null ? (TimeSpan?)null : new TimeSpan(entity.duration.Value), SearcherId = entity.searcherId, SearchId = entity.savedSearchId, Criteria = entity.ResumeSearchCriteriaSetEntity.MapTo <ResumeSearchCriteriaSetEntity, ResumeSearchCriteriaEntity, MemberSearchCriteria>(criteriaPersister, true), Results = entity.ResumeSearchResultSetEntity.Map(), }); }
public string HubbleSearchers([FromBody] SearchModel searchData) { var errorModel = new ErrorModel(); try { var resumeEntity = new ResumeSearchEntity(); resumeEntity.Birth = searchData.birthday; resumeEntity.CandidateName = searchData.name; resumeEntity.Cities = searchData.cities; resumeEntity.Company = searchData.company; resumeEntity.Email = searchData.email; resumeEntity.EmployeeNo = searchData.employeeNo; resumeEntity.ExtId = searchData.identity; resumeEntity.ExtraDatas = new ExtraDatas(); if (searchData.extraDatas != null) { resumeEntity.ExtraDatas.HidResumeId = searchData.extraDatas.resumeId; resumeEntity.ExtraDatas.ResumeUserId = searchData.extraDatas.resumeUserId; resumeEntity.ExtraDatas.UserName = searchData.extraDatas.userName; } resumeEntity.GraduateYear = searchData.graduateYear; resumeEntity.Mobile = searchData.mobile; resumeEntity.MobileLast = searchData.mobileLast; resumeEntity.Registry = searchData.registry; resumeEntity.School = searchData.school; resumeEntity.SearchType = (string.IsNullOrWhiteSpace(searchData.mobile) && string.IsNullOrWhiteSpace(searchData.email)) ? 0 : 1; resumeEntity.Sex = searchData.sex; resumeEntity.SiteCode = searchData.siteCode; resumeEntity.UserIp = ""; resumeEntity.UserBrowser = searchData.p_browser + " " + searchData.p_version; resumeEntity.token = searchData.token; var returnContent = new ResumeManage().ResumeSearch(resumeEntity); return(JsonPageResult(returnContent)); } catch (Exception e) { errorModel.Flag = 4; errorModel.Info = "接口异常!请联系管理员!"; errorModel.Result = ""; return(JsonPageResult(Newtonsoft.Json.JsonConvert.SerializeObject(errorModel))); } }
public List <SearchReturnEntity> RecombineResumeEntity(List <ResumeModel> list, ResumeSearchEntity searchEntity) { try { var resultList = new List <SearchReturnEntity>(); foreach (var item in list) { var resultEntity = new SearchReturnEntity(); string workExpId = string.Empty; resultEntity.Plan = "C"; resultEntity.TaskId = 0;//searchId; resultEntity.SEmployeeNo = searchEntity.EmployeeNo; resultEntity.SSource = (searchEntity.SearchType == 0 || searchEntity.SearchType == 1) ? "newplugin" : "browser"; resultEntity.RResumeId = item.resume_id; resultEntity.SCandidateName = searchEntity.CandidateName; resultEntity.SUserName = searchEntity.ExtraDatas.UserName; resultEntity.RCandidateName = item.name; resultEntity.SEmail = searchEntity.Email; resultEntity.REmail = item.email; resultEntity.SMobile = searchEntity.Mobile; resultEntity.RMobile = item.phone; resultEntity.SMobileLast = searchEntity.MobileLast; resultEntity.SExtId = searchEntity.ExtId; resultEntity.SHidResumeId = searchEntity.ExtraDatas.HidResumeId; resultEntity.SResumeUserId = searchEntity.ExtraDatas.ResumeUserId; resultEntity.RSynResumeId = item.resume_orginalId; resultEntity.SSex = searchEntity.Sex; resultEntity.RSex = item.gender; resultEntity.SBirth = searchEntity.Birth; //resultEntity.RBirthNum = item.birth.ToString(); resultEntity.SGraduateYear = searchEntity.GraduateYear; resultEntity.RGraduateYear = item.graduate_date; resultEntity.SSchool = searchEntity.School; resultEntity.RSchool = item.school; workExpId = Convert.IsDBNull(item.work_experience) ? "0" : item.work_experience.ToString(); if (workExpId != "0") { resultEntity.RWorkExp = item.work_experience;//((ResumeWorkExp)Convert.ToInt32(workExpId)).ToString(); } resultEntity.RHightestDegree = item.degree; resultEntity.SLabelContent = searchEntity.Company.Replace("$", " "); resultEntity.RLabelContent = item.corporation_name_str.TrimEnd(','); resultEntity.RLabelDetailContent = item.corporation_name_str.TrimEnd(','); //是否可以更新 resultEntity.CanUpdate = false; //Convert.ToDateTime(item.last_updated_time).CompareTo(DateTime.Now.AddDays(-14)) == -1; resultEntity.Status = "1"; //((ResumeStatus)Convert.ToInt32(dt.Rows[i]["ResumeStatus"])).ToString(); resultList.Add(resultEntity); } return(resultList); } catch (Exception) { return(new List <SearchReturnEntity>()); } }
public string ResumeSearch(ResumeSearchEntity entity) { var reponseJson = string.Empty; var jsSerializer = new JavaScriptSerializer(); try { entity.EmployeeNo = string.IsNullOrEmpty(entity.EmployeeNo) ? "" : entity.EmployeeNo.Trim(); if (string.IsNullOrEmpty(entity.EmployeeNo)) { return(jsSerializer.Serialize(new { Falg = 1, Info = "请登录", Result = "[]" })); } var company = companyDb.GetCompanyById(new TokenManage().GetCompanyId(entity.token)); if (company == null) { reponseJson = jsSerializer.Serialize(new { Flag = 4, Info = "公司不存在", Result = "[]" }); return(reponseJson); } resumeDb = new ResumeDb(new ApplicationCommon().GetUserDBConnection(company)); userDb = new UserDb(new ApplicationCommon().GetUserDBConnection(company)); var user = userDb.GetUserByUsername(new TokenManage().GetUserName(entity.token)); if (user == null) { reponseJson = jsSerializer.Serialize(new { Flag = 4, Info = "该账号不存在", Result = "[]" }); return(reponseJson); } entity.Birth = string.IsNullOrEmpty(entity.Birth) ? "" : entity.Birth.Trim(); entity.Sex = string.IsNullOrEmpty(entity.Sex) ? "" : entity.Sex.Trim(); entity.School = string.IsNullOrEmpty(entity.School) ? "" : entity.School.Trim(); entity.CompanyAll = entity.Company; entity.Company = string.IsNullOrEmpty(entity.Company) ? "" : Regex.Replace(entity.Company.Trim(), "有限|责任|公司|分公司|股份|集团|工作室|技术|软件|计算机|信息|科技|网络|系统", ""); entity.ExtId = string.IsNullOrEmpty(entity.ExtId) ? "" : entity.ExtId.Trim(); entity.SiteCode = string.IsNullOrEmpty(entity.SiteCode) ? "" : entity.SiteCode.Trim(); entity.CandidateName = string.IsNullOrEmpty(entity.CandidateName) ? "" : entity.CandidateName.Trim(); entity.Email = string.IsNullOrEmpty(entity.Email) ? "" : entity.Email.Trim(); entity.Mobile = string.IsNullOrEmpty(entity.Mobile) ? "" : entity.Mobile.Trim(); entity.MobileLast = string.IsNullOrEmpty(entity.MobileLast) ? "" : entity.MobileLast.Trim(); entity.GraduateYear = string.IsNullOrEmpty(entity.GraduateYear) ? "" : entity.GraduateYear.Trim(); entity.Cities = string.IsNullOrEmpty(entity.Cities) ? "" : entity.Cities.Trim(); entity.Registry = string.IsNullOrEmpty(entity.Registry) ? "" : entity.Registry.Trim(); entity.ExtraDatas.UserName = string.IsNullOrEmpty(entity.ExtraDatas.UserName) ? "" : entity.ExtraDatas.UserName.Trim(); entity.ExtraDatas.HidResumeId = string.IsNullOrEmpty(entity.ExtraDatas.HidResumeId) ? "" : entity.ExtraDatas.HidResumeId.Trim(); entity.ExtraDatas.ResumeUserId = string.IsNullOrEmpty(entity.ExtraDatas.ResumeUserId) ? "" : entity.ExtraDatas.ResumeUserId.Trim(); SiteEnum site = (SiteEnum)Convert.ToInt32(entity.SiteCode); List <SearchReturnEntity> returnResult = SearchResumeBaseFunction(entity); if (returnResult.Count == 0) { reponseJson = jsSerializer.Serialize(new { Flag = (entity.SearchType == 0 ? 0 : 2), Info = string.Empty, Result = "[]" }); return(reponseJson); } if (entity.SearchType == 0) { returnResult.ForEach(r => r.CanUpdate = false); } //var result = returnResult.Where(p => p.Score > 0f); reponseJson = jsSerializer.Serialize(new { Flag = 0, Info = string.Empty, Result = returnResult }); return(reponseJson); } catch (Exception ex) { reponseJson = jsSerializer.Serialize(new { Flag = 2, Info = ex.Message, Result = "[]" });//搜索异常 return(reponseJson); } }