Files
ALL-teach_sys/frontend_能源/update_energy_interview_status_full.py

72 lines
2.6 KiB
Python
Raw Normal View History

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import json
import shutil
from datetime import datetime
def update_energy_interview_status_with_labels():
"""更新能源产业面试状态数据,包含流程标签和完整时间"""
# 备份原有数据
backup_file = f"src/data/interviewStatus.json.backup_{datetime.now().strftime('%Y%m%d_%H%M%S')}"
shutil.copy('src/data/interviewStatus.json', backup_file)
print(f"已创建备份文件: {backup_file}")
# 读取能源面试状态数据
with open('网页未导入数据/能源产业/能源岗位面试状态.json', 'r', encoding='utf-8') as f:
energy_status = json.load(f)
# 转换数据格式
converted_status = []
for item in energy_status:
# 构建阶段日期字段 - 包含流程标签和完整时间
stage = item['岗位内推流程']
flow_label = item.get('流程标签', '')
flow_time = item['流程时间'] # 保留完整时间 "2025/7/2 0:00"
# 映射流程阶段名称
stage_map = {
'HR评估': 'HR评估',
'面试': '面试',
'面试结果': '面试结果',
'Offer': 'Offer'
}
stage_name = stage_map.get(stage, stage)
# 构建显示格式:流程标签 | 阶段:时间
if flow_label:
stage_date_str = f"{flow_label} | {stage_name}{flow_time}"
else:
stage_date_str = f"{stage_name}{flow_time}"
# 创建转换后的记录
converted_item = {
"查询岗位名称": item['查询岗位名称'],
"阶段日期": stage_date_str,
"面试状态": item['内容'],
"流程标签": flow_label, # 保留流程标签字段
"流程时间": flow_time # 保留完整时间字段
}
converted_status.append(converted_item)
# 写入转换后的数据
with open('src/data/interviewStatus.json', 'w', encoding='utf-8') as f:
json.dump(converted_status, f, ensure_ascii=False, indent=2)
print(f"已成功更新面试状态数据:")
print(f"- 能源产业面试状态记录数: {len(converted_status)}")
print(f"- 备份文件: {backup_file}")
# 显示前5条记录
print("\n已更新的面试状态示例:")
for i, item in enumerate(converted_status[:5], 1):
print(f"{i}. {item['查询岗位名称']}:")
print(f" 阶段日期: {item['阶段日期']}")
print(f" 面试状态: {item['面试状态']}")
if __name__ == "__main__":
update_energy_interview_status_with_labels()