|
|
af11f8ad48
|
refactor(scheduler): 优化爬取和简历处理流程,改为异步线程池执行
- 将手动触发爬取任务改为使用FastAPI后台任务执行
- 在职位处理逻辑中,将获取候选人列表改为线程池异步调用,避免阻塞事件循环
- 在候选人处理流程中,将获取简历详情改为线程池异步调用
- 在入库操作中使用线程池异步执行,提升处理性能
- 在Boss爬取任务中,将获取职位列表和获取候选人操作改为线程池异步调用
- 统一改造调用同步爬虫方法为异步线程池调用,提升整体异步性能和响应速度
|
2026-03-25 11:50:34 +08:00 |
|
|
|
fc24e3a37b
|
fix(routes): 优化路由导入错误处理并调整职位需求转换
- 优化 job 路由导入时的异常捕获,添加错误信息和堆栈打印
- 修改职位接口中 requirements 字段的转换逻辑,支持多种对象转换为字典
- 修正 job 模块中 CandidateSource 引用路径
- 移除职位管理页面中“创建职位”按钮相关代码
|
2026-03-25 11:24:30 +08:00 |
|
|
|
148f2cc4f6
|
feat(notification-channels): 新增通知渠道管理功能
- 后端API新增评价方案列表接口及通知渠道相关接口
- 所有候选人相关API路径添加/api前缀
- 系统首页接口更新候选人路径为/api/candidates
- CandidateMapper和JobMapper排序逻辑调整以兼容MySQL null值排序
- 前端candidateApi接口路径添加/api前缀
- 新增notificationChannelApi管理通知渠道,包括增删改查、启用停用及招聘者绑定管理
- 路由新增通知渠道管理页面入口
- 实现NotificationChannels.vue通知渠道的增删改查、搜索筛选、分页、启用停用及招聘者绑定管理功能
- Recruiters.vue中新增通知渠道绑定对话框及绑定相关逻辑,支持招聘者绑定通知渠道管理
- controller/schemas.py新增分页参数PaginationParams及重建模型修正前向引用
- UI组件调整及新增对应表格列、表单校验规则和界面交互逻辑
|
2026-03-25 11:14:51 +08:00 |
|
|
|
6f3487a09a
|
refactor(mapper): 优化对象递归转换为JSON序列化格式
- 支持基本类型(str, int, float, bool)直接返回
- 支持SDK返回的模型对象通过__dict__递归转换
- 跳过私有属性和方法避免序列化异常
- 其他对象转换为字符串保证兼容性
feat(service): 新增候选人入库标识
- IngestionResult添加is_new字段区分新增或更新
- success_result方法新增is_new参数支持自定义设置
- duplicate_result默认is_new为False明确重复非新增
refactor(frontend): 重构侧边栏菜单布局和样式
- 简化侧边栏logo结构,调整图标大小和颜色
- 替换t-menu为div循环渲染自定义菜单项
- 菜单项支持点击事件,应用激活状态样式
- 添加蓝色指示器显示当前激活菜单项
- 优化侧边栏宽度固定,主布局采用flex布局
- 美化升级卡片视觉,调整间距和阴影统一风格
|
2026-03-25 10:48:38 +08:00 |
|
|
|
eedaac69b0
|
feat(notification): 新增通知渠道及绑定管理功能
- 新增数据库表 notification_channels, recruiter_channel_bindings 支持多渠道通知绑定
- 在 notifications 表中新增 channel_id 关联通知渠道
- 增加默认通知渠道示例数据插入脚本(企业微信、钉钉、飞书)
- 实现 NotificationChannel 和 RecruiterChannelBinding 两个ORM模型及关联关系
- 增加通知渠道管理API,支持增删改查及启用停用操作
- 实现通知渠道类型枚举及配置验证
- 新增招聘者与通知渠道绑定管理路由,支持绑定关系创建、更新和删除
- 在招聘者模块中集成通知渠道绑定管理相关接口
- 增加对应的请求参数、响应模型及数据校验模型
- 更新数据库配置和依赖注入,支持通知渠道服务
- 完善接口响应的错误处理和成功提示信息
- 保证所有新增代码符合项目代码风格和结构规范
|
2026-03-25 10:39:33 +08:00 |
|
|
|
91b6808d45
|
refactor(controller): 优化分页参数定义,移除通用响应类
- 移除了旧版通用响应 APIResponse 类
- 简化分页参数 PaginationParams 的实现
- 增加分页参数的默认值和限制描述
- 提升代码简洁性和可维护性
|
2026-03-24 20:03:31 +08:00 |
|
|
|
6dc57076b6
|
chore(deps): 更新pnpm-lock.yaml并优化.gitignore配置
- 在.gitignore中添加node_modules忽略规则,避免提交依赖缓存文件
- 添加完整pnpm-lock.yaml文件以锁定依赖版本,确保构建环境一致
- 锁定依赖库版本包括vue 3.5.30、element-plus 2.13.6、axios 1.13.6等
- 确保开发依赖如vite、sass插件与vue插件版本统一
- 维护依赖树完整性,提升项目稳定性和可重复构建能力
|
2026-03-24 19:33:00 +08:00 |
|
|
|
498fd7a5e8
|
feat(frontend): 添加前端基础框架与核心功能模块
- 初始化项目配置,新增npmrc和package.json文件
- 创建Vue 3应用入口,集成Element Plus UI库及图标插件
- 配置路由包括首页、招聘者管理、职位管理、候选人管理和定时任务五个模块
- 实现布局组件包含侧边栏菜单、顶部导航及主内容区
- 封装统一的API请求模块,包含招聘者、职位、候选人、定时任务和系统接口
- 开发Dashboard页面,实现系统概览及状态展示功能
- 开发候选人管理页面,包括搜索筛选、分页展示、详情查看及评分功能
- 开发职位管理页面,支持职位列表、搜索过滤、分页管理及关联评价方案
- 设计基础样式和交互效果,保证页面布局和风格一致性
|
2026-03-24 19:32:46 +08:00 |
|
|
|
6f1f438159
|
feat(job): 增加职位评价方案及管理接口
- 在数据库jobs表新增evaluation_schema_id字段及外键约束
- ORM模型JobModel新增evaluation_schema_id关联字段
- 扩展配置项,增加评分阈值相关参数及简历处理配置
- 新增职位管理路由job_router,支持职位CRUD及评价方案关联功能
- 职位API支持列表查询、筛选、详情查看、创建、更新、删除及评价方案绑定和获取
- recruiter路由统一响应格式为BaseResponse,完善异常处理及提示信息
- scheduler路由任务接口统一响应格式,新增单个任务状态查询接口
- scheduler路由中支持任务立即运行、暂停、恢复和配置更新操作,增加异常捕获和提示
- 其他内部细节优化API异常处理及返回统一格式
|
2026-03-24 19:09:11 +08:00 |
|
|
|
1343561979
|
feat(candidate): 增加候选人LLM筛选及评分功能
- 在候选人数据库表中新增llm_filtered标记、llm_score评分及详情字段及索引
- 在领域模型Candidate中新增LLM筛选状态和评分相关属性
- 更新ORM映射类添加llm_filtered、llm_score、llm_score_details字段映射
- 扩展候选人数据访问层,支持基于LLM筛选状态和评分范围的查询与分页
- 提供批量标记候选人LLM筛选状态的接口支持
- 新增候选人管理API路由,包含查询、筛选、标记和更新评分的接口
- 定义完整的请求和响应Schema,使用统一响应封装结构
- 更新应用启动代码注册候选人管理接口路由,完善模块导入及初始化逻辑
|
2026-03-24 18:34:37 +08:00 |
|
|
|
7e60476175
|
feat(domain): 添加ResumeParsed对象转字典方法和日志打印
- 在ResumeParsed类中新增to_dict方法,将对象转换为字典
- 在account_sync_job.py中增加VIP等级、简历查看次数相关日志打印
- 从resume_process_job.py中删除简历查看次数判断及跳过逻辑,简化同步流程
|
2026-03-24 18:17:28 +08:00 |
|
|
|
91a4094881
|
refactor(api): 重构FastAPI主应用入口,拆分业务模块路由
- 移除集中式招聘者账号路由定义,改为模块化拆分到routes目录
- 按业务拆分路由;包括recruiter(招聘者账号)、scheduler(定时任务)、system(系统接口)三部分
- 新增routes/__init__.py管理各子路由统一导入与导出
- routes/recruiter.py实现招聘者账号的完整CRUD及自动注册功能
- routes/scheduler.py实现定时任务的查询、控制与配置功能
- routes/system.py实现健康检查、API根路径和状态接口
- schemas.py集中定义API请求和响应模型,支持各业务模块使用
- account_sync_job.py完善职位同步逻辑,支持删除过期职位并返回新增与删除数量
- overall 优化应用结构,提升代码可维护性与模块化程度
|
2026-03-24 17:34:54 +08:00 |
|
|
|
49cd8682d0
|
feat(job): 添加账号与职位同步及简历处理定时任务
- 在recruiters与jobs表中新增账号权益和统计字段,添加对应索引和外键约束
- 扩展Recruiter和Job领域模型,支持权益、同步状态及职位统计信息
- 实现账号同步定时任务,定期检查账号状态、同步权益及职位数据
- 实现简历处理定时任务,遍历活跃账号职位,抓取候选人简历并统一入库
- 引入Job调度器,集中管理账号同步和简历处理任务的调度、启停及状态监控
- 添加.gitignore规则忽略.idea目录配置文件
|
2026-03-24 17:00:58 +08:00 |
|
|
|
b6afe82d2f
|
fix(data): 解决数据序列化和定时任务调度问题
- 添加递归转换方法以支持复杂数据类型的JSON序列化
- 优化实体转换逻辑,避免手工字段赋值,提升代码简洁性
- 修正性别字段处理,确保枚举类型能正确转换为值
- 调整爬取任务调度频率,从30秒改为1分钟,提高合理性
|
2026-03-24 16:26:54 +08:00 |
|
|
|
9be9d338ae
|
feat(repository): 添加候选人和简历数据访问层并集成入库服务
- 新增 CandidateMapper 实现候选人数据的增删改查功能,基于 SQLAlchemy
- 新增 ResumeMapper 实现简历数据的增删改查功能,基于 SQLAlchemy
- 在 UnifiedIngestionService 中集成了 candidate_repo 和 resume_repo
- 初始化 DeduplicationService 时注入候选人仓库作为依赖
- 统一入库服务保存流程中为简历生成唯一ID
- 优化数据库会话管理,确保资源正确释放
|
2026-03-24 16:06:06 +08:00 |
|
|
|
c411b4848f
|
chore(crawler): 移除 BossCrawler 中调试打印代码
- 删除了打印 geek_data 和 geek_card 属性的调试语句
- 移除了候选人 name 和 source_id 解析时的调试输出
chore(ingestion): 去除数据验证失败时的调试打印
- 删除了验证失败后打印原始数据和标准化数据的调试信息
- 精简验证失败的日志输出,保持代码简洁
|
2026-03-24 15:50:41 +08:00 |
|
|
|
3f261fb3a4
|
fix(crawler): 完善Boss候选人数据解析与简历详情获取
- 新增Candidate.raw_data字段以保存原始数据,便于后续细节获取
- 修改get_candidates调用client方法名和传参,传递原始数据给_parse_candidate
- _parse_candidate方法增强,兼容Boss SDK复杂数据结构,支持多字段解析
- 增加年龄、当前工作、学校等字段的详细解析逻辑
- get_resume_detail改进,支持从raw_data中提取必要参数调用SDK接口
- 统一异常处理并增加详细错误信息提示,确保数据完整性验证
- 统一数据验证失败时打印详细原始数据及转换后内容,方便排查
- scheduler调整Boss简历抓取任务触发间隔为30秒,提高抓取频率
|
2026-03-24 15:49:11 +08:00 |
|
|
|
b2dde5bbdb
|
fix(scheduler): 修复爬虫调度器的执行间隔和职位遍历逻辑
- 将分析待处理简历的调度任务间隔从5小时改为5分钟
- 取消限制职位遍历数量,改为遍历所有职位
- 修正职位爬取过程中职位数量限制过严的问题
|
2026-03-24 15:00:13 +08:00 |
|
|
|
3c29ca04eb
|
feat(api): 使用FastAPI重构招聘者账号管理与启动服务器
- 移除旧的命令行工具add_recruiter.py和main.py,统一改用API方式管理招聘者账号
- 新增FastAPI应用,提供招聘者账号的CRUD接口及激活/停用功能
- 添加CORS中间件,支持跨域请求
- 支持通过API接口创建、查询、更新、删除招聘者账号,并返回标准化响应
- 集成异步后台定时任务调度器,定时爬取Boss直聘简历和分析报告
- 新增run_server.py启动脚本,支持启动FastAPI服务器和定时任务调度器的组合应用
- 定时任务支持任务列表查询、暂停、恢复及手动触发爬取任务的API
- 更新pyproject.toml依赖,新增fastapi、uvicorn和apscheduler等库
- 优化系统架构,实现Web API和后台调度功能解耦与整合,提高系统扩展性及易用性
|
2026-03-24 14:50:50 +08:00 |
|
|
|
04596d298b
|
feat(recruiter): 添加招聘者账号管理模块及相关支持
- 新增招聘者账号数据库表结构及SQL建表脚本
- 实现招聘者实体类及账号状态枚举
- 添加SQLAlchemy数据库模型及管理器支持招聘者数据存储
- 实现招聘者数据访问层(Mapper)进行增删改查操作
- 开发招聘者服务层,支持账号添加、启用、停用、删除、列表及爬虫注册
- 新增命令行工具add_recruiter.py,便于管理招聘者账号
- 修改主应用初始化流程,集成招聘者服务并通过数据库加载活跃账号爬虫
- 主程序示例中新增招聘者账号展示与调用爬取任务示范
- 更新项目依赖,增加SQLAlchemy、PyMySQL及Cryptography库支持
- 修改.gitignore,新增.qoder目录例外规则
|
2026-03-24 14:36:01 +08:00 |
|
|
|
6a5495005e
|
refactor(core): 重构配置与入口模块,统一配置结构并调整导入
- 扁平化应用配置类,合并数据库、LLM、爬虫和通知配置
- 重新实现配置加载,统一环境变量前缀和字段命名
- 入口脚本调整,增加源码路径处理,支持模块绝对导入和直接运行
- HRAgentApplication中使用新配置字段访问方式
- 优化通知渠道注册逻辑,适配新的配置字段重命名
- 模块路径统一由ylhp_hr_2.0改为ylhp_hr_2_0,确保导入一致性
- 删除旧配置模块,避免配置重复和混淆
- service.analysis包暴露MockLLMClient,完善LLM客户端选项
- 保留主入口运行示例,演示系统初始化与功能打印
|
2026-03-24 11:57:45 +08:00 |
|
|
|
a40c239996
|
feat(database): 初始化数据库结构及添加默认评价方案
- 创建候选人主表 candidates,包含基本信息和索引
- 创建简历内容表 resumes,支持附件和版本控制
- 创建职位信息表 jobs,包含职位详情及状态索引
- 创建评价方案表 evaluation_schemas,支持多维度配置及权重
- 创建评价记录表 evaluations,关联候选人、方案及职位,支持多维评分及推荐
- 创建通知记录表 notifications,涵盖多渠道通知及状态管理
- 插入通用和Java后端岗位的默认评价方案,支持重复时更新
- 添加详细的数据库配置指南和常用查询示例文档README.md
|
2026-03-24 11:34:27 +08:00 |
|
|
|
507a2522cd
|
feat(core): 重构项目为简历智能体系统基础架构
- 重命名项目及包结构为ylhp-hr-2-0,支持多平台简历爬取与AI分析
- 移除旧的main.py,新增统一主应用入口及初始化流程
- 实现配置模块,支持数据库、LLM、通知和爬虫多种配置项及环境变量加载
- 构建领域模型,包括候选人、简历、职位、评价等实体与枚举定义
- 设计评价方案服务,提供默认评价模板及方案管理接口
- 开发分析服务,整合LLM客户端实现基于AI的简历分析功能
- 实现多种通知渠道支持,包括企业微信、钉钉、邮件
- 引入爬虫工厂及Boss爬虫模块支持候选人数据抓取
- 统一入库服务,完成数据归一化、验证及去重功能
- 添加异步任务协调流程,支持爬取后自动分析及通知
- 配置项目依赖管理,支持选装LLM和开发工具插件
- 初步搭建代码目录结构,划分配置、领域、服务、映射、控制器层等模块
|
2026-03-24 11:29:53 +08:00 |
|
|
|
6f38bc02c1
|
chore(repo): 添加.gitignore,Python版本配置及基础项目结构
- 新增详细.gitignore文件,忽略常见Python缓存、构建等无用文件
- 添加.python-version指定Python版本为3.14
- 添加pyproject.toml,配置项目元信息及依赖包
- 新增uv.lock锁定依赖版本,确保环境一致性
- 新增main.py示例代码,演示Boss类的基本用法:获取职位列表、候选人及简历内容
- 配置国内及私有PyPI源镜像以加速依赖安装
|
2026-03-24 10:55:45 +08:00 |
|