From 49a435043b0b1a289a24606e35253365d7ab3956 Mon Sep 17 00:00:00 2001 From: QYF-GitLab1 <1940665526@qq.com> Date: 星期一, 25 八月 2025 17:51:57 +0800 Subject: [PATCH] 首页、及教学出版样式修改 --- src/views/aboutUs/index.vue | 624 ++++++++++++++++++++++++++------------------------------ 1 files changed, 288 insertions(+), 336 deletions(-) diff --git a/src/views/aboutUs/index.vue b/src/views/aboutUs/index.vue index 457d93d..7e876b7 100644 --- a/src/views/aboutUs/index.vue +++ b/src/views/aboutUs/index.vue @@ -1,14 +1,13 @@ <template> - <div class="bgcfff"> - <div class="bannerBox"> - <div class="imgBox"> - <img src="@/assets/images/xiehe/about/about_bg.png" alt="" /> - <div class="bannerText"> - <div>涓浗鍗忓拰鍖荤澶у鍑虹増绀�</div> - <div class="enText">ABOUT US</div> - </div> + <div class="homePage"> + <div class="bannerBox imgBox"> + <img class="bannerImg" :src="banner[0]?.icon" @click="bannerLink(item)" /> + <div class="bannerText"> + <div>涓浗鍗忓拰鍖荤澶у鍑虹増绀�</div> + <div class="enText">ABOUT US</div> </div> </div> + <div class="contentBox"> <div class="crumbs"> <el-breadcrumb separator-class="el-icon-arrow-right"> @@ -19,57 +18,41 @@ <div class="aboutUs"> <div class="aboutTitle"> <div class="titleBox1"> - <img - class="autoImg" - src="@/assets/images/xiehe/about/yinhao.png" - alt="" - /> + <img class="autoImg" src="@/assets/images/xiehe/about/yinhao.png" alt="" /> </div> - <div class="titleText">Publisher Introduction</div> + <div class="titleText">PUBLISHER INTRODUCTION</div> </div> - <div class="textBox"> - <p> - 涓浗鍗忓拰鍖荤澶у鍑虹増绀撅紙浠ヤ笅绠�绉扳�滃崗鍜屽嚭鐗堢ぞ鈥濓級鎴愮珛浜� - <span class="colorText">1989</span> 骞达紝鏄� - <span class="colorText" - >鍥藉鍗敓鍋ュ悍濮斾富绠°�佷腑鍥藉尰瀛︾瀛﹂櫌鍖椾含鍗忓拰鍖诲闄富鍔� - 鐨勫ぇ瀛﹀嚭鐗堢ぞ銆�</span - > - </p> - <p> - 鍗忓拰鍑虹増绀剧殑鍑虹増瀹楁棬鏄紝浠ョН娣�鏂囧寲銆佸紭鎵�濇兂涓哄繁浠伙紝闈㈠悜鍖诲绉戝鍓嶆部锛岄潰鍚戝尰瀛︽暀鑲诧紝闈㈠悜涓村簥瀹炶返锛岄潰鍚戝ぇ浼楀仴搴凤紝涓哄鏍°�佸鏈晫鍙婂叏绀句細鎻愪緵楂樺搧璐ㄧ殑鍐呭浜у搧锛屼负鍗忓拰鐨勫鏈0瑾夊鍏夋坊褰╋紝涓哄尰瀛︾晫鎻愰珮鍖诲瀛︽湳姘村钩鍋氬嚭瀹炶川鎬ц础鐚紝涓轰腑鍥藉叕浼楁彁渚涙潈濞佺殑鍋ュ悍绉戞櫘鏈嶅姟锛屾渶缁堜负鎴戝浗鍗敓鍋ュ悍浜嬩笟鍙戝睍鍙戞尌搴旀湁浣滅敤銆� - </p> - <p> - 寤虹ぞ浠ユ潵锛屽崗鍜屽嚭鐗堢ぞ绉夋壙鍗忓拰姣嶆牎浼樼鐨勫鏈紶缁燂紝鍧氬畧瀛︽湳鍑虹増闃靛湴锛屾惌寤洪珮姘村钩鐨勫鏈紶鎾钩鍙帮紝浠モ�滃綋濂藉尰鐢燂紝璇诲崗鍜屽尰涔︹�濅负鐩爣锛岄摳閫犲鏈搧鐗岋紝寮哄寲绮惧搧鎰忚瘑锛屽�惧姏鎵撻�犲叓澶у搧绫诲浘涔︼紝鍖呮嫭鏁欐潗鏁欒緟銆佸尰瀛︿笓钁椼�佷复搴婂疄鐢ㄦ墜鍐屻�佽緸涔︺�佸崼鐢熺鐞嗐�佸尰瀛︿汉鏂囥�佸仴搴风鏅�佸伐鍏风被鍥句功銆備笉浠呭湪鎻愬崌鍖诲姟浜哄憳鑱屼笟鑳藉姏銆佹嫇灞曚笓涓氳閲庝互鍙婂姪鍔涙墽涓氳祫鏍艰�冭瘯鏂归潰鍙戞尌浜嗛噸瑕佷綔鐢紝涔熶负鍖诲鐢熷く瀹炲尰瀛﹀熀纭�銆佹帉鎻′复搴婃妧鑳姐�佹彁鍗囩鐮旂礌鍏绘彁渚涗簡绯荤粺鎬ф敮鎸侊紝鎴愪负鍏舵垚闀胯繃绋嬩腑鐨勯噸瑕佸涔犺祫婧愶紝鍙g鐩镐紶锛屽搧鐗屾棦鏍戙�� - </p> - <p> - 鍗忓拰鍑虹増绀句綔涓哄叿鏈夐珮搴﹀尰瀛︿笓涓氭�х殑鍥藉绾у嚭鐗堢ぞ锛岃偐璐熺潃鏈嶅姟闄㈡牎鏁欐潗寤鸿涓庤绋嬪缓璁剧殑閲嶈璐d换銆傛湭鏉ワ紝鍗忓拰鍑虹増绀惧皢鍏呭垎鍙戞尌涓撲笟浼樺娍锛屼负鍥句功鍑虹増銆佸彂琛屽強瀹d紶鎻愪緵鍏ㄦ柟浣嶃�佹湁鍔涙敮鎸侊紝鎺ㄥ姩鍖诲鏁欒偛浜嬩笟涓嶆柇鍙戝睍銆� - </p> - </div> + <div class="textBox" v-html="publisherIntroduction"></div> <div class="statisticsBox"> <div class="statisticsItem"> <div class="statisticsNum"> - 35 <span class="circleBox">骞�</span> + {{ publisherData.focusOnMedical }} <span class="circleBox">骞�</span> </div> <div class="statisticsTitle">涓撴敞鍖诲鍑虹増</div> </div> <div class="statisticsItem"> - <div class="statisticsNum">8000+ 浣�</div> + <div class="statisticsNum"> + {{ publisherData.topExpertDatabase }}+ <span class="circleBox">浣�</span> + </div> <div class="statisticsTitle">椤剁骇涓撳搴�</div> </div> <div class="statisticsItem"> <div class="statisticsNum"> - 500+ <span class="circleBox">鏈�</span> + {{ publisherData.accumulatedTextbooks }}+ <span class="circleBox">鏈�</span> </div> <div class="statisticsTitle">绱鍑虹増鏁欐潗鏁欒緟</div> </div> <div class="statisticsItem"> - <div class="statisticsNum">4 <span class="circleBox">鏈�</span></div> + <div class="statisticsNum"> + {{ publisherData.academicJournals }} <span class="circleBox">鏈�</span> + </div> <div class="statisticsTitle">瀛︽湳鏈熷垔</div> </div> <div class="statisticsItem"> - <div class="statisticsNum">4 <span class="circleBox">鏈�</span></div> - <div class="statisticsTitle">瀛︽湳鏈熷垔</div> + <div class="statisticsNum"> + {{ publisherData.dualCoreJournal }} <span class="circleBox">鏈�</span> + </div> + <div class="statisticsTitle">鍙屾牳蹇冩湡鍒�</div> </div> </div> </div> @@ -79,261 +62,189 @@ <div class="CultureBox"> <div class="brandCultureTitle"> <div>鐞嗗康涓庡搧鐗屾枃鍖�</div> - <div class="enText">Philosophy & Brand Culture</div> + <div class="enText" style="color: #348c6e; font-size: 48px"> + PHILOSOPHY & BRAND CULTURE + </div> </div> - <div class="cultureList"> + <div class="cultureList" v-loading="loading"> <div class="cultureItem firstItem"> - <div - class="cultureTitle" - style="border-bottom: 1px solid rgba(255, 255, 255, 0.1)" - > + <div class="cultureTitle" style="border-bottom: 1px solid rgba(255, 255, 255, 0.1)"> <div class="leftIcon"> - <img - class="autoImg" - src="@/assets/images/xiehe/about/zongzhi.png" - alt="" - /> + <img class="autoImg" src="@/assets/images/xiehe/about/zongzhi.png" alt="" /> </div> <div class="titleTextInfo"> - <div class="itemTitle" style="color: #fff">鍑虹増瀹楁棬</div> + <div class="itemTitle" style="color: #fff">{{ ideaBrandCulture[0]?.name }}</div> <div class="itemSubTitle" style="color: #fff"> - Publishing Mission + {{ ideaBrandCulture[0]?.EnglishName }} </div> </div> </div> - <div class="itemText" style="color: #d5d5d5"> - 浠ョН娣�鏂囧寲銆佸紭鎵�濇兂涓哄繁浠伙紝鑱氱劍鍖诲绉戝鍓嶆部銆佸尰瀛︽暀鑲层�佷复搴婂疄璺典笌澶т紬鍋ュ悍锛屼负寤鸿鍋ュ悍涓浗璐$尞鍑虹増鍔涢噺銆� - </div> + <div class="itemText" style="color: #d5d5d5" v-html="ideaBrandCulture[0]?.content"></div> </div> <div class="cultureItem"> <div class="cultureTitle"> <div class="leftIcon"> - <img - class="autoImg" - src="@/assets/images/xiehe/about/beijing.png" - alt="" - /> + <img class="autoImg" src="@/assets/images/xiehe/about/beijing.png" alt="" /> </div> <div class="titleTextInfo"> - <div class="itemTitle">鍑虹増瀹楁棬</div> - <div class="itemSubTitle">Publishing Mission</div> + <div class="itemTitle">{{ ideaBrandCulture[1]?.name }}</div> + <div class="itemSubTitle"> + {{ ideaBrandCulture[1]?.EnglishName }} + </div> </div> </div> - <div class="itemText"> - 鐢卞浗瀹跺崼鐢熷仴搴峰涓荤銆佷腑鍥藉尰瀛︾瀛﹂櫌鍖椾含鍗忓拰鍖诲闄富鍔烇紝涓撴敞鍖诲鍑虹増 35骞达紝鎸佺画寮曢鍖诲涓撲笟鍑虹増鏂瑰悜銆� - </div> + <div class="itemText" v-html="ideaBrandCulture[1]?.content"></div> </div> <div class="cultureItem"> <div class="cultureTitle"> <div class="leftIcon"> - <img - class="autoImg" - src="@/assets/images/xiehe/about/zizhi.png" - alt="" - /> + <img class="autoImg" src="@/assets/images/xiehe/about/zizhi.png" alt="" /> </div> <div class="titleTextInfo"> - <div class="itemTitle">鍑虹増瀹楁棬</div> - <div class="itemSubTitle">Publishing Mission</div> + <div class="itemTitle">{{ ideaBrandCulture[2]?.name }}</div> + <div class="itemSubTitle"> + {{ ideaBrandCulture[2]?.EnglishName }} + </div> </div> </div> - <div class="itemText"> - 澶氭鑽h幏鈥滈珮鏍′紭绉�鍑虹増绀锯�濃�滃叏鍥借壇濂藉嚭鐗堢ぞ鈥濃�滃崼鐢熼儴鏉板嚭绉戞妧钁椾綔绐佸嚭璐$尞鍑虹増绀锯�濈瓑绉板彿锛屽嚭鐗堝浘涔﹀薄鑾� 涓浗鍑虹増鏀垮簻濂栥�佷腑鍗庝紭绉�鍑虹増鐗╁ 绛夊浗瀹剁骇鑽h獕銆� - </div> + <div class="itemText" v-html="ideaBrandCulture[2]?.content"></div> </div> <div class="cultureItem"> <div class="cultureTitle"> <div class="leftIcon"> - <img - class="autoImg" - src="@/assets/images/xiehe/about/fazhan.png" - alt="" - /> + <img class="autoImg" src="@/assets/images/xiehe/about/fazhan.png" alt="" /> </div> <div class="titleTextInfo"> - <div class="itemTitle">鍑虹増瀹楁棬</div> - <div class="itemSubTitle">Publishing Mission</div> + <div class="itemTitle">{{ ideaBrandCulture[3]?.name }}</div> + <div class="itemSubTitle"> + {{ ideaBrandCulture[3]?.EnglishName }} + </div> </div> </div> - <div class="itemText"> - 鑷村姏浜庝负瀛︽牎銆佸鏈晫鍙婂叏绀句細鎻愪緵楂樺搧璐ㄧ殑鍖诲鍐呭浜у搧锛屼负鍗忓拰鐨勫鏈0瑾夊鍏夋坊褰╋紝涓哄尰瀛︾晫鎻愬崌瀛︽湳姘村钩鎻愪緵瀹炶川鏀寔锛屼负涓浗鍏紬鎻愪緵鏉冨▉鍋ュ悍绉戞櫘鏈嶅姟锛屼负鎴戝浗鍗敓鍋ュ悍浜嬩笟鎸佺画鍙戝睍璐$尞鍗忓拰鍔涢噺銆� - </div> + <div class="itemText" v-html="ideaBrandCulture[3]?.content"></div> </div> </div> </div> </div> </div> + <div class="page-container"> + <Map v-if="contactUsData" :contactUsData="contactUsData" /> + </div> </div> </template> -<script> -import { requestCtx } from "@/assets/js/config"; +<script setup> +import { ref, inject, reactive, onMounted } from 'vue' +import Map from './components/map.vue' +const MG = inject('MG') +const banner = reactive([]) +let publisherIntroduction = ref('') +let publisherData = ref('') +let ideaBrandCulture = ref([]) +let loading = ref(false) +let contactUsData = ref(null) -export default { - name: "home", - components: {}, - data() { - return { - bannerList: [], - tabsSelected: 0, - tabSelect: [ - { - name: "鍑虹増绀炬鎷�", - path: "caupress_pressOverview", - }, - { - name: "缁勭粐鏋舵瀯", - path: "caupress_organization", - }, - { - name: "鑽h獕濂栧姳", - path: "caupress_honorAward", - }, - { - name: "澶т簨璁�", - path: "caupress_majorEvents", - }, - { - name: "鑱旂郴鏂瑰紡", - path: "caupress_contact", - }, - { - name: "鎷涚撼璐ゅ+", - path: "caupress_recruit", - }, - ], - contentList: [], - reLoading: true, - contentIndex: 0, - paginationData: { - page: 1, - totalCount: 0, - limit: 5, - totalPage: 0, +const getBanner = () => { + MG.resource + .getItem({ + path: 'banner\\about', + fields: { link: [] }, + paging: { start: 0, size: 9 }, + }) + .then((res) => { + banner.push(...res.datas) + console.log(res.datas) + }) +} +const getPublisherIntroduction = () => { + MG.resource + .getItem({ + path: 'aboutUs\\publisherIntroduction', + fields: { content: [] }, + paging: { start: 0, size: 9 }, + }) + .then((res) => { + console.log(res.datas) + publisherIntroduction.value = res.datas[0].content + }) +} +const getIdeaBrandCulture = () => { + loading.value = true + MG.resource + .getItem({ + path: 'aboutUs\\ideaBrandCulture', + fields: { content: [], EnglishName: [] }, + paging: { start: 0, size: 9 }, + }) + .then((res) => { + ideaBrandCulture.value = res.datas + loading.value = false + }) +} +const getPublisherData = () => { + MG.resource + .getItem({ + path: 'aboutUs\\publisherData', + fields: { + academicJournals: [], + accumulatedTextbooks: [], + dualCoreJournal: [], + focusOnMedical: [], + topExpertDatabase: [], }, - screenheight: document.documentElement.clientWidth / 2.628, - }; - }, - created() { - window.onresize = () => { - let c = 2.628; - if (document.documentElement.clientWidth >= 1220) { - this.screenheight = document.documentElement.clientWidth / c; - } - }; - // 浠庡叧浜庢垜浠鎯呴〉璺宠浆鍥炴潵锛岄�変腑澶т簨璁� - if (this.$route.query.aboutUs) { - this.tabsSelected = this.$route.query.aboutUs; - } - this.getBanner(); - this.getData(); - }, - watch: { - $route: { - handler: function (val, oldval) { - console.log(val, "val"); - if (val.query.aboutUs || val.query.aboutUs == 0) { - scrollTo(0, 0); - this.tabsSelected = val.query.aboutUs; - this.getData(); - } + paging: { start: 0, size: 1 }, + }) + .then((res) => { + publisherData.value = res.datas[0] + }) +} + +// 鑾峰彇鑱旂郴鎴戜滑 +const getConectText = () => { + MG.resource + .getItem({ + path: 'aboutUs\\contactUs', + fields: { + postalCode: [], + address: [], + telphone: [], + faxNumber: [], + website: [], + mailbox: [], }, - deep: true, - }, - }, - methods: { - bannerLink(val) { - if (val.caupress_link) { - window.open(val.caupress_link); + sort: { + LinkOrder: 'Asc', + }, + paging: { + start: 0, + size: 999, + }, + coverSize: { + height: 430, + }, + }) + .then((res) => { + const { datas } = res + if (datas?.length > 0) { + contactUsData.value = datas[0] } - }, - selectTab(val) { - this.paginationData.page = 1; - this.$router.replace({ - name: "aboutUs", - query: { - aboutUs: val, - }, - }); - }, - getBanner() { - this.MG.resource - .getItem({ - path: "caupress_banner\\caupress_about", - fields: { - caupress_link: [], - }, - coverSize: { - height: 750, - }, - paging: { - start: 0, - size: 999, - }, - }) - .then((res) => { - this.bannerList = res.datas; - }); - }, - getData() { - this.reLoading = true; - let path = "caupress_aboutUs\\" + this.tabSelect[this.tabsSelected].path; - let { limit, page } = this.paginationData; - this.MG.resource - .getItem({ - path: path, - fields: { - caupress_content: [], - caupress_author: [], - caupress_file: [], - caupress_detailedAddress: [], - caupress_publishDate: [], - }, - paging: { - start: limit * page - limit, - size: limit, - }, - }) - .then((res) => { - this.contentList = res.datas; - this.paginationData.totalCount = res.total; - this.reLoading = false; - }); - }, - downloading(md5) { - let url = requestCtx + "/file/api/ApiDownload/?md5=" + md5; - window.open(url, "_blank"); - }, - toDetail(linkInfo) { - this.$router.push({ - name: "informationCenter-detail", - query: { - type: "aboutUs", - path: linkInfo[0].LinkPath, - id: linkInfo[0].ChildrenId, - }, - }); - }, - }, -}; + }) +} + +onMounted(() => { + getBanner() + getPublisherIntroduction() + getPublisherData() + getIdeaBrandCulture() + getConectText() +}) </script> <style lang="less" scoped> -.autoImg { - max-height: none; -} -.bgcfff { - min-width: 1220px; - background-color: #fff; - .bannerBox { - background: #f3f3f3; - position: relative; - } - .imgBox { - position: relative; - width: 100%; - height: 100%; - } +.bannerBox { + height: 380px; + position: relative; + .bannerText { position: absolute; top: 50%; @@ -345,162 +256,203 @@ text-shadow: 0px 0px 10px #000000; text-align: center; } - .enText { - font-size: 36px; - opacity: 0.45; - margin-top: 20px; - } - .contentBox { - background-color: #fff; - padding-bottom: 100px; - margin-top: 35px; - .aboutUs { + .enText { + font-size: 28px; + opacity: 0.45; + margin-top: 10px; + } +} + +.homePage { + min-width: 1220px; + min-height: calc(100vh - 61.8%); + background-color: #fff; +} + +.contentBox { + background-color: #fff; + + padding-bottom: 100px; + margin-top: 35px; + + .aboutUs { + width: 100%; + font-size: 16px; + border-top: 1px solid #ededed; + margin-top: 40px; + + .aboutTitle { + display: flex; width: 100%; - font-size: 16px; - border-top: 1px solid #ededed; - margin-top: 40px; - .aboutTitle { - display: flex; - width: 100%; - padding-top: 30px; - .titleBox1 { - position: relative; - width: 50px; - height: 50px; - margin-right: 20px; - } - .titleText { - font-size: 48px; - font-weight: 700; - opacity: 0.05; - } + padding-top: 30px; + + .titleBox1 { + position: relative; + width: 50px; + height: 50px; + margin-right: 20px; } - .block { - display: inline-block; - width: 4px; - height: 4px; - margin-right: 10px; - vertical-align: middle; - background: #dadada; - } - .selected { - background-color: #e7f9ef; - .block { - background-color: #008e3f; - } - } - .title { - padding: 0; + + .titleText { + font-size: 48px; font-weight: 700; - text-align: center; - background: #008e3f; - color: #fff; - line-height: 36px; - border-bottom: 0; - } - div { - cursor: pointer; - // border-bottom: 1px dashed #ededed; - } - .colorText { - color: #144941; - } - .textBox { - line-height: 20px; - p { - margin-top: 30px; - } + opacity: 0.05; } } - .statisticsBox { - display: flex; - justify-content: space-between; - margin-top: 80px; + + .block { + display: inline-block; + width: 4px; + height: 4px; + margin-right: 10px; + vertical-align: middle; + background: #dadada; + } + + .selected { + background-color: #e7f9ef; + + .block { + background-color: #008e3f; + } + } + + .title { + padding: 0; + font-weight: 700; text-align: center; - .statisticsNum { - font-size: 48px; + background: #008e3f; + color: #fff; + line-height: 36px; + border-bottom: 0; + } + + div { + cursor: pointer; + // border-bottom: 1px dashed #ededed; + } + + .colorText { + color: #144941; + } + + .textBox { + line-height: 20px; + margin-top: 30px; + + p { + margin-top: 30px; } - .statisticsTitle { - margin-top: 10px; - } - .circleBox { - width: 26px; - height: 26px; - display: inline-block; - font-size: 20px; - line-height: 26px; - color: #fff; - background-color: #144941; - border-radius: 50%; - } + } + } + + .statisticsBox { + display: flex; + justify-content: space-between; + margin-top: 80px; + text-align: center; + + .statisticsNum { + font-size: 48px; + } + + .statisticsTitle { + margin-top: 10px; + font-size: 14px; + } + + .circleBox { + width: 26px; + height: 26px; + display: inline-block; + font-size: 20px; + line-height: 26px; + color: #fff; + background-color: #144941; + border-radius: 50%; } } } + .brandCultureTop { background-image: url(@/assets/images/xiehe/about/wenhua_bg.png); + background-size: 100% 100%; + background-repeat: no-repeat; + background-position: center; width: 100%; - height: 500px; - padding-top: 55px; + height: 580px; + padding-top: 30px; } + .brandCultureTitle { font-size: 36px; color: #fff; font-weight: 700; text-align: center; + line-height: 70px; } .cultureList { display: flex; justify-content: space-between; width: 100%; - margin-top: 60px; + margin-top: 50px; } .cultureItem { - width: 320px; + width: 324px; height: 320px; background-color: #fff; - margin-left: 30px; + margin-left: 10px; padding: 20px; box-sizing: border-box; } + .firstItem { background-color: #144941; color: #fff; - width: 320px; + width: 324px; height: 320px; - text-align: center; + text-align: left; margin-left: 0px; } + .CultureBox { width: 1200px; margin: 0 auto; } + .leftIcon { width: 58px; height: 58px; position: relative; } + .cultureTitle { display: flex; - border-bottom: 1px solid #DEDEDE; + border-bottom: 1px solid #dedede; padding-bottom: 16px; } + .titleTextInfo { - margin-left: 20px; + margin-left: 10px; text-align: left; } + .itemTitle { font-size: 18px; font-weight: 700; line-height: 36px; color: #333; } + .itemSubTitle { color: #000; + font-size: 12px; opacity: 0.5; } + .itemText { font-size: 16px; line-height: 28px; -- Gitblit v1.9.1