Compare commits
39 Commits
0547133e35
...
projects/m
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8da6dc6232 | ||
|
|
3e2661581e | ||
| ec5e47a416 | |||
|
|
99d60a14bd | ||
|
|
6409d2d348 | ||
| 71f548cb3b | |||
|
|
8ecf281f08 | ||
|
|
fa75a2b89f | ||
|
|
c469ca5ebe | ||
| 9b8c090f7e | |||
|
|
cbae9ef922 | ||
|
|
c7a6ad2e22 | ||
| e66ef52489 | |||
|
|
ebb7f597b9 | ||
|
|
7d6a0e228f | ||
| 3bec7e3333 | |||
|
|
5444ff92f7 | ||
|
|
0713cb1650 | ||
| 9da2e20b24 | |||
|
|
efa5a7c383 | ||
| 6ba4c90767 | |||
|
|
b45818e2a4 | ||
|
|
00a5a8ed34 | ||
| f51d786fd3 | |||
|
|
01464663fa | ||
|
|
db393bec12 | ||
| 59df1c16f6 | |||
|
|
2f2d3defd0 | ||
|
|
0b847d2903 | ||
| 5b0bb2ccdb | |||
|
|
4d4feee160 | ||
|
|
8d370118aa | ||
| 3a5c2eeb2a | |||
|
|
72f146394b | ||
| 53b10a9847 | |||
|
|
82a7a2b8cd | ||
|
|
3e327277e9 | ||
|
|
06ab8159c5 | ||
| cdf0525fca |
@@ -35,12 +35,12 @@ export default {
|
||||
if (val == true) {
|
||||
let item = document.getElementsByClassName('el-breadcrumb__separator')
|
||||
// let item =document.getElementsByClassName('')
|
||||
item[0].classList.add("changeColor")
|
||||
item[1].classList.add("changeColor")
|
||||
item[0].style.color = rgba(255, 255, 255, 0.45)
|
||||
item[1].style.color = rgba(255, 255, 255, 0.45)
|
||||
} else {
|
||||
let item = document.getElementsByClassName('el-breadcrumb__separator')
|
||||
item[0].classList.remove("changeColor")
|
||||
item[1].classList.remove("changeColor")
|
||||
item[0].style.color = ''
|
||||
item[1].style.color = ''
|
||||
}
|
||||
},
|
||||
$route(route) {
|
||||
@@ -103,11 +103,11 @@ export default {
|
||||
color:rgba(0, 0, 0, 0.65)
|
||||
}
|
||||
</style>
|
||||
<style lang="scss">
|
||||
<!-- <style lang="scss">
|
||||
.changeColor {
|
||||
--theme-color: rgba(255, 255, 255, 0.45);
|
||||
}
|
||||
.el-breadcrumb__separator {
|
||||
color:var(--theme-color);
|
||||
}
|
||||
</style>
|
||||
</style> -->
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-06-03 15:38:31
|
||||
* @LastEditTime: 2024-07-09 15:59:41
|
||||
* @Date: 2024-07-10 15:17:28
|
||||
* @LastEditTime: 2024-07-19 15:18:00
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
|
||||
<!--
|
||||
filename: ChartContainer.vue
|
||||
author: liubin
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
<chart-container class="bar-chart-base">
|
||||
<div class="legend">
|
||||
<span v-for="item in legend" :key="item.label" class="legend-item"
|
||||
:style="{ fontSize: isFullscreen ? '0.58vw' : '0.54vw' }">{{ item.label }}</span>
|
||||
:style="{ fontSize: isFullscreen ? '0.72vw' : '0.7vw' }">{{ item.label }}</span>
|
||||
</div>
|
||||
<div ref="chart" style="height:94%;width:100%"></div>
|
||||
</chart-container>
|
||||
@@ -70,22 +70,26 @@ export default {
|
||||
color: "rgba(237,237,237,0.5)",
|
||||
},
|
||||
},
|
||||
extraCssText: 'box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38); border- radius: 4px;opacity: 0.6;backdrop- filter: blur(6px);',
|
||||
backgroundColor: '#001829',
|
||||
borderColor: '#001829',
|
||||
backgroundColor: 'rgba(0,0,0,0)', // tooltip默认背景为白色,手动置为透明
|
||||
extraCssText: 'padding:0;border-width:0',
|
||||
formatter: params => {
|
||||
console.log('params', params)
|
||||
var res = `<span style='color:rgba(255,255,255,0.85)'>${params[0].axisValueLabel}</span>`;
|
||||
var res = `<span style='color:rgba(255,255,255,0.85);display:inline-block;margin-bottom:8px;'>${params[0].axisValueLabel}</span>`;
|
||||
for (var i = 0, l = params.length; i < l; i++) {
|
||||
let color = Object.prototype.toString.call(params[i].color) == "[object String]" ? params[i].color : params[i].color.colorStops ? params[i].color.colorStops[0].color : ''
|
||||
// console.log(item.color, color);
|
||||
res +=
|
||||
"<br/>" +
|
||||
`<span style='display:inline-block;margin-right:4px;width:10px;height:10px;background-color:${color}'></span>` +
|
||||
`<span style='display:inline-block;width:150px;color:rgba(255,255,255,.85);font-size:14px;'>${params[i].seriesName}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${params[i].value ? params[i].value + '片' : 0 + '片'}</span>`;
|
||||
`<span style='display:inline-block;margin-right:4px;width:12px;height:12px;background-color:${color}'></span>` +
|
||||
`<span style='display:inline-block;width:150px;color:rgba(255,255,255,.85);font-size:16px;letter-spacing: 2px;'>${params[i].seriesName}</span>` +
|
||||
`<span style='display:inline-block;width:60px;color:rgba(255,255,255,0.65);font-size:16px;letter-spacing: 2px;text-align: right;'>${params[i].value ? params[i].value : 0}</span>`;
|
||||
}
|
||||
return res;
|
||||
const htmlContent = `
|
||||
<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
${res}
|
||||
</div>
|
||||
`;
|
||||
|
||||
return htmlContent;
|
||||
},
|
||||
},
|
||||
xAxis: {
|
||||
@@ -98,24 +102,24 @@ export default {
|
||||
},
|
||||
},
|
||||
axisLabel: {
|
||||
color: "#fff",
|
||||
fontSize: 12,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
},
|
||||
data: this.xAxis,
|
||||
},
|
||||
yAxis: {
|
||||
name: "单位/片",
|
||||
nameTextStyle: {
|
||||
color: "#fff",
|
||||
fontSize: 12,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
align: "right",
|
||||
},
|
||||
axisTick: {
|
||||
show: false,
|
||||
},
|
||||
axisLabel: {
|
||||
color: "#fff",
|
||||
fontSize: 12,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
},
|
||||
axisLine: {
|
||||
show: true,
|
||||
@@ -133,7 +137,7 @@ export default {
|
||||
{
|
||||
name: "", // this.series[0].name,
|
||||
type: "bar",
|
||||
barWidth: 12,
|
||||
barWidth: 16,
|
||||
itemStyle: {
|
||||
borderRadius: [10, 10, 0, 0],
|
||||
color: {
|
||||
@@ -168,7 +172,7 @@ export default {
|
||||
{
|
||||
name: "", // this.series[1].name,
|
||||
type: "bar",
|
||||
barWidth: 12,
|
||||
barWidth: 16,
|
||||
// tooltip: {
|
||||
// valueFormatter: function (value) {
|
||||
// return value + " ml";
|
||||
@@ -214,18 +218,18 @@ export default {
|
||||
},
|
||||
isFullscreen(val) {
|
||||
this.options.series.map((item) => {
|
||||
item.barWidth = val ? 18 : 12;
|
||||
item.barWidth = val ? 18 : 16;
|
||||
});
|
||||
this.options.xAxis.axisLabel.fontSize = val ? 18 : 12;
|
||||
this.options.yAxis.axisLabel.fontSize = val ? 18 : 12;
|
||||
this.options.yAxis.nameTextStyle.fontSize = val ? 18 : 12;
|
||||
this.options.xAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
this.options.yAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
this.options.yAxis.nameTextStyle.fontSize = val ? 18 : 16;
|
||||
this.initChart(this.options);
|
||||
// this.actualOptions.series.map((item) => {
|
||||
// item.barWidth = val ? 18 : 12;
|
||||
// item.barWidth = val ? 18 : 16;
|
||||
// });
|
||||
// this.actualOptions.xAxis.axisLabel.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.yAxis.axisLabel.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.yAxis.nameTextStyle.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.xAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
// this.actualOptions.yAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
// this.actualOptions.yAxis.nameTextStyle.fontSize = val ? 18 : 16;
|
||||
// this.initChart(this.actualOptions);
|
||||
this.canvasReset()
|
||||
},
|
||||
|
||||
@@ -73,6 +73,7 @@ export default {
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
|
||||
.copilot-container {
|
||||
height: 0;
|
||||
flex: 1;
|
||||
@@ -142,8 +143,8 @@ export default {
|
||||
position: absolute;
|
||||
// width: 16px;
|
||||
// height: 16px;
|
||||
width: 0.95vw;
|
||||
height: 0.95vw;
|
||||
width: 0.7vw;
|
||||
height: 0.7vw;
|
||||
}
|
||||
|
||||
.corner.tl {
|
||||
|
||||
@@ -75,8 +75,8 @@ button {
|
||||
.copilot-btn::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
width: 0.7vw;
|
||||
height: 0.7vw;
|
||||
top: 0;
|
||||
background: transparent;
|
||||
border-style: solid;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-07-09 15:15:00
|
||||
* @LastEditTime: 2024-07-09 15:36:49
|
||||
* @LastEditTime: 2024-07-19 16:11:37
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@@ -73,6 +73,7 @@ export default {
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
|
||||
.copilot-container {
|
||||
height: 0;
|
||||
flex: 1;
|
||||
@@ -146,8 +147,8 @@ export default {
|
||||
position: absolute;
|
||||
// width: 16px;
|
||||
// height: 16px;
|
||||
width: 0.95vw;
|
||||
height: 0.95vw;
|
||||
width: 0.7vw;
|
||||
height: 0.7vw;
|
||||
}
|
||||
|
||||
.corner.tl {
|
||||
|
||||
@@ -74,6 +74,7 @@ export default {
|
||||
|
||||
<style scoped lang="scss">
|
||||
|
||||
|
||||
.copilot-container {
|
||||
height: 0;
|
||||
flex: 1;
|
||||
@@ -147,8 +148,8 @@ export default {
|
||||
position: absolute;
|
||||
// width: 16px;
|
||||
// height: 16px;
|
||||
width: 0.95vw;
|
||||
height: 0.95vw;
|
||||
width: 0.7vw;
|
||||
height: 0.7vw;
|
||||
}
|
||||
|
||||
.corner.tl {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-05-23 15:49:14
|
||||
* @LastEditTime: 2024-07-03 14:08:52
|
||||
* @LastEditTime: 2024-07-19 16:08:27
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@@ -10,7 +10,7 @@
|
||||
<chart-container class="bar-chart-base">
|
||||
<div class="legend">
|
||||
<span v-for="item in legend" :key="item.label" class="legend-item"
|
||||
:style="{ fontSize: isFullscreen ? '0.58vw' : '0.54vw' }">{{ item.label }}</span>
|
||||
:style="{ fontSize: isFullscreen ? '0.72vw' : '0.7vw' }">{{ item.label }}</span>
|
||||
</div>
|
||||
<div ref="ftoChart" style="height:94%;width:100%"></div>
|
||||
</chart-container>
|
||||
@@ -71,22 +71,26 @@ export default {
|
||||
color: "rgba(237,237,237,0.5)",
|
||||
},
|
||||
},
|
||||
extraCssText: 'box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38); border- radius: 4px;opacity: 0.6;backdrop- filter: blur(6px);',
|
||||
backgroundColor: '#001829',
|
||||
borderColor: '#001829',
|
||||
backgroundColor: 'rgba(0,0,0,0)', // tooltip默认背景为白色,手动置为透明
|
||||
extraCssText: 'padding:0;border-width:0',
|
||||
formatter: params => {
|
||||
console.log('params', params)
|
||||
var res = `<span style='color:rgba(255,255,255,0.85)'>${params[0].axisValueLabel}</span>`;
|
||||
var res = `<span style='color:rgba(255,255,255,0.85);display:inline-block;margin-bottom:8px;'>${params[0].axisValueLabel}</span>`;
|
||||
for (var i = 0, l = params.length; i < l; i++) {
|
||||
let color = Object.prototype.toString.call(params[i].color) == "[object String]" ? params[i].color : params[i].color.colorStops ? params[i].color.colorStops[0].color : ''
|
||||
// console.log(item.color, color);
|
||||
res +=
|
||||
"<br/>" +
|
||||
`<span style='display:inline-block;margin-right:4px;width:10px;height:10px;background-color:${color}'></span>` +
|
||||
`<span style='display:inline-block;width:150px;color:rgba(255,255,255,.85);font-size:14px;'>${params[i].seriesName}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${params[i].value ? params[i].value + '片' : 0 + '片'}</span>`;
|
||||
`<span style='display:inline-block;margin-right:4px;width:12px;height:12px;background-color:${color}'></span>` +
|
||||
`<span style='display:inline-block;width:150px;color:rgba(255,255,255,.85);font-size:16px;letter-spacing: 2px;'>${params[i].seriesName}</span>` +
|
||||
`<span style='display:inline-block;width:60px;color:rgba(255,255,255,0.65);font-size:16px;letter-spacing: 2px;text-align: right;'>${params[i].value ? params[i].value : 0 }</span>`;
|
||||
}
|
||||
return res;
|
||||
const htmlContent = `
|
||||
<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
${res}
|
||||
</div>
|
||||
`;
|
||||
|
||||
return htmlContent;
|
||||
},
|
||||
},
|
||||
xAxis: {
|
||||
@@ -99,24 +103,24 @@ export default {
|
||||
},
|
||||
},
|
||||
axisLabel: {
|
||||
color: "#fff",
|
||||
fontSize: 12,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
},
|
||||
data: this.xAxis,
|
||||
},
|
||||
yAxis: {
|
||||
name: "单位/片",
|
||||
nameTextStyle: {
|
||||
color: "#fff",
|
||||
fontSize: 12,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
align: "right",
|
||||
},
|
||||
axisTick: {
|
||||
show: false,
|
||||
},
|
||||
axisLabel: {
|
||||
color: "#fff",
|
||||
fontSize: 12,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
},
|
||||
axisLine: {
|
||||
show: true,
|
||||
@@ -134,7 +138,7 @@ export default {
|
||||
{
|
||||
name: "", // this.series[0].name,
|
||||
type: "bar",
|
||||
barWidth: 12,
|
||||
barWidth: 16,
|
||||
itemStyle: {
|
||||
borderRadius: [10, 10, 0, 0],
|
||||
color: {
|
||||
@@ -169,7 +173,7 @@ export default {
|
||||
{
|
||||
name: "", // this.series[1].name,
|
||||
type: "bar",
|
||||
barWidth: 12,
|
||||
barWidth: 16,
|
||||
// tooltip: {
|
||||
// valueFormatter: function (value) {
|
||||
// return value + " ml";
|
||||
@@ -215,18 +219,18 @@ export default {
|
||||
},
|
||||
isFullscreen(val) {
|
||||
this.options.series.map((item) => {
|
||||
item.barWidth = val ? 18 : 12;
|
||||
item.barWidth = val ? 18 : 16;
|
||||
});
|
||||
this.options.xAxis.axisLabel.fontSize = val ? 18 : 12;
|
||||
this.options.yAxis.axisLabel.fontSize = val ? 18 : 12;
|
||||
this.options.yAxis.nameTextStyle.fontSize = val ? 18 : 12;
|
||||
this.options.xAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
this.options.yAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
this.options.yAxis.nameTextStyle.fontSize = val ? 18 : 16;
|
||||
this.initChart(this.options);
|
||||
// this.actualOptions.series.map((item) => {
|
||||
// item.barWidth = val ? 18 : 12;
|
||||
// item.barWidth = val ? 18 : 16;
|
||||
// });
|
||||
// this.actualOptions.xAxis.axisLabel.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.yAxis.axisLabel.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.yAxis.nameTextStyle.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.xAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
// this.actualOptions.yAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
// this.actualOptions.yAxis.nameTextStyle.fontSize = val ? 18 : 16;
|
||||
// this.initChart(this.actualOptions);
|
||||
this.canvasReset()
|
||||
},
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-06-05 09:43:51
|
||||
* @LastEditTime: 2024-07-09 15:35:19
|
||||
* @LastEditTime: 2024-07-19 16:11:59
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@@ -73,6 +73,7 @@ export default {
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
|
||||
.copilot-container {
|
||||
height: 0;
|
||||
flex: 1;
|
||||
@@ -144,8 +145,8 @@ export default {
|
||||
position: absolute;
|
||||
// width: 16px;
|
||||
// height: 16px;
|
||||
width: 0.95vw;
|
||||
height: 0.95vw;
|
||||
width: 0.7vw;
|
||||
height: 0.7vw;
|
||||
}
|
||||
|
||||
.corner.tl {
|
||||
|
||||
@@ -74,6 +74,7 @@ export default {
|
||||
|
||||
<style scoped lang="scss">
|
||||
|
||||
|
||||
.copilot-container {
|
||||
height: 0;
|
||||
flex: 1;
|
||||
@@ -147,8 +148,8 @@ export default {
|
||||
position: absolute;
|
||||
// width: 16px;
|
||||
// height: 16px;
|
||||
width: 0.95vw;
|
||||
height: 0.95vw;
|
||||
width: 0.7vw;
|
||||
height: 0.7vw;
|
||||
}
|
||||
|
||||
.corner.tl {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-06-05 09:48:37
|
||||
* @LastEditTime: 2024-07-09 15:35:04
|
||||
* @LastEditTime: 2024-07-19 16:14:07
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@@ -100,6 +100,7 @@ export default {
|
||||
|
||||
<style scoped lang="scss">
|
||||
|
||||
|
||||
.copilot-container {
|
||||
height: 0;
|
||||
flex: 1;
|
||||
@@ -171,8 +172,8 @@ export default {
|
||||
position: absolute;
|
||||
// width: 16px;
|
||||
// height: 16px;
|
||||
width: 0.95vw;
|
||||
height: 0.95vw;
|
||||
width: 0.7vw;
|
||||
height: 0.7vw;
|
||||
}
|
||||
|
||||
.corner.tl {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-05-07 13:22:43
|
||||
* @LastEditTime: 2024-07-09 14:51:21
|
||||
* @LastEditTime: 2024-07-19 16:10:10
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@@ -9,7 +9,7 @@
|
||||
<chart-container class="bar-chart-base">
|
||||
<div class="legend">
|
||||
<span v-for="(item,index) in legend" :key="index" class="legend-item"
|
||||
:style="{ fontSize: isFullscreen ? '0.58vw' : '0.54vw' }">{{ item.label }}</span>
|
||||
:style="{ fontSize: isFullscreen ? '0.72vw' : '0.7vw' }">{{ item.label }}</span>
|
||||
</div>
|
||||
<div ref="oeeChart" style="height:94%;width:100%"></div>
|
||||
</chart-container>
|
||||
@@ -70,25 +70,32 @@ export default {
|
||||
color: "rgba(237,237,237,0.5)",
|
||||
},
|
||||
},
|
||||
extraCssText: 'box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38); border- radius: 4px;opacity: 0.6;backdrop- filter: blur(6px);',
|
||||
backgroundColor: '#001829',
|
||||
borderColor: '#001829',
|
||||
backgroundColor: 'rgba(0,0,0,0)', // tooltip默认背景为白色,手动置为透明
|
||||
extraCssText: 'padding:0;border-width:0',
|
||||
formatter: params => {
|
||||
console.log('params', params)
|
||||
var res = `<span style='color:rgba(255,255,255,0.85)'>${params[0].axisValueLabel}</span>`;
|
||||
var res = `<span style='color:rgba(255,255,255,0.85);margin-bottom:8px'>${params[0].axisValueLabel}</span>`;
|
||||
for (var i = 0, l = params.length; i < l; i++) {
|
||||
let color = Object.prototype.toString.call(params[i].color) == "[object String]" ? params[i].color : params[i].color.colorStops ? params[i].color.colorStops[0].color : ''
|
||||
// console.log(item.color, color);
|
||||
res +=
|
||||
"<br/>" +
|
||||
`${params[i].seriesType === "line"
|
||||
? '<img width="11" height="11" style="margin-right:4px;" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTIuNzIxNjM5NXB4IiBoZWlnaHQ9IjhweCIgdmlld0JveD0iMCAwIDEyLjcyMTYzOTUgOCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KICAgIDx0aXRsZT7nvJbnu4QgNjwvdGl0bGU+CiAgICA8ZyBpZD0iMDTmiqXooajnrqHnkIYiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSLmjIfmoIflrozmiJDmg4XlhrUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xMDUxLjYzOTE4MCwgLTQyNS4wMDAwMDApIj4KICAgICAgICAgICAgPGcgaWQ9Iue8lue7hC025aSH5Lu9LTQiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwMjEuNTAwMDAwLCAzNDQuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICA8ZyBpZD0i57yW57uELTYiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDI5LjUwMDAwMCwgNzguMDAwMDAwKSI+CiAgICAgICAgICAgICAgICAgICAgPHJlY3QgaWQ9IuefqeW9oiIgeD0iMCIgeT0iMCIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0Ij48L3JlY3Q+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTcuMTM5MTgwMjYsMyBDOS4wMDMxMDczNywzIDEwLjU2OTI2NzMsNC4yNzQ4OTI3MiAxMS4wMTMyMjU0LDYuMDAwMjQzNDcgTDEyLjM2MDgxOTcsNiBDMTIuOTEzMTA0NSw2IDEzLjM2MDgxOTcsNi40NDc3MTUyNSAxMy4zNjA4MTk3LDcgQzEzLjM2MDgxOTcsNy41NTIyODQ3NSAxMi45MTMxMDQ1LDggMTIuMzYwODE5Nyw4IEwxMS4wMTI5NjY3LDguMDAwNzYxMzQgQzEwLjU2ODY1OTIsOS43MjU2MDIyNCA5LjAwMjc0NTUxLDExIDcuMTM5MTgwMjYsMTEgQzUuMjc1NjE1MDEsMTEgMy43MDk3MDEzMSw5LjcyNTYwMjI0IDMuMjY1MzkzNzgsOC4wMDA3NjEzNCBMMS42MzkxODAyNiw4IEMxLjA4Njg5NTUxLDggMC42MzkxODAyNTgsNy41NTIyODQ3NSAwLjYzOTE4MDI1OCw3IEMwLjYzOTE4MDI1OCw2LjQ0NzcxNTI1IDEuMDg2ODk1NTEsNiAxLjYzOTE4MDI2LDYgTDMuMjY1MTM1MDksNi4wMDAyNDM0NyBDMy43MDkwOTMyLDQuMjc0ODkyNzIgNS4yNzUyNTMxNSwzIDcuMTM5MTgwMjYsMyBaIiBpZD0i5b2i54q257uT5ZCIIiBmaWxsPSIjRkZDRTZBIiBmaWxsLXJ1bGU9Im5vbnplcm8iPjwvcGF0aD4KICAgICAgICAgICAgICAgIDwvZz4KICAgICAgICAgICAgPC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+" />'
|
||||
: `<span style="display:inline-block;margin-right:4px;border-radius:2px;width:10px;height:10px;background-color:${color}"></span>`
|
||||
}` +
|
||||
`<span style='display:inline-block;width:150px;color:rgba(255,255,255,.85);font-size:14px;'>${params[i].seriesName}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${params[i].value ? params[i].value + '%' : 0 + '%'}</span>`;
|
||||
`${params[i].seriesType === "line"
|
||||
? `<span style='display:inline-block; width: 20px;height: 2px;background-color: #f3c000;position: absolute;top:76.3%;left:3.5%;'></span>
|
||||
<span style='display:inline-block;width: 10px;height: 10px;border-radius: 100%;background-color: #f3c000;position: absolute;top:72.6%;left:4.8%;'></span>
|
||||
<span style='display:inline-block;width:150px;color:rgba(255,255,255,.85);font-size:16px;margin-left:20px'>${params[i].seriesName}</span>`
|
||||
: `<span style="display:inline-block;margin-right:4px;border-radius:2px;width:12px;height:12px;background-color:${color}"></span>
|
||||
<span style='display:inline-block;width:150px;color:rgba(255,255,255,.85);font-size:16px'>${params[i].seriesName}</span>`
|
||||
}` +
|
||||
`<span style='display:inline-block;text-align: right;width:180px;color:rgba(255,255,255,0.65);;font-size:16px;letter-spacing: 2px;'>${params[i].value ? params[i].value + '%' : 0 + '%'}</span>`;
|
||||
}
|
||||
return res;
|
||||
const htmlContent = `
|
||||
<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
${res}
|
||||
</div>
|
||||
`;
|
||||
|
||||
return htmlContent;
|
||||
},
|
||||
},
|
||||
xAxis: {
|
||||
@@ -101,23 +108,23 @@ export default {
|
||||
},
|
||||
},
|
||||
axisLabel: {
|
||||
color: "#fff",
|
||||
fontSize: 12,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
},
|
||||
data: this.xAxis,
|
||||
},
|
||||
yAxis: {
|
||||
name: "单位/%",
|
||||
nameTextStyle: {
|
||||
color: "#fff",
|
||||
fontSize: 12,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
},
|
||||
axisTick: {
|
||||
show: false,
|
||||
},
|
||||
axisLabel: {
|
||||
color: "#fff",
|
||||
fontSize: 12,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
},
|
||||
axisLine: {
|
||||
show: true,
|
||||
@@ -135,7 +142,7 @@ export default {
|
||||
{
|
||||
name: "", // this.series[0].name,
|
||||
type: "bar",
|
||||
barWidth: 12,
|
||||
barWidth: 16,
|
||||
itemStyle: {
|
||||
borderRadius: [10, 10, 0, 0],
|
||||
color: {
|
||||
@@ -170,7 +177,7 @@ export default {
|
||||
{
|
||||
name: "", // this.series[1].name,
|
||||
type: "bar",
|
||||
barWidth: 12,
|
||||
barWidth: 16,
|
||||
// tooltip: {
|
||||
// valueFormatter: function (value) {
|
||||
// return value + " ml";
|
||||
@@ -250,11 +257,11 @@ export default {
|
||||
/** 全屏状态切换时,对柱子粗细和字体大小进行相应调整 */
|
||||
isFullscreen(val) {
|
||||
// this.actualOptions.series.map((item) => {
|
||||
// item.barWidth = val ? 18 : 12;
|
||||
// item.barWidth = val ? 18 : 16;
|
||||
// });
|
||||
// this.actualOptions.xAxis.axisLabel.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.yAxis.axisLabel.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.yAxis.nameTextStyle.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.xAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
// this.actualOptions.yAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
// this.actualOptions.yAxis.nameTextStyle.fontSize = val ? 18 : 16;
|
||||
// if (val === false && this.isOpen === true) {
|
||||
// console.log(val)
|
||||
// this.width = 97 + '%'
|
||||
@@ -264,11 +271,11 @@ export default {
|
||||
// this.canvasReset()
|
||||
// }
|
||||
// this.actualOptions.series.map((item) => {
|
||||
// item.barWidth = val ? 18 : 12;
|
||||
// item.barWidth = val ? 18 : 16;
|
||||
// });
|
||||
// this.actualOptions.xAxis.axisLabel.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.yAxis.axisLabel.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.yAxis.nameTextStyle.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.xAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
// this.actualOptions.yAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
// this.actualOptions.yAxis.nameTextStyle.fontSize = val ? 18 : 16;
|
||||
this.initChart(this.options)
|
||||
this.canvasReset()
|
||||
},
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-05-23 15:50:44
|
||||
* @LastEditTime: 2024-07-09 14:57:49
|
||||
* @LastEditTime: 2024-07-19 16:10:19
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@@ -9,7 +9,7 @@
|
||||
<chart-container class="bar-chart-base">
|
||||
<div class="legend">
|
||||
<span v-for="(item,index) in legend" :key="index" class="legend-item"
|
||||
:style="{ fontSize: isFullscreen ? '0.58vw' : '0.54vw' }">{{ item.label }}</span>
|
||||
:style="{ fontSize: isFullscreen ? '0.72vw' : '0.7vw' }">{{ item.label }}</span>
|
||||
</div>
|
||||
<div ref="oeeChart" style="height:94%;width:100%"></div>
|
||||
</chart-container>
|
||||
@@ -70,25 +70,32 @@ export default {
|
||||
color: "rgba(237,237,237,0.5)",
|
||||
},
|
||||
},
|
||||
extraCssText: 'box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38); border- radius: 4px;opacity: 0.6;backdrop- filter: blur(6px);',
|
||||
backgroundColor: '#001829',
|
||||
borderColor: '#001829',
|
||||
backgroundColor: 'rgba(0,0,0,0)', // tooltip默认背景为白色,手动置为透明
|
||||
extraCssText: 'padding:0;border-width:0',
|
||||
formatter: params => {
|
||||
console.log('params', params)
|
||||
var res = `<span style='color:rgba(255,255,255,0.85)'>${params[0].axisValueLabel}</span>`;
|
||||
var res = `<span style='color:rgba(255,255,255,0.85);margin-bottom:8px'>${params[0].axisValueLabel}</span>`;
|
||||
for (var i = 0, l = params.length; i < l; i++) {
|
||||
let color = Object.prototype.toString.call(params[i].color) == "[object String]" ? params[i].color : params[i].color.colorStops ? params[i].color.colorStops[0].color : ''
|
||||
// console.log(item.color, color);
|
||||
res +=
|
||||
"<br/>" +
|
||||
`${params[i].seriesType === "line"
|
||||
? '<img width="11" height="11" style="margin-right:4px;" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTIuNzIxNjM5NXB4IiBoZWlnaHQ9IjhweCIgdmlld0JveD0iMCAwIDEyLjcyMTYzOTUgOCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KICAgIDx0aXRsZT7nvJbnu4QgNjwvdGl0bGU+CiAgICA8ZyBpZD0iMDTmiqXooajnrqHnkIYiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSLmjIfmoIflrozmiJDmg4XlhrUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xMDUxLjYzOTE4MCwgLTQyNS4wMDAwMDApIj4KICAgICAgICAgICAgPGcgaWQ9Iue8lue7hC025aSH5Lu9LTQiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwMjEuNTAwMDAwLCAzNDQuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICA8ZyBpZD0i57yW57uELTYiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDI5LjUwMDAwMCwgNzguMDAwMDAwKSI+CiAgICAgICAgICAgICAgICAgICAgPHJlY3QgaWQ9IuefqeW9oiIgeD0iMCIgeT0iMCIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0Ij48L3JlY3Q+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTcuMTM5MTgwMjYsMyBDOS4wMDMxMDczNywzIDEwLjU2OTI2NzMsNC4yNzQ4OTI3MiAxMS4wMTMyMjU0LDYuMDAwMjQzNDcgTDEyLjM2MDgxOTcsNiBDMTIuOTEzMTA0NSw2IDEzLjM2MDgxOTcsNi40NDc3MTUyNSAxMy4zNjA4MTk3LDcgQzEzLjM2MDgxOTcsNy41NTIyODQ3NSAxMi45MTMxMDQ1LDggMTIuMzYwODE5Nyw4IEwxMS4wMTI5NjY3LDguMDAwNzYxMzQgQzEwLjU2ODY1OTIsOS43MjU2MDIyNCA5LjAwMjc0NTUxLDExIDcuMTM5MTgwMjYsMTEgQzUuMjc1NjE1MDEsMTEgMy43MDk3MDEzMSw5LjcyNTYwMjI0IDMuMjY1MzkzNzgsOC4wMDA3NjEzNCBMMS42MzkxODAyNiw4IEMxLjA4Njg5NTUxLDggMC42MzkxODAyNTgsNy41NTIyODQ3NSAwLjYzOTE4MDI1OCw3IEMwLjYzOTE4MDI1OCw2LjQ0NzcxNTI1IDEuMDg2ODk1NTEsNiAxLjYzOTE4MDI2LDYgTDMuMjY1MTM1MDksNi4wMDAyNDM0NyBDMy43MDkwOTMyLDQuMjc0ODkyNzIgNS4yNzUyNTMxNSwzIDcuMTM5MTgwMjYsMyBaIiBpZD0i5b2i54q257uT5ZCIIiBmaWxsPSIjRkZDRTZBIiBmaWxsLXJ1bGU9Im5vbnplcm8iPjwvcGF0aD4KICAgICAgICAgICAgICAgIDwvZz4KICAgICAgICAgICAgPC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+" />'
|
||||
: `<span style="display:inline-block;margin-right:4px;border-radius:2px;width:10px;height:10px;background-color:${color}"></span>`
|
||||
}` +
|
||||
`<span style='display:inline-block;width:150px;color:rgba(255,255,255,.85);font-size:14px;'>${params[i].seriesName}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${params[i].value ? params[i].value + '%' : 0 + '%'}</span>`;
|
||||
`${params[i].seriesType === "line"
|
||||
? `<span style='display:inline-block; width: 20px;height: 2px;background-color: #f3c000;position: absolute;top:76.3%;left:3.5%;'></span>
|
||||
<span style='display:inline-block;width: 10px;height: 10px;border-radius: 100%;background-color: #f3c000;position: absolute;top:72.6%;left:4.8%;'></span>
|
||||
<span style='display:inline-block;width:150px;color:rgba(255,255,255,.85);font-size:16px;margin-left:20px'>${params[i].seriesName}</span>`
|
||||
: `<span style="display:inline-block;margin-right:4px;border-radius:2px;width:12px;height:12px;background-color:${color}"></span>
|
||||
<span style='display:inline-block;width:150px;color:rgba(255,255,255,.85);font-size:16px'>${params[i].seriesName}</span>`
|
||||
}` +
|
||||
`<span style='display:inline-block;text-align: right;width:180px;color:rgba(255,255,255,0.65);;font-size:16px;letter-spacing: 2px;'>${params[i].value ? params[i].value + '%' : 0 + '%'}</span>`;
|
||||
}
|
||||
return res;
|
||||
const htmlContent = `
|
||||
<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
${res}
|
||||
</div>
|
||||
`;
|
||||
|
||||
return htmlContent;
|
||||
},
|
||||
},
|
||||
xAxis: {
|
||||
@@ -101,23 +108,23 @@ export default {
|
||||
},
|
||||
},
|
||||
axisLabel: {
|
||||
color: "#fff",
|
||||
fontSize: 12,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
},
|
||||
data: this.xAxis,
|
||||
},
|
||||
yAxis: {
|
||||
name: "单位/%",
|
||||
nameTextStyle: {
|
||||
color: "#fff",
|
||||
fontSize: 12,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
},
|
||||
axisTick: {
|
||||
show: false,
|
||||
},
|
||||
axisLabel: {
|
||||
color: "#fff",
|
||||
fontSize: 12,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
},
|
||||
axisLine: {
|
||||
show: true,
|
||||
@@ -135,7 +142,7 @@ export default {
|
||||
{
|
||||
name: "", // this.series[0].name,
|
||||
type: "bar",
|
||||
barWidth: 12,
|
||||
barWidth: 16,
|
||||
itemStyle: {
|
||||
borderRadius: [10, 10, 0, 0],
|
||||
color: {
|
||||
@@ -170,7 +177,7 @@ export default {
|
||||
{
|
||||
name: "", // this.series[1].name,
|
||||
type: "bar",
|
||||
barWidth: 12,
|
||||
barWidth: 16,
|
||||
// tooltip: {
|
||||
// valueFormatter: function (value) {
|
||||
// return value + " ml";
|
||||
@@ -250,11 +257,11 @@ export default {
|
||||
/** 全屏状态切换时,对柱子粗细和字体大小进行相应调整 */
|
||||
isFullscreen(val) {
|
||||
// this.actualOptions.series.map((item) => {
|
||||
// item.barWidth = val ? 18 : 12;
|
||||
// item.barWidth = val ? 18 : 16;
|
||||
// });
|
||||
// this.actualOptions.xAxis.axisLabel.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.yAxis.axisLabel.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.yAxis.nameTextStyle.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.xAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
// this.actualOptions.yAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
// this.actualOptions.yAxis.nameTextStyle.fontSize = val ? 18 : 16;
|
||||
// if (val === false && this.isOpen === true) {
|
||||
// console.log(val)
|
||||
// this.width = 97 + '%'
|
||||
@@ -264,11 +271,11 @@ export default {
|
||||
// this.canvasReset()
|
||||
// }
|
||||
// this.actualOptions.series.map((item) => {
|
||||
// item.barWidth = val ? 18 : 12;
|
||||
// item.barWidth = val ? 18 : 16;
|
||||
// });
|
||||
// this.actualOptions.xAxis.axisLabel.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.yAxis.axisLabel.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.yAxis.nameTextStyle.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.xAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
// this.actualOptions.yAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
// this.actualOptions.yAxis.nameTextStyle.fontSize = val ? 18 : 16;
|
||||
this.initChart(this.options)
|
||||
this.canvasReset()
|
||||
},
|
||||
|
||||
@@ -24,18 +24,18 @@
|
||||
title: {
|
||||
text: titleValue,
|
||||
left: "48%",
|
||||
top: "37%",
|
||||
top: "middle",
|
||||
textAlign: "center",
|
||||
textStyle: {
|
||||
fontWeight: 600,
|
||||
fontSize: 36,
|
||||
color: "#fffd",
|
||||
color: "rgba(223,241,254,.8)",
|
||||
},
|
||||
subtext: `\u2002${yesterday + '日良率'}\u2002`,
|
||||
subtextStyle: {
|
||||
fontSize: 16,
|
||||
fontWeight: 100,
|
||||
color: "#fffd",
|
||||
color: "rgba(255,255,255,.7)",
|
||||
align: "right",
|
||||
},
|
||||
},
|
||||
@@ -67,8 +67,15 @@
|
||||
value: currentSum,
|
||||
name: currentName,
|
||||
tooltip: {
|
||||
formatter: `<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:14px;'>${currentName}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${currentSum}</span>`
|
||||
backgroundColor: 'rgba(0,0,0,0)', // tooltip默认背景为白色,手动置为透明
|
||||
extraCssText: 'padding:0;border-width:0',
|
||||
formatter:`
|
||||
<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
<span style='display:inline-block;margin-right:4px;border-radius:2px;width:12px;height:12px;background-color:#4CF0E8'></span>
|
||||
<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:16px;'>${currentName}</span>
|
||||
<span style='color:rgba(255,255,255,0.65);font-size:16px;'>${currentSum}</span>
|
||||
</div>
|
||||
`
|
||||
},
|
||||
selected: false,
|
||||
itemStyle: {
|
||||
@@ -93,8 +100,15 @@
|
||||
value:(targetSum - currentSum) === 0 ? 1 : (targetSum - currentSum),
|
||||
name: currentName,
|
||||
tooltip: {
|
||||
formatter: `<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:14px;'>${currentName}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${currentSum}</span>`
|
||||
backgroundColor: 'rgba(0,0,0,0)', // tooltip默认背景为白色,手动置为透明
|
||||
extraCssText: 'padding:0;border-width:0',
|
||||
formatter:`
|
||||
<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
<span style='display:inline-block;margin-right:4px;border-radius:2px;width:12px;height:12px;background-color:#4CF0E8'></span>
|
||||
<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:16px;'>${currentName}</span>
|
||||
<span style='color:rgba(255,255,255,0.65);font-size:16px;'>${currentSum}</span>
|
||||
</div>
|
||||
`
|
||||
},
|
||||
itemStyle: { color: "transparent" },
|
||||
label: { show: false },
|
||||
@@ -118,8 +132,15 @@
|
||||
value: previousSum,
|
||||
name: preName,
|
||||
tooltip: {
|
||||
formatter: `<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:14px;'>${preName}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${previousSum}</span>`
|
||||
backgroundColor: 'rgba(0,0,0,0)', // tooltip默认背景为白色,手动置为透明
|
||||
extraCssText: 'padding:0;border-width:0',
|
||||
formatter:`
|
||||
<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
<span style='display:inline-block;margin-right:4px;border-radius:2px;width:12px;height:12px;background-color:#1065ff'></span>
|
||||
<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:16px;'>${preName}</span>
|
||||
<span style='color:rgba(255,255,255,0.65);font-size:16px;'>${previousSum}</span>
|
||||
</div>
|
||||
`
|
||||
},
|
||||
selected: false,
|
||||
itemStyle: {
|
||||
@@ -144,8 +165,15 @@
|
||||
value:previousSum === 0 ? 1 : 0,
|
||||
name: preName,
|
||||
tooltip: {
|
||||
formatter: `<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:14px;'>${preName}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${previousSum}</span>`
|
||||
backgroundColor: 'rgba(0,0,0,0)', // tooltip默认背景为白色,手动置为透明
|
||||
extraCssText: 'padding:0;border-width:0',
|
||||
formatter:`
|
||||
<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
<span style='display:inline-block;margin-right:4px;border-radius:2px;width:12px;height:12px;background-color:#1065ff'></span>
|
||||
<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:16px;'>${preName}</span>
|
||||
<span style='color:rgba(255,255,255,0.65);font-size:16px;'>${previousSum}</span>
|
||||
</div>
|
||||
`
|
||||
},
|
||||
itemStyle: { color: "transparent" },
|
||||
label: { show: false },
|
||||
|
||||
@@ -55,7 +55,7 @@ export default {
|
||||
options: {
|
||||
color: ["#FFD160", "#2760FF", "#12FFF5"],
|
||||
grid: {
|
||||
left: "6%",
|
||||
left: "9%",
|
||||
right: "3%",
|
||||
bottom: "15%",
|
||||
top: "15%",
|
||||
@@ -68,21 +68,26 @@ export default {
|
||||
color: "rgba(237,237,237,0.5)",
|
||||
},
|
||||
},
|
||||
extraCssText: 'box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38); border- radius: 4px;opacity: 0.6;backdrop- filter: blur(6px);',
|
||||
backgroundColor: '#001829',
|
||||
borderColor: '#001829',
|
||||
backgroundColor: 'rgba(0,0,0,0)', // tooltip默认背景为白色,手动置为透明
|
||||
extraCssText: 'padding:0;border-width:0',
|
||||
formatter: params => {
|
||||
console.log('params', params)
|
||||
var res = ``;
|
||||
for (var i = 0, l = params.length; i < l; i++) {
|
||||
let color = Object.prototype.toString.call(params[i].color) == "[object String]" ? params[i].color : params[i].color.colorStops ? params[i].color.colorStops[0].color : ''
|
||||
// console.log(item.color, color);
|
||||
res +=
|
||||
`<span style='display:inline-block;margin-right:4px;width:10px;height:10px;background-color:${color}'></span>` +
|
||||
`<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:14px;'>${params[0].axisValueLabel}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${params[i].value ? params[i].value + '片' : 0 + '片'}</span>`;
|
||||
`<span style='display:inline-block;margin-right:4px;width:12px;height:12px;background-color:${color}'></span>` +
|
||||
`<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:16px;letter-spacing: 2px;'>${params[0].axisValueLabel}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:16px;letter-spacing: 2px;'>${params[i].value ? params[i].value : 0}</span>`;
|
||||
}
|
||||
return res;
|
||||
const htmlContent = `
|
||||
<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
${res}
|
||||
</div>
|
||||
`;
|
||||
|
||||
return htmlContent;
|
||||
// return res;
|
||||
},
|
||||
},
|
||||
xAxis: {
|
||||
@@ -97,8 +102,8 @@ export default {
|
||||
axisLabel: {
|
||||
interval: 0,//设置横坐标为斜
|
||||
rotate:45,
|
||||
color: "rgba(255, 255, 255, 0.7)",
|
||||
fontSize: 12,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
// formatter: function (value) {
|
||||
// console.log(value);
|
||||
|
||||
@@ -119,16 +124,16 @@ export default {
|
||||
name: "单位/片",
|
||||
position: 'left',
|
||||
nameTextStyle: {
|
||||
color: "rgba(255, 255, 255, 0.7)",
|
||||
fontSize: 12,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
align: "right",
|
||||
},
|
||||
axisTick: {
|
||||
show: false,
|
||||
},
|
||||
axisLabel: {
|
||||
color: "rgba(255, 255, 255, 0.7)",
|
||||
fontSize: 10,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize:16,
|
||||
},
|
||||
axisLine: {
|
||||
show: true,
|
||||
@@ -196,7 +201,7 @@ export default {
|
||||
// { offset: 1, color: "#12FFF5" + "00" },
|
||||
// ]),
|
||||
// },
|
||||
barWidth: 12,
|
||||
barWidth: 16,
|
||||
itemStyle: {
|
||||
borderRadius: [10, 10, 0, 0],
|
||||
color: {
|
||||
@@ -240,11 +245,11 @@ export default {
|
||||
/** 全屏状态切换时,对柱子粗细和字体大小进行相应调整 */
|
||||
// isFullscreen(val) {
|
||||
// this.actualOptions.series.map((item) => {
|
||||
// item.barWidth = val ? 18 : 12;
|
||||
// item.barWidth = val ? 18 : 16;
|
||||
// });
|
||||
// this.actualOptions.xAxis.axisLabel.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.yAxis.axisLabel.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.yAxis.nameTextStyle.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.xAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
// this.actualOptions.yAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
// this.actualOptions.yAxis.nameTextStyle.fontSize = val ? 18 : 16;
|
||||
// this.initOptions(this.actualOptions);
|
||||
// },
|
||||
// series(val) {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-05-30 08:58:39
|
||||
* @LastEditTime: 2024-07-03 14:10:06
|
||||
* @LastEditTime: 2024-07-18 16:48:10
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@@ -9,7 +9,7 @@
|
||||
<chart-container class="bar-chart-base">
|
||||
<div class="legend">
|
||||
<span v-for="(item,index) in legend" :key="index" class="legend-item"
|
||||
:style="{ fontSize: isFullscreen ? '0.58vw' : '0.54vw' }">{{ item.label }}</span>
|
||||
:style="{ fontSize: isFullscreen ? '0.72vw' : '0.7vw' }">{{ item.label }}</span>
|
||||
</div>
|
||||
<div ref="oeeChart" style="height:100%"></div>
|
||||
</chart-container>
|
||||
@@ -56,7 +56,7 @@ export default {
|
||||
actualOptions: null,
|
||||
options: {
|
||||
grid: {
|
||||
left: "5%",
|
||||
left: "8%",
|
||||
right: "0%",
|
||||
bottom: "3%",
|
||||
top: "15%",
|
||||
@@ -97,23 +97,28 @@ export default {
|
||||
color: "rgba(237,237,237,0.5)",
|
||||
},
|
||||
},
|
||||
extraCssText: 'box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38); border- radius: 4px;opacity: 0.6;backdrop- filter: blur(6px);',
|
||||
backgroundColor: '#001829',
|
||||
borderColor: '#001829',
|
||||
formatter: params => {
|
||||
console.log('params', params)
|
||||
var res = `<span style='color:rgba(255,255,255,0.85)'>${params[0].axisValueLabel}</span>`;
|
||||
for (var i = 0, l = params.length; i < l; i++) {
|
||||
let color = Object.prototype.toString.call(params[i].color) == "[object String]" ? params[i].color : params[i].color.colorStops ? params[i].color.colorStops[0].color : ''
|
||||
// console.log(item.color, color);
|
||||
res +=
|
||||
"<br/>" +
|
||||
`<span style='display:inline-block;margin-right:4px;width:10px;height:10px;background-color:${color}'></span>` +
|
||||
`<span style='display:inline-block;width:150px;color:rgba(255,255,255,.85);font-size:14px;'>${params[i].seriesName}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${params[i].value ? params[i].value + '片' : 0 + '片'}</span>`;
|
||||
}
|
||||
return res;
|
||||
},
|
||||
backgroundColor: 'rgba(0,0,0,0)', // tooltip默认背景为白色,手动置为透明
|
||||
extraCssText: 'padding:0;border-width:0',
|
||||
formatter: params => {
|
||||
var res = `<span style='display:inline-block;color:rgba(255,255,255,0.85);margin-bottom:8px;font-size:16px;letter-spacing: 2px;'>${params[0].axisValueLabel}</span>`;
|
||||
for (var i = 0, l = params.length; i < l; i++) {
|
||||
let color = Object.prototype.toString.call(params[i].color) == "[object String]" ? params[i].color : params[i].color.colorStops ? params[i].color.colorStops[0].color : ''
|
||||
// console.log(item.color, color);
|
||||
res +=
|
||||
"<br/>" +
|
||||
`<span style='display:inline-block;margin-right:4px;width:12px;height:12px;background-color:${color}'></span>` +
|
||||
`<span style='display:inline-block;width:150px;color:rgba(255,255,255,.85);font-size:16px;letter-spacing: 2px;'>${params[i].seriesName}</span>` +
|
||||
`<span style='display:inline-block;width:60px;color:rgba(255,255,255,0.65);font-size:16px;letter-spacing: 2px;text-align:right'>${params[i].value ? params[i].value : 0}</span>`;
|
||||
}
|
||||
const htmlContent = `
|
||||
<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
${res}
|
||||
</div>
|
||||
`;
|
||||
|
||||
return htmlContent;
|
||||
// return res;
|
||||
},
|
||||
},
|
||||
xAxis: {
|
||||
axisTick: {
|
||||
@@ -125,8 +130,8 @@ export default {
|
||||
},
|
||||
},
|
||||
axisLabel: {
|
||||
color: "#fff",
|
||||
fontSize: 12,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
},
|
||||
data: this.xAxis,
|
||||
},
|
||||
@@ -134,16 +139,16 @@ export default {
|
||||
name: "单位/片",
|
||||
position: 'left',
|
||||
nameTextStyle: {
|
||||
color: "#fff",
|
||||
fontSize: 12,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
align: "right",
|
||||
},
|
||||
axisTick: {
|
||||
show: false,
|
||||
},
|
||||
axisLabel: {
|
||||
color: "#fff",
|
||||
fontSize: 12,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
},
|
||||
axisLine: {
|
||||
show: true,
|
||||
@@ -161,7 +166,7 @@ export default {
|
||||
{
|
||||
name: "FTO", // this.series[0].name,
|
||||
type: "bar",
|
||||
barWidth: 12,
|
||||
barWidth: 16,
|
||||
itemStyle: {
|
||||
borderRadius: [10, 10, 0, 0],
|
||||
color: {
|
||||
@@ -196,7 +201,7 @@ export default {
|
||||
{
|
||||
name: "", // this.series[1].name,
|
||||
type: "bar",
|
||||
barWidth: 12,
|
||||
barWidth: 16,
|
||||
// tooltip: {
|
||||
// valueFormatter: function (value) {
|
||||
// return value + " ml";
|
||||
@@ -228,7 +233,7 @@ export default {
|
||||
{
|
||||
name: "", // "2024年目标值",
|
||||
type: "line",
|
||||
barWidth: 12,
|
||||
barWidth: 16,
|
||||
itemStyle: {
|
||||
borderRadius: [10, 10, 0, 0],
|
||||
color:'#f3c000'
|
||||
@@ -255,11 +260,11 @@ export default {
|
||||
/** 全屏状态切换时,对柱子粗细和字体大小进行相应调整 */
|
||||
isFullscreen(val) {
|
||||
this.options.series.map((item) => {
|
||||
item.barWidth = val ? 18 : 12;
|
||||
item.barWidth = val ? 18 : 16;
|
||||
});
|
||||
this.options.xAxis.axisLabel.fontSize = val ? 18 : 12;
|
||||
this.options.yAxis.axisLabel.fontSize = val ? 18 : 12;
|
||||
this.options.yAxis.nameTextStyle.fontSize = val ? 18 : 12;
|
||||
this.options.xAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
this.options.yAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
this.options.yAxis.nameTextStyle.fontSize = val ? 18 : 16;
|
||||
// if (val === false && this.isOpen === true) {
|
||||
// console.log(val)
|
||||
// this.width = 97 + '%'
|
||||
@@ -269,11 +274,11 @@ export default {
|
||||
// this.canvasReset()
|
||||
// }
|
||||
// this.actualOptions.series.map((item) => {
|
||||
// item.barWidth = val ? 18 : 12;
|
||||
// item.barWidth = val ? 18 : 16;
|
||||
// });
|
||||
// this.actualOptions.xAxis.axisLabel.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.yAxis.axisLabel.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.yAxis.nameTextStyle.fontSize = val ? 18 : 12;
|
||||
// this.actualOptions.xAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
// this.actualOptions.yAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
// this.actualOptions.yAxis.nameTextStyle.fontSize = val ? 18 : 16;
|
||||
this.initChart(this.options)
|
||||
this.canvasReset()
|
||||
},
|
||||
@@ -350,7 +355,7 @@ export default {
|
||||
|
||||
.legend-item {
|
||||
position: relative;
|
||||
// font-size: 12px;
|
||||
font-size: 1.2vw;
|
||||
margin-right:1.2vw;
|
||||
color: #DFF1FE;
|
||||
&::before {
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
<template>
|
||||
<div class="order-container">
|
||||
<div class="table">
|
||||
<dv-scroll-board v-if="showTable" :config="config" style="width: 100%; height: 100%; color: rgba(255, 255, 255, .6);" ref="orderScrollBoard" />
|
||||
<dv-scroll-board v-if="showTable" :config="config"
|
||||
style="width: 100%; height: 100%; color: rgba(255, 255, 255,1);font-size:16," ref="orderScrollBoard" />
|
||||
</div>
|
||||
<div class="chart">
|
||||
<div class="chart-title">
|
||||
@@ -12,8 +13,7 @@
|
||||
<CopilotButton v-for="i in ['目标产量', '计划投入', '实际投入', '实际产出', '废品数量', '待再加工']" :key="i" :label="i"
|
||||
:active="i === type" @click="() => $emit('update:type', i)" />
|
||||
</div>
|
||||
<barChartBase :type="type" :energyCockpits="prodOrder" ref="barChart"
|
||||
style="height: 0;flex:1"></barChartBase>
|
||||
<barChartBase :type="type" :energyCockpits="prodOrder" ref="barChart" style="height: 0;flex:1"></barChartBase>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -40,7 +40,7 @@ export default {
|
||||
evenRowBGC: "rgba(rgba(2, 13, 45, 0.18)",
|
||||
data: [],
|
||||
rowNum: 12,
|
||||
fontSize:14,
|
||||
fontSize:16,
|
||||
waitTime: 3000,
|
||||
columnWidth: [150],
|
||||
align: ["left"],
|
||||
@@ -100,20 +100,20 @@ export default {
|
||||
let arr = [];
|
||||
// arr.push(i + 1);
|
||||
arr.push(
|
||||
`<span title=${this.prodOrder[i].workOrderNumber || ""}>${
|
||||
`<span title=${this.prodOrder[i].workOrderNumber || ""} style='color: rgba(223,241,254,.8);font-size:16px' >${
|
||||
this.prodOrder[i].workOrderNumber || ""
|
||||
}</span>`,
|
||||
`<span title=${this.prodOrder[i].orderStatus || ""}>${this.prodOrder[i].orderStatus === 1 ? '未开始' : this.prodOrder[i].orderStatus === 2 ? '进行中' : '已完成' || ""
|
||||
`<span style='color: rgba(223,241,254,.8);font-size:16px' title=${this.prodOrder[i].orderStatus || ""}>${this.prodOrder[i].orderStatus === 1 ? '未开始' : this.prodOrder[i].orderStatus === 2 ? '进行中' : '已完成' || ""
|
||||
}</span>`,
|
||||
`<span title=${this.prodOrder[i].plannedInvestment || ""}>${this.prodOrder[i].plannedInvestment || ""
|
||||
`<span style='color: rgba(223,241,254,.8);font-size:16px' title=${this.prodOrder[i].plannedInvestment || ""}>${this.prodOrder[i].plannedInvestment || ""
|
||||
}</span>`,
|
||||
`<span title=${this.prodOrder[i].actualInvestment || ""}>${this.prodOrder[i].actualInvestment || ""
|
||||
`<span style='color: rgba(223,241,254,.8);font-size:16px' title=${this.prodOrder[i].actualInvestment || ""}>${this.prodOrder[i].actualInvestment || ""
|
||||
}</span>`,
|
||||
`<span title=${this.prodOrder[i].targetProduction || ""}>${this.prodOrder[i].targetProduction || ""
|
||||
`<span style='color: rgba(223,241,254,.8);font-size:16px' title=${this.prodOrder[i].targetProduction || ""}>${this.prodOrder[i].targetProduction || ""
|
||||
}</span>`,
|
||||
`<span title=${this.prodOrder[i].actualProduction || ""}>${this.prodOrder[i].actualProduction || ""
|
||||
`<span style='color: rgba(223,241,254,.8);font-size:16px' title=${this.prodOrder[i].actualProduction || ""}>${this.prodOrder[i].actualProduction || ""
|
||||
}</span>`,
|
||||
`<span style="display:inline-block;width:45px;">${this.prodOrder[i].productionProgress
|
||||
`<span style="display:inline-block;width:45px;color: rgba(223,241,254,.8)">${this.prodOrder[i].productionProgress
|
||||
? this.prodOrder[i].productionProgress.toFixed(2) * 100 + "%"
|
||||
: "0%"
|
||||
}</span>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-06-07 08:37:17
|
||||
* @LastEditTime: 2024-06-07 11:04:41
|
||||
* @LastEditTime: 2024-07-18 16:16:24
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@@ -59,7 +59,7 @@ button {
|
||||
font-size: 18px; */
|
||||
font-family: PingFangSC, PingFang SC;
|
||||
font-weight: 400;
|
||||
font-size: 12px;
|
||||
font-size: 14px;
|
||||
color: #FFFFFF;
|
||||
line-height: 22px;
|
||||
letter-spacing: 5px;
|
||||
@@ -91,7 +91,7 @@ button {
|
||||
font-size: 18px; */
|
||||
font-family: PingFangSC, PingFang SC;
|
||||
font-weight: 400;
|
||||
font-size: 12px;
|
||||
font-size: 14px;
|
||||
color: #FFFFFF;
|
||||
line-height: 22px;
|
||||
letter-spacing: 5px;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-06-05 09:36:07
|
||||
* @LastEditTime: 2024-07-09 16:54:24
|
||||
* @LastEditTime: 2024-07-19 16:16:02
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@@ -81,6 +81,7 @@ export default {
|
||||
|
||||
<style scoped lang="scss">
|
||||
|
||||
|
||||
.copilot-container {
|
||||
height: 0;
|
||||
flex: 1;
|
||||
@@ -152,8 +153,8 @@ export default {
|
||||
position: absolute;
|
||||
// width: 16px;
|
||||
// height: 16px;
|
||||
width: 0.95vw;
|
||||
height: 0.95vw;
|
||||
width: 0.7vw;
|
||||
height: 0.7vw;
|
||||
}
|
||||
|
||||
.corner.tl {
|
||||
|
||||
@@ -79,6 +79,7 @@ export default {
|
||||
|
||||
<style scoped lang="scss">
|
||||
|
||||
|
||||
.copilot-container {
|
||||
height: 100%;
|
||||
flex: 1;
|
||||
@@ -147,8 +148,8 @@ export default {
|
||||
position: absolute;
|
||||
// width: 16px;
|
||||
// height: 16px;
|
||||
width: 0.95vw;
|
||||
height: 0.95vw;
|
||||
width: 0.7vw;
|
||||
height: 0.7vw;
|
||||
}
|
||||
|
||||
.corner.tl {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-05-20 13:32:59
|
||||
* @LastEditTime: 2024-07-09 08:58:47
|
||||
* @LastEditTime: 2024-07-19 16:05:46
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@@ -165,10 +165,15 @@ export default {
|
||||
subtitle =
|
||||
this.period == "日" ? `${yesterday}日累计完成值` : this.period == "周" ? `本周累计完成值` : this.period == "月" ? `${month}月累计完成值` : `${year}年累计完成值`;
|
||||
console.log('titleValue', items)
|
||||
let titleSize = fontSize(0.35)
|
||||
let subtitleSize = fontSize(0.14)
|
||||
|
||||
// console.log(this.valueTuple[2]- this.valueTuple[1])
|
||||
return getOptions({
|
||||
titleValue,
|
||||
subtitle,
|
||||
titleSize,
|
||||
subtitleSize,
|
||||
currentName: items[0].label,
|
||||
preName: items[1].label,
|
||||
previousSum: this.valueTuple[0],
|
||||
@@ -219,7 +224,12 @@ export default {
|
||||
// },
|
||||
},
|
||||
};
|
||||
|
||||
function fontSize(res){
|
||||
let clientWidth = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
|
||||
if (!clientWidth) return;
|
||||
let fontSize = 100 * (clientWidth / 1920);
|
||||
return res * fontSize;
|
||||
}
|
||||
function calculateItems(period, valueTuple, than) {
|
||||
console.log('valueTuple', valueTuple);
|
||||
let items = [];
|
||||
@@ -296,8 +306,9 @@ function calculateItems(period, valueTuple, than) {
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
.double-ring-chart {
|
||||
height: 100%;
|
||||
height: 98%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
@@ -321,6 +332,7 @@ function calculateItems(period, valueTuple, than) {
|
||||
|
||||
.legend-item {
|
||||
display: flex;
|
||||
/* font-size:16px; */
|
||||
flex-direction: column;
|
||||
align-items: flex-start;
|
||||
}
|
||||
|
||||
@@ -3,6 +3,8 @@ export default ({
|
||||
subtitle,
|
||||
previousSum,
|
||||
currentSum,
|
||||
subtitleSize,
|
||||
titleSize,
|
||||
targetSum,
|
||||
currentName,
|
||||
preName,
|
||||
@@ -16,25 +18,27 @@ export default ({
|
||||
},
|
||||
tooltip: {
|
||||
trigger: "item",
|
||||
extraCssText: 'box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38); border- radius: 4px;opacity: 0.6;backdrop- filter: blur(6px);',
|
||||
backgroundColor: '#001829',
|
||||
borderColor: '#001829',
|
||||
// extraCssText: 'box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38); border- radius: 4px;opacity: 0.6;backdrop- filter: blur(6px);',
|
||||
// backgroundColor: '#001829',
|
||||
// borderColor: '#001829',
|
||||
},
|
||||
title: {
|
||||
text: titleValue,
|
||||
left: "48.5%",
|
||||
top: "35%",
|
||||
top: "middle",
|
||||
itemGap: 12,
|
||||
textVerticalAlign:'auto',
|
||||
textAlign: "center",
|
||||
textStyle: {
|
||||
fontWeight: 400,
|
||||
fontSize: 32,
|
||||
color: "#fffd",
|
||||
fontSize: titleSize,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
},
|
||||
subtext: `\u2002${subtitle}\u2002`,
|
||||
subtextStyle: {
|
||||
fontSize: 14,
|
||||
fontSize: subtitleSize,
|
||||
fontWeight: 100,
|
||||
color: "#fffd",
|
||||
color: "rgba(255,255,255,.7)",
|
||||
align: "right",
|
||||
},
|
||||
},
|
||||
@@ -43,7 +47,7 @@ export default ({
|
||||
{
|
||||
type: "pie",
|
||||
name: "当前目标",
|
||||
radius: ["80%", "95%"],
|
||||
radius: ["74%", "86%"],
|
||||
center: ["50%", "48%"],
|
||||
emptyCircleStyle: {
|
||||
color: "#042c5f33",
|
||||
@@ -52,7 +56,7 @@ export default ({
|
||||
// 数据 series
|
||||
{
|
||||
type: "pie",
|
||||
radius: ["80%", "95%"],
|
||||
radius: ["74%", "86%"],
|
||||
center: ["50%", "48%"],
|
||||
avoidLabelOvervlap: false,
|
||||
label: {
|
||||
@@ -66,9 +70,16 @@ export default ({
|
||||
value: currentSum,
|
||||
name: currentName,
|
||||
selected: false,
|
||||
tooltip: {
|
||||
formatter: `<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:14px;'>${currentName}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${currentSum}</span>`
|
||||
tooltip: {
|
||||
backgroundColor: 'rgba(0,0,0,0)', // tooltip默认背景为白色,手动置为透明
|
||||
extraCssText: 'padding:0;border-width:0',
|
||||
formatter:`
|
||||
<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
<span style='display:inline-block;margin-right:4px;border-radius:2px;width:12px;height:12px;background-color:#4CF0E8'></span>
|
||||
<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:16px;'>${currentName}</span>
|
||||
<span style='color:rgba(255,255,255,0.65);font-size:16px;'>${currentSum}</span>
|
||||
</div>
|
||||
`
|
||||
},
|
||||
itemStyle: {
|
||||
borderJoin: "round",
|
||||
@@ -91,9 +102,16 @@ export default ({
|
||||
{
|
||||
value:(targetSum - currentSum) === 0 ? 1 : (targetSum - currentSum),
|
||||
name: currentName,
|
||||
tooltip: {
|
||||
formatter: `<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:14px;'>${currentName}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${currentSum}</span>`
|
||||
tooltip: {
|
||||
backgroundColor: 'rgba(0,0,0,0)', // tooltip默认背景为白色,手动置为透明
|
||||
extraCssText: 'padding:0;border-width:0',
|
||||
formatter:`
|
||||
<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
<span style='display:inline-block;margin-right:4px;border-radius:2px;width:12px;height:12px;background-color:#4CF0E8'></span>
|
||||
<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:16px;'>${currentName}</span>
|
||||
<span style='color:rgba(255,255,255,0.65);font-size:16px;'>${currentSum}</span>
|
||||
</div>
|
||||
`
|
||||
},
|
||||
itemStyle: { color: "transparent" },
|
||||
label: { show: false },
|
||||
@@ -103,7 +121,7 @@ export default ({
|
||||
// 数据 series2 - 2023累计
|
||||
{
|
||||
type: "pie",
|
||||
radius: ["65%", "80%"],
|
||||
radius: ["61%", "74%"],
|
||||
center: ["50%", "48%"],
|
||||
avoidLabelOvervlap: false,
|
||||
label: {
|
||||
@@ -118,8 +136,15 @@ export default ({
|
||||
name: preName,
|
||||
selected: false,
|
||||
tooltip: {
|
||||
formatter: `<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:14px;'>${preName}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${previousSum}</span>`
|
||||
backgroundColor: 'rgba(0,0,0,0)', // tooltip默认背景为白色,手动置为透明
|
||||
extraCssText: 'padding:0;border-width:0',
|
||||
formatter:`
|
||||
<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
<span style='display:inline-block;margin-right:4px;border-radius:2px;width:12px;height:12px;background-color:#1065ff'></span>
|
||||
<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:16px;'>${preName}</span>
|
||||
<span style='color:rgba(255,255,255,0.65);font-size:16px;'>${previousSum}</span>
|
||||
</div>
|
||||
`
|
||||
},
|
||||
itemStyle: {
|
||||
borderJoin: "round",
|
||||
@@ -143,9 +168,16 @@ export default ({
|
||||
|
||||
value:previousSum === 0 ? 1 : 0,
|
||||
name: preName,
|
||||
tooltip: {
|
||||
formatter: `<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:14px;'>${preName}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${previousSum}</span>`
|
||||
tooltip: {
|
||||
backgroundColor: 'rgba(0,0,0,0)', // tooltip默认背景为白色,手动置为透明
|
||||
extraCssText: 'padding:0;border-width:0',
|
||||
formatter:`
|
||||
<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
<span style='display:inline-block;margin-right:4px;border-radius:2px;width:12px;height:12px;background-color:#1065ff'></span>
|
||||
<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:16px;'>${preName}</span>
|
||||
<span style='color:rgba(255,255,255,0.65);font-size:16px;'>${previousSum}</span>
|
||||
</div>
|
||||
`
|
||||
},
|
||||
itemStyle: { color: "transparent" },
|
||||
label: { show: false },
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-04-28 13:42:51
|
||||
* @LastEditTime: 2024-07-08 13:43:52
|
||||
* @LastEditTime: 2024-07-18 16:37:41
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@@ -61,23 +61,8 @@ export default {
|
||||
// color: "rgba(237,237,237,0.5)",
|
||||
// },
|
||||
// },
|
||||
extraCssText: 'box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38); border- radius: 4px;opacity: 0.6;backdrop- filter: blur(6px);',
|
||||
backgroundColor: '#001829',
|
||||
borderColor: '#001829',
|
||||
// formatter: params => {
|
||||
// console.log('params', params)
|
||||
// var res = ``;
|
||||
// for (var i = 0, l = params.length; i < l; i++) {
|
||||
// let color = Object.prototype.toString.call(params[i].color) == "[object String]" ? params[i].color : params[i].color.colorStops ? params[i].color.colorStops[0].color : ''
|
||||
// // console.log(item.color, color);
|
||||
// res +=
|
||||
// // `<span style='display:inline-block;margin-right:4px;width:10px;height:10px;background-color:${color}'></span>` +
|
||||
// `<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:14px;'>${params[0].axisValueLabel}</span>` +
|
||||
// `<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${params[i].value ? params[i].value + '片' : 0 + '片'}</span>`;
|
||||
// }
|
||||
// console.log('res',res)
|
||||
// return res;
|
||||
// },
|
||||
backgroundColor: 'rgba(0,0,0,0)', // tooltip默认背景为白色,手动置为透明
|
||||
extraCssText: 'padding:0;border-width:0',
|
||||
},
|
||||
title: {
|
||||
text: "0%",
|
||||
@@ -127,7 +112,6 @@ export default {
|
||||
name: `${year}累计产出`,
|
||||
selected: false,
|
||||
tooltip: {
|
||||
formatter: null,
|
||||
},
|
||||
itemStyle: {
|
||||
borderJoin: "round",
|
||||
@@ -151,7 +135,6 @@ export default {
|
||||
value: 0,
|
||||
name: `${year}目标`,
|
||||
tooltip: {
|
||||
formatter: null,
|
||||
},
|
||||
itemStyle: { color: "transparent" },
|
||||
label: { show: false },
|
||||
@@ -176,7 +159,17 @@ export default {
|
||||
name: `${year - 1}累计产出`,
|
||||
selected: false,
|
||||
tooltip: {
|
||||
formatter: null,
|
||||
trigger: "item",
|
||||
// axisPointer: {
|
||||
// // type: "cross",
|
||||
// crossStyle: {
|
||||
// color: "rgba(237,237,237,0.5)",
|
||||
// },
|
||||
// },
|
||||
backgroundColor: 'rgba(0,0,0,0)', // tooltip默认背景为白色,手动置为透明
|
||||
extraCssText: 'padding:0;border-width:0',
|
||||
formatter: params => {
|
||||
},
|
||||
},
|
||||
itemStyle: {
|
||||
borderJoin: "round",
|
||||
@@ -200,7 +193,15 @@ export default {
|
||||
value: 0,
|
||||
name: `${year - 1}累计产出`,
|
||||
tooltip: {
|
||||
formatter:null,
|
||||
trigger: "item",
|
||||
// axisPointer: {
|
||||
// // type: "cross",
|
||||
// crossStyle: {
|
||||
// color: "rgba(237,237,237,0.5)",
|
||||
// },
|
||||
// },
|
||||
backgroundColor: 'rgba(0,0,0,0)', // tooltip默认背景为白色,手动置为透明
|
||||
extraCssText: 'padding:0;border-width:0',
|
||||
},
|
||||
itemStyle: { color: "transparent" },
|
||||
label: { show: false },
|
||||
@@ -263,34 +264,65 @@ export default {
|
||||
this.options.series[1].data[0].value = 0;
|
||||
this.options.series[1].data[1].value = 1;
|
||||
this.options.series[1].data[0].tooltip.formatter =
|
||||
`<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:14px;'>${year + '累计完成'}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${0 + '片'}</span>`;
|
||||
this.options.series[1].data[1].tooltip.formatter = `<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:14px;'>${year + '累计完成'}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${0 + '片'}</span>`;
|
||||
`<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
<span style='display:inline-block;margin-right:4px;border-radius:2px;width:12px;height:12px;background-color:#4CF0E8'></span>
|
||||
<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:16px;letter-spacing: 2px;'>${year + '累计完成'}</span>
|
||||
<span style='color:rgba(255,255,255,0.65);font-size:16px;letter-spacing: 2px;'>${0}</span>
|
||||
</div>`;
|
||||
this.options.series[1].data[1].tooltip.formatter =
|
||||
`<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
<span style='display:inline-block;margin-right:4px;border-radius:2px;width:12px;height:12px;background-color:#4CF0E8'></span>
|
||||
<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:16px;letter-spacing: 2px;'>${year + '累计完成'}</span>
|
||||
<span style='color:rgba(255,255,255,0.65);font-size:16px;letter-spacing: 2px;'>${0 }</span>
|
||||
</div>`;
|
||||
} else {
|
||||
this.options.series[1].data[0].value = this.output.current;
|
||||
this.options.series[1].data[1].value =
|
||||
this.output.target - this.output.current;
|
||||
this.options.series[1].data[0].tooltip.formatter = `<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:14px;'>${year + '累计完成'}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${this.output.current + '片'}</span>`;
|
||||
this.options.series[1].data[1].tooltip.formatter = `<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:14px;'>${year + '累计完成'}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${this.output.current + '片'}</span>`;
|
||||
this.options.series[1].data[0].tooltip.formatter =
|
||||
`<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
<span style='display:inline-block;margin-right:4px;border-radius:2px;width:12px;height:12px;background-color:#4CF0E8'></span>
|
||||
<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:16px;letter-spacing: 2px;'>${year + '累计完成'}</span>
|
||||
<span style='color:rgba(255,255,255,0.65);font-size:16px;letter-spacing: 2px;'>${this.output.current}</span>
|
||||
</div>`;
|
||||
this.options.series[1].data[1].tooltip.formatter =
|
||||
`<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
<span style='display:inline-block;margin-right:4px;border-radius:2px;width:12px;height:12px;background-color:#4CF0E8'></span>
|
||||
<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:16px;letter-spacing: 2px;'>${year + '累计完成'}</span>
|
||||
<span style='color:rgba(255,255,255,0.65);font-size:16px;letter-spacing: 2px;'>${this.output.current}</span>
|
||||
</div>`;
|
||||
}
|
||||
// 内环
|
||||
if (this.output.previous == 0) {
|
||||
this.options.series[2].data[0].value = 0;
|
||||
this.options.series[2].data[1].value = 1;
|
||||
this.options.series[2].data[0].tooltip.formatter = `<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:14px;'>${year -1 + '累计完成'}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${0 + '片'}</span>`;
|
||||
this.options.series[2].data[1].tooltip.formatter = `<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:14px;'>${year -1 + '累计完成'}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${0 + '片'}</span>`;
|
||||
this.options.series[2].data[0].tooltip.formatter =
|
||||
`<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
<span style='display:inline-block;margin-right:4px;border-radius:2px;width:12px;height:12px;background-color:#1065ff'></span>
|
||||
<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:16px;letter-spacing: 2px;'>${year - 1 + '累计完成'}</span>
|
||||
<span style='color:rgba(255,255,255,0.65);font-size:16px;letter-spacing: 2px;'>${0}</span>
|
||||
</div>`;
|
||||
this.options.series[2].data[1].tooltip.formatter =
|
||||
`<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
<span style='display:inline-block;margin-right:4px;border-radius:2px;width:12px;height:12px;background-color:#1065ff'></span>
|
||||
<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:16px;letter-spacing: 2px;'>${year - 1 + '累计完成'}</span>
|
||||
<span style='color:rgba(255,255,255,0.65);font-size:16px;letter-spacing: 2px;'>${0}</span>
|
||||
</div>`;
|
||||
} else {
|
||||
this.options.series[2].data[0].value = this.output.previous;
|
||||
this.options.series[2].data[1].value = 0;
|
||||
this.options.series[2].data[0].tooltip.formatter = `<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:14px;'>${year -1 + '累计完成'}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${this.output.previous + '片'}</span>`;
|
||||
this.options.series[2].data[1].tooltip.formatter = `<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:14px;'>${year - 1 + '累计完成'}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${this.output.previous + '片'}</span>`;
|
||||
this.options.series[2].data[0].tooltip.formatter =
|
||||
`<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
<span style='display:inline-block;margin-right:4px;border-radius:2px;width:12px;height:12px;background-color:#1065ff'></span>
|
||||
<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:16px;letter-spacing: 2px;'>${year - 1 + '累计完成'}</span>
|
||||
<span style='color:rgba(255,255,255,0.65);font-size:16px;letter-spacing: 2px;'>${this.output.previous}</span>
|
||||
</div>`;
|
||||
this.options.series[2].data[1].tooltip.formatter =
|
||||
`<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
<span style='display:inline-block;margin-right:4px;border-radius:2px;width:12px;height:12px;background-color:#1065ff'></span>
|
||||
<span style='display:inline-block;width:150px;color:rgba(255,255,255,0855);font-size:16px;letter-spacing: 2px;'>${year - 1 + '累计完成'}</span> +
|
||||
<span style='color:rgba(255,255,255,0.65);font-size:16px;letter-spacing: 2px;'>${this.output.previous}</span>
|
||||
</div>`;
|
||||
}
|
||||
console.log('options', options);
|
||||
return options;
|
||||
|
||||
@@ -8,19 +8,10 @@
|
||||
<template>
|
||||
<chart-container class="left-chart-base">
|
||||
<div class="legend">
|
||||
<span
|
||||
v-for="item in legend"
|
||||
:key="item.label"
|
||||
class="legend-item"
|
||||
:style="{ fontSize: isFullscreen ? '0.72vw' : '0.7vw' }"
|
||||
>{{ item.label }}</span
|
||||
>
|
||||
<span style="color: rgba(223,241,254,.8);" v-for="item in legend" :key="item.label" class="legend-item"
|
||||
:style="{ fontSize: isFullscreen ? '0.72vw' : '0.7vw' }">{{ item.label }}</span>
|
||||
</div>
|
||||
<div
|
||||
ref="chart"
|
||||
style="max-width: 22vw"
|
||||
:style="{ height: vHeight + 'vh' }"
|
||||
></div>
|
||||
<div ref="chart" style="max-width: 22vw" :style="{ height: vHeight + 'vh' }"></div>
|
||||
</chart-container>
|
||||
</template>
|
||||
|
||||
@@ -73,25 +64,32 @@ export default {
|
||||
color: "rgba(237,237,237,0.5)",
|
||||
},
|
||||
},
|
||||
extraCssText: 'box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38); border- radius: 4px;opacity: 0.6;backdrop- filter: blur(6px);',
|
||||
backgroundColor: '#001829',
|
||||
borderColor: '#001829',
|
||||
backgroundColor: 'rgba(0,0,0,0)', // tooltip默认背景为白色,手动置为透明
|
||||
extraCssText: 'padding:0;border-width:0',
|
||||
formatter: params => {
|
||||
console.log('params', params)
|
||||
var res = `<span style='color:rgba(255,255,255,0.85)'>${params[0].axisValueLabel}</span>`;
|
||||
var res = `<span style='display:inline-block;color:rgba(255,255,255,0.85);margin-bottom:8px;font-size:16px;letter-spacing: 2px;'>${params[0].axisValueLabel}</span>`;
|
||||
for (var i = 0, l = params.length; i < l; i++) {
|
||||
let color = Object.prototype.toString.call(params[i].color) == "[object String]" ? params[i].color : params[i].color.colorStops ? params[i].color.colorStops[0].color : ''
|
||||
// console.log(item.color, color);
|
||||
res +=
|
||||
"<br/>" +
|
||||
`<span style='display:inline-block;margin-right:4px;border-radius:2px;width:10px;height:10px;background-color:${color}'></span>` +
|
||||
`<span style='display:inline-block;width:150px;color:rgba(255,255,255,.85);font-size:14px;'>${params[i].seriesName}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${params[i].value ? params[i].value + '片' : 0 + '片'}</span>`;
|
||||
`<span style='display:inline-block;margin-right:4px;border-radius:2px;width:12px;height:12px;background-color:${color}'></span>` +
|
||||
`<span style='display:inline-block;width:150px;color:rgba(255,255,255,.85);font-size:16px;letter-spacing: 2px;'>${params[i].seriesName}</span>` +
|
||||
`<span style='width:60px;display:inline-block;color:rgba(255,255,255,0.65);font-size:16px;text-align: right;letter-spacing: 2px;'>${params[i].value ? params[i].value: 0}</span>`;
|
||||
}
|
||||
return res;
|
||||
const htmlContent = `
|
||||
<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
${res}
|
||||
</div>
|
||||
`;
|
||||
|
||||
return htmlContent;
|
||||
// return res;
|
||||
},
|
||||
},
|
||||
xAxis: {
|
||||
type:'category',
|
||||
axisTick: {
|
||||
show: false,
|
||||
},
|
||||
@@ -101,25 +99,27 @@ export default {
|
||||
},
|
||||
},
|
||||
axisLabel: {
|
||||
color: "#fff",
|
||||
fontSize: 14,
|
||||
textStyle: {
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
},
|
||||
},
|
||||
data: this.xAxis,
|
||||
},
|
||||
yAxis: {
|
||||
name: "单位/片",
|
||||
position:'left',
|
||||
// position:'left',
|
||||
nameTextStyle: {
|
||||
color: "#fff",
|
||||
fontSize: 14,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
align:'right'
|
||||
},
|
||||
axisTick: {
|
||||
show: false,
|
||||
},
|
||||
axisLabel: {
|
||||
color: "#fff",
|
||||
fontSize: 14,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
},
|
||||
axisLine: {
|
||||
show: true,
|
||||
@@ -143,7 +143,7 @@ export default {
|
||||
align: 'right', //在上方显示
|
||||
position: 'top', //在上方显示
|
||||
textStyle: { //数值样式
|
||||
color: '#DFF1FE',
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 14
|
||||
}
|
||||
},
|
||||
@@ -187,8 +187,8 @@ export default {
|
||||
align: 'left', //在上方显示
|
||||
position: 'top', //在上方显示
|
||||
textStyle: { //数值样式
|
||||
color: '#DFF1FE',
|
||||
fontSize: 14
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16
|
||||
}
|
||||
},
|
||||
itemStyle: {
|
||||
@@ -260,9 +260,25 @@ export default {
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.left-chart-base {
|
||||
// position: relative;
|
||||
.echarts-tooltip{
|
||||
background: #001829;
|
||||
// background-color: ;
|
||||
box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);
|
||||
opacity: 0.6;
|
||||
border-radius: 4px;
|
||||
.content {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
backdrop-filter: blur(6px);
|
||||
// transition: .3s transform;
|
||||
}
|
||||
}
|
||||
|
||||
.left-chart-base {
|
||||
.legend {
|
||||
position: absolute;
|
||||
top: 5.2vh;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-04-28 13:42:51
|
||||
* @LastEditTime: 2024-07-08 14:30:44
|
||||
* @LastEditTime: 2024-07-19 15:25:37
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@@ -15,19 +15,10 @@
|
||||
<template>
|
||||
<chart-container class="right-chart-base">
|
||||
<div class="legend">
|
||||
<span
|
||||
v-for="item in legend"
|
||||
:key="item.label"
|
||||
class="legend-item"
|
||||
:style="{ fontSize: isFullscreen ? '0.72vw' : '0.7vw' }"
|
||||
>{{ item.label }}</span
|
||||
>
|
||||
<span style="color: rgba(223,241,254,.8);" v-for="item in legend" :key="item.label" class="legend-item"
|
||||
:style="{ fontSize: isFullscreen ? '0.72vw' : '0.7vw' }">{{ item.label }}</span>
|
||||
</div>
|
||||
<div
|
||||
ref="chart"
|
||||
style="max-width: 22vw"
|
||||
:style="{ height: vHeight + 'vh' }"
|
||||
></div>
|
||||
<div ref="chart" style="max-width: 22vw" :style="{ height: vHeight + 'vh' }"></div>
|
||||
</chart-container>
|
||||
</template>
|
||||
|
||||
@@ -65,7 +56,7 @@ export default {
|
||||
isFullscreen: false,
|
||||
options: {
|
||||
grid: {
|
||||
left: "5%",
|
||||
left: "6%",
|
||||
right: "4%",
|
||||
bottom: "0",
|
||||
top: "18%",
|
||||
@@ -79,25 +70,33 @@ export default {
|
||||
color: "rgba(237,237,237,0.5)",
|
||||
},
|
||||
},
|
||||
extraCssText: 'box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38); border- radius: 4px;opacity: 0.6;backdrop- filter: blur(6px);',
|
||||
backgroundColor: '#001829',
|
||||
borderColor: '#001829',
|
||||
confine:true,
|
||||
backgroundColor: 'rgba(50,50,50,0)', // tooltip默认背景为白色,手动置为透明
|
||||
extraCssText: 'padding:0;border-width:0',
|
||||
formatter: params => {
|
||||
console.log('params', params)
|
||||
var res = `<span style='color:rgba(255,255,255,0.85)'>${params[0].axisValueLabel}</span>`;
|
||||
var res = `<span style='display:inline-block;color:rgba(255,255,255,0.85);margin-bottom:8px;font-size:16px;letter-spacing: 2px;'>${params[0].axisValueLabel}</span>`;
|
||||
for (var i = 0, l = params.length; i < l; i++) {
|
||||
let color = Object.prototype.toString.call(params[i].color) == "[object String]" ? params[i].color : params[i].color.colorStops ? params[i].color.colorStops[0].color : ''
|
||||
// console.log(item.color, color);
|
||||
res +=
|
||||
"<br/>" +
|
||||
`${params[i].seriesType === "line"
|
||||
? '<img width="11" height="11" style="margin-right:4px;" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTIuNzIxNjM5NXB4IiBoZWlnaHQ9IjhweCIgdmlld0JveD0iMCAwIDEyLjcyMTYzOTUgOCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KICAgIDx0aXRsZT7nvJbnu4QgNjwvdGl0bGU+CiAgICA8ZyBpZD0iMDTmiqXooajnrqHnkIYiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSLmjIfmoIflrozmiJDmg4XlhrUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xMDUxLjYzOTE4MCwgLTQyNS4wMDAwMDApIj4KICAgICAgICAgICAgPGcgaWQ9Iue8lue7hC025aSH5Lu9LTQiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwMjEuNTAwMDAwLCAzNDQuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICA8ZyBpZD0i57yW57uELTYiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDI5LjUwMDAwMCwgNzguMDAwMDAwKSI+CiAgICAgICAgICAgICAgICAgICAgPHJlY3QgaWQ9IuefqeW9oiIgeD0iMCIgeT0iMCIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0Ij48L3JlY3Q+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTcuMTM5MTgwMjYsMyBDOS4wMDMxMDczNywzIDEwLjU2OTI2NzMsNC4yNzQ4OTI3MiAxMS4wMTMyMjU0LDYuMDAwMjQzNDcgTDEyLjM2MDgxOTcsNiBDMTIuOTEzMTA0NSw2IDEzLjM2MDgxOTcsNi40NDc3MTUyNSAxMy4zNjA4MTk3LDcgQzEzLjM2MDgxOTcsNy41NTIyODQ3NSAxMi45MTMxMDQ1LDggMTIuMzYwODE5Nyw4IEwxMS4wMTI5NjY3LDguMDAwNzYxMzQgQzEwLjU2ODY1OTIsOS43MjU2MDIyNCA5LjAwMjc0NTUxLDExIDcuMTM5MTgwMjYsMTEgQzUuMjc1NjE1MDEsMTEgMy43MDk3MDEzMSw5LjcyNTYwMjI0IDMuMjY1MzkzNzgsOC4wMDA3NjEzNCBMMS42MzkxODAyNiw4IEMxLjA4Njg5NTUxLDggMC42MzkxODAyNTgsNy41NTIyODQ3NSAwLjYzOTE4MDI1OCw3IEMwLjYzOTE4MDI1OCw2LjQ0NzcxNTI1IDEuMDg2ODk1NTEsNiAxLjYzOTE4MDI2LDYgTDMuMjY1MTM1MDksNi4wMDAyNDM0NyBDMy43MDkwOTMyLDQuMjc0ODkyNzIgNS4yNzUyNTMxNSwzIDcuMTM5MTgwMjYsMyBaIiBpZD0i5b2i54q257uT5ZCIIiBmaWxsPSIjRkZDRTZBIiBmaWxsLXJ1bGU9Im5vbnplcm8iPjwvcGF0aD4KICAgICAgICAgICAgICAgIDwvZz4KICAgICAgICAgICAgPC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+" />'
|
||||
: `<span style="display:inline-block;margin-right:4px;border-radius:2px;width:10px;height:10px;background-color:${color}"></span>`
|
||||
? `<span style='display:inline-block; width: 20px;height: 2px;background-color: #f3c000;position: absolute;top:42.3%;left:4%;'></span>
|
||||
<span style='display:inline-block;width: 10px;height: 10px;border-radius: 100%;background-color: #f3c000;position: absolute;top:38.82%;left:5%;'></span>
|
||||
<span style='display:inline-block;width:150px;color:rgba(255,255,255,.85);font-size:16px;margin-left:20px;letter-spacing: 2px;'>${params[i].seriesName}</span>`
|
||||
: `<span style="display:inline-block;margin-right:4px;border-radius:2px;width:12px;height:12px;background-color:${color}"></span>
|
||||
<span style='display:inline-block;width:150px;color:rgba(255,255,255,.85);font-size:16px;letter-spacing: 2px;'>${params[i].seriesName}</span>`
|
||||
}` +
|
||||
`<span style='display:inline-block;width:150px;color:rgba(255,255,255,.85);font-size:14px;'>${params[i].seriesName}</span>` +
|
||||
`<span style='color:rgba(255,255,255,0.65);font-size:14px;'>${params[i].value ? params[i].value + '片' : 0 + '片'}</span>`;
|
||||
`<span style='width:180px;display:inline-block;color:rgba(255,255,255,0.65);font-size:16px;text-align: right;letter-spacing: 2px;'>${params[i].value ? params[i].value : 0 }</span>`;
|
||||
}
|
||||
return res;
|
||||
const htmlContent = `
|
||||
<div style="padding: 12px 16px;background:rgba(0,24,41,.5);box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.38);backdrop-filter: blur(10px);">
|
||||
${res}
|
||||
</div>
|
||||
`;
|
||||
|
||||
return htmlContent;
|
||||
},
|
||||
|
||||
},
|
||||
@@ -111,25 +110,25 @@ export default {
|
||||
},
|
||||
},
|
||||
axisLabel: {
|
||||
color: "#fff",
|
||||
fontSize: 14,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
},
|
||||
data: this.xAxis,
|
||||
},
|
||||
yAxis: {
|
||||
name: "单位/片",
|
||||
position: 'left',
|
||||
// position: 'left',
|
||||
nameTextStyle: {
|
||||
color: "#fff",
|
||||
fontSize: 14,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
align: 'right'
|
||||
},
|
||||
axisTick: {
|
||||
show: false,
|
||||
},
|
||||
axisLabel: {
|
||||
color: "#fff",
|
||||
fontSize: 14,
|
||||
color: "rgba(223,241,254,.8)",
|
||||
fontSize: 16,
|
||||
},
|
||||
axisLine: {
|
||||
show: true,
|
||||
@@ -257,9 +256,9 @@ export default {
|
||||
this.actualOptions.series.map((item) => {
|
||||
item.barWidth = val ? 18 : 12;
|
||||
});
|
||||
this.actualOptions.xAxis.axisLabel.fontSize = val ? 18 : 14;
|
||||
this.actualOptions.yAxis.axisLabel.fontSize = val ? 18 : 14;
|
||||
this.actualOptions.yAxis.nameTextStyle.fontSize = val ? 18 : 14;
|
||||
this.actualOptions.xAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
this.actualOptions.yAxis.axisLabel.fontSize = val ? 18 : 16;
|
||||
this.actualOptions.yAxis.nameTextStyle.fontSize = val ? 18 : 16;
|
||||
this.initOptions(this.actualOptions);
|
||||
},
|
||||
series(val) {
|
||||
@@ -322,13 +321,13 @@ export default {
|
||||
.legend-item:nth-child(1):before {
|
||||
// width: 12px;
|
||||
// height: 2px;
|
||||
width: 0.638vw;
|
||||
width: 1vw;
|
||||
height: 0.1064vw;
|
||||
background-color: #f3c000;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
// left: -16px;
|
||||
left: -0.851vw;
|
||||
left: -1.2vw;
|
||||
transform: translateY(-50%);
|
||||
}
|
||||
.legend-item:nth-child(1):after {
|
||||
@@ -338,11 +337,11 @@ export default {
|
||||
position: absolute;
|
||||
// width: 6px;
|
||||
// height: 6px;
|
||||
width: 0.3191vw;
|
||||
height: 0.3191vw;
|
||||
width: 0.4vw;
|
||||
height: 0.4vw;
|
||||
border-radius: 100%;
|
||||
top: 50%;
|
||||
left: -0.851vw;
|
||||
left: -1.1vw;
|
||||
// left: -16px;
|
||||
transform: translateY(-50%) translateX(50%);
|
||||
}
|
||||
|
||||
@@ -92,7 +92,7 @@ export default {
|
||||
}
|
||||
|
||||
h2 {
|
||||
padding: 0 1vw;
|
||||
// padding: 0 1vw;
|
||||
margin: 6px 0;
|
||||
font-family: 优设标题黑;
|
||||
color: #fff;
|
||||
@@ -116,7 +116,7 @@ ul {
|
||||
}
|
||||
|
||||
li {
|
||||
font-size: 0.851em;
|
||||
font-size: 0.77em;
|
||||
}
|
||||
|
||||
.corner {
|
||||
|
||||
@@ -82,6 +82,7 @@ export default {
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
|
||||
.dashboard-container {
|
||||
height: 0;
|
||||
flex: 1;
|
||||
@@ -132,8 +133,8 @@ export default {
|
||||
position: absolute;
|
||||
// width: 16px;
|
||||
// height: 16px;
|
||||
width: 0.95vw;
|
||||
height: 0.95vw;
|
||||
width: 0.7vw;
|
||||
height: 0.7vw;
|
||||
}
|
||||
|
||||
.corner.tl {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-07-08 13:51:30
|
||||
* @LastEditTime: 2024-07-08 13:53:26
|
||||
* @LastEditTime: 2024-07-19 10:43:18
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@@ -133,8 +133,8 @@ export default {
|
||||
position: absolute;
|
||||
// width: 16px;
|
||||
// height: 16px;
|
||||
width: 0.95vw;
|
||||
height: 0.95vw;
|
||||
width: 0.7vw;
|
||||
height: 0.7vw;
|
||||
}
|
||||
|
||||
.corner.tl {
|
||||
|
||||
@@ -70,11 +70,11 @@ const LOCATIONS = [
|
||||
// 蚌埠2
|
||||
// { x: 61, y: 53, tx: 39, ty: 68, path: 'factoryData/ksIndex' },
|
||||
// 江西 瑞昌
|
||||
{ x: 60, y: 58, tx: 68, ty: 52,lx:61,ly:61.5,ltx:69.5,lty:52, path: 'factoryData/factory-data' },
|
||||
{ x: 60, y: 58, tx: 68, ty: 51,lx:61,ly:61.5,ltx:69.3,lty:51.4, path: 'factoryData/factory-data' },
|
||||
// 湖南 株洲
|
||||
// { x: 56, y: 60, tx: 60, ty: 95, path: 'factoryData/zzIndex' },
|
||||
// 邯郸
|
||||
{ x: 58, y: 45, tx: 47.4, ty: 34.3, lx: 58.7, ly: 34, ltx: 53.2, lty: 34, path: 'factoryData/hdIndex' },
|
||||
{ x: 58, y: 45, tx: 48.5, ty: 34.3, lx: 58.7, ly: 34, ltx: 53.2, lty: 34, path: 'factoryData/hdIndex' },
|
||||
];
|
||||
// rcLine.style.left = `66.8%`;
|
||||
// rcLine.style.top = `52%`;
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-04-15 10:49:13
|
||||
* @LastEditTime: 2024-07-10 09:58:59
|
||||
* @LastEditors: zhp
|
||||
* @LastEditTime: 2024-07-24 14:48:25
|
||||
* @LastEditors: DY
|
||||
* @Description:
|
||||
-->
|
||||
<template>
|
||||
@@ -17,15 +17,15 @@
|
||||
</el-form-item>
|
||||
<el-form-item v-show="listQuery.type === 0 || listQuery.type === ''" label="时间范围" prop="reportTime">
|
||||
<el-date-picker size="small" clearable v-model="listQuery.reportTime" type="daterange" range-separator="至"
|
||||
start-placeholder="开始日期" value-format="yyyy-MM-dd" format="yyyy-MM-dd" @change="changeDayTime" end-placeholder="结束日期" :picker-options="{ }">
|
||||
start-placeholder="开始日期" value-format="yyyy-MM-dd" format="yyyy-MM-dd" @change="changeDayTime" end-placeholder="结束日期" :picker-options="{ firstDayOfWeek: 1 }">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item v-show="listQuery.type === 1" label="时间范围" prop="reportTime">
|
||||
<el-date-picker size="small" clearable v-model="listQuery.start" type="week" format="yyyy 第 WW 周" placeholder="选择周"
|
||||
<el-date-picker size="small" clearable v-model="listQuery.start" type="week" format="yyyy-MM-dd" placeholder="选择周" :picker-options="{ firstDayOfWeek: 1 }"
|
||||
style="width: 180px" @change="onValueChange">
|
||||
</el-date-picker>
|
||||
至
|
||||
<el-date-picker size="small" clearable v-model="listQuery.end" type="week" format="yyyy 第 WW 周" placeholder="选择周"
|
||||
<el-date-picker size="small" clearable v-model="listQuery.end" type="week" format="yyyy-MM-dd" placeholder="选择周" :picker-options="{ firstDayOfWeek: 1 }"
|
||||
style="width: 180px" @change="onValueChange">
|
||||
</el-date-picker>
|
||||
<!-- <span v-if="listQuery.start && listQuery.end" style="margin-left: 10px">
|
||||
@@ -39,7 +39,7 @@
|
||||
</el-form-item>
|
||||
<el-form-item v-show="listQuery.type === 3" label="时间范围" prop="reportTime">
|
||||
<el-date-picker size="small" clearable v-model="listQuery.start" value-format="yyyy-MM-dd" type="year"
|
||||
placeholder="开始时间">
|
||||
placeholder="开始时间" @change="getYear">
|
||||
</el-date-picker>
|
||||
~
|
||||
<el-date-picker size="small" clearable v-model="listQuery.end" value-format="yyyy-MM-dd" type="year" placeholder="结束时间"
|
||||
@@ -115,7 +115,7 @@ import moment from 'moment'
|
||||
import ButtonNav from '@/components/ButtonNav'
|
||||
import basicPage from '@/mixins/basic-page'
|
||||
import AddOrUpdate from './add-or-updata'
|
||||
import { factoryList, factoryArray } from "@/utils/constants";
|
||||
import { factoryList, factoryArray, factoryListabbr } from "@/utils/constants";
|
||||
|
||||
export default {
|
||||
components: { lineChart, ButtonNav, AddOrUpdate },
|
||||
@@ -124,7 +124,7 @@ export default {
|
||||
return {
|
||||
factoryList,
|
||||
factoryArray,
|
||||
// factoryArray1,
|
||||
factoryListabbr,
|
||||
listQuery: {
|
||||
pageSize: 20,
|
||||
pageNo: 1,
|
||||
@@ -253,7 +253,7 @@ export default {
|
||||
// },
|
||||
created() {
|
||||
const today = new Date()
|
||||
const sevenDaysAgo = new Date(today.getTime() - (7 * 24 * 60 * 60 * 1000))
|
||||
const sevenDaysAgo = new Date(today.getTime() - (6 * 24 * 60 * 60 * 1000))
|
||||
this.listQuery.startDate = moment(sevenDaysAgo).format('yyyy-MM-DD')
|
||||
this.listQuery.endDate = moment(today).format('yyyy-MM-DD')
|
||||
this.listQuery.reportTime = [this.listQuery.startDate, this.listQuery.endDate]
|
||||
@@ -265,6 +265,8 @@ export default {
|
||||
this.listQuery.endDate = null
|
||||
this.listQuery.startDate = null
|
||||
this.listQuery.reportTime = null
|
||||
this.listQuery.start = null
|
||||
this.listQuery.end = null
|
||||
},
|
||||
otherMethods(val) {
|
||||
this.detailOrUpdateVisible = true;
|
||||
@@ -282,20 +284,14 @@ export default {
|
||||
this.listQuery.reportTime = []
|
||||
this.listQuery.start = undefined
|
||||
this.listQuery.end = undefined
|
||||
// console.log();
|
||||
} else {
|
||||
this.listQuery.startDate = this.listQuery.start
|
||||
this.listQuery.endDate = this.listQuery.end
|
||||
}
|
||||
if (!this.listQuery.start && !this.listQuery.end) {
|
||||
this.listQuery.startDate = undefined
|
||||
this.listQuery.endDate = undefined
|
||||
}
|
||||
// console.log(e);
|
||||
},
|
||||
onValueChange(picker, k) { // 选中近k周后触发的操作
|
||||
if (this.listQuery.start && this.listQuery.end) {
|
||||
console.log(this.listQuery.reportTime)
|
||||
// console.log(this.listQuery.start, this.listQuery.end - this.listQuery.start)
|
||||
this.date1 = moment(this.listQuery.start.getTime() - 24 * 60 * 60 * 1000).format('YYYY-MM-DD HH:mm:ss')
|
||||
this.date2 = moment(this.listQuery.end.getTime() + 5 * 24 * 60 * 60 * 1000).format('YYYY-MM-DD HH:mm:ss')
|
||||
const numDays = (new Date(this.date2).getTime() - new Date(this.date1).getTime()) / (24 * 3600 * 1000);
|
||||
@@ -309,11 +305,15 @@ export default {
|
||||
this.listQuery.startDate = moment(this.listQuery.start.getTime() - 24 * 60 * 60 * 1000).format('YYYY-MM-DD')
|
||||
this.listQuery.endDate = moment(this.listQuery.end.getTime() + 5 * 24 * 60 * 60 * 1000).format('YYYY-MM-DD')
|
||||
}
|
||||
}
|
||||
if (!this.listQuery.start && !this.listQuery.end) {
|
||||
console.log(this.listQuery.startDate, this.listQuery.endDate)
|
||||
} else {
|
||||
this.listQuery.startDate = undefined
|
||||
this.listQuery.endDate = undefined
|
||||
}
|
||||
// if (!this.listQuery.start && !this.listQuery.end) {
|
||||
// this.listQuery.startDate = undefined
|
||||
// this.listQuery.endDate = undefined
|
||||
// }
|
||||
},
|
||||
changeDayTime() {
|
||||
if (this.listQuery.reportTime) {
|
||||
@@ -359,7 +359,7 @@ export default {
|
||||
this.$message.warning('请选择时间维度!')
|
||||
return
|
||||
}
|
||||
if (!this.listQuery.startDate) {
|
||||
if (!this.listQuery.startDate || !this.listQuery.endDate) {
|
||||
this.$message.warning('请选择时间范围!')
|
||||
} else {
|
||||
await getProduceDataPage(this.listQuery).then(res => {
|
||||
@@ -385,115 +385,71 @@ export default {
|
||||
this.seriesList = []
|
||||
// x轴数据
|
||||
xAxisData = Object.keys(data)
|
||||
let arr = []
|
||||
if (this.listQuery.factory.length === 0) {
|
||||
arr = this.factoryArray
|
||||
} else {
|
||||
this.listQuery.factory.forEach((ele, index) => {
|
||||
|
||||
let i = this.factoryArray.findIndex((item) => item.id == ele)
|
||||
if (i != -1) {
|
||||
arr.push({
|
||||
id: this.factoryArray[i].id,
|
||||
name: this.factoryArray[i].name
|
||||
})
|
||||
// 构造series
|
||||
// 玻璃类型 ['chipYield', 'componentYield', 'bipvProductOutput']
|
||||
const typeArray = (this.listQuery.glass.length === 0 || this.listQuery.glass.length === 3) ? [0, 1, 2] : this.listQuery.glass
|
||||
// 工厂名称 this.factoryListabbr
|
||||
const factoryNameArray = (this.listQuery.factory.length === 0 || this.listQuery.factory.length === this.factoryListabbr.length) ? [0, 1] : this.listQuery.factory
|
||||
const seriesArray = []
|
||||
factoryNameArray.forEach((fac, facIndex) => {
|
||||
typeArray.forEach((type, typeIndex) => {
|
||||
const series = {
|
||||
data: Array(xAxisData.length).fill(0),
|
||||
type: 'bar',
|
||||
stack: String(fac),
|
||||
barWidth: 16,
|
||||
itemStyle: {
|
||||
color: this.colorList[type]
|
||||
},
|
||||
name: this.factoryListabbr[fac] + '-' + type
|
||||
}
|
||||
seriesArray.push(series)
|
||||
})
|
||||
}
|
||||
|
||||
// y轴数据
|
||||
arr.forEach((fac,index) => {
|
||||
console.log('fac',fac);
|
||||
let i = 0
|
||||
let position = fac.id == 1 ? [1, -16,] : [-8, -16,]
|
||||
while ( i < 3) {
|
||||
// 下标
|
||||
const index1 = ['chipYield', 'componentYield', 'bipvProductOutput'][i]
|
||||
// let oneChart = {}
|
||||
xAxisData.forEach((x, index) => {
|
||||
if (this.listQuery.glass.length === 0 || this.listQuery.glass.length === 3) {
|
||||
let series = {
|
||||
name: ['玻璃芯片', '标准组件', 'BIPV'][i] + '-' + fac.id,
|
||||
type: 'bar',
|
||||
stack: String(fac.id),
|
||||
data: Array(xAxisData.length).fill(0),
|
||||
barWidth: 16,
|
||||
itemStyle: {
|
||||
color: this.colorList[i]
|
||||
},
|
||||
label: {
|
||||
show: i === 2 ? true : false,
|
||||
position: 'top',
|
||||
// fontSize:10,
|
||||
position: position,
|
||||
formatter(params) {
|
||||
return fac.name.substring(0, 2)
|
||||
}
|
||||
}
|
||||
}
|
||||
dataList.forEach(item => {
|
||||
if (fac.id === item.factory && item.datestr === x) {
|
||||
series.data[index] = item[index1]
|
||||
}
|
||||
})
|
||||
this.seriesList.push(series)
|
||||
} else {
|
||||
this.listQuery.glass.forEach(gl => {
|
||||
if (gl === i) {
|
||||
let series = {
|
||||
name: ['玻璃芯片', '标准组件', 'BIPV'][i] + '-' + fac.id,
|
||||
type: 'bar',
|
||||
stack: String(fac.id),
|
||||
data: Array(xAxisData.length).fill(0),
|
||||
barWidth: 16,
|
||||
itemStyle: {
|
||||
color: this.colorList[i]
|
||||
},
|
||||
label: {
|
||||
show: true,
|
||||
position: 'top',
|
||||
position: position,
|
||||
formatter(params) {
|
||||
if (params.value === 0) {
|
||||
return ''
|
||||
} else {
|
||||
// return ['瑞昌', '邯郸'][params.seriesName.split('-')[1]]
|
||||
return fac.name.substring(0, 2)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
dataList.forEach(item => {
|
||||
if (fac.id === item.factory && item.datestr === x) {
|
||||
series.data[index] = item[index1]
|
||||
}
|
||||
})
|
||||
this.seriesList.push(series)
|
||||
}
|
||||
})
|
||||
}
|
||||
// let series = {
|
||||
// name: ['玻璃芯片', '标准组件', 'BIPV'][i] + '-' + fac.id,
|
||||
// type: 'bar',
|
||||
// stack: String(fac.id),
|
||||
// data: Array(xAxisData.length).fill(0),
|
||||
// barWidth: 16,
|
||||
// itemStyle: {
|
||||
// color: this.colorList[i]
|
||||
// }
|
||||
// }
|
||||
// dataList.forEach(item => {
|
||||
// if (fac.id === item.factory && item.datestr === x) {
|
||||
// series.data[index] = item[index1]
|
||||
// }
|
||||
// })
|
||||
// this.seriesList.push(series)
|
||||
})
|
||||
i ++
|
||||
}
|
||||
})
|
||||
console.log('你好', this.seriesList)
|
||||
this.$refs.lineChart.initChart(xAxisData, this.seriesList,arr)
|
||||
|
||||
// 按工厂分
|
||||
const arrayByFacArray = Object.groupBy(dataList, (member) => member.factory)
|
||||
// const seriesDataArray = []
|
||||
let n = 0
|
||||
Object.values(arrayByFacArray).forEach((item) => {
|
||||
typeArray.forEach(type => {
|
||||
const typeName = ['chipYield', 'componentYield', 'bipvProductOutput'][type]
|
||||
let seriesData = Array(xAxisData.length).fill(0)
|
||||
item.forEach(it => {
|
||||
xAxisData.forEach((x, xindex) => {
|
||||
if (x === it['datestr']) {
|
||||
seriesData[xindex] = it[typeName]
|
||||
}
|
||||
})
|
||||
})
|
||||
seriesArray[n].data = seriesData
|
||||
n ++
|
||||
})
|
||||
})
|
||||
|
||||
// 添加工厂
|
||||
const validSeriesArray = []
|
||||
factoryNameArray.forEach(f => {
|
||||
const s = {
|
||||
name: '显示工厂',
|
||||
data: Array(xAxisData.length).fill(0),
|
||||
type: 'bar',
|
||||
stack: String(f),
|
||||
barWidth: 16,
|
||||
label: {
|
||||
show: true,
|
||||
position: 'top',
|
||||
// position: f > 0 ? [2, -16] : [-10, -16],
|
||||
formatter(params) {
|
||||
return factoryListabbr[f]
|
||||
}
|
||||
}
|
||||
}
|
||||
validSeriesArray.push(s)
|
||||
})
|
||||
this.seriesList = [...seriesArray, ...validSeriesArray]
|
||||
this.$refs.lineChart.initChart(xAxisData, this.seriesList, factoryNameArray)
|
||||
},
|
||||
buttonClick(val) {
|
||||
this.listQuery.reportTime = val.reportTime ? val.reportTime : undefined;
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
<!--
|
||||
* @Author: zwq
|
||||
* @Date: 2022-01-21 14:43:06
|
||||
* @LastEditors: zhp
|
||||
* @LastEditTime: 2024-07-04 09:37:49
|
||||
* @LastEditors: DY
|
||||
* @LastEditTime: 2024-07-16 18:41:27
|
||||
* @Description:
|
||||
-->
|
||||
<template>
|
||||
@@ -73,7 +73,7 @@ export default {
|
||||
this.chart = null
|
||||
},
|
||||
methods: {
|
||||
initChart(xAxis, seriesList,arr) {
|
||||
initChart(xAxis, seriesList, facs) {
|
||||
if (xAxis.length === 0) {
|
||||
this.chart.clear()
|
||||
}
|
||||
@@ -93,9 +93,9 @@ export default {
|
||||
itemHeight: 10,
|
||||
itemGap: 40,
|
||||
formatter(name) {
|
||||
return name.split('-')[0]
|
||||
return ['玻璃芯片', '标准组件', 'BIPV'][name.split('-')[1]]
|
||||
},
|
||||
data: ['玻璃芯片-0', '标准组件-0', 'BIPV-0']
|
||||
data: ['瑞昌-0', '瑞昌-1', '瑞昌-2']
|
||||
},
|
||||
tooltip: {
|
||||
trigger: 'axis',
|
||||
@@ -103,48 +103,41 @@ export default {
|
||||
type: 'shadow',
|
||||
color: "rgba(237,237,237,0.5)"
|
||||
},
|
||||
formatter: function (params) {
|
||||
// console.log(params)
|
||||
formatter(params) {
|
||||
let str = ''
|
||||
arr.forEach(ele => {
|
||||
str += `<div style="width: 60px; text-align: right">${ele.name.substring(0, 2) }</div>`
|
||||
facs.forEach(ele => {
|
||||
str += `<div style="width: 60px; text-align: right">${ factoryListabbr[ele] }</div>`
|
||||
})
|
||||
console.log(str);
|
||||
let result = `
|
||||
<div style="width: 270px; display: flex">
|
||||
<div style="width: 150px">${params[0].name}</div>
|
||||
${str}
|
||||
${ str }
|
||||
</div>`
|
||||
const newArray = params.map(p => {
|
||||
console.log(factoryListabbr[p.seriesName.split('-')[1]], p.seriesName.split('-')[0])
|
||||
return {
|
||||
glass: p.seriesName.split('-')[0], // 玻璃类型
|
||||
factoryName: arr[p.seriesName.split('-')[1]], // 工厂名称
|
||||
value: p.value,
|
||||
name: p.name,
|
||||
marker: p.marker,
|
||||
color: p.color
|
||||
const analyzeArray = params.filter(p => p.seriesName !== '显示工厂').map(item => {
|
||||
const obj = {
|
||||
glass: ['玻璃芯片', '标准组件', 'BIPV'][item.seriesName.split('-')[1]], // 玻璃类型
|
||||
factoryName: item.seriesName.split('-')[0], // 工厂名称
|
||||
value: item.value,
|
||||
name: item.name,
|
||||
marker: item.marker,
|
||||
color: item.color
|
||||
}
|
||||
return obj
|
||||
})
|
||||
const analyzeList = Object.groupBy(newArray, (member) => member.glass)
|
||||
const analyzeList = Object.groupBy(analyzeArray, (member) => member.glass)
|
||||
for (let g in analyzeList) {
|
||||
// date => 玻璃类型
|
||||
let oneData = `<div style="width: 270px; display: flex">
|
||||
<div style="width: 150px; display: flex; align-items: center">
|
||||
<div style="background-color: ${analyzeList[g][0].color}; width: 10px; height: 10px; margin-right: 5px"></div>
|
||||
<div>${g}</div></div>`
|
||||
for (let fac of arr) {
|
||||
let goodNum = 0
|
||||
for (let ana of analyzeList[g]) {
|
||||
if (ana.factoryName === fac && ana.value !== 0) {
|
||||
goodNum = ana.value
|
||||
}
|
||||
}
|
||||
for (let ana of analyzeList[g]) {
|
||||
goodNum = ana.value
|
||||
oneData += `<div style="width: 60px; text-align: right">${goodNum}</div>`
|
||||
}
|
||||
result = result + oneData + '</div>'
|
||||
}
|
||||
// console.log('result', result);
|
||||
return result
|
||||
}
|
||||
},
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-07-08 14:51:47
|
||||
* @LastEditTime: 2024-07-09 11:07:47
|
||||
* @LastEditTime: 2024-07-11 14:48:15
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@@ -67,12 +67,13 @@ export default {
|
||||
legend: {
|
||||
bottom: 0,
|
||||
left: 'center',
|
||||
itemGap:40,
|
||||
itemGap:60,
|
||||
},
|
||||
series: [
|
||||
{
|
||||
// name: 'Access From',
|
||||
type: 'pie',
|
||||
center: ['50%', '45%'],
|
||||
radius: ['50%', '70%'],
|
||||
avoidLabelOverlap: false,
|
||||
data: this.pieList,
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-06-19 15:28:34
|
||||
* @LastEditTime: 2024-07-09 16:14:37
|
||||
* @LastEditTime: 2024-07-12 09:12:10
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-06-20 16:13:52
|
||||
* @LastEditTime: 2024-07-11 13:52:44
|
||||
* @LastEditTime: 2024-07-11 16:45:08
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@@ -38,7 +38,7 @@ export default {
|
||||
grid: {
|
||||
left: 60,
|
||||
right: 0,
|
||||
bottom: 30,
|
||||
bottom: 31,
|
||||
top: 30,
|
||||
containLabel:true,
|
||||
},
|
||||
|
||||
@@ -55,34 +55,58 @@
|
||||
|
||||
<!-- <bmSearchBar @getSearch="getSearch" @handleExport="handleExport" /> -->
|
||||
<el-row v-if="this.listQuery.type === 2">
|
||||
<el-col :span="12">
|
||||
<el-col :span="18">
|
||||
<div class="blueTip">
|
||||
生产情况对比
|
||||
</div>
|
||||
<bm-line-bar :type="listQuery.type" style="margin-top: 20px;" :show="false" :chartHeight="chartHeight"
|
||||
:legendList="legendList" :chartMsg="chartMsg" :chartId="chartId" :chartNum="chartNum" />
|
||||
</el-col>
|
||||
<el-col :span="6" style="margin-top: 21px">
|
||||
<bm-line-bar-target :type="listQuery.type" :chartHeight="chartHeight" :legendList="legendList"
|
||||
:chartMsg="chartMsgTarget" :gridLeft="gridLeft" :chartId="'chartTarget'" :chartNum="chartNum" />
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<div class="blueTip">
|
||||
{{ title }}
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row v-else-if="this.listQuery.type === 1 || this.listQuery.type === 0">
|
||||
<el-col :span="24">
|
||||
<div class="blueTip">
|
||||
生产情况对比
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row v-else>
|
||||
<div class="blueTip">
|
||||
生产情况对比
|
||||
</div>
|
||||
</el-row>
|
||||
<el-row v-if="this.listQuery.type === 2">
|
||||
<el-col :span="12">
|
||||
<!-- <div class="blueTip">
|
||||
生产情况对比
|
||||
</div> -->
|
||||
<bm-line-bar :type="listQuery.type" style="margin-top: 20px;" :show="false" :chartHeight="chartHeight"
|
||||
:legendList="legendList" :chartMsg="chartMsg" :chartId="chartId" :chartNum="chartNum" />
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<bm-line-bar-target :type="listQuery.type" :chartHeight="chartHeight" :legendList="legendList"
|
||||
:chartMsg="chartMsgTarget" :gridLeft="gridLeft" :chartId="'chartTarget'" :chartNum="chartNum" />
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<!-- <div class="blueTip">
|
||||
{{ title }}
|
||||
</div> -->
|
||||
<bm-line-bar-year-target :type="listQuery.type" :chartHeight="chartHeight" :legendList="legendList"
|
||||
:chartMsg="chartMsgYearTarget" :chartId="'chartYearTarget'" :chartNum="chartNum" />
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row v-else-if="this.listQuery.type === 1 || this.listQuery.type === 0">
|
||||
<el-col :span="18">
|
||||
<div class="blueTip">
|
||||
<!-- <div class="blueTip">
|
||||
生产情况对比
|
||||
</div>
|
||||
</div> -->
|
||||
<bm-line-bar :type="listQuery.type" style="margin-top: 20px;" :show="false" :chartHeight="chartHeight"
|
||||
:legendList="legendList" :chartMsg="chartMsg" :chartId="'chartDay'" :chartNum="chartNum" />
|
||||
</el-col>
|
||||
<el-col :span="6" style="margin-top: 30px">
|
||||
<el-col :span="6">
|
||||
<bm-line-bar-target :type="listQuery.type" :chartHeight="chartHeight" :legendList="legendList"
|
||||
:chartMsg="chartMsgTarget" :gridLeft="gridLeft" :chartId="'chartDayTarget'" :chartNum="chartNum" />
|
||||
</el-col>
|
||||
@@ -95,9 +119,9 @@
|
||||
</el-col> -->
|
||||
</el-row>
|
||||
<el-row v-else>
|
||||
<div class="blueTip">
|
||||
<!-- <div class="blueTip">
|
||||
生产情况对比
|
||||
</div>
|
||||
</div> -->
|
||||
<!-- <el-col :span="12"> -->
|
||||
<bm-line-bar :type="listQuery.type" :chartHeight="chartHeight" :legendList="legendList" :chartMsg="chartMsg"
|
||||
:chartId="chartId" :chartNum="chartNum" />
|
||||
|
||||
@@ -55,37 +55,62 @@
|
||||
|
||||
<!-- <bmSearchBar @getSearch="getSearch" @handleExport="handleExport" /> -->
|
||||
<el-row v-if="this.listQuery.type === 2">
|
||||
<el-col :span="12">
|
||||
<el-col :span="18">
|
||||
<div class="blueTip">
|
||||
生产情况对比
|
||||
</div>
|
||||
<bm-line-bar :type="listQuery.type" style="margin-top: 20px;" :show="false" :chartHeight="chartHeight"
|
||||
:legendList="legendList" ref="dayChart" :chartMsg="chartMsg" :chartId="chartId" :chartNum="chartNum" />
|
||||
</el-col>
|
||||
<el-col :span="6" style="margin-top:21px">
|
||||
<bm-line-bar-target :type="listQuery.type" :chartHeight="chartHeight" :legendList="legendList"
|
||||
:chartMsg="chartMsgTarget" :gridLeft="gridLeft" ref="dayTargetChart" :chartId=" 'chartTarget'"
|
||||
:chartNum="chartNum" />
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<div class="blueTip">
|
||||
{{ title }}
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row v-else-if="this.listQuery.type === 1 || this.listQuery.type === 0">
|
||||
<el-col :span="24">
|
||||
<div class="blueTip">
|
||||
生产情况对比
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row v-else>
|
||||
<div class="blueTip">
|
||||
生产情况对比
|
||||
</div>
|
||||
</el-row>
|
||||
<el-row v-if="this.listQuery.type === 2">
|
||||
<el-col :span="12">
|
||||
<!-- <div class="blueTip">
|
||||
生产情况对比
|
||||
</div> -->
|
||||
<bm-line-bar :type="listQuery.type" style="margin-top: 20px;" :show="false" :chartHeight="chartHeight"
|
||||
:legendList="legendList" ref="dayChart" :chartMsg="chartMsg" :chartId="chartId" :chartNum="chartNum" />
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<bm-line-bar-target :type="listQuery.type" :chartHeight="chartHeight" :legendList="legendList"
|
||||
:chartMsg="chartMsgTarget" :gridLeft="gridLeft" ref="dayTargetChart" :chartId=" 'chartTarget'"
|
||||
:chartNum="chartNum" />
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<!-- <div class="blueTip">
|
||||
{{ title }}
|
||||
</div> -->
|
||||
<bm-line-bar-year-target :type="listQuery.type" :chartHeight="chartHeight" :legendList="legendList"
|
||||
:chartMsg="chartMsgYearTarget" ref="chartYearTarget" :chartId=" 'chartYearTarget'" :chartNum="chartNum" />
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row v-else-if="this.listQuery.type === 1 || this.listQuery.type === 0">
|
||||
<el-col :span="18">
|
||||
<div class="blueTip">
|
||||
<!-- <div class="blueTip">
|
||||
生产情况对比
|
||||
</div>
|
||||
</div> -->
|
||||
<bm-line-bar :type="listQuery.type" style="margin-top: 20px;" :show="false" :chartHeight="chartHeight"
|
||||
:legendList="legendList" :chartMsg="chartMsg" :chartId="'chartDay'" :chartNum="chartNum" />
|
||||
</el-col>
|
||||
<el-col :span="6" style="margin-top: 30px">
|
||||
<bm-line-bar-target :type="listQuery.type" :chartHeight="chartHeight" :legendList="legendList"
|
||||
:chartMsg="chartMsgTarget" :gridLeft="gridLeft" :chartId=" 'chartDayTarget'" :chartNum="chartNum" />
|
||||
<el-col :span="6">
|
||||
<bm-line-bar-target :type="listQuery.type" :chartHeight="chartHeight"
|
||||
:legendList="legendList" :chartMsg="chartMsgTarget" :gridLeft="gridLeft" :chartId="'chartDayTarget'"
|
||||
:chartNum="chartNum" />
|
||||
</el-col>
|
||||
<!-- <el-col :span="6">
|
||||
<div class="blueTip">
|
||||
@@ -96,9 +121,9 @@
|
||||
</el-col> -->
|
||||
</el-row>
|
||||
<el-row v-else>
|
||||
<div class="blueTip">
|
||||
<!-- <div class="blueTip">
|
||||
生产情况对比
|
||||
</div>
|
||||
</div> -->
|
||||
<!-- <el-col :span="12"> -->
|
||||
<bm-line-bar :type="listQuery.type" :chartHeight="chartHeight" :legendList="legendList" :chartMsg="chartMsg"
|
||||
:chartId="chartId" :chartNum="chartNum" />
|
||||
|
||||
Reference in New Issue
Block a user