基于Flask开发的智能招聘平台,集成了AI匹配引擎、数据预测分析和可视化展示功能

智能招聘分析推荐与管理系统

系统说明

本系统是一个基于Flask开发的智能招聘平台,集成了AI匹配引擎、数据预测分析和可视化展示功能。系统采用前后端分离架构,支持用户、企业、管理员三种角色,为求职者提供智能职位推荐和简历分析服务,为企业提供高效的招聘管理和人才筛选工具,为管理员提供完善的平台监管能力。系统融合了DeepSeek大语言模型、XGBoost机器学习算法和ECharts数据可视化,打造全流程智能化的招聘生态。

功能说明

用户注册与登录

用户可通过邮箱或手机号完成注册,支持求职者身份认证。系统采用密码哈希加密存储,确保账户安全。登录后用户可完善个人资料,包括头像、性别、出生日期、教育背景、工作经验等信息。支持邮箱验证和手机号验证,提升账户可信度。用户可随时修改密码,设置隐私保护级别,控制个人信息的可见范围。

简历管理

用户可创建多份简历,支持设置默认简历。简历包含基本信息、求职意向、教育背景、工作经历、项目经历、技能证书和自我评价等模块。支持导入附件简历,设置简历公开状态。用户可控制是否对外展示联系方式。系统提供简历模板选择功能,一键生成专业简历。支持简历编辑、删除和设置默认操作,简历更新自动同步到已投递的申请记录中。

职位搜索与推荐

用户支持多维度搜索职位,包括关键词、职位类型、工作地点、薪资范围、经验要求、学历要求等筛选条件。系统集成了AI智能推荐算法,基于多策略融合(内容匹配35%、协同过滤25%、热度20%、时间衰减15%、个性化5%),为用户精准推荐最适合的职位。推荐结果实时更新,展示匹配度评分,支持一键收藏和快速投递。

职位申请与追踪

用户浏览职位详情后可投递简历,系统自动选择默认简历或首个简历。如用户无简历,系统提示先创建简历。用户可在申请记录页面追踪所有申请状态,包括待处理、已查看、面试中、已录用、已入职、已拒绝、已撤回。支持查看企业反馈和面试评价,已录用状态可查看详细信息并确认入职。待处理和已查看状态的申请支持撤回操作。

面试管理

用户可在面试管理页面查看所有面试安排,按状态筛选(待确认、已确认、已完成、已取消)。面试信息包括面试类型(线上/线下/电话)、轮次、时间、地点、面试官信息等。用户可确认或拒绝面试邀请,面试结束后可对面试官和企业进行评分反馈。系统提醒即将开始的面试,支持查看历史面试记录和评价反馈。

消息中心

用户可查看系统通知和私信消息。系统通知包括申请状态变更、面试邀请、录用通知等重要提醒。私信功能支持用户与企业HR一对一沟通,支持发送文本、图片和文件附件。消息标记已读状态,未读消息数量实时统计。支持消息搜索和历史记录查询,方便用户回顾沟通内容。

AI简历分析与职业规划

系统集成DeepSeek大语言模型,提供AI简历分析服务。用户点击"开始分析"后,AI流式输出简历评估结果,包括简历完整性评分、技能匹配度分析、职业竞争力评估、职业发展建议和优化建议。分析结果采用Markdown格式渲染,支持标题、列表、粗体等格式,提升阅读体验。用户可反复分析,追踪简历改进效果。

智能分析报告

系统基于XGBoost机器学习算法生成智能分析报告。报告包含职位热度趋势、薪资分布分析、行业竞争度分析、地域机会分布和技能需求排名等模块。数据可视化采用ECharts图表,支持交互式查看。报告帮助用户了解市场动态,优化求职策略。支持按时间范围筛选数据,生成定制化分析报告。

企业注册与认证

企业可通过企业账号注册并完善企业资料,包括公司名称、所属行业、公司规模、发展阶段、公司地址、官网、简介等。企业需上传营业执照和填写统一社会信用代码进行实名认证。系统管理员审核企业认证申请,通过后企业可正常发布职位。企业可设置HR信息,包括姓名、电话、邮箱和职位,方便求职者联系。

职位发布与管理

认证企业可发布职位,填写职位名称、职位类型、所属部门、薪资范围、工作地点、经验要求、学历要求、职位描述、任职要求、福利待遇等信息。支持设置招聘人数、紧急程度、发布日期和截止日期。职位可设为草稿或直接发布,支持编辑、下架和删除操作。系统自动统计职位浏览量、申请量和收藏量,帮助企业评估职位吸引力。

简历审核与筛选

企业在简历审核页面查看求职者投递的简历,支持关键词搜索和状态筛选。系统展示简历基本信息、申请职位、匹配度评分和申请时间。企业可标记简历状态(待处理、已查看、已联系、已拒绝、已归档),添加备注信息和匹配度评分。支持批量操作和快速筛选,提高审核效率。企业可将优秀简历添加到人才库,建立长期人才储备。

面试邀请与管理

企业可向候选人发起面试邀请,选择面试类型(线上/线下/电话)、面试轮次、面试日期、时间、时长。线上面试需填写会议链接,线下面试需填写详细地址。企业可设置面试官信息(姓名、职位、电话)和确认截止时间。候选人收到邀请后可确认或拒绝,企业可查看确认状态。面试结束后企业可填写评价和反馈,决定是否进入下一轮或直接录用。

录用与入职管理

企业对通过面试的候选人可发起录用或拒绝操作。录用时需填写入职日期、试用期月数、录用薪资和备注信息,系统自动发送录用通知。拒绝时需填写拒绝原因和面试反馈,帮助候选人改进。候选人收到录用通知后可在申请记录页面查看详细信息,确认入职后状态更新为"已入职"。系统支持录用记录查询和统计分析。

人才库管理

企业可将优质简历添加到人才库,按标签分类管理(核心技术、潜力新星、管理人才等)。支持设置人才评级(1-5星)、回应状态(待联系、感兴趣、不感兴趣、已录用)和联系次数。企业可添加公开备注和内部备注,标记重要人才和星标人才。系统记录最后联系时间,方便定期跟进。支持搜索和筛选人才库,快速找到合适的候选人。

数据分析报告

企业可在数据分析页面查看招聘数据报表,包括职位申请趋势、面试转化率、录用率、平均招聘周期等核心指标。支持按职位、部门、时间范围筛选数据。数据可视化采用ECharts图表,支持交互式钻取。分析报告帮助企业评估招聘效果,优化招聘策略。支持导出报表功能,方便管理层查看。

用户管理

管理员可查看所有用户列表,支持搜索和筛选(按角色、状态、注册时间)。可查看用户详细信息,包括基本资料、简历数量、申请记录等。管理员可修改用户状态(激活/禁用),禁用用户需填写禁用原因。支持删除用户和重置密码操作,确保平台安全。提供用户统计数据和趋势分析。

企业管理

管理员可查看所有企业列表,支持搜索和筛选(按行业、规模、认证状态)。可查看企业详细信息,包括基本资料、认证信息、职位数量等。管理员可审核企业认证申请,通过或拒绝认证并填写审核备注。支持禁用违规企业,填写禁用原因。提供企业统计数据和行业分布分析。

职位审核

管理员可查看所有待审核职位,支持搜索和筛选(按企业、职位类型、状态)。可查看职位详细信息,包括职位描述、薪资范围、申请情况等。管理员可审核职位(通过/拒绝),拒绝需填写拒绝原因。支持下架违规职位,维护平台内容质量。提供职位统计数据和分类分析。

系统公告

管理员可发布系统公告,支持设置公告标题、内容、优先级和有效期。公告分为普通公告、重要公告和紧急公告,不同优先级显示不同样式。用户登录后可在首页查看公告列表,点击查看详情。管理员可编辑和删除公告,设置公告失效时间。支持公告统计和阅读量分析。

---

数据库设计

users(用户表)

字段名 类型 说明
id Integer 主键ID
username String(64) 用户名(唯一)
email String(120) 邮箱(唯一)
phone String(20) 手机号(唯一)
password_hash String(256) 密码哈希
role String(20) 角色(user/admin)
real_name String(64) 真实姓名
avatar String(256) 头像URL
gender String(10) 性别
birth_date Date 出生日期
location String(100) 所在地
education String(50) 学历
work_years Integer 工作年限
skill_tags Text 技能标签(JSON)
career_goal Text 职业目标
expected_salary Integer 期望薪资
expected_location String(100) 期望地点
is_active Boolean 是否激活
is_verified Boolean 是否实名认证
email_verified Boolean 邮箱是否验证
phone_verified Boolean 手机是否验证
is_banned Boolean 是否被禁用
ban_reason Text 禁用原因
privacy_settings Text 隐私设置(JSON)
created_at DateTime 创建时间
updated_at DateTime 更新时间
last_login_at DateTime 最后登录时间

companies(公司表)

字段名 类型 说明
id Integer 主键ID
user_id Integer 关联用户ID
company_name String(100) 公司名称
company_name_en String(100) 英文名称
short_name String(50) 简称
logo String(256) Logo URL
industry String(50) 所属行业
scale String(50) 公司规模
stage String(50) 发展阶段
location String(100) 所在地
address String(256) 详细地址
website String(256) 官网
description Text 公司简介
welfare_tags Text 福利标签(JSON)
business_license String(256) 营业执照
unified_code String(50) 统一社会信用代码
legal_representative String(64) 法定代表人
registered_capital String(50) 注册资本
establish_date Date 成立时间
hr_name String(64) HR姓名
hr_phone String(20) HR电话
hr_email String(120) HR邮箱
hr_position String(50) HR职位
is_verified Boolean 是否认证
verify_status String(20) 认证状态
verify_time DateTime 认证时间
verify_remark Text 认证备注
is_active Boolean 是否激活
is_banned Boolean 是否被禁用
ban_reason Text 禁用原因
created_at DateTime 创建时间
updated_at DateTime 更新时间

jobs(职位表)

字段名 类型 说明
id Integer 主键ID
company_id Integer 关联公司ID
job_title String(100) 职位名称
job_type String(20) 职位类型
department String(50) 所属部门
salary_min Integer 最低薪资
salary_max Integer 最高薪资
salary_type String(20) 薪资类型
location String(100) 工作地点
experience_required String(50) 经验要求
education_required String(50) 学历要求
job_description Text 职位描述
requirements Text 任职要求
benefits Text 福利待遇
skill_tags Text 技能标签(JSON)
recruit_count Integer 招聘人数
urgency_level String(20) 紧急程度
publish_date DateTime 发布日期
deadline DateTime 截止日期
valid_days Integer 有效天数
is_active Boolean 是否激活
is_verified Boolean 是否审核
verify_status String(20) 审核状态
view_count Integer 浏览次数
apply_count Integer 申请次数
collect_count Integer 收藏次数
template_id Integer 模板ID
is_template Boolean 是否模板
created_at DateTime 创建时间
updated_at DateTime 更新时间

resumes(简历表)

字段名 类型 说明
id Integer 主键ID
user_id Integer 关联用户ID
resume_name String(100) 简历名称
template_id Integer 模板ID
real_name String(64) 真实姓名
gender String(10) 性别
birth_date Date 出生日期
phone String(20) 手机号
email String(120) 邮箱
location String(100) 所在地
avatar String(256) 头像URL
expected_position String(100) 期望职位
expected_location String(100) 期望地点
expected_salary Integer 期望薪资
job_type String(20) 职位类型
work_years Integer 工作年限
arrival_time String(50) 到岗时间
education Text 教育背景(JSON)
work_experience Text 工作经历(JSON)
project_experience Text 项目经历(JSON)
skills Text 技能(JSON)
skill_tags Text 技能标签(JSON)
self_evaluation Text 自我评价
attachment_url String(256) 附件URL
attachment_name String(256) 附件名称
is_public Boolean 是否公开
show_phone Boolean 是否展示手机
show_email Boolean 是否展示邮箱
is_default Boolean 是否默认
is_active Boolean 是否激活
view_count Integer 查看次数
download_count Integer 下载次数
created_at DateTime 创建时间
updated_at DateTime 更新时间

applications(申请记录表)

字段名 类型 说明
id Integer 主键ID
user_id Integer 关联用户ID
job_id Integer 关联职位ID
resume_id Integer 关联简历ID
status String(20) 状态
reject_reason Text 拒绝原因
match_score Float 匹配度评分
applicant_remark Text 求职者备注
company_remark Text 企业备注
created_at DateTime 创建时间
updated_at DateTime 更新时间
viewed_at DateTime 查看时间
responded_at DateTime 回复时间

interviews(面试表)

字段名 类型 说明
id Integer 主键ID
user_id Integer 关联用户ID
job_id Integer 关联职位ID
application_id Integer 关联申请ID
company_id Integer 关联公司ID
interview_type String(20) 面试类型
round Integer 面试轮次
interview_date DateTime 面试日期
duration Integer 时长(分钟)
location String(256) 面试地址
online_link String(256) 在线链接
interviewer_name String(64) 面试官姓名
interviewer_position String(50) 面试官职位
interviewer_phone String(20) 面试官电话
status String(20) 状态
confirm_deadline DateTime 确认截止
user_feedback Text 求职者反馈
company_feedback Text 企业反馈
company_rating Integer 企业评分
user_rating Integer 求职者评分
result String(20) 面试结果
created_at DateTime 创建时间
updated_at DateTime 更新时间
confirmed_at DateTime 确认时间
completed_at DateTime 完成时间

messages(消息表)

字段名 类型 说明
id Integer 主键ID
sender_id Integer 发送者ID
receiver_id Integer 接收者ID
content Text 消息内容
message_type String(20) 消息类型
attachment_url String(256) 附件URL
attachment_name String(256) 附件名称
is_read Boolean 是否已读
is_deleted Boolean 是否删除
created_at DateTime 创建时间
read_at DateTime 阅读时间

favorites(收藏表)

字段名 类型 说明
id Integer 主键ID
user_id Integer 关联用户ID
job_id Integer 关联职位ID
remark Text 备注信息
created_at DateTime 创建时间

talent_pools(人才库表)

字段名 类型 说明
id Integer 主键ID
company_id Integer 关联公司ID
resume_id Integer 关联简历ID
tags Text 标签(JSON)
category String(50) 人才分类
rating Integer 评分(1-5)
last_contacted DateTime 最后联系
contact_count Integer 联系次数
response_status String(20) 回应状态
notes Text 企业备注
internal_notes Text 内部备注
is_important Boolean 是否重要
is_starred Boolean 是否星标
created_at DateTime 创建时间
updated_at DateTime 更新时间

resume_reviews(简历审核表)

字段名 类型 说明
id Integer 主键ID
company_id Integer 关联公司ID
resume_id Integer 关联简历ID
application_id Integer 关联申请ID
status String(20) 审核状态
match_score Float 匹配度评分
notes Text 备注信息
tags Text 标签(JSON)
created_at DateTime 创建时间
updated_at DateTime 更新时间

notifications(通知表)

字段名 类型 说明
id Integer 主键ID
user_id Integer 关联用户ID
title String(100) 通知标题
content Text 通知内容
type String(20) 通知类型
is_read Boolean 是否已读
related_type String(50) 关联类型
related_id Integer 关联ID
created_at DateTime 创建时间
read_at DateTime 阅读时间

analytics(数据分析表)

字段名 类型 说明
id Integer 主键ID
company_id Integer 关联公司ID
user_id Integer 关联用户ID
date Date 统计日期
metric_type String(50) 指标类型
metric_value Float 指标值
extra_data Text 额外数据(JSON)
created_at DateTime 创建时间

announcements(公告表)

字段名 类型 说明
id Integer 主键ID
title String(100) 公告标题
content Text 公告内容
priority String(20) 优先级
target_role String(20) 目标角色
is_active Boolean 是否激活
start_date DateTime 开始日期
end_date DateTime 结束日期
view_count Integer 浏览次数
created_at DateTime 创建时间
updated_at DateTime 更新时间

tags(标签表)

字段名 类型 说明
id Integer 主键ID
name String(50) 标签名称
type String(20) 标签类型
usage_count Integer 使用次数
created_at DateTime 创建时间

技术架构

后端技术栈

  • Flask 3.0:轻量级Web框架
  • SQLAlchemy 2.0:ORM数据库操作
  • Flask-Login:用户认证与会话管理
  • Flask-Mail:邮件发送功能
  • DeepSeek API:大语言模型集成
  • XGBoost 2.0:机器学习预测算法
  • SQLite:轻量级数据库

前端技术栈

  • Bootstrap 5:响应式UI框架
  • jQuery:JavaScript库
  • ECharts 5:数据可视化图表
  • Bootstrap Icons:图标库

核心算法

  • 智能推荐算法:多策略融合(内容匹配35%、协同过滤25%、热度20%、时间衰减15%、个性化5%)
  • 简历匹配算法:基于TF-IDF的文本相似度计算
  • 职位预测算法:XGBoost回归模型预测薪资和匹配度
  • 趋势分析算法:时间序列分析职位热度趋势
相关推荐
IT_陈寒2 小时前
Java开发者必知的5个性能优化技巧,让应用速度提升300%!
前端·人工智能·后端
WangYan20222 小时前
最新面向自然科学领域机器学习与深度学习【高维数据预处理—可解释ML/DL—时空建模—不确定性量化-全程AI+Python场景】
人工智能·深度学习·机器学习
中科天工2 小时前
怎么通过自动化包装系统优化企业整体运作?
大数据·人工智能·智能
peixiuhui2 小时前
EdgeGateway 快速开始手册-Modbus转MQTT
人工智能·mqtt·边缘计算·modbus·iotgateway·开源网关·modbus转mqtt
牧小七2 小时前
springboot配置maven激活配置文件
spring boot·后端·maven
程序媛哪有这么可爱!2 小时前
【删除远程服务器vscode缓存】
服务器·人工智能·vscode·缓存·边缘计算
nbsaas-boot2 小时前
Go 语言中的集合体系:从语言设计到工程实践
开发语言·后端·golang
数据猿视觉2 小时前
国家电投香港财资开启绿色金融新篇章
人工智能·金融
谷哥的小弟2 小时前
File System MCP服务器安装以及客户端连接配置
服务器·人工智能·大模型·file system·mcp·ai项目