|
@@ -113,6 +113,8 @@
|
|
|
:dilogTitie="dilogTitie"
|
|
|
:dilogRightData="dilogRightData"
|
|
|
@done="done"
|
|
|
+ :titleUnusual="titleUnusual"
|
|
|
+ :dilogLeftTitle = "dilogLeftTitle"
|
|
|
>
|
|
|
</inoutDialog>
|
|
|
</div>
|
|
@@ -320,31 +322,56 @@ const bothSide = (data) => {
|
|
|
rightList.value = formatArr.splice(0);
|
|
|
};
|
|
|
//圆圈数字的位置endDom, options,posit,keys,startDom
|
|
|
-const dilogLeftData = ref(null);
|
|
|
+const dilogLeftTitle = ref(null);//弹窗左侧白色
|
|
|
const dilogRightData = ref(null);
|
|
|
const dilogData = ref(null);
|
|
|
-const dilogTitie = ref(null);
|
|
|
-const circelSet = (endDom, options, posit, keys, startDom, keyMiddle) => {
|
|
|
+const dilogTitie = ref(null);//输入的标题等数据
|
|
|
+const titleUnusual =ref('input');//区分点击输入还是输出
|
|
|
+const circelSet = (endDom, options, posit, keys, startDom, keyMiddle, mark) => {
|
|
|
let elmButton = endDom.appendChild(document.createElement("div"));
|
|
|
// 阻止点击事件冒泡
|
|
|
elmButton.addEventListener("click", async (event) => {
|
|
|
event.stopPropagation();
|
|
|
- const ResInput = await getiedInputs({
|
|
|
- title: "虚端子—详细信息",
|
|
|
- s_ied_name: keys.target_ied_name,
|
|
|
- m_ied_name: keys.source_ied_name,
|
|
|
- m_ctrlid: "",
|
|
|
- s_ctrlid: keys.ctrl_id,
|
|
|
- scd_id: scdIdValue,
|
|
|
- });
|
|
|
- dilogData.value = ResInput.data;
|
|
|
- const resRla = await scdIedRelation({
|
|
|
- scd_id: scdIdValue,
|
|
|
- ied_name: keys.target_ied_name,
|
|
|
- reset: 1,
|
|
|
- });
|
|
|
- dilogTitie.value = keys;
|
|
|
- dilogRightData.value = resRla.data;
|
|
|
+ console.log("keys", keys, keyMiddle);
|
|
|
+ if (mark == "middle") {
|
|
|
+ const ResInput = await getiedInputs({
|
|
|
+ title: "虚端子—详细信息",
|
|
|
+ s_ied_name: keyMiddle.ref_ied_name,
|
|
|
+ m_ied_name: keyMiddle.ied_name,
|
|
|
+ m_ctrlid: keys.node_id,
|
|
|
+ s_ctrlid: "",
|
|
|
+ scd_id: scdIdValue,
|
|
|
+ });
|
|
|
+ const resRla = await scdIedRelation({
|
|
|
+ scd_id: scdIdValue,
|
|
|
+ ied_name: keyMiddle.ref_ied_name,
|
|
|
+ reset: 1,
|
|
|
+ });
|
|
|
+ dilogData.value = ResInput.data;
|
|
|
+ dilogRightData.value = resRla.data;
|
|
|
+ dilogTitie.value = keyMiddle;
|
|
|
+ dilogLeftTitle.value = keys;
|
|
|
+ titleUnusual.value ='inout'
|
|
|
+ } else {
|
|
|
+ const ResInput = await getiedInputs({
|
|
|
+ title: "虚端子—详细信息",
|
|
|
+ s_ied_name: keys.target_ied_name,
|
|
|
+ m_ied_name: keys.source_ied_name,
|
|
|
+ m_ctrlid: "",
|
|
|
+ s_ctrlid: keys.ctrl_id,
|
|
|
+ scd_id: scdIdValue,
|
|
|
+ });
|
|
|
+ const resRla = await scdIedRelation({
|
|
|
+ scd_id: scdIdValue,
|
|
|
+ ied_name: keys.target_ied_name,
|
|
|
+ reset: 1,
|
|
|
+ });
|
|
|
+ dilogData.value = ResInput.data;
|
|
|
+ dilogRightData.value = resRla.data;
|
|
|
+ dilogTitie.value = keys;
|
|
|
+ titleUnusual.value ='input'
|
|
|
+ }
|
|
|
+
|
|
|
circleOpen.value = true;
|
|
|
});
|
|
|
elmButton.className = "circel-name";
|
|
@@ -369,11 +396,13 @@ const circelSet = (endDom, options, posit, keys, startDom, keyMiddle) => {
|
|
|
// 计算dom1和dom2矩形的中间y坐标。
|
|
|
const dom1MiddleY = dom1Rect.top + dom1Rect.height / 2;
|
|
|
const dom2MiddleY = dom2Rect.top + dom2Rect.height / 2;
|
|
|
- elmButton.style.top =
|
|
|
- dom1MiddleY + (dom2MiddleY - dom1MiddleY) / 2 - dom1Rect.top - 8 + "px";
|
|
|
if (posit == "leftMiddle") {
|
|
|
+ elmButton.style.top =
|
|
|
+ dom1MiddleY + (dom2MiddleY - dom1MiddleY) / 2 - dom1Rect.top + "px";
|
|
|
elmButton.style.right = -74 + "px";
|
|
|
} else {
|
|
|
+ elmButton.style.top =
|
|
|
+ dom1MiddleY + (dom2MiddleY - dom1MiddleY) / 2 - dom1Rect.top + "px";
|
|
|
elmButton.style.left = -74 + "px";
|
|
|
}
|
|
|
}
|
|
@@ -419,6 +448,7 @@ const circelSet = (endDom, options, posit, keys, startDom, keyMiddle) => {
|
|
|
};
|
|
|
const done = (emits) => {
|
|
|
circleOpen.value = emits;
|
|
|
+ dilogData.value =null;
|
|
|
};
|
|
|
let lineData = ref([]);
|
|
|
|
|
@@ -531,7 +561,15 @@ const setLeaderline2 = () => {
|
|
|
lineStyle.color = "red";
|
|
|
}
|
|
|
line = new LeaderLine(endDom, startDom, lineStyle);
|
|
|
- circelSet(endDom, options2, "leftMiddle", key, startDom, key2);
|
|
|
+ circelSet(
|
|
|
+ endDom,
|
|
|
+ options2,
|
|
|
+ "leftMiddle",
|
|
|
+ key2,
|
|
|
+ startDom,
|
|
|
+ key,
|
|
|
+ "middle"
|
|
|
+ );
|
|
|
leaderLines2.value.push(line);
|
|
|
}
|
|
|
}
|
|
@@ -561,7 +599,15 @@ const setLeaderline2 = () => {
|
|
|
lineStyle2.color = "red";
|
|
|
}
|
|
|
line2 = new LeaderLine(startDom, endDom, lineStyle2);
|
|
|
- circelSet(endDom, options3, "rightMiddle", key, startDom, key2);
|
|
|
+ circelSet(
|
|
|
+ endDom,
|
|
|
+ options3,
|
|
|
+ "rightMiddle",
|
|
|
+ key2,
|
|
|
+ startDom,
|
|
|
+ key,
|
|
|
+ "middle"
|
|
|
+ );
|
|
|
leaderLines2.value.push(line2);
|
|
|
}
|
|
|
}
|
|
@@ -605,11 +651,6 @@ const newPositionLine2 = (diffline) => {
|
|
|
const hiddenLine2 = () => {
|
|
|
if (props.isPhoto == "photo" && !circleOpen.value) {
|
|
|
const elmWrapper = document.getElementById("wrapper");
|
|
|
- console.log(
|
|
|
- "first",
|
|
|
- elmWrapper,
|
|
|
- document.body.querySelectorAll("body .leader-line")
|
|
|
- );
|
|
|
// 移动 line
|
|
|
document.body.querySelectorAll("body .leader-line").forEach((node) => {
|
|
|
elmWrapper.appendChild(node);
|
|
@@ -617,7 +658,6 @@ const hiddenLine2 = () => {
|
|
|
elmWrapper.style.transform = "none";
|
|
|
var rectWrapper = elmWrapper.getBoundingClientRect();
|
|
|
// Move to the origin of coordinates as the document
|
|
|
- console.log("rectWrapper2", rectWrapper);
|
|
|
elmWrapper.style.transform = `translate(${
|
|
|
(rectWrapper.left + window.scrollY) * -1
|
|
|
}px, ${(rectWrapper.top + window.scrollX) * -1}px)`;
|