田源
2023-07-26 9675f1491ef23c4c6f69cb83cbf6de3fd6dac61b
Source/UBCS-WEB/src/components/Tree/attrCrud.vue
@@ -1,33 +1,33 @@
<template>
  <div>
    <div style="display: flex;flex-wrap: wrap;" v-if="this.crudArrayFlag">
    <div style="display: flex;flex-wrap: wrap;" v-if="this.crudArrayFlag"class="app">
      <!--新增-->
      <el-button v-if="attrEditVisible == false && attrFlagChiledren==false && crudLCStatus=='Editing'" size="small" type="primary" icon="el-icon-plus" @click="busineHandle">添加 {{ msg }}</el-button>
      <el-button v-if="attrEditVisible == false && attrFlagChiledren==false && (!checkStatus || crudLCStatus=='Editing')" size="small" type="primary" icon="el-icon-plus" @click="busineHandle">添加 {{ msg }}</el-button>
      <!--        全屏编辑-->
      <el-button v-if=" attrEditVisible == false && attrFlagChiledren==false && crudLCStatus=='Editing'" size="small" @click="fullscreenHandle" icon="el-icon-full-screen">全屏编辑</el-button>
      <el-button v-if=" attrEditVisible == false && attrFlagChiledren==false && (!checkStatus || crudLCStatus=='Editing')" size="small" @click="fullscreenHandle" icon="el-icon-full-screen">全屏编辑</el-button>
      <!--        验证规则-->
      <el-button v-if="crudLCStatus=='Editing'" icon="el-icon-info" size="small" @click="ruleAddHandler">验证规则</el-button>
      <el-button v-if="!checkStatus || crudLCStatus=='Editing'" icon="el-icon-info" size="small" @click="ruleAddHandler">验证规则</el-button>
      <!--        属性分组-->
      <el-button v-if="crudLCStatus=='Editing'" icon="el-icon-menu" size="small" @click="attrVisibleHandle">属性分组</el-button>
      <el-button v-if="!checkStatus || crudLCStatus=='Editing'" icon="el-icon-menu" size="small" @click="attrVisibleHandle">属性分组</el-button>
      <!--        分类注入-->
      <el-button v-if="crudLCStatus=='Editing'" icon="el-icon-magic-stick" size="small" @click="injectBtn">分类注入</el-button>
      <el-button v-if="!checkStatus || crudLCStatus=='Editing'" icon="el-icon-magic-stick" size="small" @click="injectBtn">分类注入</el-button>
        <!--    组合规则-->
        <el-button v-if="crudLCStatus=='Editing'" size="small" @click="isShowHandler">组合规则</el-button>
        <el-button v-if="!checkStatus || crudLCStatus=='Editing'" size="small" @click="isShowHandler">组合规则</el-button>
      <!--        枚举注入-->
      <el-button v-if="crudLCStatus=='Editing'" size="small" @click="enmuVisHandle">枚举注入</el-button>
      <el-button v-if="!checkStatus || crudLCStatus=='Editing'" size="small" @click="enmuVisHandle">枚举注入</el-button>
      <!--    级联属性-->
      <el-button v-if="crudLCStatus=='Editing'" size="small" @click="CascadeHandle">级联属性</el-button>
      <el-button v-if="!checkStatus|| crudLCStatus=='Editing'" size="small" @click="CascadeHandle">级联属性</el-button>
      <!--    预览排序-->
        <el-button size="small" @click="orderHandle" icon="el-icon-arrow-down">预览排序</el-button>
      <!--    保存-->
      <el-button v-if="crudLCStatus=='Editing'" size="small" @click="addsHandler" icon="el-icon-check">保存</el-button>
      <el-button v-if="!checkStatus|| crudLCStatus=='Editing'" size="small" @click="addsHandler" icon="el-icon-check">保存</el-button>
      <!--    删除-->
      <el-button v-if="crudLCStatus=='Editing'" size="small" @click="CrudRemove" icon="el-icon-delete">删除</el-button>
      <el-button v-if="!checkStatus || crudLCStatus=='Editing'" size="small" @click="CrudRemove" icon="el-icon-delete">删除</el-button>
      <!--    重置-->
      <el-button size="small" @click="reset" icon="el-icon-refresh-right">重置</el-button>
      <!--    同步到其他模板-->
@@ -72,11 +72,6 @@
          <el-table :data="tableData" style="width: 100%" @cell-click="handleCellClick"
                    @selection-change="handleSelectionChange">
            <!-- 渲染表格列及传参 -->
            <el-table-column label="序号" type="index"></el-table-column>
            <el-table-column
              type="selection"
              width="55">
            </el-table-column>
            <el-table-column label="选项值" prop="key">
              <template slot-scope="{ row }">
                <!-- 编辑和展示逻辑 -->
@@ -245,7 +240,7 @@
    </div>
    <el-table :data="ProData"
              style="width: 100%"
              height="750"
              height="400"
              @cell-click="handleCellClicks"
              @select="selectHandle"
              @selection-change="selectionChange"
@@ -318,6 +313,10 @@
    crudOid: {
      type: String,
      default: ''
    },
    checkStatus:{
      type: Boolean,
      default: false
    },
    crudLCStatus: {
      type: String,
@@ -1461,7 +1460,7 @@
          citem.oid = ''
          this.busineAddList=Object.assign(citem, {
            orderNum: ++ordernum,
            attributedatatype: citem.attrDataType,
            attributeDataType: citem.attrDataType,
            attributeDataTypeText: this.vciFieldTypeMap[citem.attrDataType],
            controlLength: citem.attributeLength,
            valueArea: citem.range,
@@ -1477,7 +1476,8 @@
            sortAttrFlag: 'false',
            queryAttrFlag: 'true',
            seniorQueryAttrFlag: 'true',
            attrTableWidth: 120
            attrTableWidth: 120,
            ts:""
          })
          this.ProData.push(JSON.parse(JSON.stringify(this.busineAddList)))
        }
@@ -1487,7 +1487,8 @@
    },
    //业务类型选择
    businessSelect(selection, row) {
      this.busineSelectList = selection
      this.busineSelectList = selection;
      console.log(selection)
    },
    // 从业务类型中选择数据弹窗
    busineHandle() {
@@ -1587,6 +1588,10 @@
        this.isShowformulaEdit = true;
      }else if(column.property == 'enumString'){
        this.enumVisible=true;
        if(this.attrSelectList[0].enumString != ""){
          this.tableData=JSON.parse(this.attrSelectList[0].enumString)
          return
        }
      }else if(column.property == 'parentCode'){
        gridCodeClassifyTemplateAttr({
          'conditionMap[classifyTemplateOid]': this.Formlist[0].oid,
@@ -1630,6 +1635,11 @@
        this.$message.warning('请选择一条模板属性')
      } else if (this.attrSelectList.length === 1) {
        this.enumVisible = true;
        if(this.attrSelectList[0].enumString != ""){
          this.tableData=JSON.parse(this.attrSelectList[0].enumString)
          return
        }
      }
    },
    enumBeforeClose(done){
@@ -1735,18 +1745,20 @@
      if(this.CurrentCell){
        this.$set(this.CurrentCell, "classifyInvokeLevelName", data);
        this.$set(this.CurrentCell, "classifyInvokeLevel", JSON.stringify(this.injectOption));
        this.injectHandleReset()
      }else {
        this.$set(this.attrSelectList[0], 'classifyInvokeLevelName', data);
        this.$set(this.attrSelectList[0], 'classifyInvokeLevel', JSON.stringify(this.injectOption));
        this.injectHandleReset()
      }
      this.injectVisible = false
    },
    //分类注入清空
    injectHandleReset() {
      this.injectOption.type = "";
      this.injectOption.set = "";
      this.injectOption.change = "";
      this.injectOption.injectNum = "";
      this.injectOption.type = "分类名称";
      this.injectOption.set = "最小层";
      this.injectOption.change = "是";
      this.injectOption.injectNum = "0";
    },
    // 分类注入取消
    injectRemove() {
@@ -1851,7 +1863,9 @@
</script>
<style scoped lang="scss" >
/deep/ .el-button {
  margin: 0 10px 10px 0;
.app {
   /deep/ .el-button {
   margin: 0 10px 10px 0;
   }
}
</style>