fix: 优化物模型保存多次提交

This commit is contained in:
XieYongHong 2023-07-13 14:03:56 +08:00
parent 5a845a0e1a
commit 816551c394
2 changed files with 25 additions and 25 deletions

View File

@ -27,30 +27,30 @@ const filterProductMetadata = (data: any[], productMetaData: any[]) => {
): ProductItem | DeviceInstance => {
if (!data) return data;
const metadata = JSON.parse(data.metadata || '{}') as DeviceMetadata;
let productMetaData
// let productMetaData
if ((data as DeviceInstance).productMetadata) {
productMetaData = JSON.parse((data as DeviceInstance).productMetadata)
}
if (productMetaData) {
if (productMetaData.properties && productMetaData.properties.length) {
metadata.properties = filterProductMetadata(item, productMetaData.properties)
}
if (productMetaData.functions && productMetaData.functions.length) {
metadata.functions = filterProductMetadata(item, productMetaData.functions)
}
if (productMetaData.events && productMetaData.events.length) {
metadata.events = filterProductMetadata(item, productMetaData.events)
}
if (productMetaData.tags && productMetaData.tags.length) {
metadata.tags = filterProductMetadata(item, productMetaData.tags)
}
} else {
metadata[type] = item as any
}
console.log(metadata, type)
metadata[type] = metadata[type].sort((a, b) => b?.sortsIndex - a?.sortsIndex) as any[]
// if ((data as DeviceInstance).productMetadata) {
// productMetaData = JSON.parse((data as DeviceInstance).productMetadata)
// }
//
// if (productMetaData) {
// if (productMetaData.properties && productMetaData.properties.length) {
// metadata.properties = filterProductMetadata(item, productMetaData.properties)
// }
// if (productMetaData.functions && productMetaData.functions.length) {
// metadata.functions = filterProductMetadata(item, productMetaData.functions)
// }
// if (productMetaData.events && productMetaData.events.length) {
// metadata.events = filterProductMetadata(item, productMetaData.events)
// }
// if (productMetaData.tags && productMetaData.tags.length) {
// metadata.tags = filterProductMetadata(item, productMetaData.tags)
// }
// } else {
// metadata[type] = item as any
// }
// console.log(metadata, type)
metadata[type] = (item || []).sort((a, b) => b?.sortsIndex - a?.sortsIndex) as any[]
data.metadata = JSON.stringify(metadata);
onEvent?.(data.metadata)
return data;

View File

@ -3837,8 +3837,8 @@ jetlinks-ui-components@^1.0.23:
jetlinks-ui-components@^1.0.24:
version "1.0.24"
resolved "http://registry.jetlinks.cn/jetlinks-ui-components/-/jetlinks-ui-components-1.0.24.tgz#373dae73258e87ae45f6bca76e9667f522c30baa"
integrity sha512-U23jN50Mas3ZJsnYRo3oSVNxO22B681y4E8oYKGfg2ZKMRkEh224O/GDJkxrraOMR6L+TDlPWNkrVb/jom2kfQ==
resolved "http://registry.jetlinks.cn/jetlinks-ui-components/-/jetlinks-ui-components-1.0.24.tgz#969a901be0214d3e631f02e537c56e0abc2e48ab"
integrity sha512-t0XkbxldcKjXW/xPYYbBU8YEfK+RK01LYqS/n+wfMq3pPRksegBOt7gnsvJD6kgEpSNf/uzlnV9MWFOgQJFphg==
dependencies:
"@vueuse/core" "^9.12.0"
"@vueuse/router" "^9.13.0"