zhongshujie
3 天以前 9d43688f11d630734cb67b75399df26d308ad25e
src/views/achievements/index.vue
@@ -105,7 +105,7 @@
              </li>
            </ul>
            <!-- 学科 -->
            <ul>
            <!-- <ul>
              <li class="left-title">
                <span>{{ subject.title }}</span>
                <p @click="subject.isDisplay = !subject.isDisplay">
@@ -119,7 +119,7 @@
                  <span class="">{{ item.num }}</span>
                </div>
              </li>
            </ul>
            </ul> -->
          </div>
          <div class="content-right" v-loading="loading" element-loading-text="检索结果加载中"
            element-loading-spinner="el-icon-loading" element-loading-background="rgba(0, 0, 0, 0)">
@@ -146,7 +146,7 @@
                <p>{{ item.name }}</p>
                <p>
                  <el-button @click="goPage(item.id)">详情</el-button>
                  <el-button>AI智能阅读</el-button>
                  <el-button @click="openAiReading(item.AIReading, item.name)">AI智能阅读</el-button>
                </p>
              </li>
              <li class="main-sources">
@@ -182,6 +182,14 @@
                :background="isBackground" layout="prev, pager, next" :total="total" :page-size="10">
              </el-pagination>
            </div>
            <el-dialog v-model="dialogVisible" :title="aIName" width="60vw" top="3vh" bottom="2vh"
              :visible.sync="dialogVisible" class="custom-dialog">
              <div class="AIReadingBox" element-loading-spinner="el-icon-loading"
                element-loading-background="rgba(0, 0, 0, 0)">
                <div class="richTextInitBox" v-if="AIReading" v-html="AIReading"></div>
                <div class="richTextInitError" v-else>网络繁忙,请稍后再试。</div>
              </div>
            </el-dialog>
            <el-empty v-if="!loading && !resultList.length"></el-empty>
          </div>
        </div>
@@ -204,6 +212,9 @@
  },
  data() {
    return {
      dialogVisible: false,
      aIName: "",
      AIReading: "",
      relatedList: [],
      // 输入框的内容
      inputValue: "",
@@ -259,7 +270,7 @@
          {
            type: "input",
            label: "标 题",
            name: "title",
            name: "Name",
            value: "",
          },
          {
@@ -462,7 +473,7 @@
        author: "作者",
        keyword: "关键词",
        source: "来源",
        title: "标题",
        Name: "标题",
        year: "年份",
      },
    };
@@ -506,16 +517,23 @@
    },
    async onSubmit(val) {
      console.log(val, "val");
      console.log(this.associationList, "associationList");
      for (let key in val) {
        if (val[key] != "") {
          this.associationList.push({
            type: this.labelList[key],
            content: val[key],
            value: key,
          });
          const hasKey = this.associationList.find((item) => item.value == key);
          if (!hasKey) {
            this.associationList.push({
              type: this.labelList[key],
              content: val[key],
              value: key,
            });
          } else {
            hasKey.content = val[key]
          }
        }
      }
      console.log(this.associationList, "this.associationList");
      this.getItemList();
    },
    //重置搜索结果
@@ -594,6 +612,7 @@
    // 搜索
    handleSearch(isText) {
      console.log(isText, "isText");
      this.associationList = [];
      console.log(isText, "isText");
      if (isText.text != "") {
@@ -706,18 +725,19 @@
          this.resultList = res.datas;
          this.total = res.total;
          this.loading = false;
        }).catch((error) => {
        })
        .catch((error) => {
          // 打印错误信息
          console.error("获取数据失败:", error);
        });
      // 滚动到页面顶部
      this.$nextTick(() => {
        const pageMain = document.querySelector('.page-main-father');
        const pageMain = document.querySelector(".page-main-father");
        if (pageMain) {
          pageMain.scrollTo({
            top: 0,
            behavior: 'smooth'
            behavior: "smooth",
          });
        }
      });
@@ -756,6 +776,12 @@
        default:
          return 'other-color';
      }
    },
    openAiReading(text, name) {
        this.AIReading = text;
        this.aIName = name;
        this.dialogVisible = true;
    }
  },
};
@@ -1179,18 +1205,23 @@
      .journal-color {
        background-color: #87a8b9;
      }
      .books-color {
        background-color: #C48787;
      }
      .video-color {
        background-color: #6F8F5A;
      }
      .audio-color {
        background-color: #937950;
      }
      .newspaper-color {
        background-color: #8D77B3;
      }
      .other-color {
        background-color: #009F9F;
      }
@@ -1293,6 +1324,23 @@
  }
}
.AIReadingBox {
  height: 85vh;
  min-height: 600px;
  padding: 20px 10px;
}
.richTextInitBox {
  height: 100%;
  overflow: auto;
}
.richTextInitError{
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.pagination {
  display: flex;
  justify-content: center;
@@ -1338,6 +1386,18 @@
:deep.el-pagination.is-background .el-pager li:not(.disabled):hover {
  color: #937950
}
:deep.el-button--primary {
  background-color: #937950;
  color: #937950;
  border: 1px solid #937950;
  cursor: pointer;
  &:hover {
    background-color: #937950;
    color: #fffdf8;
  }
}
</style>
<style>