wangting
2023-08-25 660454e318a57cc82811908389cd4056fbfce1f7
Source/UBCS-WEB/src/components/code-dialog-page/formulaEditor.vue
@@ -5,16 +5,16 @@
    append-to-body
    :visible.sync="isShowformulaEdit"
    @close="closeFormulaEdit"
    width="78%"
    style="height: 150vh; margin-top: -13vh; overflow: hidden">
    <div style="overflow-y: auto; height: 80vh">
    width="75%"
    class="avue-dialog avue-dialog--top" top="-3%"
    style="height: 100vh;">
    <div>
      <el-row>
        <!-- 左侧公式内容 -->
        <el-col :span="14" style="overflow: hidden">
          <el-card
            class="box-card"
            style="height: 33vh; overflow-y: auto; overflow-x: auto">
            style="height: 29.5vh; overflow-y: auto; overflow-x: auto;margin-right: 10px">
            <div slot="header" class="clearfix">
              <span style="font-size: medium">公式内容</span>
              <el-button
@@ -35,8 +35,8 @@
            <div class="text item">
              <el-input
                type="textarea"
                :rows="5"
                style="width: 560px"
                :rows="6"
                style="width: 100%"
                v-model="formulaContent"
              ></el-input>
            </div>
@@ -46,7 +46,8 @@
        <el-col :span="10">
          <el-card
            class="box-card formula-box-card"
            style="height: 35vh;">
            data-v-49729759
            style="height: 29.5vh;">
            <div slot="header" class="clearfix">
              <span style="font-size: medium">运算符</span>
            </div>
@@ -215,11 +216,10 @@
      </el-row>
      <el-row>
        <!-- 左侧公式选择区域 -->
        <el-col :span="14" style="overflow: hidden">
        <el-col :span="14" style="overflow: hidden;">
          <el-card
            class="box-card"
            style="height: 40vh; overflow-y: auto; overflow-x: auto"
          >
            style="height: 35vh; overflow-y: auto; overflow-x: auto;margin-right: 10px">
            <div slot="header" class="clearfix">
              <span style="font-size: medium">公式选择</span>
            </div>
@@ -234,7 +234,7 @@
                  >
                    <el-table-column prop="formula" width="300">
                    </el-table-column>
                    <el-table-column prop="desc" width="300"> </el-table-column>
                    <el-table-column prop="desc"> </el-table-column>
                  </el-table>
                </el-tab-pane>
@@ -247,7 +247,7 @@
                  >
                    <el-table-column prop="formula" width="300">
                    </el-table-column>
                    <el-table-column prop="desc" width="300"> </el-table-column>
                    <el-table-column prop="desc"> </el-table-column>
                  </el-table>
                </el-tab-pane>
@@ -260,7 +260,7 @@
                  >
                    <el-table-column prop="formula" width="300">
                    </el-table-column>
                    <el-table-column prop="desc" width="300"> </el-table-column>
                    <el-table-column prop="desc"> </el-table-column>
                  </el-table>
                </el-tab-pane>
@@ -273,7 +273,7 @@
                  >
                    <el-table-column prop="formula" width="300">
                    </el-table-column>
                    <el-table-column prop="desc" width="300"> </el-table-column>
                    <el-table-column prop="desc"> </el-table-column>
                  </el-table>
                </el-tab-pane>
@@ -286,7 +286,7 @@
                  >
                    <el-table-column prop="formula" width="300">
                    </el-table-column>
                    <el-table-column prop="desc" width="300"> </el-table-column>
                    <el-table-column prop="desc" > </el-table-column>
                  </el-table>
                </el-tab-pane>
              </el-tabs>
@@ -297,7 +297,7 @@
        <el-col :span="10" style="overflow: hidden">
          <el-card
            class="box-card"
            style="height: 40vh; overflow-y: auto; overflow-x: auto"
            style="height: 35vh; overflow-y: auto; overflow-x: auto"
          >
            <div slot="header" class="clearfix">
              <span style="font-size: medium">变量</span>
@@ -311,9 +311,9 @@
                    :show-header="false"
                    style="width: 100%"
                  >
                    <el-table-column prop="formula" width="40">
                    <el-table-column prop="formula" width="300">
                    </el-table-column>
                    <el-table-column prop="desc" width="100"> </el-table-column>
                    <el-table-column prop="desc"> </el-table-column>
                  </el-table>
                </el-tab-pane>
                <el-tab-pane label="系统变量" name="second">
@@ -323,9 +323,9 @@
                    :show-header="false"
                    style="width: 100%"
                  >
                    <el-table-column prop="formula" width="150">
                    <el-table-column prop="formula" width="300">
                    </el-table-column>
                    <el-table-column prop="desc" width="150"> </el-table-column>
                    <el-table-column prop="desc"> </el-table-column>
                  </el-table>
                </el-tab-pane>
              </el-tabs>
@@ -337,11 +337,20 @@
  </el-dialog>
</template>
  <script>
export default {
  name: "formulaEditor",
  props: {
    // 对话框显示隐藏控制
    visible: {
        type: "Boolean",
        default: false,
    },
    componentRuleText:{
      type:String,
      default: ""
    },
    //本场景变量
    thisSceneTableData: {
      type: Array,
@@ -353,7 +362,7 @@
  },
  data() {
    return {
      isShowformulaEdit: false, //公式编辑框对话框显示控制
      isShowformulaEdit: this.visible, //公式编辑框对话框显示控制
      formulaContent: '', //公式编辑框内容,方便值的回传
      activeName: 'first', //当前活动的tab
      activeNameAttr: 'first', //变量中的当前活动tab
@@ -638,6 +647,16 @@
      ],
    };
  },
  watch: {
      // 监听父组件传的窗口显示隐藏的值,以及值的回填
      visible() {
        this.isShowformulaEdit = this.visible;
        this.formulaContent=this.componentRuleText || '';
      },
  },
  mounted() {
  },
  methods: {
    //双击添加公式内容
@@ -652,6 +671,7 @@
    //关闭时清空上次公式内容
    closeFormulaEdit(){
      this.resetFormulaContent();
      this.$emit('update:visible',false);
    },
    //编辑完成公式内容回显并关闭对话框
    saveFormulaContent(){
@@ -661,22 +681,23 @@
          return;
      }
      //公式内容回显
      this.$emit('updateFormulaContent', this.formulaContent) // 触发update:data将子组件值传递给父组件
      this.isShowformulaEdit = false;
      // 触发update:data将子组件值传递给父组件
      this.$emit('updateFormulaContent', this.formulaContent)
      this.isShowformulaEdit = false;
    },
  },
};
</script>
<style>
  .formula-box-card > .el-card__body {
<style scoped>
  .formula-box-card >>> .el-card__body {
    padding: 0px;
    height: 85%;
    width: 100%;
  }
  .formula-editor-total {
    /* margin-top: 3px; */
    height: 100%;
@@ -704,11 +725,11 @@
    height: auto;
    justify-content: space-between;
    align-items: center;
   }
   }
  .formula-editor-btn-sm {
    width: 4.5vw;
    height: 4vh;
    width: 68px;
    height: 34px;
    margin-left: 10px;
    text-align: center;
    line-height: 0;
@@ -718,4 +739,3 @@
  }
</style>