Merge remote-tracking branch 'origin/master'

# Conflicts:
#	src/utils/constant.js
master
王岚馨 11 months ago
commit efe15fbc19

@ -78,7 +78,7 @@
--commentURL: url(../file/comment.jpg); --commentURL: url(../file/comment.jpg);
--springBg: url(../file/bg1.jpg); --springBg: url(../file/bg1.jpg);
--admireImage: url(../file/bg1.jpg); --admireImage: url(../file/bg2.jpg);
--toTop: url(../file/top.jpg); --toTop: url(../file/top.jpg);
--bannerWave1: url(../file/bannerwave1.png) repeat-x; --bannerWave1: url(../file/bannerwave1.png) repeat-x;
--bannerWave2: url(../file/bannerwave2.png) repeat-x; --bannerWave2: url(../file/bannerwave2.png) repeat-x;

Binary file not shown.

After

Width:  |  Height:  |  Size: 146 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 114 KiB

After

Width:  |  Height:  |  Size: 555 KiB

@ -33,22 +33,41 @@
data() { data() {
return { return {
sayShow: false, sayShow: false,
// sayContent: [
// {
// "talk": ["Hi, there👋", " Vue2 Vue3 SpringBoot ~"],
// "reply": [" 😃", " 🙄"]
// }, {
// "talk": ["😘",
// "",
// ""],
// "reply": [" 😂"]
// }, {
// "talk": ["🚀",
// "👋",
// "🥝"],
// "reply": []
// }
// ],
sayContent: [ sayContent: [
{ {
"talk": ["Hi, there👋", "这是一个 Vue2 Vue3 与 SpringBoot 结合的产物~"], "talk": ["大家好👋", "欢迎来到查询药物相互作用,病友间相互交流的平台~"],
"reply": ["然后呢? 😃", "少废话! 🙄"] "reply": ["然后呢? 😃", "废话! 🙄"]
}, { }, {
"talk": ["😘", "talk": ["😘",
"本站平时仅用于交流和学习新知识", "这个平台是一个温暖的港湾,让我们可以相互倾听、相互支持",
"如涉及侵权请联系站长删除对应资源,谢谢!!!"], "在这里,我们可以分享经验、交流心情,共同战胜疾病的困难和挑战"],
"reply": ["这个网站有什么用吗? 😂"] "reply": ["这个平台有什么用吗? 😂"]
}, { }, {
"talk": ["拥有自己的独立网站难道不酷吗🚀", "talk": ["拥有一个专属的交流平台,我们能够找到理解和同伴🚀",
"那就摸鱼吧👋", "一起度过艰难时刻,分享希望和勇气👋",
"摸鱼大军请在聊天室集合🥝"], "病友们请在聊天室集合🥝"],
"reply": [] "reply": []
} }
], ],
sayIndex: 0 sayIndex: 0
} }
}, },

@ -94,7 +94,7 @@
}, { }, {
icon: "el-icon-sugar", icon: "el-icon-sugar",
index: "/loveList", index: "/loveList",
title: "表白墙管理", title: "科研项目管理",
isBoss: true isBoss: true
}] }]
} }

@ -20,7 +20,7 @@
<el-table-column prop="username" label="用户名" align="center"></el-table-column> <el-table-column prop="username" label="用户名" align="center"></el-table-column>
<el-table-column prop="phoneNumber" label="手机号" align="center"></el-table-column> <el-table-column prop="phoneNumber" label="手机号" align="center"></el-table-column>
<el-table-column prop="email" label="邮箱" align="center"></el-table-column> <el-table-column prop="email" label="邮箱" align="center"></el-table-column>
<el-table-column label="赞赏" width="100" align="center"> <el-table-column label="援助" width="100" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-input size="medium" maxlength="30" v-model="scope.row.admire" <el-input size="medium" maxlength="30" v-model="scope.row.admire"
@blur="changeUserAdmire(scope.row)"></el-input> @blur="changeUserAdmire(scope.row)"></el-input>

@ -1,12 +1,41 @@
<template> <template>
<div> <div class="home">
<div class="welcome-title"> <h1>Welcome to the Admin Dashboard!</h1>
<h2 class="playful"> <p>Here, you can manage all aspects of your application.</p>
<span></span>
<span></span> <div class="stats-container">
<span></span> <div class="stat-card">
<span></span> <div class="stat-icon">
</h2> <i class="fas fa-users"></i>
</div>
<div class="stat-info">
<h2>网站今日访问量</h2>
<p>{{historyInfo.ip_count_today}}</p>
</div>
</div>
<div class="stats-container">
<div class="stat-card">
<div class="stat-icon">
<i class="fas fa-users"></i>
</div>
<div class="stat-info">
<h2>网站昨日访问量</h2>
<p>{{historyInfo.ip_count_yest}}</p>
</div>
</div>
</div>
<div class="stat-card">
<div class="stat-icon">
<i class="fas fa-shopping-cart"></i>
</div>
<div class="stat-info">
<h2>网站总访问量</h2>
<p>{{historyInfo.ip_history_count}}</p>
</div>
</div>
</div> </div>
</div> </div>
</template> </template>
@ -14,7 +43,9 @@
<script> <script>
export default { export default {
data() { data() {
return {} return {
historyInfo: {}
};
}, },
computed: {}, computed: {},
@ -22,85 +53,74 @@
watch: {}, watch: {},
created() { created() {
this.getHistoryInfo();
}, },
mounted() { mounted() {},
}, methods: {
getHistoryInfo() {
methods: {} this.$http.get(this.$constant.baseURL + "/webInfo/getHistoryInfo", {}, true)
.then((res) => {
if (!this.$common.isEmpty(res.data)) {
this.historyInfo = res.data;
}
})
.catch((error) => {
this.$message({
message: error.message,
type: "error"
});
});
} }
}
};
</script> </script>
<style scoped> <style scoped>
.home {
.welcome-title {
text-align: center; text-align: center;
font-size: 50px; padding: 20px;
font-weight: bold;
} }
.playful span { h1 {
position: relative; font-size: 32px;
color: #5362f6; color: #333;
text-shadow: 0.25px 0.25px #e485f8, 0.5px 0.5px #e485f8, 0.75px 0.75px #e485f8, margin-bottom: 20px;
1px 1px #e485f8, 1.25px 1.25px #e485f8, 1.5px 1.5px #e485f8, 1.75px 1.75px #e485f8,
2px 2px #e485f8, 2.25px 2.25px #e485f8, 2.5px 2.5px #e485f8, 2.75px 2.75px #e485f8,
3px 3px #e485f8, 3.25px 3.25px #e485f8, 3.5px 3.5px #e485f8, 3.75px 3.75px #e485f8,
4px 4px #e485f8, 4.25px 4.25px #e485f8, 4.5px 4.5px #e485f8, 4.75px 4.75px #e485f8,
5px 5px #e485f8, 5.25px 5.25px #e485f8, 5.5px 5.5px #e485f8, 5.75px 5.75px #e485f8,
6px 6px #e485f8;
animation: scatter 1.75s infinite;
font-weight: normal;
} }
.playful span:nth-child(2n) { p {
color: #ed625c; font-size: 18px;
text-shadow: 0.25px 0.25px #f2a063, 0.5px 0.5px #f2a063, 0.75px 0.75px #f2a063, color: #666;
1px 1px #f2a063, 1.25px 1.25px #f2a063, 1.5px 1.5px #f2a063, 1.75px 1.75px #f2a063, margin-bottom: 40px;
2px 2px #f2a063, 2.25px 2.25px #f2a063, 2.5px 2.5px #f2a063, 2.75px 2.75px #f2a063,
3px 3px #f2a063, 3.25px 3.25px #f2a063, 3.5px 3.5px #f2a063, 3.75px 3.75px #f2a063,
4px 4px #f2a063, 4.25px 4.25px #f2a063, 4.5px 4.5px #f2a063, 4.75px 4.75px #f2a063,
5px 5px #f2a063, 5.25px 5.25px #f2a063, 5.5px 5.5px #f2a063, 5.75px 5.75px #f2a063,
6px 6px #f2a063;
animation-delay: 0.3s;
} }
.playful span:nth-child(3n) { .stats-container {
color: #ffd913; display: flex;
text-shadow: 0.25px 0.25px #6ec0a9, 0.5px 0.5px #6ec0a9, 0.75px 0.75px #6ec0a9, justify-content: space-around;
1px 1px #6ec0a9, 1.25px 1.25px #6ec0a9, 1.5px 1.5px #6ec0a9, 1.75px 1.75px #6ec0a9,
2px 2px #6ec0a9, 2.25px 2.25px #6ec0a9, 2.5px 2.5px #6ec0a9, 2.75px 2.75px #6ec0a9,
3px 3px #6ec0a9, 3.25px 3.25px #6ec0a9, 3.5px 3.5px #6ec0a9, 3.75px 3.75px #6ec0a9,
4px 4px #6ec0a9, 4.25px 4.25px #6ec0a9, 4.5px 4.5px #6ec0a9, 4.75px 4.75px #6ec0a9,
5px 5px #6ec0a9, 5.25px 5.25px #6ec0a9, 5.5px 5.5px #6ec0a9, 5.75px 5.75px #6ec0a9,
6px 6px #6ec0a9;
animation-delay: 0.15s;
} }
.playful span:nth-child(5n) { .stat-card {
color: #555bff; background-color: #f2f2f2;
text-shadow: 0.25px 0.25px #e485f8, 0.5px 0.5px #e485f8, 0.75px 0.75px #e485f8, padding: 20px;
1px 1px #e485f8, 1.25px 1.25px #e485f8, 1.5px 1.5px #e485f8, 1.75px 1.75px #e485f8, border-radius: 5px;
2px 2px #e485f8, 2.25px 2.25px #e485f8, 2.5px 2.5px #e485f8, 2.75px 2.75px #e485f8, box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
3px 3px #e485f8, 3.25px 3.25px #e485f8, 3.5px 3.5px #e485f8, 3.75px 3.75px #e485f8,
4px 4px #e485f8, 4.25px 4.25px #e485f8, 4.5px 4.5px #e485f8, 4.75px 4.75px #e485f8,
5px 5px #e485f8, 5.25px 5.25px #e485f8, 5.5px 5.5px #e485f8, 5.75px 5.75px #e485f8,
6px 6px #e485f8;
animation-delay: 0.4s;
} }
.playful span:nth-child(7n) { .stat-icon {
color: #ff9c55; font-size: 24px;
text-shadow: 0.25px 0.25px #ff5555, 0.5px 0.5px #ff5555, 0.75px 0.75px #ff5555, color: #333;
1px 1px #ff5555, 1.25px 1.25px #ff5555, 1.5px 1.5px #ff5555, 1.75px 1.75px #ff5555, margin-bottom: 10px;
2px 2px #ff5555, 2.25px 2.25px #ff5555, 2.5px 2.5px #ff5555, 2.75px 2.75px #ff5555,
3px 3px #ff5555, 3.25px 3.25px #ff5555, 3.5px 3.5px #ff5555, 3.75px 3.75px #ff5555,
4px 4px #ff5555, 4.25px 4.25px #ff5555, 4.5px 4.5px #ff5555, 4.75px 4.75px #ff5555,
5px 5px #ff5555, 5.25px 5.25px #ff5555, 5.5px 5.5px #ff5555, 5.75px 5.75px #ff5555,
6px 6px #ff5555;
animation-delay: 0.25s;
} }
.stat-info h2 {
font-size: 18px;
color: #333;
margin-bottom: 5px;
}
.stat-info p {
font-size: 14px;
color: #666;
}
</style> </style>

@ -10,27 +10,27 @@
<div style="position: absolute;left: 0;top: 0;padding: 20px"> <div style="position: absolute;left: 0;top: 0;padding: 20px">
<!-- 标题 --> <!-- 标题 -->
<div style="color: var(--white);margin: 10px"> <div style="color: var(--white);margin: 10px">
<div> <!-- <div>-->
记录 <!-- 记录-->
</div> <!-- </div>-->
<div style="font-size: 36px;font-weight: bold;line-height: 2"> <div style="font-size: 36px;font-weight: bold;line-height: 2">
百宝箱 医院推荐
</div> </div>
</div> </div>
<div class="card-container"> <div class="card-container">
<!-- 收藏夹 --> <!-- 收藏夹 -->
<div @click="changeFavorite(1)" <!-- <div @click="changeFavorite(1)"-->
class="card-item"> <!-- class="card-item">-->
<div class="favorite-image"></div> <!-- <div class="favorite-image"></div>-->
<div style="position: absolute;left: 0;top: 0;padding: 20px 25px 15px"> <!-- <div style="position: absolute;left: 0;top: 0;padding: 20px 25px 15px">-->
<div class="card-name"> <!-- <div class="card-name">-->
收藏夹 <!-- 收藏夹-->
</div> <!-- </div>-->
<div class="card-desc"> <!-- <div class="card-desc">-->
poetize.cn 添加到您的收藏夹吧 <!-- poetize.cn 添加到您的收藏夹吧-->
</div> <!-- </div>-->
</div> <!-- </div>-->
</div> <!-- </div>-->
</div> </div>
</div> </div>
</div> </div>

@ -53,17 +53,17 @@
</li> </li>
<!-- 旅拍 -->
<li @click="$router.push({path: '/travel'})"> <li @click="$router.push({path: '/travel'})">
<div class="my-menu"> <div class="my-menu">
📷 <span>记录</span> 🌏 <span>照片</span>
</div> </div>
</li> </li>
<!-- 百宝箱 --> <!-- 百宝箱 -->
<li @click="$router.push({path: '/favorite'})"> <li @click="$router.push({path: '/favorite'})">
<div class="my-menu"> <div class="my-menu">
🧰 <span>百宝箱</span> 🧰 <span>医院推荐</span>
</div> </div>
</li> </li>
@ -74,11 +74,11 @@
</div> </div>
</li> </li>
<!-- 音乐 --> <!-- 音乐 -->
<li @click="$router.push({path: '/funny'})"> <!-- <li @click="$router.push({path: '/funny'})">-->
<div class="my-menu"> <!-- <div class="my-menu">-->
🎺 <span>曲乐</span> <!-- 🎺 <span>曲乐</span>-->
</div> <!-- </div>-->
</li> <!-- </li>-->
<!-- 留言 --> <!-- 留言 -->
<li @click="$router.push({path: '/message'})"> <li @click="$router.push({path: '/message'})">
<div class="my-menu"> <div class="my-menu">
@ -86,11 +86,11 @@
</div> </div>
</li> </li>
<!-- 友人帐 --> <!-- 友人帐 -->
<li @click="$router.push({path: '/friend'})"> <!-- <li @click="$router.push({path: '/friend'})">-->
<div class="my-menu"> <!-- <div class="my-menu">-->
💃 <span>友人帐</span> <!-- 💃 <span>友人帐</span>-->
</div> <!-- </div>-->
</li> <!-- </li>-->
<!-- 关于 --> <!-- 关于 -->
<li @click="$router.push({path: '/about'})"> <li @click="$router.push({path: '/about'})">

@ -25,8 +25,7 @@
<!-- 首页文字 --> <!-- 首页文字 -->
<div class="signature-wall myCenter my-animation-hideToShow"> <div class="signature-wall myCenter my-animation-hideToShow">
<h1 class="playful"> <h1 class="playful">
<p> </p> <span v-for="(a, index) in $store.state.webInfo.webTitle" :key="index">{{a}}</span>
<!--<span v-for="(a, index) in $store.state.webInfo.webTitle" :key="index">{{a}}</span>-->
</h1> </h1>
<!-- 搜索 --> <!-- 搜索 -->
@ -83,13 +82,11 @@
<div class="announcement background-opacity"> <div class="announcement background-opacity">
<i class="fa fa-volume-up" aria-hidden="true"></i> <i class="fa fa-volume-up" aria-hidden="true"></i>
<div> <div>
<!-- <div v-for="(notice, index) in $store.state.webInfo.notices" :key="index">--> <div v-for="(notice, index) in $store.state.webInfo.notices" :key="index">
<!-- {{ notice }}--> {{ notice }}
<!-- </div>--> </div>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;世界上只有一种真正的英雄主义那就是看清生活的真相之后依然勇敢地热爱生活
</div> </div>
</div> </div>
<articleList :articleList="articles"></articleList>
<template> <template>
<div class="shadow-box pagination-wrap background-opacity"> <div class="shadow-box pagination-wrap background-opacity">
@ -120,6 +117,18 @@
:total=this.pagination.total> :total=this.pagination.total>
</el-pagination> </el-pagination>
</div> </div>
<articleList :articleList="articles"></articleList>
<div class="pagination-wrap">
<div @click="pageArticles()" class="pagination" v-if="pagination.total !== articles.length">
下一页
</div>
<div v-else style="user-select: none">
~~到底啦~~
</div>
</div>
</template> </template>

@ -52,6 +52,24 @@
</div> </div>
</div> </div>
<!-- 分类 -->
<div class="shadow-box background-opacity wow"
style="margin-top: 30px;padding: 25px 25px 5px;border-radius: 10px;animation: hideToShow 1s ease-in-out">
<div class="card-content2-title">
<i class="el-icon-folder-opened card-content2-icon"></i>
<span>药品简述</span>
</div>
<!-- <div v-for="(sort, index) in sortInfo"-->
<!-- :key="index"-->
<!-- class="post-sort"-->
<!-- @click="$router.push({path: '/sort', query: {sortId: sort.id}})">-->
<!-- <div>-->
<!-- <span v-for="(s, i) in sort.sortName.split('')" :key="i">{{ s }}</span>-->
<!-- </div>-->
<!-- </div>-->
{{drugDetails}}
</div>
<!-- 推荐文章 --> <!-- 推荐文章 -->
<div v-if="!$common.isEmpty(recommendArticles)" <div v-if="!$common.isEmpty(recommendArticles)"
style="padding: 25px;border-radius: 10px;margin-top: 30px;animation: hideToShow 1s ease-in-out" style="padding: 25px;border-radius: 10px;margin-top: 30px;animation: hideToShow 1s ease-in-out"
@ -84,38 +102,21 @@
</div> </div>
<!-- 速览 --> <!-- 速览 -->
<div v-for="(sort, index) in sortInfo"
@click="selectSort(sort)"
:key="index"
:style="{background: $constant.sortColor[index % $constant.sortColor.length]}"
class="shadow-box-mini background-opacity wow"
style="position: relative;padding: 10px 25px 15px;border-radius: 10px;animation: hideToShow 1s ease-in-out;margin-top: 30px;cursor: pointer;color: var(--white)">
<div>速览</div>
<div class="sort-name">
{{sort.sortName}}
</div>
<div style="font-weight: bold;margin-top: 15px;white-space: nowrap;text-overflow: ellipsis;overflow: hidden">
{{sort.sortDescription}}
</div>
</div>
<!-- 分类 -->
<div class="shadow-box background-opacity wow"
style="margin-top: 30px;padding: 25px 25px 5px;border-radius: 10px;animation: hideToShow 1s ease-in-out">
<div class="card-content2-title">
<i class="el-icon-folder-opened card-content2-icon"></i>
<span>药品简述</span>
</div>
<!-- <div v-for="(sort, index) in sortInfo"--> <!-- <div v-for="(sort, index) in sortInfo"-->
<!-- @click="selectSort(sort)"-->
<!-- :key="index"--> <!-- :key="index"-->
<!-- class="post-sort"--> <!-- :style="{background: $constant.sortColor[index % $constant.sortColor.length]}"-->
<!-- @click="$router.push({path: '/sort', query: {sortId: sort.id}})">--> <!-- class="shadow-box-mini background-opacity wow"-->
<!-- <div>--> <!-- style="position: relative;padding: 10px 25px 15px;border-radius: 10px;animation: hideToShow 1s ease-in-out;margin-top: 30px;cursor: pointer;color: var(&#45;&#45;white)">-->
<!-- <span v-for="(s, i) in sort.sortName.split('')" :key="i">{{ s }}</span>--> <!-- <div>速览</div>-->
<!-- <div class="sort-name">-->
<!-- {{sort.sortName}}-->
<!-- </div>--> <!-- </div>-->
<!-- <div style="font-weight: bold;margin-top: 15px;white-space: nowrap;text-overflow: ellipsis;overflow: hidden">-->
<!-- {{sort.sortDescription}}-->
<!-- </div>--> <!-- </div>-->
{{drugDetails}} <!-- </div>-->
</div>
<!-- 赞赏 --> <!-- 赞赏 -->
<div class="shadow-box-mini background-opacity wow admire-box" <div class="shadow-box-mini background-opacity wow admire-box"
@ -137,8 +138,7 @@
</div> </div>
</div> </div>
<div style="height: 36px;line-height: 36px"> <div style="height: 36px;line-height: 36px">
<!-- {{ item.admire }}--> {{ item.admire }}
500
</div> </div>
</div> </div>
</vue-seamless-scroll> </vue-seamless-scroll>

@ -11,7 +11,7 @@
<!-- 标题 --> <!-- 标题 -->
<div style="margin: 10px"> <div style="margin: 10px">
<div style="font-size: 36px;font-weight: bold;line-height: 1.5;margin-top: 20px"> <div style="font-size: 36px;font-weight: bold;line-height: 1.5;margin-top: 20px">
让照片留下医药学的足迹 悲伤和希望都是一缕光
</div> </div>
</div> </div>
</div> </div>
@ -89,6 +89,7 @@ export default {
created() { created() {
this.getPhotoTitles(); this.getPhotoTitles();
this.changePhotoTitle();
}, },
mounted() { mounted() {

@ -83,7 +83,7 @@
<div v-if="!$common.isEmpty(currentUser.phoneNumber)"> <div v-if="!$common.isEmpty(currentUser.phoneNumber)">
{{ currentUser.phoneNumber }} <span class="changeInfo" @click="changeDialog('修改手机号')"></span> {{ currentUser.phoneNumber }} <span class="changeInfo" @click="changeDialog('修改手机号')"></span>
</div> </div>
<div v-else><span class="changeInfo" @click="changeDialog('绑定手机号')"></span></div> <div v-else><span class="changeInfo" @click="changeDialog('绑定手机号')"></span></div>
</div> </div>
<div> <div>
<div v-if="!$common.isEmpty(currentUser.email)"> <div v-if="!$common.isEmpty(currentUser.email)">

Binary file not shown.

Before

Width:  |  Height:  |  Size: 89 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 213 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 292 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 61 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 152 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 115 KiB

Loading…
Cancel
Save