田源
2023-08-01 cf05a8e00ac6847e1ec768756ddf8a7e22b04c1d
Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue
@@ -16,7 +16,7 @@
            <div style="display: flex; margin-top: 10px">
              <el-button plain size="small" type="primary" @click="Enable">启用</el-button>
              <el-button plain size="small" type="primary" @click="Deactivate">停用</el-button>
              <el-button plain size="small" type="primary" @click="ImportExcel">导入</el-button>
              <el-button plain size="small" type="primary" @click.native="ImportExcel">导入</el-button>
              <el-button plain size="small" type="primary" @click="ExportExcel">导出</el-button>
            </div>
          </div>
@@ -58,7 +58,7 @@
        </el-dialog>
        <!--        修改对话框-->
        <el-dialog :visible.sync="TreeEditFormVisible" append-to-body title="修改分类">
          <classifyTreeform ref="childForm" :loneTreeNewForm="TreeList" :nodeList="nodeList" :flag="'edit'" @MasterHandler="MasterHandler" :Editclose=" ()=>{TreeEditFormVisible=false}" :TreeFlag="TreeFlagCode" ::nodeClickList="nodeClickList" @referTreeForm="referTreeForm" @flushed="flushed"></classifyTreeform>
          <classifyTreeform ref="childForm" :loneTreeNewForm="TreeList" :nodeList="nodeList" :flag="'edit'" @MasterHandler="MasterHandler" :Editclose=" ()=>{TreeEditFormVisible=false}" :TreeFlag="TreeFlagCode" :nodeClickList="nodeClickList" @referTreeForm="referTreeForm" @flushed="flushed"></classifyTreeform>
        </el-dialog>
        <avue-tree ref="tree" v-model="CloneTreeAvueform" v-loading="loading" :data="CloneTreedata" :defaultExpandAll="false"
                   :option="Treeoption"
@@ -312,8 +312,8 @@
            </div>
          </div>
        </el-dialog>
<!--        <BatchImport v-if="batchImportData.visible" v-bind="batchImportData" :visible.sync="batchImportData.visible" >-->
<!--        </BatchImport>-->
<!--        导出-->
          <ThemeImport :visible.sync="ThemeImportVisible" :codeClassifyOid="this.codeClassifyOid"></ThemeImport>
      </basic-container>
    </el-main>
  </el-container>
@@ -350,7 +350,10 @@
  inject: ["crudTreeData"],
  data() {
    return {
      //导入状态框
      ThemeImportVisible:false,
      selectRow:'',
      selectList:[],
      //树节点显示隐藏
      TreeFlagCode:false,
      //编码规则
@@ -681,7 +684,7 @@
            label: '',
            prop: 'radio',
            width: 60,
            hide: false,
            display: false
          },
          {
            label: "模板编号",
@@ -727,28 +730,24 @@
  created() {
  },
  watch:{
  },
  methods: {
    /** 导入 */
    ImportExcel(){
      // debugger
      // this.batchImportData.visible = true
      // this.batchImportData.codeClassifyOid = this.codeClassifyOid
      this.ThemeImportVisible=true;
    },
    /** 导出 */
    ExportExcel(){
      if(this.nodeClickList){
        exportClassify({oid:this.nodeClickList.oid}).then(res=>{
          console.log(res)
          func.downloadFileByBlob(res);
          func.downloadFileByBlobHandler(res);
        })
      }else {
        this.$message.warning('请先选择要导出的主题库分类')
      }
    },
    //模板管理已发布编辑
    // checkShowEditBtn() {
    //   this.showEditBtn = this.Formlist.some(item => item.lcStatus === 'Released');
    // },
    //编码规则失焦
    CodeFoucus(){
      this.MasterdialogVisible=true;
@@ -966,30 +965,7 @@
      this.crudOid=row.oid;
      this.crudLCStatus=row.lcStatus;
      this.crudArray.push(row);
      console.log(row.$index)
      gridCodeClassifyTemplateAttr({'conditionMap[classifyTemplateOid]': row.oid}).then(res => {
        this.ProData = res.data.data;
        //分类注入数据格式
        this.ProData =  res.data.data.map((item) => {
          //如果分类注入classifyInvokeAttr为空说明是初始状态
          if(item.classifyInvokeAttr !== ''){
            if (!item.hasOwnProperty('classifyInvokeText')) { // 检查classifyInvokeText属性是否存在
              item = {
                ...item,
                classifyInvokeText: {
                  "注入类型": item.classifyInvokeAttr,
                  "注入类型名称": item.classifyInvokeAttrName,
                  "层级设置": item.classifyInvokeLevel,
                  "是否可修改": item.classifyInvokeEditFlag
                }
              };
            }
          }
          return item;
        });
      }).catch(res => {
        this.$message.error(res)
      })
      this.gridCode()
    },
    //分类树数据处理
    getAttr() {
@@ -1200,9 +1176,10 @@
      //定义一个模板属性id,数据是模板管理表格里面的oid
      if(data.parentId == ""){
        this.TreeFlagCode=true;
      }
      this.nodeClickList = data
      this.ProData=[]
      this.selectRow=0;
      try {
        await TreeObjcet(data.oid).then(res => {
          this.FlagObj = res.data.data
@@ -1217,6 +1194,14 @@
              return item.codeclassifyoid == this.nodeClickList.oid
            }
          })
          if(this.Formlist.length >= 1){
            this.crudLCStatus=this.Formlist[this.selectRow].lcStatus;
            this.crudArray.push(this.Formlist[this.selectRow]);
            this.crudOid=this.Formlist[this.selectRow].oid;
            this.gridCode()
          }else {
              this.ProData = [];
          }
        }).catch(res => {
          this.$message.error(res)
        })
@@ -1229,6 +1214,31 @@
      } catch (error) {
        this.$message.error(error)
      }
    },
    gridCode(){
      gridCodeClassifyTemplateAttr({'conditionMap[classifyTemplateOid]': this.Formlist[this.selectRow].oid,limit:-1}).then(res => {
        this.ProData = res.data.data;
        //分类注入数据格式
        this.ProData =  res.data.data.map((item) => {
          //如果分类注入classifyInvokeAttr为空说明是初始状态
          if(item.classifyInvokeAttr !== ''){
            if (!item.hasOwnProperty('classifyInvokeText')) { // 检查classifyInvokeText属性是否存在
              item = {
                ...item,
                classifyInvokeText: {
                  "注入类型": item.classifyInvokeAttr,
                  "注入类型名称": item.classifyInvokeAttrName,
                  "层级设置": item.classifyInvokeLevel,
                  "是否可修改": item.classifyInvokeEditFlag
                }
              };
            }
          }
          return item;
        });
      }).catch(res => {
        this.$message.error(res)
      })
    },
    treeClick(e) {
      console.log(e);
@@ -1294,7 +1304,6 @@
        });
      } else {
        this.$set(row, "codeclassifyoid", this.nodeClickList.oid)
        console.log(this.nodeClickList)
        addSave(row).then(() => {
          this.$message({
            type: "success",
@@ -1334,20 +1343,6 @@
        });
      })
    },
    //模板管理表格查询,只有一条数据没必要做搜索
    /*nterFind() {
      if (this.findText == "") {
        gridCodeClassifyTemplate().then(res => {
          this.Formlist = res.data.data
        })
      } else {
        gridCodeClassifyTemplate().then(res => {
          this.Formlist = res.data.data.filter(item => {
            return item.name.includes(this.findText)
          })
        })
      }
    },*/
    //克隆模板查询
    CloneEnterFind(){
      gridCodeClassifyTemplate().then(res => {
@@ -1422,12 +1417,35 @@
    },
    //刷新
    TemRefresh() {
      this.FormLoing = true
      this.FormLoing = true;
      if (this.nodeClickList.oid != "") {
        gridCodeClassifyTemplate({'conditionMap[codeclassifyoid]': this.nodeClickList.oid}).then(res => {
          this.Formlist = res.data.data.filter(item => {
            return item.codeclassifyoid == this.nodeClickList.oid
          })
          gridCodeClassifyTemplateAttr({'conditionMap[classifyTemplateOid]':  res.data.data[this.selectRow].oid,limit:-1}).then(res => {
            this.ProData = res.data.data;
            //分类注入数据格式
            this.ProData =  res.data.data.map((item) => {
              //如果分类注入classifyInvokeAttr为空说明是初始状态
              if(item.classifyInvokeAttr !== ''){
                if (!item.hasOwnProperty('classifyInvokeText')) { // 检查classifyInvokeText属性是否存在
                  item = {
                    ...item,
                    classifyInvokeText: {
                      "注入类型": item.classifyInvokeAttr,
                      "注入类型名称": item.classifyInvokeAttrName,
                      "层级设置": item.classifyInvokeLevel,
                      "是否可修改": item.classifyInvokeEditFlag
                    }
                  };
                }
              }
              return item;
            });
          }).catch(res => {
            this.$message.error(res)
          })
        })
      } else {
        this.FormLoing = true