lixiaojun
2024-11-16 366e8053d77db67dee65a31e3510d14901f14e11
WinFrmUI/Yw.WinFrmUI.Bimface.Core/bimface/js/LogicCalcuCustomLabel.js
@@ -18,7 +18,7 @@
//添加业务计算自定义标签项
function addLogicCalcuCustomLabel(item) {
    let content = document.createElement('div');
    content.className = 'w-fit rounded-md space-y-1.5 text-nowrap flex flex-col';
    content.className = 'w-fit rounded-md text-nowrap flex';
    content.style.color = 'white';
    content.style.backgroundColor = '#32d3a6';
    content.style.padding = '5px';
@@ -31,6 +31,7 @@
    config.opacity = 1;
    config.objectId = item.id;
    config.id = "LogicCalcuCustomLabel" + item.id;
    config.visibleDistance = item.distance;
    _logicCalcuCustomLabelIds.add(config.id);
    let boundingBox = _modeler.getBoundingBoxById(item.id);
@@ -44,6 +45,7 @@
    let customItem = new Glodon.Bimface.Plugins.Drawable.CustomItem(config);
    _drawableContainer.addItem(customItem);
    //customItem.setVisibleDistance(item.distance);
}
//获取业务计算数据内容html
@@ -52,14 +54,42 @@
        return '';
    }
    let html = '';
    data.forEach((d) => {
        html += `
        <div class="flex justify-between  items-center">
        <span>${d.name}</span>
        <span class="p-x-8">${d.value}</span>
        <span>${d.unit}</span>
        </div>`;
    });
    // 单元格高
    const cellHeight = 18;
    // 中间的值列与两边间距
    const middleOffset = 2;
    const nameColListHtml = data
        .map((item) => `<span class="flex-items-center justify-start" style="height: ${cellHeight}px">${item.name}</span>`)
        .join('');
    // 名称列
    const nameColHtml = `
         <div class="flex flex-col">
                ${nameColListHtml}
         </div>
    `;
    const valueColListHtml = data
        .map((item) => `<span class="flex-items-center justify-center" style="height: ${cellHeight}px">${item.value}</span>`)
        .join('');
    // 值列,值列需要与两边有间距
    const valueColHtml = `
         <div class="flex flex-col" style="margin-left: ${middleOffset}px; margin-right: ${middleOffset}px">
                ${valueColListHtml}
         </div>
    `;
    const unitColListHtml = data
        .map((item) => `<span class="flex-items-center justify-end" style="height: ${cellHeight}px">${item.unit}</span>`)
        .join('');
    // 单位列
    const unitColHtml = `
         <div class="flex flex-col">
                ${unitColListHtml}
         </div>
    `;
    html += `${nameColHtml}${valueColHtml}${unitColHtml}`;
    return html;
}
@@ -74,3 +104,9 @@
    }
}