简历字段添加

This commit is contained in:
2025-11-09 14:59:05 +08:00
parent 908c357bdf
commit e051cbea1c
3 changed files with 24 additions and 11 deletions

View File

@@ -32,10 +32,13 @@ public class HotakeCvInfo extends BaseEntity
@Excel(name = "简历名称") @Excel(name = "简历名称")
private String cvName; private String cvName;
/** 简历类型image/jpeg, application/pdf等 */ @ApiModelProperty("简历类型(cv、letter、 portfolio、other)")
@ApiModelProperty("简历类型(doc/pdf)")
private String cvFileType; private String cvFileType;
/** 简历类型image/jpeg, application/pdf等 */
@ApiModelProperty("简历文件后缀(doc/pdf)")
private String cvFileSuffix;
/** 简历地址 */ /** 简历地址 */
@ApiModelProperty("简历地址") @ApiModelProperty("简历地址")
@Excel(name = "简历地址") @Excel(name = "简历地址")

View File

@@ -106,6 +106,12 @@ public class HotakeCvInfoServiceImpl extends BaseServiceImpl implements IHotakeC
{ {
fill(FillTypeEnum.INSERT.getCode(),hotakeCvInfo); fill(FillTypeEnum.INSERT.getCode(),hotakeCvInfo);
hotakeCvInfoMapper.insertHotakeCvInfo(hotakeCvInfo); hotakeCvInfoMapper.insertHotakeCvInfo(hotakeCvInfo);
//获取文件后缀
String fileSuffix = FileUtil.getSuffix(hotakeCvInfo.getCvUrl());
if(StrUtil.isNotEmpty(fileSuffix)){
fileSuffix = fileSuffix.toLowerCase();
}
hotakeCvInfo.setCvFileSuffix(fileSuffix);
//对简历数据进行处理生成相应的题库数据 //对简历数据进行处理生成相应的题库数据
handleHotakeCvInfo(hotakeCvInfo); handleHotakeCvInfo(hotakeCvInfo);
return hotakeCvInfo; return hotakeCvInfo;
@@ -124,12 +130,8 @@ public class HotakeCvInfoServiceImpl extends BaseServiceImpl implements IHotakeC
.bucket(MinioBucketNameEnum.CV.getCode()) .bucket(MinioBucketNameEnum.CV.getCode())
.object(hotakeCvInfo.getCvUrl()) .object(hotakeCvInfo.getCvUrl())
.build()); .build());
//获取文件后缀
String fileSuffix = FileUtil.getSuffix(hotakeCvInfo.getCvUrl()); String contents = FileContentUtil.readFileContent(inputStream,hotakeCvInfo.getCvFileSuffix());
if(StrUtil.isNotEmpty(fileSuffix)){
fileSuffix = fileSuffix.toLowerCase();
}
String contents = FileContentUtil.readFileContent(inputStream,fileSuffix);
//进行简历数据提取 //进行简历数据提取
ResumeTextExtractor extractor = new ResumeTextExtractor(); ResumeTextExtractor extractor = new ResumeTextExtractor();
ResumeData resumeData = extractor.extractResumeData(contents,""); ResumeData resumeData = extractor.extractResumeData(contents,"");

View File

@@ -11,6 +11,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="cvFileType" column="cv_file_type" /> <result property="cvFileType" column="cv_file_type" />
<result property="cvUrl" column="cv_url" /> <result property="cvUrl" column="cv_url" />
<result property="fileSizeShow" column="file_size_show" /> <result property="fileSizeShow" column="file_size_show" />
<result property="cvFileSuffix" column="cv_file_suffix" />
<result property="status" column="status" /> <result property="status" column="status" />
<result property="delFlag" column="del_flag" /> <result property="delFlag" column="del_flag" />
<result property="createBy" column="create_by" /> <result property="createBy" column="create_by" />
@@ -21,7 +22,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</resultMap> </resultMap>
<sql id="selectHotakeCvInfoVo"> <sql id="selectHotakeCvInfoVo">
select id, user_id, cv_name, cv_file_type, cv_url,file_size_show, status, del_flag, create_by, create_time, update_by, update_time, remark from hotake_cv_info select id, user_id, cv_name, cv_file_type, cv_url,file_size_show,cv_file_suffix, status,
del_flag, create_by, create_time, update_by, update_time, remark from hotake_cv_info
</sql> </sql>
<select id="selectHotakeCvInfoList" parameterType="HotakeCvInfo" resultMap="HotakeCvInfoResult"> <select id="selectHotakeCvInfoList" parameterType="HotakeCvInfo" resultMap="HotakeCvInfoResult">
@@ -31,6 +33,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="cvName != null and cvName != ''"> and cv_name like concat('%', #{cvName}, '%')</if> <if test="cvName != null and cvName != ''"> and cv_name like concat('%', #{cvName}, '%')</if>
<if test="cvFileType != null and cvFileType != ''"> and cv_file_type = #{cvFileType}</if> <if test="cvFileType != null and cvFileType != ''"> and cv_file_type = #{cvFileType}</if>
<if test="cvUrl != null and cvUrl != ''"> and cv_url = #{cvUrl}</if> <if test="cvUrl != null and cvUrl != ''"> and cv_url = #{cvUrl}</if>
<if test="cvFileSuffix != null and cvFileSuffix != ''"> and cv_file_suffix = #{cvFileSuffix}</if>
<if test="status != null and status != ''"> and status = #{status}</if> <if test="status != null and status != ''"> and status = #{status}</if>
<if test="delFlag != null and delFlag != ''"> and del_flag = #{delFlag}</if> <if test="delFlag != null and delFlag != ''"> and del_flag = #{delFlag}</if>
</where> </where>
@@ -49,6 +52,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="cvFileType != null">cv_file_type,</if> <if test="cvFileType != null">cv_file_type,</if>
<if test="cvUrl != null">cv_url,</if> <if test="cvUrl != null">cv_url,</if>
<if test="fileSizeShow != null">file_size_show,</if> <if test="fileSizeShow != null">file_size_show,</if>
<if test="cvFileSuffix != null">cv_file_suffix,</if>
<if test="status != null">status,</if> <if test="status != null">status,</if>
<if test="delFlag != null">del_flag,</if> <if test="delFlag != null">del_flag,</if>
<if test="createBy != null">create_by,</if> <if test="createBy != null">create_by,</if>
@@ -63,6 +67,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="cvFileType != null">#{cvFileType},</if> <if test="cvFileType != null">#{cvFileType},</if>
<if test="cvUrl != null">#{cvUrl},</if> <if test="cvUrl != null">#{cvUrl},</if>
<if test="fileSizeShow != null">#{fileSizeShow},</if> <if test="fileSizeShow != null">#{fileSizeShow},</if>
<if test="cvFileSuffix != null">#{cvFileSuffix},</if>
<if test="status != null">#{status},</if> <if test="status != null">#{status},</if>
<if test="delFlag != null">#{delFlag},</if> <if test="delFlag != null">#{delFlag},</if>
<if test="createBy != null">#{createBy},</if> <if test="createBy != null">#{createBy},</if>
@@ -81,6 +86,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="cvFileType != null">cv_file_type = #{cvFileType},</if> <if test="cvFileType != null">cv_file_type = #{cvFileType},</if>
<if test="cvUrl != null">cv_url = #{cvUrl},</if> <if test="cvUrl != null">cv_url = #{cvUrl},</if>
<if test="fileSizeShow != null">file_size_show = #{fileSizeShow},</if> <if test="fileSizeShow != null">file_size_show = #{fileSizeShow},</if>
<if test="cvFileSuffix != null">cv_file_suffix = #{cvFileSuffix},</if>
<if test="status != null">status = #{status},</if> <if test="status != null">status = #{status},</if>
<if test="delFlag != null">del_flag = #{delFlag},</if> <if test="delFlag != null">del_flag = #{delFlag},</if>
<if test="createBy != null">create_by = #{createBy},</if> <if test="createBy != null">create_by = #{createBy},</if>
@@ -104,9 +110,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</delete> </delete>
<insert id="batchInsertHotakeCvInfo"> <insert id="batchInsertHotakeCvInfo">
insert into hotake_cv_info( id, user_id, cv_name, cv_file_type, cv_url, status, del_flag, create_by, create_time, update_by, update_time, remark) values insert into hotake_cv_info( id, user_id, cv_name, cv_file_type, cv_url, status, cv_file_suffix,del_flag,
create_by, create_time, update_by, update_time, remark) values
<foreach item="item" index="index" collection="list" separator=","> <foreach item="item" index="index" collection="list" separator=",">
( #{item.id}, #{item.userId}, #{item.cvName}, #{item.cvFileType}, #{item.cvUrl}, #{item.status}, #{item.delFlag}, #{item.createBy}, #{item.createTime}, #{item.updateBy}, #{item.updateTime}, #{item.remark}) ( #{item.id}, #{item.userId}, #{item.cvName}, #{item.cvFileType}, #{item.cvUrl}, #{item.status},#{cvFileSuffix}, #{item.delFlag},
#{item.createBy}, #{item.createTime}, #{item.updateBy}, #{item.updateTime}, #{item.remark})
</foreach> </foreach>
</insert> </insert>
</mapper> </mapper>