const content = "{\"end_standby_soc\":[30,30,1],\"end_standby_v_max\":[3600,3650,1],\"end_standby_v_min\":[2900,2800,1],\"end_standby_v_range\":[15,20,1],\"ch_end_soc\":[100,100,1],\"disch_end_soc\":[0,0,1],\"ch_i_ac\":[150,156,1],\"ch_p_ac\":[150,186,1],\"ch_i_dc\":[150,160,1],\"ch_p_dc\":[150,196,1],\"ch_t_igbt_max\":[70,75,1],\"ch_standby_v_range\":[15,20,1],\"disch_standby_v_range\":[15,20,1],\"ch_end_v_min\":[2900,2800,1],\"disch_end_v_max\":[3500,3650,1],\"ch_end_t_min\":[16,15,1],\"disch_end_t_max\":[14,15,1],\"pre_v_max\":[3200,3300,1],\"pre_v_min\":[3200,3100,1],\"pre_v_range\":[9,10,1],\"pre_t_max\":[32,35,1],\"pre_t_min\":[16,15,1],\"pre_t_range\":[4,5,1],\"ch_end_v_max\":[3640,3650,1],\"disch_end_v_min\":[3200,3100,1],\"ch_end_v_range\":[259,300,1],\"disch_end_v_range\":[259,300,1],\"ch_end_t_max\":[32,35,1],\"disch_end_t_max\":[32,35,1],\"ch_end_t_range\":[4,5,1],\"disch_end_t_range\":[4,5,1],\"ch_full_i\": [NaN, 380.0, 0], \"disch_full_i\": [76.5, 340.0, 0], \"ch_high_v\": [3403.7, 3650.0, 1], \"disch_low_v\": [2799.3, 2700.0, 1], \"ch_max_diff_v\": [11.8, 250.0, 1], \"disch_max_diff_v\": [140.6, 250.0, 1], \"ch_high_t\": [29.9, 40.0, 1], \"disch_high_t\": [29.9, 40.0, 1], \"ch_max_diff_t\": [2.0, 5.0, 1], \"disch_max_diff_t\": [2.0, 5.0, 1], \"run_high_v\": [3403.7, 3650.0, 1], \"run_low_v\": [2795.9, 2700.0, 1], \"run_high_t\": [29.9, 40.0, 1], \"run_low_t\": [18.9, 10.0, 1], \"run_max_diff_v\": [145.0, 250.0, 1], \"run_max_diff_t\": [2.0, 5.0, 1], \"run_max_p\": [188.8, 185.0, 1], \"run_max_rise_t\": [6.1, 10.0, 1], \"rated_p_run_time\": [91.9, 120.0, 0], \"data_jump_count\": [0, 10.0, 1], \"test_int_count\": [2, 1.0, 0], \"running_curve_path\": \"/A1JB037FPHA03224400423/20221111_140916/A1JB037FPHA03224400423_运行过程.jpg\", \"cell_v_curve_path\": \"/A1JB037FPHA03224400423/20221111_140916/A1JB037FPHA03224400423_电芯电压.jpg\", \"cell_t_curve_path\": \"/A1JB037FPHA03224400423/20221111_140916/A1JB037FPHA03224400423_电芯温度.jpg\", \"cell_v_outlier_curve_path\": \"/A1JB037FPHA03224400423/20221111_140916/A1JB037FPHA03224400423_电压离群电芯.jpg\", \"cell_t_outlier_curve_path\": \"/A1JB037FPHA03224400423/20221111_140916/A1JB037FPHA03224400423_温度离群电芯.jpg\", \"cell_t_range_curve_path\": \"/A1JB037FPHA03224400423/20221111_140916/A1JB037FPHA03224400423_电芯温度极差.jpg\", \"cell_v_range_curve_path\": \"/A1JB037FPHA03224400423/20221111_140916/A1JB037FPHA03224400423_电芯电压极差.jpg\"}"
let jsonContent;
if (content.includes("NaN")) {
jsonContent = JSON.parse(content.replaceAll("NaN", "-9527"));
} else {
jsonContent = JSON.parse(content);
}
// console.log(jsonContent)
let baseData = [
{
"title": "电芯指标",
"index": 0,
"dataSource": {
"ch_full_i": {
"dataName": "满充电量",
"dataIndex": 1,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "kWh",
"min": 350,
"max": 420,
"groupType": "满充过程",
"rules": [
{
"required": true,
"message": "满充电量不能为空",
"trigger": "blur"
}
]
},
"disch_full_i": {
"dataName": "满放电量",
"dataIndex": 2,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "kWh",
"min": 300,
"max": 380,
"groupType": "满放过程",
"rules": [
{
"required": true,
"message": "满放电量不能为空",
"trigger": "blur"
}
]
},
"ch_end_v_max": {
"dataName": "充电末端最高电压",
"dataIndex": 3,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "mV",
"min": 3500,
"max": 3750,
"groupType": "满充过程",
"rules": [
{
"required": true,
"message": "充电末端最高电压不能为空",
"trigger": "blur"
}
]
},
"disch_end_v_min": {
"dataName": "放电末端最低电压",
"dataIndex": 4,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "mV",
"min": 2000,
"max": 2900,
"groupType": "满放过程",
"rules": [
{
"required": true,
"message": "放电末端最低电压不能为空",
"trigger": "blur"
}
]
},
"ch_end_v_range": {
"dataName": "充电末端最大压差",
"dataIndex": 5,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "mV",
"min": 100,
"max": 500,
"groupType": "满充过程",
"rules": [
{
"required": true,
"message": "充电末端最大压差不能为空",
"trigger": "blur"
}
]
},
"disch_end_v_range": {
"dataName": "放电末端最大压差",
"dataIndex": 6,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "mV",
"min": 100,
"max": 500,
"groupType": "满放过程",
"rules": [
{
"required": true,
"message": "放电末端最大压差不能为空",
"trigger": "blur"
}
]
},
"ch_end_t_max": {
"dataName": "充电末端最高温度",
"dataIndex": 7,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "℃",
"min": 30,
"max": 50,
"groupType": "满充过程",
"rules": [
{
"required": true,
"message": "充电末端最高温度不能为空",
"trigger": "blur"
}
]
},
"disch_end_t_max": {
"dataName": "放电末端最高温度",
"dataIndex": 8,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "℃",
"min": 30,
"max": 50,
"groupType": "满放过程",
"rules": [
{
"required": true,
"message": "放电末端最高温度不能为空",
"trigger": "blur"
}
]
},
"ch_end_t_range": {
"dataName": "充电末端最大温差",
"dataIndex": 9,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "℃",
"min": 2,
"max": 10,
"groupType": "满充过程",
"rules": [
{
"required": true,
"message": "充电末端最大温差不能为空",
"trigger": "blur"
}
]
},
"disch_end_t_range": {
"dataName": "放电末端最大温差",
"dataIndex": 10,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "℃",
"min": 2,
"max": 10,
"groupType": "满放过程",
"rules": [
{
"required": true,
"message": "放电末端最大温差不能为空",
"trigger": "blur"
}
]
},
"run_high_v": {
"dataName": "运行期最高电压",
"dataIndex": 11,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "mV",
"min": 3500,
"max": 3750,
"groupType": "其他",
"rules": [
{
"required": true,
"message": "运行期最高电压不能为空",
"trigger": "blur"
}
]
},
"run_low_v": {
"dataName": "运行期最低电压",
"dataIndex": 12,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "mV",
"min": 2000,
"max": 2900,
"groupType": "其他",
"rules": [
{
"required": true,
"message": "运行期最低电压不能为空",
"trigger": "blur"
}
]
},
"run_high_t": {
"dataName": "运行期最高温度",
"dataIndex": 13,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "℃",
"min": 30,
"max": 50,
"groupType": "其他",
"rules": [
{
"required": true,
"message": "运行期最高温度不能为空",
"trigger": "blur"
}
]
},
"run_low_t": {
"dataName": "运行期最低温度",
"dataIndex": 14,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "℃",
"min": 5,
"max": 25,
"groupType": "其他",
"rules": [
{
"required": true,
"message": "运行期最低温度不能为空",
"trigger": "blur"
}
]
},
"run_max_diff_v": {
"dataName": "运行期最大压差",
"dataIndex": 15,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "mV",
"min": 100,
"max": 500,
"groupType": "其他",
"rules": [
{
"required": true,
"message": "运行期最大压差不能为空",
"trigger": "blur"
}
]
},
"run_max_diff_t": {
"dataName": "运行期最大温差",
"dataIndex": 16,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "℃",
"min": 2,
"max": 10,
"groupType": "其他",
"rules": [
{
"required": true,
"message": "运行期最大温差不能为空",
"trigger": "blur"
}
]
},
"run_max_rise_t": {
"dataName": "运行期最大温升",
"dataIndex": 18,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "℃",
"min": 5,
"max": 15,
"groupType": "其他",
"rules": [
{
"required": true,
"message": "运行期最大温升不能为空",
"trigger": "blur"
}
]
},
"ch_standby_v_range": {
"dataName": "满充后静置压差",
"dataIndex": 29,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "mV",
"min": 1,
"max": 100,
"groupType": "满充过程",
"rules": [
{
"required": true,
"message": "满充后静置压差不能为空",
"trigger": "blur"
}
]
},
"disch_standby_v_range": {
"dataName": "满放后静置压差",
"dataIndex": 30,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "mV",
"min": 1,
"max": 100,
"groupType": "满放过程",
"rules": [
{
"required": true,
"message": "满放后静置压差不能为空",
"trigger": "blur"
}
]
},
"ch_end_v_min": {
"dataName": "充电末端最低电压",
"dataIndex": 31,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "mV",
"min": 2700,
"max": 2900,
"groupType": "满充过程",
"rules": [
{
"required": true,
"message": "充电末端最低电压不能为空",
"trigger": "blur"
}
]
},
"disch_end_v_max": {
"dataName": "放电末端最高电压",
"dataIndex": 32,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "mV",
"min": 3500,
"max": 3700,
"groupType": "满放过程",
"rules": [
{
"required": true,
"message": "放电末端最高电压不能为空",
"trigger": "blur"
}
]
},
"ch_end_t_min": {
"dataName": "充电末端最低温度",
"dataIndex": 33,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "℃",
"min": 5,
"max": 25,
"groupType": "满充过程",
"rules": [
{
"required": true,
"message": "充电末端最低温度不能为空",
"trigger": "blur"
}
]
},
"disch_end_t_min": {
"dataName": "放电末端最低温度",
"dataIndex": 34,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "℃",
"min": 5,
"max": 25,
"groupType": "满放过程",
"rules": [
{
"required": true,
"message": "放电末端最低温度不能为空",
"trigger": "blur"
}
]
},
"pre_v_max": {
"dataName": "调试前最高电压",
"dataIndex": 35,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "mV",
"min": 3000,
"max": 3400,
"groupType": "调试前",
"rules": [
{
"required": true,
"message": "调试前最高电压不能为空",
"trigger": "blur"
}
]
},
"pre_v_min": {
"dataName": "调试前最低电压",
"dataIndex": 36,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "mV",
"min": 3000,
"max": 3400,
"groupType": "调试前",
"rules": [
{
"required": true,
"message": "调试前最低电压不能为空",
"trigger": "blur"
}
]
},
"pre_v_range": {
"dataName": "调试前压差",
"dataIndex": 37,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "mV",
"min": 100,
"max": 500,
"groupType": "调试前",
"rules": [
{
"required": true,
"message": "调试前压差不能为空",
"trigger": "blur"
}
]
},
"pre_t_max": {
"dataName": "调试前最高温度",
"dataIndex": 38,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "℃",
"min": 10,
"max": 40,
"groupType": "调试前",
"rules": [
{
"required": true,
"message": "调试前最高温度不能为空",
"trigger": "blur"
}
]
},
"pre_t_min": {
"dataName": "调试前最低温度",
"dataIndex": 39,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "℃",
"min": 10,
"max": 40,
"groupType": "调试前",
"rules": [
{
"required": true,
"message": "调试前最低温度不能为空",
"trigger": "blur"
}
]
},
"pre_t_range": {
"dataName": "调整前温差",
"dataIndex": 40,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "℃",
"min": 1,
"max": 10,
"groupType": "调试前",
"rules": [
{
"required": true,
"message": "调调整前温差不能为空",
"trigger": "blur"
}
]
},
"end_standby_soc": {
"dataName": "老化结束静置SOC",
"dataIndex": 41,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "%",
"min": 25,
"max": 35,
"groupType": "测试后",
"rules": [
{
"required": true,
"message": "老化结束静置SOC不能为空",
"trigger": "blur"
}
]
},
"end_standby_v_max": {
"dataName": "老化结束静置最大电压",
"dataIndex": 42,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "mV",
"min": 3500,
"max": 3700,
"groupType": "测试后",
"rules": [
{
"required": true,
"message": "老化结束静置最大电压不能为空",
"trigger": "blur"
}
]
},
"end_standby_v_min": {
"dataName": "老化结束静置最小电压",
"dataIndex": 43,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "mV",
"min": 2700,
"max": 2900,
"groupType": "测试后",
"rules": [
{
"required": true,
"message": "老化结束静置最小电压不能为空",
"trigger": "blur"
}
]
},
"end_standby_v_range": {
"dataName": "老化结束静置压差",
"dataIndex": 44,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "mV",
"min": 100,
"max": 500,
"groupType": "测试后",
"rules": [
{
"required": true,
"message": "老化结束静置压差不能为空",
"trigger": "blur"
}
]
},
"ch_end_soc": {
"dataName": "充电末端SOC",
"dataIndex": 45,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "%",
"min": 95,
"max": 100,
"groupType": "满充过程",
"rules": [
{
"required": true,
"message": "充电末端SOC不能为空",
"trigger": "blur"
}
]
},
"disch_end_soc": {
"dataName": "放电末端SOC",
"dataIndex": 46,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "%",
"min": 0,
"max": 5,
"groupType": "满放过程",
"rules": [
{
"required": true,
"message": "放电末端SOC不能为空",
"trigger": "blur"
}
]
}
}
},
{
"title": "运行指标",
"index": 1,
"dataSource": {
"run_max_p": {
"dataName": "运行期最大功率",
"dataIndex": 17,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "kW",
"min": 100,
"max": 200,
"groupType": "其他",
"rules": [
{
"required": true,
"message": "运行期最大功率不能为空",
"trigger": "blur"
}
]
},
"rated_p_run_time": {
"dataName": "额定功率运行时间",
"dataIndex": 19,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "min",
"min": 120,
"max": 300,
"groupType": "其他",
"rules": [
{
"required": true,
"message": "额定功率运行时间不能为空",
"trigger": "blur"
}
]
},
"data_jump_count": {
"dataName": "数据跳变次数",
"dataIndex": 20,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "次",
"min": 5,
"max": 15,
"groupType": "其他",
"rules": [
{
"required": true,
"message": "数据跳变次数不能为空",
"trigger": "blur"
}
]
},
"test_int_count": {
"dataName": "测试中断次数",
"dataIndex": 21,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "次",
"min": 1,
"max": 3,
"groupType": "其他",
"rules": [
{
"required": true,
"message": "测试中断次数不能为空",
"trigger": "blur"
}
]
},
"ch_i_ac": {
"dataName": "充电交流侧电流",
"dataIndex": 24,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "A",
"min": 100,
"max": 200,
"groupType": "充电工况",
"rules": [
{
"required": true,
"message": "充电交流侧电流不能为空",
"trigger": "blur"
}
]
},
"ch_p_ac": {
"dataName": "充电交流侧功率",
"dataIndex": 25,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "kW",
"min": 100,
"max": 200,
"groupType": "充电工况",
"rules": [
{
"required": true,
"message": "充电交流侧功率不能为空",
"trigger": "blur"
}
]
},
"ch_i_dc": {
"dataName": "充电直流侧电流",
"dataIndex": 26,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "A",
"min": 100,
"max": 200,
"groupType": "充电工况",
"rules": [
{
"required": true,
"message": "充电直流侧电流不能为空",
"trigger": "blur"
}
]
},
"ch_p_dc": {
"dataName": "充电直流侧功率",
"dataIndex": 27,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "kW",
"min": 100,
"max": 200,
"groupType": "充电工况",
"rules": [
{
"required": true,
"message": "充电直流侧功率不能为空",
"trigger": "blur"
}
]
},
"ch_t_igbt_max": {
"dataName": "充电IGBT最高温度",
"dataIndex": 28,
"testData": 0,
"testThreshold": 0,
"dataResult": "不通过",
"unit": "℃",
"min": 30,
"max": 80,
"groupType": "充电工况",
"rules": [
{
"required": true,
"message": "充电IGBT最高温度不能为空",
"trigger": "blur"
}
]
}
}
},
{
"title": "水机指标",
"index": 2,
"dataSource": {
"run_max_wcu_t_range": {
"dataName": "水机进出口最大温差",
"dataIndex": 22,
"testData": 1,
"testThreshold": 1,
"dataResult": "不通过",
"unit": "℃",
"min": 1,
"max": 5,
"groupType": "水机工况",
"rules": [
{
"required": true,
"message": "水机进出口最大温差不能为空",
"trigger": "blur"
}
]
},
"run_max_wcu_pr_range": {
"dataName": "水机进出口最大压差",
"dataIndex": 23,
"testData": 0.1,
"testThreshold": 0.1,
"dataResult": "不通过",
"unit": "bar",
"min": 0.1,
"max": 0.5,
"groupType": "水机工况",
"rules": [
{
"required": true,
"message": "水机进出口最大压差不能为空",
"trigger": "blur"
}
]
}
}
}
];
//遍历content 数据和 baseData
const dataSource = [{}];
// console.log("dataSource",dataSource)
for (let index in baseData) { //本地配置数据
// console.log("index",index)
const itemBase = baseData[index]
console.log(itemBase)
// for (const dataSource_key in itemBase) { //
// console.log("dataSource_key",dataSource_key)
// if (Object.hasOwnProperty.call(itemBase, dataSource_key)) {
// if (Object.hasOwnProperty.call(jsonContent, dataSource_key)) {
// const element = jsonContent[dataSource_key];
// console.log(element)
// }
// }
// }
// // // console.log(item)
// // let hasGroupType = false;
// // for (let i in dataSource) {
// // const item_i = dataSource[i]
// // for (const dataSource_key in itemBase) {
// // if (item.groupType == item_i.groupType) {
// // item_i.groupList.push(item)
// // hasGroupType = true;
// // }
// // }
// // }
// // if (!hasGroupType) {
// // dataSource.push({ 'groupType': item.groupType, 'groupList': [item] })
// // // console.log(dataSource)
// // }
}
// console.log(JSON.stringify(dataSource))
console