2312970463@qq.com 4 years ago
parent
commit
a4e19608ce

BIN
src/assets/img/i8.png


+ 6 - 3
src/components/leftNav/LeftNav.vue

@@ -23,7 +23,7 @@
 					如何报名
 				</div>
 			</template>
-			<div style="padding: 35px 50px 35px 50px;">
+			<div style="padding: 35px 50px 35px 50px;" class="line">
 				<slot></slot>
 			</div>
 			
@@ -88,10 +88,10 @@
 					case '/news/detail':
 						title = '红会新闻'
 						break
-					case '/puplicity/list':
+					case '/publicity/list':
 						title = '信息公示'
 						break
-					case '/puplicity/detail':
+					case '/publicity/detail':
 						title = '信息公示'
 						break
 				     default:
@@ -197,5 +197,8 @@
 			background: #FFFFFF;
 			color: #D82020;
 		}
+	}
+	.line {
+		line-height: 1.5;
 	}
 </style>

+ 17 - 0
src/request/api.js

@@ -18,6 +18,23 @@ export function splist(data) {
 		params: data
 	});
 }
+// 获取红会新闻文章列表
+export function newsList(data) {
+	return request({
+		url: '/api/article/list/7',
+		method: 'get',
+		params: data
+	});
+}
+// 获取红会新闻文章列表
+export function openList(data) {
+	return request({
+		url: '/api/article/list/8',
+		method: 'get',
+		params: data
+	});
+}
+
 // 获取文章详情
 export function details(data,id) {
 	return request({

+ 19 - 14
src/views/About.vue

@@ -1,37 +1,42 @@
 <template>
 	<div class="about">
 		<left-nav :navList="navList">
-			about
+			<div id="" v-html="content">
+				
+			</div>
 		</left-nav>
 	</div>
 </template>
 
 <script>
 import LeftNav from '../components/leftNav/LeftNav.vue';
-
+import { details } from '../request/api.js'
 export default {
 	components: {
-		LeftNav
+		LeftNav,
+		
 	},
 	data() {
 		return {
 			navList: [{ index: 0, name: '关于我们', path: '/about' }, { index: 1, name: '联系我们', path: '/concat' }],
 			// radio: '1'
+			content: ''
 		};
+	},
+	created() {
+		this.getContent()
+	},
+	methods:{
+		getContent() {
+			details({},34).then(({data}) => {
+				console.log(data.data)
+				this.content = data.data.content
+			})
+		}
 	}
 };
 </script>
 
 <style lang="scss" scoped>
-// .about {
-// 	width: 1200px;
-// 	margin: 0 auto;
-// 	display: flex;
-// 	justify-content: space-between;
-// 	.right-wrapper {
-// 		width: 915px;
-// 		min-height: 776px;
-// 		box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
-// 	}
-// }
+
 </style>

+ 42 - 36
src/views/Concat.vue

@@ -1,41 +1,47 @@
 <template>
-	<div class="concat">
-		<left-nav :navList="navList">
-			concat
-		</left-nav>
-	</div>
-</template>
-
-<script>
-	import LeftNav from '../components/leftNav/LeftNav.vue'
+	<div class="concat"><left-nav :navList="navList"><div v-html="content">
+		
+	</div></left-nav></div>
+</template>
 
-	export default {
-		components: {
-			LeftNav,
-			// PageTitle
-		},
-		data() {
-			return {
-				navList: [
-					{ index: 0, name: '关于我们', path: '/about'},
-					{ index: 1, name: '联系我们', path: '/concat'}
-				],
-			}
-			
+<script>
+import LeftNav from '../components/leftNav/LeftNav.vue';
+import { details } from '../request/api.js';
+export default {
+	components: {
+		LeftNav
+		// PageTitle
+	},
+	data() {
+		return {
+			navList: [{ index: 0, name: '关于我们', path: '/about' }, { index: 1, name: '联系我们', path: '/concat' }],
+			content: ''
+		};
+	},
+	created() {
+		this.getContent()
+	},
+	methods:{
+		getContent() {
+			details({},35).then(({data}) => {
+				console.log(data.data)
+				this.content = data.data.content
+			})
 		}
-	}
-</script>
-
+	}
+};
+</script>
+
 <style lang="scss" scoped>
-	.concat {
-		width: 1200px;
-		margin: 0 auto;
-		display: flex;
-		justify-content: space-between;
-		.right-wrapper {
-			width: 915px;
-			min-height: 776px;
-			box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
-		}
-	}
+.concat {
+	width: 1200px;
+	margin: 0 auto;
+	display: flex;
+	justify-content: space-between;
+	.right-wrapper {
+		width: 915px;
+		min-height: 776px;
+		box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
+	}
+}
 </style>

+ 35 - 7
src/views/Home.vue

@@ -10,24 +10,24 @@
 				<div class="red-new">
 					<item-title title="红会新闻" :topath="'/news'"></item-title>
 					<div class="item-wrapper">
-						<div class="new-item hand" v-for="item in redNews" :key="item.id">
+						<div class="new-item hand" v-for="item in redNews" :key="item.id" @click="navTo('/news/detail?id='+ item.id)">
 							<div class="title clamp ">
 								<span></span>
 								{{ item.title }}
 							</div>
-							<div class="time">{{ item.add_time | getTime }}</div>
+							<div class="time">{{ item.add_time }}</div>
 						</div>
 					</div>
 				</div>
 				<div class="new-open">
 					<item-title title="信息公示" :topath="'/publicity'"></item-title>
 					<div class="item-wrapper">
-						<div class="new-item hand" v-for="item in openNews" :key="item.id">
+						<div class="new-item hand" v-for="item in openNews" :key="item.id" @click="navTo('/publicity/detail?id='+item.id)">
 							<div class="title clamp">
 								<span></span>
 								{{ item.title }}
 							</div>
-							<div class="time">{{ item.add_time | getTime }}</div>
+							<div class="time">{{ item.add_time}}</div>
 						</div>
 					</div>
 				</div>
@@ -74,7 +74,7 @@
 <script>
 import ItemTitle from './homeChild/ItemTitle.vue';
 
-import { loadIndexs, splist, loveList, friendList } from '../request/api.js';
+import { loadIndexs, splist, loveList, friendList , newsList, openList } from '../request/api.js';
 export default {
 	components: {
 		ItemTitle
@@ -120,7 +120,7 @@ export default {
 				{
 					path: '/popularScience/list',
 					title: '红会科普',
-					image: require('@/assets/img/i7.png')
+					image: require('@/assets/img/i8.png')
 				}
 			],
 			swiperList: [],
@@ -169,6 +169,8 @@ export default {
 		this.getIndex();
 		this.getFirstAidList();
 		this.getJxList();
+		this.getNewsList()
+		this.getOpenList()
 	},
 	methods: {
 		navTo(url) {
@@ -219,6 +221,26 @@ export default {
 				// console.log(obj.moreJxList)
 				obj.gundong()
 			},2000)
+		},
+		getNewsList() {
+			let obj = this
+			newsList({
+				page: 1,
+				limit: 9
+			}).then(res => {
+				console.log(res.data.data.list,'0000000000')
+				obj.redNews = res.data.data.list
+			})
+		},
+		getOpenList() {
+			let obj = this
+			openList({
+				page: 1,
+				limit: 9
+			}).then(res => {
+				console.log(res.data.data.list,'0000000000')
+				obj.openNews = res.data.data.list
+			})
 		}
 	}
 };
@@ -265,10 +287,12 @@ export default {
 		}
 		.item-wrapper {
 			padding: 20px 15px 0 13px;
+			
 			.new-item {
 				display: flex;
 				justify-content: space-between;
 				margin-bottom: 17px;
+				
 				span {
 					display: inline-block;
 					width: 8px;
@@ -277,14 +301,18 @@ export default {
 					// border-radius: 50%;
 					transform: rotate(45deg);
 					margin-right: 8px;
+					
 				}
 				.title {
-					width: 460px;
+					width: 400px;
 					height: 14px;
 					font-size: 14px;
 					font-family: PingFang SC;
 					font-weight: bold;
 					color: #101010;
+					&:hover {
+						color: red;
+					}
 				}
 				.time {
 					font-size: 14px;

+ 1 - 1
src/views/News.vue

@@ -1,7 +1,7 @@
 <template>
 	<div class="news">
 		<left-nav :navList="navList">
-			news
+			<router-view></router-view>
 		</left-nav>
 	</div>
 </template>

+ 1 - 1
src/views/Publicity.vue

@@ -1,7 +1,7 @@
 <template>
 	<div class="publicity">
 		<left-nav :navList="navList">
-			publicity
+			<router-view></router-view>
 		</left-nav>
 	</div>
 </template>

+ 4 - 4
src/views/donation/Hpc.vue

@@ -1,9 +1,6 @@
 <template>
 	<div class="hpc">
-		<!-- {{iid}} -->
-		<div v-html="content">
-			
-		</div>
+		<div v-html="content"></div>
 	</div>
 </template>
 
@@ -32,6 +29,9 @@
 		},
 		methods: {
 			getData(val) {
+				if(!val){
+					val = 0
+				}
 				if(val==0){
 					this.getContent(27)
 				}else {

+ 26 - 3
src/views/join/Member.vue

@@ -1,11 +1,34 @@
 <template>
 	<div class="member">
-		登记会员
+		<div class="" v-html="content">
+			
+		</div>
 	</div>
 </template>
 
-<script>
+<script>
+	import { details } from '../../request/api.js'
+	
+	export default {
+		data() {
+			return {
+				content: ''
+			}
+		},
+		created() {
+			this.getContent()
+		},
+		methods: {
+			getContent() {
+				details({},31).then(({data}) => {
+					console.log(data.data)
+					this.content = data.data.content
+				})
+			}
+		}
+	}
 </script>
 
-<style>
+<style lang="scss" scoped="">
 </style>
+

+ 25 - 3
src/views/join/Rescue.vue

@@ -1,11 +1,33 @@
 <template>
 	<div class="rescue">
-		rescue
+		<div class="" v-html="content">
+			
+		</div>
 	</div>
 </template>
 
-<script>
+<script>
+	import { details } from '../../request/api.js'
+	
+	export default {
+		data() {
+			return {
+				content: ''
+			}
+		},
+		created() {
+			this.getContent()
+		},
+		methods: {
+			getContent() {
+				details({},30).then(({data}) => {
+					console.log(data.data)
+					this.content = data.data.content
+				})
+			}
+		}
+	}
 </script>
 
-<style>
+<style lang="scss" scoped="">
 </style>

+ 26 - 3
src/views/join/Train.vue

@@ -1,11 +1,34 @@
 <template>
 	<div class="train">
-		train
+		<div class="" v-html="content">
+			
+		</div>
 	</div>
 </template>
 
-<script>
+<script>
+	import { details } from '../../request/api.js'
+	
+	export default {
+		data() {
+			return {
+				content: ''
+			}
+		},
+		created() {
+			this.getContent()
+		},
+		methods: {
+			getContent() {
+				details({},38).then(({data}) => {
+					console.log(data.data)
+					this.content = data.data.content
+				})
+			}
+		}
+	}
 </script>
 
-<style>
+<style lang="scss" scoped="">
 </style>
+

+ 25 - 3
src/views/join/Volunteer.vue

@@ -1,11 +1,33 @@
 <template>
 	<div class="volunteer">
-		volunteer
+		<div class="" v-html="content">
+			
+		</div>
 	</div>
 </template>
 
-<script>
+<script>
+	import { details } from '../../request/api.js'
+	
+	export default {
+		data() {
+			return {
+				content: ''
+			}
+		},
+		created() {
+			this.getContent()
+		},
+		methods: {
+			getContent() {
+				details({},32).then(({data}) => {
+					console.log(data.data)
+					this.content = data.data.content
+				})
+			}
+		}
+	}
 </script>
 
-<style>
+<style lang="scss" scoped="">
 </style>

+ 37 - 2
src/views/news/Detail.vue

@@ -1,7 +1,42 @@
-<template>
+<template>
+	<div class="new-detail">
+		<div id="" v-html="content">
+			
+		</div>
+	</div>
 </template>
 
-<script>
+<script>
+	import { details } from '../../request/api.js'
+	export default {
+		data() {
+			return {
+				content: '',
+				detail: {},
+				idd:0
+			}
+		},
+		created() {
+			console.log('ddddddddddddddd')
+			this.getContent()
+		},
+		methods:{
+			getContent() {
+				let obj = this
+				this.idd = this.$route.query.id
+				console.log(this.idd)
+				obj.getDetail()
+			},
+			getDetail() {
+				let obj = this
+				details({},this.idd).then(res => {
+					console.log(res)
+					obj.content = res.data.data.content
+					console.log()
+				})
+			}
+		}
+	}
 </script>
 
 <style>

+ 99 - 7
src/views/news/List.vue

@@ -1,8 +1,100 @@
-<template>
-</template>
-
-<script>
-</script>
-
-<style>
+<template>
+	<div class="new-list">
+		<div class="new-item  hand" v-for="item in newList" :key="item.id" @click="navTo('/news/detail?id='+ item.id)">
+			<div class="title clamp">
+				<span class="title-icon"></span>
+				{{ item.title }}
+			</div>
+			<div class="time">{{ item.add_time }}</div>
+		</div>
+		<el-pagination layout="prev, pager, next" :total="total" background prev-text="上一页" next-text="下一页" @current-change="currentChange" :page-size="15"></el-pagination>
+	</div>
+</template>
+
+<script>
+import { loadIndexs, splist, loveList, friendList , newsList, openList } from '../../request/api.js';
+export default {
+	data() {
+		return {
+			newList: [],
+			total: 0,
+			page: 1,
+			limit: 15
+		};
+	},
+	// filters: {
+	// 	time(val) {
+	// 		let date = new Date(val * 1000);
+	// 		let Y = date.getFullYear();
+	// 		let M = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1;
+	// 		let D = date.getDate() < 10 ? '0' + date.getDate() : date.getDate();
+	// 		return Y + '-' + M + '-' + D;
+	// 	}
+	// },
+	created() {
+		this.getList()
+	},
+	methods:{
+		navTo(url) {
+			this.$router.push(url);
+		},
+		currentChange(e) {
+			console.log(e);
+			this.page = e
+			// this.getList()
+		},
+		getList() {
+			let obj = this
+			newsList({
+				page: obj.page,
+				limit: obj.limit
+			}).then(res => {
+				obj.newList = res.data.data.list
+				obj.total = res.data.data.count
+			})
+		}
+	}
+};
+</script>
+
+<style lang="scss" scoped>
+.new-list {
+	// padding: 0px 72px 0 40px;
+	.new-item {
+		display: flex;
+		justify-content: space-between;
+		font-size: 18px;
+		font-family: PingFang SC;
+		font-weight: 500;
+		color: #666666;
+		height: 40px;
+		border-bottom: 1px solid #E5E5E5;
+		line-height: 40px;
+		&:hover {
+			color: red;
+			.title {
+				.title-icon {
+					border-left-color: red;
+				}
+			}
+		}
+		.title {
+			width: 500px;
+			.title-icon {
+				display: inline-block;
+				width: 0;
+				height: 0;
+				width: 0;
+				height: 0;
+				border-top: 6px solid transparent;
+				border-left: 8px solid #d2d2d2;
+				border-bottom: 6px solid transparent;
+			}
+		}
+	}
+}
+	/deep/ .el-pagination {
+		margin-top: 50px;
+		text-align: center;
+	}
 </style>

+ 0 - 2
src/views/popularScience/Detail.vue

@@ -1,8 +1,6 @@
 <template>
 	<div class="detail">
 		<div class="content" v-html="content"></div>
-		<div class="title">{{detail.title}}</div>
-		<div class="synopsis">{{detail.synopsis}}</div>
 	</div>
 </template>
 

+ 7 - 3
src/views/popularScience/List.vue

@@ -51,6 +51,7 @@
 					// obj.alllist = data.data
 					obj.total = data.data.count
 					obj.tipList = data.data.list
+					console.log(obj.total,'obj.total ++++++++++')
 				})
 			},
 			getList() {
@@ -60,8 +61,10 @@
 					limit: this.limit
 				}
 				splist(data).then(({data}) => {
-					// console.log(data.data)
-					obj.tipList = data.data
+					console.log(data.data)
+					obj.tipList = data.data.list
+					// obj.total = data.data.count
+					// console.log(obj.total)
 				})
 			}
 		}
@@ -84,7 +87,8 @@
 			.title {
 				padding-top: 5px;
 				width: 200px;
-				height: 19px;
+				// height: 19px;
+				
 				font-size: 18px;
 				font-family: PingFang SC;
 				font-weight: bold;

+ 37 - 2
src/views/publicity/Detail.vue

@@ -1,7 +1,42 @@
-<template>
+<template>
+	<div class="new-detail">
+		<div id="" v-html="content">
+			
+		</div>
+	</div>
 </template>
 
-<script>
+<script>
+	import { details } from '../../request/api.js'
+	export default {
+		data() {
+			return {
+				content: '',
+				detail: {},
+				idd:0
+			}
+		},
+		created() {
+			console.log('ddddddddddddddd')
+			this.getContent()
+		},
+		methods:{
+			getContent() {
+				let obj = this
+				this.idd = this.$route.query.id
+				console.log(this.idd)
+				obj.getDetail()
+			},
+			getDetail() {
+				let obj = this
+				details({},this.idd).then(res => {
+					console.log(res)
+					obj.content = res.data.data.content
+					console.log()
+				})
+			}
+		}
+	}
 </script>
 
 <style>

+ 99 - 7
src/views/publicity/List.vue

@@ -1,8 +1,100 @@
-<template>
-</template>
-
-<script>
-</script>
-
-<style>
+<template>
+	<div class="new-list">
+		<div class="new-item  hand" v-for="item in newList" :key="item.id" @click="navTo('/publicity/detail?id='+ item.id)">
+			<div class="title clamp">
+				<span class="title-icon"></span>
+				{{ item.title }}
+			</div>
+			<div class="time">{{ item.add_time }}</div>
+		</div>
+		<el-pagination layout="prev, pager, next" :total="total" background prev-text="上一页" next-text="下一页" @current-change="currentChange" :page-size="15"></el-pagination>
+	</div>
+</template>
+
+<script>
+import { loadIndexs, splist, loveList, friendList , newsList, openList } from '../../request/api.js';
+export default {
+	data() {
+		return {
+			newList: [],
+			total: 0,
+			page: 1,
+			limit: 15
+		};
+	},
+	// filters: {
+	// 	time(val) {
+	// 		let date = new Date(val * 1000);
+	// 		let Y = date.getFullYear();
+	// 		let M = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1;
+	// 		let D = date.getDate() < 10 ? '0' + date.getDate() : date.getDate();
+	// 		return Y + '-' + M + '-' + D;
+	// 	}
+	// },
+	created() {
+		this.getList()
+	},
+	methods:{
+		navTo(url) {
+			this.$router.push(url);
+		},
+		currentChange(e) {
+			console.log(e);
+			this.page = e
+			// this.getList()
+		},
+		getList() {
+			let obj = this
+			openList({
+				page: obj.page,
+				limit: obj.limit
+			}).then(res => {
+				obj.newList = res.data.data.list
+				obj.total = res.data.data.count
+			})
+		}
+	}
+};
+</script>
+
+<style lang="scss" scoped>
+.new-list {
+	// padding: 0px 72px 0 40px;
+	.new-item {
+		display: flex;
+		justify-content: space-between;
+		font-size: 18px;
+		font-family: PingFang SC;
+		font-weight: 500;
+		color: #666666;
+		height: 40px;
+		border-bottom: 1px solid #E5E5E5;
+		line-height: 40px;
+		&:hover {
+			color: red;
+			.title {
+				.title-icon {
+					border-left-color: red;
+				}
+			}
+		}
+		.title {
+			width: 500px;
+			.title-icon {
+				display: inline-block;
+				width: 0;
+				height: 0;
+				width: 0;
+				height: 0;
+				border-top: 6px solid transparent;
+				border-left: 8px solid #d2d2d2;
+				border-bottom: 6px solid transparent;
+			}
+		}
+	}
+}
+	/deep/ .el-pagination {
+		margin-top: 50px;
+		text-align: center;
+	}
 </style>