xuyonghao
2024-11-27 db2339e341668d14506c114ee88d6d143d4813b0
src/views/dmx/model/index.vue
@@ -12,14 +12,14 @@
          <a-row justify="space-between">
            <a-col :span="24" class="table_add_clore" v-if="loading">
              <a-tabs
                :default-active-key="tabKey"
                type="line"
                :default-active-key="tabKey"
                v-model:activeKey="tabKey"
                :editable="true"
                @tab-click="changeTabs"
                @add="handleAdd"
                @delete="handleDelete"
                show-add-button
                auto-switch
              >
                <a-tab-pane
                  v-for="(item, index) in tabData"
@@ -94,21 +94,22 @@
                          </div>
                        </div>
                      </div>
                      <div v-if="item.llm.length > 0" class="no_data"></div>
                      <div class="subset_list">
                      <div v-if="item.llm?.length > 0" class="no_data"></div>
                      <div class="subset_list" v-if="item.llm?.length > 0">
                        <div
                          class="card-wrap"
                          v-for="(list, index) of item.llm"
                          :key="index"
                        >
                          <div class="card_wrap_box">
                            <div class="card_wrap_box_img">
                            <div class="card_wrap_box_img"style="display: flex; justify-content: center; align-items: center;">
                              <img
                                :style="{
                                  width: '100%',
                                  width: '75%',
                                }"
                                alt="暂无图片"
                                :src="list.logo ? httpUrl + list.logo : pdfImg"
                                :src="list.type === 'chat' ? pdfImg : embeddingImg"
                              />
                            </div>
                            <a-card :bordered="false" hoverable>
@@ -204,6 +205,7 @@
  import { userModelState } from '@/store';
  import pdfImg from '@/assets/images/icon-chart.png';
  import embeddingImg from '@/assets/images/embedding.png'
  const modelStore = userModelState();
  let count = 5;
@@ -237,7 +239,7 @@
  const isDeleteDialogVisible = ref(false); //删除提醒
  const modalList = ref({});
  const tabKey = ref('key');
  const tabKey = ref('');
  const changeTabs = async (val) => {
    tabKey.value = val;
    await getFactory();
@@ -298,8 +300,7 @@
          });
          if ((res as any).code == 0) {
            queryModel();
            tabKey.value = factory;
            await queryModel('');
          } else {
          }
        },
@@ -319,8 +320,7 @@
    if ((res as any).code == 200) {
      // Reflect.deleteProperty(tabData.value, tabKey.value);
      queryModel();
      console.log(tabKey.value, 99998);
      await queryModel(null);
      Message.success('删除成功');
    }
@@ -334,51 +334,62 @@
    name: '',
  });
  const handleOk = () => {
    count += 1;
    formRef.value?.validate().then((res) => {
      if (res) {
        return;
      }
      data.value = data.value.concat({
        key: count,
        title: `${form.name}`,
        content: ``,
      });
      visible.value = false;
      activeKey.value = count;
    });
    nextTick(() => {
      visible.value = true;
    });
    return false;
    // count += 1;
    // formRef.value?.validate().then((res) => {
    //   if (res) {
    //     return;
    //   }
    //   data.value = data.value.concat({
    //     key: count,
    //     title: `${form.name}`,
    //     content: ``,
    //   });
    //   visible.value = false;
    //   activeKey.value = count;
    // });
    // nextTick(() => {
    //   visible.value = true;
    // });
    // return false;
  };
  //获取模型列表
  const loading = ref(false);
  const queryModel = async () => {
  const queryModel = async (name) => {
    const res = await modelmyLlms();
    modalList.value = res.data;
    loading.value = true;
    // tabData.value = Object.assign({}, tabData.value, res.data);
    tabData.value = filterObject(res.data, 1);
    tabKey.value = Object.keys(tabData.value)[0];
    await filterObject(res.data, 1, name);
    await getFactory();
  };
  queryModel();
  queryModel(null);
  //返回满足条件的对象
  const filterObject = (obj, threshold) => {
    return Object.keys(obj)
  const filterObject = (obj, threshold, name) => {
    tabData.value = '';
    tabKey.value = '';
    const objs = Object.keys(obj)
      .filter((key) => obj[key].added == 1)
      .reduce((result, key) => {
        result[key] = obj[key];
        return result;
      }, {});
    tabData.value = objs;
    if (name) {
      tabKey.value = name;
    } else {
      tabKey.value = Object.keys(tabData.value)[0];
    }
    console.log(tabKey.value, 6766);
  };
  const refreshParentMethod = async (name) => {
    // console.log(name, 678776);
    await queryModel();
    await queryModel(name);
    // tabKey.value = name;
    // 这里执行需要的操作
  };
@@ -393,7 +404,13 @@
    } else {
      addBtn.value = false;
    }
    tabKey.value = Object.keys(tabData.value)[0];
    // if (!name) {
    //   tabKey.value = Object.keys(tabData.value)[0];
    // } else {
    //   tabKey.value = name;
    // }
    console.log(tabKey.value, 9787);
  };
</script>