wangting
2024-10-18 07ba00bbc814f67050c46f028c5b56966d269c46
处理树懒加载抖动,生命周期非编辑状态只读
已修改7个文件
181 ■■■■■ 文件已修改
Source/plt-web/plt-web-ui/src/App.vue 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-ui/src/components/flow-cycle/components/ContextMenu.vue 46 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-ui/src/components/flow-cycle/components/Toolbar.vue 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-ui/src/components/flow-cycle/flowchartEditor.vue 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/businessType/index.vue 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/lifeCycle/index.vue 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/linkType/index.vue 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-ui/src/App.vue
@@ -125,4 +125,21 @@
.el-dialog__footer{
  border-top: 1px solid #e9e7e7;
}
/***按钮框****/
.headerCon {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 5px;
  .el-button {
    min-width: 60px;
    padding-left: 9.5px;
    margin-left: 0;
    margin-right: 5px;
    margin-bottom: 5px;
  }
}
/***隐藏树懒加载时节点上的loading,防止节点抖动*****/
.el-tree .el-tree-node__loading-icon{
  display: none !important;
}
</style>
Source/plt-web/plt-web-ui/src/components/flow-cycle/components/ContextMenu.vue
@@ -48,32 +48,34 @@
  background: #fff;
  border-radius: 4px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  padding: 5px;
}
::v-deep {
  .contextMenu .command.disable .item {
    color: rgba(0, 0, 0, 0.25);
    cursor: auto;
  }
.contextMenu .command.disable .item {
  color: rgba(0, 0, 0, 0.25);
  cursor: auto;
}
  .contextMenu .command.disable .item:hover {
    background: #fff;
  }
.contextMenu .command.disable .item:hover {
  background: #fff;
}
  .contextMenu .item {
    display: flex;
    align-items: center;
    padding: 5px 12px;
    cursor: pointer;
    transition: all 0.3s;
    user-select: none;
  }
.contextMenu .item {
  display: flex;
  align-items: center;
  padding: 5px 12px;
  cursor: pointer;
  transition: all 0.3s;
  user-select: none;
}
  .contextMenu .item:hover {
    background: #e6f7ff;
  }
.contextMenu .item:hover {
  background: #e6f7ff;
}
.contextMenu .item i {
  margin-right: 8px;
  margin-top: 3px;
  .contextMenu .item i {
    margin-right: 8px;
    margin-top: 3px;
  }
}
</style>
Source/plt-web/plt-web-ui/src/components/flow-cycle/components/Toolbar.vue
@@ -17,19 +17,15 @@
      <!-- <toolbar-button command="toFront" icon="to-front" text="向上一层" /> -->
      <!-- <toolbar-button command="addGroup" icon="group" text="编组" /> -->
      <!-- <toolbar-button command="unGroup" icon="ungroup" text="取消编组" /> -->
      <toolbar-button command="selectAll" icon="select-all" text="全选"/>
      <toolbar-button command="multiSelect" icon="select" text="框选"/>
      <toolbar-button v-show="disabledBtn" command="selectAll" icon="select-all" text="全选"/>
      <toolbar-button v-shof="disabledBtn" command="multiSelect" icon="select" text="框选"/>
      <div v-if="disabledBtn" class="split"></div>
      <toolbar-button  command="delete" text="删除"/>
      <toolbar-button  command="clear" icon="clear" text="清空画布"/>
      <toolbar-button v-show="disabledBtn" command="delete" text="删除"/>
      <toolbar-button v-show="disabledBtn" command="clear" icon="clear" text="清空画布"/>
    </template>
    <template>
      <div class="split"></div>
      <toolbar-button
        command="downloadImage"
        icon="image"
        text="下载图像"
      />
      <toolbar-button command="downloadImage" icon="image" text="下载图像"/>
    </template>
    <!--    <el-button>{{this.$store}}</el-button>-->
    <el-button :disabled="!disabledBtn" icon="el-icon-check" plain size="small" type="success"
Source/plt-web/plt-web-ui/src/components/flow-cycle/flowchartEditor.vue
@@ -23,6 +23,7 @@
              <p>{{ item.name }}: {{ item.value }}</p>
            </template>
          </div>
          <div v-if="!disabledBtn" class="mask"></div>
        </div>
        <div  class="vfe-chart-panel">
@@ -129,7 +130,6 @@
    },
    // 处理图表数据更改的事件
    onAfterChange(e) {
      console.log(e)
      try {
        // if('edit' === this.$store.state.flow.type){
        //   this.$refs.flowChart.propsAPI.remove(e.item);
@@ -172,7 +172,6 @@
        this.currentSelectedLine = currentEdge;
      }
    },
    // 下载图片
    _downloadImage(data, filename = "flowchart.png") {
      const a = document.createElement("a");
@@ -264,6 +263,14 @@
          margin: 0;
        }
      }
      .mask{
        opacity: 0.3;
        position: absolute;
        width: 100%;
        height: 100%;
        left: 0;
        top:0;
      }
    }
    .vfe-chart-sidebar {
Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/businessType/index.vue
@@ -1656,38 +1656,6 @@
  .el-form-item .el-select {
    width: 100%;
  }
  .headerCon {
    .el-button {
      width: 82px;
    }
  }
}
.headerCon {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 5px;
  .el-button + .el-button {
    margin-left: 5px;
  }
  .el-button {
    margin-top: 5px;
  }
}
.headerCon > .el-button:nth-child(4) {
  margin-left: 0;
}
.headerCon > .el-button:nth-child(7) {
  margin-left: 0;
}
.headerCon > .el-button:nth-child(10) {
  margin-left: 0;
}
.descBox {
Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/lifeCycle/index.vue
@@ -1,6 +1,6 @@
<template>
  <el-container>
    <el-aside width="15.7%">
    <el-aside>
      <basic-container>
        <div ref="TreeBox" style="height: calc(100vh - 144px);!important;">
          <div class="headerCon">
@@ -14,8 +14,7 @@
            </el-button>
            <el-button icon="el-icon-upload2" plain size="small" type="primary" @click="uploadClickHandler">导入
            </el-button>
            <el-button class="smallBtn" plain size="small" type="primary"
                       @click="checkViewClickHandler">查看使用范围
            <el-button class="smallBtn" plain size="small" type="primary" @click="checkViewClickHandler">查看使用范围
            </el-button>
          </div>
          <!-- 左侧树 -->
@@ -421,35 +420,7 @@
  .el-scrollbar__wrap {
    overflow: auto !important;
  }
  .headerCon{
    .el-button {
      width: 65px;
      padding-left: 9.5px;
    }
  }
}
.headerCon {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 5px;
  .el-button + .el-button {
    margin-left: 5px;
  }
  .el-button {
    margin-top: 5px;
  }
}
.headerCon > .el-button:nth-child(4) {
  margin-left: 0;
}
//.headerCon > .el-button:nth-child(6) {
//  margin-left: 0;
//}
.smallBtn {
  width: 77px !important;
Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/linkType/index.vue
@@ -1154,34 +1154,6 @@
  .el-form-item .el-select {
    width: 100%;
  }
  .headerCon {
    .el-button {
      width: 82px;
    }
  }
}
.headerCon {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 5px;
  .el-button + .el-button {
    margin-left: 5px;
  }
  .el-button {
    margin-top: 5px;
  }
}
.headerCon > .el-button:nth-child(4) {
  margin-left: 0;
}
.headerCon > .el-button:nth-child(7) {
  margin-left: 0;
}
.dialogForm {