ludc
2024-04-18 8745e841668d47b2e1c0b21c010834f15a82cac9
Source/UBCS-WEB/src/views/integration/vciAttribute.vue
@@ -4,7 +4,7 @@
               @size-change="sizeChange" @row-dblclick="handleRowClick" @row-update="handleUpdate"
               @selection-change="selectChange">
      <template slot="menuLeft">
        <!--        <el-button plain size="small" type="success" @click="savaHandler">保存</el-button>-->
        <el-button plain size="small" type="success" @click="savaHandler">保存</el-button>
        <el-button plain size="small" type="primary" @click="syncHandler">同步</el-button>
      </template>
    </avue-crud>
@@ -25,7 +25,7 @@
        calcHeight: 20,
        headerAlign: "center",
        border: true,
        // selection: true,
        selection: true,
        tip: false,
        index: true,
        refreshBtn: false,
@@ -80,12 +80,7 @@
    }
  },
  created() {
    const params = {
      'conditionMap[groupAttrKey_like]': 'RY_',
      page: this.page.currentPage,
      limit: this.page.pageSize
    }
    this.onLoad(params)
    this.onLoad()
    this.codeColumnOnload()
  },
  computed: {
@@ -107,7 +102,11 @@
    selectChange(list) {
      this.selectList = list;
    },
    async onLoad(params) {
    async onLoad() {
      const params = {
        page: this.page.currentPage,
        limit: this.page.pageSize
      }
      getGroupAttrPoolALlList(params).then(res => {
        const data = res.data.data;
        this.data = data.records;
@@ -140,18 +139,24 @@
      // row.codeMetaAttrName因为下拉框value值原因绑定为codeMetaAttrOid
      let updataList = []
      // console.log(this.ChangeName)
      // console.log(row.codeMetaAttrName)
      // if (this.ChangeName && this.ChangeName === row.codeMetaAttrName) {
      //   updataList = this.codeMetaColumn.dicData.find(item => item.codeMetaAttrOid === row.codeMetaAttrOid)
      // } else {
      //   console.log('2')
      //     updataList = this.codeMetaColumn.dicData.find(item => item.codeMetaAttrOid === row.codeMetaAttrName)
      // }
      updataList = this.codeMetaColumn.dicData.find(item => item.codeMetaAttrOid === row.codeMetaAttrName)
      if (this.ChangeName && this.ChangeName === row.codeMetaAttrName) {
        updataList = this.codeMetaColumn.dicData.find(item => item.codeMetaAttrOid === row.codeMetaAttrOid)
      } else {
        if (row.codeMetaAttrName !== "" && row.codeMetaAttrName) {
          updataList = this.codeMetaColumn.dicData.find(item => item.codeMetaAttrOid === row.codeMetaAttrName)
        }
      }
      // 因为row里面的值是不正确的 重新赋值一遍
      if (updataList) {
        const {codeMetaAttrOid, codeMetaAttrKey, codeMetaAttrName} = updataList;
        Object.assign(row, {codeMetaAttrOid, codeMetaAttrKey, codeMetaAttrName});
        Object.assign(row, {
          codeMetaAttrOid: codeMetaAttrOid,
          codeMetaAttrKey: codeMetaAttrKey.toLowerCase(),
          codeMetaAttrName: codeMetaAttrName
        });
      }
      const objet = {
@@ -162,6 +167,7 @@
        codeMetaAttrKey: row.codeMetaAttrKey,
        codeMetaAttrName: row.codeMetaAttrName
      }
      const response = await editGroupAttr([objet])
      if (response.data.success) {
        this.$message.success('保存成功!')
@@ -174,30 +180,41 @@
      } else {
        const hasTrueValue = this.selectList.some(item => !item.$cellEdit);
        if (hasTrueValue) {
          this.$message.warning('请开启编辑后保存!')
        } else {
          let saveList = []
          for (const item of this.selectList) {
            console.log(item)
            const updataList = this.codeMetaColumn.dicData.find(p => p.codeMetaAttrOid === item.codeMetaAttrName);
            const {codeMetaAttrOid, codeMetaAttrKey, codeMetaAttrName} = updataList;
            Object.assign(item, {codeMetaAttrOid, codeMetaAttrKey, codeMetaAttrName});
            console.log(updataList)
            item.$cellEdit = false;
            saveList.push({
              oid: item.oid,
              groupAttrKey: item.groupAttrKey,
              groupAttrName: item.groupAttrName,
              codeMetaAttrOid: item.codeMetaAttrOid,
              codeMetaAttrKey: item.codeMetaAttrKey,
              codeMetaAttrName: item.codeMetaAttrName
            })
          }
          const response = await editGroupAttr(saveList)
          if (response.data.success) {
            this.$message.success('保存成功!')
          }
          this.$message.warning('请开启编辑后进行保存!')
          return
        }
        const codeMetaInput = this.selectList.some(item => item.codeMetaAttrName === "");
        if (codeMetaInput) {
          this.$message.warning('请检查已勾选数据中是否存在未选择的项!');
          return
        }
        let saveList = []
        for (const item of this.selectList) {
          const updataList = this.codeMetaColumn.dicData.find(column => column.codeMetaAttrOid === item.codeMetaAttrName);
          if (updataList) {
            const {codeMetaAttrOid, codeMetaAttrKey, codeMetaAttrName} = updataList;
            Object.assign(item, {
              codeMetaAttrOid: codeMetaAttrOid,
              codeMetaAttrKey: codeMetaAttrKey.toLowerCase(),
              codeMetaAttrName: codeMetaAttrName
            });
          }
          item.$cellEdit = false;
          saveList.push({
            oid: item.oid,
            groupAttrKey: item.groupAttrKey,
            groupAttrName: item.groupAttrName,
            codeMetaAttrOid: item.codeMetaAttrOid,
            codeMetaAttrKey: item.codeMetaAttrKey,
            codeMetaAttrName: item.codeMetaAttrName
          })
        }
        const response = await editGroupAttr(saveList)
        if (response.data.success) {
          this.$message.success('保存成功!')
          await this.onLoad()
        }
      }
    },
    async syncHandler() {
@@ -214,32 +231,20 @@
        const response = await syncGroupAttrMapping(syncList)
        if (response.data.success) {
          this.$message.success(response.data.msg);
          const params = {
            'conditionMap[groupAttrKey_like]': 'RY_',
            page: this.page.currentPage,
            limit: this.page.pageSize
          }
          await this.onLoad(params)
          await this.onLoad()
        }
      }
    },
    currentChange(currentPage) {
      this.page.currentPage = currentPage;
      const params = {
        'conditionMap[groupAttrKey_like]': 'RY_',
        page: this.page.currentPage,
        limit: this.page.pageSize
      }
      this.onLoad(params)
      this.onLoad()
    },
    sizeChange(pageSize) {
      this.page.pageSize = pageSize;
      const params = {
        'conditionMap[groupAttrKey_like]': 'RY_',
        page: this.page.currentPage,
        limit: this.page.pageSize
      }
      this.onLoad(params)
      this.onLoad()
    },
  }
}