- 新增OperationDashboard.vue全屏大屏组件 - 添加6个核心KPI指标卡片: 进水总量/出水总量/产销差率/营收额/平均水质/报警次数 - 实现6个ECharts图表: 供水趋势/水质分布/报警统计/管网空间/设备状态/营收分析 - 创建静态HTML版本operation-dashboard.html,使用CDN加载Vue3/ECharts/Element Plus - 更新路由配置,添加/operation路径支持 - 修复nextTick导入问题,优化build脚本 🚧 开发者: bot_dev1 📝 任务: #38 [BI] 运营仪表盘 + 供水专题大屏
49 lines
1.7 KiB
JavaScript
49 lines
1.7 KiB
JavaScript
import defined from "../Core/defined.js";
|
|
|
|
/**
|
|
* Return the `PropertyTextureProperty` from the given `StructuralMetadata`
|
|
* that matches the given description.
|
|
*
|
|
* If the given structural metadata is `undefined`, then `undefined` is returned.
|
|
*
|
|
* Otherwise, this method will check all the property textures in the given
|
|
* structural metadata.
|
|
*
|
|
* If it finds a property texture that has a class with an `_id` that matches
|
|
* the given name, and that contains a property for the given property name, then
|
|
* this property is returned.
|
|
*
|
|
* Otherwise, `undefined` is returned
|
|
*
|
|
* @param {StructuralMetadata} structuralMetadata The structural metadata
|
|
* @param {string} className The name of the metadata class
|
|
* @param {string} propertyName The name of the metadata property
|
|
* @returns {PropertyTextureProperty|undefined}
|
|
* @private
|
|
*/
|
|
function getMetadataProperty(structuralMetadata, className, propertyName) {
|
|
if (!defined(structuralMetadata)) {
|
|
return undefined;
|
|
}
|
|
const propertyTextures = structuralMetadata.propertyTextures;
|
|
for (const propertyTexture of propertyTextures) {
|
|
const metadataClass = propertyTexture.class;
|
|
if (metadataClass.id === className) {
|
|
const properties = propertyTexture.properties;
|
|
const property = properties[propertyName];
|
|
if (defined(property)) {
|
|
return property;
|
|
}
|
|
}
|
|
}
|
|
// Note: This could check for property attributes in a similar
|
|
// way. But since picking arbitrary property attributes via the
|
|
// frame buffer is not supported yet, returning "undefined" here
|
|
// causes the picking to bail out early and safely when no
|
|
// property texture was found.
|
|
// See https://github.com/CesiumGS/cesium/issues/12225
|
|
return undefined;
|
|
}
|
|
|
|
export default getMetadataProperty;
|