lhl 4 years ago
parent
commit
52acb0aced

+ 6 - 12
src/App.vue

@@ -36,22 +36,16 @@ export default {
 	margin: 0 auto;
 }
 .bg {
-	position: absolute;
-	left: 0;
-	right: 0;
+	// position: absolute;
+	// left: 0;
+	// right: 0;
 	margin: 0 auto;
-	// margin: 0 auto -300px;
 	height: 300px;
-	// max-width: 1920px;
-	// min-width: 1200px;
-	width: 100%;
-	
-	// background-image: url(assets/img/m1.png);
-	// background-size: auto 100%;
-	z-index: -1;
+	margin-bottom: -300px;
+	// z-index: -1;
 	img {
+		// min-width: 100vw;
 		width: 100%;
-		
 		height: 300px;
 	}
 }

+ 1 - 1
src/components/leftNav/LeftNav.vue

@@ -204,7 +204,7 @@
 		},
 		methods: {
 			navTo(path) {
-				console.log(path,'dddddddddddddddd')
+				// console.log(path,'dddddddddddddddd')
 				let currentUrl = this.$route.path
 				if (currentUrl === path) {
 					return

+ 2 - 1
src/components/navBar/NavBar.vue

@@ -88,7 +88,7 @@
 		height: 60px;
 		margin: 0 auto;
 		display: flex;
-		background-color: #d82020;
+		background: #d82020;
 		font-size: 18px;
 		font-family: PingFang SC;
 		font-weight: bold;
@@ -97,6 +97,7 @@
 		margin-bottom: 24px;
 
 		.bar-item {
+			background: #d82020;
 			flex-grow: 1;
 			height: 60px;
 			display: flex;

+ 27 - 0
src/router.js

@@ -240,6 +240,33 @@ export default new Router({
 						}
 					}
 				]
+			},
+			{
+				path: 'development',
+				name: 'development',
+				component: () => import('./views/knowledge/BloodDonation.vue'),
+				meta: {
+					title: '无偿献血'
+				},
+				redirect: '/knowledge/development/list',
+				children: [
+					{
+						path: 'list',
+						name: 'developmentlist',
+						component: () => import('./views/knowledge/development/List.vue'),
+						meta: {
+							title: '无偿献血'
+						}
+					},
+					{
+						path: 'detail',
+						name: 'developmentdetail',
+						component: () => import('./views/knowledge/development/Detail.vue'),
+						meta: {
+							title: '无偿献血'
+						}
+					}
+				]
 			}
 		]
 	},

+ 2 - 2
src/views/About.vue

@@ -61,14 +61,14 @@ export default {
 		getList() {
 			let that = this
 			getArticleList({},43).then(({data}) => {
-				console.log(data)
+				// console.log(data)
 				let arr = data.list.reverse()
 				arr.forEach(item => {
 					let obj = {}
 					obj.name = item.title
 					obj.uid = item.id
 					that.navList.push(obj)
-					console.log(that.navList,'55555')
+					// console.log(that.navList,'55555')
 				})
 				this.navClick(arr[0].id)
 			}).catch( err => {

+ 18 - 3
src/views/Cause.vue

@@ -52,19 +52,34 @@ export default {
 		this.getList()
 	},
 	methods:{
+		compare(attribute) {
+			return function(obj1, obj2) {				
+				let val1 = obj1[attribute]
+				var val2 = obj2[attribute]
+				if (val1 > val2) {
+					return 1;
+				} else if (val1 < val2) {
+					return -1;
+				} else {
+					return 0;
+				}
+			}
+		},
 		getList() {
 			let that = this
 			getArticleList({},46).then(({data}) => {
-				console.log(data)
+				// console.log(data)
 				let arr = data.list.reverse()
 				arr.forEach(item => {
 					let obj = {}
 					obj.name = item.title
 					obj.uid = item.id
+					obj.ps = item.synopsis
 					that.navList.push(obj)
-					console.log(that.navList,'55555')
+					// console.log(that.navList,'55555')
 				})
-				this.navClick(arr[0].id)
+				that.navList = that.navList.sort(this.compare('ps'))
+				this.navClick(that.navList[0].uid)
 			}).catch( err => {
 				console.log(err)
 			})

+ 2 - 2
src/views/Concat.vue

@@ -61,14 +61,14 @@ export default {
 		getList() {
 			let that = this
 			getArticleList({},44).then(({data}) => {
-				console.log(data)
+				// console.log(data)
 				let arr = data.list.reverse()
 				arr.forEach(item => {
 					let obj = {}
 					obj.name = item.title
 					obj.uid = item.id
 					that.navList.push(obj)
-					console.log(that.navList,'55555')
+					// console.log(that.navList,'55555')
 				})
 				this.navClick(arr[0].id)
 			}).catch( err => {

+ 1 - 1
src/views/Donation.vue

@@ -24,7 +24,7 @@
 					{ index: 3, name: '会员入会登记', path: '/join/member' },
 					{ index: 4, name: '志愿者报名', path: '/join/volunteer' },
 					{ index: 5, name: '救护员培训报名', path: '/join/train' },
-					{ index: 6, name: '加入在身边志愿者', path: '/join/rescue' },
+					{ index: 6, name: '加入在身边志愿者', path: '/join/rescue' },
 				],
 				rightTitle: '爱心捐赠',
 				currentIndex: 0

+ 24 - 20
src/views/Home.vue

@@ -9,9 +9,9 @@
 		</div>
 		<div class="news-wrapper">
 			<div class="new-pic">
-				<el-carousel :interval="4000" height="320px" indicator-position="none">
+				<el-carousel :interval="4000" height="344px" indicator-position="none">
 					<el-carousel-item v-for="(item, index) in redNews.slice(0,3)" :key="index">
-						<img :src="item.image_input[0]" @click="navTo('/news/datatile?id='+ item.id)" />
+						<img :src="item.image_input[0]" @click="navTo('/news/detail?id='+ item.id)" />
 						<div class="title clamp hand">{{ item.title }}</div>
 					</el-carousel-item>
 				</el-carousel>
@@ -84,9 +84,9 @@
 					<div class="table-empty" v-if="jxList.length == 0">暂无更多捐赠数据</div>
 					<template v-else>
 						<div class="list-item flex" v-for="(item, index) in jxList" :key="index">
-							<div class="clamp">{{ item.time }}</div>
-							<div class="clamp">{{ item.donate_er }}</div>
-							<div class="clamp">{{ item.money }}</div>
+							<div class="clamp">{{ item.release_time }}</div>
+							<div class="clamp">{{ item.title }}</div>
+							<div class="clamp">{{ item.synopsis }}</div>
 							<!-- <div class="clamp">{{ item.intention }}</div> -->
 						</div>
 					</template>
@@ -149,7 +149,7 @@
 					},
 					{
 						path: '/join/rescue',
-						title: '加入在身边',
+						title: '加入在身边',
 						image: require('@/assets/img/i4.png')
 					},
 					{
@@ -275,21 +275,25 @@
 					page: 1,
 					limit: 20
 				};
-				loveList(data).then(res => {
-					obj.moreJxList = res.data.list.map(item => {
-						if (item.intention === '') {
-							item.intention = '非定向捐款';
-						}
-						let date = new Date(item.add_time * 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();
-						item.time = Y + '/' + M + '/' + D;
-						return item;
-					});
+				getList(data,62).then(({data}) => {
+					obj.moreJxList = data.list
 					obj.gundong();
-				});
+				})
+				// loveList(data).then(res => {
+				// 	obj.moreJxList = res.data.list.map(item => {
+				// 		if (item.intention === '') {
+				// 			item.intention = '非定向捐款';
+				// 		}
+				// 		let date = new Date(item.add_time * 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();
+				// 		item.time = Y + '/' + M + '/' + D;
+				// 		return item;
+				// 	});
+				// 	obj.gundong();
+				// });
 			},
 			gundong() {
 				let obj = this;

+ 18 - 3
src/views/Introduce.vue

@@ -52,19 +52,34 @@ export default {
 		this.getList()
 	},
 	methods:{
+		compare(attribute) {
+			return function(obj1, obj2) {				
+				let val1 = obj1[attribute]
+				var val2 = obj2[attribute]
+				if (val1 > val2) {
+					return 1;
+				} else if (val1 < val2) {
+					return -1;
+				} else {
+					return 0;
+				}
+			}
+		},
 		getList() {
 			let that = this
 			getArticleList({},43).then(({data}) => {
-				console.log(data)
+				// console.log(data)
 				let arr = data.list.reverse()
 				arr.forEach(item => {
 					let obj = {}
 					obj.name = item.title
 					obj.uid = item.id
+					obj.ps = item.synopsis
 					that.navList.push(obj)
-					console.log(that.navList,'55555')
+					// console.log(that.navList,'55555')
 				})
-				this.navClick(arr[0].id)
+				that.navList = that.navList.sort(this.compare('ps'))
+				this.navClick(that.navList[0].uid)
 			}).catch( err => {
 				console.log(err)
 			})

+ 1 - 1
src/views/Join.vue

@@ -22,7 +22,7 @@
 					{ index: 3, name: '会员入会登记', path: '/join/member' },
 					{ index: 4, name: '志愿者报名', path: '/join/volunteer' },
 					{ index: 5, name: '救护员培训报名', path: '/join/train' },
-					{ index: 6, name: '加入在身边志愿者', path: '/join/rescue' },
+					{ index: 6, name: '加入在身边志愿者', path: '/join/rescue' },
 				],
 				rightTitle: '志愿者报名',
 			}

+ 17 - 2
src/views/Law.vue

@@ -54,19 +54,34 @@ export default {
 		this.getList()
 	},
 	methods:{
+		compare(attribute) {
+			return function(obj1, obj2) {				
+				let val1 = obj1[attribute]
+				var val2 = obj2[attribute]
+				if (val1 > val2) {
+					return 1;
+				} else if (val1 < val2) {
+					return -1;
+				} else {
+					return 0;
+				}
+			}
+		},
 		getList() {
 			let that = this
 			getArticleList({},10).then(({data}) => {
-				console.log(data)
+				// console.log(data)
 				let arr = data.list.reverse()
 				arr.forEach(item => {
 					let obj = {}
 					obj.name = item.title
 					obj.uid = item.id
+					obj.ps = item.synopsis
 					that.navList.push(obj)
 					console.log(that.navList,'55555')
 				})
-				this.navClick(arr[0].id)
+				that.navList = that.navList.sort(this.compare('ps'))
+				this.navClick(that.navList[0].uid)
 			}).catch( err => {
 				console.log(err)
 			})

+ 21 - 15
src/views/LoveList.vue

@@ -36,6 +36,24 @@ export default {
 		this.getLiveList()
 	},
 	methods: {
+		compare(attribute) {
+			return function(obj1, obj2) {
+				
+				// var val1 = obj1[attribute].replace(/./g,'');
+				let val1 = obj1[attribute].split('.').join('')*1
+				// console.log(obj1[attribute])
+				console.log(val1)
+				// console.log(valarr)
+				var val2 = obj2[attribute].split('.').join('')*1;
+				if (val1 < val2) {
+					return 1;
+				} else if (val1 > val2) {
+					return -1;
+				} else {
+					return 0;
+				}
+			}
+		},
 		//分页页码改变触发事件
 		currentChange(e) {
 			this.page = e
@@ -49,22 +67,10 @@ export default {
 			}
 			getList(data,62).then( ({data}) => {
 				console.log(data)
-				this.tableData = data.list
+				this.total = data.count
+				this.tableData = data.list.sort(this.compare('release_time'))
+				// console.log(this.tableData)
 			})
-			// loveList(data).then( res => {
-			// 	obj.tableData = res.data.list.map(item => {
-			// 		if(item.intention === ''){
-			// 			item.intention = '非定向捐款'
-			// 		}
-			// 		let date = new Date(item.add_time*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();
-			// 		item.time = Y + '/' + M + '/' + D
-			// 		return item
-			// 	})
-			// 	obj.total = res.data.count
-			// })
 		}
 	}
 };

+ 1 - 1
src/views/directories/List.vue

@@ -3,7 +3,7 @@
 		<div class="empty" v-if="newList.length == 0">
 			暂无数据
 		</div>
-		<div class="new-item  hand" v-for="item in newList" :key="item.id" @click="navTo('/news/detail?id='+ item.id)">
+		<div class="new-item  hand" v-for="item in newList" :key="item.id" @click="navTo('/directories/detail?id='+ item.id)">
 			<div class="title clamp">
 				<span class="title-icon"></span>
 				{{ item.title }}

+ 5 - 1
src/views/knowledge/BloodDonation.vue

@@ -24,9 +24,13 @@
 					name: '造血干细胞',
 					path: '/knowledge/cells'
 				}, {
-					index: 1,
+					index: 2,
 					name: '无偿献血',
 					path: '/knowledge/bloodDonation'
+				},{
+					index: 3,
+					name: '红十字发展',
+					path: '/knowledge/development'
 				}],
 			};
 		}

+ 5 - 1
src/views/knowledge/Cells.vue

@@ -24,9 +24,13 @@
 					name: '造血干细胞',
 					path: '/knowledge/cells'
 				}, {
-					index: 1,
+					index: 2,
 					name: '无偿献血',
 					path: '/knowledge/bloodDonation'
+				},{
+					index: 3,
+					name: '红十字发展',
+					path: '/knowledge/development'
 				}],
 			};
 		}

+ 41 - 0
src/views/knowledge/Development.vue

@@ -0,0 +1,41 @@
+<template>
+	<div class="news">
+		<left-nav :navList="navList" :topTitle="'知识库'">
+			<router-view></router-view>
+		</left-nav>
+	</div>
+</template>
+
+<script>
+	import LeftNav from '../../components/leftNav/LeftNav.vue';
+
+	export default {
+		components: {
+			LeftNav
+		},
+		data() {
+			return {
+				navList: [{
+					index: 0,
+					name: '救护培训',
+					path: '/knowledge/rescue'
+				}, {
+					index: 1,
+					name: '造血干细胞',
+					path: '/knowledge/cells'
+				}, {
+					index: 2,
+					name: '无偿献血',
+					path: '/knowledge/bloodDonation'
+				},{
+					index: 3,
+					name: '红十字发展',
+					path: '/knowledge/development'
+				}],
+			};
+		}
+	};
+</script>
+
+<style>
+</style>

+ 5 - 1
src/views/knowledge/Rescue.vue

@@ -24,9 +24,13 @@
 					name: '造血干细胞',
 					path: '/knowledge/cells'
 				}, {
-					index: 1,
+					index: 2,
 					name: '无偿献血',
 					path: '/knowledge/bloodDonation'
+				},{
+					index: 3,
+					name: '红十字发展',
+					path: '/knowledge/development'
 				}],
 			};
 		}

+ 1 - 1
src/views/knowledge/bloodDonation/List.vue

@@ -49,7 +49,7 @@
 				getList({
 					page: obj.page,
 					limit: obj.limit
-				},50).then(res => {
+				},63).then(res => {
 					obj.newList = res.data.list.sort(this.compare('id'))
 					obj.total = res.data.count
 				})

+ 37 - 0
src/views/knowledge/development/Detail.vue

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

+ 120 - 0
src/views/knowledge/development/List.vue

@@ -0,0 +1,120 @@
+<template>
+	<div class="new-list">
+		<div class="new-item  hand" v-for="item in newList" :key="item.id" @click="navTo('/knowledge/bloodDonation/detail?id='+ item.id)">
+			<div class="title clamp">
+				<span class="title-icon"></span>
+				{{ item.title }}
+			</div>
+			<div class="time">{{ item.release_time?item.release_time:item.add_time | time }}</div>
+		</div>
+		<el-pagination layout="prev, pager, next" :total="total" background prev-text="上一页" next-text="下一页"
+			@current-change="currentChange" :page-size="15" hide-on-single-page></el-pagination>
+	</div>
+</template>
+
+<script>
+	import {
+		getList
+	} from '../../../request/api.js';
+	export default {
+		data() {
+			return {
+				newList: [],
+				total: 0,
+				page: 1,
+				limit: 15
+			};
+		},
+		filters: {
+			time(val) {
+				let arr = val.split(' ')
+				let str = arr[0]
+				str = str.replace(/-/g, '.')
+				return str
+			}
+		},
+		created() {
+			this.getList()
+		},
+		methods: {
+			navTo(url) {
+				this.$router.push(url);
+			},
+			currentChange(e) {
+				this.page = e
+				this.getList()
+			},
+			getList() {
+				let obj = this
+				getList({
+					page: obj.page,
+					limit: obj.limit
+				},50).then(res => {
+					obj.newList = res.data.list.sort(this.compare('id'))
+					obj.total = res.data.count
+				})
+			},
+			compare(attribute) {
+				return function(obj1, obj2) {
+					var val1 = obj1[attribute];
+					var val2 = obj2[attribute];
+					if (val1 < val2) {
+						return 1;
+					} else if (val1 > val2) {
+						return -1;
+					} else {
+						return 0;
+					}
+				}
+			}
+		}
+	};
+</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>

+ 1 - 1
src/views/organs/List.vue

@@ -3,7 +3,7 @@
 		<div class="empty" v-if="newList.length == 0">
 			暂无数据
 		</div>
-		<div class="new-item  hand" v-for="item in newList" :key="item.id" @click="navTo('/news/detail?id='+ item.id)">
+		<div class="new-item  hand" v-for="item in newList" :key="item.id" @click="navTo('/organs/detail?id='+ item.id)">
 			<div class="title clamp">
 				<span class="title-icon"></span>
 				{{ item.title }}