freedakgmail
|
eb58bc4b09
|
优化: 合同开始日期随入职日期自动同步
1. 添加员工和重新入职:入职日期变更时自动同步合同开始日期和结束日期
2. 合同开始日期改为只读显示(始终等于入职日期)
3. 花名册列表增加离职日期列:已离职显示日期,待离职显示预计日期
4. 重新入职弹窗对齐添加员工:移除孕期/医疗期/工伤,合同双向计算,试用期校验
5. 后端 rehireEmployee 重置特殊状态为 false
|
2026-07-23 18:34:12 +08:00 |
|
freedakgmail
|
dad43931cf
|
优化: 重新入职弹窗对齐+花名册增加离职日期列
1. 重新入职弹窗:移除孕期/医疗期/工伤,缺省日期=今天,合同双向计算,试用期校验
2. 花名册列表增加「离职日期」列:已离职显示日期,待离职显示预计日期(amber)
3. 后端 rehireEmployee 重置特殊状态为 false
|
2026-07-23 18:30:21 +08:00 |
|
freedakgmail
|
0dd5a26afa
|
优化: 重新入职弹窗对齐添加员工
1. 移除孕期/医疗期/工伤复选框(重新入职自动重置为false)
2. 缺省入职日期和合同开始日期为今天,默认3年合同结束日期
3. 签约时长与合同结束日期双向自动计算
4. 试用期长度按劳动合同法校验+试用期工资必填及80%校验
5. 试用期工资校验使用员工已有月工资作为基准
|
2026-07-23 18:29:31 +08:00 |
|
freedakgmail
|
8283b538e5
|
优化: 添加员工弹窗-身份证号必填+性别自动识别
1. 身份证号必填(18位),后端加密存储
2. 性别由身份证号第17位自动计算(奇数=男,偶数=女),无需手动选择
3. 移除添加员工时的孕期/医疗期/工伤复选框(这些状态后续在员工档案中维护)
|
2026-07-23 18:25:37 +08:00 |
|
freedakgmail
|
43186d3dd8
|
优化: 添加员工弹窗合同和试用期智能计算
1. 缺省入职日期和合同开始日期为今天,签订日期默认空(留空表示尚未签订)
2. 签约时长与合同结束日期双向自动计算:改年限→算结束日期,改结束日期→算年限
3. 开始日期变更时自动重算结束日期
4. 试用期长度按劳动合同法第19条校验(3月以下不得约定,1年以下≤1月,3年以下≤2月,3年以上≤6月)
5. 有试用期时试用期工资必填,且不得低于转正工资80%(劳动合同法第20条)
6. 校验不通过时禁止保存并显示错误提示
|
2026-07-23 18:22:29 +08:00 |
|
freedakgmail
|
1eeca663a0
|
feat: 已离职/解聘员工可重新入职
1. 后端新增 rehireEmployee 函数和 POST /employees/:id/rehire 接口
2. 校验:仅已离职员工可重新入职,新入职日期须晚于上次离职日期
3. 复用员工已有基本信息,只需填写新入职日期和劳动合同
4. 前端花名册已离职员工显示「重新入职」按钮+弹窗(RehireModal)
|
2026-07-23 18:11:01 +08:00 |
|
freedakgmail
|
2896ba77aa
|
feat: 区分待解聘/待离职+撤回功能
1. 花名册列表区分「待解聘」(amber)和「待离职」(blue)
2. 未到日期的解聘/离职记录可撤回,撤回后删除记录并恢复在职状态
3. 后端新增 DELETE /termination/:id/revoke 接口
4. 花名册列表返回 latestTerminationType 和 latestTerminationId
|
2026-07-23 18:07:37 +08:00 |
|
freedakgmail
|
29ba3a98bc
|
feat: 离职/解聘完整功能
1. 已有离职/解聘记录的员工不能再次解聘(后端校验+前端提示)
2. 员工主动离职功能:花名册列表增加「离职」操作按钮和弹窗
3. 离职也按离职日期动态判断在职/离职状态,支持提前办理
4. 员工档案「解聘记录」tab改为「离职/解聘记录」,区分类型显示
5. Schema: TerminationRecord 增加 type、resignationReason 字段
6. 后端新增 POST /termination/resignation 接口
7. 花名册列表返回 hasTermination 标记
|
2026-07-23 17:31:27 +08:00 |
|
freedakgmail
|
e6b5ac5989
|
fix: 在职/离职状态改为根据解聘日期动态计算
- 花名册列表 API: include terminations,根据解聘日期<=今天判断RESIGNED
- 员工详情 API: 同样动态计算 status
- 证据链 API: 同样动态计算 status
- 不再依赖数据库中静态的 status 字段
- 吴芳等解聘日期在未来的员工将正确显示为在职
|
2026-07-23 17:14:37 +08:00 |
|
freedakgmail
|
9a4e8da0a0
|
fix: 解聘保存后根据解聘日期判断在职/离职状态
- 解聘日期<=今天:员工状态设为RESIGNED(离职)
- 解聘日期>今天:员工状态保持ACTIVE(在职,未到解聘日)
|
2026-07-23 17:11:57 +08:00 |
|
freedakgmail
|
b95676cb46
|
feat: 解聘补偿增加「模拟计算」按钮 — 只计算不实际保存
- Step 4 费用结算增加「模拟计算」按钮
- 点击后计算补偿金并暂存到右侧列表,重置向导
- 不调用保存接口,不创建解聘记录
- 「确认保存」仍走原有流程保存到后端
|
2026-07-23 17:08:09 +08:00 |
|
freedakgmail
|
64cfb2f464
|
feat: 解聘补偿左右分栏 — 左侧向导计算,右侧暂存多人补偿合计
- 左侧保持原有5步向导不变
- 右侧暂存列表:保存成功后自动添加,显示每人补偿金/代通知金/双倍工资/合计
- 底部汇总:多人补偿金/代通知金/双倍工资/总计
- 支持单条删除和清空全部
- 移动端隐藏右侧(hidden md:block)
|
2026-07-23 17:06:13 +08:00 |
|
freedakgmail
|
e4dae72411
|
refactor: 「解聘」改为「解聘补偿」
|
2026-07-23 16:59:23 +08:00 |
|
freedakgmail
|
1b05facc92
|
feat: 解聘Step3合规检查增强 — 系统自动预填+建议
后端:
- getChecklistForReason 接收 employee 数据,支持自动检查
- 医疗期是否届满:根据 isInMedicalPeriod 自动判断
- 是否经过培训/调岗:根据 trainingRecords 自动判断
- 经济补偿金/代通知金:系统给建议(suggestion + suggestionType)
- checklist 接口改为 async,获取员工 profile 传入
前端:
- checklist 查询传入 employeeId
- useEffect 自动预填系统判断结果到 checklist state
- Step 3 UI 重写:显示系统判断标签、来源说明、建议提示
- 建议按类型显示不同颜色(warning/required/info)
|
2026-07-23 16:56:28 +08:00 |
|
freedakgmail
|
fa7aa01c48
|
refactor: 社保公积金从薪税tab移至顶层导航,放在薪税和解聘之间
- 新建 SocialInsurance.tsx 独立页面
- App.tsx 添加 /social 路由
- TopNav/MobileTabBar 添加社保公积金导航项
- Money.tsx 移除 social tab 和 SocialInsuranceCalculator 函数
|
2026-07-23 16:48:10 +08:00 |
|
freedakgmail
|
c618710a52
|
feat: 社保公积金版本管理 + 员工基数调整 + 加班费计算优化 + UI组件改进
- SocialInsuranceConfig 版本化(effectiveFrom/effectiveTo/isCurrent/adjustmentDone)
- 社保配置版本管理接口(列表/新建/按月获取/当前版本)
- 员工基数调整:预览全部在职员工、上年月均工资计算建议基数、可编辑表格、确认后批量保存
- payroll.service 按批次月份匹配对应版本社保配置
- risk.service / seed.ts 同步更新
- 前端社保tab重构为版本管理+调整+试算
- 加班费计算三步流程、CSV导入、批次导入
- UI组件、Dashboard、合同、薪酬等页面优化
|
2026-07-23 16:32:46 +08:00 |
|
freedakgmail
|
2a09d31ccc
|
feat: 分页组件、Dashboard待办图标、归档与工资条解耦、总览数据优化
- 新增公用 Pagination 组件,Roster/Money/Dashboard 列表加分页
- Dashboard 待办按类型显示不同图标(合同/薪资/解聘/月度)
- 待办分为「风险提醒」「月度任务」两个顶层 tab
- 归档与工资条生成解耦:归档只锁定批次,工资条单独生成
- 工资条管理新增「从批次汇总生成」按钮
- Dashboard 总览优先从已归档批次 BatchEntry 汇总数据
- 新增工资条生成待办提醒,生成后自动标记完成
- 修复高风险统计只含 CONTRACT/TERMINATION 类型
- 修复月度任务去重逻辑覆盖 SALARY 类型
|
2026-07-23 13:42:28 +08:00 |
|
freedakgmail
|
820579e98d
|
init: AI HR Compliance Assistant
|
2026-07-23 12:34:43 +08:00 |
|