twt 3 years ago
parent
commit
fcbd0db6d9
8 changed files with 1546 additions and 230 deletions
  1. 19 8
      components/pcNav/pcNav.vue
  2. 2 1
      pages.json
  3. 0 201
      pages/pc/home.vue
  4. 440 19
      pages/pc/indexNew.vue
  5. 12 1
      pages/pc/list.vue
  6. 258 0
      pages/pc/newDetail.vue
  7. 436 0
      pages/pc/newgroupingList.vue
  8. 379 0
      pages/pc/newsearchlist.vue

+ 19 - 8
components/pcNav/pcNav.vue

@@ -3,7 +3,7 @@
 		<view class="nav">
 			<view class="navCont">
 				<view class="logo">
-					<image :src="info.logo" mode="" class="logoImg euroreparIMg"></image>
+					<image :src="info.logo" mode="" class="logoImg "></image><!-- euroreparIMg -->
 				</view>
 				<view class="navTitle">{{info.title}}</view>
 				<view class="indexNav" :class="{'indexActive':data=='index'}" @click="goIndex">首页</view>
@@ -49,15 +49,25 @@
 		},
 		methods:{
 			gosearchlist(){
-				uni.navigateTo({
+				/* uni.navigateTo({
 					url:'../../pages/pc/searchlist'
-				})
+				}) */
+				this.$emit("gosearchlist",1);
 			},
 			goItem(item){
+				var pages = getCurrentPages() ;
+				var  currentRoute  = pages[pages.length-1].route;
+				console.log(currentRoute)
 				console.log(item)
-				uni.navigateTo({
-					url:'list?code='+item.code+'&topName='+item.name+'&comment='+item.comment
-				})
+				/* if(currentRoute=='pages/pc/list'){
+					this.$emit("getChildList",item);
+				}else{
+					uni.navigateTo({
+						url:'list?code='+item.code+'&topName='+item.name+'&comment='+item.comment
+					})
+				} */
+				this.$emit("getChildList",item);
+				
 			},
 			getInfo(){
 				this.$http('/trainingOpenApi/getInfo', {}, 'GET').then(res => {
@@ -65,9 +75,10 @@
 				})
 			},
 			goIndex(){
-				uni.navigateTo({
+				/* uni.navigateTo({
 					url:'../../pages/pc/index'
-				})
+				}) */
+				this.$emit("getIndexList",1);
 			},
 			getallCategory(){
 				this.$http('/trainingOpenApi/allCategory', {}, 'GET').then(res => {

+ 2 - 1
pages.json

@@ -84,8 +84,9 @@
 				"navigationStyle": "custom"
 			}
 		},
+		
 		{
-			"path": "pages/pc/home",
+			"path": "pages/pc/indexNew",
 			"style": {
 				"navigationStyle": "custom"
 			}

+ 0 - 201
pages/pc/home.vue

@@ -1,201 +0,0 @@
-<template>
-	<view>
-		<view class="nav">
-			<view class="navCont">
-				<view class="logo">
-					<image :src="info.logo" mode="" class="logoImg"></image>
-				</view>
-				<view class="navTitle">{{info.title}}</view>
-				<view class="indexNav" :class="{'indexActive':data=='index'}" @click="goIndex">首页</view>
-				<view class="allCategory">
-					<view class="allCategoryLine" :class="{'indexActive':itemName==item.name}" v-for="(item,index) in allCategory" v-if="index<5" @click="goItem(item)">{{item.name}}</view>
-				    <view class="allCategoryMore" v-if="allCategory.length>1">
-					 <span @click="moreBtn" class="moreBtn">更多</span> 
-					 <image @click="moreBtn" src="../../static/pcimg/icon_arrow_xia@2x.png" mode="widthFix" class="navmoreImg"></image>
-					 <image  src="../../static/pcimg/mores.png" mode="widthFix" class="navmoreImg2"></image>
-					 <view class="navMoret" >
-					 	<view class="navMoreTline" v-for="(item,index) in allCategory" v-if="index>4" @click="goItem(item)">{{item.name}}</view>
-					 </view>
-					
-					</view>
-					
-				</view>
-				<view class="navSs" @click="gosearchlist">
-					<image src="../../static/pcimg/icon_search@2x.png" mode="widthFix" class="navSsimg"></image>
-				</view>
-			</view>
-		</view>
-		<index></index>
-
-	</view>
-</template>
-
-<script>
-	import index from './indexNew.vue'
-	export default {
-		name: "searchBox",
-		props: ['data','itemName'],
-		components: {
-			index,
-		},
-		data() {
-			return {
-				allCategory:[],
-				navMoret:false,
-				info:'',
-			};
-		},
-		onLoad() {
-			 
-		},
-		created(){
-			this.getallCategory();
-			this.getInfo()
-		},
-		methods:{
-			gosearchlist(){
-				uni.navigateTo({
-					url:'../../pages/pc/searchlist'
-				})
-			},
-			goItem(item){
-				console.log(item)
-				uni.navigateTo({
-					url:'list?code='+item.code+'&topName='+item.name+'&comment='+item.comment
-				})
-			},
-			getInfo(){
-				this.$http('/trainingOpenApi/getInfo', {}, 'GET').then(res => {
-					this.info = res.data
-				})
-			},
-			goIndex(){
-				uni.navigateTo({
-					url:'../../pages/pc/index'
-				})
-			},
-			getallCategory(){
-				this.$http('/trainingOpenApi/allCategory', {}, 'GET').then(res => {
-					this.allCategory = res.data
-				})
-			},
-			moreBtn(){
-				this.navMoret=!this.navMoret
-			},
-		}
-	}
-</script>
-
-<style scoped>
-	.nav{
-		width: 100%;
-		height: 72px;
-		background: #FFFFFF;
-		box-shadow: 0px 4px 10px 0px rgba(153, 153, 153, 0.12);
-		display: flex;
-		justify-content: center;
-		position: fixed;
-		left: 0;
-		top: 0;
-		z-index: 11;
-	}
-	.navCont{
-		width: 1200px;
-		display: flex;
-		position: relative;
-	}
-	.logoImg{
-		width: 62px;
-		height: 28px;
-		margin-top: 19px;
-	}
-	.navTitle{
-		line-height: 72px;
-		font-weight: 500;
-		color: #3C3C3C;
-		font-size: 20px;
-		padding-left: 10px;
-		font-family: PingFangSC-Medium, PingFang SC;
-	}
-	.indexNav{
-		line-height: 72px;
-		
-		color: #3C3C3C;
-		font-size: 16px;
-		padding-left: 54px;
-		cursor: pointer;
-	}
-	.indexActive{
-		color: #FF4F00 !important;
-	}
-	.allCategory{
-		display: flex;
-		line-height: 72px;
-	}
-	.allCategoryLine{
-		padding-left: 30px;
-		color: #3C3C3C;
-		font-size: 16px;
-		cursor: pointer;
-	}
-	.allCategoryMore{
-		padding-left: 30px;
-		color: #3C3C3C;
-		font-size: 16px;
-		display: flex;
-		cursor: pointer;
-		position: relative;
-	}
-	.navMoret{
-		position: absolute;
-		width: 140px;
-		background: #FFFFFF;
-		box-shadow: 0px 4px 10px 0px rgba(153, 153, 153, 0.12);
-		border-radius: 6px;
-		top: 72px;
-		left:0px ;
-		font-size: 16px;
-		display: none; 
-	}
-	.allCategoryMore:hover .navMoret{
-		display: block;
-	}
-	.navMoreTline{
-		width: 140px;
-		text-align: center;
-		font-size: 16px;
-		line-height: 50px;
-	}
-	.allCategoryMore:hover .moreBtn{
-		 color: #FF4F00; 
-	}
-	.navmoreImg{
-		width: 12px;
-		height: 8px;
-		margin-top: 32px;
-		margin-left: 10px;
-	}
-	.navmoreImg2{
-		width: 12px;
-		height: 8px;
-		margin-top: 32px;
-		margin-left: 10px;
-		display: none;
-	}
-	.allCategoryMore:hover .navmoreImg{
-		display: none;
-	}
-	.allCategoryMore:hover .navmoreImg2{
-		display: block;
-	}
-	.navSsimg{
-		width: 20px;
-		height: 20px;
-	}
-	.navSs{
-		position: absolute;
-		cursor: pointer;
-		top:24px;
-		right: 0;
-	}
-</style>

+ 440 - 19
pages/pc/indexNew.vue

@@ -1,6 +1,10 @@
 <template>
 	<view class="content">
-	<!-- 	<pcNav :data="'index'"></pcNav> -->
+		<pcNav :data="indexName" :itemName="topName" @getIndexList="getIndexList" 
+		@gosearchlist="gosearchlist"
+		@getChildList = "getChildList"></pcNav> 
+		
+		<view v-show="indexShow">
 		<view style="height: 72px;"></view>
 		<view class="swiperBox">
 			<view class="swiperCont">
@@ -72,25 +76,87 @@
 			
 		</view>
 		
-		
+		</view>
+		<!-- 列表页 -->
+		<view v-show="listShow">
+			<view style="height: 72px;"></view>
+			<view class="top">
+				<view class="topName">{{topName}}</view>
+				<view class="comment " v-if="comment">{{comment}}</view>
+			</view>
+			<view class="main">
+				<view class="dynamicCol">
+					<view class="dynamicColLeft">
+						<view class="dynamicColLIne" :class="{'activeTab':tabIndex==index}" v-for="(item,index) in dynamicCol" @click="tabBtn(index,item)">{{item.name}}</view>
+					</view>
+					<view class="dynamicColRight">
+						<image src="../../static/pcimg/icon_kapian_def@2x.png" v-show="qhIndex==2" class="qhImg" @click="qhIndex=1"></image>
+						<image src="../../static/pcimg/icon_kapian_sel@2x.png" v-show="qhIndex==2" class="qhImg"></image>
+					    <image src="../../static/pcimg/icon_liebiao_sel@2x.png" v-show="qhIndex==1" class="qhImg" ></image>
+					    <image src="../../static/pcimg/qh2.png" v-show="qhIndex==1" class="qhImg" @click="qhIndex=2"></image>
+					</view>
+				</view>
+				<view class="cont2">
+					<view class="contBox">
+						<view class="contf" v-if="qhIndex==2&&list.length>0">
+							<view class="mainwzline" v-for="(wz,wzindex) in list"  :class="{'mainwzlineR2':(wzindex+1)%4==0&&wzindex!=0}" @click="goDetail3(wz)">
+								<view class="mainwzImgBox">
+								  <img :src="wz.LogoImg" alt="" class="mainwzImg">	
+								</view>
+								<view class="wztitle">{{wz.Title}}</view>
+								<view class="wztime">2022-3-30</view>
+							</view>
+						</view>
+						<view class="contL" v-if="qhIndex==1&&list.length>0">
+							<view class="wxLine" v-for="(wz,wzindex) in list" @click="goDetail3(wz)">
+								<view class="wzLineLeft">
+									<image :src="wz.LogoImg" class="wzLeftIMg"></image>
+								</view>
+								<view class="wzLineRight">
+									<view class="wzTitle2">{{wz.Title}}</view>
+									<view class="wzComment">{{wz.Comment}}</view>
+								</view>
+							</view>
+						</view>
+						<view class="nodata" v-show="list.length==0">
+							<image src="../../static/pcimg/listnodata.png" mode="" class="nodataImg"></image>
+							<view class="nodataTitle">暂无数据</view>
+						</view>
+					</view>
+				
+					
+				</view>
+				
+			</view>
+			
+			<!-- -->
+			<view class="pageView" v-show="TotalSize">
+				<page-pagination :pageSize="pageSize" :size="'small'" :total="TotalSize" :numAround="true" @change="pageChange"></page-pagination>
+			</view>
+			
+		</view>
 		<view class="gotop" @click="gotoTop">
 			<image src="../../static/pcimg/btn_top@2x.png" mode="" class="gotopImg"></image>
 		</view>
+		<view>
+			<newDetail v-show="newDetailShow" :newid='newDetailID' :data="newDetailItem" @getIndexList="getIndexList"></newDetail>
+			<newgroupingList @getIndexList="getIndexList"
+			 @getChildList="getChildList" @goDetail="goDetail"
+			 v-show="newgroupingListShow" :newcode="newgroupingcode" :data="newgroupingdata"></newgroupingList>
 		
-		
-		
-		<!-- <view>
-			<a class="table-btn" href="http://phone.66km.cn:8088/marketing/training/940C4BF0A2E04542A1A1AD244EAFB6E2.xlsx" target='_blank'>下载入口</a>
-		</view> -->
-		
+		    <newsearchlist v-show="newsearchShow"></newsearchlist>
+		</view>
 	</view>
 </template>
 
 <script>
 	import pcNav from '../../components/pcNav/pcNav.vue'
+	import newDetail from './newDetail.vue'
+	import newgroupingList from './newgroupingList.vue'
+	import newsearchlist from './newsearchlist.vue'
 	export default {
 		components: {
-			pcNav,
+			pcNav,newDetail,newgroupingList,newsearchlist
 		},
 		data() {
 			return {
@@ -100,6 +166,27 @@
 				swpIndex:0,
 				indexData:'',
 				recommendList:[],
+				list:[],
+				comment:'',
+				topName:'',
+				parentCode:'',
+				topCode:'',
+				page:1,
+				dynamicCol:[],
+				qhIndex:1,
+				tabIndex:0,
+				TotalSize:0,
+				pageSize:20,
+				indexShow:true,
+				listShow:false,
+				indexName:'index',
+				newDetailShow:false,
+				newgroupingListShow:false,
+				newsearchShow:false,
+				newDetailID:'',
+				newDetailItem:'',
+				newgroupingcode:'',
+				newgroupingdata:'',
 			}
 		},
 		onLoad() {
@@ -107,27 +194,118 @@
 		   this.getindexData()
 		},
 		created(){
-			this.getindexData()
+			//this.getindexData()
 		},
 		methods: {
+			getIndexList(){
+				this.indexShow=true;
+				this.listShow=false;
+				this.newDetailShow=false;
+				this.newgroupingListShow=false;
+				this.newsearchShow=false;
+				this.indexName='index';
+				this.topName=''
+			},
+			gosearchlist(){
+				this.indexShow=false;
+				this.listShow=false;
+				this.newDetailShow=false;
+				this.newgroupingListShow=false;
+				this.newsearchShow=true;
+				this.indexName='';
+				this.topName=''
+			},
+			getChildList(item){
+					console.log(item);
+					this.indexName=''
+					this.topName=item.name;
+					this.comment=item.comment;
+					this.topCode=item.code;
+					this.parentCode=item.code;
+					this.getcategoryPageData();
+					uni.setNavigationBarTitle({
+					    title: this.topName
+					});
+					this.indexShow=false;
+					this.listShow=true;
+					this.newDetailShow=false;
+					this.newgroupingListShow=false;
+					this.newsearchShow=false;
+			},
 			goList(item){
 				console.log(item)
-				uni.navigateTo({
+				this.getChildList(item)
+				/* uni.navigateTo({
 					url:'list?code='+item.code+'&topName='+item.categoryName//+'&comment='+item.comment
-				})
+				}) */
 			},
 			goDetail(item){
 				console.log(item)
-				uni.navigateTo({
+				this.indexShow=false;
+				this.listShow=false;
+				this.newDetailShow=true;
+				this.newgroupingListShow=false;
+				this.newsearchShow=false;
+				this.newDetailID=item.id;
+				this.newDetailItem=item;
+				/* uni.navigateTo({
 					url:'detail?id='+item.id+'&topName='+item.categoryName+"&comment="+item.comment+'&parentCode='+item.code
-				})
+				}) */
 			},
 			goDetail2(wz,item){
 				/* console.log(item)
 				console.log(wz) */
-				 uni.navigateTo({
+				this.indexShow=false;
+				this.listShow=false;
+				this.newDetailShow=true;
+				this.newgroupingListShow=true;
+				this.newsearchShow=false;
+				this.newDetailID=wz.id;
+				this.newDetailItem=item;
+				 /* uni.navigateTo({
 					url:'detail?id='+wz.id+'&topName='+item.name+"&comment="+item.comment+'&parentCode='+item.code
-				}) 
+				}) */
+			},
+			goDetail3(wz){
+				// 1分类2文章
+				if (wz.Type == 1) {
+					/* uni.navigateTo({
+						url:'groupingList?parentCode='+this.topCode+'&code='+wz.Code+'&name='+wz.Name+'&title='+wz.Title+'&topName='+this.topName+"&comment="+this.comment
+					}) */
+					this.newgroupingcode=wz.Code;
+					var newgroupingdata={
+						parentCode:this.topCode,
+						name:wz.Name,
+						title:wz.Title,
+						topName:this.topName,
+						comment:this.comment
+					}
+					console.log(newgroupingdata)
+					this.indexShow=false;
+					this.listShow=false;
+					this.newDetailShow=false;
+					this.newgroupingListShow=true;
+					this.newsearchShow=false;
+					this.newgroupingdata=newgroupingdata
+				}else{
+					this.indexShow=false;
+					this.listShow=false;
+					this.newDetailShow=true;
+					this.newgroupingListShow=true;
+					this.newsearchShow=false;
+					this.newDetailID=wz.ID;
+					var item={
+						categoryName:this.topName,
+						twoName:this.dynamicCol[this.tabIndex].name,
+						comment:this.comment,
+						code:wz.Code
+					}
+					this.newDetailItem=item;
+					/* uni.navigateTo({
+						url:'detail?id='+wz.ID+'&topName='+this.topName+'&twoName='+this.dynamicCol[this.tabIndex].name+"&comment="+this.comment+'&parentCode='+wz.Code
+					}) */
+				}
+				//console.log(wz)
 			},
 			gotoTop(){
 				uni.pageScrollTo({ 
@@ -164,11 +342,55 @@
 			},
 			mainMore(item){
 				console.log(item)
-				uni.navigateTo({
+				this.getChildList(item)
+				/* uni.navigateTo({
 					url:'list?code='+item.code+'&topName='+item.name+'&comment='+item.comment
-				})
+				}) */
+			},
+			
+				
+				gotoTop(){
+					uni.pageScrollTo({ 
+					   scrollTop: 0, duration: 300 
+					}); 
+				},
+				tabBtn(index,item){
+					this.tabIndex=index;
+					//console.log(item)
+					this.parentCode=item.code;
+					this.getcategoryPageData()
+				},
+				pageChange(e){
+					console.log(e)
+					this.page=e;
+					this.getcategoryPageData()
+					
+				},
+				getcategoryPageData(){
+					var params={
+						parentCode:this.parentCode,
+						topCode:this.topCode,
+						limit:this.pageSize,
+						page:this.page,
+					}
+					uni.showLoading({
+						title: '加载中'
+					})
+					this.$http('/trainingOpenApi/categoryPageData', params, 'GET').then(res => {
+						uni.hideLoading();
+						this.list=res.data.Items;
+						this.TotalSize=res.data.TotalSize;
+						var arr=[
+							{
+								'name':'全部','code':'',
+							}	
+						]
+						this.dynamicCol=arr.concat(res.data.dynamicCol);
+						
+					})
+				}
 			}
-		}
+		
 	}
 </script>
 
@@ -430,4 +652,203 @@
 	.mainline1{
 		padding-top: 20px;
 	}
+	.content{
+		background: #F4F5F7;
+		min-height: 100vh;
+		font-family: PingFangSC-Regular, PingFang SC;
+	}
+	.contBox{
+		min-height: 58vh;
+	}
+	.gotopImg{
+		width: 60px;
+		height: 60px;
+	}
+	.gotop{
+		position: fixed;
+		right:5vh ;
+		bottom: 60px;
+		cursor: pointer;
+	}
+	.topName{
+		text-align: center;
+		font-size: 22px;
+		font-weight: 500;
+		color: #3C3C3C;
+		line-height: 33px;
+		padding-top: 30px;
+		font-family: PingFangSC-Medium, PingFang SC;
+	}
+	.comment{
+		text-align: center;
+		font-size: 14px;
+		font-weight: 400;
+		color: #999999;
+		line-height: 20px;
+		width: 500px;
+		padding-top: 10px;
+		margin: 0 auto;
+	}
+	.main{
+		width: 1200px;
+		margin: 0 auto;
+		padding-top: 30px;
+	}
+	.dynamicColLeft{
+		display: flex;
+	}
+	.dynamicColLIne{
+		padding-right: 44px;
+		font-size: 16px;
+		color: #3C3C3C;
+		cursor: pointer;
+		line-height: 32px;
+	}
+	.qhImg{
+		width: 28px;
+		height: 28px;
+		margin-left: 8px;
+		cursor: pointer;
+	}
+	.dynamicCol{
+		display: flex;
+		justify-content: space-between;
+		background: #FFFFFF;
+		padding:15px 20px;
+		border-radius: 8px;
+	}
+	.activeTab{
+		color: #FF4F00;
+	}
+	.mainwzImg{
+		width: 284px;
+		height: 160px;
+	}
+	.mainwzImgBox{
+		border-top-left-radius: 6px;
+		border-top-right-radius: 6px;
+	    overflow: hidden;
+		height: 160px;
+		border: 1px solid #eeeeee;
+	}
+	.contf{
+		display: flex;
+		flex-wrap: wrap;
+	}
+	.mainwzline{
+		width: 284px;
+		height: 244px;
+		background: #FFFFFF;
+		margin-right: 21px;	
+		margin-top: 20px;
+		cursor: pointer;
+		border-radius: 6px;
+	}
+	.wztime{
+		font-size: 14px;
+		color: #999999;
+		padding-left: 14px;
+		padding-top: 10px;
+	}
+	.mainwzline:hover{
+		box-shadow: 0px 0px 16px 0px rgba(153, 153, 153, 0.2);
+	}
+	.mainwzlineR2{
+	  margin-right: 0px;	
+	}
+	.wztitle{
+		width: 256px;
+		font-size: 16px;
+		color: #333333;
+		line-height: 22px;
+		height: 22px;
+		text-overflow: -o-ellipsis-lastline;
+		 overflow: hidden;
+		 text-overflow: ellipsis;
+		 display: -webkit-box;
+		 -webkit-line-clamp: 1;
+		 line-clamp: 1;
+		 -webkit-box-orient: vertical;
+		 padding:0 13px ;
+		 padding-top: 16px;
+		
+		  
+	}
+	.wzLeftIMg{
+		width: 200px;
+		height: 112px;
+	}
+	.contL{
+		background: #FFFFFF;
+		margin-top: 20px;
+		border-radius: 8px;
+		padding: 0 20px;
+		
+	}
+	.wxLine{
+		display: flex;
+		padding: 20px 0px;
+		cursor: pointer;
+		border-bottom: 1px solid #EEEEEE;
+	}
+	.wzLineLeft{
+		border-radius: 6px;
+		overflow: hidden;
+		width: 200px;
+		height: 112px;
+	}
+	.wzLineRight{
+		padding-left: 16px;
+		width: 788px;
+	}
+	.wzTitle2{
+		font-size: 16px;
+		color: #3C3C3C;
+		width: 948px;
+		height: 20px;
+		line-height: 20px;
+		text-overflow: -o-ellipsis-lastline;
+		 overflow: hidden;
+		 text-overflow: ellipsis;
+		 display: -webkit-box;
+		 -webkit-line-clamp: 1;
+		 line-clamp: 1;
+		 -webkit-box-orient: vertical;
+	}
+	.wzComment{
+		font-size: 14px;
+		font-family: PingFangSC-Regular, PingFang SC;
+		font-weight: 400;
+		color: #999999;
+		line-height: 20px;
+		padding-top: 10px;
+		width: 948px;
+		height: 80px;
+		text-overflow: -o-ellipsis-lastline;
+		 overflow: hidden;
+		 text-overflow: ellipsis;
+		 display: -webkit-box;
+		 -webkit-line-clamp: 4;
+		 line-clamp: 4;
+		 -webkit-box-orient: vertical;
+	}
+	.pageView{
+		margin-top: 20px;
+		cursor: pointer;
+		padding-bottom: 20px;
+	}
+	.nodataImg{
+		width: 300px;
+		height: 203px;
+	}
+	.nodata{
+		text-align: center;
+		padding-top: 100px;
+	}
+	.nodataTitle{
+		font-size: 16px;
+		padding-top: 16px;
+		font-weight: 400;
+		color: #999999;
+	}
 </style>

+ 12 - 1
pages/pc/list.vue

@@ -1,6 +1,6 @@
 <template>
 	<view class="content">
-		<pcNav :itemName="topName"></pcNav>
+		<pcNav :itemName="topName" @getChildList = "getChildList"></pcNav>
 		<view style="height: 72px;"></view>
 	
 		
@@ -101,6 +101,17 @@
 		   });
 		},
 		methods: {
+			getChildList(item){
+				console.log(item);
+				this.topName=item.topName;
+				this.comment=item.comment;
+				this.topCode=item.code;
+				this.parentCode=item.code;
+				this.getcategoryPageData();
+				uni.setNavigationBarTitle({
+				    title: this.topName
+				});
+			},
 			goDetail(wz){
 				// 1分类2文章
 				if (wz.Type == 1) {

+ 258 - 0
pages/pc/newDetail.vue

@@ -0,0 +1,258 @@
+<template>
+	<view class="content2">
+       <view style="height: 72px;"></view>
+		<view class="top">
+			<view class="topline" @click="goIndex">首页</view>
+			<view class="topjt">></view>
+			<view class="topline" :class="{'c999':!twoName}" @click="goList()">{{topName}}</view>
+			<view class="topjt" v-if="twoName">></view>
+			<view class="topline" :class="{'c999':twoName}">{{twoName}}</view>
+		</view>
+		<view class="htmlBox">
+			<view class="htmlTitle">{{detailData.name}}</view>
+			<view class="time">{{detailData.publishTime}}</view>
+			<view class="html" v-html="detailData.contents"></view>
+		</view>
+		<view class="itemArr" v-if="itemArr.length>0">
+		  <view class="itemArrLine" :class="{'itemArrLineBottom':itemArr.length!=(index+1)}" v-for="(item,index) in itemArr">
+			  <view class="itemArrLeft" >
+				  <image src="../../static/pcimg/icon_fujian@2x.png" mode="" class="fileIcon"></image>
+				  <view class="fileName" @click="gofile(item.fileUrl)">{{item.fileName}}</view>
+			  </view>
+			<!-- <view class="dload">
+				  <a class="dloadbtn" :href="item.fileUrl" target='_blank' >下载</a>
+			  </view> -->
+		  </view>
+		</view>
+		<view class="lbel" v-if="topName">
+			<view class="topName" @click="goList">{{topName}}</view>
+		</view>
+       
+	</view>
+</template>
+
+<script>
+	
+	export default {
+       props: ['newid','data'],
+		data() {
+			return {
+				id: '',
+				detailData: {},
+				couContent: '',
+				itemArr: [],
+				topName:'',
+				twoName:'',
+				comment:'',
+				parentCode:'',
+			}
+		},
+		watch:{
+			newid(newValue, oldValue){
+				console.log(newValue);
+				this.id = newValue
+				this.topName=this.data.categoryName;
+				this.twoName=this.data.twoName;
+				this.comment=this.data.comment;
+				this.parentCode=this.data.code
+				this.getDetailData() 
+				// uni.setNavigationBarTitle({
+				// 	title: this.topName
+				// })
+			}
+		},
+		onLoad(opt) {
+			console.log('opt', opt);
+			/* this.id = opt.id
+            this.topName=opt.topName;
+			this.twoName=opt.twoName;
+			this.comment=opt.comment;
+			this.parentCode=opt.parentCode
+			this.getDetailData() */
+			// uni.setNavigationBarTitle({
+			// 	title: this.topName
+			// })
+		},
+		methods: {
+			gofile(url){
+				window.location.href=url
+			},
+			goList(){
+				var code=this.parentCode.substring(0,3)
+				uni.navigateTo({
+					url:'list?code='+code+'&topName='+this.topName+'&comment='+this.comment
+				})
+			},
+             goIndex(){
+				this.$emit("getIndexList")
+			 },
+			getDetailData() {
+				uni.showLoading({
+					title: '加载中'
+				})
+				let url = '/trainingOpenApi/articleDetail',
+					params = {
+						id: this.id,
+					}
+				this.$http(url, params, 'GET').then(res => {
+					uni.hideLoading();
+					var data = res.data
+					// 处理 undefined和null转为空白字符串
+					for (const key in data) {
+						data[key] = this.$praseStrEmpty(data[key])
+					}
+
+					this.detailData = data;
+					uni.setNavigationBarTitle({
+					    title: this.detailData.title
+					});
+					console.log()
+					if (this.detailData.contents) {
+						var replaceStr = "application/x-shockwave-flash"
+					    this.detailData.contents=this.detailData.contents.replace(new RegExp(replaceStr,'gm'),'video/webm')//(/''/g,"video/webm")
+					    this.detailData.contents=this.detailData.contents.replace(/<embed([\s\w"-=\/\.:;]+)/ig, '<embed style="width: 100%;height:500px;" $1');
+					}
+
+					 if (this.detailData.contents) {
+						this.detailData.contents = this.detailData.contents.replace(
+								/<p([\s\w"=\/\.:;]+)((?:(style="[^"]+")))/ig, '<p')
+							.replace(/<p>/ig, '<p style="font-size: 15px; line-height: 25px;">')
+							.replace(/<img([\s\w"-=\/\.:;]+)((?:(height="[^"]+")))/ig, '<img$1')
+							.replace(/<img([\s\w"-=\/\.:;]+)((?:(width="[^"]+")))/ig, '<img$1')
+							.replace(/<img([\s\w"-=\/\.:;]+)((?:(style="[^"]+")))/ig, '<img$1')
+							.replace(/<img([\s\w"-=\/\.:;]+)((?:(alt="[^"]+")))/ig, '<img$1')
+							.replace(/<img([\s\w"-=\/\.:;]+)/ig, '<img style="width: 100%;" $1');
+							
+						this.detailData.contents = this.detailData.contents.replace(
+								/<p([\s\w"=\/\.:;]+)((?:(style="[^"]+")))/ig, '<p')
+							.replace(/<p>/ig, '<p style="font-size: 15px; line-height: 25px;">')
+							.replace(/<iframe([\s\w"-=\/\.:;]+)((?:(width="[^"]+")))/ig, '<iframe$1')
+							.replace(/<iframe([\s\w"-=\/\.:;]+)((?:(style="[^"]+")))/ig, '<iframe$1')
+							.replace(/<iframe([\s\w"-=\/\.:;]+)((?:(alt="[^"]+")))/ig, '<iframe$1')
+							.replace(/<iframe([\s\w"-=\/\.:;]+)/ig, '<iframe style="width: 100%;height:500px;" $1');
+					}
+
+					this.itemArr = this.detailData.fileList 
+                    console.log(this.itemArr)
+				})
+			},
+
+			
+
+
+			// }
+		}
+	}
+</script>
+
+<style scoped>
+	.top{
+		width: 1200px;
+		margin: 0 auto;
+		display: flex;
+		padding: 30px 0;
+		font-size: 14px;
+	}
+	.content2{
+		font-family: PingFangSC-Regular, PingFang SC;background: #FFFFFF;
+		min-height: 100vh;
+	}
+	.htmlBox{
+		width: 720px;
+		margin: 0 auto;
+	}
+	.topline{
+		padding-right: 10px;
+		cursor: pointer;
+		color: #3C3C3C;
+	}
+	.topjt{
+		color: #AAAAAA;
+		padding-right: 10px;
+	}
+	.htmlTitle{
+		font-size: 24px;
+		font-weight: 500;
+		color: #3C3C3C;
+		line-height: 33px;
+		font-family: PingFangSC-Medium, PingFang SC;
+	}
+	.time{
+		font-size: 14px;
+		padding-top: 16px;
+		color: #999999;
+		line-height: 20px;
+		border-bottom: 1px solid #EEEEEE;
+		padding-bottom: 19px;
+	}
+	.html{
+		padding-top: 18px;
+	}
+	.fileIcon{
+		width: 14px;
+		height: 14px;
+		margin-top: 4px;
+		margin-right: 4px;
+	}
+	.itemArrLeft{
+		display: flex;
+	}
+	.itemArrLine{
+		display: flex;
+		justify-content: space-between;
+		padding: 16px 0;
+		
+		color: #333333;
+		line-height: 22px;
+		font-size: 16px;
+		width: 720px;
+	}
+	.itemArrLineBottom{
+		border-bottom: 1px solid #EEEEEE;
+	}
+	.itemArr{
+		width: 686px;
+		margin: 0 auto;
+		margin-top: 30px;
+		border-radius: 6px;
+		border: 1px solid #EEEEEE;
+		padding: 0 16px;
+		
+	}
+	.dloadbtn{
+		display: block;
+		width: 68px;
+		height: 28px;
+		background: #3F90F7;
+		border-radius: 6px;
+		color: #FFFFFF;
+		text-align: center;
+		line-height:28px ;
+		font-size: 14px;
+		text-decoration:none;
+	}
+	.lbel{
+		width: 720px;
+		margin: 0 auto;
+		margin-top: 30px;
+		padding-bottom: 30px;
+	}
+	.topName{
+		width: 84px;
+		height: 24px;
+		background: rgba(63, 144, 247, 0.1);
+		border-radius: 14px;
+		font-size: 14px;
+		color: #3F90F7;
+		line-height: 24px;
+		text-align: center;
+		cursor: pointer;
+	}
+	.fileName{
+		text-decoration:underline;
+		color: #3F90F7;
+	}
+	.c999{
+		color: #999999;
+	}
+</style>

+ 436 - 0
pages/pc/newgroupingList.vue

@@ -0,0 +1,436 @@
+<template>
+	<view class="content">
+		<view style="height: 72px;"></view>
+	    <view class="top">
+	    	<view class="topline" @click="goIndex">首页</view>
+	    	<view class="topjt">></view>
+	    	<view class="topline" @click="goList">{{topName}}</view>
+	    	<view class="topjt" v-if="name">></view>
+	    	<view class="topline" :class="{'c999':name}">{{name}}</view>
+	    </view>
+		
+		<view class="gotop" @click="gotoTop">
+			<image src="../../static/pcimg/btn_top@2x.png" mode="" class="gotopImg"></image>
+		</view>
+		<view class="">
+			<view class="topName">{{name}}</view>
+			<view class="comment "  v-if="title">{{title}}</view>
+		</view>
+		<view class="main">
+			<view class="dynamicCol">
+				<view class="dynamicColLeft">
+					
+				</view>
+				<view class="dynamicColRight">
+					<image src="../../static/pcimg/icon_kapian_def@2x.png" v-show="qhIndex==2" class="qhImg" @click="qhIndex=1"></image>
+					<image src="../../static/pcimg/icon_kapian_sel@2x.png" v-show="qhIndex==2" class="qhImg"></image>
+				    <image src="../../static/pcimg/icon_liebiao_sel@2x.png" v-show="qhIndex==1" class="qhImg" ></image>
+				    <image src="../../static/pcimg/qh2.png" v-show="qhIndex==1" class="qhImg" @click="qhIndex=2"></image>
+				</view>
+			</view>
+			<view class="cont2">
+				<view class="contBox">
+					<view class="contf" v-if="qhIndex==2&&list.length>0">
+						<view class="mainwzline" v-for="(wz,wzindex) in list"  :class="{'mainwzlineR':(wzindex+1)%4==0&&wzindex!=0}" @click="goDetail(wz)">
+							<view class="mainwzImgBox">
+							  <img :src="wz.LogoImg" alt="" class="mainwzImg">	
+							</view>
+							<view class="wztitle">{{wz.Title}}</view>
+							<view class="wztime">2022-3-30</view>
+						</view>
+					</view>
+					<view class="contL" v-if="qhIndex==1&&list.length>0">
+						<view class="wxLine" v-for="(wz,wzindex) in list" @click="goDetail(wz)">
+							<view class="wzLineLeft">
+								<image :src="wz.LogoImg" class="wzLeftIMg"></image>
+							</view>
+							<view class="wzLineRight">
+								<view class="wzTitle2">{{wz.Title}}</view>
+								<view class="wzComment">{{wz.Comment}}</view>
+							</view>
+						</view>
+					</view>
+					<view class="nodata" v-show="list.length==0">
+						<image src="../../static/pcimg/listnodata.png" mode="" class="nodataImg"></image>
+						<view class="nodataTitle">暂无数据</view>
+					</view>
+				</view>
+			
+			</view>
+			
+			
+		</view>
+		
+		<!-- -->
+		<view class="pageView" v-show="TotalSize>0">
+			<page-pagination :pageSize="pageSize" :size="'small'" :total="TotalSize" :numAround="true" @change="pageChange"></page-pagination>
+		</view>
+		<!-- <view>
+			<a class="table-btn" href="http://phone.66km.cn:8088/marketing/training/940C4BF0A2E04542A1A1AD244EAFB6E2.xlsx" target='_blank'>下载入口</a>
+		</view> -->
+		
+		
+		
+	</view>
+</template>
+
+<script>
+	import pcNav from '../../components/pcNav/pcNav.vue'
+	export default {
+		components: {
+			pcNav,
+		},
+		props: ['newcode','data'],
+		data() {
+			return {
+				list:[],
+				title:'',
+				name:'',
+				parentCode:'',
+				topCode:'',
+				page:1,
+				dynamicCol:[],
+				qhIndex:1,
+				tabIndex:0,
+				TotalSize:0,
+				pageSize:20,
+				topName:'',
+				comment:'',
+				code:'',
+			}
+		},
+		watch:{
+			newcode(newValue, oldValue){
+				console.log(newValue);
+				this.code = newValue
+				this.parentCode=this.data.parentCode;
+				this.title=this.data.title;
+				this.name=this.data.name;
+				this.topName=this.data.topName;
+				this.comment=this.data.comment;
+				this.getgroupPageData()
+				 uni.setNavigationBarTitle({
+				 	title: this.name
+				})
+				
+			}
+		},
+		created(){
+			uni.pageScrollTo({
+			   scrollTop: 0, duration: 100 
+			}); 
+		},
+		onLoad(opt) {
+           /* this.name=opt.name;
+		   this.title=opt.title;
+		   this.parentCode=opt.parentCode;
+		   this.code=opt.code;
+		   this.topName=opt.topName;
+		   this.comment=opt.comment;
+		   this.getgroupPageData()
+		   uni.setNavigationBarTitle({
+		       title: this.name
+		   }); */
+		},
+		methods: {
+			goIndex(){
+				/* uni.navigateTo({
+					url:'index'
+				}) */
+				this.$emit("getIndexList")
+			},
+			goList(){
+				var data={
+					code:this.parentCode,
+					name:this.topName,
+					comment:this.comment
+				}
+				this.$emit("getChildList",data)
+				/* uni.navigateTo({
+					url:'list?code='+this.parentCode+'&topName='+this.topName+'&comment='+this.comment
+				}) */
+			},
+			goDetail(wz){
+				this.$emit("goDetail",{
+					id:wz.ID,
+					topName:this.topName,
+					twoName:this.dynamicCol[this.tabIndex].name
+				})
+				// 1分类2文章
+				/* if (wz.Type == 1) {
+					
+				}else{
+					uni.navigateTo({
+						url:'detail?id='+wz.ID+'&topName='+this.topName+'&twoName='+this.dynamicCol[this.tabIndex].name
+					})
+				} */
+				//console.log(wz)
+			},
+			gotoTop(){
+				uni.pageScrollTo({ 
+				   scrollTop: 0, duration: 300 
+				}); 
+			},
+			tabBtn(index,item){
+				this.tabIndex=index;
+				//console.log(item)
+				this.parentCode=item.code;
+				this.getcategoryPageData()
+			},
+			pageChange(e){
+				console.log(e)
+				this.page=e;
+				this.getcategoryPageData()
+				
+			},
+			getgroupPageData(){
+				var params={
+					parentCode:this.code,
+					limit:this.pageSize,
+					page:this.page,
+				}
+				uni.showLoading({
+					title: '加载中'
+				})
+				this.$http('/trainingOpenApi/categoryPageData', params, 'GET').then(res => {
+					uni.hideLoading();
+					this.list=res.data.Items;
+					this.TotalSize=res.data.TotalSize;
+					var arr=[
+						{
+							'name':'全部','code':'',
+						}	
+					]
+					this.dynamicCol=arr.concat(res.data.dynamicCol);
+					
+				})
+			}
+		}
+	}
+</script>
+
+<style scoped>
+	 .top{
+	 	width: 1200px;
+	 	margin: 0 auto;
+	 	display: flex;
+	 	padding: 30px 0;
+	 	font-size: 14px;
+	 }
+	 .content{
+	 	background: #F4F5F7;
+	 	min-height: 100vh;
+		font-family: PingFangSC-Regular, PingFang SC;
+	 }
+	 .htmlBox{
+	 	width: 720px;
+	 	margin: 0 auto;
+	 }
+	 .contBox{
+	 	min-height: 58vh;
+	 }
+	 .topline{
+	 	padding-right: 10px;
+	 	cursor: pointer;
+	 	color: #3C3C3C;
+	 	
+	 }
+	 .topjt{
+	 	color: #AAAAAA;
+	 	padding-right: 10px;
+	 }
+	*{
+		padding: 0;
+		margin: 0;
+	}
+	.gotopImg{
+		width: 60px;
+		height: 60px;
+	}
+	.gotop{
+		position: fixed;
+		right:5vh ;
+		bottom: 60px;
+		cursor: pointer;
+	}
+	.topName{
+		text-align: center;
+		font-size: 22px;
+		font-weight: 500;
+		color: #3C3C3C;
+		line-height: 33px;
+		font-family: PingFangSC-Medium, PingFang SC;
+	}
+	.comment{
+		text-align: center;
+		font-size: 14px;
+		font-weight: 400;
+		color: #999999;
+		line-height: 20px;
+		width: 500px;
+		padding-top: 10px;
+		margin: 0 auto;
+	}
+	.main{
+		width: 1200px;
+		margin: 0 auto;
+		padding-top: 30px;
+	}
+	.dynamicColLeft{
+		display: flex;
+	}
+	.dynamicColLIne{
+		padding-right: 44px;
+		font-size: 16px;
+		color: #3C3C3C;
+		cursor: pointer;
+	}
+	.qhImg{
+		width: 28px;
+		height: 28px;
+		margin-left: 8px;
+		cursor: pointer;
+	}
+	.dynamicCol{
+		display: flex;
+		justify-content: space-between;
+		background: #FFFFFF;
+		padding:15px 20px;
+		border-radius: 8px;
+	}
+	.activeTab{
+		color: #FF4F00;
+	}
+	.mainwzImg{
+		width: 284px;
+		height: 160px;
+	}
+	.mainwzImgBox{
+		border-top-left-radius: 6px;
+		border-top-right-radius: 6px;
+	    overflow: hidden;
+		height: 160px;
+		border: 1px solid #eeeeee;
+	}
+	.contf{
+		display: flex;
+		flex-wrap: wrap;
+	}
+	.mainwzline{
+		width: 284px;
+		height: 244px;
+		background: #FFFFFF;
+		margin-right: 21px;	
+		margin-top: 20px;
+		cursor: pointer;
+		border-radius: 6px;
+	}
+	.wztime{
+		font-size: 14px;
+		color: #999999;
+		padding-left: 14px;
+		padding-top: 10px;
+	}
+	.mainwzlineR{
+	  margin-right: 0px;	
+	}
+	.wztitle{
+		width: 256px;
+		font-size: 16px;
+		color: #333333;
+		line-height: 22px;
+		height: 22px;
+		text-overflow: -o-ellipsis-lastline;
+		 overflow: hidden;
+		 text-overflow: ellipsis;
+		 display: -webkit-box;
+		 -webkit-line-clamp: 1;
+		 line-clamp: 1;
+		 -webkit-box-orient: vertical;
+		 padding:0 13px ;
+		 padding-top: 16px;
+	}
+	.wzComment{
+		font-size: 14px;
+		font-family: PingFangSC-Regular, PingFang SC;
+		font-weight: 400;
+		color: #999999;
+		line-height: 20px;
+		padding-top: 10px;
+		width: 948px;
+		height: 80px;
+		text-overflow: -o-ellipsis-lastline;
+		 overflow: hidden;
+		 text-overflow: ellipsis;
+		 display: -webkit-box;
+		 -webkit-line-clamp: 4;
+		 line-clamp: 4;
+		 -webkit-box-orient: vertical;
+	}
+	.wzLeftIMg{
+		width: 200px;
+		height: 132px;
+	}
+	.contL{
+		background: #FFFFFF;
+		margin-top: 20px ;
+		border-radius: 8px;
+		padding: 0 20px;
+	}
+	.wxLine{
+		display: flex;
+		padding: 20px 0px;
+		cursor: pointer;
+		border-bottom: 1px solid #EEEEEE;
+	}
+	.wzLineLeft{
+		border-radius: 6px;
+		overflow: hidden;
+		width: 200px;
+		height: 132px;
+	}
+	.wzLineRight{
+		padding-left: 16px;
+		width: 788px;
+	}
+	.wzTitle{
+		font-size: 16px;
+		color: #3C3C3C;
+	}
+	.wzTitle2{
+		font-size: 16px;
+		color: #3C3C3C;
+		width: 948px;
+		height: 20px;
+		line-height: 20px;
+		text-overflow: -o-ellipsis-lastline;
+		 overflow: hidden;
+		 text-overflow: ellipsis;
+		 display: -webkit-box;
+		 -webkit-line-clamp: 1;
+		 line-clamp: 1;
+		 -webkit-box-orient: vertical;
+	}
+	.pageView{
+		margin-top: 20px;
+		cursor: pointer;
+		padding-bottom: 20px;
+	}
+	.nodataImg{
+		width: 300px;
+		height: 203px;
+		padding-top: 100px;
+	}
+	.nodata{
+		text-align: center;
+	}
+	.nodataTitle{
+		font-size: 16px;
+		padding-top: 16px;
+		font-weight: 400;
+		color: #999999;
+	}
+	.c999{
+		color: #999999;
+	}
+</style>

+ 379 - 0
pages/pc/newsearchlist.vue

@@ -0,0 +1,379 @@
+<template>
+	<view class="content2">
+		
+		<view style="height: 72px;"></view>
+	
+		<view class="gotop" @click="gotoTop">
+			<image src="../../static/pcimg/btn_top@2x.png" mode="" class="gotopImg"></image>
+		</view>
+		
+		<view class="main">
+			<view class="searchBox">
+				<view class="searchInputBox">
+					<input class="searchInput" type="text" v-model="title" placeholder="请输入您想搜索到内容~" placeholder-style="color:#CCCCCC" @confirm="search"/>
+				</view>
+				<view class="searchBtn" @click="search">查询</view>
+				<!-- <image src="../../static/pcimg/icon_sousuo@2x.png" mode="" class="searchBtn" @click="search"></image> -->
+				
+			</view>
+			<view class="ssjg" v-if="sstype">为你找到“{{sstitle}}”相关结果共{{TotalSize}}条</view>
+			<view class="cont2">
+				<view class="contBox">
+					<view class="contL" v-show="list.length!=0&&sstype">
+						<view class="wxLine" v-for="(wz,wzindex) in list" @click="goDetail(wz)">
+							<view class="wzLineLeft">
+								<image :src="wz.LogoImg" class="wzLeftIMg"></image>
+							</view>
+							<view class="wzLineRight">
+								<view class="wzTitle2">{{wz.Title}}</view>
+								<view class="wzComment">{{wz.Comment}}</view>
+							</view>
+						</view>
+					</view>
+					<view class="nodata" v-show="list.length==0&&sstype">
+						<image src="../../static/pcimg/pic_empty_search@2x.png" mode="" class="nodataImg"></image>
+						<view class="nodataTitle">暂无数据</view>
+					</view>
+				</view>
+				
+				
+			</view>
+			
+		</view>
+		
+		<!-- -->
+		<view class="pageView" v-show="TotalSize">
+			<page-pagination :pageSize="pageSize" :size="'small'" :total="TotalSize" :numAround="true" @change="pageChange"></page-pagination>
+		</view>
+		<!-- <view>
+			<a class="table-btn" href="http://phone.66km.cn:8088/marketing/training/940C4BF0A2E04542A1A1AD244EAFB6E2.xlsx" target='_blank'>下载入口</a>
+		</view> -->
+		
+		
+		
+	</view>
+</template>
+
+<script>
+	import pcNav from '../../components/pcNav/pcNav.vue'
+	export default {
+		components: {
+			pcNav,
+		},
+		data() {
+			return {
+				list:[],
+				title:'',
+				page:1,
+				sstype:false,
+				TotalSize:0,
+				pageSize:20,
+				sstitle:'',
+			}
+		},
+		onLoad(opt) {
+          
+		  // this.getcategoryPageData()
+		},
+		methods: {
+			search(){
+				var params={
+					title:this.title,
+					limit:this.pageSize,
+					page:this.page,
+				}
+				uni.showLoading({
+					title: '加载中'
+				})
+				this.$http('/trainingOpenApi/searchPageData', params, 'GET').then(res => {
+					this.sstitle=this.title;
+					this.sstype=true;
+					uni.hideLoading();
+					this.list=res.data.Items;
+					this.TotalSize=res.data.TotalSize;
+					
+					
+				})
+			},
+			goDetail(wz){
+				// 1分类2文章
+				if (wz.Type == 1) {
+					uni.navigateTo({
+						url:'groupingList?parentCode='+wz.Code+'&name='+wz.Name+'&title='+wz.Title+'&topName='
+					})
+				}else{
+					uni.navigateTo({
+						url:'detail?id='+wz.ID+'&topName=&twoName='
+					})
+				}
+				//console.log(wz)
+			},
+			gotoTop(){
+				uni.pageScrollTo({ 
+				   scrollTop: 0, duration: 300 
+				}); 
+			},
+			tabBtn(index,item){
+				this.tabIndex=index;
+				//console.log(item)
+				this.parentCode=item.code;
+				this.getcategoryPageData()
+			},
+			pageChange(e){
+				console.log(e)
+				this.page=e;
+				this.getcategoryPageData()
+				
+			},
+			getcategoryPageData(){
+				var params={
+					parentCode:this.parentCode,
+					topCode:this.topCode,
+					limit:this.pageSize,
+					page:this.page,
+				}
+				uni.showLoading({
+					title: '加载中'
+				})
+				this.$http('/trainingOpenApi/categoryPageData', params, 'GET').then(res => {
+					uni.hideLoading();
+					this.list=res.data.Items;
+					this.TotalSize=res.data.TotalSize;
+					var arr=[
+						{
+							'name':'全部','code':'',
+						}	
+					]
+					this.dynamicCol=arr.concat(res.data.dynamicCol);
+					
+				})
+			}
+		}
+	}
+</script>
+
+<style scoped>
+	.content2{
+		background: #F4F5F7;
+		min-height: 100vh;
+		font-family: PingFangSC-Regular, PingFang SC;
+	}
+	.searchTitle{
+		font-size: 20px;
+		font-weight: 500;
+		color: #3C3C3C;
+		padding-bottom: 30px;
+	}
+	.ssjg{
+		font-size: 16px;
+		color: #666666;
+		padding-top: 20px;
+	}
+	.contBox{
+		min-height: 60vh;
+	}
+	.searchInput{
+		width: 520px;
+		height: 40px;
+		padding-left: 20px;
+		line-height: 40px;
+		border: 2px solid #EEEEEE;
+		border-radius: 6px;
+		border-right: none;
+		background: #FFFFFF;
+	}
+	.searchBtn{
+		width: 72px;
+		height: 42px;
+		background: #FF4F00;
+		border-radius: 0px 6px 6px 0px;
+		line-height: 42px;
+		color: #FFFFFF;
+		font-size: 16px;
+		text-align: center;
+		cursor: pointer;
+		margin-left: -5px;
+	}
+	.searchBox{
+		display: flex;
+		justify-content: center;
+		padding-top: 20px;
+	}
+	*{
+		padding: 0;
+		margin: 0;
+	}
+	.gotopImg{
+		width: 60px;
+		height: 60px;
+	}
+	.gotop{
+		position: fixed;
+		right:5vh ;
+		bottom: 60px;
+		cursor: pointer;
+	}
+	.topName{
+		text-align: center;
+		font-size: 24px;
+		font-weight: 500;
+		color: #3C3C3C;
+		line-height: 33px;
+		padding-top: 30px;
+	}
+	.comment{
+		text-align: center;
+		font-size: 14px;
+		font-weight: 400;
+		color: #999999;
+		line-height: 20px;
+		width: 500px;
+		padding-top: 10px;
+		margin: 0 auto;
+	}
+	
+	.main{
+		width: 1200px;
+		margin: 0 auto;
+		padding-top: 30px;
+	}
+	.dynamicColLeft{
+		display: flex;
+	}
+	.dynamicColLIne{
+		padding-right: 44px;
+		font-size: 16px;
+		color: #3C3C3C;
+		cursor: pointer;
+	}
+	.qhImg{
+		width: 28px;
+		height: 28px;
+		margin-left: 8px;
+		cursor: pointer;
+	}
+	.dynamicCol{
+		display: flex;
+		justify-content: space-between;
+	}
+	.activeTab{
+		color: #FF4F00;
+	}
+	.mainwzImg{
+		width: 276px;
+		height: 184px;
+	}
+	.mainwzImgBox{
+		border-radius: 15px;
+	    overflow: hidden;
+	}
+	.contf{
+		display: flex;
+		flex-wrap: wrap;
+	}
+	.contL{
+		background: #FFFFFF;
+		padding:0px 20px;
+		margin-top: 30px;
+		border-radius: 8px;
+	}
+	.mainwzline{
+		width: 276px;
+		height: 260px;
+		background: #FFFFFF;
+		margin-right: 32px;	
+		padding-top: 33px;
+		cursor: pointer;
+	}
+	.mainwzlineR{
+	  margin-right: 0px;	
+	}
+	.wztitle{
+		width: 250px;
+		font-size: 16px;
+		color: #333333;
+		line-height: 22px;
+		height: 44px;
+		text-overflow: -o-ellipsis-lastline;
+		 overflow: hidden;
+		 text-overflow: ellipsis;
+		 display: -webkit-box;
+		 -webkit-line-clamp: 2;
+		 line-clamp: 2;
+		 -webkit-box-orient: vertical;
+		 padding-top: 16px;
+		 padding:0 13px ;
+	}
+	.wzLeftIMg{
+		width: 200px;
+		height: 132px;
+	}
+	.wxLine{
+		display: flex;
+		padding: 20px 0;
+		cursor: pointer;
+		border-bottom: 1px solid #EEEEEE;
+		
+	}
+	.wzLineLeft{
+		border-radius: 6px;
+		overflow: hidden;
+		width: 200px;
+		height: 132px;
+	}
+	.wzLineRight{
+		padding-left: 16px;
+		width: 788px;
+	}
+	.wzTitle2{
+		font-size: 16px;
+		color: #3C3C3C;
+		width: 948px;
+		height: 20px;
+		line-height: 20px;
+		text-overflow: -o-ellipsis-lastline;
+		 overflow: hidden;
+		 text-overflow: ellipsis;
+		 display: -webkit-box;
+		 -webkit-line-clamp: 1;
+		 line-clamp: 1;
+		 -webkit-box-orient: vertical;
+	}
+	.wzComment{
+		font-size: 14px;
+		font-family: PingFangSC-Regular, PingFang SC;
+		font-weight: 400;
+		color: #999999;
+		line-height: 20px;
+		padding-top: 10px;
+		width: 948px;
+		height: 80px;
+		text-overflow: -o-ellipsis-lastline;
+		 overflow: hidden;
+		 text-overflow: ellipsis;
+		 display: -webkit-box;
+		 -webkit-line-clamp: 4;
+		 line-clamp: 4;
+		 -webkit-box-orient: vertical;
+	}
+	.pageView{
+		margin-top: 20px;
+		cursor: pointer;
+		padding-bottom: 20px;
+	}
+	.nodataImg{
+		width: 300px;
+		height: 203px;
+	}
+	.nodata{
+		text-align: center;
+		padding-top: 100px;
+	}
+	.nodataTitle{
+		font-size: 16px;
+		padding-top: 16px;
+		font-weight: 400;
+		color: #999999;
+	}
+	
+</style>