2.4 组件结构调整,调整会员权限判断
This commit is contained in:
400
unpackage/dist/dev/mp-weixin/pagesStock/components/cwfx-view/cwfx-view.js
vendored
Normal file
400
unpackage/dist/dev/mp-weixin/pagesStock/components/cwfx-view/cwfx-view.js
vendored
Normal file
@@ -0,0 +1,400 @@
|
||||
"use strict";
|
||||
const common_vendor = require("../../../common/vendor.js");
|
||||
const common_assets = require("../../../common/assets.js");
|
||||
const echarts = require("../../../uni_modules/lime-echart/static/echarts.min.js");
|
||||
const _sfc_main = {
|
||||
name: "cwfx-view",
|
||||
data() {
|
||||
return {
|
||||
profitabilityIndicatorList: [
|
||||
{
|
||||
title: "净资产收益率(ROE)%"
|
||||
},
|
||||
{
|
||||
title: "净资产收益率(扣非)%"
|
||||
},
|
||||
{
|
||||
title: "净资产收益率(加权)%"
|
||||
},
|
||||
{
|
||||
title: "总资产报酬率(ROA)%"
|
||||
},
|
||||
{
|
||||
title: "毛利率%"
|
||||
},
|
||||
{
|
||||
title: "净利率%"
|
||||
},
|
||||
{
|
||||
title: "营业利润率%"
|
||||
},
|
||||
{
|
||||
title: "成本费用利润率%"
|
||||
}
|
||||
],
|
||||
profitabilityIndicatorIndex: 0,
|
||||
perShareIndicatorList: [
|
||||
{
|
||||
title: "每股收益(EPS)"
|
||||
},
|
||||
{
|
||||
title: "基本每股收益"
|
||||
},
|
||||
{
|
||||
title: "稀释每股收益"
|
||||
},
|
||||
{
|
||||
title: "扣非每股收益"
|
||||
},
|
||||
{
|
||||
title: "每股净资产"
|
||||
},
|
||||
{
|
||||
title: "每股经营现金流"
|
||||
},
|
||||
{
|
||||
title: "每股资本公积"
|
||||
},
|
||||
{
|
||||
title: "每股未分配利润"
|
||||
}
|
||||
],
|
||||
perShareIndicatorIndex: 0,
|
||||
option1: {
|
||||
legend: {
|
||||
show: true,
|
||||
data: ["ROE", "同比(右)"]
|
||||
},
|
||||
grid: {
|
||||
left: "2%",
|
||||
right: "2%",
|
||||
top: "5%",
|
||||
bottom: "30%"
|
||||
},
|
||||
xAxis: {
|
||||
type: "category",
|
||||
data: [],
|
||||
axisLabel: {
|
||||
fontSize: 10,
|
||||
rotate: 45
|
||||
}
|
||||
},
|
||||
yAxis: [
|
||||
{
|
||||
type: "value",
|
||||
name: "(%)",
|
||||
position: "left",
|
||||
alignTicks: true,
|
||||
axisLine: {
|
||||
onZero: false
|
||||
}
|
||||
},
|
||||
{
|
||||
type: "value",
|
||||
name: "(%)",
|
||||
position: "right",
|
||||
alignTicks: true,
|
||||
axisLine: {
|
||||
onZero: false
|
||||
}
|
||||
}
|
||||
],
|
||||
dataZoom: [{
|
||||
type: "slider"
|
||||
}],
|
||||
series: [
|
||||
{
|
||||
type: "bar",
|
||||
name: "ROE",
|
||||
data: [],
|
||||
yAxisIndex: 0
|
||||
},
|
||||
{
|
||||
type: "line",
|
||||
name: "同比",
|
||||
data: [],
|
||||
yAxisIndex: 1
|
||||
}
|
||||
]
|
||||
},
|
||||
option2: {
|
||||
legend: {
|
||||
show: true,
|
||||
data: ["ROE", "同比(右)"]
|
||||
},
|
||||
grid: {
|
||||
left: "2%",
|
||||
right: "2%",
|
||||
top: "5%",
|
||||
bottom: "30%"
|
||||
},
|
||||
xAxis: {
|
||||
type: "category",
|
||||
data: [],
|
||||
axisLabel: {
|
||||
rotate: 45,
|
||||
fontSize: 10
|
||||
}
|
||||
},
|
||||
yAxis: [
|
||||
{
|
||||
type: "value",
|
||||
name: "(%)",
|
||||
position: "left",
|
||||
alignTicks: true,
|
||||
axisLine: {
|
||||
onZero: false
|
||||
}
|
||||
},
|
||||
{
|
||||
type: "value",
|
||||
name: "(%)",
|
||||
position: "right",
|
||||
alignTicks: true,
|
||||
axisLine: {
|
||||
onZero: false
|
||||
}
|
||||
}
|
||||
],
|
||||
dataZoom: [{
|
||||
type: "slider"
|
||||
}],
|
||||
series: [
|
||||
{
|
||||
type: "bar",
|
||||
name: "ROE",
|
||||
data: [],
|
||||
yAxisIndex: 0
|
||||
},
|
||||
{
|
||||
type: "line",
|
||||
name: "同比",
|
||||
data: [],
|
||||
yAxisIndex: 1
|
||||
}
|
||||
]
|
||||
}
|
||||
};
|
||||
},
|
||||
props: {
|
||||
dataList: Array
|
||||
},
|
||||
watch: {
|
||||
dataList(newValue) {
|
||||
let category = [];
|
||||
let data1 = [];
|
||||
let data2 = [];
|
||||
for (let item of newValue) {
|
||||
var type = item.report_type;
|
||||
type = type.replace("年三季报", "Q3");
|
||||
type = type.replace("年一季报", "Q1");
|
||||
type = type.replace("年中报", "中报");
|
||||
type = type.replace("年年报", "年报");
|
||||
category.push(type);
|
||||
if (item.profitability.roe) {
|
||||
data1.push(item.profitability.roe.toFixed(2));
|
||||
} else
|
||||
data1.push(0);
|
||||
if (item.per_share_metrics.eps) {
|
||||
data2.push(item.per_share_metrics.eps.toFixed(2));
|
||||
} else
|
||||
data2.push(0);
|
||||
}
|
||||
this.option1.xAxis.data = category;
|
||||
this.option1.series[0].data = data1;
|
||||
this.profitabilityInit();
|
||||
this.option2.xAxis.data = category;
|
||||
this.option2.series[0].data = data2;
|
||||
this.perShareInit();
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
async profitabilityInit() {
|
||||
const chart = await this.$refs.chartRef1.init(echarts);
|
||||
chart.setOption(this.option1);
|
||||
},
|
||||
async perShareInit() {
|
||||
const chart = await this.$refs.chartRef2.init(echarts);
|
||||
chart.setOption(this.option2);
|
||||
},
|
||||
/**
|
||||
* 切换盈利能力指标
|
||||
* @param {Object} item
|
||||
*/
|
||||
clickProfitabilityIndicatorItem(index) {
|
||||
if (this.profitabilityIndicatorIndex != index) {
|
||||
this.profitabilityIndicatorIndex = index;
|
||||
let data = [];
|
||||
if (index == 0) {
|
||||
for (let item of this.dataList) {
|
||||
if (item.profitability.roe) {
|
||||
data.push(item.profitability.roe.toFixed(2));
|
||||
} else
|
||||
data.push(0);
|
||||
}
|
||||
} else if (index == 1) {
|
||||
for (let item of this.dataList) {
|
||||
if (item.profitability.roe_deducted) {
|
||||
data.push(item.profitability.roe_deducted.toFixed(2));
|
||||
} else
|
||||
data.push(0);
|
||||
}
|
||||
} else if (index == 2) {
|
||||
for (let item of this.dataList) {
|
||||
if (item.profitability.roe_deducted) {
|
||||
data.push(item.profitability.roe_deducted.toFixed(2));
|
||||
} else
|
||||
data.push(0);
|
||||
}
|
||||
} else if (index == 3) {
|
||||
for (let item of this.dataList) {
|
||||
if (item.profitability.roa) {
|
||||
data.push(item.profitability.roa.toFixed(2));
|
||||
} else
|
||||
data.push(0);
|
||||
}
|
||||
} else if (index == 4) {
|
||||
for (let item of this.dataList) {
|
||||
if (item.profitability.gross_margin) {
|
||||
data.push(item.profitability.gross_margin.toFixed(2));
|
||||
} else
|
||||
data.push(0);
|
||||
}
|
||||
} else if (index == 5) {
|
||||
for (let item of this.dataList) {
|
||||
if (item.profitability.net_profit_margin) {
|
||||
data.push(item.profitability.net_profit_margin.toFixed(2));
|
||||
} else
|
||||
data.push(0);
|
||||
}
|
||||
} else if (index == 6) {
|
||||
for (let item of this.dataList) {
|
||||
if (item.profitability.operating_profit_margin) {
|
||||
data.push(item.profitability.operating_profit_margin.toFixed(2));
|
||||
} else
|
||||
data.push(0);
|
||||
}
|
||||
} else if (index == 7) {
|
||||
for (let item of this.dataList) {
|
||||
if (item.profitability.cost_profit_ratio) {
|
||||
data.push(item.profitability.cost_profit_ratio.toFixed(2));
|
||||
} else
|
||||
data.push(0);
|
||||
}
|
||||
}
|
||||
this.option1.series[0].data = data;
|
||||
this.profitabilityInit();
|
||||
}
|
||||
},
|
||||
/**
|
||||
* 切换每股指标
|
||||
* @param {Object} item
|
||||
*/
|
||||
clickPerShareIndicatorItem(index) {
|
||||
if (this.perShareIndicatorIndex != index) {
|
||||
this.perShareIndicatorIndex = index;
|
||||
let data = [];
|
||||
if (index == 0) {
|
||||
for (let item of this.dataList) {
|
||||
if (item.per_share_metrics.eps) {
|
||||
data.push(item.per_share_metrics.eps.toFixed(2));
|
||||
} else
|
||||
data.push(0);
|
||||
}
|
||||
} else if (index == 1) {
|
||||
for (let item of this.dataList) {
|
||||
if (item.per_share_metrics.basic_eps) {
|
||||
data.push(item.per_share_metrics.basic_eps.toFixed(2));
|
||||
} else
|
||||
data.push(0);
|
||||
}
|
||||
} else if (index == 2) {
|
||||
for (let item of this.dataList) {
|
||||
if (item.per_share_metrics.diluted_eps) {
|
||||
data.push(item.per_share_metrics.diluted_eps.toFixed(2));
|
||||
} else
|
||||
data.push(0);
|
||||
}
|
||||
} else if (index == 3) {
|
||||
for (let item of this.dataList) {
|
||||
if (item.per_share_metrics.deducted_eps) {
|
||||
data.push(item.per_share_metrics.deducted_eps.toFixed(2));
|
||||
} else
|
||||
data.push(0);
|
||||
}
|
||||
} else if (index == 4) {
|
||||
for (let item of this.dataList) {
|
||||
if (item.per_share_metrics.bvps) {
|
||||
data.push(item.per_share_metrics.bvps.toFixed(2));
|
||||
} else
|
||||
data.push(0);
|
||||
}
|
||||
} else if (index == 5) {
|
||||
for (let item of this.dataList) {
|
||||
if (item.per_share_metrics.operating_cash_flow_ps) {
|
||||
data.push(item.per_share_metrics.operating_cash_flow_ps.toFixed(2));
|
||||
} else
|
||||
data.push(0);
|
||||
}
|
||||
} else if (index == 6) {
|
||||
for (let item of this.dataList) {
|
||||
if (item.per_share_metrics.capital_reserve_ps) {
|
||||
data.push(item.per_share_metrics.capital_reserve_ps.toFixed(2));
|
||||
} else
|
||||
data.push(0);
|
||||
}
|
||||
} else if (index == 7) {
|
||||
for (let item of this.dataList) {
|
||||
if (item.per_share_metrics.undistributed_profit_ps) {
|
||||
data.push(item.per_share_metrics.undistributed_profit_ps.toFixed(2));
|
||||
} else
|
||||
data.push(0);
|
||||
}
|
||||
}
|
||||
this.option2.series[0].data = data;
|
||||
this.perShareInit();
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
if (!Array) {
|
||||
const _easycom_l_echart2 = common_vendor.resolveComponent("l-echart");
|
||||
_easycom_l_echart2();
|
||||
}
|
||||
const _easycom_l_echart = () => "../../../uni_modules/lime-echart/components/l-echart/l-echart.js";
|
||||
if (!Math) {
|
||||
_easycom_l_echart();
|
||||
}
|
||||
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
||||
return {
|
||||
a: common_assets._imports_0$3,
|
||||
b: common_assets._imports_2$3,
|
||||
c: common_vendor.f($data.profitabilityIndicatorList, (item, index, i0) => {
|
||||
return {
|
||||
a: common_vendor.t(item.title),
|
||||
b: common_vendor.n("item flex " + ($data.profitabilityIndicatorIndex == index ? "select" : "")),
|
||||
c: index,
|
||||
d: common_vendor.o(($event) => $options.clickProfitabilityIndicatorItem(index), index)
|
||||
};
|
||||
}),
|
||||
d: common_assets._imports_3$12,
|
||||
e: common_assets._imports_5$7,
|
||||
f: common_vendor.sr("chartRef1", "351c0d57-0"),
|
||||
g: common_assets._imports_4$12,
|
||||
h: common_assets._imports_2$3,
|
||||
i: common_vendor.f($data.perShareIndicatorList, (item, index, i0) => {
|
||||
return {
|
||||
a: common_vendor.t(item.title),
|
||||
b: common_vendor.n("item flexCenter " + ($data.perShareIndicatorIndex == index ? "select" : "")),
|
||||
c: index,
|
||||
d: common_vendor.o(($event) => $options.clickPerShareIndicatorItem(index), index)
|
||||
};
|
||||
}),
|
||||
j: common_assets._imports_3$12,
|
||||
k: common_assets._imports_5$7,
|
||||
l: common_vendor.sr("chartRef2", "351c0d57-1")
|
||||
};
|
||||
}
|
||||
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
|
||||
wx.createPage(MiniProgramPage);
|
||||
//# sourceMappingURL=../../../../.sourcemap/mp-weixin/pagesStock/components/cwfx-view/cwfx-view.js.map
|
||||
5
unpackage/dist/dev/mp-weixin/pagesStock/components/cwfx-view/cwfx-view.json
vendored
Normal file
5
unpackage/dist/dev/mp-weixin/pagesStock/components/cwfx-view/cwfx-view.json
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"usingComponents": {
|
||||
"l-echart": "../../../uni_modules/lime-echart/components/l-echart/l-echart"
|
||||
}
|
||||
}
|
||||
1
unpackage/dist/dev/mp-weixin/pagesStock/components/cwfx-view/cwfx-view.wxml
vendored
Normal file
1
unpackage/dist/dev/mp-weixin/pagesStock/components/cwfx-view/cwfx-view.wxml
vendored
Normal file
@@ -0,0 +1 @@
|
||||
<view><view style="color:#2B2B2B;font-weight:500;font-size:24rpx"><view class="flex" style="padding:20rpx"><image src="{{a}}" mode="widthFix" style="width:40rpx;height:40rpx"></image><view class="flex1" style="margin:0 10rpx;font-size:28rpx">盈利能力</view><image src="{{b}}" mode="widthFix" style="width:13rpx;height:22rpx"></image></view><view class="indicatorC" style="display:grid;gap:20rpx;grid-template-columns:repeat(4, 1fr);margin:0 20rpx"><view wx:for="{{c}}" wx:for-item="item" wx:key="c" class="{{item.b}}" style="justify-content:center;text-align:center;padding:3rpx 5rpx" bindtap="{{item.d}}">{{item.a}}</view></view><view class="flex" style="padding:20rpx"><view class="flex1" style="font-size:28rpx">查看详细数据</view><view style="color:#F2C369;font-size:22rpx;padding:2rpx 10rpx;border-radius:5rpx;border:1rpx solid #F2C369;text-align:center;margin:0 10rpx"> 单季度</view><view class="flex" style="padding:3rpx 10rpx;border:1rpx solid #D2D2D2"><image style="width:23rpx;height:23rpx" src="{{d}}" mode="widthFix"></image><view style="margin:0 10rpx;color:#999999;font-size:22rpx">全部</view><image style="width:11rpx;height:6rpx" src="{{e}}" mode="widthFix"></image></view></view><view style="height:500rpx"><l-echart class="r" u-r="chartRef1" u-i="351c0d57-0" bind:__l="__l"></l-echart></view></view><view style="color:#2B2B2B;font-weight:500;font-size:24rpx"><view style="display:flex;align-items:center;padding:20rpx;box-sizing:border-box"><image src="{{g}}" mode="widthFix" style="width:40rpx;height:40rpx"></image><view class="flex1" style="margin:0 10rpx;font-size:28rpx">每股指标</view><image src="{{h}}" mode="widthFix" style="width:13rpx;height:22rpx"></image></view><view class="indicatorC" style="display:grid;gap:20rpx;grid-template-columns:repeat(4, 1fr);margin:0 20rpx"><view wx:for="{{i}}" wx:for-item="item" wx:key="c" class="{{item.b}}" bindtap="{{item.d}}">{{item.a}}</view></view><view style="display:flex;align-items:center;padding:20rpx;box-sizing:border-box"><view class="flex1" style="font-size:28rpx">查看详细数据</view><view style="color:#F2C369;font-size:22rpx;padding:2rpx 10rpx;border-radius:5rpx;border:1rpx solid #F2C369;text-align:center;margin:0 10rpx"> 单季度</view><view style="display:flex;align-items:center;padding:3rpx 10rpx;box-sizing:border-box;border:1rpx solid #D2D2D2"><image style="width:23rpx;height:23rpx" src="{{j}}" mode="widthFix"></image><view style="margin:0 10rpx;color:#999999;font-size:22rpx">全部</view><image style="width:11rpx;height:6rpx" src="{{k}}" mode="widthFix"></image></view></view><view style="height:500rpx"><l-echart class="r" u-r="chartRef2" u-i="351c0d57-1" bind:__l="__l"></l-echart></view></view></view>
|
||||
13
unpackage/dist/dev/mp-weixin/pagesStock/components/cwfx-view/cwfx-view.wxss
vendored
Normal file
13
unpackage/dist/dev/mp-weixin/pagesStock/components/cwfx-view/cwfx-view.wxss
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
.indicatorC .item {
|
||||
background-color: #FFFFFF;
|
||||
padding: 3rpx 5rpx;
|
||||
border: 1rpx solid #D2D2D2;
|
||||
font-size: 20rpx;
|
||||
color: #999;
|
||||
text-align: center;
|
||||
}
|
||||
.indicatorC .item.select {
|
||||
background-color: #FFFAF1;
|
||||
border: 1rpx solid #F2C369;
|
||||
color: #BB8520;
|
||||
}
|
||||
2471
unpackage/dist/dev/mp-weixin/pagesStock/components/cwsj-view/cwsj-view.js
vendored
Normal file
2471
unpackage/dist/dev/mp-weixin/pagesStock/components/cwsj-view/cwsj-view.js
vendored
Normal file
File diff suppressed because it is too large
Load Diff
5
unpackage/dist/dev/mp-weixin/pagesStock/components/cwsj-view/cwsj-view.json
vendored
Normal file
5
unpackage/dist/dev/mp-weixin/pagesStock/components/cwsj-view/cwsj-view.json
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"usingComponents": {
|
||||
"l-echart": "../../../uni_modules/lime-echart/components/l-echart/l-echart"
|
||||
}
|
||||
}
|
||||
1
unpackage/dist/dev/mp-weixin/pagesStock/components/cwsj-view/cwsj-view.wxml
vendored
Normal file
1
unpackage/dist/dev/mp-weixin/pagesStock/components/cwsj-view/cwsj-view.wxml
vendored
Normal file
File diff suppressed because one or more lines are too long
26
unpackage/dist/dev/mp-weixin/pagesStock/components/cwsj-view/cwsj-view.wxss
vendored
Normal file
26
unpackage/dist/dev/mp-weixin/pagesStock/components/cwsj-view/cwsj-view.wxss
vendored
Normal file
@@ -0,0 +1,26 @@
|
||||
.indicatorC .item {
|
||||
padding: 10rpx;
|
||||
border: 1rpx solid #D2D2D2;
|
||||
font-size: 20rpx;
|
||||
color: #999999;
|
||||
text-align: center;
|
||||
}
|
||||
.indicatorC .item.select {
|
||||
background-color: #FFFAF1;
|
||||
color: #BB8520;
|
||||
border: 1rpx solid #F2C369;
|
||||
}
|
||||
.detailOptionC .option {
|
||||
margin: 0 10rpx;
|
||||
line-height: 36rpx;
|
||||
padding: 0 10rpx;
|
||||
border-radius: 5rpx;
|
||||
border: 1rpx solid #D2D2D2;
|
||||
font-size: 22rpx;
|
||||
color: #999999;
|
||||
text-align: center;
|
||||
}
|
||||
.detailOptionC .option.select {
|
||||
border: solid 1rpx #F2C369;
|
||||
color: #F2C369;
|
||||
}
|
||||
194
unpackage/dist/dev/mp-weixin/pagesStock/components/cyl-view/cyl-view.js
vendored
Normal file
194
unpackage/dist/dev/mp-weixin/pagesStock/components/cyl-view/cyl-view.js
vendored
Normal file
@@ -0,0 +1,194 @@
|
||||
"use strict";
|
||||
const common_vendor = require("../../../common/vendor.js");
|
||||
const common_assets = require("../../../common/assets.js");
|
||||
const echarts = require("../../../uni_modules/lime-echart/static/echarts.min.js");
|
||||
const _sfc_main = {
|
||||
name: "cyl-view",
|
||||
data() {
|
||||
return {
|
||||
isShow: false,
|
||||
center_index: 0,
|
||||
types: [
|
||||
{
|
||||
title: "上游供应链",
|
||||
count: 0,
|
||||
desc: "原材料与供应商",
|
||||
type: "upstream"
|
||||
},
|
||||
{
|
||||
title: "核心企业",
|
||||
count: 0,
|
||||
desc: "公司主体与产品",
|
||||
type: "core"
|
||||
},
|
||||
{
|
||||
title: "下游客户",
|
||||
count: 0,
|
||||
desc: "客户与终端市场",
|
||||
type: "downstream"
|
||||
}
|
||||
],
|
||||
typeIndex: 0,
|
||||
option: {
|
||||
legend: {
|
||||
show: false
|
||||
},
|
||||
grid: {
|
||||
left: "2%",
|
||||
right: "2%",
|
||||
top: "5%",
|
||||
bottom: "30%"
|
||||
},
|
||||
series: [
|
||||
{
|
||||
type: "sankey",
|
||||
name: "经营现金流",
|
||||
data: [],
|
||||
links: []
|
||||
}
|
||||
]
|
||||
}
|
||||
};
|
||||
},
|
||||
props: {
|
||||
valueChainAnalysisInfo: Object,
|
||||
upstreamList: Array,
|
||||
//上游供应链
|
||||
coreEnterpriseList: Array,
|
||||
//核心企业
|
||||
downstreamList: Array,
|
||||
//下游客户
|
||||
totalNodes: Number,
|
||||
//总节点数
|
||||
valueChainFlowsList: Array
|
||||
//产业链流向数据
|
||||
},
|
||||
watch: {
|
||||
valueChainAnalysisInfo(newValue) {
|
||||
this.types[0].count = newValue.upstream_nodes;
|
||||
this.types[1].count = newValue.company_nodes;
|
||||
this.types[2].count = newValue.downstream_nodes;
|
||||
},
|
||||
valueChainFlowsList(newValue) {
|
||||
let data = [];
|
||||
let links = [];
|
||||
let name = [];
|
||||
for (let item of newValue) {
|
||||
if (name.indexOf(item.source.node_name) == -1) {
|
||||
name.push(item.source.node_name);
|
||||
data.push({ name: item.source.node_name });
|
||||
}
|
||||
links.push({ source: item.source.node_name, target: item.target.node_name, value: item.flow_metrics.flow_ratio });
|
||||
}
|
||||
this.option.series[0].data = data;
|
||||
this.option.series[0].links = links;
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
async init() {
|
||||
const chart = await this.$refs.chartRef.init(echarts);
|
||||
common_vendor.index.__f__("log", "at pagesStock/components/cyl-view/cyl-view.vue:183", chart);
|
||||
common_vendor.index.__f__("log", "at pagesStock/components/cyl-view/cyl-view.vue:184", this.option);
|
||||
chart.setOption(this.option);
|
||||
},
|
||||
changeCenterIndex(index) {
|
||||
if (this.center_index != index) {
|
||||
this.center_index = index;
|
||||
if (index == 1) {
|
||||
let that = this;
|
||||
setTimeout(function() {
|
||||
that.init();
|
||||
}, 500);
|
||||
}
|
||||
}
|
||||
},
|
||||
clickAction(item) {
|
||||
this.$emit("detail", item);
|
||||
}
|
||||
}
|
||||
};
|
||||
if (!Array) {
|
||||
const _easycom_l_echart2 = common_vendor.resolveComponent("l-echart");
|
||||
_easycom_l_echart2();
|
||||
}
|
||||
const _easycom_l_echart = () => "../../../uni_modules/lime-echart/components/l-echart/l-echart.js";
|
||||
if (!Math) {
|
||||
_easycom_l_echart();
|
||||
}
|
||||
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
||||
return common_vendor.e({
|
||||
a: common_vendor.t($props.totalNodes),
|
||||
b: $data.center_index == 0 ? 1 : "",
|
||||
c: common_vendor.o(($event) => $options.changeCenterIndex(0)),
|
||||
d: $data.center_index == 1 ? 1 : "",
|
||||
e: common_vendor.o(($event) => $options.changeCenterIndex(1)),
|
||||
f: $data.center_index == 0
|
||||
}, $data.center_index == 0 ? common_vendor.e({
|
||||
g: common_vendor.f($data.types, (item, index, i0) => {
|
||||
return common_vendor.e({
|
||||
a: common_vendor.t(item.title),
|
||||
b: common_vendor.t(item.count),
|
||||
c: common_vendor.n("num " + ($data.typeIndex == index ? item.type : "")),
|
||||
d: common_vendor.t(item.desc),
|
||||
e: common_vendor.n("contentC flexColumnCenter flex1 " + ($data.typeIndex == index ? item.type : "")),
|
||||
f: common_vendor.o(($event) => $data.typeIndex = index, index),
|
||||
g: index != $data.types.length - 1
|
||||
}, index != $data.types.length - 1 ? {
|
||||
h: common_assets._imports_0$4
|
||||
} : {}, {
|
||||
i: index
|
||||
});
|
||||
}),
|
||||
h: $data.typeIndex == 0
|
||||
}, $data.typeIndex == 0 ? {
|
||||
i: common_vendor.f($props.upstreamList, (item, index, i0) => {
|
||||
return {
|
||||
a: common_vendor.t(item.node_name),
|
||||
b: common_vendor.t(item.node_description),
|
||||
c: common_vendor.t(item.node_type),
|
||||
d: common_vendor.t(item.market_share),
|
||||
e: `${item.importance_score}%`,
|
||||
f: common_vendor.t(item.importance_score),
|
||||
g: index,
|
||||
h: common_vendor.o(($event) => $options.clickAction(item), index)
|
||||
};
|
||||
})
|
||||
} : {}, {
|
||||
j: $data.typeIndex == 1
|
||||
}, $data.typeIndex == 1 ? {
|
||||
k: common_vendor.f($props.coreEnterpriseList, (item, index, i0) => {
|
||||
return {
|
||||
a: common_vendor.t(item.node_name),
|
||||
b: common_vendor.t(item.node_description),
|
||||
c: common_vendor.t(item.node_type),
|
||||
d: common_vendor.t(item.market_share),
|
||||
e: `${item.importance_score}%`,
|
||||
f: common_vendor.t(item.importance_score),
|
||||
g: index,
|
||||
h: common_vendor.o(($event) => $options.clickAction(item), index)
|
||||
};
|
||||
})
|
||||
} : {}, {
|
||||
l: $data.typeIndex == 2
|
||||
}, $data.typeIndex == 2 ? {
|
||||
m: common_vendor.f($props.downstreamList, (item, index, i0) => {
|
||||
return {
|
||||
a: common_vendor.t(item.node_name),
|
||||
b: common_vendor.t(item.node_description),
|
||||
c: common_vendor.t(item.node_type),
|
||||
d: common_vendor.t(item.market_share),
|
||||
e: `${item.importance_score}%`,
|
||||
f: common_vendor.t(item.importance_score),
|
||||
g: index,
|
||||
h: common_vendor.o(($event) => $options.clickAction(item), index)
|
||||
};
|
||||
})
|
||||
} : {}) : {}, {
|
||||
n: $data.center_index == 1
|
||||
}, $data.center_index == 1 ? {
|
||||
o: common_vendor.sr("chartRef", "4ade4b3d-0")
|
||||
} : {});
|
||||
}
|
||||
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
|
||||
wx.createPage(MiniProgramPage);
|
||||
//# sourceMappingURL=../../../../.sourcemap/mp-weixin/pagesStock/components/cyl-view/cyl-view.js.map
|
||||
5
unpackage/dist/dev/mp-weixin/pagesStock/components/cyl-view/cyl-view.json
vendored
Normal file
5
unpackage/dist/dev/mp-weixin/pagesStock/components/cyl-view/cyl-view.json
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"usingComponents": {
|
||||
"l-echart": "../../../uni_modules/lime-echart/components/l-echart/l-echart"
|
||||
}
|
||||
}
|
||||
1
unpackage/dist/dev/mp-weixin/pagesStock/components/cyl-view/cyl-view.wxml
vendored
Normal file
1
unpackage/dist/dev/mp-weixin/pagesStock/components/cyl-view/cyl-view.wxml
vendored
Normal file
@@ -0,0 +1 @@
|
||||
<view class="cyl_view"><view class="top flex"><view class="child_1">产业链分析</view><view class="child_2">目标公司供应链图谱</view><view class="child_3">节点 {{a}}</view></view><view class="center"><view class="{{['child', b && 'action']}}" bindtap="{{c}}"> 层级视图 </view><view class="{{['child', d && 'action']}}" bindtap="{{e}}"> 流向关系 </view></view><view wx:if="{{f}}" class="bottom"><view class="type flex"><view wx:for="{{g}}" wx:for-item="item" wx:key="i" class="item flex flex1"><view class="{{item.e}}" bindtap="{{item.f}}"><view class="titleNumC">{{item.a}} <text class="{{item.c}}">{{item.b}}</text></view><view class="des">{{item.d}}</view></view><image wx:if="{{item.g}}" class="arrow" src="{{item.h}}" mode="widthFix"></image></view></view><view class="list"><block wx:if="{{h}}"><view wx:for="{{i}}" wx:for-item="item" wx:key="g" class="item" bindtap="{{item.h}}"><view class="title">{{item.a}}</view><view class="des">{{item.b}}</view><view class="labelC flex"><view class="label upstream type">{{item.c}}</view><view class="label upstream market">份额:{{item.d}}%</view></view><view class="importanceC flex"><view class="title">影响度</view><view class="progressBgC flex1"><view class="progress upstream" style="{{'width:' + item.e}}"></view></view><view class="value">{{item.f}}</view></view></view></block><block wx:if="{{j}}"><view wx:for="{{k}}" wx:for-item="item" wx:key="g" class="item" bindtap="{{item.h}}"><view class="title">{{item.a}}</view><view class="des">{{item.b}}</view><view class="labelC flex"><view class="label core type">{{item.c}}</view><view class="label core market">份额:{{item.d}}%</view></view><view class="importanceC flex"><view class="title">影响度</view><view class="progressBgC flex1"><view class="progress core" style="{{'width:' + item.e}}"></view></view><view class="value">{{item.f}}</view></view></view></block><block wx:if="{{l}}"><view wx:for="{{m}}" wx:for-item="item" wx:key="g" class="item" bindtap="{{item.h}}"><view class="title">{{item.a}}</view><view class="des">{{item.b}}</view><view class="labelC flex"><view class="label downstream type">{{item.c}}</view><view class="label downstream market">份额:{{item.d}}%</view></view><view class="importanceC flex"><view class="title">影响度</view><view class="progressBgC flex1"><view class="progress downstream" style="{{'width:' + item.e}}"></view></view><view class="value">{{item.f}}</view></view></view></block></view></view><view wx:if="{{n}}" style="height:500rpx"><l-echart class="r" u-r="chartRef" u-i="4ade4b3d-0" bind:__l="__l"></l-echart></view></view>
|
||||
194
unpackage/dist/dev/mp-weixin/pagesStock/components/cyl-view/cyl-view.wxss
vendored
Normal file
194
unpackage/dist/dev/mp-weixin/pagesStock/components/cyl-view/cyl-view.wxss
vendored
Normal file
@@ -0,0 +1,194 @@
|
||||
.cyl_view {
|
||||
padding: 20rpx;
|
||||
}
|
||||
.cyl_view .top {
|
||||
font-weight: 500;
|
||||
}
|
||||
.cyl_view .top .child_1 {
|
||||
color: #2B2B2B;
|
||||
font-size: 28rpx;
|
||||
font-weight: bold;
|
||||
}
|
||||
.cyl_view .top .child_2 {
|
||||
color: #71675D;
|
||||
font-size: 24rpx;
|
||||
margin: 0 10rpx;
|
||||
}
|
||||
.cyl_view .top .child_3 {
|
||||
border: 1rpx solid #F3C368;
|
||||
border-radius: 5rpx;
|
||||
padding: 0 5rpx;
|
||||
color: #F2C369;
|
||||
font-size: 24rpx;
|
||||
}
|
||||
.cyl_view .center {
|
||||
margin: 20rpx 0;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-evenly;
|
||||
font-weight: 500;
|
||||
}
|
||||
.cyl_view .center .child {
|
||||
background-color: #F5F5F5;
|
||||
border-radius: 10rpx 10rpx 0 0;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
font-size: 26rpx;
|
||||
color: #939393;
|
||||
padding: 10rpx 40rpx;
|
||||
}
|
||||
.cyl_view .center .child.action {
|
||||
background-color: #F2C369;
|
||||
color: #070707;
|
||||
}
|
||||
.cyl_view .bottom .type .item {
|
||||
border-radius: 10rpx;
|
||||
width: 100%;
|
||||
padding: 26rpx 0;
|
||||
}
|
||||
.cyl_view .bottom .type .item .contentC {
|
||||
background-color: #FAFAFC;
|
||||
justify-content: center;
|
||||
height: 120rpx;
|
||||
border-radius: 10rpx;
|
||||
}
|
||||
.cyl_view .bottom .type .item .contentC .titleNumC {
|
||||
font-size: 24rpx;
|
||||
font-weight: bold;
|
||||
color: #2B2B2B;
|
||||
}
|
||||
.cyl_view .bottom .type .item .contentC .titleNumC .num {
|
||||
background-color: #F2C369;
|
||||
margin-left: 6rpx;
|
||||
padding: 0 5rpx;
|
||||
min-width: 24rpx;
|
||||
border-radius: 5rpx;
|
||||
font-weight: 500;
|
||||
text-align: center;
|
||||
}
|
||||
.cyl_view .bottom .type .item .contentC .titleNumC .num.upstream {
|
||||
background-color: #FF5501;
|
||||
color: white;
|
||||
}
|
||||
.cyl_view .bottom .type .item .contentC .titleNumC .num.core {
|
||||
background-color: #175CE6;
|
||||
color: white;
|
||||
}
|
||||
.cyl_view .bottom .type .item .contentC .titleNumC .num.downstream {
|
||||
background-color: #1DB26F;
|
||||
color: white;
|
||||
}
|
||||
.cyl_view .bottom .type .item .contentC .des {
|
||||
margin-top: 10rpx;
|
||||
font-size: 22rpx;
|
||||
font-weight: 500;
|
||||
color: #999999;
|
||||
}
|
||||
.cyl_view .bottom .type .item .contentC.upstream {
|
||||
background-color: #FFF4EF;
|
||||
border: solid 1rpx #FF5501;
|
||||
}
|
||||
.cyl_view .bottom .type .item .contentC.core {
|
||||
background-color: #F2F6FD;
|
||||
border: solid 1rpx #175CE6;
|
||||
}
|
||||
.cyl_view .bottom .type .item .contentC.downstream {
|
||||
background-color: #E7F5F0;
|
||||
border: solid 1rpx #1DB26F;
|
||||
}
|
||||
.cyl_view .bottom .type .item .arrow {
|
||||
margin: 0 6rpx;
|
||||
width: 19rpx;
|
||||
height: auto;
|
||||
}
|
||||
.cyl_view .list {
|
||||
margin-top: 20rpx;
|
||||
}
|
||||
.cyl_view .list .item {
|
||||
background-color: #FAFAFC;
|
||||
margin-bottom: 20rpx;
|
||||
border-radius: 10rpx;
|
||||
padding: 25rpx 20rpx;
|
||||
}
|
||||
.cyl_view .list .item .title {
|
||||
font-size: 28rpx;
|
||||
font-weight: bold;
|
||||
color: #2B2B2B;
|
||||
}
|
||||
.cyl_view .list .item .des {
|
||||
margin-top: 10rpx;
|
||||
font-size: 24rpx;
|
||||
font-weight: 500;
|
||||
color: #999999;
|
||||
}
|
||||
.cyl_view .list .item .labelC {
|
||||
margin-top: 10rpx;
|
||||
}
|
||||
.cyl_view .list .item .labelC .label {
|
||||
margin-right: 10rpx;
|
||||
padding: 0 10rpx;
|
||||
line-height: 30rpx;
|
||||
border-radius: 5rpx;
|
||||
font-size: 20rpx;
|
||||
font-weight: 500;
|
||||
}
|
||||
.cyl_view .list .item .labelC .label.upstream {
|
||||
color: #FF5501;
|
||||
}
|
||||
.cyl_view .list .item .labelC .label.upstream.type {
|
||||
background-color: #FFF4EF;
|
||||
}
|
||||
.cyl_view .list .item .labelC .label.upstream.market {
|
||||
border: solid 1rpx #FF5501;
|
||||
}
|
||||
.cyl_view .list .item .labelC .label.core {
|
||||
color: #175CE6;
|
||||
}
|
||||
.cyl_view .list .item .labelC .label.core.type {
|
||||
background-color: #EDF2FD;
|
||||
}
|
||||
.cyl_view .list .item .labelC .label.core.market {
|
||||
border: solid 1rpx #175CE6;
|
||||
}
|
||||
.cyl_view .list .item .labelC .label.downstream {
|
||||
color: #1DB26F;
|
||||
}
|
||||
.cyl_view .list .item .labelC .label.downstream.type {
|
||||
background-color: #E7F5F0;
|
||||
}
|
||||
.cyl_view .list .item .labelC .label.downstream.market {
|
||||
border: solid 1rpx #1DB26F;
|
||||
}
|
||||
.cyl_view .list .item .importanceC {
|
||||
margin-top: 20rpx;
|
||||
}
|
||||
.cyl_view .list .item .importanceC .title {
|
||||
font-size: 22rpx;
|
||||
font-weight: 500;
|
||||
color: #71675D;
|
||||
}
|
||||
.cyl_view .list .item .importanceC .progressBgC {
|
||||
background-color: #EFEFEF;
|
||||
height: 10rpx;
|
||||
border-radius: 5rpx;
|
||||
margin: 0 15rpx;
|
||||
}
|
||||
.cyl_view .list .item .importanceC .progressBgC .progress {
|
||||
height: 100%;
|
||||
border-radius: 5rpx;
|
||||
}
|
||||
.cyl_view .list .item .importanceC .progressBgC .progress.upstream {
|
||||
background: linear-gradient(90deg, #FF8C53 0%, #FF5501 100%);
|
||||
}
|
||||
.cyl_view .list .item .importanceC .progressBgC .progress.core {
|
||||
background: linear-gradient(90deg, #518BFF 0%, #175CE6 100%);
|
||||
}
|
||||
.cyl_view .list .item .importanceC .progressBgC .progress.downstream {
|
||||
background: linear-gradient(90deg, #48D394 0%, #1DB26F 100%);
|
||||
}
|
||||
.cyl_view .list .item .importanceC .value {
|
||||
font-size: 24rpx;
|
||||
font-weight: 500;
|
||||
color: #71675D;
|
||||
}
|
||||
37
unpackage/dist/dev/mp-weixin/pagesStock/components/fzjg-view/fzjg-view.js
vendored
Normal file
37
unpackage/dist/dev/mp-weixin/pagesStock/components/fzjg-view/fzjg-view.js
vendored
Normal file
@@ -0,0 +1,37 @@
|
||||
"use strict";
|
||||
const common_vendor = require("../../../common/vendor.js");
|
||||
const common_assets = require("../../../common/assets.js");
|
||||
const _sfc_main = {
|
||||
name: "fzjg-view",
|
||||
data() {
|
||||
return {};
|
||||
},
|
||||
props: {
|
||||
branchList: Array
|
||||
}
|
||||
};
|
||||
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
||||
return {
|
||||
a: common_vendor.f($props.branchList, (item, index, i0) => {
|
||||
return common_vendor.e({
|
||||
a: common_vendor.t(item.branch_name),
|
||||
b: item.business_status == "注销"
|
||||
}, item.business_status == "注销" ? {
|
||||
c: common_assets._imports_0$5
|
||||
} : {
|
||||
d: common_assets._imports_1$11
|
||||
}, {
|
||||
e: common_vendor.t(item.business_status),
|
||||
f: common_vendor.n("statusC flex " + (item.business_status == "注销" ? "logOff" : "exist")),
|
||||
g: common_vendor.t(item.register_capital),
|
||||
h: common_vendor.t(item.legal_person),
|
||||
i: common_vendor.t(item.register_date),
|
||||
j: common_vendor.t(item.related_company_count),
|
||||
k: index
|
||||
});
|
||||
})
|
||||
};
|
||||
}
|
||||
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
|
||||
wx.createPage(MiniProgramPage);
|
||||
//# sourceMappingURL=../../../../.sourcemap/mp-weixin/pagesStock/components/fzjg-view/fzjg-view.js.map
|
||||
3
unpackage/dist/dev/mp-weixin/pagesStock/components/fzjg-view/fzjg-view.json
vendored
Normal file
3
unpackage/dist/dev/mp-weixin/pagesStock/components/fzjg-view/fzjg-view.json
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"usingComponents": {}
|
||||
}
|
||||
1
unpackage/dist/dev/mp-weixin/pagesStock/components/fzjg-view/fzjg-view.wxml
vendored
Normal file
1
unpackage/dist/dev/mp-weixin/pagesStock/components/fzjg-view/fzjg-view.wxml
vendored
Normal file
@@ -0,0 +1 @@
|
||||
<view class="branchList"><view wx:for="{{a}}" wx:for-item="item" wx:key="k" class="item"><view class="titleStatusC flex"><view class="title flex1">{{item.a}}</view><view class="{{item.f}}"><image wx:if="{{item.b}}" class="icon" src="{{item.c}}" mode="widthFix"></image><image wx:else class="icon" src="{{item.d}}" mode="widthFix"></image><view>{{item.e}}</view></view></view><view class="infoC topInfo flex"><view class="infoItem leftInfo flex flex1"><view class="title">注册资本</view><view class="content flex1">{{item.g}}</view></view><view class="infoItem rightInfo flex flex1"><view class="title">法人代表</view><view class="content flex1">{{item.h}}</view></view></view><view class="infoC flex"><view class="infoItem leftInfo flex flex1"><view class="title">成立日期</view><view class="content flex1">{{item.i}}</view></view><view class="infoItem rightInfo flex flex1"><view class="title">关联企业</view><view class="content flex1">{{item.j}}家</view></view></view></view></view>
|
||||
61
unpackage/dist/dev/mp-weixin/pagesStock/components/fzjg-view/fzjg-view.wxss
vendored
Normal file
61
unpackage/dist/dev/mp-weixin/pagesStock/components/fzjg-view/fzjg-view.wxss
vendored
Normal file
@@ -0,0 +1,61 @@
|
||||
.branchList {
|
||||
margin-top: 38rpx;
|
||||
padding: 0 20rpx;
|
||||
}
|
||||
.branchList .item {
|
||||
background-color: #FAFAFC;
|
||||
margin-bottom: 20rpx;
|
||||
padding: 20rpx;
|
||||
border-radius: 10rpx;
|
||||
}
|
||||
.branchList .item .titleStatusC {
|
||||
font-size: 28rpx;
|
||||
font-weight: bold;
|
||||
color: #2B2B2B;
|
||||
}
|
||||
.branchList .item .titleStatusC .statusC {
|
||||
padding: 0 10rpx;
|
||||
line-height: 28rpx;
|
||||
border-radius: 15rpx;
|
||||
font-size: 20rpx;
|
||||
font-weight: 500;
|
||||
}
|
||||
.branchList .item .titleStatusC .statusC .icon {
|
||||
margin-right: 3rpx;
|
||||
width: 16rpx;
|
||||
height: auto;
|
||||
}
|
||||
.branchList .item .titleStatusC .statusC.exist {
|
||||
background-color: #FFF7E9;
|
||||
border: solid 1rpx #F2C369;
|
||||
color: #F2C369;
|
||||
}
|
||||
.branchList .item .titleStatusC .statusC.logOff {
|
||||
background-color: #FFF1F1;
|
||||
border: solid 1rpx #EF3535;
|
||||
color: #EF3535;
|
||||
}
|
||||
.branchList .item .infoC {
|
||||
height: 50rpx;
|
||||
}
|
||||
.branchList .item .infoC .infoItem .title {
|
||||
margin-right: 16rpx;
|
||||
font-size: 22rpx;
|
||||
font-weight: 500;
|
||||
color: #999;
|
||||
}
|
||||
.branchList .item .infoC .infoItem .content {
|
||||
font-size: 24rpx;
|
||||
font-weight: bold;
|
||||
color: #2A2A2A;
|
||||
text-align: right;
|
||||
}
|
||||
.branchList .item .infoC .infoItem.leftInfo {
|
||||
margin-right: 20rpx;
|
||||
}
|
||||
.branchList .item .infoC .infoItem.rightInfo {
|
||||
margin-left: 20rpx;
|
||||
}
|
||||
.branchList .item .infoC.topInfo {
|
||||
margin-top: 10rpx;
|
||||
}
|
||||
104
unpackage/dist/dev/mp-weixin/pagesStock/components/fzlc-view/fzlc-view.js
vendored
Normal file
104
unpackage/dist/dev/mp-weixin/pagesStock/components/fzlc-view/fzlc-view.js
vendored
Normal file
@@ -0,0 +1,104 @@
|
||||
"use strict";
|
||||
const utils_util = require("../../../utils/util.js");
|
||||
const common_vendor = require("../../../common/vendor.js");
|
||||
const common_assets = require("../../../common/assets.js");
|
||||
const _sfc_main = {
|
||||
name: "fzlc-view",
|
||||
data() {
|
||||
return {
|
||||
getRateUpOrDown: utils_util.getRateUpOrDown
|
||||
};
|
||||
},
|
||||
props: {
|
||||
keyFactorsInfo: null,
|
||||
keyFactorsList: Array,
|
||||
//关键因素数组
|
||||
timelineInfo: null,
|
||||
timelineList: Array
|
||||
//发展时间线数组
|
||||
},
|
||||
methods: {
|
||||
clickAction(item) {
|
||||
this.$emit("detail", item);
|
||||
}
|
||||
}
|
||||
};
|
||||
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
||||
return common_vendor.e({
|
||||
a: $props.keyFactorsInfo
|
||||
}, $props.keyFactorsInfo ? {
|
||||
b: common_vendor.t($props.keyFactorsInfo.total_factors)
|
||||
} : {}, {
|
||||
c: common_vendor.f($props.keyFactorsList, (item, index, i0) => {
|
||||
return common_vendor.e({
|
||||
a: common_vendor.t(item.category_name),
|
||||
b: common_vendor.t(item.factors.length),
|
||||
c: item.show
|
||||
}, item.show ? {
|
||||
d: common_assets._imports_0$6
|
||||
} : {
|
||||
e: common_assets._imports_1$13
|
||||
}, {
|
||||
f: item.show
|
||||
}, item.show ? {
|
||||
g: common_vendor.f(item.factors, (fitem, findex, i1) => {
|
||||
return common_vendor.e({
|
||||
a: common_vendor.t(fitem.factor_name),
|
||||
b: fitem.impact_direction == "negative"
|
||||
}, fitem.impact_direction == "negative" ? {} : {}, {
|
||||
c: fitem.impact_direction == "neutral"
|
||||
}, fitem.impact_direction == "neutral" ? {} : {}, {
|
||||
d: fitem.impact_direction == "positive"
|
||||
}, fitem.impact_direction == "positive" ? {} : {}, {
|
||||
e: common_vendor.t(fitem.factor_value),
|
||||
f: common_vendor.t(fitem.factor_unit),
|
||||
g: common_vendor.n("value " + fitem.impact_direction),
|
||||
h: $data.getRateUpOrDown(fitem.year_on_year)
|
||||
}, $data.getRateUpOrDown(fitem.year_on_year) ? {
|
||||
i: common_assets._imports_0$7
|
||||
} : {
|
||||
j: common_assets._imports_1$14
|
||||
}, {
|
||||
k: common_vendor.t(fitem.year_on_year ? fitem.year_on_year : 0),
|
||||
l: common_vendor.n("chgC flex " + ($data.getRateUpOrDown(fitem.year_on_year) ? "down" : "up")),
|
||||
m: common_vendor.t(fitem.factor_desc),
|
||||
n: common_vendor.t(fitem.impact_weight),
|
||||
o: findex
|
||||
});
|
||||
})
|
||||
} : {}, {
|
||||
h: index,
|
||||
i: common_vendor.o(($event) => item.show = !item.show, index)
|
||||
});
|
||||
}),
|
||||
d: $props.timelineInfo
|
||||
}, $props.timelineInfo ? {
|
||||
e: common_vendor.t($props.timelineInfo.positive_events),
|
||||
f: common_vendor.t($props.timelineInfo.negative_events)
|
||||
} : {}, {
|
||||
g: common_vendor.f($props.timelineList, (item, index, i0) => {
|
||||
return common_vendor.e({
|
||||
a: item.impact_metrics.is_positive == 1
|
||||
}, item.impact_metrics.is_positive == 1 ? {
|
||||
b: common_assets._imports_4$13
|
||||
} : {
|
||||
c: common_assets._imports_5$8
|
||||
}, {
|
||||
d: common_vendor.n("line flex1 " + (item.impact_metrics.is_positive == 1 ? "up" : "down")),
|
||||
e: common_vendor.t(item.event_title),
|
||||
f: common_vendor.t(item.event_type),
|
||||
g: common_vendor.n("eventType " + (item.impact_metrics.is_positive == 1 ? "up" : "down")),
|
||||
h: common_vendor.t(item.event_date),
|
||||
i: common_vendor.t(item.event_desc),
|
||||
j: common_vendor.n("progress " + (item.impact_metrics.is_positive == 1 ? "up" : "down")),
|
||||
k: `${item.impact_metrics.impact_score}%`,
|
||||
l: common_vendor.t(item.impact_metrics.impact_score),
|
||||
m: index,
|
||||
n: common_vendor.o(($event) => $options.clickAction(item), index)
|
||||
});
|
||||
})
|
||||
});
|
||||
}
|
||||
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
|
||||
wx.createPage(MiniProgramPage);
|
||||
//# sourceMappingURL=../../../../.sourcemap/mp-weixin/pagesStock/components/fzlc-view/fzlc-view.js.map
|
||||
3
unpackage/dist/dev/mp-weixin/pagesStock/components/fzlc-view/fzlc-view.json
vendored
Normal file
3
unpackage/dist/dev/mp-weixin/pagesStock/components/fzlc-view/fzlc-view.json
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"usingComponents": {}
|
||||
}
|
||||
1
unpackage/dist/dev/mp-weixin/pagesStock/components/fzlc-view/fzlc-view.wxml
vendored
Normal file
1
unpackage/dist/dev/mp-weixin/pagesStock/components/fzlc-view/fzlc-view.wxml
vendored
Normal file
@@ -0,0 +1 @@
|
||||
<view style="padding:25rpx 20rpx;box-sizing:border-box"><view wx:if="{{a}}" class="flex" style="font-size:28rpx"><text>关键因素</text><text style="font-size:24rpx;color:#070707;padding:0rpx 10rpx;border-radius:3rpx;background-color:#F2C369;margin-left:10rpx">{{b}}</text></view><view class="keyFactorsList"><view wx:for="{{c}}" wx:for-item="item" wx:key="h" class="item" bindtap="{{item.i}}" style="margin:20rpx 0;background-color:#FAFAFC;border-radius:10rpx;padding:25rpx 20rpx;color:#2B2B2B"><view style="display:flex;align-items:center;justify-content:space-between"><view style="flex:1;font-size:26rpx"><text>{{item.a}}</text><text style="font-size:24rpx;color:#070707;padding:0rpx 10rpx;border-radius:3rpx;background-color:#F2C369;margin-left:10rpx">{{item.b}}</text></view><image wx:if="{{item.c}}" style="width:20rpx;height:12rpx" src="{{item.d}}" mode="widthFix"></image><image wx:else style="width:20rpx;height:12rpx" src="{{item.e}}" mode="widthFix"></image></view><block wx:if="{{item.f}}"><view wx:for="{{item.g}}" wx:for-item="fitem" wx:key="o" class="fitem" style="margin:20rpx 0;padding:20rpx;background-color:white;border-radius:10rpx;border:1rpx solid #E7E7E7;color:#2B2B2B;font-weight:500;font-size:26rpx"><view class="titleImpactC flex between"><view>{{fitem.a}}</view><view wx:if="{{fitem.b}}" class="impact negative">负面</view><view wx:if="{{fitem.c}}" class="impact neutral">中性</view><view wx:if="{{fitem.d}}" class="impact positive">正面</view></view><view class="valueChgC flex" style="margin-top:10rpx"><view class="{{fitem.g}}">{{fitem.e}}{{fitem.f}}</view><view class="{{fitem.l}}"><image wx:if="{{fitem.h}}" class="icon" src="{{fitem.i}}" mode="widthFix"></image><image wx:else class="icon" src="{{fitem.j}}" mode="widthFix"></image><view>{{fitem.k}}%</view></view></view><view style="margin-top:10rpx;color:#999999;font-size:22rpx">{{fitem.m}}</view><view style="margin-top:10rpx;color:#999999;font-size:22rpx">影响权重: {{fitem.n}}</view></view></block></view></view><view wx:if="{{d}}" class="flex" style="font-size:28rpx"><text>发展时间线</text><text style="font-size:24rpx;color:white;padding:0rpx 10rpx;border-radius:3rpx;background-color:#EC3440;margin-left:10rpx">正面 {{e}}</text><text style="font-size:24rpx;color:white;padding:0rpx 10rpx;border-radius:3rpx;background-color:#345423;margin-left:10rpx">负面 {{f}}</text></view><view class="timelineList"><view wx:for="{{g}}" wx:for-item="item" wx:key="m" class="item" bindtap="{{item.n}}"><view class="impactC flexColumnCenter"><image wx:if="{{item.a}}" class="icon" style="margin-top:20rpx" src="{{item.b}}" mode="widthFix"></image><image wx:else class="icon" src="{{item.c}}" mode="widthFix"></image><view class="{{item.d}}"></view></view><view style="flex:1;margin-left:10rpx;background-color:#FAFAFC;padding:24rpx 15rpx;border-radius:10rpx;font-weight:500"><view class="titleTypeC"><text class="title">{{item.e}}</text><text class="{{item.g}}">{{item.f}}</text></view><view style="color:#999999;font-size:20rpx;margin:15rpx 0">{{item.h}}</view><view style="color:#71675D;font-size:22rpx">{{item.i}}</view><view style="display:flex;align-items:center;margin-top:30rpx"><view style="color:#71675D;font-size:22rpx;font-weight:500">影响度</view><view class="progressBgC"><view class="{{item.j}}" style="{{'width:' + item.k}}"></view></view><view style="color:#71675D;font-size:24rpx;font-weight:500">{{item.l}}</view></view></view></view></view></view>
|
||||
105
unpackage/dist/dev/mp-weixin/pagesStock/components/fzlc-view/fzlc-view.wxss
vendored
Normal file
105
unpackage/dist/dev/mp-weixin/pagesStock/components/fzlc-view/fzlc-view.wxss
vendored
Normal file
@@ -0,0 +1,105 @@
|
||||
.keyFactorsList .item .fitem .impact {
|
||||
border-radius: 5rpx;
|
||||
padding: 0 10rpx;
|
||||
font-size: 20rpx;
|
||||
font-weight: 500;
|
||||
color: white;
|
||||
}
|
||||
.keyFactorsList .item .fitem .impact.negative {
|
||||
background-color: #345423;
|
||||
}
|
||||
.keyFactorsList .item .fitem .impact.neutral {
|
||||
background-color: #345423;
|
||||
}
|
||||
.keyFactorsList .item .fitem .impact.positive {
|
||||
background-color: #EC3440;
|
||||
}
|
||||
.keyFactorsList .item .fitem .valueChgC .value {
|
||||
font-size: 30rpx;
|
||||
font-weight: bold;
|
||||
margin-right: 10rpx;
|
||||
}
|
||||
.keyFactorsList .item .fitem .valueChgC .value.negative {
|
||||
color: #345423;
|
||||
}
|
||||
.keyFactorsList .item .fitem .valueChgC .value.neutral {
|
||||
color: #345423;
|
||||
}
|
||||
.keyFactorsList .item .fitem .valueChgC .value.positive {
|
||||
color: #EC3440;
|
||||
}
|
||||
.keyFactorsList .item .fitem .valueChgC .chgC {
|
||||
padding: 0 10rpx;
|
||||
border-radius: 5rpx;
|
||||
font-size: 20rpx;
|
||||
}
|
||||
.keyFactorsList .item .fitem .valueChgC .chgC .icon {
|
||||
margin-right: 5rpx;
|
||||
width: 11rpx;
|
||||
height: auto;
|
||||
}
|
||||
.keyFactorsList .item .fitem .valueChgC .chgC.down {
|
||||
border: 1rpx solid #345423;
|
||||
color: #345423;
|
||||
}
|
||||
.keyFactorsList .item .fitem .valueChgC .chgC.up {
|
||||
border: 1rpx solid #EC3440;
|
||||
color: #EC3440;
|
||||
}
|
||||
.timelineList .item {
|
||||
display: flex;
|
||||
margin: 20rpx 0;
|
||||
border-radius: 10rpx;
|
||||
}
|
||||
.timelineList .item .impactC .icon {
|
||||
width: 30rpx;
|
||||
height: auto;
|
||||
}
|
||||
.timelineList .item .impactC .line {
|
||||
margin: 10rpx 0 -30rpx;
|
||||
width: 1rpx;
|
||||
}
|
||||
.timelineList .item .impactC .line.up {
|
||||
border-left: 1rpx dashed #EC3440;
|
||||
}
|
||||
.timelineList .item .impactC .line.down {
|
||||
border-left: 1rpx dashed #345423;
|
||||
}
|
||||
.timelineList .item .titleTypeC .title {
|
||||
margin-right: 10rpx;
|
||||
font-size: 24rpx;
|
||||
font-weight: bold;
|
||||
color: #2A2A2A;
|
||||
}
|
||||
.timelineList .item .titleTypeC .eventType {
|
||||
padding: 5rpx 10rpx;
|
||||
border-radius: 5rpx;
|
||||
font-size: 20rpx;
|
||||
font-weight: 500;
|
||||
}
|
||||
.timelineList .item .titleTypeC .eventType.up {
|
||||
background-color: #FFE7E9;
|
||||
color: #EC3440;
|
||||
}
|
||||
.timelineList .item .titleTypeC .eventType.down {
|
||||
background-color: #DEEED6;
|
||||
color: #345423;
|
||||
}
|
||||
.timelineList .item .progressBgC {
|
||||
background-color: #EFEFEF;
|
||||
margin: 0 15rpx;
|
||||
width: 200rpx;
|
||||
height: 10rpx;
|
||||
border-radius: 5rpx;
|
||||
overflow: hidden;
|
||||
}
|
||||
.timelineList .item .progressBgC .progress {
|
||||
height: 100%;
|
||||
border-radius: 5rpx;
|
||||
}
|
||||
.timelineList .item .progressBgC .progress.up {
|
||||
background: linear-gradient(to right, #FF525D, #EC3440);
|
||||
}
|
||||
.timelineList .item .progressBgC .progress.down {
|
||||
background: linear-gradient(to right, #537D3D, #345423);
|
||||
}
|
||||
89
unpackage/dist/dev/mp-weixin/pagesStock/components/gltd-view/gltd-view.js
vendored
Normal file
89
unpackage/dist/dev/mp-weixin/pagesStock/components/gltd-view/gltd-view.js
vendored
Normal file
@@ -0,0 +1,89 @@
|
||||
"use strict";
|
||||
const utils_util = require("../../../utils/util.js");
|
||||
const common_vendor = require("../../../common/vendor.js");
|
||||
const common_assets = require("../../../common/assets.js");
|
||||
const _sfc_main = {
|
||||
name: "gltd-view",
|
||||
data() {
|
||||
return {
|
||||
getLastNameStr: utils_util.getLastNameStr,
|
||||
//获取姓
|
||||
getAgeByBirthYear: utils_util.getAgeByBirthYear
|
||||
//获取年龄
|
||||
};
|
||||
},
|
||||
props: {
|
||||
managementList: Array
|
||||
},
|
||||
methods: {
|
||||
/**
|
||||
* 点击展开或收起管理团队人员
|
||||
*/
|
||||
clickExpandOrRetractManagement(index) {
|
||||
this.managementList[index].isExpand = !this.managementList[index].isExpand;
|
||||
}
|
||||
}
|
||||
};
|
||||
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
||||
return {
|
||||
a: common_vendor.f($props.managementList, (item, index, i0) => {
|
||||
return common_vendor.e({
|
||||
a: item.list.length > 0
|
||||
}, item.list.length > 0 ? {
|
||||
b: common_vendor.t(item.key),
|
||||
c: common_vendor.t(item.list.length)
|
||||
} : {}, {
|
||||
d: item.list.length > 4 && !item.isExpand
|
||||
}, item.list.length > 4 && !item.isExpand ? {
|
||||
e: common_vendor.f(item.list.slice(0, 4), (pitem, pindex, i1) => {
|
||||
return common_vendor.e({
|
||||
a: common_vendor.t($data.getLastNameStr(pitem.name)),
|
||||
b: pitem.gender == "女"
|
||||
}, pitem.gender == "女" ? {
|
||||
c: common_assets._imports_0$8
|
||||
} : {
|
||||
d: common_assets._imports_1$15
|
||||
}, {
|
||||
e: common_vendor.n("sexC flexCenter absolute " + (pitem.gender == "女" ? "female" : "male")),
|
||||
f: common_vendor.t(pitem.name),
|
||||
g: common_vendor.t(pitem.position_name),
|
||||
h: common_vendor.t(pitem.start_date),
|
||||
i: common_vendor.t(pitem.education),
|
||||
j: common_vendor.t($data.getAgeByBirthYear(pitem.birth_year))
|
||||
});
|
||||
}),
|
||||
f: index
|
||||
} : {
|
||||
g: common_vendor.f(item.list, (pitem, pindex, i1) => {
|
||||
return common_vendor.e({
|
||||
a: common_vendor.t($data.getLastNameStr(pitem.name)),
|
||||
b: pitem.gender == "女"
|
||||
}, pitem.gender == "女" ? {
|
||||
c: common_assets._imports_0$8
|
||||
} : {
|
||||
d: common_assets._imports_1$15
|
||||
}, {
|
||||
e: common_vendor.n("sexC flexCenter absolute " + (pitem.gender == "女" ? "female" : "male")),
|
||||
f: common_vendor.t(pitem.name),
|
||||
g: common_vendor.t(pitem.position_name),
|
||||
h: common_vendor.t(pitem.start_date),
|
||||
i: common_vendor.t(pitem.education),
|
||||
j: common_vendor.t($data.getAgeByBirthYear(pitem.birth_year))
|
||||
});
|
||||
}),
|
||||
h: index
|
||||
}, {
|
||||
i: item.list.length > 4
|
||||
}, item.list.length > 4 ? {
|
||||
j: common_vendor.t(item.isExpand ? "收起" : "展开查看"),
|
||||
k: common_assets._imports_2$14,
|
||||
l: common_vendor.o(($event) => $options.clickExpandOrRetractManagement(index), index)
|
||||
} : {}, {
|
||||
m: index
|
||||
});
|
||||
})
|
||||
};
|
||||
}
|
||||
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
|
||||
wx.createPage(MiniProgramPage);
|
||||
//# sourceMappingURL=../../../../.sourcemap/mp-weixin/pagesStock/components/gltd-view/gltd-view.js.map
|
||||
3
unpackage/dist/dev/mp-weixin/pagesStock/components/gltd-view/gltd-view.json
vendored
Normal file
3
unpackage/dist/dev/mp-weixin/pagesStock/components/gltd-view/gltd-view.json
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"usingComponents": {}
|
||||
}
|
||||
1
unpackage/dist/dev/mp-weixin/pagesStock/components/gltd-view/gltd-view.wxml
vendored
Normal file
1
unpackage/dist/dev/mp-weixin/pagesStock/components/gltd-view/gltd-view.wxml
vendored
Normal file
@@ -0,0 +1 @@
|
||||
<view class="managementTeamList"><block wx:for="{{a}}" wx:for-item="item" wx:key="m"><view wx:if="{{item.a}}" class="positionNumC flex"><view class="position">{{item.b}}</view><view class="num director">{{item.c}}人</view></view><block wx:if="{{item.d}}"><view wx:for="{{item.e}}" wx:for-item="pitem" wx:key="f" class="item flex"><view class="avatarC flexCenter relative director">{{pitem.a}} <view class="{{pitem.e}}"><image wx:if="{{pitem.b}}" class="icon" src="{{pitem.c}}" mode="widthFix"></image><image wx:else class="icon" src="{{pitem.d}}" mode="widthFix"></image></view></view><view class="flex1"><view class="flex"><view class="name">{{pitem.f}}</view><view class="position">{{pitem.g}}</view><view class="date flex1">任职日期:{{pitem.h}}</view></view><view class="educationAgeC flex"><view class="education label">{{pitem.i}}</view><view class="age label">{{pitem.j}}岁</view></view></view></view></block><block wx:else><view wx:for="{{item.g}}" wx:for-item="pitem" wx:key="h" class="item flex"><view class="avatarC flexCenter relative director">{{pitem.a}} <view class="{{pitem.e}}"><image wx:if="{{pitem.b}}" class="icon" src="{{pitem.c}}" mode="widthFix"></image><image wx:else class="icon" src="{{pitem.d}}" mode="widthFix"></image></view></view><view class="flex1"><view class="flex"><view class="name">{{pitem.f}}</view><view class="position">{{pitem.g}}</view><view class="date flex1">任职日期:{{pitem.h}}</view></view><view class="educationAgeC flex"><view class="education label">{{pitem.i}}</view><view class="age label">{{pitem.j}}岁</view></view></view></view></block><view wx:if="{{item.i}}" class="expandMoreC flexCenter" bindtap="{{item.l}}"><view>{{item.j}}</view><image class="arrow" src="{{item.k}}" mode="widthFix"></image></view></block></view>
|
||||
111
unpackage/dist/dev/mp-weixin/pagesStock/components/gltd-view/gltd-view.wxss
vendored
Normal file
111
unpackage/dist/dev/mp-weixin/pagesStock/components/gltd-view/gltd-view.wxss
vendored
Normal file
@@ -0,0 +1,111 @@
|
||||
.managementTeamList {
|
||||
padding: 0 20rpx;
|
||||
}
|
||||
.managementTeamList .positionNumC {
|
||||
height: 70rpx;
|
||||
}
|
||||
.managementTeamList .positionNumC .position {
|
||||
margin-right: 11rpx;
|
||||
font-size: 28rpx;
|
||||
font-weight: bold;
|
||||
}
|
||||
.managementTeamList .positionNumC .num {
|
||||
padding: 0 14rpx;
|
||||
line-height: 30rpx;
|
||||
border-radius: 5rpx;
|
||||
font-size: 20rpx;
|
||||
font-weight: bold;
|
||||
color: white;
|
||||
}
|
||||
.managementTeamList .positionNumC .num.director {
|
||||
background-color: #99AFEC;
|
||||
}
|
||||
.managementTeamList .positionNumC .num.supervisor {
|
||||
background-color: #B499EC;
|
||||
}
|
||||
.managementTeamList .positionNumC .num.other {
|
||||
background-color: #B5B5C9;
|
||||
}
|
||||
.managementTeamList .item {
|
||||
background-color: #FAFAFC;
|
||||
margin-bottom: 20rpx;
|
||||
padding: 20rpx 25rpx 20rpx 20rpx;
|
||||
border-radius: 10rpx;
|
||||
}
|
||||
.managementTeamList .item .avatarC {
|
||||
margin-right: 18rpx;
|
||||
width: 80rpx;
|
||||
height: 80rpx;
|
||||
border-radius: 50%;
|
||||
font-size: 30rpx;
|
||||
font-weight: bold;
|
||||
color: white;
|
||||
}
|
||||
.managementTeamList .item .avatarC .sexC {
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
width: 30rpx;
|
||||
height: 30rpx;
|
||||
border-radius: 50%;
|
||||
border: solid 2rpx white;
|
||||
}
|
||||
.managementTeamList .item .avatarC .sexC .icon {
|
||||
width: 16rpx;
|
||||
height: auto;
|
||||
}
|
||||
.managementTeamList .item .avatarC .sexC.female {
|
||||
background-color: #FA5A93;
|
||||
}
|
||||
.managementTeamList .item .avatarC .sexC.male {
|
||||
background-color: #3E6CFC;
|
||||
}
|
||||
.managementTeamList .item .avatarC.director {
|
||||
background-color: #99AFEC;
|
||||
}
|
||||
.managementTeamList .item .avatarC.supervisor {
|
||||
background-color: #B499EC;
|
||||
}
|
||||
.managementTeamList .item .avatarC.other {
|
||||
background-color: #B5B5C9;
|
||||
}
|
||||
.managementTeamList .item .name {
|
||||
margin-right: 13rpx;
|
||||
font-size: 24rpx;
|
||||
font-weight: bold;
|
||||
color: #666;
|
||||
}
|
||||
.managementTeamList .item .position {
|
||||
font-size: 22rpx;
|
||||
font-weight: 500;
|
||||
color: #999;
|
||||
}
|
||||
.managementTeamList .item .date {
|
||||
font-size: 20rpx;
|
||||
font-weight: 500;
|
||||
color: #999;
|
||||
text-align: right;
|
||||
}
|
||||
.managementTeamList .item .educationAgeC {
|
||||
margin-top: 8rpx;
|
||||
}
|
||||
.managementTeamList .item .educationAgeC .label {
|
||||
margin-right: 10rpx;
|
||||
background-color: #F1F1F1;
|
||||
line-height: 30rpx;
|
||||
padding: 0 16rpx;
|
||||
font-size: 20rpx;
|
||||
font-weight: 500;
|
||||
color: #999;
|
||||
}
|
||||
.managementTeamList .expandMoreC {
|
||||
height: 80rpx;
|
||||
border-bottom: solid 1rpx #E7E7E7;
|
||||
font-size: 24rpx;
|
||||
font-weight: 500;
|
||||
color: #C9C9C9;
|
||||
}
|
||||
.managementTeamList .expandMoreC .arrow {
|
||||
margin-left: 18rpx;
|
||||
width: 11rpx;
|
||||
height: auto;
|
||||
}
|
||||
88
unpackage/dist/dev/mp-weixin/pagesStock/components/gqjg-view/gqjg-view.js
vendored
Normal file
88
unpackage/dist/dev/mp-weixin/pagesStock/components/gqjg-view/gqjg-view.js
vendored
Normal file
@@ -0,0 +1,88 @@
|
||||
"use strict";
|
||||
const utils_util = require("../../../utils/util.js");
|
||||
const common_vendor = require("../../../common/vendor.js");
|
||||
const common_assets = require("../../../common/assets.js");
|
||||
const _sfc_main = {
|
||||
name: "gqjg-view",
|
||||
data() {
|
||||
return {
|
||||
getNumStr: utils_util.getNumStr,
|
||||
getRateUpOrDown: utils_util.getRateUpOrDown,
|
||||
getRateStr: utils_util.getRateStr
|
||||
};
|
||||
},
|
||||
props: {
|
||||
actualControlInfo: Object,
|
||||
//实际控制人信息
|
||||
concentrationList: Array,
|
||||
//股权集中度列表
|
||||
shareholdersList: Array,
|
||||
//十大股东列表
|
||||
circulatingShareholdersList: Array,
|
||||
//十大流通股东列表
|
||||
competitivePositionInfo: Object
|
||||
//竞争地位信息
|
||||
}
|
||||
};
|
||||
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
||||
return common_vendor.e({
|
||||
a: $props.actualControlInfo
|
||||
}, $props.actualControlInfo ? common_vendor.e({
|
||||
b: common_vendor.t($props.actualControlInfo.actual_controller_name),
|
||||
c: common_vendor.t($props.actualControlInfo.control_type),
|
||||
d: common_vendor.t($props.actualControlInfo.end_date),
|
||||
e: $props.actualControlInfo.holding_ratio
|
||||
}, $props.actualControlInfo.holding_ratio ? {
|
||||
f: common_vendor.t($props.actualControlInfo.holding_ratio.toFixed(2))
|
||||
} : {}, {
|
||||
g: common_vendor.t($data.getNumStr($props.actualControlInfo.holding_shares))
|
||||
}) : {}, {
|
||||
h: $props.concentrationList.length > 0
|
||||
}, $props.concentrationList.length > 0 ? {
|
||||
i: common_vendor.t($props.concentrationList[0].end_date)
|
||||
} : {}, {
|
||||
j: common_vendor.f($props.concentrationList, (item, index, i0) => {
|
||||
return common_vendor.e({
|
||||
a: common_vendor.t(item.stat_item),
|
||||
b: common_vendor.t(item.holding_ratio.toFixed(2)),
|
||||
c: item.ratio_change != 0
|
||||
}, item.ratio_change != 0 ? common_vendor.e({
|
||||
d: $data.getRateUpOrDown(item.ratio_change)
|
||||
}, $data.getRateUpOrDown(item.ratio_change) ? {
|
||||
e: common_assets._imports_0$7
|
||||
} : {
|
||||
f: common_assets._imports_1$14
|
||||
}, {
|
||||
g: common_vendor.t($data.getRateStr(item.ratio_change)),
|
||||
h: common_vendor.n("shengjiang flex " + ($data.getRateUpOrDown(item.ratio_change) ? "down" : "up"))
|
||||
}) : {}, {
|
||||
i: index
|
||||
});
|
||||
}),
|
||||
k: common_vendor.f($props.shareholdersList, (item, index, i0) => {
|
||||
return {
|
||||
a: common_vendor.t(item.shareholder_name),
|
||||
b: common_vendor.t(item.shareholder_type ? item.shareholder_type : "-"),
|
||||
c: common_vendor.t($data.getNumStr(item.holding_shares)),
|
||||
d: common_vendor.t(item.total_share_ratio),
|
||||
e: common_vendor.t(item.share_nature),
|
||||
f: index,
|
||||
g: index % 2 == 1 ? 1 : ""
|
||||
};
|
||||
}),
|
||||
l: common_vendor.f($props.circulatingShareholdersList, (item, index, i0) => {
|
||||
return {
|
||||
a: common_vendor.t(item.shareholder_name),
|
||||
b: common_vendor.t(item.shareholder_type ? item.shareholder_type : "-"),
|
||||
c: common_vendor.t($data.getNumStr(item.holding_shares)),
|
||||
d: common_vendor.t(item.total_share_ratio),
|
||||
e: common_vendor.t(item.share_nature),
|
||||
f: index,
|
||||
g: index % 2 == 1 ? 1 : ""
|
||||
};
|
||||
})
|
||||
});
|
||||
}
|
||||
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
|
||||
wx.createPage(MiniProgramPage);
|
||||
//# sourceMappingURL=../../../../.sourcemap/mp-weixin/pagesStock/components/gqjg-view/gqjg-view.js.map
|
||||
3
unpackage/dist/dev/mp-weixin/pagesStock/components/gqjg-view/gqjg-view.json
vendored
Normal file
3
unpackage/dist/dev/mp-weixin/pagesStock/components/gqjg-view/gqjg-view.json
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"usingComponents": {}
|
||||
}
|
||||
1
unpackage/dist/dev/mp-weixin/pagesStock/components/gqjg-view/gqjg-view.wxml
vendored
Normal file
1
unpackage/dist/dev/mp-weixin/pagesStock/components/gqjg-view/gqjg-view.wxml
vendored
Normal file
@@ -0,0 +1 @@
|
||||
<view class="com_list"><view class="item"><view class="flex"><view class="title">实际控制人</view></view><view wx:if="{{a}}" class="com_info"><view class="left"><view class="l_top">{{b}}</view><view class="l_bottom"><view class="l_b_left">{{c}}</view><view class="l_b_right">截至 {{d}}</view></view></view><view class="right"><view class="r_top">控制比例</view><view wx:if="{{e}}" class="r_center">{{f}}%</view><view class="r_bottom">{{g}}股</view></view></view><view class="flex"><view class="title">股权集中度</view></view><view class="guquan"><view wx:if="{{h}}" class="top">{{i}}</view><view class="bottom"><view class="b_item flexWrap"><view wx:for="{{j}}" wx:for-item="item" wx:key="i" class="item_info flex"><view class="left flex1">{{item.a}}</view><view class="right flex"><view class="bili">{{item.b}}%</view><view wx:if="{{item.c}}" class="{{item.h}}"><image wx:if="{{item.d}}" class="icon" src="{{item.e}}" mode="widthFix"></image><image wx:else class="icon" src="{{item.f}}" mode="widthFix"></image><view>{{item.g}}%</view></view></view></view></view></view></view><view class="flex"><view class="title">十大股东</view></view><view class="gudong"><view class="back"><view class="top action"><view class="head">股东名称</view><view class="head">股东类型</view><view class="head" style="text-align:center">持股数量</view><view class="head" style="text-align:center">持股比例</view><view class="head" style="text-align:center">股份性质</view></view><view wx:for="{{k}}" wx:for-item="item" wx:key="f" class="{{['top', item.g && 'action']}}"><view class="child">{{item.a}}</view><view class="child">{{item.b}}</view><view class="child" style="text-align:center">{{item.c}}股</view><view class="child" style="color:#3E87CF;font-weight:bold;text-align:center">{{item.d}}%</view><view class="nature">{{item.e}}</view></view></view></view><view class="flex"><view class="title">十大流通股东 </view></view><view class="gudong"><view class="back"><view class="top action"><view class="head">股东名称</view><view class="head">股东类型</view><view class="head" style="text-align:center">持股数量</view><view class="head" style="text-align:center">流通股比例</view><view class="head" style="text-align:center">股份性质</view></view><view wx:for="{{l}}" wx:for-item="item" wx:key="f" class="{{['top', item.g && 'action']}}"><view class="child">{{item.a}}</view><view class="child">{{item.b}}</view><view class="child" style="text-align:center">{{item.c}}股</view><view class="child" style="color:#893ECF;font-weight:bold;text-align:center">{{item.d}}%</view><view class="nature">{{item.e}}</view></view></view></view></view></view>
|
||||
154
unpackage/dist/dev/mp-weixin/pagesStock/components/gqjg-view/gqjg-view.wxss
vendored
Normal file
154
unpackage/dist/dev/mp-weixin/pagesStock/components/gqjg-view/gqjg-view.wxss
vendored
Normal file
@@ -0,0 +1,154 @@
|
||||
.com_list {
|
||||
margin-top: 38rpx;
|
||||
padding: 0 20rpx;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.com_list .title {
|
||||
color: #2B2B2B;
|
||||
font-size: 28rpx;
|
||||
font-weight: bold;
|
||||
}
|
||||
.com_list .item .com_info {
|
||||
margin: 20rpx 0;
|
||||
background-color: #FAFAFC;
|
||||
border-radius: 10rpx;
|
||||
padding: 25rpx 20rpx;
|
||||
box-sizing: border-box;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
font-weight: 500;
|
||||
}
|
||||
.com_list .item .com_info .left .l_top {
|
||||
color: #666666;
|
||||
font-size: 24rpx;
|
||||
}
|
||||
.com_list .item .com_info .left .l_bottom {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-top: 10rpx;
|
||||
}
|
||||
.com_list .item .com_info .left .l_bottom .l_b_left {
|
||||
background-color: #99AFEC;
|
||||
border-radius: 10rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
color: white;
|
||||
font-size: 20rpx;
|
||||
padding: 5rpx;
|
||||
}
|
||||
.com_list .item .com_info .left .l_bottom .l_b_right {
|
||||
margin-left: 10rpx;
|
||||
color: #999999;
|
||||
font-size: 22rpx;
|
||||
}
|
||||
.com_list .item .com_info .right {
|
||||
color: #71675D;
|
||||
font-size: 20rpx;
|
||||
text-align: right;
|
||||
}
|
||||
.com_list .item .com_info .right .r_center {
|
||||
color: #BB8520;
|
||||
font-size: 28rpx;
|
||||
font-weight: bold;
|
||||
margin: 5rpx 0;
|
||||
}
|
||||
.com_list .item .guquan {
|
||||
margin: 25rpx 0;
|
||||
font-weight: 500;
|
||||
background-color: #FAFAFC;
|
||||
border-radius: 10rpx;
|
||||
padding: 25rpx 13rpx;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.com_list .item .guquan .top {
|
||||
color: #999999;
|
||||
font-size: 22rpx;
|
||||
}
|
||||
.com_list .item .guquan .bottom {
|
||||
display: flex;
|
||||
}
|
||||
.com_list .item .guquan .bottom .b_item .item_info {
|
||||
margin: 15rpx 0;
|
||||
margin-right: 15rpx;
|
||||
width: calc((100% - 15rpx)/2);
|
||||
}
|
||||
.com_list .item .guquan .bottom .b_item .item_info .left {
|
||||
color: #666666;
|
||||
font-size: 20rpx;
|
||||
}
|
||||
.com_list .item .guquan .bottom .b_item .item_info .right {
|
||||
height: 35rpx;
|
||||
font-size: 20rpx;
|
||||
}
|
||||
.com_list .item .guquan .bottom .b_item .item_info .right .bili {
|
||||
color: #BB8520;
|
||||
font-weight: bold;
|
||||
}
|
||||
.com_list .item .guquan .bottom .b_item .item_info .right .shengjiang {
|
||||
margin-left: 10rpx;
|
||||
padding: 0 5rpx;
|
||||
height: 30rpx;
|
||||
border-radius: 5rpx;
|
||||
font-size: 18rpx;
|
||||
}
|
||||
.com_list .item .guquan .bottom .b_item .item_info .right .shengjiang .icon {
|
||||
width: 11rpx;
|
||||
height: 25rpx;
|
||||
margin-right: 4rpx;
|
||||
}
|
||||
.com_list .item .guquan .bottom .b_item .item_info .right .shengjiang.up {
|
||||
background-color: #FFDFE1;
|
||||
color: #EC3440;
|
||||
}
|
||||
.com_list .item .guquan .bottom .b_item .item_info .right .shengjiang.down {
|
||||
background-color: #C6F6D5;
|
||||
color: #345423;
|
||||
}
|
||||
.com_list .item .guquan .bottom .b_item .item_info:nth-child(2n) {
|
||||
margin-right: 0;
|
||||
}
|
||||
.com_list .item .gudong {
|
||||
margin-top: 25rpx;
|
||||
}
|
||||
.com_list .item .gudong .back {
|
||||
margin: 25rpx 0;
|
||||
font-weight: 500;
|
||||
border-radius: 10rpx;
|
||||
color: #666666;
|
||||
}
|
||||
.com_list .item .gudong .back .top {
|
||||
width: 100%;
|
||||
display: grid;
|
||||
align-items: center;
|
||||
grid-template-columns: 166rpx repeat(4, 1fr);
|
||||
background-color: white;
|
||||
height: 60rpx;
|
||||
}
|
||||
.com_list .item .gudong .back .top.action {
|
||||
background-color: #FAFAFC;
|
||||
}
|
||||
.com_list .item .gudong .back .top .head {
|
||||
padding: 0 10rpx;
|
||||
font-size: 22rpx;
|
||||
}
|
||||
.com_list .item .gudong .back .top .child {
|
||||
padding: 0 10rpx;
|
||||
font-size: 18rpx;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
.com_list .item .gudong .back .top .nature {
|
||||
background-color: #FFF7E9;
|
||||
margin: 10rpx;
|
||||
line-height: 36rpx;
|
||||
border-radius: 5rpx;
|
||||
font-size: 18rpx;
|
||||
color: #E0AC4A;
|
||||
text-align: center;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
28
unpackage/dist/dev/mp-weixin/pagesStock/components/gsxx-view/gsxx-view.js
vendored
Normal file
28
unpackage/dist/dev/mp-weixin/pagesStock/components/gsxx-view/gsxx-view.js
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
"use strict";
|
||||
const common_vendor = require("../../../common/vendor.js");
|
||||
const _sfc_main = {
|
||||
name: "gsxx-view",
|
||||
data() {
|
||||
return {};
|
||||
},
|
||||
props: {
|
||||
stockBasicInfo: Object
|
||||
}
|
||||
};
|
||||
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
||||
return common_vendor.e({
|
||||
a: $props.stockBasicInfo
|
||||
}, $props.stockBasicInfo ? {
|
||||
b: common_vendor.t($props.stockBasicInfo.credit_code),
|
||||
c: common_vendor.t($props.stockBasicInfo.company_size),
|
||||
d: common_vendor.t($props.stockBasicInfo.reg_address),
|
||||
e: common_vendor.t($props.stockBasicInfo.office_address),
|
||||
f: common_vendor.t($props.stockBasicInfo.accounting_firm),
|
||||
g: common_vendor.t($props.stockBasicInfo.law_firm),
|
||||
h: common_vendor.t($props.stockBasicInfo.main_business),
|
||||
i: common_vendor.t($props.stockBasicInfo.business_scope)
|
||||
} : {});
|
||||
}
|
||||
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
|
||||
wx.createPage(MiniProgramPage);
|
||||
//# sourceMappingURL=../../../../.sourcemap/mp-weixin/pagesStock/components/gsxx-view/gsxx-view.js.map
|
||||
3
unpackage/dist/dev/mp-weixin/pagesStock/components/gsxx-view/gsxx-view.json
vendored
Normal file
3
unpackage/dist/dev/mp-weixin/pagesStock/components/gsxx-view/gsxx-view.json
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"usingComponents": {}
|
||||
}
|
||||
1
unpackage/dist/dev/mp-weixin/pagesStock/components/gsxx-view/gsxx-view.wxml
vendored
Normal file
1
unpackage/dist/dev/mp-weixin/pagesStock/components/gsxx-view/gsxx-view.wxml
vendored
Normal file
@@ -0,0 +1 @@
|
||||
<view wx:if="{{a}}" class="businessInfoList"><view class="section">工商信息</view><view class="infoC"><view class="infoItem flex"><view class="title">统一信用代码</view><view class="content code flex1 rightAlign">{{b}}</view></view><view class="infoItem flex"><view class="title">公司规模</view><view class="content flex1 rightAlign">{{c}}</view></view><view class="infoItem flex"><view class="title">注册地址</view><view class="content flex1 rightAlign">{{d}}</view></view><view class="infoItem flex"><view class="title">办公地址</view><view class="content flex1 rightAlign">{{e}}</view></view></view><view class="section">服务机构</view><view class="infoC"><view class="title infoItem">会计师事务所</view><view class="content infoItem">{{f}}</view><view class="title infoItem">律师事务所</view><view class="content infoItem">{{g}}</view></view><view class="section">主营业务</view><view class="infoC mainBussiness"><text class="title">{{h}}</text></view><view class="section">经营范围</view><view class="infoC"><text class="title">{{i}}</text></view></view>
|
||||
36
unpackage/dist/dev/mp-weixin/pagesStock/components/gsxx-view/gsxx-view.wxss
vendored
Normal file
36
unpackage/dist/dev/mp-weixin/pagesStock/components/gsxx-view/gsxx-view.wxss
vendored
Normal file
@@ -0,0 +1,36 @@
|
||||
.businessInfoList {
|
||||
padding: 0 20rpx;
|
||||
}
|
||||
.businessInfoList .section {
|
||||
line-height: 72rpx;
|
||||
font-size: 28rpx;
|
||||
font-weight: bold;
|
||||
color: #2B2B2B;
|
||||
}
|
||||
.businessInfoList .infoC {
|
||||
background-color: #FAFAFC;
|
||||
border-radius: 10rpx;
|
||||
padding: 12rpx 20rpx;
|
||||
}
|
||||
.businessInfoList .infoC .infoItem {
|
||||
line-height: 46rpx;
|
||||
}
|
||||
.businessInfoList .infoC .title {
|
||||
font-size: 22rpx;
|
||||
font-weight: 500;
|
||||
color: #999;
|
||||
}
|
||||
.businessInfoList .infoC .content {
|
||||
font-size: 24rpx;
|
||||
font-weight: 500;
|
||||
color: #2A2A2A;
|
||||
}
|
||||
.businessInfoList .infoC .content.code {
|
||||
color: #BB8520;
|
||||
}
|
||||
.businessInfoList .infoC .content.rightAlign {
|
||||
text-align: right;
|
||||
}
|
||||
.businessInfoList .infoC.mainBussiness {
|
||||
padding: 20rpx;
|
||||
}
|
||||
113
unpackage/dist/dev/mp-weixin/pagesStock/components/news-view/news-view.js
vendored
Normal file
113
unpackage/dist/dev/mp-weixin/pagesStock/components/news-view/news-view.js
vendored
Normal file
@@ -0,0 +1,113 @@
|
||||
"use strict";
|
||||
const utils_util = require("../../../utils/util.js");
|
||||
const common_vendor = require("../../../common/vendor.js");
|
||||
const common_assets = require("../../../common/assets.js");
|
||||
const _sfc_main = {
|
||||
name: "news-view",
|
||||
data() {
|
||||
return {
|
||||
showType: 0,
|
||||
keywords: "",
|
||||
//搜索关键字
|
||||
getChgRateStr: utils_util.getChgRateStr,
|
||||
getRateUpOrDown: utils_util.getRateUpOrDown,
|
||||
getLocalDate: utils_util.getLocalDate
|
||||
};
|
||||
},
|
||||
props: {
|
||||
// 0 新闻动态 1 公司公告
|
||||
type: Number,
|
||||
newsList: Array,
|
||||
//新闻动态数组
|
||||
announcementList: Array
|
||||
//公司公告数组
|
||||
},
|
||||
watch: {
|
||||
type: {
|
||||
handler(newVal) {
|
||||
this.showType = newVal;
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
/**
|
||||
* 点击搜索
|
||||
*/
|
||||
clickSearch() {
|
||||
this.$emit("search", this.keywords);
|
||||
},
|
||||
/**
|
||||
* 点击查看新闻动态
|
||||
* @param {Object} item
|
||||
*/
|
||||
clickNewsItem(item) {
|
||||
this.$emit("newsDetails", item);
|
||||
},
|
||||
/**
|
||||
* 点击查看公司公告
|
||||
* @param {Object} item
|
||||
*/
|
||||
clickAnnouncementItem(item) {
|
||||
this.$emit("announcementDetails", item);
|
||||
}
|
||||
}
|
||||
};
|
||||
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
||||
return common_vendor.e({
|
||||
a: $data.showType == 0
|
||||
}, $data.showType == 0 ? {
|
||||
b: common_assets._imports_0$9,
|
||||
c: common_vendor.o(($event) => $options.clickSearch()),
|
||||
d: $data.keywords,
|
||||
e: common_vendor.o(($event) => $data.keywords = $event.detail.value),
|
||||
f: common_vendor.f($props.newsList, (item, index, i0) => {
|
||||
return common_vendor.e({
|
||||
a: common_vendor.t(item.title),
|
||||
b: common_vendor.t($data.getLocalDate(item.created_at)),
|
||||
c: common_vendor.t(item.view_count),
|
||||
d: common_vendor.t(item.hot_score),
|
||||
e: common_vendor.t(item.event_type),
|
||||
f: common_vendor.t(item.invest_score),
|
||||
g: common_vendor.f(item.keywords, (kitem, kindex, i1) => {
|
||||
return {
|
||||
a: common_vendor.t(kitem),
|
||||
b: kindex
|
||||
};
|
||||
}),
|
||||
h: common_vendor.t(item.description),
|
||||
i: item.related_avg_chg
|
||||
}, item.related_avg_chg ? {} : {}, {
|
||||
j: item.related_avg_chg
|
||||
}, item.related_avg_chg ? {
|
||||
k: common_vendor.t($data.getChgRateStr(item.related_avg_chg)),
|
||||
l: common_vendor.n("chg " + ($data.getRateUpOrDown(item.related_avg_chg) ? "down" : "up")),
|
||||
m: common_vendor.t($data.getChgRateStr(item.related_max_chg)),
|
||||
n: common_vendor.n("chg " + ($data.getRateUpOrDown(item.related_max_chg) ? "down" : "up")),
|
||||
o: common_vendor.t($data.getChgRateStr(item.related_week_chg)),
|
||||
p: common_vendor.n("chg " + ($data.getRateUpOrDown(item.related_week_chg) ? "down" : "up"))
|
||||
} : {}, {
|
||||
q: index,
|
||||
r: common_vendor.o(($event) => $options.clickNewsItem(item), index)
|
||||
});
|
||||
}),
|
||||
g: common_assets._imports_1$16,
|
||||
h: common_assets._imports_2$15,
|
||||
i: common_assets._imports_3$13
|
||||
} : {}, {
|
||||
j: $data.showType == 1
|
||||
}, $data.showType == 1 ? {
|
||||
k: common_vendor.f($props.announcementList, (item, index, i0) => {
|
||||
return {
|
||||
a: common_vendor.t(item.title),
|
||||
b: common_vendor.t(item.announce_date),
|
||||
c: common_vendor.t(item.format),
|
||||
d: common_vendor.t(item.file_size),
|
||||
e: index,
|
||||
f: common_vendor.o(($event) => $options.clickAnnouncementItem(item), index)
|
||||
};
|
||||
})
|
||||
} : {});
|
||||
}
|
||||
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
|
||||
wx.createPage(MiniProgramPage);
|
||||
//# sourceMappingURL=../../../../.sourcemap/mp-weixin/pagesStock/components/news-view/news-view.js.map
|
||||
3
unpackage/dist/dev/mp-weixin/pagesStock/components/news-view/news-view.json
vendored
Normal file
3
unpackage/dist/dev/mp-weixin/pagesStock/components/news-view/news-view.json
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"usingComponents": {}
|
||||
}
|
||||
1
unpackage/dist/dev/mp-weixin/pagesStock/components/news-view/news-view.wxml
vendored
Normal file
1
unpackage/dist/dev/mp-weixin/pagesStock/components/news-view/news-view.wxml
vendored
Normal file
@@ -0,0 +1 @@
|
||||
<view><block wx:if="{{a}}"><view style="padding:20rpx"><view style="background-color:#F3F3F3;display:flex;align-items:center;height:70rpx;border-radius:30rpx;overflow:hidden"><view style="display:flex;align-items:center;justify-content:center;width:62rpx"><image style="width:25rpx;height:24rpx" src="{{b}}" mode="widthFix"></image></view><input style="flex:1;height:100%;font-size:22rpx;color:#999;margin-right:20rpx" type="text" placeholder="搜索相关新闻..." confirm-type="search" bindconfirm="{{c}}" value="{{d}}" bindinput="{{e}}"/></view><view class="newsList"><view wx:for="{{f}}" wx:for-item="item" wx:key="q" class="item" style="border:1rpx solid #E7E7E7;border-radius:10rpx;padding:0 27rpx;margin:20rpx 0" bindtap="{{item.r}}"><view style="color:#2B2B2B;font-size:26rpx;font-weight:bold;margin-top:20rpx">{{item.a}}</view><view style="display:flex;align-items:center;color:#999999;font-size:22rpx;font-weight:400"><image style="width:20rpx;height:20rpx;margin-right:5rpx" src="{{g}}" mode="widthFix"></image><text>{{item.b}}</text><text style="margin:10rpx">|</text><image style="width:18rpx;height:13rpx;margin-right:5rpx" src="{{h}}" mode="widthFix"></image><text>{{item.c}}</text><text style="margin:10rpx">|</text><image style="width:16rpx;height:19rpx;margin-right:5rpx" src="{{i}}" mode="widthFix"></image><text>{{item.d}}</text></view><view class="labelList flexWrap"><view class="label eventType">{{item.e}}</view><view class="label investScore">投资分:{{item.f}}</view><view wx:for="{{item.g}}" wx:for-item="kitem" wx:key="b" style="background-color:#FFFAF0;border-radius:3rpx;padding:2rpx 10rpx;overflow:hidden;font-size:18rpx;color:#E9AE3E;font-weight:400;margin-right:10rpx">{{kitem.a}}</view></view><view style="margin:20rpx 0;font-size:22rpx;color:#71675D;font-weight:500">{{item.h}}</view><view wx:if="{{item.i}}" style="height:1rpx;background-color:#E7E7E7"></view><view wx:if="{{item.j}}" class="relatedChgC flex"><text style="font-weight:bold;color:#2B2B2B">相关涨跌:</text><text>平均 </text><text class="{{item.l}}">{{item.k}}%</text><text style="margin:0 20rpx">|</text><text>最大 </text><text class="{{item.n}}">{{item.m}}%</text><text style="margin:0 20rpx">|</text><text>周 </text><text class="{{item.p}}">{{item.o}}%</text></view></view></view></view></block><block wx:if="{{j}}"><view wx:for="{{k}}" wx:for-item="item" wx:key="e" style="padding:20rpx" bindtap="{{item.f}}"><view style="border:1rpx solid #E7E7E7;border-radius:10rpx;padding:0 27rpx;margin:20rpx 0;display:flex;align-items:center"><view style="flex:1"><view style="color:#2B2B2B;font-size:26rpx;font-weight:bold;margin-top:20rpx">{{item.a}}</view><view style="display:flex;align-items:center;color:#71675D;font-size:22rpx;font-weight:500;margin:20rpx 0"><text style="color:#E9AE3E;font-size:18rpx;background-color:#FFFAF0;border-radius:3rpx;padding:2rpx 10rpx;margin-right:14rpx">公告</text><text>{{item.b}}</text><text style="margin:0 20rpx">|</text><text>{{item.c}}</text><text style="margin:0 20rpx">|</text><text>{{item.d}}KB</text></view></view><view style="padding:4rpx 10rpx;background-color:#F2C369;border-radius:10rpx;color:#2B2B2B;font-size:22rpx;margin-left:10rpx">查看</view></view></view></block></view>
|
||||
28
unpackage/dist/dev/mp-weixin/pagesStock/components/news-view/news-view.wxss
vendored
Normal file
28
unpackage/dist/dev/mp-weixin/pagesStock/components/news-view/news-view.wxss
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
.newsList .item .labelList .label {
|
||||
margin-right: 10rpx;
|
||||
padding: 0 7rpx;
|
||||
line-height: 28rpx;
|
||||
border-radius: 3rpx;
|
||||
font-size: 18rpx;
|
||||
font-weight: 500;
|
||||
}
|
||||
.newsList .item .labelList .eventType {
|
||||
background-color: #EFF6FF;
|
||||
color: #60A5FA;
|
||||
}
|
||||
.newsList .item .labelList .investScore {
|
||||
background-color: #F2EEFF;
|
||||
color: #A78BFA;
|
||||
}
|
||||
.newsList .item .relatedChgC {
|
||||
margin: 20rpx 0;
|
||||
color: #71675D;
|
||||
font-size: 22rpx;
|
||||
font-weight: 500;
|
||||
}
|
||||
.newsList .item .relatedChgC .chg.up {
|
||||
color: #EC3440;
|
||||
}
|
||||
.newsList .item .relatedChgC .chg.down {
|
||||
color: #1DB26F;
|
||||
}
|
||||
53
unpackage/dist/dev/mp-weixin/pagesStock/components/ywjg-view/ywjg-view.js
vendored
Normal file
53
unpackage/dist/dev/mp-weixin/pagesStock/components/ywjg-view/ywjg-view.js
vendored
Normal file
@@ -0,0 +1,53 @@
|
||||
"use strict";
|
||||
const utils_util = require("../../../utils/util.js");
|
||||
const common_vendor = require("../../../common/vendor.js");
|
||||
const _sfc_main = {
|
||||
name: "ywjg-view",
|
||||
data() {
|
||||
return {
|
||||
getRateUpOrDown: utils_util.getRateUpOrDown
|
||||
};
|
||||
},
|
||||
props: {
|
||||
businessStructureList: Array,
|
||||
//业务结构分析
|
||||
businessSegmentList: Array
|
||||
//业务板块详情
|
||||
}
|
||||
};
|
||||
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
||||
return {
|
||||
a: common_vendor.f($props.businessStructureList, (item, index, i0) => {
|
||||
return common_vendor.e({
|
||||
a: common_vendor.t(item.business_name),
|
||||
b: item.is_hexin
|
||||
}, item.is_hexin ? {} : {}, {
|
||||
c: common_vendor.t(item.financial_metrics.revenue_ratio),
|
||||
d: item.financial_metrics.gross_margin
|
||||
}, item.financial_metrics.gross_margin ? {
|
||||
e: common_vendor.t(item.financial_metrics.gross_margin)
|
||||
} : {}, {
|
||||
f: common_vendor.t(item.revenue),
|
||||
g: common_vendor.t(item.revenue_unit),
|
||||
h: item.growth_metrics.revenue_growth
|
||||
}, item.growth_metrics.revenue_growth ? {
|
||||
i: common_vendor.t(item.growth_metrics.revenue_growth),
|
||||
j: common_vendor.n("growthRate " + ($data.getRateUpOrDown(item.growth_metrics.revenue_growth) ? "down" : "up"))
|
||||
} : {}, {
|
||||
k: index
|
||||
});
|
||||
}),
|
||||
b: common_vendor.f($props.businessSegmentList, (item, index, i0) => {
|
||||
return {
|
||||
a: common_vendor.t(item.segment_name),
|
||||
b: common_vendor.t(item.segment_description),
|
||||
c: common_vendor.t(item.competitive_position),
|
||||
d: common_vendor.t(item.future_potential),
|
||||
e: index
|
||||
};
|
||||
})
|
||||
};
|
||||
}
|
||||
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
|
||||
wx.createPage(MiniProgramPage);
|
||||
//# sourceMappingURL=../../../../.sourcemap/mp-weixin/pagesStock/components/ywjg-view/ywjg-view.js.map
|
||||
3
unpackage/dist/dev/mp-weixin/pagesStock/components/ywjg-view/ywjg-view.json
vendored
Normal file
3
unpackage/dist/dev/mp-weixin/pagesStock/components/ywjg-view/ywjg-view.json
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"usingComponents": {}
|
||||
}
|
||||
1
unpackage/dist/dev/mp-weixin/pagesStock/components/ywjg-view/ywjg-view.wxml
vendored
Normal file
1
unpackage/dist/dev/mp-weixin/pagesStock/components/ywjg-view/ywjg-view.wxml
vendored
Normal file
@@ -0,0 +1 @@
|
||||
<view class="ywjg_list"><view><view style="margin:25rpx 20rpx;color:#2B2B2B;font-size:28rpx;font-weight:bold">业务结构分析</view><view wx:for="{{a}}" wx:for-item="item" wx:key="k" class="ywjg_item_1"><view style="display:flex;align-items:center"><view style="font-size:28rpx;font-weight:bold;margin-right:10rpx">{{item.a}}</view><view wx:if="{{item.b}}" style="background-color:#F2C369;border-radius:5rpx;font-size:20rpx;padding:0 5rpx"> 核心业务</view></view><view class="flex between" style="font-weight:500"><view class="flex" style="color:#F2C369;font-size:20rpx"><view style="border:1rpx solid #F2C369;border-radius:5rpx;padding:0 10rpx"> 营收占比:{{item.c}}%</view><view wx:if="{{item.d}}" style="border:1rpx solid #F2C369;border-radius:5rpx;padding:0 10rpx;margin-left:10rpx"> 毛利率:{{item.e}}%</view><view wx:else style="border:1rpx solid #F2C369;border-radius:5rpx;padding:0 10rpx;margin-left:10rpx"> 毛利率:-</view></view><view><view style="color:#999999;font-size:24rpx">营业收入</view><view style="font-weight:bold;font-size:30rpx;color:#BB8520;margin-top:10rpx">{{item.f}}{{item.g}}</view></view></view><view style="display:flex"><view wx:if="{{item.h}}" class="{{item.j}}"> 增长:{{item.i}}% </view><view wx:else class="growthRate down">增长:-</view></view></view><view style="margin:25rpx 20rpx;color:#2B2B2B;font-size:28rpx;font-weight:bold">业务板块详情</view><view style="font-weight:500"><view wx:for="{{b}}" wx:for-item="item" wx:key="e" style="background-color:#FAFAFC;color:#2B2B2B;font-size:22rpx;margin:20rpx;border-radius:10rpx;padding:25rpx 20rpx"><view style="font-size:24rpx">{{item.a}}</view><view style="color:#BB8520;font-weight:bold;margin:10rpx 0">业务描述</view><view style="color:#71675D">{{item.b}}</view><view style="color:#BB8520;font-weight:bold;margin:10rpx 0">竞争地位</view><view style="color:#71675D">{{item.c}}</view><view style="color:#BB8520;font-weight:bold;margin:10rpx 0">未来潜力</view><view style="color:#71675D">{{item.d}}</view></view></view></view></view>
|
||||
27
unpackage/dist/dev/mp-weixin/pagesStock/components/ywjg-view/ywjg-view.wxss
vendored
Normal file
27
unpackage/dist/dev/mp-weixin/pagesStock/components/ywjg-view/ywjg-view.wxss
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
.ywjg_list {
|
||||
color: #2B2B2B;
|
||||
}
|
||||
.ywjg_list .title {
|
||||
font-size: 28rpx;
|
||||
font-weight: bold;
|
||||
}
|
||||
.ywjg_list .ywjg_item_1 {
|
||||
font-weight: 500;
|
||||
margin: 20rpx;
|
||||
background-color: #FAFAFC;
|
||||
border-radius: 10rpx;
|
||||
padding: 25rpx 20rpx;
|
||||
}
|
||||
.ywjg_list .ywjg_item_1 .growthRate {
|
||||
padding: 0 10rpx;
|
||||
line-height: 30rpx;
|
||||
border-radius: 5rpx;
|
||||
font-size: 20rpx;
|
||||
color: white;
|
||||
}
|
||||
.ywjg_list .ywjg_item_1 .growthRate.up {
|
||||
background-color: #EC3440;
|
||||
}
|
||||
.ywjg_list .ywjg_item_1 .growthRate.down {
|
||||
background-color: #345423;
|
||||
}
|
||||
165
unpackage/dist/dev/mp-weixin/pagesStock/components/zlfx-view/zlfx-view.js
vendored
Normal file
165
unpackage/dist/dev/mp-weixin/pagesStock/components/zlfx-view/zlfx-view.js
vendored
Normal file
@@ -0,0 +1,165 @@
|
||||
"use strict";
|
||||
const common_vendor = require("../../../common/vendor.js");
|
||||
const common_assets = require("../../../common/assets.js");
|
||||
const echarts = require("../../../uni_modules/lime-echart/static/echarts.min.js");
|
||||
const _sfc_main = {
|
||||
name: "zlfx-view",
|
||||
data() {
|
||||
return {
|
||||
option: {
|
||||
title: {
|
||||
show: false
|
||||
},
|
||||
legend: {
|
||||
show: false
|
||||
},
|
||||
tooltip: {
|
||||
show: true,
|
||||
triggerOn: "mousemove"
|
||||
},
|
||||
radar: {
|
||||
indicator: [
|
||||
{ name: "市场地位", max: 100 },
|
||||
{ name: "技术实力", max: 100 },
|
||||
{ name: "品牌价值", max: 100 },
|
||||
{ name: "运营效率", max: 100 },
|
||||
{ name: "财务健康", max: 100 },
|
||||
{ name: "创新能力", max: 100 },
|
||||
{ name: "风险控制", max: 100 },
|
||||
{ name: "成长潜力", max: 100 }
|
||||
],
|
||||
shape: "polygon",
|
||||
splitNumber: 5,
|
||||
axisName: {
|
||||
color: "#54555A"
|
||||
},
|
||||
splitLine: {
|
||||
lineStyle: {
|
||||
color: ["#CFD2D7"]
|
||||
}
|
||||
},
|
||||
splitArea: {
|
||||
areaStyle: {
|
||||
color: ["#F4F6FA", "white"]
|
||||
}
|
||||
},
|
||||
axisLine: {
|
||||
lineStyle: {
|
||||
color: "#CFD2D7"
|
||||
}
|
||||
}
|
||||
},
|
||||
series: [
|
||||
{
|
||||
name: "Beijing",
|
||||
type: "radar",
|
||||
lineStyle: {
|
||||
width: 1
|
||||
},
|
||||
data: [],
|
||||
symbol: "circle",
|
||||
symbolSize: 4,
|
||||
label: {
|
||||
show: true
|
||||
},
|
||||
itemStyle: {
|
||||
color: "#5070DD"
|
||||
},
|
||||
areaStyle: {
|
||||
opacity: 0.1
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
};
|
||||
},
|
||||
props: {
|
||||
qualitativeAnalysisInfo: Object,
|
||||
//定性分析
|
||||
competitivePositionInfo: Object,
|
||||
//竞争地位信息
|
||||
mainCompetitorsList: Array,
|
||||
//主要竞争对手
|
||||
industryRankInfo: Object,
|
||||
//行业排名数据
|
||||
scoreList: Array,
|
||||
//
|
||||
data: Array
|
||||
},
|
||||
watch: {
|
||||
data(newValue) {
|
||||
this.option.series[0].data = newValue;
|
||||
this.init();
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
async init() {
|
||||
const chart = await this.$refs.chartRef.init(echarts);
|
||||
common_vendor.index.__f__("log", "at pagesStock/components/zlfx-view/zlfx-view.vue:183", chart);
|
||||
chart.setOption(this.option);
|
||||
},
|
||||
clickIndustryRank() {
|
||||
this.$emit("rank");
|
||||
}
|
||||
}
|
||||
};
|
||||
if (!Array) {
|
||||
const _easycom_l_echart2 = common_vendor.resolveComponent("l-echart");
|
||||
_easycom_l_echart2();
|
||||
}
|
||||
const _easycom_l_echart = () => "../../../uni_modules/lime-echart/components/l-echart/l-echart.js";
|
||||
if (!Math) {
|
||||
_easycom_l_echart();
|
||||
}
|
||||
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
||||
return common_vendor.e({
|
||||
a: $props.qualitativeAnalysisInfo
|
||||
}, $props.qualitativeAnalysisInfo ? {
|
||||
b: common_vendor.t($props.qualitativeAnalysisInfo.core_positioning.one_line_intro)
|
||||
} : {}, {
|
||||
c: $props.qualitativeAnalysisInfo
|
||||
}, $props.qualitativeAnalysisInfo ? {
|
||||
d: common_vendor.t($props.qualitativeAnalysisInfo.core_positioning.investment_highlights)
|
||||
} : {}, {
|
||||
e: $props.qualitativeAnalysisInfo
|
||||
}, $props.qualitativeAnalysisInfo ? {
|
||||
f: common_vendor.t($props.qualitativeAnalysisInfo.core_positioning.business_model_desc)
|
||||
} : {}, {
|
||||
g: common_assets._imports_0$10,
|
||||
h: $props.industryRankInfo
|
||||
}, $props.industryRankInfo ? {
|
||||
i: common_vendor.t($props.industryRankInfo.industry_rank),
|
||||
j: common_vendor.t($props.industryRankInfo.total_companies)
|
||||
} : {}, {
|
||||
k: common_vendor.o(($event) => $options.clickIndustryRank()),
|
||||
l: common_vendor.f($props.mainCompetitorsList, (item, index, i0) => {
|
||||
return {
|
||||
a: common_vendor.t(item),
|
||||
b: index
|
||||
};
|
||||
}),
|
||||
m: common_assets._imports_1$11,
|
||||
n: common_vendor.f($props.scoreList, (item, index, i0) => {
|
||||
return {
|
||||
a: item.icon,
|
||||
b: common_vendor.t(item.title),
|
||||
c: common_vendor.n("progress absolute " + item.color),
|
||||
d: common_vendor.s("width: " + item.score + "%;"),
|
||||
e: common_vendor.t(item.score),
|
||||
f: common_vendor.n("item flex " + item.color),
|
||||
g: index
|
||||
};
|
||||
}),
|
||||
o: common_vendor.sr("chartRef", "30f547db-0"),
|
||||
p: $props.competitivePositionInfo
|
||||
}, $props.competitivePositionInfo ? {
|
||||
q: common_vendor.t($props.competitivePositionInfo.analysis.competitive_advantages)
|
||||
} : {}, {
|
||||
r: $props.competitivePositionInfo
|
||||
}, $props.competitivePositionInfo ? {
|
||||
s: common_vendor.t($props.competitivePositionInfo.analysis.competitive_disadvantages)
|
||||
} : {});
|
||||
}
|
||||
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
|
||||
wx.createPage(MiniProgramPage);
|
||||
//# sourceMappingURL=../../../../.sourcemap/mp-weixin/pagesStock/components/zlfx-view/zlfx-view.js.map
|
||||
5
unpackage/dist/dev/mp-weixin/pagesStock/components/zlfx-view/zlfx-view.json
vendored
Normal file
5
unpackage/dist/dev/mp-weixin/pagesStock/components/zlfx-view/zlfx-view.json
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"usingComponents": {
|
||||
"l-echart": "../../../uni_modules/lime-echart/components/l-echart/l-echart"
|
||||
}
|
||||
}
|
||||
1
unpackage/dist/dev/mp-weixin/pagesStock/components/zlfx-view/zlfx-view.wxml
vendored
Normal file
1
unpackage/dist/dev/mp-weixin/pagesStock/components/zlfx-view/zlfx-view.wxml
vendored
Normal file
@@ -0,0 +1 @@
|
||||
<view class="strategicAnalysisList"><view class="section">核心定位</view><view wx:if="{{a}}" class="corePositionC">{{b}}</view><view class="section">投资亮点</view><view wx:if="{{c}}" class="corePositionC">{{d}}</view><view class="section">商业模式</view><view wx:if="{{e}}" class="corePositionC">{{f}}</view><view class="section flex"><view>竞争地位分析</view><view class="industryRankC flex" bindtap="{{k}}"><image class="icon" src="{{g}}" mode="widthFix"></image><view wx:if="{{h}}">行业排名 {{i}}/{{j}}</view></view></view><view class="subSection">主要竞争对手</view><view class="mainCompetitorList flexWrap"><view wx:for="{{l}}" wx:for-item="item" wx:key="b" class="item flex"><image class="icon" src="{{m}}" mode="widthFix"></image><view>{{item.a}}</view></view></view><view class="scoreList"><view wx:for="{{n}}" wx:for-item="item" wx:key="g" class="{{item.f}}"><image class="icon" src="{{item.a}}" mode="widthFix"></image><view class="title">{{item.b}}</view><view class="progressBgC relative flex1"><view class="{{item.c}}" style="{{item.d}}"></view></view><view class="score">{{item.e}}</view></view></view><view style="width:660rpx;height:500rpx"><l-echart class="r" u-r="chartRef" u-i="30f547db-0" bind:__l="__l"></l-echart></view><view wx:if="{{p}}" class="infoC"><view class="title">竞争优势</view><view class="content">{{q}}</view></view><view wx:if="{{r}}" class="infoC"><view class="title">竞争劣势</view><view class="content">{{s}}</view></view></view>
|
||||
155
unpackage/dist/dev/mp-weixin/pagesStock/components/zlfx-view/zlfx-view.wxss
vendored
Normal file
155
unpackage/dist/dev/mp-weixin/pagesStock/components/zlfx-view/zlfx-view.wxss
vendored
Normal file
@@ -0,0 +1,155 @@
|
||||
.strategicAnalysisList {
|
||||
padding: 0 20rpx;
|
||||
}
|
||||
.strategicAnalysisList .section {
|
||||
line-height: 72rpx;
|
||||
font-size: 28rpx;
|
||||
font-weight: bold;
|
||||
color: #2B2B2B;
|
||||
}
|
||||
.strategicAnalysisList .section .industryRankC {
|
||||
margin-left: 10rpx;
|
||||
padding: 0 12rpx;
|
||||
line-height: 38rpx;
|
||||
border: solid 1rpx #F2C369;
|
||||
border-radius: 19rpx;
|
||||
font-size: 20rpx;
|
||||
font-weight: 500;
|
||||
color: #F3C368;
|
||||
}
|
||||
.strategicAnalysisList .section .industryRankC .icon {
|
||||
margin-right: 5rpx;
|
||||
width: 17rpx;
|
||||
height: auto;
|
||||
}
|
||||
.strategicAnalysisList .corePositionC {
|
||||
background-color: #FAFAFC;
|
||||
padding: 20rpx;
|
||||
font-size: 24rpx;
|
||||
font-weight: 500;
|
||||
color: #2A2A2A;
|
||||
border-radius: 10rpx;
|
||||
}
|
||||
.strategicAnalysisList .highlightsList .item {
|
||||
background-color: #FAFAFC;
|
||||
margin-bottom: 20rpx;
|
||||
padding: 20rpx;
|
||||
border-radius: 10rpx;
|
||||
}
|
||||
.strategicAnalysisList .highlightsList .item .icon {
|
||||
width: 81rpx;
|
||||
height: auto;
|
||||
}
|
||||
.strategicAnalysisList .highlightsList .item .title {
|
||||
font-size: 22rpx;
|
||||
font-weight: 500;
|
||||
color: #999;
|
||||
}
|
||||
.strategicAnalysisList .highlightsList .item .content {
|
||||
font-size: 20rpx;
|
||||
font-weight: 500;
|
||||
color: #2A2A2A;
|
||||
}
|
||||
.strategicAnalysisList .infoC {
|
||||
background-color: #FAFAFC;
|
||||
border-radius: 10rpx;
|
||||
padding: 12rpx 20rpx;
|
||||
margin-bottom: 20rpx;
|
||||
}
|
||||
.strategicAnalysisList .infoC .infoItem {
|
||||
line-height: 40rpx;
|
||||
}
|
||||
.strategicAnalysisList .infoC .title {
|
||||
font-size: 22rpx;
|
||||
font-weight: 500;
|
||||
color: #2A2A2A;
|
||||
}
|
||||
.strategicAnalysisList .infoC .content {
|
||||
margin-top: 10rpx;
|
||||
font-size: 20rpx;
|
||||
font-weight: 500;
|
||||
color: #999;
|
||||
}
|
||||
.strategicAnalysisList .infoC .content.code {
|
||||
color: #BB8520;
|
||||
}
|
||||
.strategicAnalysisList .infoC .content.rightAlign {
|
||||
text-align: right;
|
||||
}
|
||||
.strategicAnalysisList .infoC .labelList {
|
||||
margin-top: 10rpx;
|
||||
}
|
||||
.strategicAnalysisList .infoC .labelList .labelC {
|
||||
background-color: #FFF7E9;
|
||||
margin: 0 12rpx 12rpx 0;
|
||||
padding: 0 10rpx;
|
||||
line-height: 38rpx;
|
||||
border: solid 1rpx #F2C369;
|
||||
border-radius: 20rpx;
|
||||
font-size: 22rpx;
|
||||
font-weight: 500;
|
||||
color: #F3C368;
|
||||
}
|
||||
.strategicAnalysisList .infoC .labelList .labelC .icon {
|
||||
margin-right: 3rpx;
|
||||
width: 16rpx;
|
||||
height: auto;
|
||||
}
|
||||
.strategicAnalysisList .subSection {
|
||||
line-height: 60rpx;
|
||||
font-size: 24rpx;
|
||||
font-weight: bold;
|
||||
color: #2A2A2A;
|
||||
}
|
||||
.strategicAnalysisList .mainCompetitorList .item {
|
||||
background-color: #FFF7E9;
|
||||
margin: 0 20rpx 20rpx 0;
|
||||
padding: 0 16rpx;
|
||||
line-height: 38rpx;
|
||||
border-radius: 20rpx;
|
||||
border: solid 1rpx #F2C369;
|
||||
font-size: 22rpx;
|
||||
font-weight: 500;
|
||||
color: #F3C368;
|
||||
}
|
||||
.strategicAnalysisList .mainCompetitorList .item .icon {
|
||||
margin-right: 3rpx;
|
||||
width: 16rpx;
|
||||
height: auto;
|
||||
}
|
||||
.strategicAnalysisList .scoreList .item {
|
||||
margin-bottom: 40rpx;
|
||||
font-size: 24rpx;
|
||||
}
|
||||
.strategicAnalysisList .scoreList .item .icon {
|
||||
margin-right: 10rpx;
|
||||
width: 24rpx;
|
||||
height: auto;
|
||||
}
|
||||
.strategicAnalysisList .scoreList .item .title {
|
||||
margin-right: 15rpx;
|
||||
font-weight: 500;
|
||||
color: #232323;
|
||||
}
|
||||
.strategicAnalysisList .scoreList .item .progressBgC {
|
||||
background-color: #EFEFEF;
|
||||
margin-right: 15rpx;
|
||||
height: 10rpx;
|
||||
border-radius: 5rpx;
|
||||
}
|
||||
.strategicAnalysisList .scoreList .item .progressBgC .progress {
|
||||
top: 0;
|
||||
left: 0;
|
||||
height: 10rpx;
|
||||
border-radius: 5rpx;
|
||||
}
|
||||
.strategicAnalysisList .scoreList .item .progressBgC .progress.blue {
|
||||
background: linear-gradient(90deg, #4AAFFF 0%, #1F83FD 100%);
|
||||
}
|
||||
.strategicAnalysisList .scoreList .item .progressBgC .progress.purple {
|
||||
background: linear-gradient(90deg, #DD96FC 0%, #C061FD 100%);
|
||||
}
|
||||
.strategicAnalysisList .scoreList .item .score {
|
||||
font-weight: 800;
|
||||
color: #070707;
|
||||
}
|
||||
258
unpackage/dist/dev/mp-weixin/pagesStock/components/zysj-view/zysj-view.js
vendored
Normal file
258
unpackage/dist/dev/mp-weixin/pagesStock/components/zysj-view/zysj-view.js
vendored
Normal file
@@ -0,0 +1,258 @@
|
||||
"use strict";
|
||||
const common_vendor = require("../../../common/vendor.js");
|
||||
const utils_util = require("../../../utils/util.js");
|
||||
const echarts = require("../../../uni_modules/lime-echart/static/echarts.min.js");
|
||||
const _sfc_main = {
|
||||
name: "zysj-view",
|
||||
data() {
|
||||
return {
|
||||
option1: {
|
||||
legend: {
|
||||
show: true,
|
||||
data: ["营业收入", "净利润"]
|
||||
},
|
||||
grid: {
|
||||
left: "2%",
|
||||
right: "2%",
|
||||
top: "5%",
|
||||
bottom: "30%"
|
||||
},
|
||||
xAxis: {
|
||||
type: "category",
|
||||
data: [],
|
||||
axisLabel: {
|
||||
// interval:0
|
||||
}
|
||||
},
|
||||
yAxis: [
|
||||
{
|
||||
type: "value",
|
||||
name: "营收(亿)",
|
||||
position: "left",
|
||||
alignTicks: true,
|
||||
axisLine: {
|
||||
onZero: false
|
||||
}
|
||||
},
|
||||
{
|
||||
type: "value",
|
||||
name: "利润(亿)",
|
||||
position: "right",
|
||||
alignTicks: true,
|
||||
axisLine: {
|
||||
onZero: false
|
||||
}
|
||||
}
|
||||
],
|
||||
dataZoom: [{
|
||||
type: "slider"
|
||||
}],
|
||||
series: [
|
||||
{
|
||||
type: "bar",
|
||||
name: "营业收入",
|
||||
data: [],
|
||||
yAxisIndex: 0
|
||||
},
|
||||
{
|
||||
type: "line",
|
||||
name: "净利润",
|
||||
data: [],
|
||||
yAxisIndex: 1
|
||||
}
|
||||
]
|
||||
},
|
||||
option2: {
|
||||
title: {
|
||||
text: "",
|
||||
textStyle: {
|
||||
fontSize: 12
|
||||
}
|
||||
},
|
||||
legend: {
|
||||
show: true
|
||||
},
|
||||
grid: {
|
||||
left: 0,
|
||||
right: 0,
|
||||
top: "5%",
|
||||
bottom: "5%"
|
||||
},
|
||||
series: [
|
||||
{
|
||||
data: [],
|
||||
type: "pie",
|
||||
center: ["50%", "50%"],
|
||||
label: {
|
||||
formatter: "{d}%"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
getChgRateStr: utils_util.getChgRateStr,
|
||||
getNumStr: utils_util.getNumStr
|
||||
};
|
||||
},
|
||||
props: {
|
||||
stockInfo: Object,
|
||||
financialMetricsInfo: Object,
|
||||
barCategoryList: Array,
|
||||
barList: Array,
|
||||
lineList: Array,
|
||||
//折线图数据
|
||||
productClassificationList: Array
|
||||
},
|
||||
watch: {
|
||||
barCategoryList(newValue) {
|
||||
this.option1.xAxis.data = newValue;
|
||||
},
|
||||
barList(newValue) {
|
||||
this.option1.series[0].data = newValue;
|
||||
this.barLineInit();
|
||||
},
|
||||
lineList(newValue) {
|
||||
this.option1.series[1].data = newValue;
|
||||
this.barLineInit();
|
||||
},
|
||||
productClassificationList(newValue) {
|
||||
let data = newValue[0].products;
|
||||
this.option2.title.text = "主营业务构成(" + newValue[0].report_type + ")";
|
||||
let pieList = [];
|
||||
for (let item of data) {
|
||||
pieList.push({
|
||||
name: item.content,
|
||||
value: item.revenue_ratio.toFixed(2)
|
||||
});
|
||||
}
|
||||
this.option2.series[0].data = pieList;
|
||||
this.pieInit();
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
/**
|
||||
* 柱状图,折线图初始化
|
||||
*/
|
||||
async barLineInit() {
|
||||
const chart = await this.$refs.chartRef1.init(echarts);
|
||||
let that = this;
|
||||
setTimeout(function() {
|
||||
chart.setOption(that.option1);
|
||||
}, 2e3);
|
||||
},
|
||||
/**
|
||||
* 饼状图初始化
|
||||
*/
|
||||
async pieInit() {
|
||||
const chart = await this.$refs.chartRef2.init(echarts);
|
||||
let that = this;
|
||||
setTimeout(function() {
|
||||
chart.setOption(that.option2);
|
||||
}, 2e3);
|
||||
},
|
||||
/**
|
||||
* 获取资产负债状态
|
||||
*/
|
||||
getDebtStatusText(value) {
|
||||
if (value < 40)
|
||||
return { text: "安全", color: "green" };
|
||||
if (value < 60)
|
||||
return { text: "适中", color: "gold" };
|
||||
if (value < 70)
|
||||
return { text: "偏高", color: "orange" };
|
||||
return { text: "风险", color: "red" };
|
||||
},
|
||||
/**
|
||||
* 获取营收增长状态
|
||||
*/
|
||||
getGrowthStatus(value) {
|
||||
if (value > 30)
|
||||
return { text: "高速增长", color: "green" };
|
||||
if (value > 10)
|
||||
return { text: "稳健增长", color: "gold" };
|
||||
if (value > 0)
|
||||
return { text: "低速增长", color: "orange" };
|
||||
if (value > -10)
|
||||
return { text: "小幅下滑", color: "orange" };
|
||||
return { text: "大幅下滑", color: "red" };
|
||||
},
|
||||
/**
|
||||
* 获取ROE状态
|
||||
*/
|
||||
getROEStatus(value) {
|
||||
if (value > 20)
|
||||
return { text: "优秀", color: "green" };
|
||||
if (value > 15)
|
||||
return { text: "良好", color: "gold" };
|
||||
if (value > 10)
|
||||
return { text: "一般", color: "orange" };
|
||||
return { text: "较低", color: "red" };
|
||||
},
|
||||
itemClick(index) {
|
||||
common_vendor.index.navigateTo({
|
||||
url: `/pagesStock/stockCenterDetails/cwDetails?index=${index}`
|
||||
});
|
||||
}
|
||||
}
|
||||
};
|
||||
if (!Array) {
|
||||
const _easycom_l_echart2 = common_vendor.resolveComponent("l-echart");
|
||||
_easycom_l_echart2();
|
||||
}
|
||||
const _easycom_l_echart = () => "../../../uni_modules/lime-echart/components/l-echart/l-echart.js";
|
||||
if (!Math) {
|
||||
_easycom_l_echart();
|
||||
}
|
||||
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
||||
return common_vendor.e({
|
||||
a: $props.stockInfo
|
||||
}, $props.stockInfo ? common_vendor.e({
|
||||
b: common_vendor.t($props.stockInfo.growth_rates.profit_growth ? $data.getChgRateStr($props.stockInfo.growth_rates.profit_growth) + "%" : "-"),
|
||||
c: common_vendor.t($data.getChgRateStr($props.stockInfo.growth_rates.revenue_growth)),
|
||||
d: common_vendor.t($props.stockInfo.growth_rates.profit_growth ? $options.getGrowthStatus($props.stockInfo.growth_rates.profit_growth).text : "-"),
|
||||
e: common_vendor.s("color:" + $options.getGrowthStatus($props.stockInfo.growth_rates.profit_growth).color),
|
||||
f: common_vendor.t($data.getChgRateStr($props.stockInfo.key_metrics.roe)),
|
||||
g: common_vendor.t($options.getROEStatus($props.stockInfo.key_metrics.roe).text),
|
||||
h: common_vendor.s("color: " + $options.getROEStatus($props.stockInfo.key_metrics.roe).color),
|
||||
i: common_vendor.t($props.stockInfo.key_metrics.net_margin.toFixed(2)),
|
||||
j: common_vendor.t($props.stockInfo.key_metrics.gross_margin ? $data.getChgRateStr($props.stockInfo.key_metrics.gross_margin) + "%" : "-"),
|
||||
k: $props.financialMetricsInfo
|
||||
}, $props.financialMetricsInfo ? {
|
||||
l: common_vendor.t($props.financialMetricsInfo.solvency.asset_liability_ratio ? $props.financialMetricsInfo.solvency.asset_liability_ratio.toFixed(2) : "-"),
|
||||
m: common_vendor.t($options.getDebtStatusText($props.financialMetricsInfo.solvency.asset_liability_ratio).text),
|
||||
n: common_vendor.s("color: " + $options.getDebtStatusText($props.financialMetricsInfo.solvency.asset_liability_ratio).color),
|
||||
o: common_vendor.t($props.financialMetricsInfo.solvency.current_ratio ? $props.financialMetricsInfo.solvency.current_ratio.toFixed(2) : "-"),
|
||||
p: common_vendor.t($props.financialMetricsInfo.expense_ratios.rd_expense_ratio)
|
||||
} : {}) : {}, {
|
||||
q: common_vendor.sr("chartRef1", "d36e6b92-0"),
|
||||
r: common_vendor.sr("chartRef2", "d36e6b92-1"),
|
||||
s: common_vendor.f(["业务", "毛利率", "利润", "营收", "营收"], (item, index, i0) => {
|
||||
return common_vendor.e({
|
||||
a: common_vendor.t(item),
|
||||
b: ["", "(2025年中报)", "(2025年中报)", "(2025年中报)", "(2024年年报)"][index].length > 0
|
||||
}, ["", "(2025年中报)", "(2025年中报)", "(2025年中报)", "(2024年年报)"][index].length > 0 ? {
|
||||
c: common_vendor.t(["", "(2025年中报)", "(2025年中报)", "(2025年中报)", "(2024年年报)"][index]),
|
||||
d: index == 0 ? "left" : "center"
|
||||
} : {}, {
|
||||
e: index,
|
||||
f: index == 0 ? "left" : "center",
|
||||
g: index == 0 ? "flex-start" : "center"
|
||||
});
|
||||
}),
|
||||
t: $props.productClassificationList.length > 0
|
||||
}, $props.productClassificationList.length > 0 ? {
|
||||
v: common_vendor.f($props.productClassificationList[0].products, (item, index, i0) => {
|
||||
return {
|
||||
a: common_vendor.t(item.content),
|
||||
b: common_vendor.t(item.profit_margin.toFixed(2)),
|
||||
c: common_vendor.t($data.getNumStr(item.profit)),
|
||||
d: common_vendor.t($data.getNumStr(item.revenue)),
|
||||
e: common_vendor.t(item.content),
|
||||
f: index,
|
||||
g: index % 2 == 0 ? "#FFFFFF" : "#FAFAFC"
|
||||
};
|
||||
})
|
||||
} : {});
|
||||
}
|
||||
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render]]);
|
||||
wx.createPage(MiniProgramPage);
|
||||
//# sourceMappingURL=../../../../.sourcemap/mp-weixin/pagesStock/components/zysj-view/zysj-view.js.map
|
||||
5
unpackage/dist/dev/mp-weixin/pagesStock/components/zysj-view/zysj-view.json
vendored
Normal file
5
unpackage/dist/dev/mp-weixin/pagesStock/components/zysj-view/zysj-view.json
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"usingComponents": {
|
||||
"l-echart": "../../../uni_modules/lime-echart/components/l-echart/l-echart"
|
||||
}
|
||||
}
|
||||
1
unpackage/dist/dev/mp-weixin/pagesStock/components/zysj-view/zysj-view.wxml
vendored
Normal file
1
unpackage/dist/dev/mp-weixin/pagesStock/components/zysj-view/zysj-view.wxml
vendored
Normal file
@@ -0,0 +1 @@
|
||||
<view><block wx:if="{{a}}"><view class="flex" style="font-size:22rpx;color:#999999;font-weight:500;margin:20rpx;padding:20rpx;box-sizing:border-box;border:1rpx solid #F5F5F5;border-radius:10rpx"><view style="width:195rpx"><view style="font-weight:bold;color:#1DB26F;font-size:30rpx">{{b}}</view><view style="margin-top:10rpx">利润增长</view></view><view><view class="flex"><text style="font-weight:bold;color:#070707;font-size:26rpx;margin-right:10rpx">成长能力</text><text style="color:#A97F53;font-size:20rpx;padding:2rpx 5rpx;background-color:#F8F4ED;border:1rpx solid #F1E7D8;border-radius:3rpx">增长动力</text></view><view style="margin-top:10rpx"><text>营收增长</text><text style="color:#1DB26F;margin:0 10rpx">{{c}}%</text><text style="{{e}}">({{d}})</text></view></view></view><view class="flex" style="font-size:22rpx;color:#999999;font-weight:500;margin:20rpx;padding:20rpx;border:1rpx solid #F5F5F5;border-radius:10rpx"><view style="width:195rpx"><view style="font-weight:bold;color:#F59B38;font-size:30rpx">{{f}}%</view><view style="margin-top:10rpx">ROE</view></view><view><view class="flex"><text style="font-weight:bold;color:#070707;font-size:26rpx;margin-right:10rpx">盈利与回报</text><text style="color:#A97F53;font-size:20rpx;padding:2rpx 5rpx;background-color:#F8F4ED;border:1rpx solid #F1E7D8;border-radius:3rpx">赚钱能力</text></view><view style="margin-top:10rpx"><text style="{{h}}">{{g}}</text><text style="margin-left:10rpx">净利率 {{i}}%|毛利率 {{j}}</text></view></view></view><view wx:if="{{k}}" class="flex" style="font-size:22rpx;color:#999999;font-weight:500;margin:20rpx;padding:20rpx;border:1rpx solid #F5F5F5;border-radius:10rpx"><view style="width:195rpx"><view style="font-weight:bold;color:#EC3440;font-size:30rpx">{{l}}%</view><view style="margin-top:10rpx">资产负债率</view></view><view><view class="flex"><text style="font-weight:bold;color:#070707;font-size:26rpx;margin-right:10rpx">风险与运营</text><text style="color:#A97F53;font-size:20rpx;padding:2rpx 5rpx;background-color:#F8F4ED;border:1rpx solid #F1E7D8;border-radius:3rpx">安全边际</text></view><view style="margin-top:10rpx"><text style="{{n}}">{{m}}</text><text style="margin-left:10rpx">流动比率 {{o}}|研发费用率 {{p}}%</text></view></view></view></block><view style="text-align:center;font-size:26rpx;color:#2B2B2B;font-weight:bold;margin:20rpx"> 营收与利润趋势</view><view style="height:400rpx"><l-echart class="r" u-r="chartRef1" u-i="d36e6b92-0" bind:__l="__l"></l-echart></view><view style="text-align:left;font-size:26rpx;color:#2B2B2B;font-weight:bold;margin:20rpx">主营业务 </view><view style="height:400rpx"><l-echart class="r" u-r="chartRef2" u-i="d36e6b92-1" bind:__l="__l"></l-echart></view><view style="text-align:left;font-size:26rpx;color:#2B2B2B;font-weight:bold;margin:20rpx"> 主营业务明细与历史对比</view><view style="display:grid;grid-template-columns:130rpx repeat(4, 1fr);color:#666666;font-size:20rpx;font-weight:500;background-color:#FAFAFC;margin:20rpx;margin-bottom:0;padding:10rpx;box-sizing:border-box"><view wx:for="{{s}}" wx:for-item="item" wx:key="e" class="flexColumnCenter" style="{{'justify-content:center' + ';' + ('text-align:' + item.f + ';' + ('align-items:' + item.g))}}"><view>{{item.a}}</view><view wx:if="{{item.b}}" style="{{'font-size:18rpx' + ';' + ('text-align:' + item.d)}}">{{item.c}}</view></view></view><block wx:if="{{t}}"><view wx:for="{{v}}" wx:for-item="item" wx:key="f" class="table" style="{{'display:grid;grid-template-columns:130rpx repeat(4, 1fr);margin:0 20rpx;padding:10rpx' + ';' + ('background-color:' + item.g)}}"><view class="item">{{item.a}}</view><view class="item flexCenter">{{item.b}}%</view><view class="item flexCenter">{{item.c}}</view><view class="item flexCenter">{{item.d}}</view><view class="item flexCenter">{{item.e}}</view></view></block><view style="height:80rpx"></view></view>
|
||||
8
unpackage/dist/dev/mp-weixin/pagesStock/components/zysj-view/zysj-view.wxss
vendored
Normal file
8
unpackage/dist/dev/mp-weixin/pagesStock/components/zysj-view/zysj-view.wxss
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
.table .item {
|
||||
font-size: 20rpx;
|
||||
font-weight: 500;
|
||||
color: #666666;
|
||||
}
|
||||
.table .item.center {
|
||||
text-align: center;
|
||||
}
|
||||
Reference in New Issue
Block a user