selfrelease
|
7e720d9bfc
|
feat: 北京解聘合规增强 — 政策法规库+地区过滤+工会回执证据链
1. 政策法规库(RAG知识库):
- 新增6条北京地区单方解除劳动合同工作指引种子数据
- 涵盖通知工会程序、函件内容要求、回执要求、监督提示函、仲裁审查等
- 企业用户通过AI问答可检索到北京地区工会通知规定
2. 地区差异化合规检查:
- getChecklistForReason 增加 orgCity 参数
- 工会通知检查项仅北京地区显示(FAULT/NONFAULT/LAYOFF)
- 前端解聘方式说明中北京工会提示仅北京地区动态显示
- 非北京地区不显示工会通知检查项,避免误导
3. 工会回执上传+证据链留存:
- 后端新增3个接口:上传回执文件、保存回执信息、获取回执信息
- 回执信息保存到草稿 checklistOverrides
- 自动追加到证据链(appendEvidence),作为劳动仲裁举证材料
- 前端合规检查步骤增加工会回执上传区域
- 确认提交步骤展示回执文件链接
- 新增 uploads 静态文件服务
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
|
2026-08-15 16:01:02 +08:00 |
|
selfrelease
|
e8c6d27979
|
feat: 增加北京解聘合规性环节(通知工会程序+文档样本)
依据《规范用人单位单方解除劳动合同工作指引(试行)》
后端:
- 合规检查增加"通知工会"和"工会回执"检查项(FAULT/NONFAULT/LAYOFF)
- 检查项标注北京地区要求:提前5个工作日书面通知工会
- 模板系统新增3个文档样本:
· 拟解除劳动合同通知工会函(附件1样式)
· 工会回执(附件2样式)
· 工会劳动法律监督提示函(附件3样式)
前端:
- 过错解除/非过错解除/裁员三种方式的步骤说明增加工会通知程序
- 确认提交步骤展示工会通知状态(已通知/未通知/已收到回执)
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
|
2026-08-15 15:51:45 +08:00 |
|
selfrelease
|
f8dca2f22c
|
fix: 修复TASK-024/025/026/027验收标准 + 更新优化计划文档
- TASK-024: 证明Modal增加类型选择(收入/在职/离职证明)
- TASK-025: 续签按钮增加合同到期状态过滤(仅expiring/expired显示)
- TASK-026: 批量转正增加弹窗填写转正日期和薪资
- TASK-027: 批量开具证明增加类型选择弹窗
- 更新20260815-优化计划.md,标注复查结果
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
|
2026-08-15 15:43:23 +08:00 |
|
selfrelease
|
75e08b90c0
|
ux: 统一PageGuide位置到页面最顶部 + 侧边栏不显示品牌名
- SalaryDashboard/ESign: PageGuide 从标题下方移到标题上方
- Termination: PageGuide 从列表视图块内移到页面顶部
- SocialInsurance/Dashboard/Attendance: 页面顶部新增总览 PageGuide
- 侧边栏左上角不再回退显示品牌名,仅显示企业名称
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
|
2026-08-15 15:34:51 +08:00 |
|
selfrelease
|
456cd91a83
|
brand: 软件名称从"企业用工专家/TurboHR"统一改为"安职通"
- 登录/注册/忘记密码页标题
- 侧边栏和员工端布局默认名称
- 新手引导欢迎语
- 帮助中心问答
- 验收测试页面标题
- 后端 RAG 知识库
- 部署脚本日志输出
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
|
2026-08-15 15:29:13 +08:00 |
|
selfrelease
|
f523f84c18
|
ux: 全部页面添加操作说明 PageGuide
为以下17个缺少操作说明的页面添加 PageGuide 组件:
- OrgChart: 组织架构管理
- SupportDashboard: 客服工作台
- Money: 薪酬管理
- AIAssistant: AI 智能助手
- Settings: 系统设置
- Calendar: 人事日历
- Templates: 模板管理
- AuditLog: 审计日志
- Notifications: 通知中心
- MedicalPeriodCalculator: 医疗期计算器
- HealthCheck: 用工健康检查
- AnnualValueReport: 年度价值报表
- CompanyFiles: 公司文件管理
- LeaveApproval: 请假审批
- TrainingRecords: 培训记录
- PerformanceRecords: 绩效记录
- DisciplinaryRecords: 违纪记录
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
|
2026-08-15 15:26:02 +08:00 |
|
selfrelease
|
5c3f3503ea
|
feat: 花名册增加职务筛选 + 去掉解聘页新建按钮
- 后端:roster list 接口增加 position 筛选参数
- 后端:新增 /roster/positions 接口返回在职员工职务去重列表
- 前端:花名册筛选栏增加"全部职务"下拉框
- 前端:导出也支持 position 参数
- 前端:去掉解聘补偿页面的"新建解聘"按钮,解聘统一从花名册发起
- 前端:空状态提示改为"请在花名册中选择员工发起解聘"
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
|
2026-08-15 15:22:06 +08:00 |
|
selfrelease
|
81e1cd0f72
|
ux: 花名册列表两行记录样式美化
- 姓名列:姓名加粗深色 + 证件号码淡灰小字,紧凑行间距
- 社保缴费列:个人/企业改为右对齐标签式,字号区分主次
- 操作列:两行按钮间增加分隔线,按钮间距收紧
- 全行 padding 从 py-3 调整为 py-2.5,行高更紧凑
- 行间分隔线变淡(gray-100 → gray-50),hover 效果加 group
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
|
2026-08-15 15:14:13 +08:00 |
|
selfrelease
|
34b82bdbe7
|
feat: 建立部门和职务关联关系,调动时按部门过滤可选职务
- 17个部门专属职务绑定到对应部门(如工人→项目运营中心、会计→财务部)
- 8个通用职务保持不绑定(部门经理/主管/组长等,所有部门可用)
- 前端调动弹窗优化职务过滤:通用职务 + 该部门专属 + 父部门专属(子部门继承)
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
|
2026-08-15 15:06:23 +08:00 |
|
selfrelease
|
e3d46d9142
|
feat: 调部门改为调动,使用组织架构部门和职务下拉选择
- 后端:EmployeeDepartmentRecord 增加 oldPosition/newPosition 字段
- 后端:department-change 接口支持 departmentId 关联 + position 职务变动
- 后端:同步更新 Employee.departmentId 和 Employee.position
- 前端:DeptChangeModal 改为从组织架构下拉选择目标部门(树形)和职务
- 前端:选择部门后自动过滤该部门下的职务
- 前端:按钮文案从"调部门"改为"调动"
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
|
2026-08-15 15:00:38 +08:00 |
|
selfrelease
|
e8470e7bb4
|
fix: 组织架构页面无数据 - 响应拦截器已剥离一层data,无需再取r.data.data
api.ts 响应拦截器 (response) => response.data 已剥离 axios response,
OrgChart 中 api.get().then(r => r.data.data) 多取了一层导致返回 undefined。
改为 .then(r => r.data) 即可正确获取部门/岗位数组。
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
|
2026-08-15 14:52:24 +08:00 |
|
selfrelease
|
55f89d384b
|
ux: 花名册操作图标按钮分两行显示
第一行:调薪、转正、调部门
第二行:开具证明、续签合同、离职
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
|
2026-08-15 14:47:48 +08:00 |
|
selfrelease
|
4486adc957
|
ux: 花名册操作优化 - 去掉发薪、开具证明/续签合同直接操作、删除用工办理页面
- 去掉花名册操作栏的"发薪"按钮
- 开具证明改为弹窗直接创建+提交,不再跳转用工办理页面
- 续签合同改为弹窗直接创建+提交,自动推导新合同开始日期
- 批量开具证明改为直接API调用,不再跳转用工办理页面
- 删除用工办理页面(WorkProcess.tsx)和路由
- 去掉工具栏"用工办理"按钮
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
|
2026-08-15 14:41:37 +08:00 |
|
selfrelease
|
757cbc8740
|
fix: 增加 /api/v1/health 路由,修复 deploy.sh 验证 404
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
|
2026-08-15 14:34:39 +08:00 |
|
selfrelease
|
e1b5ae9aab
|
feat: 20260815 系统优化 - 全部31项问题修复(P0×6+P1×14+P2×9+P3×2)
P0紧急修复(6项):
- 草稿保存完整恢复所有字段(含socialAvgWage)
- 补偿金批次从compensationBreakdown读取
- 违法解除风险确认UI
- 合同结束日期前后校验(前后端双保险)
P1高优先级(14项):
- 离职日期联动社保/公积金截止月(15号规则)
- 合规检查+工作交接改为软阻断(生成待办)
- 补偿月数(N/N+1/2N/自定义)+计算基数(近12月/合同/自定义)
- 解聘并入花名册操作栏(类型选择跳转向导)
- 合同续签开始日期自动推导(原合同结束日+1天)
- 年龄合规筛查(童工阻断/未成年工/退休警告)
- 编辑入职日期后状态联动(待入职↔在职)
- 转正移植到花名册操作栏+薪资回写
- 男职工无法选择三期
P2体验优化(9项):
- "劳动合同"调整为"用工关系"
- 费用结算新增剩余年假折算(300%日工资)
- 身份证号全域改为"证件号码"(前后端18个文件)
- 手机号查重
- 开具证明+合同续签移植到花名册操作栏
- 批量转正+批量开具证明
- 去掉用工办理模块
P3规划(2项):
- 组织架构+审批流(Department/Position/ApprovalFlow/ApprovalInstance)
- 客服工作台(Ticket/ChatSession+SUPPORT角色)
新增模型: Department/Position/ApprovalFlow/ApprovalInstance/Ticket/TicketMessage/ChatSession/ChatMessage
新增字段: Employee.departmentId/supervisorId
新增角色: SUPPORT
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
|
2026-08-15 12:37:27 +08:00 |
|
freedakgmail
|
8cfdd566af
|
docs: 更新使用帮助近期更新,添加8月11日16项优化说明
|
2026-08-11 22:02:20 +08:00 |
|
freedakgmail
|
86e5526a83
|
fix: 优化文档16项问题修复
- 问题1/3: 绩效考核/培训记录员工姓名可点击跳转员工详情页
- 问题2: 离职证明模板支持自定义+员工端下载
- 问题4(P0): 修复工资填写后数据归零问题
- 问题5: 社保添加员工参保信息列表
- 问题6(P0): 商业保险支持为员工参保
- 问题7(P0): 员工福利支持为员工添加福利
- 问题8: 规章制度支持导入Word文档
- 问题9: 文本模板下载Word增加HTML格式
- 问题10: 模板下载变量替换修复(排除token参数)
- 问题11(P0): 电子签署发起时员工下拉框有选项
- 问题12: 新增绩效记录添加考评人选项
- 问题13: 违纪记录添加处罚执行细节
- 问题14: 特殊员工列表添加查看详情按钮和姓名链接
- 问题15: 员工福利汇总正确显示参保人员
- 问题16(P0): 证据链验证修复(递归排序key+自动修复历史哈希)
|
2026-08-11 22:02:19 +08:00 |
|
selfrelease
|
b682178549
|
fix: 用工办理必填项校验(前后端)+ 20260811优化验证文档
|
2026-08-11 17:15:51 +08:00 |
|
freedakgmail
|
de7f1830a7
|
docs: 更新使用帮助近期更新为28项优化说明
|
2026-08-09 12:04:30 +08:00 |
|
freedakgmail
|
a2e9ba55c2
|
feat: 20260809 系统优化 - 全部28项问题修复(P0×6+P1×16+P2×6)
P0: 福利批量参保/离职证明下载防乱码/考勤模板合并Sheet/补卡修改/附件在线查看删除
P1: 分页pageSize修复/离职导出筛选/撤回删除草稿/加班费自动计算/考勤加班汇总/证据链异常详情/制度催办/模板导入Word/社保封顶保底/校验字段提示/职务字段/社保费用明细/弹窗防误关/身份证查重/证明员工下拉/培训批量
P2: 离职流程去重/社保基数覆盖输入/薪税入口改名/添加员工引导/绩效模板清理
|
2026-08-09 11:59:02 +08:00 |
|
freedakgmail
|
c355a7d208
|
feat: 20260805 系统优化 - 身份证复制fallback/薪税日期筛选/社保版本修复/证据链导出/违纪证明/医疗期政策/绩效类型评级/合同作废/帮助更新
|
2026-08-05 20:26:16 +08:00 |
|
freedakgmail
|
a5901d648e
|
fix: 近期更新补充全部已完成项(离职校验/补偿金调整/退休提醒/休假审批入口/员工端辞职申请)
|
2026-08-05 08:59:16 +08:00 |
|
freedakgmail
|
9a960d8274
|
fix: 近期更新补充昨天完成的6项改动(身份证搜索/企业名称/表单中文/工作台Tab/电子签场景/通知设置)
|
2026-08-05 08:51:58 +08:00 |
|
freedakgmail
|
05b171b4e9
|
feat: 使用帮助新增'近期更新'分类,列出培训/绩效/违纪列表页、员工端签收、电子签扩展等更新说明
|
2026-08-05 08:48:27 +08:00 |
|
freedakgmail
|
ddc51b33fd
|
feat: 电子签署设置新增培训/绩效/违纪3个开关,改为两列卡片布局
|
2026-08-05 08:44:11 +08:00 |
|
freedakgmail
|
3afb383172
|
feat: 培训/绩效/违纪员工端签收+管理端签字状态只读化
- 后端: portal新增培训/绩效/违纪列表查看+签收接口,签收时创建证据链
- 管理端: 弹窗去掉HR手动签字勾选,改为只读显示签字状态
- 绩效列表新增签字状态列
- 员工端: 新增MyRecords页面,支持培训签收/拒绝、绩效签字、违纪签字
- 员工端导航新增'我的记录'入口
- EvidenceCategory新增TRAINING/PERFORMANCE类型
|
2026-08-05 08:39:04 +08:00 |
|
freedakgmail
|
15dde27701
|
fix: 培训/绩效/违纪列表页CRUD改用api实例(修复401鉴权失败)
|
2026-08-05 08:28:51 +08:00 |
|
freedakgmail
|
b239465e78
|
feat: 培训记录/绩效考核/违纪记录独立列表页+菜单入口
- 后端: 新增3个组织级列表接口 (training/performance/disciplinary /list)
- 前端: 新增3个列表页面,支持搜索、分页、新增/编辑/删除弹窗
- 侧边栏: 团队分组新增培训记录、绩效考核、违纪记录入口
- 路由+面包屑注册
- 社公商保改名为社保公积金
|
2026-08-05 08:21:53 +08:00 |
|
freedakgmail
|
539e384ee1
|
fix: 发薪日缺省5号+通知设置去掉重复发薪日字段
|
2026-08-05 08:08:18 +08:00 |
|
freedakgmail
|
6ec939dc7f
|
feat: 发薪日期多选+提前N天提醒+电子签设置区域修复
- Schema: 去掉 payrollFrequency,新增 payrollDays (JSON数组) + payrollReminderDays (Int)
- 设置页: 发薪日期改为1-28号多选按钮,新增提前提醒天数设置
- 设置页: 恢复电子签署设置区域(3个开关:规章制度/工资条/入职文件)
- 工作日历: 发薪日期作为 PAYROLL_DAY 事件显示
- 工作台: 提前N天提醒发薪日期,N可配置
- TaskCenter: 新增发薪提醒分类图标
- seed文件: 更新为 payrollDays 格式
|
2026-08-05 08:04:39 +08:00 |
|
freedakgmail
|
41b3030442
|
refactor: 设置页面调整-退休提醒独立tab+显示设置并入企业信息
- 退休提醒从企业信息中拆分为独立tab(RetirementSettings 独立 Card 组件)
- 显示设置从独立tab移入企业信息卡片底部(移除 DisplaySettings 组件)
- tab顺序:企业信息、用户管理、套餐、通知设置、退休提醒、数据导入、数据导出
|
2026-08-05 07:53:53 +08:00 |
|
freedakgmail
|
9512b555ee
|
feat: 电子签全场景集成+场景筛选+设置开关
- ESignRecord 模型新增 scene 字段(CONTRACT/RESIGNATION/POLICY/PAYSLIP/ONBOARDING)
- Organization 模型新增3个电子签开关:esignPolicyEnabled/esignPayslipEnabled/esignOnboardingEnabled
- 设置页面企业信息新增电子签署设置区域,3个开关各自独立,缺省关闭
- 规章制度签收:开启电子签后,员工阅读确认时自动创建POLICY场景签署记录
- 工资条确认:开启电子签后,员工确认工资条时自动创建PAYSLIP场景签署记录
- 入职文件签署:开启电子签后,HR审批通过入职流程时自动创建ONBOARDING场景签署记录
- 电子签署列表增加场景筛选下拉(全部场景/劳动合同/离职协议/规章制度/工资条/入职文件)
- 管理端和员工端列表均展示场景标签(基于scene字段,替代硬编码判断)
- 合同和离职流程的esign调用已加scene参数
|
2026-08-05 07:47:00 +08:00 |
|
freedakgmail
|
e8cd0f472b
|
feat: 电子签署导航调整+员工手机端电子签署功能
- 管理端导航:电子签署移到首页分组(工作日历下)
- 员工端新增电子签署页面(MyEsign.tsx):
- 查看自己的签署记录列表,支持待签/已签/已取消状态
- 查看签署详情,含文件内容、关联合同标识
- 确认签署操作(框架阶段,对接易签宝后跳转签署页面)
- 员工端导航(PortalNav)增加电子签署入口
- 员工首页(EmployeeHome)增加电子签署快捷入口
- 员工首页待办事项增加待签署文件提醒
- 后端portal路由新增3个接口:GET /esign、GET /esign/:id、POST /esign/:id/sign
|
2026-08-05 07:39:11 +08:00 |
|
freedakgmail
|
b9240ffe9b
|
feat: 电子签署集成到合同管理和离职流程
- 合同管理:选择电子签署时保存后自动创建ESignRecord并关联合同ID
- 离职管理:工作交接清单「离职文件签署」步骤增加「发起电子签署」按钮
- 电子签署页面:列表增加来源标识(劳动合同/离职协议)
- 合同卡片:电子签署合同显示提示而非手动填写编号/链接
|
2026-08-05 07:34:01 +08:00 |
|
freedakgmail
|
cce0c936bd
|
refactor: 侧边栏「特殊状态」改名为「特殊员工」
|
2026-08-05 07:29:39 +08:00 |
|
freedakgmail
|
b576a48ff1
|
refactor: 调整侧边栏分组顺序,电子签署移至团队分组
- 电子签署从「福利保障」移到「团队」分组(与合同管理、用工办理同属员工生命周期)
- 「时间」分组移到「薪酬」之前
- 导航顺序:首页 → 团队 → 时间 → 薪酬 → 福利保障 → 合规
|
2026-08-05 07:27:41 +08:00 |
|
freedakgmail
|
13c9192b0a
|
feat: 商业保险新增员工汇总Tab
- 后端新增 /commercial-insurance/employee-summary 接口,按员工维度汇总商险
- 前端商业保险页面新增Tab切换:方案管理 + 员工汇总
- 员工汇总展示每人参保项、年保费合计、保额合计,底部带总计行
|
2026-08-05 07:25:14 +08:00 |
|
freedakgmail
|
c328172e7d
|
feat: 商业保险/员工福利独立页面+易签宝电子签署框架
- 商业保险:从社公商保中拆出为独立页面,侧边栏新增「福利保障」分组
- 员工福利:新建完整模块(方案管理+批量参保+员工汇总),Prisma模型+后端路由+前端页面
- 电子签署:搭建易签宝对接框架(ESignRecord模型+创建/查询/取消/回调接口+前端签署管理页面)
- 侧边栏新增「福利保障」分组:商业保险、员工福利、电子签署
- Prisma schema 新增6个模型:CommercialInsurancePlan/Enrollment, EmployeeBenefitPlan/Enrollment, ESignRecord
|
2026-08-04 23:08:49 +08:00 |
|
freedakgmail
|
5604d02de9
|
feat: 完成23项系统优化 - 花名册社保状态列/身份证复制/附件类型扩展, 用工办理姓名检索/直接提交/文书查看/批量证明, 风险中心跳转筛选+批量处理, 日历7/15/35天分组+逾期统计, 考勤单条编辑+按人导出, 工资条查看状态+工资流水导出, 辞职申请附件上传, 交接清单PDF下载, 操作完成下一步引导, 休假审批入口, 人效成本分部门
|
2026-08-04 22:55:03 +08:00 |
|
selfrelease
|
338af5eee9
|
fix: 花名册身份证搜索bug修复 + Header企业名称 + 优化文档更新
- 修复Roster.tsx前端二次过滤清空身份证搜索结果的问题
- TopNav增加企业名称显示(复用settingsApi.org())
- 新增docs/20260804-优化.md(23项反馈全面审查)
- 更新20260803-优化.md状态(问题5已完成)
|
2026-08-04 18:56:07 +08:00 |
|
freedakgmail
|
c3375cbfe7
|
docs: 更新验收测试清单 v1.1 (199→221项)
新增:
- 20a. 休假审批(管理端)9项: 列表/统计/筛选/审批通过/驳回/撤回/删除/分页
- 22.24-26 员工端我的休假 3项: 申请列表/提交申请/撤回申请
- 20.1-7 薪酬分析仪表盘扩展 1→7项: 加载/概览/同比环比/部门对比/月度趋势/切换年份/空状态
|
2026-08-04 08:01:59 +08:00 |
|
freedakgmail
|
e02e3dcd81
|
fix: 新增后端 /api/v1/salary/dashboard 路由
- 创建 salary.routes.ts,提供薪酬分析数据
- 基于 Payslip 模型计算部门对比、月度趋势、同比环比
- 在 app.ts 中挂载 /api/v1/salary 路由
|
2026-08-04 07:58:21 +08:00 |
|
freedakgmail
|
2968484d2d
|
优化: 大文件拆分+代码分割+按需加载+console清理+any类型替换
- Money.tsx (2260行→54行): 拆分为 money/ 子目录4个组件, React.lazy二级分割
- AIAssistant.tsx (2038行→63行): 拆分为 ai-assistant/ 子目录6个组件, React.lazy二级分割
- xlsx改为动态导入, OvertimeTab从345KB降至12.7KB
- api-services.ts: 请求参数 any→Record<string,unknown>
- 移除前端3处console.log残留
- 后端console替换为pino logger
- 前后端未使用import/变量清理
- Zod schema验证: termination/platform/special-status/work-process
- 新增 leave.routes.ts, acceptance-test.routes.ts
- UI组件: PageGuide, QueryError, Stepper
|
2026-08-04 07:53:37 +08:00 |
|
selfrelease
|
1da385cd5d
|
docs: 新增第十一届人力资源服务创新创业大赛参赛商业计划书
|
2026-08-03 15:45:40 +08:00 |
|
selfrelease
|
68ebe6a4ff
|
feat: 新增验收测试清单(199项24域)替代功能调查问卷; 修复工作台评分环文字重叠
- 新增 acceptance-test.html 交互式验收测试页面(验收人姓名/自动补全/自动统计/CSV+Excel下载)
- 新增 AcceptanceTestModal 组件, TopNav 中用验收测试弹窗替代 SurveyModal
- Settings 页问卷导出替换为验收测试结果导出(支持多验收人汇总MD)
- 修复 Dashboard 合规健康度评分环文字重叠: 圆环增大至w-32, 加overflow-hidden+truncate
|
2026-08-02 09:22:51 +08:00 |
|
selfrelease
|
787897e6d3
|
fix: 修复员工端离职申请创建时缺少checklist和type字段导致内部错误; 新增E2E测试场景文档
|
2026-08-01 19:05:20 +08:00 |
|
selfrelease
|
b0942f3e61
|
fix: Dashboard complianceScore 字段名不匹配及缺少可选链保护
- complianceScore.overallScore → fallback to totalScore
- complianceScore.levelLabel → fallback to summary
- complianceScore.suggestions 加可选链守卫
- data.todos 加可选链守卫
- data.topRisks 加空数组兜底
|
2026-08-01 16:27:03 +08:00 |
|
selfrelease
|
a252d72e68
|
refactor: 消除所有 api-services-raw 残留调用,API 口径完全统一
- dashboardApi 新增 resolveTodo/ignoreTodo/batchResolveTodos/batchIgnoreTodos
- notificationsApi 新增 checkContracts/test
- settingsApi 新增 confirmRetirementPolicy
- socialInsuranceApi 新增 monthlyChanges/housingMonthlyChanges/housingActiveDeclaration
- Dashboard.tsx 替换 4 处 apiPatch
- Settings.tsx 替换 4 处 apiPost
- Notifications.tsx 替换 1 处 apiPost
- SocialInsurance.tsx 替换 4 处 apiGet
- AIAssistant.tsx 移除未使用的 apiPost 导入
- 所有页面零 api-services-raw 依赖
|
2026-08-01 16:20:28 +08:00 |
|
selfrelease
|
16f22e6622
|
refactor: 全量迁移前端 API 调用到统一 api-services 服务层
- 新建 api-services-raw.ts 导出原始 axios 方法供特殊端点使用
- 完成 api-services.ts 全领域覆盖(auth/employee/roster/dashboard/attendance/payroll/socialInsurance/commercialInsurance/termination/policies/evidence/audit/calendar/companyFiles/notifications/settings/ai/platform/portal/survey/search)
- 迁移所有 47+ 页面文件:pages/、pages/roster/、pages/portal/、pages/platform/、pages/auth/、pages/dashboard/、pages/compliance/
- 移除所有直接 import api from '../../lib/api' 引用
- 修复 Termination.tsx / WorkProcess.tsx 中 string|null 类型错误
- 修复 SocialInsurance.tsx 中 api-services-raw delete 导入名
- 修复 PlatformLogin.tsx 变量遮蔽问题
- tsc --noEmit 零错误,vite build 成功
|
2026-08-01 16:13:19 +08:00 |
|
selfrelease
|
fb924dea98
|
refactor: API口径统一 — 统计函数/员工列表/前端服务层
后端:
- /dashboard/compliance-score 改用 getHealthCheck,与体检诊断同口径
- 新增 /employees/list 端点(不分页,供各页面下拉选择)
- /employees/all-lite 增加 position 字段和 status 筛选参数
- getHealthCheck 未签合同改为查无合同记录的员工(非UNSIGNED类型)
前端:
- 新建 lib/api-services.ts 统一 API 服务层
- employeeApi/rosterApi/dashboardApi/attendanceApi 统一封装
- 6个页面迁移到统一 API 调用:
- Attendance: employeeApi.list + rosterApi.departments
- Termination: rosterApi.list + rosterApi.departments
- Money: rosterApi.list + rosterApi.departments
- PortalQRModal: employeeApi.list
- AIAssistant: 3处 employeeApi.list 替代 /roster?pageSize=999
- Contracts: rosterApi.departments
- Dashboard: rosterApi.expiringContracts + dashboardApi.healthCheck/workforceStats
|
2026-08-01 15:29:13 +08:00 |
|