|
@@ -58,6 +58,11 @@ const preloadAllImages = async (chartsImages) => {
|
|
|
return imageMap;
|
|
return imageMap;
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+const isValidImageUrl = (url) => typeof url === "string" && url.trim();
|
|
|
|
|
+
|
|
|
|
|
+const hasImages = (imageTagData, tag) =>
|
|
|
|
|
+ Array.isArray(imageTagData[tag]) && imageTagData[tag].length > 0;
|
|
|
|
|
+
|
|
|
// 生成 Word 文件
|
|
// 生成 Word 文件
|
|
|
export const copyFileDocx = async (fieldInfo, chartsImages) => {
|
|
export const copyFileDocx = async (fieldInfo, chartsImages) => {
|
|
|
try {
|
|
try {
|
|
@@ -124,7 +129,9 @@ export const copyFileDocx = async (fieldInfo, chartsImages) => {
|
|
|
const imageTagData = {};
|
|
const imageTagData = {};
|
|
|
for (const [tag, urlList] of Object.entries(chartsImages)) {
|
|
for (const [tag, urlList] of Object.entries(chartsImages)) {
|
|
|
if (Array.isArray(urlList)) {
|
|
if (Array.isArray(urlList)) {
|
|
|
- imageTagData[tag] = urlList.map((url) => ({ image: url }));
|
|
|
|
|
|
|
+ imageTagData[tag] = urlList
|
|
|
|
|
+ .filter(isValidImageUrl)
|
|
|
|
|
+ .map((url) => ({ image: url }));
|
|
|
} else {
|
|
} else {
|
|
|
// console.warn(`⚠️ 无效的 urlList: ${tag}`, urlList);
|
|
// console.warn(`⚠️ 无效的 urlList: ${tag}`, urlList);
|
|
|
imageTagData[tag] = []; // 或 throw error
|
|
imageTagData[tag] = []; // 或 throw error
|
|
@@ -153,160 +160,149 @@ export const copyFileDocx = async (fieldInfo, chartsImages) => {
|
|
|
engineTypeList: chartsImages.engineTypeList,
|
|
engineTypeList: chartsImages.engineTypeList,
|
|
|
dataTime: chartsImages.dataTime,
|
|
dataTime: chartsImages.dataTime,
|
|
|
"show-zn-techcn-replace-tags-data_integrity_minute-generalFiles":
|
|
"show-zn-techcn-replace-tags-data_integrity_minute-generalFiles":
|
|
|
- imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-data_integrity_minute-generalFiles"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
|
|
+ hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-data_integrity_minute-generalFiles",
|
|
|
|
|
+ ),
|
|
|
"show-zn-techcn-replace-tags-data_integrity_second-generalFiles":
|
|
"show-zn-techcn-replace-tags-data_integrity_second-generalFiles":
|
|
|
- imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-data_integrity_second-generalFiles"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
|
|
+ hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-data_integrity_second-generalFiles",
|
|
|
|
|
+ ),
|
|
|
"show-zn-techcn-replace-tags-production_indicator_unit-generalFiles":
|
|
"show-zn-techcn-replace-tags-production_indicator_unit-generalFiles":
|
|
|
- imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-production_indicator_unit-generalFiles"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
- "show-zn-techcn-replace-tags-yaw_error-generalFiles1": imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-yaw_error-generalFiles1"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
- "show-zn-techcn-replace-tags-yaw_error-diagramRelations": imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-yaw_error-diagramRelations"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
- "show-zn-techcn-replace-tags-fault_all-generalFiles": imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-fault_all-generalFiles"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
|
|
+ hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-production_indicator_unit-generalFiles",
|
|
|
|
|
+ ),
|
|
|
|
|
+ "show-zn-techcn-replace-tags-yaw_error-generalFiles1": hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-yaw_error-generalFiles1",
|
|
|
|
|
+ ),
|
|
|
|
|
+ "show-zn-techcn-replace-tags-yaw_error-diagramRelations": hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-yaw_error-diagramRelations",
|
|
|
|
|
+ ),
|
|
|
|
|
+ "show-zn-techcn-replace-tags-fault_all-generalFiles": hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-fault_all-generalFiles",
|
|
|
|
|
+ ),
|
|
|
"show-zn-techcn-replace-tags-temperature_large_components_hig-generalFiles":
|
|
"show-zn-techcn-replace-tags-temperature_large_components_hig-generalFiles":
|
|
|
- imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-temperature_large_components_hig-generalFiles"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
|
|
+ hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-temperature_large_components_hig-generalFiles",
|
|
|
|
|
+ ),
|
|
|
"show-zn-techcn-replace-tags-temperature_large_components_low-generalFiles":
|
|
"show-zn-techcn-replace-tags-temperature_large_components_low-generalFiles":
|
|
|
- imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-temperature_large_components_low-generalFiles"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
|
|
+ hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-temperature_large_components_low-generalFiles",
|
|
|
|
|
+ ),
|
|
|
"show-zn-techcn-replace-tags-temperature_large_components_adriven-generalFiles":
|
|
"show-zn-techcn-replace-tags-temperature_large_components_adriven-generalFiles":
|
|
|
- imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-temperature_large_components_adriven-generalFiles"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
|
|
+ hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-temperature_large_components_adriven-generalFiles",
|
|
|
|
|
+ ),
|
|
|
"show-zn-techcn-replace-tags-temperature_large_components_undriven-generalFiles":
|
|
"show-zn-techcn-replace-tags-temperature_large_components_undriven-generalFiles":
|
|
|
- imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-temperature_large_components_undriven-generalFiles"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
|
|
+ hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-temperature_large_components_undriven-generalFiles",
|
|
|
|
|
+ ),
|
|
|
"show-zn-techcn-replace-tags-temperature_large_components_tem_deviation-diagramRelations":
|
|
"show-zn-techcn-replace-tags-temperature_large_components_tem_deviation-diagramRelations":
|
|
|
- imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-temperature_large_components_tem_deviation-diagramRelations"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
|
|
+ hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-temperature_large_components_tem_deviation-diagramRelations",
|
|
|
|
|
+ ),
|
|
|
"show-zn-techcn-replace-tags-pitch_generator_speed-diagramRelations":
|
|
"show-zn-techcn-replace-tags-pitch_generator_speed-diagramRelations":
|
|
|
- imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-pitch_generator_speed-diagramRelations"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
- "show-zn-techcn-replace-tags-power_curve-generalFiles": imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-power_curve-generalFiles"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
|
|
+ hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-pitch_generator_speed-diagramRelations",
|
|
|
|
|
+ ),
|
|
|
|
|
+ "show-zn-techcn-replace-tags-power_curve-generalFiles": hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-power_curve-generalFiles",
|
|
|
|
|
+ ),
|
|
|
"show-zn-techcn-replace-tags-power_scatter_2D-diagramRelations":
|
|
"show-zn-techcn-replace-tags-power_scatter_2D-diagramRelations":
|
|
|
- imageTagData["zn-techcn-replace-tags-power_scatter_2D-diagramRelations"]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
- "show-zn-techcn-replace-tags-cp-generalFiles": imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-cp-generalFiles"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
- "show-zn-techcn-replace-tags-cp_trend-diagramRelations": imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-cp_trend-diagramRelations"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
- "show-zn-techcn-replace-tags-tsr-generalFiles": imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-tsr-generalFiles"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
- "show-zn-techcn-replace-tags-tsr_trend-diagramRelations": imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-tsr_trend-diagramRelations"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
- "show-zn-techcn-replace-tags-min_pitch-diagramRelations": imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-min_pitch-diagramRelations"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
- "show-zn-techcn-replace-tags-power_curve-generalFiles": imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-power_curve-generalFiles"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
|
|
+ hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-power_scatter_2D-diagramRelations",
|
|
|
|
|
+ ),
|
|
|
|
|
+ "show-zn-techcn-replace-tags-cp-generalFiles": hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-cp-generalFiles",
|
|
|
|
|
+ ),
|
|
|
|
|
+ "show-zn-techcn-replace-tags-cp-diagramRelations": hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-cp-diagramRelations",
|
|
|
|
|
+ ),
|
|
|
|
|
+ "show-zn-techcn-replace-tags-cp_trend-diagramRelations": hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-cp_trend-diagramRelations",
|
|
|
|
|
+ ),
|
|
|
|
|
+ "show-zn-techcn-replace-tags-tsr-generalFiles": hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-tsr-generalFiles",
|
|
|
|
|
+ ),
|
|
|
|
|
+ "show-zn-techcn-replace-tags-tsr-diagramRelations": hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-tsr-diagramRelations",
|
|
|
|
|
+ ),
|
|
|
|
|
+ "show-zn-techcn-replace-tags-tsr_trend-diagramRelations": hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-tsr_trend-diagramRelations",
|
|
|
|
|
+ ),
|
|
|
|
|
+ "show-zn-techcn-replace-tags-min_pitch-diagramRelations": hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-min_pitch-diagramRelations",
|
|
|
|
|
+ ),
|
|
|
"show-zn-techcn-replace-tags-power_scatter_2D-diagramRelations":
|
|
"show-zn-techcn-replace-tags-power_scatter_2D-diagramRelations":
|
|
|
- imageTagData["zn-techcn-replace-tags-power_scatter_2D-diagramRelations"]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
|
|
+ hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-power_scatter_2D-diagramRelations",
|
|
|
|
|
+ ),
|
|
|
// "": imageTagData[""] ? true : false,
|
|
// "": imageTagData[""] ? true : false,
|
|
|
//功率散点图
|
|
//功率散点图
|
|
|
"show-zn-techcn-replace-tags-power_scatter-diagramRelations":
|
|
"show-zn-techcn-replace-tags-power_scatter-diagramRelations":
|
|
|
- imageTagData["zn-techcn-replace-tags-power_scatter-diagramRelations"]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
|
|
+ hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-power_scatter-diagramRelations",
|
|
|
|
|
+ ),
|
|
|
"show-zn-techcn-replace-tags-power_scatter":
|
|
"show-zn-techcn-replace-tags-power_scatter":
|
|
|
- imageTagData["zn-techcn-replace-tags-power_scatter-diagramRelations"] ||
|
|
|
|
|
- imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-power_scatter_2D-diagramRelations"
|
|
|
|
|
- ] ||
|
|
|
|
|
- imageTagData["zn-techcn-replace-tags-power_curve-generalFiles"]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
|
|
+ hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-power_scatter-diagramRelations",
|
|
|
|
|
+ ) ||
|
|
|
|
|
+ hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-power_scatter_2D-diagramRelations",
|
|
|
|
|
+ ) ||
|
|
|
|
|
+ hasImages(imageTagData, "zn-techcn-replace-tags-power_curve-generalFiles"),
|
|
|
"show-zn-techcn-replace-tags-fault_all-generalFiles&show-zn-techcn-replace-tags-temperature_large_components_hig-generalFiles":
|
|
"show-zn-techcn-replace-tags-fault_all-generalFiles&show-zn-techcn-replace-tags-temperature_large_components_hig-generalFiles":
|
|
|
- imageTagData["zn-techcn-replace-tags-fault_all-generalFiles"] &&
|
|
|
|
|
- imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-temperature_large_components_hig-generalFiles"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
|
|
+ hasImages(imageTagData, "zn-techcn-replace-tags-fault_all-generalFiles") &&
|
|
|
|
|
+ hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-temperature_large_components_hig-generalFiles",
|
|
|
|
|
+ ),
|
|
|
"show-zn-techcn-replace-tags-yaw_error_density-diagramRelations":
|
|
"show-zn-techcn-replace-tags-yaw_error_density-diagramRelations":
|
|
|
- imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-yaw_error_density-diagramRelations"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
|
|
+ hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-yaw_error_density-diagramRelations",
|
|
|
|
|
+ ),
|
|
|
"show-zn-techcn-replace-tags-temperature_environment-generalFiles":
|
|
"show-zn-techcn-replace-tags-temperature_environment-generalFiles":
|
|
|
- imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-temperature_environment-generalFiles"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
- "show-zn-techcn-replace-tags-pitch_power-diagramRelations": imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-pitch_power-diagramRelations"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
- "show-zn-techcn-replace-tags-speed_power-generalFiles": imageTagData[
|
|
|
|
|
- "zn-techcn-replace-tags-speed_power-generalFiles"
|
|
|
|
|
- ]
|
|
|
|
|
- ? true
|
|
|
|
|
- : false,
|
|
|
|
|
|
|
+ hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-temperature_environment-generalFiles",
|
|
|
|
|
+ ),
|
|
|
|
|
+ "show-zn-techcn-replace-tags-pitch_power-diagramRelations": hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-pitch_power-diagramRelations",
|
|
|
|
|
+ ),
|
|
|
|
|
+ "show-zn-techcn-replace-tags-speed_power-generalFiles": hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-speed_power-generalFiles",
|
|
|
|
|
+ ),
|
|
|
|
|
+ "show-zn-techcn-replace-tags-speed_power-diagramRelations": hasImages(
|
|
|
|
|
+ imageTagData,
|
|
|
|
|
+ "zn-techcn-replace-tags-speed_power-diagramRelations",
|
|
|
|
|
+ ),
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
// 渲染 Word 模板
|
|
// 渲染 Word 模板
|