bd0716 3 năm trước cách đây
mục cha
commit
9ddbcd443c

+ 1 - 1
activityPages/accountsOfficial/accountsOfficial.vue

@@ -1,7 +1,7 @@
 <template>
 	<!-- 去往公众号 -->
 	<view>
-		<web-view src="https://mp.weixin.qq.com/s/jMGsvazoR3sze5WpIP5wLg"></web-view>
+		<web-view src="https://mp.weixin.qq.com/s/imyaP4Ch33Ey4VMCUpFhSw"></web-view>
 	</view>
 </template>
 

+ 10 - 6
activityPages/activityDetail/activityDetail.vue

@@ -274,11 +274,15 @@
 							this.detailData = res.Data.Detail
 							let pages = getCurrentPages()
 							let prevPage = pages[pages.length - 2]
-							const index = prevPage.$vm.collectList.findIndex(item => item.ActivityId == this.id)
-							prevPage.$vm.collectList[index].IsSignup = this.detailData.IsSignup
-							prevPage.$vm.collectList[index].SignupNum = this.detailData.SignupNum
-							prevPage.$vm.collectList[index].IsCancelMeetingReminder = this.detailData
-								.IsCancelMeetingReminder
+							let path = prevPage.$page.fullPath
+							if(path == '/pages/activity/activity' || path == '/activityPages/activitySearch/activitySearch') {
+								const index = prevPage.$vm.collectList.findIndex(item => item.ActivityId == this.id)
+								prevPage.$vm.collectList[index].IsSignup = this.detailData.IsSignup
+								prevPage.$vm.collectList[index].SignupNum = this.detailData.SignupNum
+								prevPage.$vm.collectList[index].IsCancelMeetingReminder = this.detailData
+									.IsCancelMeetingReminder
+							}
+							
 						}
 					}
 				})
@@ -360,7 +364,7 @@
                 const date = new Date(str)
                 const times = date.getTime()
                 const num = new Date().getTime()
-                if(this.detailData.IsResearch){
+                if(!this.detailData.IsResearch){
                     if (times - num <= 900000) {
                     	uni.showModal({
                     		confirmText: '知道了',

+ 3 - 3
activityPages/editOutbound/editOutbound.vue

@@ -109,7 +109,7 @@
 							${this.telephone}-${this.phoneIpt}<br/>
 							预约成功,已加入您的活动日程<br/><br/>
 							
-							想要及时获取活动时间变更通知,请关注【弘则研究】公众号
+							想要及时获取活动时间变更通知,请关注【查研观向小助手】公众号
 						`
 						this.goFollowShow=true
 						
@@ -133,7 +133,7 @@
 							${this.cellphone}<br/>
 							预约成功,已加入您的活动日程<br/><br/>
 							
-							想要及时获取活动时间变更通知,请关注【弘则研究】公众号
+							想要及时获取活动时间变更通知,请关注【查研观向小助手】公众号
 						`
 						this.goFollowShow=true
 					}else {
@@ -165,7 +165,7 @@
 							${this.cellphone}<br/>
 							预约成功,已加入您的活动日程<br/><br/>
 							
-							想要及时获取活动时间变更通知,请关注【弘则研究】公众号
+							想要及时获取活动时间变更通知,请关注【查研观向小助手】公众号
 						`
 						this.goFollowShow=true
 					}else {

+ 3 - 3
components/modalDialog.vue

@@ -171,19 +171,19 @@
 					${this.countryCode}-${this.mobileEdit}<br/>
 					预约成功,已加入您的活动日程<br/><br/>
 					
-					想要及时获取活动时间变更通知,请关注【弘则研究】公众号
+					想要及时获取活动时间变更通知,请关注【查研观向小助手】公众号
 				`
 				} else if(this.signupType == 999){
 					this.content = '设置成功,会前15分钟会为您推送微信消息提醒'
 					this.accounts = `设置成功,会前15分钟会为您推送微信消息提醒<br/><br/>
-									请关注【弘则研究】公众号,以获取微信消息提醒`
+									请关注【查研观向小助手】公众号,以获取微信消息提醒`
 									
 				} else{
 				this.content = '报名成功,已加入您的活动日程'
 				this.accounts = `
 						报名成功,已加入您的活动日程<br/><br/>
 						
-						想要及时获取活动时间变更通知,请关注【弘则研究】公众号	`
+						想要及时获取活动时间变更通知,请关注【查研观向小助手】公众号	`
 				
 				}
 

+ 8 - 0
config/api.js

@@ -93,6 +93,10 @@ export const User = {
     pageHistory: params => {
 		return postHttp('/config/pageHistory',params,0)
 	},
+	//我的提问
+    getAskList: params => {
+		return getHttp('/user/ask/list')
+	},
 }
 
 /* 首页 */
@@ -170,6 +174,10 @@ export const Reports = {
 	getIndustryList: params => {
 		return getHttp('/report/home/industryList',params,0)
 	},
+	/* 获取产业文章列表接口*/
+	getIndustryAndArticle: params => {
+		return getHttp('/report/industryAndArticle/list',params,0)
+	},
 	/* 是否置顶*/
 	postToptt: params => {
 		return postHttp('/report/top',params,0)

+ 0 - 1
config/config.js

@@ -1,4 +1,3 @@
-
 export const baseUrl = 'http://8.136.199.33:8500/api';//小程序开发接口地址
 //export const baseUrl = 'https://cygx.hzinsights.com/api';//小程序线上接口地址
 // #ifdef H5

+ 9 - 0
pages.json

@@ -208,6 +208,15 @@
                     "enablePullDownRefresh": false
                 }
                 
+                }
+                ,{
+                    "path" : "myAskPage/myAskPage",
+                    "style" :                                                                                    
+                {
+                    "navigationBarTitleText": "我的提问",
+                    "enablePullDownRefresh": false
+                }
+                
                 }
             ]
 	}],

+ 3 - 3
pages/login/login.vue

@@ -8,12 +8,12 @@
 			<view class="tel-bind" v-if="bind_type === 1">
 				<view class="ipt-item">
 					<label class="item-label item-iphone" @click="isAreaCode=true">{{showCountryCode}}   <u-icon :name="isAreaCode?'arrow-up':'arrow-down'" color="#B2B2B2" size="28"></u-icon></label>
-					<input type="text" v-model="phoneIpt" class="ipt" placeholder="请输入手机号" style="width: 300rpx;">
+					<input type="number" v-model="phoneIpt" class="ipt" placeholder="请输入手机号" style="width: 300rpx;">
           <button open-type="getPhoneNumber" value="用户授权" @getphonenumber="getPhoneNumber" class='code-btn'>微信手机号绑定</button> 
 				</view>
 				<view class="ipt-item">
 					<label class="item-label">验证码</label>
-					<input type="text" v-model="phone_code" class="ipt" placeholder="请输入4位验证码" maxlength="6" style="width: 300rpx;">
+					<input type="number" v-model="phone_code" class="ipt" placeholder="请输入4位验证码" maxlength="6" style="width: 300rpx;">
 					<u-verification-code :seconds="seconds" ref="uCode" 
 					@change="codeChange"></u-verification-code>
 					<button @click="getCode" class="code-btn">{{tips}}</button>
@@ -33,7 +33,7 @@
 				</view>
 				<view class="ipt-item">
 					<label class="item-label">验证码</label>
-					<input type="text" v-model="codeNum" class="ipt" placeholder="请输入4位验证码" maxlength="6" style="width: 300rpx;">
+					<input type="number" v-model="codeNum" class="ipt" placeholder="请输入4位验证码" maxlength="6" style="width: 300rpx;">
 					<u-verification-code :seconds="seconds" ref="uCode" 
 					@change="codeChange"></u-verification-code>
 					<button @click="getCode" class="code-btn">{{tips}}</button>

+ 8 - 0
pages/my/my.vue

@@ -51,6 +51,10 @@
 			</view>
 		</view>
 		<view class="my-bot-cont">
+			<view class="list-item border_bottom"  @click="itemClickHandle('提问')">
+				<text>我的提问</text>
+				<u-icon name="arrow-right" color="#BDBDBD" size="34"></u-icon>
+			</view>
 			<view class="list-item border_bottom" v-for="type in typeArr" :key="type" @click="itemClickHandle(type)">
 				<text>{{type}}</text>
 				<u-icon name="arrow-right" color="#BDBDBD" size="34"></u-icon>
@@ -154,6 +158,10 @@
 						uni.navigateTo({
 							url:'/activityPages/editOutbound/editOutbound?title=设置外呼号码&identification=我的'
 						});
+					}else if(type=='提问'){
+						uni.navigateTo({
+							url:'/reportPages/myAskPage/myAskPage'
+						});
 					}else {
 						let path = this.typeObj.get(type);
 						uni.navigateTo({

+ 1 - 1
pages/reportDetail/reportDetail.vue

@@ -40,7 +40,7 @@
 				isIphoneX:false,//判断机型
 				reportInfo:'',
 				//linkurl:'https://details.hzinsights.com/raiReportDtl',//线上链接地址
-				linkurl:'http://192.168.2.66:2000/raiReportDtl',//链接地址 
+				linkurl:'http://192.168.2.51:2000/raiReportDtl',//链接地址 
 				showNav:false,
 				id:'',
 				isShowTip:false,

+ 2 - 2
pages/reportForm/components/researchChoose.vue

@@ -124,10 +124,10 @@
                            this.goFollowShow=true
                            this.confirmText =  res.Data.GoFollow ? '去关注':'知道了'
                            if(res.Data.GoFollow){
-                               this.accounts=`作者关注成功 <br> 想要及时获取该作者新发报告时的消息推送,请关注【弘则研究】公众号`
+                               this.accounts=`作者关注成功 <br> 想要及时获取该作者新发报告时的消息推送,请关注【查研观向小助手】公众号`
                                this.isCancelBtn=true
                            }else {
-                               this.accounts='作者关注成功,该作者发布新的报告时,【弘则研究】公众号会为您推送微信消息提醒'
+                               this.accounts='作者关注成功,该作者发布新的报告时,【查研观向小助手】公众号会为您推送微信消息提醒'
                            }
                        }else {
                            uni.showToast({

+ 2 - 2
pages/reportForm/reportForm.vue

@@ -428,10 +428,10 @@
                             this.goFollowShow = true
                             this.confirmText = res.Data.GoFollow ? '去关注' : '知道了'
                             if (res.Data.GoFollow) {
-                                this.accounts = `产业关注成功 <br> 想要及时获取该产业内容的更新推送,请关注【弘则研究】公众号`
+                                this.accounts = `产业关注成功 <br> 想要及时获取该产业内容的更新推送,请关注【查研观向小助手】公众号`
                                 this.isCancelBtn = true
                             } else {
-                                this.accounts = '产业关注成功,产业报告更新时,【弘则研究】公众号会为您推送微信消息提醒'
+                                this.accounts = '产业关注成功,产业报告更新时,【查研观向小助手】公众号会为您推送微信消息提醒'
                             }
                         }
                         this.industryList.forEach(key => {

+ 242 - 180
reportPages/industrialReport/industrialReport.vue

@@ -1,23 +1,23 @@
 <template>
-  		<!-- 季度策略 -->
+	<!-- 季度策略 -->
 	<view class="container industrial-container">
-    <view class="collect-ul" v-if="haveData">
-    			<view class="collect-ltem" v-for="(item,index) in collectList" :key="index" @click="goDetail(item,index)">
-    				<view class="item-left">
-    					<text class="title text_twoLine">{{item.Title}}
-                        <text class="reg-text" v-if="item.IsRed"></text>
-                        </text>
-    					<!-- <view class="text_twoLine desc">{{item.PublishDate}} <text>1231231</text></vive> -->
-    				<view class="desc">
-    				    <text :class="item.IsResearch ? 'publishDate' : ''">{{item.PublishDate}}</text>
-    				    <text v-if="item.IsResearch" class="text_oneLine text-name">{{item.IndustryName}}</text>
-    				</view>
-                    
-                    </view>
-    				<u-icon name="arrow-right" color="#BDBDBD" size="34"></u-icon>
-    			</view>
-    			<u-loadmore :status="status" icon-type="flower" :load-text="loadText" margin-top="20" v-if="totalPage>1"/>
-    		</view>
+		<view class="collect-ul" v-if="haveData">
+			<view class="collect-ltem" v-for="(item,index) in collectList" :key="index" @click="goDetail(item,index)">
+				<view class="item-left">
+					<text class="title text_twoLine">{{item.Title}}
+						<text class="reg-text" v-if="item.IsRed"></text>
+					</text>
+					<!-- <view class="text_twoLine desc">{{item.PublishDate}} <text>1231231</text></vive> -->
+					<view class="desc">
+						<text :class="item.IsResearch ? 'publishDate' : ''">{{item.PublishDate}}</text>
+						<text v-if="item.IsResearch" class="text_oneLine text-name">{{item.IndustryName}}</text>
+					</view>
+
+				</view>
+				<u-icon name="arrow-right" color="#BDBDBD" size="34"></u-icon>
+			</view>
+			<u-loadmore :status="status" icon-type="flower" :load-text="loadText" margin-top="20" v-if="totalPage>1" />
+		</view>
 		<view class="nodata" v-else>
 			<image src="@/static/img/nodata.png" mode="" class="nodata_ico"></image>
 			<text>暂时没有报告的内容</text>
@@ -26,176 +26,238 @@
 </template>
 
 <script>
-  import { Reports } from '@/config/api.js' 
-  import { Throttle } from '@/config/util.js' 
-  let app = getApp()
+	import {Reports} from '@/config/api.js'
+	import {Throttle} from '@/config/util.js'
+	let app = getApp()
 	export default {
 		data() {
 			return {
-          refresh: false,//正在下拉
-          page_no:1,
-          pageSize:10,
-		  categoryId:null,
-          collectList:[],
-          haveData:true,
-          status:'loadmore',
-          loadText: {
-          	loadmore: '上拉加载更多',
-          	loading: '加载中',
-          	nomore: '已经到底了'
-          },
-		  typeIsPost:'',//
-		  genreIs:'',//作者还是文章
-          totalPage:'',
-		  titleReport:'',
-          idGenre:'',
-          articleId:''
+				refresh: false, //正在下拉
+				page_no: 1,
+				pageSize: 10,
+				categoryId: null,
+				collectList: [],
+				haveData: true,
+				status: 'loadmore',
+				loadText: {
+					loadmore: '上拉加载更多',
+					loading: '加载中',
+					nomore: '已经到底了'
+				},
+				typeIsPost: '', //
+				genreIs: '', //作者还是文章
+				totalPage: '',
+				titleReport: '',
+				idGenre: '',
+				articleId: ''
 			};
 		},
-    onLoad(option) {
-		 this.$store.dispatch("checkHandle",{type:'load',val:option}).then(res=>{
-			 this.categoryId=Number(option.id)||''
-             this.idGenre=Number(option.idGenre) ||''
-             this.articleId=Number(option.idArticle) ||''
-			 this.typeIsPost=option.type || ''
-			 this.genreIs=option.isGenre || ''
-			 this.getCollectList()
-		 })
-		
-    },
-	onShow() {
-	},
-    methods:{
-    /* 获取列表 */
-  async  getCollectList() {
-		if(this.typeIsPost =='研选'&& this.genreIs!=='标的') {
-			Reports.industryReportList({
-				PageSize: this.pageSize,
-				CurrentIndex: this.page_no,
-				DepartmentId:this.idGenre,
-				IndustrialManagementId:this.categoryId,
-                ArticleId:this.articleId
+		onLoad(option) {
+			this.$store.dispatch("checkHandle", {
+				type: 'load',
+				val: option
 			}).then(res => {
-    		if(res.Ret === 200) {
-                if(!res.Data.HaveResearch){
-                    this.$util.modalShow('','您暂无查看研选权限','',()=>{
-                        uni.reLaunch({
-                             url:'/pages/index/index'
-                         })
-                    })
-                }   
-				uni.setNavigationBarTitle({
-				    title: this.genreIs=='作者' ? res.Data.NickName :res.Data.IndustryName
-				});
-                if(res.Data.List.length>0){
-                    res.Data.List.forEach(item =>{
-                        item.PublishDate=item.PublishDate.slice(0,10)
-                    })
-                }
-				this.titleReport = this.genreIs=='作者' ? res.Data.NickName :res.Data.IndustryName
-    			this.status = this.page_no < res.Data.Paging.Pages ? 'loadmore' : 'nomore';
-    			this.totalPage = res.Data.Paging.Pages;//总页数
-    			if(this.page_no === 1) {
-    				this.collectList = res.Data.List || [];
-    				this.haveData = this.collectList.length ? true : false
-    				if(this.refresh) {
-    					uni.stopPullDownRefresh();
-    					this.refresh = false;
-    				} 
-    			}else {
-    				this.collectList = this.collectList.concat(res.Data.List)
-    			}
-    		}
-    	})	
-			return
-		}else {
-            const res = this.genreIs==='标的' ? await Reports.reportListNew({
-                	PageSize: this.pageSize,
-                	CurrentIndex: this.page_no,
-                	 ArticleId:this.articleId
-                }) : await Reports.getTactics({
-            	PageSize: this.pageSize,
-            	CurrentIndex: this.page_no,
-            	CategoryId:this.categoryId
-            })
-            if(res.Ret === 200) {
-            	uni.setNavigationBarTitle({
-            	    title:this.genreIs==='标的' ? res.Data.IndustryName : res.Data.MatchTypeName
-            	});
-            	this.titleReport=this.genreIs==='标的' ? res.Data.IndustryName : res.Data.MatchTypeName
-            	this.status = this.page_no < res.Data.Paging.Pages ? 'loadmore' : 'nomore';
-            	this.totalPage = res.Data.Paging.Pages;//总页数
-            	if(this.page_no === 1) {
-            		this.collectList = res.Data.List || [];
-            		this.haveData = this.collectList.length ? true : false
-            		if(this.refresh) {
-            			uni.stopPullDownRefresh();
-            			this.refresh = false;
-            		} 
-            	}else {
-            		this.collectList = this.collectList.concat(res.Data.List)
-            	}
-            }
-            
-        }
-    },
-   goDetail(item,index) {
-   	/* 无需授权且已绑定 检验是或否有权限 */
-	this.collectList[index].IsRed=false
-   	this.$store.dispatch('checkHandle').then(res => {
-   		app.globalData.isAuth = res.IsAuth;
-   		app.globalData.isBind = res.IsBind;
-   		if((!res.IsAuth) && (!res.IsBind)) { // 已授权已绑定
-   			uni.navigateTo({
-   				url:'/pages/reportDetail/reportDetail?id=' + item.ArticleId,
-   			});
-   		}else if(res.IsAuth) { //未授权
-   			uni.navigateTo({
-   				url:'/pages/authGuide/authGuide'
-   			})
-   		}else if(res.IsBind && !res.IsAuth){ //已授权未绑定
-   			uni.navigateTo({
-   				url:'/pages/login/login'
-   			})
-   		}
-   	})
-   	
-   },
-    },
-    /* 触底 */
-    	onReachBottom: Throttle(function() {
-    		if(this.status === 'nomore') return ;
-    		this.status = 'loading';
-    		this.page_no++;
-    		this.getCollectList()
-    	}),
-    	/* 下拉刷新 */
-    	onPullDownRefresh: Throttle(function() {
-    		this.page_no = 1;
-    		this.refresh = true;
-    		this.getCollectList()
-    	}),
-    
-   /**
-   * 用户点击分享
-   */
-   onShareAppMessage: function (res) {
-   	return {
-   		title: this.titleReport,
-   		path: '/reportPages/industrialReport/industrialReport?id='+this.categoryId+'&type='+this.typeIsPost+'&isGenre='+this.genreIs+'&idGenre='+this.idGenre+'&idArticle='+this.articleId,
-   		success: (res)=> {
-   		},
-   		fail: (err)=> {
-   		}
-   	}
-   },
+				this.categoryId = Number(option.id) || ''
+				this.idGenre = Number(option.idGenre) || ''
+				this.articleId = Number(option.idArticle) || ''
+				this.typeIsPost = option.type || ''
+				this.genreIs = option.isGenre || ''
+				this.getCollectList()
+			})
+
+		},
+		onShow() {},
+		methods: {
+			/* 获取列表 */
+			async getCollectList() {
+				const res = this.typeIsPost == '研选' && this.genreIs !== '标的' ? await Reports.industryReportList({
+					PageSize: this.pageSize,
+					CurrentIndex: this.page_no,
+					DepartmentId: this.idGenre,
+					IndustrialManagementId: this.categoryId,
+					ArticleId: this.articleId
+				}) : this.genreIs === '标的' ? await Reports.reportListNew({
+					PageSize: this.pageSize,
+					CurrentIndex: this.page_no,
+					ArticleId: this.articleId
+				}) : await Reports.getTactics({
+					PageSize: this.pageSize,
+					CurrentIndex: this.page_no,
+					CategoryId: this.categoryId
+				})
+				if (res.Ret === 200) {
+					if (!res.Data.HaveResearch && this.typeIsPost == '研选') {
+						this.$util.modalShow('', '您暂无查看研选权限', '', () => {
+							uni.reLaunch({
+								url: '/pages/index/index'
+							})
+						})
+					}
+					uni.setNavigationBarTitle({
+						title: this.genreIs == '作者' ? res.Data.NickName : this.genreIs === '标的' ?
+					res.Data.IndustryName :res.Data.IndustryName ?res.Data.IndustryName: res.Data.MatchTypeName
+					});
+					this.titleReport =  this.genreIs=='作者' ? res.Data.NickName : this.genreIs === '标的' ? res.Data.IndustryName : 
+					res.Data.IndustryName ? res.Data.IndustryName: res.Data.MatchTypeName
+					this.status = this.page_no < res.Data.Paging.Pages ? 'loadmore' : 'nomore';
+					this.totalPage = res.Data.Paging.Pages; //总页数
+					if (res.Data.List.length > 0) {
+						res.Data.List.forEach(item => {
+							if (item.IsResearch) {
+								item.PublishDate = item.PublishDate.slice(0, 10)
+							}
+
+						})
+					}
+					if (this.page_no === 1) {
+						this.collectList = res.Data.List || [];
+						this.haveData = this.collectList.length ? true : false
+						if (this.refresh) {
+							uni.stopPullDownRefresh();
+							this.refresh = false;
+						}
+					} else {
+						this.collectList = this.collectList.concat(res.Data.List)
+					}
+				}
+
+				// 	if(this.typeIsPost =='研选'&& this.genreIs!=='标的') {
+				// 		Reports.industryReportList({
+				// 			PageSize: this.pageSize,
+				// 			CurrentIndex: this.page_no,
+				// 			DepartmentId:this.idGenre,
+				// 			IndustrialManagementId:this.categoryId,
+				//                ArticleId:this.articleId
+				// 		}).then(res => {
+				//    		if(res.Ret === 200) {
+				//                if(!res.Data.HaveResearch){
+				//                    this.$util.modalShow('','您暂无查看研选权限','',()=>{
+				//                        uni.reLaunch({
+				//                             url:'/pages/index/index'
+				//                         })
+				//                    })
+				//                }   
+				// 			uni.setNavigationBarTitle({
+				// 			    title: this.genreIs=='作者' ? res.Data.NickName :res.Data.IndustryName
+				// 			});
+				//                if(res.Data.List.length>0){
+				//                    res.Data.List.forEach(item =>{
+				//                        item.PublishDate=item.PublishDate.slice(0,10)
+				//                    })
+				//                }
+				// 			this.titleReport = this.genreIs=='作者' ? res.Data.NickName :res.Data.IndustryName
+				//    			this.status = this.page_no < res.Data.Paging.Pages ? 'loadmore' : 'nomore';
+				//    			this.totalPage = res.Data.Paging.Pages;//总页数
+				//    			if(this.page_no === 1) {
+				//    				this.collectList = res.Data.List || [];
+				//    				this.haveData = this.collectList.length ? true : false
+				//    				if(this.refresh) {
+				//    					uni.stopPullDownRefresh();
+				//    					this.refresh = false;
+				//    				} 
+				//    			}else {
+				//    				this.collectList = this.collectList.concat(res.Data.List)
+				//    			}
+				//    		}
+				//    	})	
+				// 		return
+				// 	}else {
+				//            const res = this.genreIs==='标的' ? await Reports.reportListNew({
+				//                	PageSize: this.pageSize,
+				//                	CurrentIndex: this.page_no,
+				//                	 ArticleId:this.articleId
+				//                }) : await Reports.getTactics({
+				//            	PageSize: this.pageSize,
+				//            	CurrentIndex: this.page_no,
+				//            	CategoryId:this.categoryId
+				//            })
+				//            if(res.Ret === 200) {
+				//            	uni.setNavigationBarTitle({
+				//            	    title:this.genreIs==='标的' ? res.Data.IndustryName : res.Data.MatchTypeName
+				//            	});
+				//            	this.titleReport=this.genreIs==='标的' ? res.Data.IndustryName : res.Data.MatchTypeName
+				//            	this.status = this.page_no < res.Data.Paging.Pages ? 'loadmore' : 'nomore';
+				//            	this.totalPage = res.Data.Paging.Pages;//总页数
+				// 			if(res.Data.List.length>0){
+				// 			    res.Data.List.forEach(item =>{
+				// 					if(item.IsResearch){
+				// 						item.PublishDate=item.PublishDate.slice(0,10)
+				// 					}
+
+				// 			    })
+				// 			}
+				//            	if(this.page_no === 1) {
+				//            		this.collectList = res.Data.List || [];
+				//            		this.haveData = this.collectList.length ? true : false
+				//            		if(this.refresh) {
+				//            			uni.stopPullDownRefresh();
+				//            			this.refresh = false;
+				//            		} 
+				//            	}else {
+				//            		this.collectList = this.collectList.concat(res.Data.List)
+				//            	}
+				//            }
+
+				//        }
+			},
+			goDetail(item, index) {
+				/* 无需授权且已绑定 检验是或否有权限 */
+				this.collectList[index].IsRed = false
+				this.$store.dispatch('checkHandle').then(res => {
+					app.globalData.isAuth = res.IsAuth;
+					app.globalData.isBind = res.IsBind;
+					if ((!res.IsAuth) && (!res.IsBind)) { // 已授权已绑定
+						uni.navigateTo({
+							url: '/pages/reportDetail/reportDetail?id=' + item.ArticleId,
+						});
+					} else if (res.IsAuth) { //未授权
+						uni.navigateTo({
+							url: '/pages/authGuide/authGuide'
+						})
+					} else if (res.IsBind && !res.IsAuth) { //已授权未绑定
+						uni.navigateTo({
+							url: '/pages/login/login'
+						})
+					}
+				})
+
+			},
+		},
+		/* 触底 */
+		onReachBottom: Throttle(function() {
+			if (this.status === 'nomore') return;
+			this.status = 'loading';
+			this.page_no++;
+			this.getCollectList()
+		}),
+		/* 下拉刷新 */
+		onPullDownRefresh: Throttle(function() {
+			this.page_no = 1;
+			this.refresh = true;
+			this.getCollectList()
+		}),
+
+		/**
+		 * 用户点击分享
+		 */
+		onShareAppMessage: function(res) {
+			return {
+				title: this.titleReport,
+				path: '/reportPages/industrialReport/industrialReport?id=' + this.categoryId + '&type=' + this
+					.typeIsPost + '&isGenre=' + this.genreIs + '&idGenre=' + this.idGenre + '&idArticle=' + this
+					.articleId,
+				success: (res) => {},
+				fail: (err) => {}
+			}
+		},
 	}
 </script>
 
 <style scoped lang="scss">
- @import '../index.scss';
-.industrial-container {
-  background-color: #f6f6f6;
-  
-}
+	@import '../index.scss';
+
+	.industrial-container {
+		background-color: #f6f6f6;
+
+	}
 </style>

+ 93 - 0
reportPages/myAskPage/myAskPage.vue

@@ -0,0 +1,93 @@
+<template>
+	<view class="container ask-container">
+		<view  v-if="haveData">
+				<view class="collect-item" v-for="(item,index) in askList" :key="index">
+						<view class="item-row">
+							<text>问题内容:</text>
+							<text>{{item.Content}}</text>
+						</view>
+						<view class="item-title">
+							<view class="item-row" @click="goDetail(item)">
+								<text>相关{{item.AskType=='Activity'?'活动':'报告'}}:</text>
+								<text class="title">{{item.Title}}</text>
+							</view>
+							<u-icon class="ico" name="arrow-right" color="#BDBDBD" size="34"></u-icon>
+						</view>
+						<text class="time">提问时间:  {{item.CreateTime}}</text>
+				</view>
+		</view>
+		<view class="nodata" v-else>
+			<image src="@/static/img/nodata.png" mode="" class="nodata_ico"></image>
+			<text>暂时没有收藏的内容</text>
+		</view>
+	</view>
+</template>
+
+<script>
+	import {User} from '@/config/api.js'
+	export default {
+		data() {
+			return {
+				askList:[],
+				haveData:true
+			}
+		},
+		methods: {
+		async getAsk(){
+			const res =	await User.getAskList()
+			if(res.Ret === 200 ){
+				this.haveData = res.Data.List ? true :false
+				this.askList =res.Data.List || []
+			}
+		},
+		goDetail(item){
+			item.AskType=='Activity' ? uni.navigateTo({
+				url:'/activityPages/activityDetail/activityDetail?id='+ item.ReportOrActivityId
+			}) : uni.navigateTo({
+				url:'/pages/reportDetail/reportDetail?id=' + item.ReportOrActivityId
+			})
+		}
+		},
+		onLoad() {
+			this.getAsk()
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.ask-container {
+		background: #F7F7F7;
+		padding-top: 10rpx;
+		.collect-item {
+			padding: 30rpx 30rpx 20rpx 34rpx;
+			color: #333333;
+			font-size: 30rpx;
+			background: #FFF;
+			margin-bottom: 10rpx;
+		}
+		.item-row {
+			:first-child {
+				flex-shrink:0;
+				padding-right: 10rpx;
+			}
+			display: flex;
+		}
+		.item-title {
+			display: flex;
+			justify-content: space-between;
+			align-items: center;
+			margin: 30rpx 0;
+			font-size: 28rpx;
+			.ico {
+				width: 16px;
+			}
+			.title {
+				color: #2C83FF;
+			}
+		}
+		.time {
+			font-size: 24rpx;
+		}
+	}
+
+</style>

+ 89 - 26
reportPages/reportSearch/reportSearch.vue

@@ -39,7 +39,11 @@
 			<template v-else>
 				<block v-if="haveResult">
 					<view class="">
-						<view class="report-ul">
+						<view class="report-ul"  v-if="resultList.length > 0 ">
+							<view class="resource">
+								<image src="https://hongze.oss-cn-shanghai.aliyuncs.com/static/images/202111/20211104/QbTGTNhD9MxYp24cJ7V5WpCN0oNl.png" mode=""></image>
+								<text>弘则资源包</text>
+							</view>
 							<view class="report-item" v-for="(item,index) in resultList" :key="index" >
 								<view class="box-text" @click="goDetail(item)">
 										<view class="" style="padding-left: 30rpx;">
@@ -69,9 +73,23 @@
 							
 							</view>
 						</view>
+						<view class="report-ul" v-if="indList.length > 0 ">
+							<view class="resource industry-box">
+								<image src="https://hongze.oss-cn-shanghai.aliyuncs.com/static/images/202111/20211104/QbTGTNhD9MxYp24cJ7V5WpCN0oNl.png" mode=""></image>
+								<text>研选报告</text>
+							</view>
+							<view class="ind-item" v-for="item in indList" :key="item.ArticleId" @click="goDetailIndust(item.ArticleId)">
+								<view class="">
+									<text>{{item.Title}}</text>
+									<view class="time-industry">
+										<text class="time">{{item.PublishDate}}</text>
+										<text>{{item.IndustryName}}</text>
+									</view>
+								</view>
+								<u-icon class="ico" name="arrow-right" color="#BDBDBD" size="34"></u-icon>
+							</view>
+						</view>
 					</view>
-					<u-loadmore :status="status" icon-type="flower" :load-text="loadText"  bg-color="#F7F7F7" padding-bottom="20rpx"/>
-					<!-- v-if="totalPage>1" -->
 				</block>
 				<view class="nodata" v-else>
 					<image src="@/static/img/nodata.png" mode="" class="nodata_ico"></image>
@@ -85,6 +103,7 @@
 <script>
 	import { Search ,Reports} from '@/config/api.js';
 	import { Debounce,Throttle } from '@/config/util.js'
+	let app = getApp()
 	export default {
 		data() {
 			return {
@@ -98,6 +117,7 @@
 				targetList:[],//所有指标列表
 				// 搜索结果列表
 				resultList:[],
+				indList:[],
 				page_no: 1,
 				pageSize: 10,
 				totalPage: 0,
@@ -134,7 +154,7 @@
 				this.searchTxt = item;
 				this.SecName = item;
 				this.resultList = [];
-				this.page_no = 1;
+				this.indList=[]
 				this.getDataList();	
 			},
 			// 键盘输入过程中
@@ -165,7 +185,7 @@
 						this.$db.set('historySearchListReport',JSON.stringify(this.historySearchList))
 					}
 					this.resultList = [];
-					this.page_no = 1;
+					this.indList= []
 					this.getDataList();
 				}else {
 					this.$util.toast('请输入关键字')
@@ -174,21 +194,13 @@
 			// 查找数据
 			getDataList() {
 				this.isResult = true;
-				Reports.getIndustryList({
+				Reports.getIndustryAndArticle({
 					KeyWord: this.searchTxt,
-					PageSize: this.pageSize,
-					CurrentIndex: this.page_no,
 				}).then(res => {
 					if(res.Ret === 200) {
-						if(this.page_no === 1) {
-							this.resultList = res.Data.List || [];
-							this.haveResult = this.resultList.length ? true : false
-						}else {
-							this.resultList = this.resultList.concat(res.Data.List)
-						}
-						if(!this.haveResult) return
-						this.status = this.page_no < res.Data.Paging.Pages ? 'loadmore' : 'nomore'
-						this.totalPage = res.Data.Paging.Pages;//总页数
+						this.resultList = res.Data.IndList || [];
+						this.indList=res.Data.ArtList || []
+						this.haveResult = this.resultList.length > 0 || this.indList.length > 0
 					}
 				})
 			},
@@ -216,16 +228,26 @@
 				});
 				
 			},
+			goDetailIndust(id){
+				this.$store.dispatch('checkHandle').then(res => {
+					app.globalData.isAuth = res.IsAuth;
+					app.globalData.isBind = res.IsBind;
+					if((!res.IsAuth) && (!res.IsBind)) { // 已授权已绑定
+						uni.navigateTo({
+							url:'/pages/reportDetail/reportDetail?id=' + id,
+						});
+					}else if(res.IsAuth) { //未授权
+						uni.navigateTo({
+							url:'/pages/authGuide/authGuide'
+						})
+					}else if(res.IsBind && !res.IsAuth){ //已授权未绑定
+						uni.navigateTo({
+							url:'/pages/login/login'
+						})
+					}
+				})
+			},
 		},
-		/* 触底 */
-		onReachBottom: Throttle(function() {
-			if(this.isResult) {
-				if(this.status === 'nomore') return ;
-				this.status = 'loading';
-				this.page_no++;
-				this.getDataList();				
-			}
-		}),
 		onLoad(options) {
 			this.$store.dispatch("checkHandle",{type:'load',val:options}).then(res=>{
 				if(options.text) {
@@ -262,6 +284,9 @@
 .searchTarget-container {
 	background-color: #f6f6f6;
 	padding-bottom: 30rpx;
+	.report-ul {
+		margin-bottom: 20rpx;
+	}
 	.searchTarget-header {
 		padding: 0 34rpx;
 		width: 100%;
@@ -311,6 +336,22 @@
 			}
 		}
 	}
+	.resource {
+		margin-top: 4rpx;
+		height: 91rpx;
+		width: 100%;
+		display: flex;
+		align-items: center;
+		justify-content: center;
+		background-color: #fff;
+		color: #333333;
+		font-size: 30rpx;
+		image {
+			width: 34rpx;
+			height: 36rpx;
+			margin-right: 10rpx;
+		}
+	}
 	.report-item {
 		margin-top: 10rpx;
 		width: 100%;
@@ -350,6 +391,28 @@
 			}
 		}
 	}
+	.industry-box {
+		margin-bottom: 3rpx;
+	}
+	.ind-item {
+		display: flex;
+		justify-content: space-between;
+		align-items: center;
+		padding: 30rpx 30rpx 28rpx 58rpx;
+		background-color: #fff;
+		margin-bottom: 10rpx;
+		.time-industry {
+			display: flex;
+			margin-top: 30rpx;
+			font-size: 26rpx;
+			color: #2C83FF;
+			.time {
+			color: #666666;
+			margin-right: 20rpx;
+			flex-shrink:0;
+			}
+		}
+	}
 	.search-cont {
 		padding-top: 130rpx;
 		.search-cont-top {

+ 308 - 277
reportPages/reportSecretDetail/reportSecretDetail.vue

@@ -1,285 +1,316 @@
 <template>
-    <view class="container content-secret forbid-copy">
-        <block v-if="hasPermission==1 ||!hasPermission">
-        <view class="container-top" v-if="detali">
-            <view class="content-title">
-                {{detali.Title}}
-            </view>
-            <view class="content-time">
-                <text>{{detali.Department}}</text>
-                <text>{{detali.PublishDate}}</text>
-            </view>
-            <view class="content-statement">
-                <text>注:请务必阅读</text>
-                <text class="statement" @click="isShowStatement=true">免责声明 </text>
-            </view>
-            <view class="content-audio">
-                <view class="audio-img">
-                <image v-if="isPlay" @click="audiouspend" :src="require('../image/suspend_icon.png')"></image>
-                <image v-else  @click="audioPlay" :src="require('../image/play_icon.png')" mode=""></image>
-                </view>
-                <view class="audio-title">
-                    <text>{{detali.VideoName}}</text>
-                    <text>{{detali.VideoPlaySeconds}}</text>
-                </view>
-            </view>
-            <view v-if="detali.Abstract" class="content-abstract">
-                <text>摘要:</text>
-                <text>
-                    {{detali.Abstract}}
-                </text>
-            </view>
-            <view v-if="detali.ProductDescription&&isType==1" class="content-abstract">
-                <text>产品说明:</text>
-                <text>
-                    {{detali.ProductDescription}}
-                </text>
-            </view>
-            <view v-if="detali.UpdateDescription&&isType==1" class="content-abstract">
-                <text>变更说明:</text>
-                <text>
-                    {{detali.UpdateDescription}}
-                </text>
-            </view>
-            <view v-if="detali.FocusOn&&isType==1" class="content-focuson">
-                <text class="focuson">近期重点关注方向:</text>
-                <rich-text :nodes="detali.FocusOn"></rich-text>
-            </view>
-        </view>
-        <view class="container-text">
-            <researchSummary v-if="isType==1 ||isType==3" :dataList="dataList" />
-            <reportChoiceness v-if="isType==2" :dataListResearch="dataListResearch"/>
-        </view>
-        <statement :show="isShowStatement"/>
-        </block>
-        <view class="noauth-cont" v-else-if="hasPermission==3 || hasPermission==4">
-            <image src="https://hzstatic.hzinsights.com/cygx/czbk/noauth.png" class="noauth-ico"></image>
-            <block>
-            	<view class="tip">您暂无权限查看此文章内容,若想查看可以申请开通哦</view>
-            	<view class="btn-cont"  @click="applyAuth">
-                立即申请
-            	</view>	
-            </block>
-          <view class="btn-cont back-btn" @click="backIndex"> 返回首页	</view>
-        </view>
-    </view>
+	<view class="container content-secret forbid-copy">
+		<block v-if="hasPermission==1 ||!hasPermission">
+			<view class="container-top" v-if="detali">
+				<view class="content-title">
+					{{detali.Title}}
+				</view>
+				<view class="content-time">
+					<text>{{detali.Department}}</text>
+					<text>{{detali.PublishDate}}</text>
+				</view>
+				<view class="content-statement">
+					<text>注:请务必阅读</text>
+					<text class="statement" @click="isShowStatement=true">免责声明 </text>
+				</view>
+				<view class="content-audio">
+					<view class="audio-img">
+						<image v-if="isPlay" @click="audiouspend" :src="require('../image/suspend_icon.png')"></image>
+						<image v-else @click="audioPlay" :src="require('../image/play_icon.png')" mode=""></image>
+					</view>
+					<view class="audio-title">
+						<text>{{detali.VideoName}}</text>
+						<text>{{detali.VideoPlaySeconds}}</text>
+					</view>
+				</view>
+				<view v-if="detali.Abstract" class="content-abstract">
+					<text>摘要:</text>
+					<text>
+						{{detali.Abstract}}
+					</text>
+				</view>
+				<view v-if="detali.ProductDescription&&isType==1" class="content-abstract">
+					<text>产品说明:</text>
+					<text>
+						{{detali.ProductDescription}}
+					</text>
+				</view>
+				<view v-if="detali.UpdateDescription&&isType==1" class="content-abstract">
+					<text>变更说明:</text>
+					<text>
+						{{detali.UpdateDescription}}
+					</text>
+				</view>
+				<view v-if="detali.FocusOn && isType==1" class="content-focuson">
+					<text class="focuson">近期重点关注方向:</text>
+					<mp-html :content="detali.FocusOn"/>
+				</view>
+			</view>
+			<view class="container-text">
+				<researchSummary v-if="isType==1 ||isType==3" :dataList="dataList" />
+				<reportChoiceness v-if="isType==2" :dataListResearch="dataListResearch" />
+			</view>
+			<statement :show="isShowStatement" />
+		</block>
+		<view class="noauth-cont" v-else-if="hasPermission==3 || hasPermission==4">
+			<image src="https://hzstatic.hzinsights.com/cygx/czbk/noauth.png" class="noauth-ico"></image>
+			<block>
+				<view class="tip">您暂无权限查看此文章内容,若想查看可以申请开通哦</view>
+				<view class="btn-cont" @click="applyAuth">
+					立即申请
+				</view>
+			</block>
+			<view class="btn-cont back-btn" @click="backIndex"> 返回首页 </view>
+		</view>
+	</view>
 </template>
 
 <script>
-    import statement from '@/components/statement.vue'
-    import researchSummary from './components/researchSummary.vue'
-    import reportChoiceness from './components/reportChoiceness.vue'
-    import {Reports} from '@/config/api.js'
-    let app = getApp()
-    export default {
-        data() {
-            return {
-                isShowStatement:false,
-                isPlay:false,
-                audioContext:'', //音频
-                isType:'',//类型
-                id:'',//
-                detali:'',//详情
-                dataList:[],//精选,上周 数组
-                dataListResearch:[],//本周数组
-                hasPermission:'',//权限判断
-                videoUrl:''
-                //bgAudioManager:''
-            }
-        },
-        methods: {
-            audioPlay(){
-                this.isPlay=true
-                app.globalData.bgAudioManager.title = this.detali.VideoName
-                app.globalData.bgAudioManager.src = this.videoUrl
-            },
-            audiouspend(){
-                this.isPlay=false
-                app.globalData.bgAudioManager.pause()
-            },
-          async  getDetilaiList(){
-                if(this.isType==1||this.isType==3){
-                    const res =  this.isType==1 ? await Reports.reportSelectionDetail({ArticleId:this.id})
-                                                : await Reports.minutesSummaryDetail({ ArticleId:this.id})
-                    if(res.Ret===200){
-                        this.detali = res.Data.Detail
-                        this.hasPermission=res.Data.HasPermission
-                        this.videoUrl=res.Data.Detail.VideoUrl
-                        this.dataList=res.Data.List
-                        if( app.globalData.bgAudioManager.src === this.videoUrl) {
-                            this.isPlay = true
-                        }
-                    }
-                }else {               
-                  const res =   await Reports.researchSummaryDetail({ArticleId:this.id})
-                     if(res.Ret===200){
-                         
-                         this.detali = res.Data.Detail
-                        this.hasPermission=res.Data.HasPermission
-                         this.dataListResearch=res.Data.List
-                         this.videoUrl=res.Data.Detail.VideoUrl
-                          if( app.globalData.bgAudioManager.src === this.videoUrl) {
-                              this.isPlay = true
-                          }
-                     }
-                }
-            },
-            /* 无权限申请开通权限 */
-            applyAuth() {
-            this.hasPermission === 4
-            	?  uni.navigateTo({
-            			url:"/pages/applyTrial/applyTrial"
-            		})
-            	: 	uni.showModal({
-            			title: '',
-            			content: '您已经提交过申请了,请耐心等待',
-            			showCancel:false,
-            			confirmColor:'#365595',
-            			success: function (res) {
-                             uni.navigateBack({
-                             	fail(){
-                             		uni.switchTab({
-                             			url:'/pages/index/index'
-                             		})
-                             	}
-                             })
-            			}
-            		});
-            },
-            // 返回首頁
-            backIndex() {
-            	uni.switchTab({
-            		url:'/pages/index/index'
-            	})
-            },
-        },
-        components:{
-            statement,
-            researchSummary,
-            reportChoiceness
-        },
-        onLoad(option) {
-            this.isType=option.type
-            this.id=Number(option.id) ||''
-            uni.setNavigationBarTitle({
-                title:this.isType==1 ? '报告精选' : this.isType==2 ? '本周研究汇总' : '上周纪要汇总'
-            })
-            
-                app.globalData.bgAudioManager.onEnded(res=>{
-                this.isPlay=true
-            })
-          },
-    onShow() {
-              this.$store.dispatch('checkHandle').then(res => {
-                  	app.globalData.isAuth = res.IsAuth;
-                  	app.globalData.isBind = res.IsBind;
-                  	if((!res.IsAuth) && (!res.IsBind)) { //已授权已绑定            
-                  		 this.getDetilaiList()
-                           
-                  	}else if(res.IsAuth) { //未授权
-                  		uni.navigateTo({
-                  			url:'/pages/authGuide/authGuide'
-                  		})
-                  	}else if(res.IsBind && !res.IsAuth){ //已授权未绑定
-                  		uni.navigateTo({
-                  			url:'/pages/login/login'
-                  		})
-                  	}
-                  })	
-              
-          },
-          onUnload(){
-          },
-        /**
-        * 用户点击分享
-        */
-        onShareAppMessage: function (res) {
-        	return {
-        		title: this.detali.Title,
-        		path: '/reportPages/reportSecretDetail/reportSecretDetail?type=' + this.isType + '&id='+this.id,
-        		success: (res)=> {
-        		},
-        		fail: (err)=> {
-        		}
-        	}
-        },
-    }
+	import statement from '@/components/statement.vue'
+	import researchSummary from './components/researchSummary.vue'
+	import reportChoiceness from './components/reportChoiceness.vue'
+	import {
+		Reports
+	} from '@/config/api.js'
+	let app = getApp()
+	export default {
+		data() {
+			return {
+				isShowStatement: false,
+				isPlay: false,
+				audioContext: '', //音频
+				isType: '', //类型
+				id: '', //
+				detali: '', //详情
+				dataList: [], //精选,上周 数组
+				dataListResearch: [], //本周数组
+				hasPermission: '', //权限判断
+				videoUrl: '',
+				//bgAudioManager:''
+			}
+		},
+		methods: {
+			audioPlay() {
+				this.isPlay = true
+				app.globalData.bgAudioManager.title = this.detali.VideoName
+				app.globalData.bgAudioManager.src = this.videoUrl
+			},
+			audiouspend() {
+				this.isPlay = false
+				app.globalData.bgAudioManager.pause()
+			},
+			async getDetilaiList() {
+				if (this.isType == 1 || this.isType == 3) {
+					const res = this.isType == 1 ? await Reports.reportSelectionDetail({
+							ArticleId: this.id
+						}) :
+						await Reports.minutesSummaryDetail({
+							ArticleId: this.id
+						})
+					if (res.Ret === 200) {
+						this.detali = res.Data.Detail
+						this.hasPermission = res.Data.HasPermission
+						this.videoUrl = res.Data.Detail.VideoUrl
+						this.dataList = res.Data.List
+						if ((app.globalData.bgAudioManager.src === this.videoUrl) && app.globalData.bgAudioManager
+							.paused === false) {
+							this.isPlay = true
+						}
+					}
+				} else {
+					const res = await Reports.researchSummaryDetail({
+						ArticleId: this.id
+					})
+					if (res.Ret === 200) {
+
+						this.detali = res.Data.Detail
+						this.hasPermission = res.Data.HasPermission
+						this.dataListResearch = res.Data.List
+						this.videoUrl = res.Data.Detail.VideoUrl
+						if ((app.globalData.bgAudioManager.src === this.videoUrl) && app.globalData.bgAudioManager
+							.paused === false) {
+							this.isPlay = true
+						}
+					}
+				}
+			},
+			/* 无权限申请开通权限 */
+			applyAuth() {
+				this.hasPermission === 4 ?
+					uni.navigateTo({
+						url: "/pages/applyTrial/applyTrial"
+					}) :
+					uni.showModal({
+						title: '',
+						content: '您已经提交过申请了,请耐心等待',
+						showCancel: false,
+						confirmColor: '#365595',
+						success: function(res) {
+							uni.navigateBack({
+								fail() {
+									uni.switchTab({
+										url: '/pages/index/index'
+									})
+								}
+							})
+						}
+					});
+			},
+			// 返回首頁
+			backIndex() {
+				uni.switchTab({
+					url: '/pages/index/index'
+				})
+			},
+		},
+		components: {
+			statement,
+			researchSummary,
+			reportChoiceness
+		},
+		onLoad(option) {
+			this.isType = option.type
+			this.id = Number(option.id) || ''
+			uni.setNavigationBarTitle({
+				title: this.isType == 1 ? '报告精选' : this.isType == 2 ? '本周研究汇总' : '上周纪要汇总'
+			})
+
+			app.globalData.bgAudioManager.onEnded(res => {
+				this.isPlay = false
+			})
+			app.globalData.bgAudioManager.onPause(res => {
+				this.isPlay = false
+			})
+			app.globalData.bgAudioManager.onPlay(res => {
+				
+				this.isPlay = true
+			})
+			app.globalData.bgAudioManager.onStop(res=>{
+				this.isPlay = false
+			})
+		},
+		onShow() {
+			this.$store.dispatch('checkHandle').then(res => {
+				app.globalData.isAuth = res.IsAuth;
+				app.globalData.isBind = res.IsBind;
+				if ((!res.IsAuth) && (!res.IsBind)) { //已授权已绑定            
+					this.getDetilaiList()
+
+				} else if (res.IsAuth) { //未授权
+					uni.navigateTo({
+						url: '/pages/authGuide/authGuide'
+					})
+				} else if (res.IsBind && !res.IsAuth) { //已授权未绑定
+					uni.navigateTo({
+						url: '/pages/login/login'
+					})
+				}
+			})
+
+		},
+		onUnload() {},
+		/**
+		 * 用户点击分享
+		 */
+		onShareAppMessage: function(res) {
+			return {
+				title: this.detali.Title,
+				path: '/reportPages/reportSecretDetail/reportSecretDetail?type=' + this.isType + '&id=' + this.id,
+				success: (res) => {},
+				fail: (err) => {}
+			}
+		},
+	}
 </script>
 
 <style lang="scss" scoped>
-.content-secret {
-    @import '../jurisdiction.scss';
-    padding:10rpx 34rpx  34rpx;
-    .container-top {
-          font-size: 28rpx;
-        .content-title {
-            color: #4A4A4A;
-            font-size: 34rpx;
-            font-weight: bold;
-        }
-        .content-time {
-            margin:24rpx 0  34rpx 0;
-            display: flex;
-            justify-content: space-between;
-            color: #333333;
-        }
-        .content-statement {
-            display: flex;
-            color: #707070;      
-            .statement {
-                margin-left: 10rpx;
-                color: #3385FF;
-            }
-        }
-        .content-audio {
-            margin: 60rpx 0;
-            width: 682rpx;
-            align-items: center;
-            background: #FFFFFF;
-            box-shadow: 0rpx 0rpx 12rpx rgba(33, 74, 135, 0.16);
-            opacity: 1;
-            border-radius: 16rpx;
-            display: flex;
-            padding: 24rpx 21rpx 18rpx;
-           .audio-img{
-               width: 154rpx;
-               height: 154rpx;
-               margin-right: 20rpx;
-               image {
-                   width: 154rpx;
-                    height: 154rpx;
-                }
-           }   
-           .audio-title {
-                font-size: 28rpx;
-                color:#333;
-                :first-child{
-                    width: 450rpx;
-                    overflow: hidden;
-                    text-overflow:ellipsis;
-                    white-space: nowrap;
-                    margin-bottom:30rpx ;
-                    font-size: 32rpx
-                }
-            }
-        }
-        .content-abstract {
-            margin-bottom: 30rpx;
-            font-size: 32rpx;
-            color: #4A4A4A;
-            :first-child{
-                float:left;
-                font-weight: 700;
-            }
-        }
-        .content-focuson {
-            font-size: 32rpx !important;
-            margin-bottom: 30rpx;
-            color: #4A4A4A;
-            .focuson {
-                 font-weight: 700;
-            }
-        }
-    }
-}
+	.content-secret {
+		@import '../jurisdiction.scss';
+		padding: 10rpx 34rpx 34rpx;
+
+		.container-top {
+			font-size: 28rpx;
+
+			.content-title {
+				color: #4A4A4A;
+				font-size: 34rpx;
+				font-weight: bold;
+			}
+
+			.content-time {
+				margin: 24rpx 0 34rpx 0;
+				display: flex;
+				justify-content: space-between;
+				color: #333333;
+			}
+
+			.content-statement {
+				display: flex;
+				color: #707070;
+
+				.statement {
+					margin-left: 10rpx;
+					color: #3385FF;
+				}
+			}
+
+			.content-audio {
+				margin: 60rpx 0;
+				width: 682rpx;
+				align-items: center;
+				background: #FFFFFF;
+				box-shadow: 0rpx 0rpx 12rpx rgba(33, 74, 135, 0.16);
+				opacity: 1;
+				border-radius: 16rpx;
+				display: flex;
+				padding: 24rpx 21rpx 18rpx;
+
+				.audio-img {
+					width: 154rpx;
+					height: 154rpx;
+					margin-right: 20rpx;
+
+					image {
+						width: 154rpx;
+						height: 154rpx;
+					}
+				}
+
+				.audio-title {
+					font-size: 28rpx;
+					color: #333;
+
+					:first-child {
+						width: 450rpx;
+						overflow: hidden;
+						text-overflow: ellipsis;
+						white-space: nowrap;
+						margin-bottom: 30rpx;
+						font-size: 32rpx
+					}
+				}
+			}
+
+			.content-abstract {
+				margin-bottom: 30rpx;
+				font-size: 32rpx;
+				color: #4A4A4A;
+
+				:first-child {
+					float: left;
+					font-weight: 700;
+				}
+			}
+
+			.content-focuson {
+				font-size: 32rpx !important;
+				margin-bottom: 30rpx;
+				color: #4A4A4A;
+
+				.focuson {
+					font-weight: 700;
+				}
+			}
+		}
+	}
 </style>

+ 292 - 265
reportPages/roadEssence/roadEssence.vue

@@ -1,273 +1,300 @@
 <template>
-    <view class="container content-road forbid-copy">
-        <block v-if='haveAuth===1'>
-        <view class="container-top">
-            <view class="content-title">
-                {{detali.Title}}
-            </view>
-            <view class="content-time">
-                <text>{{detali.Department}}</text>
-                <text>{{detali.PublishDate}}</text>
-            </view>
-            <view class="content-statement">
-                <text>注:请务必阅读</text>
-                <text class="statement" @click="isShowStatement=true">免责声明 </text>
-            </view>
-            <view class="content-audio">
-                <view class="audio-img">
-                    <image v-if="isPlay" @click="audiouspend" :src="require('../image/suspend_icon.png')"></image>
-                    <image v-else @click="audioPlay" :src="require('../image/play_icon.png')" mode=""></image>
-                </view>
-                <view class="audio-title">
-                    <text>{{detali.VideoName}}</text>
-                    <text>{{detali.VideoPlaySeconds}}</text>
-                </view>
-            </view>
-            <view  class="content-abstract">
-                <text>摘要:</text>
-                <text>
-                    {{detali.Abstract}}
-                </text>
-            </view>
-           <view class="content-boby">
-                <!-- <rich-text :nodes="detali.Body"></rich-text> -->
-                  <mp-html :content="detali.Body"/>
-           </view>
-        </view>
-        <view class="content-link" v-if="detali.ReportLink" @click="goDetali">
-            查看深度报告
-        </view>
-        <statement :show="isShowStatement"/>
-        </block>
-        <view class="noauth-cont" v-else-if="haveAuth===3||haveAuth===4">
-        	<image src="https://hzstatic.hzinsights.com/cygx/czbk/noauth.png" class="noauth-ico"></image>
-        	<block>
-        		<view class="tip">您暂无权限查看内容,若想查看可以申请开通哦</view>
-        		<view class="btn-cont"  @click="applyAuth">
-                立即申请
-        		</view>	
-        	</block>    	
-        	<view class="btn-cont back-btn" @click="backIndex">返回首页</view>
-        </view>
-    </view>
-   
+	<view class="container content-road forbid-copy">
+		<block v-if='haveAuth===1'>
+			<view class="container-top">
+				<view class="content-title">
+					{{detali.Title}}
+				</view>
+				<view class="content-time">
+					<text>{{detali.Department}}</text>
+					<text>{{detali.PublishDate}}</text>
+				</view>
+				<view class="content-statement">
+					<text>注:请务必阅读</text>
+					<text class="statement" @click="isShowStatement=true">免责声明 </text>
+				</view>
+				<view class="content-audio">
+					<view class="audio-img">
+						<image v-if="isPlay" @click="audiouspend" :src="require('../image/suspend_icon.png')"></image>
+						<image v-else @click="audioPlay" :src="require('../image/play_icon.png')" mode=""></image>
+					</view>
+					<view class="audio-title">
+						<text>{{detali.VideoName}}</text>
+						<text>{{detali.VideoPlaySeconds}}</text>
+					</view>
+				</view>
+				<view class="content-abstract">
+					<text>摘要:</text>
+					<text>
+						{{detali.Abstract}}
+					</text>
+				</view>
+				<view class="content-boby">
+					<!-- <rich-text :nodes="detali.Body"></rich-text> -->
+					<mp-html :content="detali.Body" />
+				</view>
+			</view>
+			<view class="content-link" v-if="detali.ReportLink" @click="goDetali">
+				查看深度报告
+			</view>
+			<statement :show="isShowStatement" />
+		</block>
+		<view class="noauth-cont" v-else-if="haveAuth===3||haveAuth===4">
+			<image src="https://hzstatic.hzinsights.com/cygx/czbk/noauth.png" class="noauth-ico"></image>
+			<block>
+				<view class="tip">您暂无权限查看内容,若想查看可以申请开通哦</view>
+				<view class="btn-cont" @click="applyAuth">
+					立即申请
+				</view>
+			</block>
+			<view class="btn-cont back-btn" @click="backIndex">返回首页</view>
+		</view>
+	</view>
+
 </template>
 
 <script>
-    import { Reports,User} from '@/config/api.js'
-    import statement from '@/components/statement.vue'
-    let app = getApp()
-    export default {
-        data() {
-            return {
-                 id: '',//
-                 detali:'',//详情
-                 audioContext:'', //音频
-                 isPlay:false, //mp3 播放的图片
-                 isShowStatement:false ,//免责声明隐现
-                 haveAuth:'',//权限判断
-                 videoUrl:''
-            }
-        },
-        methods: {
-            async getDetail() {
-                const res = await Reports.roadshowEssence({
-                    ArticleId: this.id
-                })
-                if(res.Ret===200){
-                    this.detali=res.Data.Detail
-                    this.haveAuth=res.Data.HasPermission
-                    this.videoUrl= res.Data.Detail.VideoUrl
-                    if( app.globalData.bgAudioManager.src === this.videoUrl) {
-                        this.isPlay = true
-                    }
-                }
-            },
-            goDetali(){
-                uni.navigateTo({
-                    url:'/pages/reportDetail/reportDetail?id='+this.detali.ReportLink
-                })
-            },
-            /* 无权限申请开通权限 */
-            applyAuth() {
-                this.haveAuth === 4
-            	?  uni.navigateTo({
-            			url:"/pages/applyTrial/applyTrial"
-            		})
-            	: 	uni.showModal({
-            			title: '',
-            			content: '您已经提交过申请了,请耐心等待',
-            			showCancel:false,
-            			confirmColor:'#365595',
-            			success: function (res) {
-                         uni.navigateBack({
-                         	fail(){
-                         		uni.switchTab({
-                         			url:'/pages/index/index'
-                         		})
-                         	}
-                         })
-            			}
-            		});
-            },
-            // 返回首頁
-            backIndex() {
-            	uni.switchTab({
-            		url:'/pages/index/index'
-            	})
-            },
-            audioPlay(){
-                this.isPlay=true
-                app.globalData.bgAudioManager.title = this.detali.VideoName
-                app.globalData.bgAudioManager.src = this.videoUrl
-            },
-            audiouspend(){
-                this.isPlay=false
-                 app.globalData.bgAudioManager.pause()
-            },
-            
-        },
-        components:{
-            statement
-        },
-        onLoad(option) {
-            this.id = Number(option.id) ||''
-            app.globalData.bgAudioManager.onEnded(res=>{
-                this.isPlay=true
-            }
-            },
-        onShow() {
-            this.$store.dispatch('checkHandle').then(res => {
-                	app.globalData.isAuth = res.IsAuth;
-                	app.globalData.isBind = res.IsBind;
-                	if((!res.IsAuth) && (!res.IsBind)) { //已授权已绑定            
-                		
-                		this.getDetail()
-                        this.audioContext = uni.createInnerAudioContext()
-                        //音频播放错误事件
-                         this.audioContext.onError((res) => {
-                          console.log(res.errMsg);
-                          console.log(res.errCode);
-                        });
-                         //音频自然播放结束事件
-                        this.audioContext.onEnded(res=>{
-                            this.isPlay=true
-                        })
-                	}else if(res.IsAuth) { //未授权
-                		uni.navigateTo({
-                			url:'/pages/authGuide/authGuide'
-                		})
-                	}else if(res.IsBind && !res.IsAuth){ //已授权未绑定
-                		uni.navigateTo({
-                			url:'/pages/login/login'
-                		})
-                	}
-                })		        
-            
-        },
-        /**
-        * 用户点击分享
-        */
-        onShareAppMessage: function (res) {
-        	return {
-        		title: this.detali.Title,
-        		url:'reportPages/roadEssence/roadEssence?id='+this.id,
-        		success: (res)=> {
-        		},
-        		fail: (err)=> {
-        		}
-        	}
-        },
-    }
+	import {
+		Reports,
+		User
+	} from '@/config/api.js'
+	import statement from '@/components/statement.vue'
+	let app = getApp()
+	export default {
+		data() {
+			return {
+				id: '', //
+				detali: '', //详情
+				audioContext: '', //音频
+				isPlay: false, //mp3 播放的图片
+				isShowStatement: false, //免责声明隐现
+				haveAuth: '', //权限判断
+				videoUrl: ''
+			}
+		},
+		methods: {
+			async getDetail() {
+				const res = await Reports.roadshowEssence({
+					ArticleId: this.id
+				})
+				if (res.Ret === 200) {
+					this.detali = res.Data.Detail
+					this.haveAuth = res.Data.HasPermission
+					this.videoUrl = res.Data.Detail.VideoUrl
+					if ((app.globalData.bgAudioManager.src === this.videoUrl) && app.globalData.bgAudioManager
+						.paused === false) {
+						this.isPlay = true
+					}
+				}
+			},
+			goDetali() {
+				uni.navigateTo({
+					url: '/pages/reportDetail/reportDetail?id=' + this.detali.ReportLink
+				})
+			},
+			/* 无权限申请开通权限 */
+			applyAuth() {
+				this.haveAuth === 4 ?
+					uni.navigateTo({
+						url: "/pages/applyTrial/applyTrial"
+					}) :
+					uni.showModal({
+						title: '',
+						content: '您已经提交过申请了,请耐心等待',
+						showCancel: false,
+						confirmColor: '#365595',
+						success: function(res) {
+							uni.navigateBack({
+								fail() {
+									uni.switchTab({
+										url: '/pages/index/index'
+									})
+								}
+							})
+						}
+					});
+			},
+			// 返回首頁
+			backIndex() {
+				uni.switchTab({
+					url: '/pages/index/index'
+				})
+			},
+			audioPlay() {
+				this.isPlay = true
+				app.globalData.bgAudioManager.title = this.detali.VideoName
+				app.globalData.bgAudioManager.src = this.videoUrl
+			},
+			audiouspend() {
+				this.isPlay = false
+				app.globalData.bgAudioManager.pause()
+			},
+
+		},
+		components: {
+			statement
+		},
+		onLoad(option) {
+			this.id = Number(option.id) || ''
+			app.globalData.bgAudioManager.onEnded(res => {
+				this.isPlay = false
+			})
+			app.globalData.bgAudioManager.onPause(res => {
+				this.isPlay = false
+			})
+			app.globalData.bgAudioManager.onPlay(res => {
+				this.isPlay = true
+			})
+			app.globalData.bgAudioManager.onStop(res=>{
+				this.isPlay = false
+			})
+		},
+		onShow() {
+			this.$store.dispatch('checkHandle').then(res => {
+				app.globalData.isAuth = res.IsAuth;
+				app.globalData.isBind = res.IsBind;
+				if ((!res.IsAuth) && (!res.IsBind)) { //已授权已绑定            
+
+					this.getDetail()
+					this.audioContext = uni.createInnerAudioContext()
+					//音频播放错误事件
+					this.audioContext.onError((res) => {
+						console.log(res.errMsg);
+						console.log(res.errCode);
+					});
+					//音频自然播放结束事件
+					this.audioContext.onEnded(res => {
+						this.isPlay = true
+					})
+				} else if (res.IsAuth) { //未授权
+					uni.navigateTo({
+						url: '/pages/authGuide/authGuide'
+					})
+				} else if (res.IsBind && !res.IsAuth) { //已授权未绑定
+					uni.navigateTo({
+						url: '/pages/login/login'
+					})
+				}
+			})
+
+		},
+		/**
+		 * 用户点击分享
+		 */
+		onShareAppMessage: function(res) {
+			return {
+				title: this.detali.Title,
+				url: 'reportPages/roadEssence/roadEssence?id=' + this.id,
+				success: (res) => {},
+				fail: (err) => {}
+			}
+		},
+	}
 </script>
 
-<style lang="scss" scoped> 
-.content-road {
-    padding:10rpx 34rpx  34rpx;
-    .container-top {
-          font-size: 28rpx;
-        .content-title {
-            color: #4A4A4A;
-            font-size: 34rpx;
-            font-weight: bold;
-        }
-        .content-time {
-            margin:24rpx 0  34rpx 0;
-            display: flex;
-            justify-content: space-between;
-            color: #333333;
-        }
-        .content-statement {
-            display: flex;
-            color: #707070;      
-            .statement {
-                margin-left: 10rpx;
-                color: #3385FF;
-            }
-        }
-        .content-audio {
-            margin: 60rpx 0;
-            width: 682rpx;
-            align-items: center;
-            background: #FFFFFF;
-            box-shadow: 0rpx 0rpx 12rpx rgba(33, 74, 135, 0.16);
-            opacity: 1;
-            border-radius: 16rpx;
-            display: flex;
-            padding: 24rpx 21rpx 18rpx;
-           .audio-img{
-               width: 154rpx;
-               height: 154rpx;
-               margin-right: 20rpx;
-               image {
-                   width: 154rpx;
-                    height: 154rpx;
-                }
-           }   
-           .audio-title {
-                font-size: 28rpx;
-                color:#333;
-                :first-child{
-                    width: 450rpx;
-                    overflow: hidden;
-                    text-overflow:ellipsis;
-                    white-space: nowrap;
-                    margin-bottom:30rpx ;
-                    font-size: 32rpx
-                }
-            }
-        }
-        .content-abstract {
-            margin-bottom: 30rpx;
-            font-size: 32rpx;
-            color: #4A4A4A;
-            :first-child{
-                float:left;
-                font-weight: 700;
-            }
-        }
-        .content-boby {
-            font-size: 32rpx;
-            image,img {
-                width: 100%;
-            }
-            
-        }
-    }
-    .content-link {
-        width: 368rpx;
-        height: 80rpx;
-        border: 2rpx solid #2C83FF;
-        opacity: 1;
-        border-radius: 4rpx;
-        line-height:76rpx;
-        text-align: center;
-        color: #2C83FF;
-        font-size: 32rpx;
-        box-sizing: border-box;
-        margin: 100rpx auto;
-    }
-@import '../jurisdiction.scss';
-}
+<style lang="scss" scoped>
+	.content-road {
+		padding: 10rpx 34rpx 34rpx;
+
+		.container-top {
+			font-size: 28rpx;
+
+			.content-title {
+				color: #4A4A4A;
+				font-size: 34rpx;
+				font-weight: bold;
+			}
+
+			.content-time {
+				margin: 24rpx 0 34rpx 0;
+				display: flex;
+				justify-content: space-between;
+				color: #333333;
+			}
+
+			.content-statement {
+				display: flex;
+				color: #707070;
+
+				.statement {
+					margin-left: 10rpx;
+					color: #3385FF;
+				}
+			}
+
+			.content-audio {
+				margin: 60rpx 0;
+				width: 682rpx;
+				align-items: center;
+				background: #FFFFFF;
+				box-shadow: 0rpx 0rpx 12rpx rgba(33, 74, 135, 0.16);
+				opacity: 1;
+				border-radius: 16rpx;
+				display: flex;
+				padding: 24rpx 21rpx 18rpx;
+
+				.audio-img {
+					width: 154rpx;
+					height: 154rpx;
+					margin-right: 20rpx;
+
+					image {
+						width: 154rpx;
+						height: 154rpx;
+					}
+				}
+
+				.audio-title {
+					font-size: 28rpx;
+					color: #333;
+
+					:first-child {
+						width: 450rpx;
+						overflow: hidden;
+						text-overflow: ellipsis;
+						white-space: nowrap;
+						margin-bottom: 30rpx;
+						font-size: 32rpx
+					}
+				}
+			}
+
+			.content-abstract {
+				margin-bottom: 30rpx;
+				font-size: 32rpx;
+				color: #4A4A4A;
+
+				:first-child {
+					float: left;
+					font-weight: 700;
+				}
+			}
+
+			.content-boby {
+				font-size: 32rpx;
+
+				image,
+				img {
+					width: 100%;
+				}
+
+			}
+		}
+
+		.content-link {
+			width: 368rpx;
+			height: 80rpx;
+			border: 2rpx solid #2C83FF;
+			opacity: 1;
+			border-radius: 4rpx;
+			line-height: 76rpx;
+			text-align: center;
+			color: #2C83FF;
+			font-size: 32rpx;
+			box-sizing: border-box;
+			margin: 100rpx auto;
+		}
 
+		@import '../jurisdiction.scss';
+	}
 </style>