田源
2023-07-07 388daad59d20da84118067593fc88a89e3f8c9d8
Source/UBCS-WEB/src/components/Tree/classifyTrees.vue
@@ -30,18 +30,15 @@
              <el-input v-model="TreeAddform.description" autocomplete="off" style="width: 585px"></el-input>
            </el-form-item>
            <el-form-item label="编码规则:" label-width="150px">
              <el-input v-model="TreeAddform.coderuleoidName" readonly autocomplete="off" style="width: 585px" @focus="CodeFoucus"></el-input>
              <el-input v-model="TreeAddform.codeRuleOidName" autocomplete="off" style="width: 585px" @focus="CodeFoucus"></el-input>
            </el-form-item>
            <el-form-item label="关键属性查询规则:" label-width="150px">
              <el-input v-model="TreeAddform.codekeyattrrepeatoidName" readonly autocomplete="off" @focus="Keyfouce"
                <el-input v-model="TreeAddform.codeKeyAttrRepeatOidName" autocomplete="off" @focus="Keyfouce"
                        style="width: 585px"></el-input>
            </el-form-item>
            <el-form-item label="相似查询规则:" label-width="150px">
              <el-input v-model="TreeAddform.codeResembleRuleOidName"
               autocomplete="off"
               readonly
               @focus="simFouce"
               style="width: 585px"></el-input>
              <el-input v-model="TreeAddform.codeResembleRuleOidName" autocomplete="off" @focus="simFouce"
                        style="width: 585px"></el-input>
            </el-form-item>
          </el-form>
          <div slot="footer" class="dialog-footer">
@@ -163,6 +160,35 @@
                    </el-dialog>
                </el-dialog>
            </template>
                  <template #menu="{ size, row }">
                <el-button
                  v-show="row.lcStatus === 'Released'"
                  @click="upAndStopAndStart(row, 'upVersion')"
                  :loading="row.upVersionLoad"
                  icon="el-icon-upload2"
                  type="text"
                  :size="size"
                >升版</el-button
                >
                <el-button
                  v-show="row.lcStatus === 'Released'"
                  @click="upAndStopAndStart(row, 'stopLose')"
                  :loading="row.stopLoseLoad"
                  icon="el-icon-circle-close"
                  type="text"
                  :size="size"
                >停用/失效</el-button
                >
                <el-button
                  v-show="['Disabled', 'Editing'].includes(row.lcStatus)"
                  @click="upAndStopAndStart(row, 'startRelease')"
                  :loading="row.startReleaseLoad"
                  icon="el-icon-circle-check"
                  type="text"
                  :size="size"
                >启用/发布</el-button
                >
              </template>
          </avue-crud>
          </basic-container>
@@ -209,7 +235,7 @@
          </template>
          <avue-crud :data="KeyData" :option="masterOption" @select="KeySelect"></avue-crud>
          <div style="height: 30px">
            <div style="display: inline-block;float: left;border: 1px solid #eee;padding: 5px;margin-top: 5px;font-size: 14px " >已设置的值为:[{{this.TreeAddform.codekeyattrrepeatoidName ==''?'未设置值':this.TreeAddform.codekeyattrrepeatoidName}}]</div>
            <div style="display: inline-block;float: left;border: 1px solid #eeeeee;padding: 5px;margin-top: 5px;font-size: 14px " >已设置的值为:[{{this.TreeAddform.codeKeyAttrRepeatOidName ==''?'未设置值':this.TreeAddform.codekeyattrrepeatoidName}}]</div>
            <div style="padding-top: 10px;display: flex; justify-content: flex-end;float: right;overflow: hidden" >
              <el-button type="primary" size="small" @click="KeyHandlerClick">确定</el-button>
              <el-button  size="small" @click="KeydialogVisible=false">取消</el-button>
@@ -260,7 +286,10 @@
  addSave,
  deleteData,
  editSave,
  copy
  copy,
  upVersion,
  stopLose,
  startRelease
} from "@/api/template/templateAttr";
import {defaultReferDataGrid,referDataGrid} from '@/api/MasterData/master'
export default {
@@ -390,11 +419,11 @@
        //相似查询规则
        codeResembleRuleOidName: "",
        //关键属性查询规则
        codekeyattrrepeatoidName: "",
        codeKeyAttrRepeatOidName: "",
        //编码规则
        coderuleoidName: "",
        codeRuleOidName: "",
        //存储的业务类型
        btmtypename: ""
        btmTypeName: ""
      },
      //avue-tree数据,暂时没有作用,里面功能用element写了,只用avue的一个树组件不用内置表单了。
      TreeAvueform: {},
@@ -510,9 +539,42 @@
          prop: 'tab2',
        }]
      },
      //模拟表单假数据
      Treeform: [
        {
          name: "测试1",
          sex: "男",
          value: 0
        },
        {
          name: "测试2",
          sex: "女",
          value: 1
        }
      ],
      //传递给子组件动态渲染的数据
      TreeList: {},
      codeClassifyOid: ""
      codeClassifyOid: "",
      upAndStopAndStartData: {
        upVersion: {
          tip: "是否进行升版?",
          typeText: "升版",
          funAPi: upVersion,
          load: 'upVersionLoad'
        },
        stopLose: {
          tip: "模板只有发布状态才能被使用,是否确定停用?",
          typeText: "停用/失效",
          funAPi: stopLose,
          load: 'stopLoseLoad'
        },
        startRelease: {
          tip: "是否确定启用/发布这个模板,模板只有发布状态才能被使用,是否继续?",
          typeText: "启用/发布",
          funAPi: startRelease,
          load: 'startReleaseLoad'
        }
      }
    }
  },
  //tab栏默认是表格
@@ -596,8 +658,8 @@
      }else {
        this.MasterdialogVisible=false;
        this.masterSelectList=[]
        this.$set(this.TreeAddform,'coderuleoidName',this.masterName)
        this.$set(this.TreeAddform,'coderuleOid',this.masterOid)
        this.$set(this.TreeAddform,'codeRuleOidName',this.masterName)
        this.$set(this.TreeAddform,'codeRuleOid',this.masterOid)
        this.$emit('MasterHandler',this.loneTreeNewForm)
        console.log(this.loneTreeNewForm)
      }
@@ -625,9 +687,9 @@
      }else {
        this.KeydialogVisible=false;
        this.KeySelectLIst=[]
        this.$set(this.TreeAddform,'codeResembleRuleOidName',this.simName)
        this.$set(this.TreeAddform,'codeResembleRuleOid',this.simOid)
        this.$emit('MasterHandler',this.loneTreeNewForm)
        this.$set(this.TreeAddform,'codeKeyAttrRepeatOidName',this.KeyName)
        this.$set(this.TreeAddform,'codeKeyAttrRepeatOid',this.KeyOid)
        console.log(this.TreeAddform)
      }
    },
    //关键属性查询
@@ -770,23 +832,26 @@
    },
    //树节点添加事件
    TreeAddHandler() {
      const data = this.TreeAddform
      this.$set(data, "parentCodeClassifyOid", this.nodeClickList.oid)
      // console.log('data',data)
      TreeSave(data).then(() => {
        this.$message({
          type: 'success',
          message: '添加成功!'
      const data = this.TreeAddform;
      data.btmTypeName= this.TreeList.btmtypename
      this.$set(data, "parentCodeClassifyOid", this.nodeClickList.oid);
      // console.log("data", data);
      TreeSave(data)
        .then(() => {
          this.$message({
            type: "success",
            message: "添加成功!",
          });
          this.getAttr();
          this.TreeAddFormVisible = false;
          this.TreeAddform = "";
        })
        .catch((res) => {
          this.$message({
            type: "warning",
            message: res,
          });
        });
        this.getAttr();
        this.TreeAddFormVisible = false
        this.TreeAddform = ""
      }).catch(res => {
        this.$message({
          type: 'warning',
          message: res
        });
      })
    },
    //树节点删除按钮
    TreeDel() {
@@ -853,6 +918,7 @@
        });
      } else {
        this.TreeEditFormVisible = true;
        console.log(this.TreeList)
      }
    },
    //树刷新
@@ -970,44 +1036,6 @@
    handleChange(column) {
      this.type = column;
    },
    // //高级查询按钮
    // handleSelectChange(key) {
    //   const selectedValue = this.FindSelect[key];
    //   console.log(selectedValue)
    //   console.log(this.QueryArray[0])
    //   switch (this.FindSelect[key]) {
    //     case '0':
    //       this.QueryArray[key] = '';
    //       this.$set(this.QueryArray, key, '');
    //       // 如果选中的是模板编号,相应的输入框双向绑定关系为 QueryArray.id
    //       this.$set(this.QueryArray, 'id', this.QueryArray[key]);
    //       break;
    //     case '1':
    //       this.QueryArray[key] = '';
    //       this.$set(this.QueryArray, key, '');
    //       // 如果选中的是模板名称,相应的输入框双向绑定关系为 QueryArray.name
    //       this.$set(this.QueryArray, 'name', this.QueryArray[key]);
    //       break;
    //     case '2':
    //       this.QueryArray[key] = '';
    //       this.$set(this.QueryArray, key, '');
    //       // 如果选中的是模板描述,相应的输入框双向绑定关系为 QueryArray.description
    //       this.$set(this.QueryArray, 'description', this.QueryArray[key]);
    //       break;
    //     case '3':
    //       this.QueryArray[key] = '';
    //       this.$set(this.QueryArray, key, '');
    //       // 如果选中的是版本号,相应的输入框双向绑定关系为 QueryArray.revisionValue
    //       this.$set(this.QueryArray, 'revisionValue', this.QueryArray[key]);
    //       break;
    //     case '4':
    //       this.QueryArray[key] = '';
    //       this.$set(this.QueryArray, key, '');
    //       // 如果选中的是状态,相应的输入框双向绑定关系为 QueryArray.lcStatus
    //       this.$set(this.QueryArray, 'lcStatus', this.QueryArray[key]);
    //       break;
    //   }
    // },
    AdvQueries() {
      this.FindFormVisible = false
      //如果全部为空 allEmpty为true
@@ -1133,7 +1161,6 @@
        });
      } else {
        this.CloneinnerVisible=true;
      }
    },
    //点击从其它模板克隆
@@ -1188,6 +1215,27 @@
        this.FormLoing = false
      }, 600);
    },
    upAndStopAndStart(row, type) {
      this.$confirm(this.upAndStopAndStartData[type]["tip"], "提示", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      }).then(() => {
        this.$set(row, this.upAndStopAndStartData[type]["load"], true)
        const { ts, oid } = row;
        this.upAndStopAndStartData[type]['funAPi']({ ts, oid }).then((res) => {
          if (res.data.code === 200) {
            this.$set(row, this.upAndStopAndStartData[type]["load"], false)
            this.TemRefresh();
            this.$message.success(
              this.upAndStopAndStartData[type]["typeText"] + "成功!"
            );
          }
        }).catch(() => {
          this.$set(row, this.upAndStopAndStartData[type]["load"], false)
        });
      });
    },
  }
}
</script>