1.26 个股详情业务结构,发展历程模块完善
This commit is contained in:
@@ -136,38 +136,43 @@
|
||||
</view>
|
||||
</view>
|
||||
<template v-if="selectCompanyFiles==0">
|
||||
<gqjg-view :actualControlInfo="actualControlInfo" :shareholdersList="topShareholdersList" :circulatingShareholdersList="topCirculatingShareholdersList"></gqjg-view>
|
||||
<gqjg-view :actualControlInfo="actualControlInfo" :concentrationList="concentrationList" :shareholdersList="topShareholdersList" :circulatingShareholdersList="topCirculatingShareholdersList"></gqjg-view>
|
||||
</template>
|
||||
<view v-if="selectCompanyFiles==1" class="managementTeamList">
|
||||
<view class="positionNumC flex">
|
||||
<view class="position">董事</view>
|
||||
<view class="num director">15人</view>
|
||||
</view>
|
||||
<view class="item flex">
|
||||
<view class="avatarC flexCenter relative director">
|
||||
郭
|
||||
<view class="sexC flexCenter absolute male">
|
||||
<image class="icon" src="/pagesStock/static/icon/female.png" mode="widthFix">
|
||||
</image>
|
||||
</view>
|
||||
</view>
|
||||
<view class="flex1">
|
||||
<view class="flex">
|
||||
<view class="name">郭晓涛</view>
|
||||
<view class="position">非执行董事</view>
|
||||
<view class="date flex1">任职日期:2024-10-08</view>
|
||||
</view>
|
||||
<view class="educationAgeC flex">
|
||||
<view class="education label">博士研究生</view>
|
||||
<view class="age label">59岁</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="expandMoreC flexCenter">
|
||||
<view>展开查看</view>
|
||||
<image class="arrow" src="/pagesStock/static/icon/lookMoreArrow.png" mode="widthFix">
|
||||
</image>
|
||||
</view>
|
||||
<view v-if="selectCompanyFiles==1" class="managementTeamList">
|
||||
<block v-for="(item,index) in managementList" :key="index">
|
||||
<view v-if="item.list.length>0" class="positionNumC flex">
|
||||
<view class="position">{{item.key}}</view>
|
||||
<view class="num director">{{item.list.length}}人</view>
|
||||
</view>
|
||||
<view class="item flex" v-for="(pitem,pindex) in item.list" :key="index">
|
||||
<view class="avatarC flexCenter relative director">
|
||||
{{getLastNameStr(pitem.name)}}
|
||||
<view :class="'sexC flexCenter absolute '+(pitem.gender=='女'?'female':'male')">
|
||||
<image v-if="pitem.gender=='女'" class="icon" src="/pagesStock/static/icon/female.png" mode="widthFix">
|
||||
</image>
|
||||
<image v-else class="icon" src="/pagesStock/static/icon/male.png" mode="widthFix">
|
||||
</image>
|
||||
</view>
|
||||
</view>
|
||||
<view class="flex1">
|
||||
<view class="flex">
|
||||
<view class="name">{{pitem.name}}</view>
|
||||
<view class="position">{{pitem.position_name}}</view>
|
||||
<view class="date flex1">任职日期:{{pitem.start_date}}</view>
|
||||
</view>
|
||||
<view class="educationAgeC flex">
|
||||
<view class="education label">{{pitem.education}}</view>
|
||||
<view class="age label">59岁</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view v-if="item.list.length>4" class="expandMoreC flexCenter">
|
||||
<view>展开查看</view>
|
||||
<image class="arrow" src="/pagesStock/static/icon/lookMoreArrow.png" mode="widthFix">
|
||||
</image>
|
||||
</view>
|
||||
</block>
|
||||
|
||||
</view>
|
||||
<view v-if="selectCompanyFiles==2" class="branchList">
|
||||
<view class="item" v-for="(item,index) in branchList" :key="index">
|
||||
@@ -248,8 +253,9 @@
|
||||
<view v-if="selectInDepthAnalysis==0" class="strategicAnalysisList">
|
||||
<view class="section">核心定位</view>
|
||||
<view v-if="qualitativeAnalysisInfo" class="corePositionC">{{qualitativeAnalysisInfo.core_positioning.one_line_intro}}</view>
|
||||
<view class="section">投资亮点</view>
|
||||
<view class="highlightsList">
|
||||
<view class="section">投资亮点</view>
|
||||
<view v-if="qualitativeAnalysisInfo" class="corePositionC">{{qualitativeAnalysisInfo.core_positioning.investment_highlights}}</view>
|
||||
<!-- <view class="highlightsList">
|
||||
<view class="item flex">
|
||||
<image class="icon" src="" mode="widthFix"></image>
|
||||
<view class="flex1">
|
||||
@@ -257,9 +263,10 @@
|
||||
<view class="content">背靠平安集团,客户资源共享和交叉销售带来持续增长动力</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="section">商业模式</view>
|
||||
<view class="infoC">
|
||||
</view> -->
|
||||
<view class="section">商业模式</view>
|
||||
<view v-if="qualitativeAnalysisInfo" class="corePositionC">{{qualitativeAnalysisInfo.core_positioning.business_model_desc}}</view>
|
||||
<!-- <view class="infoC">
|
||||
<view class="title">零售银行核心驱动</view>
|
||||
<view class="content">以零售银行业务为核心驱动,依托平安集团综合金融平台,构建智能化、移动化、综合化三位一体发展模式。</view>
|
||||
</view>
|
||||
@@ -286,7 +293,7 @@
|
||||
<view v-if="qualitativeAnalysisInfo" class="infoC">
|
||||
<view class="title">战略举措</view>
|
||||
<view class="content">{{qualitativeAnalysisInfo.strategy.strategic_initiatives}}</view>
|
||||
</view>
|
||||
</view> -->
|
||||
|
||||
<view class="section flex">
|
||||
<view>竞争地位分析</view>
|
||||
@@ -327,13 +334,13 @@
|
||||
</view>
|
||||
</view>
|
||||
<template v-if="selectInDepthAnalysis==1">
|
||||
<ywjg-view></ywjg-view>
|
||||
<ywjg-view :businessSegmentList="businessSegmentList"></ywjg-view>
|
||||
</template>
|
||||
<template v-if="selectInDepthAnalysis==2">
|
||||
<cyl-view @detail="detailShow(0)"></cyl-view>
|
||||
</template>
|
||||
<template v-if="selectInDepthAnalysis==3">
|
||||
<fzlc-view @detail="detailShow(1)"></fzlc-view>
|
||||
<fzlc-view :keyFactorsInfo="keyFactorsInfo" :keyFactorsList="keyFactorsList" :timelineInfo="timelineInfo" :timelineList="timelineList" @detail="detailShow(1)"></fzlc-view>
|
||||
</template>
|
||||
</block>
|
||||
<block v-if="selectTab==2">
|
||||
@@ -379,7 +386,7 @@
|
||||
<uni-popup ref="industryRankPop" type="bottom">
|
||||
<view class="industryRankPop relative">
|
||||
<view class="popTitle">行业排名</view>
|
||||
<view class="closeC absolute">
|
||||
<view class="closeC absolute" @click="clickCloseIndustryRankPop()">
|
||||
<image class="icon" src="/static/icon/home/close.png" mode="widthFix"></image>
|
||||
</view>
|
||||
<view class="rankList">
|
||||
@@ -548,8 +555,8 @@
|
||||
|
||||
<script>
|
||||
import { inject } from 'vue'
|
||||
import { actualControl, branchesList, companyAnnouncementsList, comprehensiveAnalysis, eventList, industryRankList, managementTeam, quoteDetailsInfo, stockBasicInfo, topCirculatingShareholdersList, topShareholdersList } from '@/request/api'
|
||||
import { getLocalDate, getNumStr, getRateUpOrDown } from '@/utils/util'
|
||||
import { actualControl, branchesList, companyAnnouncementsList, comprehensiveAnalysis, eventList, industryRankList, keyFactorsTimeline, managementTeam, ownershipConcentration, quoteDetailsInfo, stockBasicInfo, topCirculatingShareholdersList, topShareholdersList } from '@/request/api'
|
||||
import { getLastNameStr, getLocalDate, getNumStr, getRateUpOrDown } from '@/utils/util'
|
||||
const echarts = require('../../uni_modules/lime-echart/static/echarts.min.js');
|
||||
|
||||
export default {
|
||||
@@ -596,6 +603,7 @@
|
||||
}
|
||||
], //公司档案分类
|
||||
actualControlInfo:null, //实际控制信息
|
||||
concentrationList:[], //股权集中度列表
|
||||
topShareholdersList:[], //十大股东列表
|
||||
topCirculatingShareholdersList:[], //十大流通股东列表
|
||||
managementList:[], //管理团队列表
|
||||
@@ -732,6 +740,11 @@
|
||||
},
|
||||
]
|
||||
},
|
||||
businessSegmentList:[], //业务板块详情
|
||||
keyFactorsInfo:null, //关键因素统计信息
|
||||
keyFactorsList:[], //关键因素
|
||||
timelineInfo:null, //发展时间线统计信息
|
||||
timelineList:[], //发展时间线
|
||||
caiWuList: [{
|
||||
title: '主营数据'
|
||||
},
|
||||
@@ -756,14 +769,16 @@
|
||||
companyAnnouncementList:[], //公司公告数据
|
||||
getLocalDate:getLocalDate,
|
||||
getRateUpOrDown:getRateUpOrDown,
|
||||
getNumStr:getNumStr
|
||||
getNumStr:getNumStr,
|
||||
getLastNameStr:getLastNameStr
|
||||
}
|
||||
},
|
||||
onLoad() {
|
||||
this.contentTop = this.navH + (20 + 70 + 30) / 750 * inject('windowWidth')
|
||||
this.getStockBasicInfoData()
|
||||
this.getQuoteDetailsData()
|
||||
this.getActualControl()
|
||||
this.getActualControlData()
|
||||
this.getOwnershipConcentration()
|
||||
this.getTopShareholdersData()
|
||||
this.getTopCirculatingShareholdersData()
|
||||
},
|
||||
@@ -774,7 +789,6 @@
|
||||
// chart.on('click',function (params) {
|
||||
// console.log(params)
|
||||
// })
|
||||
console.log(chart)
|
||||
chart.setOption(this.option2)
|
||||
},
|
||||
/**
|
||||
@@ -831,6 +845,9 @@
|
||||
clickInDepthAnalysisItem(index) {
|
||||
if (this.selectInDepthAnalysis != index) {
|
||||
this.selectInDepthAnalysis = index
|
||||
if (index==3) {
|
||||
this.getKeyFactorsTimelineData()
|
||||
}
|
||||
}
|
||||
},
|
||||
/**
|
||||
@@ -910,7 +927,7 @@
|
||||
/**
|
||||
* 获取实际控制人数据
|
||||
*/
|
||||
getActualControl() {
|
||||
getActualControlData() {
|
||||
let code = this.stockCode
|
||||
if (this.keywords) {
|
||||
code = this.keywords
|
||||
@@ -921,6 +938,20 @@
|
||||
|
||||
})
|
||||
},
|
||||
/**
|
||||
* 获取股权集中度数据
|
||||
*/
|
||||
getOwnershipConcentration() {
|
||||
let code = this.stockCode
|
||||
if (this.keywords) {
|
||||
code = this.keywords
|
||||
}
|
||||
ownershipConcentration(code).then(res=>{
|
||||
this.actualControlInfo = res.data
|
||||
}).catch(error=>{
|
||||
|
||||
})
|
||||
},
|
||||
/**
|
||||
* 获取十大股东列表
|
||||
*/
|
||||
@@ -960,13 +991,38 @@
|
||||
}
|
||||
managementTeam(code,{active_only:true}).then(res=>{
|
||||
let data = res.data
|
||||
this.managementList = data.reduce((acc, item) => {
|
||||
if (!acc[item.position_category_code]) {
|
||||
acc[item.position_category_code] = [];
|
||||
}
|
||||
acc[item.position_category_code].push(item);
|
||||
let arr = ['高管','董事','监事','其他']
|
||||
let list = []
|
||||
for (let item of arr) {
|
||||
list.push({key:item,list:[]})
|
||||
}
|
||||
this.managementList = data.reduce((acc,item) => {
|
||||
for (let item1 of acc) {
|
||||
if(item.position_category.indexOf(item1.key)>-1)
|
||||
{
|
||||
let keyIndex = -1
|
||||
for (let item2 of acc) {
|
||||
if(item1.key==item2.key){
|
||||
keyIndex = acc.indexOf(item2)
|
||||
break
|
||||
}
|
||||
}
|
||||
if(keyIndex>-1)
|
||||
{
|
||||
acc[keyIndex].list.push(item)
|
||||
}else
|
||||
{
|
||||
acc.push({key:item1,list:[item]})
|
||||
}
|
||||
}
|
||||
}
|
||||
if(item.position_category.indexOf(arr[0])>-1&&item.position_category.indexOf(arr[1])>-1&&item.position_category.indexOf(arr[2])>-1)
|
||||
{
|
||||
// acc.key = '其他'
|
||||
// acc.list = item
|
||||
}
|
||||
return acc;
|
||||
}, {});
|
||||
}, list);
|
||||
}).catch(error=>{
|
||||
|
||||
})
|
||||
@@ -997,6 +1053,7 @@
|
||||
this.qualitativeAnalysisInfo = res.data.qualitative_analysis
|
||||
this.competitivePositionInfo = res.data.competitive_position
|
||||
this.mainCompetitorsList = this.competitivePositionInfo.analysis.main_competitors.split(',')
|
||||
|
||||
let marketPosition = this.competitivePositionInfo.scores.market_position
|
||||
this.scoreList[0].score = marketPosition
|
||||
let technology = this.competitivePositionInfo.scores.technology
|
||||
@@ -1018,6 +1075,7 @@
|
||||
setTimeout(function() {
|
||||
that.init()
|
||||
}, 1000);
|
||||
this.businessSegmentList = res.data.business_segments;
|
||||
}).catch(error=>{
|
||||
|
||||
})
|
||||
@@ -1036,6 +1094,23 @@
|
||||
|
||||
})
|
||||
},
|
||||
/**
|
||||
* 获取关键因素和发展时间线数据
|
||||
*/
|
||||
getKeyFactorsTimelineData() {
|
||||
let code = this.stockCode
|
||||
if (this.keywords) {
|
||||
code = this.keywords
|
||||
}
|
||||
keyFactorsTimeline(code).then(res=>{
|
||||
this.keyFactorsInfo = res.data.key_factors
|
||||
this.keyFactorsList = res.data.key_factors.categories
|
||||
this.timelineInfo = res.data.development_timeline.statistics
|
||||
this.timelineList = res.data.development_timeline.events
|
||||
}).catch(error=>{
|
||||
|
||||
})
|
||||
},
|
||||
/**
|
||||
* 获取新闻动态数据
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user