董国庆
2026-06-11 0aa66dcedffba1073dc51b1a3ab558cd1ffbf197
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
/**
 * 风险源映射配置
 * 用于将后端返回的 code 映射为对应的中文名称
 */
 
// 超危大工程映射
export const projectSuperDangerousTypeMap = {
  DEEP_FOUNDATION_PIT: '深基坑工程',
  TOOL_TEMPLATE: '工具式模板工程',
  TEMPLATE_SUPPORT: '模板支撑工程',
  STEEL_STRUCTURE_INSTALLATION: '钢结构安装满堂支撑体系',
  LIFTING_HOISTING: '起重吊装工程',
  CRANE_INSTALLATION_REMOVAL: '起重机械安装和拆卸工程',
  GROUND_STEEL_PIPE_SCAFFOLD: '落地式钢管脚手架工程',
  SUSPENDED_ASCENDING_SCAFFOLD: '附着式升降脚手架工程',
  CANTILEVER_SCAFFOLD: '悬挑式脚手架工程',
  HIGH_ALTITUDE_OPERATION_GONDOLA: '吊篮',
  DEMOLITION: '拆除工程',
  MINING_UNDERGROUND: '矿山法暗挖',
  SHIELD_TUNNELING: '盾构',
  PIPE_ROOFING: '顶管',
  BUILDING_CURTAIN_WALL: '建筑幕墙安装工程',
  STEEL_FRAME_TRUSS_TENSION: '钢结构网架和索膜结构安装工程',
  MANUAL_BORED_PILE: '人工挖孔桩工程',
  LARGE_STRUCTURE_MOVE: '大型结构整体顶升平移转体',
  UNDERWATER_OPERATION: '水下作业工程',
  FOUR_NEW_TECHNOLOGIES: '采用四新技术'
}
 
// 危大工程映射
export const projectDangerousTypeMap = {
  FOUNDATION_PIT: '基坑工程',
  FORMWORK_SUPPORT: '模板支撑工程',
  STEEL_STRUCTURE_INSTALLATION_SUPPORT_SYSTEM: '钢结构安装满堂支撑体系',
  HOISTING_AND_LIFTING: '起重吊装工程',
  CRANE_INSTALLATION: '起重机械进行安装的工程',
  CRANE_INSTALLATION_AND_DISMANTLING: '起重机械安装和拆卸工程',
  GROUND_PIPE_SCAFFOLD: '落地式钢管脚手架工程',
  SUSPENDED_SCAFFOLD: '附着式升降脚手架工程',
  CANTILEVER_SCAFFOLD: '悬挑式脚手架工程',
  HIGH_ALTITUDE_OPERATION_GONDOLA: '吊篮',
  UNLOADING_PLATFORM_OPERATION_PLATFORM: '卸料平台操作平台工程',
  IRREGULAR_SCAFFOLD: '异型脚手架工程',
  DEMOLITION: '拆除工程',
  BUILDING_CURTAIN_WALL_INSTALLATION: '建筑幕墙安装工程',
  STEEL_STRUCTURE_GRID_AND_MEMBRANE_STRUCTURE_INSTALLATION: '钢结构网架和索膜结构安装工程',
  MANUAL_BORED_PILE: '人工挖孔桩工程',
  PREFABRICATED_COMPONENT_INSTALLATION: '装配式建筑混凝土预制构件安装工程'
}
 
// 风险源映射
export const projectHazardSourceMap = {
  HIGH_ALTITUDE_OPERATION: '高处作业',
  FIRE_OPERATION: '动火作业',
  LARGE_CONCRETE_CONSTRUCTION: '大体积混凝土浇筑',
  LIMITED_SPACE_OPERATION: '有限空间作业',
  OCCUPY_CONSTRUCTION: '占道施工',
  SINGLE_PERSON_OPERATION: '单人操作及作业',
  SPACE_INTERSECTION_OPERATION: '空间交叉作业'
}
 
// 项目类型映射
export const projectTypeMapNew = {
  HOUSE_CONSTRUCTION: '房建工程',
  MUNICIPAL_ADMINISTRATION: '市政工程',
  FIXED_ASSETS: '固定资产'
}
 
// 项目用途类型映射
export const projectUsageTypeMapNew = {
  RESIDENTIAL: '住宅',
  COMMERCIAL: '商业',
  ROAD: '道路',
  BRIDGE: '桥梁',
  TUNNEL_WORKS: '隧道工程',
  RETAIL: '仓储',
  FOOD: '餐饮',
  EDUCATION: '教育',
  MEDICAL_BEAUTY: '医疗美容',
  ENTERTAINMENT: '娱乐',
  HOTEL: '酒店',
  REFIT: '翻新改造',
  PUBLIC_PLACE: '公共场所',
  ENERGY_STATION: '能源站',
  MULTI_FUNCTION_COMPLEX: '综合体'
}
export const planTypeMap = {
  SECURITY_CHECK: '安全检查',
  QUALITY_CHECK: '质量检查',
  COMPREHENSIVE_CHECK: '综合检查',
  EQUIPMENT_CHECK: '设备检查',
  OPERATION_CHECK: '运营检查'
}
export const errorLevelMap = {
  P1: '一级隐患',
  P2: '二级隐患',
  P3: '三级隐患',
  P4: '四级隐患'
}
 
export const errorReviewStateMap = {
  NOT_REFORMED: '未整改',
  PARTIAL_REFORMED: '部分整改',
  REFORMED: '已整改'
}
export const provinceArr = [
  { value: '110000', label: '北京' },
  { value: '120000', label: '天津' },
  { value: '130000', label: '河北省' },
  { value: '140000', label: '山西省' },
  { value: '150000', label: '内蒙古自治区' },
  { value: '210000', label: '辽宁省' },
  { value: '220000', label: '吉林省' },
  { value: '230000', label: '黑龙江省' },
  { value: '310000', label: '上海' },
  { value: '320000', label: '江苏省' },
  { value: '330000', label: '浙江省' },
  { value: '340000', label: '安徽省' },
  { value: '350000', label: '福建省' },
  { value: '360000', label: '江西省' },
  { value: '370000', label: '山东省' },
  { value: '410000', label: '河南省' },
  { value: '420000', label: '湖北省' },
  { value: '430000', label: '湖南省' },
  { value: '440000', label: '广东省' },
  { value: '450000', label: '广西壮族自治区' },
  { value: '460000', label: '海南省' },
  { value: '500000', label: '重庆' },
  { value: '510000', label: '四川省' },
  { value: '520000', label: '贵州省' },
  { value: '530000', label: '云南省' },
  { value: '540000', label: '西藏自治区' },
  { value: '610000', label: '陕西省' },
  { value: '620000', label: '甘肃省' },
  { value: '630000', label: '青海省' },
  { value: '640000', label: '宁夏回族自治区' },
  { value: '650000', label: '新疆维吾尔自治区' }
]
 
/**
 * 根据类型和 code 获取对应的中文名称
 * @param {string} type - 类型:'superDangerous' | 'dangerous' | 'hazardSource'
 * @param {string} code - 风险源代码
 * @returns {string} 中文名称,如果找不到则返回原 code
 */
export const getRiskSourceName = (type, code) => {
  const maps = {
    superDangerous: projectSuperDangerousTypeMap,
    dangerous: projectDangerousTypeMap,
    hazardSource: projectHazardSourceMap
  }
 
  const map = maps[type]
  return map ? (map[code] || code) : code
}
 
/**
 * 批量转换风险源数据
 * @param {Array} dataArray - 风险源数据数组
 * @param {string} type - 类型:'superDangerous' | 'dangerous' | 'hazardSource'
 * @param {string} riskScale - 风险规模名称
 * @returns {Array} 转换后的数据数组
 */
export const transformRiskSourceData = (dataArray, type, riskScale) => {
  if (!Array.isArray(dataArray)) return []
 
  return dataArray.map(item => {
    const content = getRiskSourceName(type, item)
    return {
      riskScale,
      content,
      status: '存在'
    }
  })
}