简历解析业务逻辑处理

This commit is contained in:
2025-11-30 17:54:39 +08:00
parent 1bbd4294a8
commit 600ab3a248
17 changed files with 326 additions and 55 deletions

View File

@@ -1,5 +1,6 @@
package com.vetti.hotake.domain;
import com.vetti.hotake.domain.dto.HotakeCvInfoDto;
import lombok.Data;
import lombok.experimental.Accessors;
import io.swagger.annotations.ApiModelProperty;
@@ -52,4 +53,13 @@ public class HotakeCvInfo extends BaseEntity
@Excel(name = "状态", readConverterExp = "0=,禁=用1,启=用")
private String status;
@ApiModelProperty("简历详细信息-固定模版")
private HotakeCvInfoDto cvInfoDto;
@ApiModelProperty("简历预设问题记录")
private HotakeProblemBaseInfo problemBaseInfo;
@ApiModelProperty("简历评分")
private String score;
}

View File

@@ -32,6 +32,9 @@ public class HotakeProblemBaseInfo extends BaseEntity
@Excel(name = "问题")
private String contents;
@ApiModelProperty("问题数量")
private Integer questionNums;
/** 状态0 禁用1 启用) */
@ApiModelProperty("状态0 禁用1 启用)")
@Excel(name = "状态", readConverterExp = "0=,禁=用1,启=用")

View File

@@ -0,0 +1,40 @@
package com.vetti.hotake.domain.dto;
import com.vetti.hotake.domain.dto.VcDto.*;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import java.util.List;
/**
* 简历结构化信息对象 hotake_cv_info
*
* @author wangxiangshun
* @date 2025-11-30
*/
@Data
@Accessors(chain = true)
public class HotakeCvInfoDto {
@ApiModelProperty("姓名")
private String name;
@ApiModelProperty("电话")
private String phone;
@ApiModelProperty("邮箱")
private String email;
@ApiModelProperty("链接对象集合")
private List<VcLinksDto> linksList;
@ApiModelProperty("自我介绍")
private String about;
@ApiModelProperty("技能工具-许可证、注册/会员资格、认证")
private List<VcSkillsToolsDto> skillsToolsList;
@ApiModelProperty("语言")
private List<VcLanguagesDto> languagesList;
@ApiModelProperty("工作经验集合")
private List<VcExperienceDto> experienceList;
@ApiModelProperty("教育经历")
private List<VcEducationDto> educationList;
}

View File

@@ -0,0 +1,25 @@
package com.vetti.hotake.domain.dto.VcDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
/**
* 简历-教育经历-信息对象
*
* @author wangxiangshun
* @date 2025-11-30
*/
@Data
@Accessors(chain = true)
public class VcEducationDto {
@ApiModelProperty("学位")
private String degree;
@ApiModelProperty("学校名")
private String institution;
@ApiModelProperty("时间")
private String date;
}

View File

@@ -0,0 +1,19 @@
package com.vetti.hotake.domain.dto.VcDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
/**
* 简历-工作经验-描述-信息对象
*
* @author wangxiangshun
* @date 2025-11-30
*/
@Data
@Accessors(chain = true)
public class VcExperienceDescriptionDto {
@ApiModelProperty("内容")
private String content;
}

View File

@@ -0,0 +1,34 @@
package com.vetti.hotake.domain.dto.VcDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import java.util.List;
/**
* 简历-工作经验-信息对象
*
* @author wangxiangshun
* @date 2025-11-30
*/
@Data
@Accessors(chain = true)
public class VcExperienceDto {
@ApiModelProperty("标题")
private String title;
@ApiModelProperty("公司")
private String company;
@ApiModelProperty("地点")
private String location;
@ApiModelProperty("时间")
private String duration;
@ApiModelProperty("描述集合")
private List<VcExperienceDescriptionDto> descriptionList;
}

View File

@@ -0,0 +1,19 @@
package com.vetti.hotake.domain.dto.VcDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
/**
* 简历-语言-信息对象
*
* @author wangxiangshun
* @date 2025-11-30
*/
@Data
@Accessors(chain = true)
public class VcLanguagesDto {
@ApiModelProperty("内容")
private String content;
}

View File

@@ -0,0 +1,19 @@
package com.vetti.hotake.domain.dto.VcDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
/**
* 简历链接-信息对象
*
* @author wangxiangshun
* @date 2025-11-30
*/
@Data
@Accessors(chain = true)
public class VcLinksDto {
@ApiModelProperty("内容")
private String content;
}

View File

@@ -0,0 +1,19 @@
package com.vetti.hotake.domain.dto.VcDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
/**
* 简历 技能工具-许可证、注册/会员资格、认证-信息对象
*
* @author wangxiangshun
* @date 2025-11-30
*/
@Data
@Accessors(chain = true)
public class VcSkillsToolsDto {
@ApiModelProperty("内容")
private String content;
}