|
@@ -34,7 +34,7 @@
|
|
|
class="scroll-tab-item"
|
|
|
:class="{ active: tabAct_idTwo === item.CategoryId }"
|
|
|
@click.stop="toggleTabTwo(item,index)">
|
|
|
- {{item.SubCategoryName}}
|
|
|
+ {{item.MatchTypeName}}
|
|
|
<text class="reg-text" v-if="item.IsRed"></text>
|
|
|
</view>
|
|
|
</block>
|
|
@@ -44,7 +44,7 @@
|
|
|
|
|
|
</view>
|
|
|
<!-- 子组件 -->
|
|
|
- <strategy :strategyIndexTwo="strategyIndexTwo" :pageNumFather='pageNumFather' :tabAct_idTwo="tabAct_idTwo" :isNum="isNum" :isSwitchover="isSwitchover" @hideIsred="hideIsred"/>
|
|
|
+ <strategy :strategyIndexTwo="strategyIndexTwo" :pageNumFather='pageNumFather' :matchTypeName="matchTypeName" :tabAct_idTwo="tabAct_idTwo" :isNum="isNum" :isSwitchover="isSwitchover" @hideIsred="hideIsred"/>
|
|
|
</view>
|
|
|
<!-- </view> -->
|
|
|
<view class="industrial_eport_one" v-else>
|
|
@@ -71,15 +71,19 @@
|
|
|
</view>
|
|
|
<!-- 产业报告 -->
|
|
|
<view class="industry">
|
|
|
- <view style="height: 12rpx;" v-if="!tradeList"></view>
|
|
|
- <view class="industry-top">
|
|
|
+ <!-- <view style="" class="industry-box-sticky"></view> -->
|
|
|
+ <view style="height: 12rpx;" v-if="!tradeList"></view>
|
|
|
+ <view class="industry-top industry-sticky" >
|
|
|
<view>
|
|
|
<image src="@/static/img/property_ico.png" style="height: 50rpx;"></image>
|
|
|
<text class="text-sub">细分产业报告</text>
|
|
|
</view>
|
|
|
<text class="equilateral-triangle" v-if="isPitchOnShow"></text>
|
|
|
<view class="pop-box">
|
|
|
- <image src="@/static/img/property_inco.png" style="height: 50rpx;" @click="isPitchOnShowBtn"></image>
|
|
|
+ <!-- <image src="@/static/img/property_inco.png" style="height: 50rpx;" @click="isPitchOnShowBtn"></image> -->
|
|
|
+ <text @click="isPitchOnShowBtn" class="pop-text">
|
|
|
+ {{pitchOnName}}
|
|
|
+ </text>
|
|
|
<view class="pop-up" v-if="isPitchOnShow">
|
|
|
<view v-for="(item,index) in pitchOn" :key="item.id" @click="pitchClick(item,index)" :class="pitchOnId==item.id?'pitch-on':''">{{item.name}}</view>
|
|
|
|
|
@@ -92,19 +96,23 @@
|
|
|
<view class="forindustry" v-for="item in industryList" :key="item.IndustrialManagementId" >
|
|
|
<!-- 火锅底料这个位置 -->
|
|
|
<view class="industry-box industry-content" >
|
|
|
- <view class="box-left">
|
|
|
+ <view class="industry-box-left">
|
|
|
<image src="@/static/img/top_ico.png" v-if="item.IsTop" @click="isOverhead(item.IndustrialManagementId)"></image>
|
|
|
<image src="@/static/img/top_no_ico.png" v-else @click="isOverhead(item.IndustrialManagementId)"></image>
|
|
|
- {{item.IndustryName}}
|
|
|
- <text v-if="item.IsRed"></text>
|
|
|
</view>
|
|
|
- <view class="box-right" @click="goIndustryReport(item.IndustrialManagementId)">
|
|
|
- <text>{{item.UpdateTime}}更新</text>
|
|
|
- <u-icon name="arrow-right" color="#BDBDBD" size="34"></u-icon>
|
|
|
+ <view class="industry-box-right" @click="goIndustryReport(item.IndustrialManagementId)">
|
|
|
+ <view class="ndustry-box-read">
|
|
|
+ <text>{{item.IndustryName}}</text>
|
|
|
+ <text v-if="item.IsRed" class="read"></text>
|
|
|
+ </view>
|
|
|
+ <view class="ndustry-box-arrow">
|
|
|
+ <text class="ndustry-box-text">{{item.UpdateTime}}更新</text>
|
|
|
+ <u-icon name="arrow-right" color="#BDBDBD" size="34"></u-icon>
|
|
|
+ </view>
|
|
|
</view>
|
|
|
</view>
|
|
|
- <view class="content-box">
|
|
|
- <view class="img-box">
|
|
|
+ <view class="content-box" v-if="item.IndustrialSubjectList.length>6">
|
|
|
+ <!-- <view class="img-box">
|
|
|
<image src="@/static/img/fenxi_ico.png"></image>
|
|
|
<text> 分析师: {{item.Analyst}}</text>
|
|
|
</view>
|
|
@@ -112,16 +120,20 @@
|
|
|
<image src="@/static/img/fugai_ico.png"></image>
|
|
|
<text>覆盖标的</text>
|
|
|
</view>
|
|
|
-
|
|
|
+ -->
|
|
|
<u-read-more :toggle="true" :show-height="item.IndustrialSubjectList.length>6 ? 140 :150" :shadow-style="shadowStyle" close-text="展开" color="#D1D1D1">
|
|
|
<view class="read-more">
|
|
|
- <view v-for="val in item.IndustrialSubjectList" :key="val.IndustrialSubjectId" class="text-box">{{val.SubjectName}}</view>
|
|
|
+ <view v-for="val in item.IndustrialSubjectList" :key="val.IndustrialSubjectId" @click="goIndustryReport(item.IndustrialManagementId)" class="text-box">{{val.SubjectName}}</view>
|
|
|
</view>
|
|
|
</u-read-more>
|
|
|
-
|
|
|
-
|
|
|
</view>
|
|
|
+ <view class="content-box" v-else @click="goIndustryReport(item.IndustrialManagementId)" >
|
|
|
+ <view class="read-more">
|
|
|
+ <view v-for="val in item.IndustrialSubjectList" :key="val.IndustrialSubjectId" class="text-box">{{val.SubjectName}}</view>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
</view>
|
|
|
+ <u-loadmore :status="status" icon-type="flower" :load-text="loadText" margin-top="20" v-if="totalPage>1"/>
|
|
|
</view>
|
|
|
<!-- <text class="text-bottom-none">没有更多了</text> -->
|
|
|
</view>
|
|
@@ -138,14 +150,15 @@
|
|
|
components:{strategy},
|
|
|
data(){
|
|
|
return {
|
|
|
- tabAct_id:null,
|
|
|
+ tabAct_id:null,
|
|
|
tabAct_idTwo:null,
|
|
|
tabBars: [],
|
|
|
pageNumFather:null,
|
|
|
shadowStyle: { backgroundImage: "none"},
|
|
|
tabBarsTow:[],
|
|
|
- pitchOn:[{ name:'最近更新', id:'NewTime' }, { name:'弘则推荐', id:'Recommend',}],
|
|
|
+ pitchOn:[{ name:'按最近更新排序', id:'NewTime' }, { name:'按推荐关注排序', id:'Recommend',}],
|
|
|
pitchOnId:'NewTime',
|
|
|
+ pitchOnName:'按最近更新排序',
|
|
|
isPitchOnShow:false,
|
|
|
isNum:1,
|
|
|
strategyIndex:null,
|
|
@@ -153,27 +166,42 @@
|
|
|
isSwitchover:1,
|
|
|
tradeList:null,
|
|
|
OrderColumn:'',
|
|
|
- industryList:[]
|
|
|
+ industryList:[],
|
|
|
+ loadText: {
|
|
|
+ loadmore: '上拉加载更多',
|
|
|
+ loading: '加载中',
|
|
|
+ nomore: '已经到底了'
|
|
|
+ },
|
|
|
+ refresh: false,//正在下拉
|
|
|
+ page_no:1,
|
|
|
+ pageSize:10,
|
|
|
+ status:'loadmore',
|
|
|
+ haveData:true,
|
|
|
+ totalPage:'',
|
|
|
+ matchTypeName:'',
|
|
|
}
|
|
|
},
|
|
|
onLoad() {
|
|
|
this.getClassify()
|
|
|
},
|
|
|
+ computed:{
|
|
|
+ },
|
|
|
watch:{
|
|
|
//监听tabs的变化
|
|
|
tabAct_id: {
|
|
|
handler() {
|
|
|
- // this.searchHandle();
|
|
|
if(this.strategyIndex==4) {
|
|
|
this.getstrategyAll()
|
|
|
}
|
|
|
if(this.tabAct_id) {
|
|
|
this.OrderColumn='NewTime'
|
|
|
this.pitchOnId='NewTime'
|
|
|
+ this.pitchOnName='按最近更新排序'
|
|
|
+ this.page_no = 1;
|
|
|
+ this.refresh = true;
|
|
|
this.getIndustryList()
|
|
|
this.getTradeList()
|
|
|
- }
|
|
|
-
|
|
|
+ }
|
|
|
},
|
|
|
immediate:true
|
|
|
}
|
|
@@ -183,8 +211,7 @@
|
|
|
getClassify(){
|
|
|
Reports.getClassify().then(res=>{
|
|
|
this.tabBars=res.Data.List
|
|
|
- this.tabAct_id=res.Data.List[0].ChartPermissionId
|
|
|
-
|
|
|
+ this.tabAct_id=res.Data.List[0].ChartPermissionId
|
|
|
})
|
|
|
},
|
|
|
//获取二级事件
|
|
@@ -192,6 +219,7 @@
|
|
|
Reports.getstrategyAll().then(res=>{
|
|
|
this.tabBarsTow=res.Data.List
|
|
|
this.tabAct_idTwo=res.Data.List[0].CategoryId
|
|
|
+ this.matchTypeName=res.Data.List[0].MatchTypeName
|
|
|
})
|
|
|
},
|
|
|
//tabs切换事件
|
|
@@ -209,7 +237,8 @@
|
|
|
}
|
|
|
},
|
|
|
//tabs切换二级事件
|
|
|
- toggleTabTwo (item,index) {
|
|
|
+ toggleTabTwo (item,index) {
|
|
|
+ this.matchTypeName=item.MatchTypeName
|
|
|
this.strategyIndexTwo=index
|
|
|
if(this.tabAct_idTwo !== item.CategoryId) {
|
|
|
this.tabAct_idTwo = item.CategoryId;
|
|
@@ -223,14 +252,20 @@
|
|
|
//产业报告筛选条件
|
|
|
isPitchOnShowBtn(){
|
|
|
this.isPitchOnShow=!this.isPitchOnShow
|
|
|
-
|
|
|
},
|
|
|
//点击产业报告的筛选条件
|
|
|
pitchClick(item) {
|
|
|
+ this.pitchOnName=item.name
|
|
|
this.OrderColumn=item.id
|
|
|
if(this.pitchOnId !== item.id) {
|
|
|
this.pitchOnId = item.id;}
|
|
|
- this.getIndustryList()
|
|
|
+ this.page_no = 1;
|
|
|
+ this.refresh = true;
|
|
|
+ this.getIndustryList()
|
|
|
+ uni.pageScrollTo({
|
|
|
+ scrollTop: 0,
|
|
|
+ duration: 300
|
|
|
+ });
|
|
|
this.isPitchOnShow=false
|
|
|
},
|
|
|
//获取报告所有品种接口
|
|
@@ -243,21 +278,31 @@
|
|
|
this.tradeList=res.Data.List[0]
|
|
|
}else{
|
|
|
this.tradeList=null
|
|
|
- }
|
|
|
-
|
|
|
+ }
|
|
|
}
|
|
|
-
|
|
|
})
|
|
|
},
|
|
|
//获取产业报告所有品种接口
|
|
|
getIndustryList(){
|
|
|
Reports.getIndustryList({
|
|
|
ChartPermissionId:this.tabAct_id,
|
|
|
- OrderColumn: this.OrderColumn
|
|
|
+ OrderColumn: this.OrderColumn,
|
|
|
+ PageSize: this.pageSize,
|
|
|
+ CurrentIndex: this.page_no
|
|
|
}).then(res=>{
|
|
|
-
|
|
|
- this.industryList=res.Data.List
|
|
|
-
|
|
|
+ // this.industryList=res.Data.List
|
|
|
+ this.status = this.page_no < res.Data.Paging.Pages ? 'loadmore' : 'nomore';
|
|
|
+ this.totalPage = res.Data.Paging.Pages;//总页数
|
|
|
+ if(this.page_no === 1) {
|
|
|
+ this.industryList = res.Data.List || [];
|
|
|
+ this.haveData = this.industryList.length ? true : false
|
|
|
+ if(this.refresh) {
|
|
|
+ uni.stopPullDownRefresh();
|
|
|
+ this.refresh = false;
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ this.industryList = this.industryList.concat(res.Data.List)
|
|
|
+ }
|
|
|
|
|
|
})
|
|
|
},
|
|
@@ -278,9 +323,11 @@
|
|
|
isOverhead(id){
|
|
|
Reports.postToptt({
|
|
|
IndustrialManagementId:id
|
|
|
- }).then(res=>{
|
|
|
-
|
|
|
+ }).then(res=>{
|
|
|
if(res.Ret===200){
|
|
|
+ this.page_no = 1;
|
|
|
+ this.refresh = true;
|
|
|
+ this.industryList=[]
|
|
|
this.getIndustryList()
|
|
|
uni.showToast({
|
|
|
title: res.Msg,
|
|
@@ -291,19 +338,25 @@
|
|
|
},
|
|
|
hideIsred(is){
|
|
|
this.tabBarsTow[this.strategyIndexTwo].IsRed=is
|
|
|
- console.log(this.tabBarsTow,this.strategyIndexTwo)
|
|
|
}
|
|
|
},
|
|
|
/* 触底 */
|
|
|
onReachBottom: Throttle(function() {
|
|
|
this.isNum++
|
|
|
+ if(this.status === 'nomore') return ;
|
|
|
+ this.status = 'loading';
|
|
|
+ this.page_no++;
|
|
|
+ this.getIndustryList()
|
|
|
}),
|
|
|
/* 下拉刷新 */
|
|
|
onPullDownRefresh: Throttle(function() {
|
|
|
if(this.strategyIndex==4) {
|
|
|
this.pageNumFather=1
|
|
|
}else {
|
|
|
+ this.industryList=[]
|
|
|
this.pageNumFather=null
|
|
|
+ this.page_no = 1;
|
|
|
+ this.refresh = true;
|
|
|
this.getIndustryList()
|
|
|
this.getTradeList()
|
|
|
}
|
|
@@ -314,7 +367,8 @@
|
|
|
this.getTradeList()
|
|
|
}
|
|
|
|
|
|
- }
|
|
|
+ },
|
|
|
+
|
|
|
}
|
|
|
</script>
|
|
|
|
|
@@ -322,8 +376,6 @@
|
|
|
.reportForm-container {
|
|
|
background-color: #f6f6f6;
|
|
|
height: 100vh;
|
|
|
- // padding-bottom: 300rpx;
|
|
|
- // margin-top: ;
|
|
|
.top-box {
|
|
|
position: fixed;
|
|
|
height: 100rpx;
|
|
@@ -352,14 +404,11 @@
|
|
|
padding: 0 26rpx;
|
|
|
background-color: #fff;
|
|
|
font-size: 32rpx;
|
|
|
- // box-shadow: 0 3rpx 6rpx rgba(187,216,255,0.2);
|
|
|
-
|
|
|
.scroll-tab {
|
|
|
width: 100%;
|
|
|
white-space: nowrap;
|
|
|
}
|
|
|
.scroll-tab-item {
|
|
|
- // flex-grow: 1;
|
|
|
text-align: center;
|
|
|
display: inline-block;
|
|
|
padding: 0 8rpx 30rpx 8rpx;
|
|
@@ -391,7 +440,6 @@
|
|
|
.industrial_eport_one {
|
|
|
padding-top: 80rpx;
|
|
|
background-color: #f6f6f6;
|
|
|
- // height: 100vh;
|
|
|
padding-bottom: 10rpx;
|
|
|
}
|
|
|
.strategy {
|
|
@@ -446,6 +494,21 @@
|
|
|
}
|
|
|
.industry {
|
|
|
margin-top: 20rpx;
|
|
|
+ // .industry-box-sticky{
|
|
|
+ // position: sticky;
|
|
|
+ // border: 2rpx solid #ccc;
|
|
|
+ // top:98rpx;
|
|
|
+ // z-index:999;
|
|
|
+ // width: 100%;
|
|
|
+ // height: 12rpx;
|
|
|
+ // // background-color: #fff;;
|
|
|
+ // }
|
|
|
+ .industry-sticky{
|
|
|
+ // border-bottom: 2rpx solid #f6f6f6;
|
|
|
+ position: sticky;
|
|
|
+ top:98rpx;
|
|
|
+ z-index:99;
|
|
|
+ }
|
|
|
.industry-top {
|
|
|
display: flex;
|
|
|
justify-content: space-between;
|
|
@@ -457,11 +520,10 @@
|
|
|
font-weight: 700;
|
|
|
font-size: 32rpx;
|
|
|
line-height:90rpx ;
|
|
|
- // vertical-align:middle;
|
|
|
.equilateral-triangle {
|
|
|
position: relative;
|
|
|
bottom:-78rpx;
|
|
|
- right: -216rpx;
|
|
|
+ right:-300rpx;
|
|
|
padding: 0;
|
|
|
width: 0;
|
|
|
height: 0;
|
|
@@ -471,14 +533,20 @@
|
|
|
}
|
|
|
.pop-box {
|
|
|
position: relative;
|
|
|
+ width: 280rpx;
|
|
|
+ text-align: right;
|
|
|
.pop-up view:nth-child(2) {
|
|
|
border: none !important;
|
|
|
}
|
|
|
+ .pop-text {
|
|
|
+ font-size: 28rpx;
|
|
|
+ color: #2C83FF;
|
|
|
+ }
|
|
|
.pop-up {
|
|
|
position: absolute;
|
|
|
- left: -200rpx;
|
|
|
- bottom: -208rpx;
|
|
|
- width: 256rpx;
|
|
|
+ left: -30rpx;
|
|
|
+ bottom: -210rpx;
|
|
|
+ width: 317rpx;
|
|
|
text-align: center;
|
|
|
overflow: hidden;
|
|
|
font-size: 24rpx;
|
|
@@ -492,7 +560,7 @@
|
|
|
view {
|
|
|
padding: 0;
|
|
|
height: 105rpx;
|
|
|
- width: 190rpx;
|
|
|
+ width: 258rpx;
|
|
|
font-size: 28rpx;
|
|
|
margin-left: 30rpx;
|
|
|
line-height: 104rpx;
|
|
@@ -548,7 +616,7 @@
|
|
|
.box-right {
|
|
|
color: #999999;
|
|
|
font-size: 26rpx;
|
|
|
- width: 45%;
|
|
|
+ // width: 45%;
|
|
|
display: flex;
|
|
|
justify-content: flex-end;
|
|
|
// justify-content: space-between;
|
|
@@ -562,25 +630,51 @@
|
|
|
.industry-content {
|
|
|
padding-left: 40rpx;
|
|
|
vertical-align:middle;
|
|
|
+ display: flex;
|
|
|
margin-bottom: 3rpx;
|
|
|
image {
|
|
|
- // vertical-align:top;
|
|
|
- margin-right: 20rpx;
|
|
|
+ padding-right: 20rpx;
|
|
|
width: 24rpx;
|
|
|
height: 30rpx;
|
|
|
}
|
|
|
- .box-left {
|
|
|
- // width: 200rpx !important;
|
|
|
+ .industry-box-left {
|
|
|
+ width: 48rpx;
|
|
|
image {
|
|
|
vertical-align: middle;
|
|
|
- margin-top: -8rpx;
|
|
|
+ margin-top: -8rpx;
|
|
|
+ padding:5rpx 20rpx 5rpx 0;
|
|
|
}
|
|
|
}
|
|
|
+ .industry-box-right {
|
|
|
+ width: 100%;
|
|
|
+ display: flex;
|
|
|
+ justify-content: space-between;
|
|
|
+ .ndustry-box-read {
|
|
|
+ position: relative;
|
|
|
+ .read {
|
|
|
+ position: absolute;
|
|
|
+ top: 20rpx;
|
|
|
+ right: -20rpx;
|
|
|
+ width: 14rpx;
|
|
|
+ height: 14rpx;
|
|
|
+ background-color: #FF0000;
|
|
|
+ border-radius: 50%;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .ndustry-box-arrow {
|
|
|
+ display: flex;
|
|
|
+ .ndustry-box-text {
|
|
|
+ font-size: 26rpx;
|
|
|
+ color: #999999;
|
|
|
+ padding-right: 20rpx;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
}
|
|
|
.content-box {
|
|
|
background-color: #fff;
|
|
|
- padding: 0 30rpx;
|
|
|
+ padding: 20rpx 25rpx 0;
|
|
|
.img-box {
|
|
|
display: flex;
|
|
|
height: 90rpx;
|