|
@@ -9,8 +9,8 @@ import com.citu.module.menduner.system.controller.base.projectexp.ProjectExpResp
|
|
|
import com.citu.module.menduner.system.controller.base.resume.resumesdk.*;
|
|
|
import com.citu.module.menduner.system.controller.base.talent.edu.TalentMapEduExpRespVO;
|
|
|
import com.citu.module.menduner.system.controller.base.talent.info.TalentMapInfoRespVO;
|
|
|
+import com.citu.module.menduner.system.controller.base.talent.train.TalentMapTrainExpRespVO;
|
|
|
import com.citu.module.menduner.system.controller.base.talent.work.TalentMapWorkExpRespVO;
|
|
|
-import com.citu.module.menduner.system.controller.base.trainexp.TrainExpRespVO;
|
|
|
import com.citu.module.menduner.system.dal.dataobject.area.AreaDO;
|
|
|
import com.citu.module.menduner.system.enums.eduexp.EducationTypeEnum;
|
|
|
import com.citu.module.menduner.system.enums.job.JobSeekStatusEnum;
|
|
@@ -24,11 +24,10 @@ import org.springframework.stereotype.Service;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
import java.math.BigDecimal;
|
|
|
+import java.time.LocalDate;
|
|
|
import java.time.LocalDateTime;
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.HashMap;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
+import java.time.LocalTime;
|
|
|
+import java.util.*;
|
|
|
|
|
|
import static com.citu.framework.common.exception.util.ServiceExceptionUtil.exception;
|
|
|
import static com.citu.module.menduner.system.enums.ErrorCodeConstants.MDE_PERSON_RESUME_ERROR;
|
|
@@ -86,10 +85,11 @@ public class OnlineResumeServiceImpl implements OnlineResumeService {
|
|
|
talentMapInfoRespVO.setResumeUrl(fileUrl);
|
|
|
talentMapInfoRespVO.setName(temResumeResVo.getName());
|
|
|
// talentMapInfoRespVO.setForeignName(temResumeResVo.getNameEn());
|
|
|
- PersonSexEnum sexEnum = PersonSexEnum.getEnumByName(temResumeResVo.getGenderInf());
|
|
|
- if (!PersonSexEnum.UNKNOWN.equals(sexEnum)) {
|
|
|
- talentMapInfoRespVO.setSex(sexEnum.getType());
|
|
|
- talentMapInfoRespVO.setSexStr(sexEnum.getName());
|
|
|
+ PersonSexEnum sexEnum = PersonSexEnum.getEnumByName(temResumeResVo.getGender());
|
|
|
+ PersonSexEnum sexEnum2 = PersonSexEnum.getEnumByName(temResumeResVo.getGenderInf());
|
|
|
+ if (!PersonSexEnum.UNKNOWN.equals(sexEnum) || !PersonSexEnum.UNKNOWN.equals(sexEnum2)) {
|
|
|
+ talentMapInfoRespVO.setSex(PersonSexEnum.UNKNOWN.equals(sexEnum) ? sexEnum2.getType() : sexEnum.getType());
|
|
|
+ talentMapInfoRespVO.setSexStr(PersonSexEnum.UNKNOWN.equals(sexEnum) ? sexEnum2.getName() : sexEnum.getName());
|
|
|
}
|
|
|
|
|
|
// 图片地址为空就用base64
|
|
@@ -99,12 +99,33 @@ public class OnlineResumeServiceImpl implements OnlineResumeService {
|
|
|
talentMapInfoRespVO.setEmail(temResumeResVo.getEmail());
|
|
|
talentMapInfoRespVO.setQq(temResumeResVo.getQq());
|
|
|
talentMapInfoRespVO.setWxCode(temResumeResVo.getWeixin());
|
|
|
- talentMapInfoRespVO.setBirthday(convertDate(temResumeResVo.getBirthday()));
|
|
|
+ // 出生日期
|
|
|
+ LocalDateTime birthday = convertDate(temResumeResVo.getBirthday());
|
|
|
+ if (null != birthday) {
|
|
|
+ talentMapInfoRespVO.setBirthday(birthday);
|
|
|
+ } else {
|
|
|
+ Integer age = temResumeResVo.getAge();
|
|
|
+ if (null != age && age > 0) {
|
|
|
+ // 获取当前日期和时间
|
|
|
+ LocalDate currentDate = LocalDate.now();
|
|
|
+ // 计算出生年份
|
|
|
+ int birthYear = currentDate.getYear() - age;
|
|
|
+ // 计算出生月份和日期(这里简单设为1月1日,因为通常只知道年龄,不知道确切的月份和日期)
|
|
|
+ LocalDate estimatedBirthday = LocalDate.of(birthYear, 1, 1);
|
|
|
+ // 如果需要精确到小时和分钟(通常不需要),可以添加默认时间,如00:00
|
|
|
+ LocalDateTime estimatedBirthdayTime = estimatedBirthday.atTime(LocalTime.MIDNIGHT);
|
|
|
+ // 设置计算出的出生日期到响应对象
|
|
|
+ talentMapInfoRespVO.setBirthday(estimatedBirthdayTime);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ talentMapInfoRespVO.setHeight(temResumeResVo.getHeight());
|
|
|
+ talentMapInfoRespVO.setWeight(temResumeResVo.getWeight());
|
|
|
// 是否党员
|
|
|
if (StringUtils.isNotBlank(temResumeResVo.getPolitStatus())) {
|
|
|
- if ("党员".equals(temResumeResVo.getPolitStatus())
|
|
|
+ if ("党员".contains(temResumeResVo.getPolitStatus())
|
|
|
|| "共产党员".equals(temResumeResVo.getPolitStatus())
|
|
|
- || "共产党党员".equals(temResumeResVo.getPolitStatus())) {
|
|
|
+ || "共产党党员".equals(temResumeResVo.getPolitStatus())
|
|
|
+ || "中共党员".equals(temResumeResVo.getPolitStatus())) {
|
|
|
talentMapInfoRespVO.setPartyMember(true);
|
|
|
} else {
|
|
|
talentMapInfoRespVO.setPartyMember(false);
|
|
@@ -115,6 +136,7 @@ public class OnlineResumeServiceImpl implements OnlineResumeService {
|
|
|
|
|
|
// 婚姻状态
|
|
|
talentMapInfoRespVO.setMaritalStatus(MaritalStatusEnum.NOT_DISCLOSED.getType());
|
|
|
+ talentMapInfoRespVO.setMaritalStatusStr(MaritalStatusEnum.NOT_DISCLOSED.getName());
|
|
|
if (StringUtils.isNotBlank(temResumeResVo.getMaritalStatus())) {
|
|
|
|
|
|
String maritalStatus = temResumeResVo.getMaritalStatus().replaceAll(" ", "");
|
|
@@ -129,7 +151,7 @@ public class OnlineResumeServiceImpl implements OnlineResumeService {
|
|
|
maritalStatusMap.put("已婚已育", MaritalStatusEnum.MARRIED);
|
|
|
MaritalStatusEnum maritalStatusEnum = maritalStatusMap.getOrDefault(maritalStatus, MaritalStatusEnum.NOT_DISCLOSED);
|
|
|
talentMapInfoRespVO.setMaritalStatus(maritalStatusEnum.getType());
|
|
|
- talentMapInfoRespVO.setMaritalStatus(maritalStatusEnum.getName());
|
|
|
+ talentMapInfoRespVO.setMaritalStatusStr(maritalStatusEnum.getName());
|
|
|
}
|
|
|
|
|
|
// 所在城市
|
|
@@ -205,6 +227,11 @@ public class OnlineResumeServiceImpl implements OnlineResumeService {
|
|
|
JobTypeEnum jobTypeEnum = JobTypeEnum.getEnumByName(temResumeResVo.getWorkJobNature());
|
|
|
talentMapInfoRespVO.setJobType(jobTypeEnum.getType());
|
|
|
talentMapInfoRespVO.setJobTypeStr(jobTypeEnum.getName());
|
|
|
+
|
|
|
+ // 求职意向
|
|
|
+ if (StringUtils.isNotBlank(temResumeResVo.getExpectJob())) {
|
|
|
+ talentMapInfoRespVO.setJobInterestedList(Collections.singletonList(temResumeResVo.getExpectJob()));
|
|
|
+ }
|
|
|
return talentMapInfoRespVO;
|
|
|
}
|
|
|
|
|
@@ -278,10 +305,10 @@ public class OnlineResumeServiceImpl implements OnlineResumeService {
|
|
|
return respVOS;
|
|
|
}
|
|
|
|
|
|
- List<TrainExpRespVO> temResumeResVoConvertToTrainExpRespVO(TemResumeContent temResumeResVo) {
|
|
|
- List<TrainExpRespVO> respVOS = new ArrayList<>();
|
|
|
+ List<TalentMapTrainExpRespVO> temResumeResVoConvertToTrainExpRespVO(TemResumeContent temResumeResVo) {
|
|
|
+ List<TalentMapTrainExpRespVO> respVOS = new ArrayList<>();
|
|
|
for (TemResumetTrainingVo trainingObj : temResumeResVo.getTrainingObjs()) {
|
|
|
- TrainExpRespVO trainExpRespVO = new TrainExpRespVO();
|
|
|
+ TalentMapTrainExpRespVO trainExpRespVO = new TalentMapTrainExpRespVO();
|
|
|
trainExpRespVO.setStartTime(convertDate(trainingObj.getStartDate()));
|
|
|
trainExpRespVO.setEndTime(convertDate(trainingObj.getEndDate()));
|
|
|
trainExpRespVO.setOrgName(trainingObj.getTrainOrg());
|