From 9d43688f11d630734cb67b75399df26d308ad25e Mon Sep 17 00:00:00 2001 From: zhongshujie <2862698242@qq.com> Date: 星期一, 28 四月 2025 21:20:17 +0800 Subject: [PATCH] ai智能阅读 --- src/assets/js/middleGround/api/resource.js | 1 src/views/achievements/index.vue | 60 ++++++++++++++++++-- src/App.vue | 92 ++++++++++++++++++++++++++++++ 3 files changed, 145 insertions(+), 8 deletions(-) diff --git a/src/App.vue b/src/App.vue index 7499d03..16b979a 100644 --- a/src/App.vue +++ b/src/App.vue @@ -14,9 +14,10 @@ }; </script> -<style> +<style lang="less"> @import "~@/assets/css/base.css"; @import "~@/assets/css/common.css"; + #app { width: 100%; height: 100%; @@ -26,4 +27,93 @@ -moz-osx-font-smoothing: grayscale; font-size: auto !important; } + + +.richTextInitBox { + html, + body, + div, + applet, + object, + iframe, + h1, + h2, + h3, + h4, + h5, + h6, + p, + blockquote, + pre, + a, + abbr, + acronym, + address, + big, + cite, + code, + del, + dfn, + em, + img, + ins, + kbd, + q, + s, + samp, + small, + strike, + sub, + sup, + tt, + var, + b, + u, + i, + center, + dl, + dt, + dd, + ol, + ul, + li, + fieldset, + form, + label, + legend, + table, + caption, + tbody, + tfoot, + thead, + tr, + th, + td, + article, + aside, + canvas, + details, + embed, + figure, + figcaption, + footer, + header, + menu, + nav, + output, + ruby, + section, + summary, + time, + mark, + audio, + video, + input { + margin: revert; + padding: revert; + border: revert; + font-weight: revert; + vertical-align: revert; + } +} </style> diff --git a/src/assets/js/middleGround/api/resource.js b/src/assets/js/middleGround/api/resource.js index 78e69fb..eeca636 100644 --- a/src/assets/js/middleGround/api/resource.js +++ b/src/assets/js/middleGround/api/resource.js @@ -90,7 +90,6 @@ if (resp.length > 0) { const data = resp[0]; console.log(data,'datas'); - debugger const datas = handleQueryResourceListData({ datas: data.datas, fields, diff --git a/src/views/achievements/index.vue b/src/views/achievements/index.vue index 1c19aa8..9658632 100644 --- a/src/views/achievements/index.vue +++ b/src/views/achievements/index.vue @@ -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"> @@ -160,10 +160,7 @@ </li> <li class="main-title" :title="item.cleanAbstract" v-if="item.abstract"> <span>鎽樿: </span> - <span - class="page-main-abstract" - v-html="item.cleanAbstract" - ></span> + <span class="page-main-abstract" v-html="item.cleanAbstract"></span> </li> <li class="main-keyword" v-if="item.keyWords && item.keyWords.length > 0"> <span>鍏抽敭璇嶏細</span> @@ -185,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> @@ -207,6 +212,9 @@ }, data() { return { + dialogVisible: false, + aIName: "", + AIReading: "", relatedList: [], // 杈撳叆妗嗙殑鍐呭 inputValue: "", @@ -521,7 +529,7 @@ content: val[key], value: key, }); - }else { + } else { hasKey.content = val[key] } } @@ -768,6 +776,12 @@ default: return 'other-color'; } + }, + + openAiReading(text, name) { + this.AIReading = text; + this.aIName = name; + this.dialogVisible = true; } }, }; @@ -1191,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; } @@ -1305,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; @@ -1350,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> -- Gitblit v1.9.1