projects/mescc/zhp #84
@ -1,3 +1,10 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-06-03 15:38:31
|
||||
* @LastEditTime: 2024-07-04 10:44:35
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
<template>
|
||||
<el-scrollbar ref="scrollContainer" :vertical="false" class="scroll-container" @wheel.native.prevent="handleScroll">
|
||||
<slot />
|
||||
@ -17,7 +24,9 @@ export default {
|
||||
computed: {
|
||||
scrollWrapper() {
|
||||
return this.$refs.scrollContainer.$refs.wrap
|
||||
}
|
||||
},
|
||||
},
|
||||
watch: {
|
||||
},
|
||||
mounted() {
|
||||
this.scrollWrapper.addEventListener('scroll', this.emitScroll, true)
|
||||
|
@ -1,9 +1,10 @@
|
||||
<template>
|
||||
<div id="tags-view-container" class="tags-view-container">
|
||||
<div ref="tagsViewContainer" id="tags-view-container" class="tags-view-container">
|
||||
<scroll-pane ref="scrollPane" class="tags-view-wrapper" @scroll="handleScroll">
|
||||
<router-link v-for="tag in visitedViews" ref="tag" :key="tag.path" :class="isActive(tag) ? 'active' : ''"
|
||||
:to="{ path: tag.path, query: tag.query, fullPath: tag.fullPath }" tag="span" class="tags-view-item"
|
||||
:style="activeStyle(tag)" @click.middle.native="!isAffix(tag) ? closeSelectedTag(tag) : ''"
|
||||
<router-link v-for="tag in visitedViews" ref="tag" :key="tag.path"
|
||||
:class="isActive(tag) ? 'active' : ''" :to="{ path: tag.path, query: tag.query, fullPath: tag.fullPath }"
|
||||
tag="span" class="tags-view-item" :style="activeStyle(tag)"
|
||||
@click.middle.native="!isAffix(tag) ? closeSelectedTag(tag) : ''"
|
||||
@contextmenu.prevent.native="openMenu(tag, $event)">
|
||||
{{ tag.title }}
|
||||
<span v-if="!isAffix(tag)" class="el-icon-close" @click.prevent.stop="closeSelectedTag(tag)" />
|
||||
@ -36,6 +37,13 @@ export default {
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
changeColor() {
|
||||
if (this.$route.path == '/copilot/efficiency-container' || this.$route.path == '/copilot/main') {
|
||||
return true
|
||||
} else {
|
||||
return false
|
||||
}
|
||||
},
|
||||
visitedViews() {
|
||||
return this.$store.state.tagsView.visitedViews
|
||||
},
|
||||
@ -44,9 +52,28 @@ export default {
|
||||
},
|
||||
theme() {
|
||||
return this.$store.state.settings.theme;
|
||||
}
|
||||
},
|
||||
},
|
||||
watch: {
|
||||
changeColor(val) {
|
||||
// if (val == true) {
|
||||
// this.$refs.tagsViewContainer.style.backgroundColor = 'rgba(0, 21, 41, 1)'
|
||||
// var tag = document.getElementsByClassName("tags-view-item")
|
||||
// console.log('tag', tag)
|
||||
// for (let i in tag) {
|
||||
// tag[i].classList.add("changeColor")
|
||||
// // tag[i].classList.remove("default")
|
||||
// }
|
||||
// console.log('this.$refs.scrollContainer', this.$refs.tag);
|
||||
// } else {
|
||||
// this.$refs.tagsViewContainer.style.backgroundColor = ''
|
||||
// var tag = document.getElementsByClassName("tags-view-item")
|
||||
// for (let i in tag) {
|
||||
// // tag[i].classList.remove("changeColor")
|
||||
// // tag[i].classList.add("default")
|
||||
// }
|
||||
// }
|
||||
},
|
||||
$route() {
|
||||
this.addTags()
|
||||
this.moveToCurrentTag()
|
||||
@ -60,6 +87,7 @@ export default {
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
console.log(this.$route, this.changeColor);
|
||||
this.initTags()
|
||||
this.addTags()
|
||||
},
|
||||
@ -230,6 +258,14 @@ export default {
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
// :root{
|
||||
// --theme-color: rgba(0, 0, 0, 0.45);
|
||||
// --theme-background: #f4f4f4ff;
|
||||
// }
|
||||
.changeColor{
|
||||
--theme-background: rgba(0, 59, 115, 1);
|
||||
--theme-color: rgba(255, 255, 255, 1);
|
||||
}
|
||||
.tags-view-container {
|
||||
height: 42px;
|
||||
width: 100%;
|
||||
@ -245,8 +281,8 @@ export default {
|
||||
cursor: pointer;
|
||||
height: 28px;
|
||||
line-height: 28px;
|
||||
color: rgba(0, 0, 0, 0.45);
|
||||
background: #F4F4F4FF;
|
||||
color: var(--theme-color,rgba(0, 0, 0, 0.45));
|
||||
background:var(--theme-background,#f4f4f4ff);
|
||||
padding: 0 8px 0 12px;
|
||||
font-size: 14px;
|
||||
letter-spacing: 1px;
|
||||
@ -331,7 +367,7 @@ export default {
|
||||
.el-icon-close {
|
||||
&:hover {
|
||||
background-color: #fff;
|
||||
color: #409eff;
|
||||
color: rgba(62, 142, 247, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -39,6 +39,13 @@ export default {
|
||||
needTagsView: state => state.settings.tagsView,
|
||||
fixedHeader: state => state.settings.fixedHeader
|
||||
}),
|
||||
changeColor() {
|
||||
if (this.$route.path == '/copilot/efficiency-container' || this.$route.path == '/copilot/main') {
|
||||
return true
|
||||
} else {
|
||||
return false
|
||||
}
|
||||
},
|
||||
classObj() {
|
||||
return {
|
||||
hideSidebar: !this.sidebar.opened,
|
||||
@ -51,6 +58,21 @@ export default {
|
||||
return variables;
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
// changeColor(val) {
|
||||
// if (val == true) {
|
||||
// var tag = document.getElementsByClassName("main-container")
|
||||
// console.log('tag', tag);
|
||||
// tag.style.backgroundColor = 'rgba(0, 21, 41, 1)'
|
||||
// } else {
|
||||
// var tag = document.getElementsByClassName("main-container")
|
||||
// // for (let i in tag) {
|
||||
// tag.style.backgroundColor = ''
|
||||
// // tag[i].classList.add("default")
|
||||
// // }
|
||||
// }
|
||||
// },
|
||||
},
|
||||
methods: {
|
||||
handleClickOutside() {
|
||||
this.$store.dispatch('app/closeSideBar', { withoutAnimation: false })
|
||||
|
@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-05-07 13:22:43
|
||||
* @LastEditTime: 2024-07-03 14:08:44
|
||||
* @LastEditTime: 2024-07-05 09:50:14
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@ -83,7 +83,7 @@ export default {
|
||||
"<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='color:rgba(255,255,255,0.65);font-size:14px;'>${params[i].value ? params[i].value + '%' : 0 + '%'}</span>`;
|
||||
}
|
||||
return res;
|
||||
},
|
||||
|
@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-05-23 15:50:44
|
||||
* @LastEditTime: 2024-07-03 14:08:12
|
||||
* @LastEditTime: 2024-07-05 09:49:35
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@ -83,7 +83,7 @@ export default {
|
||||
"<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='color:rgba(255,255,255,0.65);font-size:14px;'>${params[i].value ? params[i].value + '%' : 0 + '%'}</span>`;
|
||||
}
|
||||
return res;
|
||||
},
|
||||
|
@ -88,7 +88,7 @@ export default {
|
||||
updateThan(val) {
|
||||
console.log(val);
|
||||
this.than = val;
|
||||
// this.getMes();
|
||||
this.getMes()
|
||||
},
|
||||
updatePeriod(val) {
|
||||
this.period = val;
|
||||
|
@ -42,10 +42,11 @@ export default {
|
||||
return {
|
||||
factoryId: 4, // 默认成都
|
||||
cityOptions: [
|
||||
"瑞昌",
|
||||
// "成都",
|
||||
"邯郸",
|
||||
// "株洲",
|
||||
"瑞昌",
|
||||
|
||||
// "佳木斯",
|
||||
// "凯盛光伏",
|
||||
// "蚌埠兴科",
|
||||
|
@ -1,8 +1,8 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2023-11-06 15:15:30
|
||||
* @LastEditTime: 2024-06-26 13:39:22
|
||||
* @LastEditors: DY
|
||||
* @LastEditTime: 2024-07-05 13:28:38
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
<template>
|
||||
@ -45,7 +45,7 @@
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<p class="title">芯片总功率(MW)</p>
|
||||
<p class="text">{{ dataForm.chipTotalPower }}</p>
|
||||
<p class="text">{{ dataForm.chipTotalPower.toFixed(2) }}</p>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="24">
|
||||
@ -73,7 +73,7 @@
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<p class="title">芯片产能利用率(%)</p>
|
||||
<p class="text">{{ dataForm.chipCapacityUtilizationRate }}</p>
|
||||
<p class="text">{{ parseFloat(dataForm.chipCapacityUtilizationRate.toFixed(2)) }}</p>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
@ -102,11 +102,11 @@
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="6">
|
||||
<p class="title">标准组件总功率(MW)</p>
|
||||
<p class="text">{{ dataForm.componentTotalPower }}</p>
|
||||
<p class="text">{{ parseFloat(dataForm.componentTotalPower.toFixed(2)) }}</p>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<p class="title">封装产能利用率(%)</p>
|
||||
<p class="text">{{ dataForm.componentCapacityUtilizationRate }}</p>
|
||||
<p class="text">{{ parseFloat(dataForm.componentCapacityUtilizationRate.toFixed(2)) }}</p>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<p class="title">标准组件人均产量(片/人)</p>
|
||||
|
@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-04-15 10:49:13
|
||||
* @LastEditTime: 2024-07-04 09:28:31
|
||||
* @LastEditTime: 2024-07-05 09:21:12
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@ -10,7 +10,7 @@
|
||||
<div class="app-container" style="padding: 16px 24px 0; height: auto; flex-grow: 1;">
|
||||
<el-form :model="listQuery" :inline="true" ref="dataForm" class="blueTip">
|
||||
<el-form-item label="时间维度" prop="type">
|
||||
<el-select v-model="listQuery.type" size="small" clearable placeholder="请选择">
|
||||
<el-select @change="changType" v-model="listQuery.type" size="small" clearable placeholder="请选择">
|
||||
<el-option v-for="item in timeList" :key="item.value" :label="item.label" :value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
@ -261,6 +261,11 @@ export default {
|
||||
mounted() {
|
||||
},
|
||||
methods: {
|
||||
changType() {
|
||||
this.listQuery.endDate = null
|
||||
this.listQuery.startDate = null
|
||||
this.listQuery.reportTime = null
|
||||
},
|
||||
otherMethods(val) {
|
||||
this.detailOrUpdateVisible = true;
|
||||
this.addOrEditTitle = "详情";
|
||||
@ -354,7 +359,7 @@ export default {
|
||||
this.$message.warning('请选择时间维度!')
|
||||
return
|
||||
}
|
||||
if (this.listQuery.startDate === undefined) {
|
||||
if (!this.listQuery.startDate) {
|
||||
this.$message.warning('请选择时间范围!')
|
||||
} else {
|
||||
await getProduceDataPage(this.listQuery).then(res => {
|
||||
@ -364,7 +369,6 @@ export default {
|
||||
this.listQuery.total = res.data.total
|
||||
}
|
||||
})
|
||||
|
||||
// 图表
|
||||
await getproddata(this.listQuery).then(resp => {
|
||||
if (resp.data?.length > 0) {
|
||||
|
@ -1,8 +1,8 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2023-11-06 15:15:30
|
||||
* @LastEditTime: 2024-06-27 14:50:21
|
||||
* @LastEditors: DY
|
||||
* @LastEditTime: 2024-07-05 09:31:40
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
<template>
|
||||
@ -69,14 +69,18 @@
|
||||
</el-col>
|
||||
<el-col :span="3">
|
||||
<p class="title">开始时间</p>
|
||||
<p class="text">{{ dataForm.startDate?.length > 0 ? dataForm.startDate[0] + '-' + dataForm.startDate[1] + '-' + dataForm.startDate[2] : '' }}</p>
|
||||
<p class="text">{{ dataForm.startDate?.length > 0 ? dataForm.startDate[0] + '-' + dataForm.startDate[1] + '-'
|
||||
+ dataForm.startDate[2] : '' }}</p>
|
||||
</el-col>
|
||||
<el-col :span="3">
|
||||
<p class="title">完成时间</p>
|
||||
<p class="text">{{ dataForm.endDate?.length > 0 ? dataForm.endDate[0] + '-' + dataForm.endDate[1] + '-' + dataForm.endDate[2] : '' }}</p>
|
||||
<p class="text">{{ dataForm.endDate?.length > 0 ? dataForm.endDate[0] + '-' + dataForm.endDate[1] + '-' +
|
||||
dataForm.endDate[2] : '' }}</p>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<div style="width: 100%; padding: 0 32px"><el-divider style="margin: 0"></el-divider></div>
|
||||
<div style="width: 100%; padding: 0 32px">
|
||||
<el-divider style="margin: 0"></el-divider>
|
||||
</div>
|
||||
<el-row :gutter="0" style="margin: 20px 32px">
|
||||
<el-col :span="8">
|
||||
<div>
|
||||
@ -89,13 +93,15 @@
|
||||
<el-col :span="16">
|
||||
<div style="border-left: 1px solid #d1d3d8; width: 100%; padding-left: 32px">
|
||||
<small-title slot="title" :no-padding="true">
|
||||
历史趋势
|
||||
待制品分布
|
||||
</small-title>
|
||||
<div ref="line" v-show="dataForm.orderStatus === 2" :style="{ height: '40vh', width: '50vw' }" />
|
||||
<div ref="equipmentLine" :style="{ height: '40vh', width: '50vw' }" />
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<div style="width: 100%; padding: 0 32px"><el-divider style="margin: 0"></el-divider></div>
|
||||
<div style="width: 100%; padding: 0 32px">
|
||||
<el-divider style="margin: 0"></el-divider>
|
||||
</div>
|
||||
<el-row :gutter="0" style="margin: 20px 32px">
|
||||
<el-col :span="8">
|
||||
<div>
|
||||
@ -106,11 +112,12 @@
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="16">
|
||||
<div style="border-left: 1px solid #d1d3d8; width: 100%; padding-left: 32px">
|
||||
<div v-show="dataForm.orderStatus === 2"
|
||||
style="border-left: 1px solid #d1d3d8; width: 100%; padding-left: 32px">
|
||||
<small-title slot="title" :no-padding="true">
|
||||
待制品分布
|
||||
历史趋势
|
||||
</small-title>
|
||||
<div ref="equipmentLine" :style="{ height: '40vh', width: '50vw' }" />
|
||||
<div ref="line" :style="{ height: '40vh', width: '50vw' }" />
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@ -193,9 +200,9 @@ export default {
|
||||
},
|
||||
init(id) {
|
||||
this.visible = true
|
||||
this.$nextTick(() => {
|
||||
this.initLineChart()
|
||||
})
|
||||
// this.$nextTick(() => {
|
||||
// this.initLineChart()
|
||||
// })
|
||||
if (id) {
|
||||
getWorkOrderDetail(id).then(res => {
|
||||
if (res.code === 0) {
|
||||
@ -248,9 +255,9 @@ export default {
|
||||
this.initChart(barList)
|
||||
// 良品率
|
||||
const pieList = [
|
||||
{ value: data.actualProduction, name: '实际产出' },
|
||||
{ value: data.wasteNum, name: '废品数量' },
|
||||
{ value: data.reworkNum, name: '待再加工数量' }
|
||||
{ value: data.actualProduction ? data.actualProduction : 0, name: '实际产出' },
|
||||
{ value: data.wasteNum ? data.wasteNum : 0, name: '废品数量' },
|
||||
{ value: data.reworkNum ? data.reworkNum :0, name: '待再加工数量' }
|
||||
]
|
||||
this.initPieChart(pieList)
|
||||
},
|
||||
@ -266,11 +273,11 @@ export default {
|
||||
tooltip: {
|
||||
trigger: 'axis'
|
||||
},
|
||||
grid: { top: 100, right: 90, bottom: 10, left: 10, containLabel: true },
|
||||
// grid: { top: 100, right: 90, bottom: 10, left: 10, containLabel: true },
|
||||
calculable: true,
|
||||
grid: {
|
||||
top: '15%',
|
||||
left: 0,
|
||||
left: 20,
|
||||
right: '10%',
|
||||
bottom: 0,
|
||||
containLabel: true
|
||||
@ -328,7 +335,14 @@ export default {
|
||||
label: {
|
||||
show: true,
|
||||
position: 'outside',
|
||||
formatter: '{d|{d}%} \n {b|{b}}',
|
||||
formatter: (params) => {
|
||||
console.log(params)
|
||||
let res = ''
|
||||
// for (let i in params) {
|
||||
res += `${params.percent ? params.percent : 0}% \n ${params.name}`
|
||||
// }
|
||||
return res
|
||||
},
|
||||
rich: {
|
||||
d: {
|
||||
color: 'inherit', // 系列色
|
||||
@ -356,11 +370,11 @@ export default {
|
||||
tooltip: {
|
||||
trigger: 'axis'
|
||||
},
|
||||
grid: { top: 100, right: 90, bottom: 10, left: 10, containLabel: true },
|
||||
// grid: { top: 100, right: 90, bottom: 10, left: 10, containLabel: true },
|
||||
calculable: true,
|
||||
grid: {
|
||||
top: '15%',
|
||||
left: 0,
|
||||
left: 30,
|
||||
right: 0,
|
||||
bottom: 0,
|
||||
containLabel: true
|
||||
|
@ -176,13 +176,13 @@ export default {
|
||||
{
|
||||
prop: "queryValue",
|
||||
label: msg.queryColumn,
|
||||
filter: (val) => (val || val === 0 ? val : "-"),
|
||||
filter: (val) => (val || val === 0 ? parseFloat(val.toFixed(2)) : "-"),
|
||||
minWidth: 150,
|
||||
},
|
||||
{
|
||||
prop: "target",
|
||||
label: msg.targetColumn,
|
||||
filter: (val) => (val || val === 0 ? val : "-"),
|
||||
filter: (val) => (val || val === 0 ? parseFloat(val.toFixed(2)) : "-"),
|
||||
minWidth: 150,
|
||||
},
|
||||
];
|
||||
@ -231,12 +231,12 @@ export default {
|
||||
for (let i = 0; i < val.length; i++) {
|
||||
if (val[i].unit !== "㎡") {
|
||||
xData1.push(val[i].item);
|
||||
barData1.push(val[i].target || 0);
|
||||
barData2.push(val[i].queryValue || 0);
|
||||
barData1.push(parseFloat(val[i].target.toFixed(2)) || 0);
|
||||
barData2.push(parseFloat(val[i].queryValue.toFixed(2)) || 0);
|
||||
} else {
|
||||
xData2.push(val[i].item);
|
||||
barData3.push(val[i].target || 0);
|
||||
barData4.push(val[i].queryValue || 0);
|
||||
barData3.push(parseFloat(val[i].target.toFixed(2)) || 0);
|
||||
barData4.push(parseFloat(val[i].queryValue.toFixed(2)) || 0);
|
||||
}
|
||||
}
|
||||
this.chartMsg1.xData = xData1;
|
||||
|
@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-06-19 15:28:34
|
||||
* @LastEditTime: 2024-07-02 08:41:11
|
||||
* @LastEditTime: 2024-07-05 13:43:22
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@ -63,8 +63,9 @@ export default {
|
||||
: params[i].seriesName === "转化效率"
|
||||
? (params[i].value ? params[i].value.toFixed(2) : 0.0) + "%"
|
||||
: params[i].seriesName.search('总功率') != -1
|
||||
? (params[i].value ? params[i].value : 0) + "MW"
|
||||
: (params[i].value ? params[i].value : 0) + "片"
|
||||
? (params[i].value ? parseFloat(params[i].value.toFixed(2)) : 0) + "MW"
|
||||
: params[i].seriesName.search('BIPV') != -1
|
||||
? (params[i].value ? parseFloat(params[i].value.toFixed(2)) : 0) + "㎡" : (params[i].value ? params[i].value : 0) + "片"
|
||||
}</span>`;
|
||||
}
|
||||
return res;
|
||||
|
@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-06-20 16:13:36
|
||||
* @LastEditTime: 2024-07-02 08:40:56
|
||||
* @LastEditTime: 2024-07-05 13:47:02
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@ -59,12 +59,13 @@ export default {
|
||||
`<span style='display:inline-block;margin-right:4px;width:10px;height:10px;background-color:${params[i].color}'></span>` +
|
||||
`<span style='display:inline-block;width:150px;color:rgba(0,0,0,0.8);font-size:14px;'>${params[i].seriesName}</span>` +
|
||||
`<span style='color:rgba(0,0,0,0.48);font-size:14px;'>${params[i].seriesName === "综合良率"
|
||||
? (params[i].data.titleValue ? params[i].data.titleValue.toFixed(2) : 0.0) + "%"
|
||||
? (params[i].data.titleValue ? parseFloat(params[i].data.titleValue.toFixed(2)) : 0.0) + "%"
|
||||
: params[i].seriesName === "转化效率"
|
||||
? (params[i].data.titleValue ? params[i].data.titleValue.toFixed(2) : 0.0) + "%"
|
||||
? (params[i].data.titleValue ? parseFloat(params[i].data.titleValue.toFixed(2)) : 0.0) + "%"
|
||||
: params[i].seriesName.search('总功率') != -1
|
||||
? (params[i].data.titleValue ? params[i].data.titleValue : 0) + "MW"
|
||||
: (params[i].data.titleValue ? params[i].data.titleValue : 0) + "片"
|
||||
? (params[i].data.titleValue ? parseFloat(params[i].data.titleValue.toFixed(2)) : 0) + "MW"
|
||||
: params[i].seriesName.search('BIPV') != -1
|
||||
? (params[i].value ? parseFloat(params[i].value.toFixed(2)) : 0) + "㎡" : (params[i].data.titleValue ? params[i].data.titleValue : 0) + "片"
|
||||
}</span>`;
|
||||
}
|
||||
return res;
|
||||
|
@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-06-20 16:13:52
|
||||
* @LastEditTime: 2024-07-02 08:41:23
|
||||
* @LastEditTime: 2024-07-05 13:48:12
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@ -51,7 +51,7 @@ export default {
|
||||
},
|
||||
},
|
||||
formatter: function (params) {
|
||||
// console.log('params', params);
|
||||
console.log('params', params);
|
||||
var res = `<span style='color:rgba(0,0,0,0.8)'>${params[0].axisValueLabel}</span>`;
|
||||
for (var i = 0, l = params.length; i < l; i++) {
|
||||
res +=
|
||||
@ -61,10 +61,11 @@ export default {
|
||||
`<span style='color:rgba(0,0,0,0.48);font-size:14px;'>${params[i].seriesName === "综合良率"
|
||||
? (params[i].value ? params[i].value.toFixed(2) : 0.0) + "%"
|
||||
: params[i].seriesName === "转化效率"
|
||||
? params[i].value+ "%"
|
||||
? parseFloat(params[i].value.toFixed(2)) + "%"
|
||||
: params[i].seriesName.search('总功率') != -1
|
||||
? (params[i].value ? params[i] : 0) + "MW"
|
||||
: (params[i].value ? params[i].value : 0) + "片"
|
||||
? (params[i].value ? parseFloat(params[i].value.toFixed(2)) : 0) + "MW"
|
||||
: params[i].seriesName.search('BIPV') != -1
|
||||
? (params[i].value ? parseFloat(params[i].value.toFixed(2)) : 0) + "㎡":(params[i].value ? params[i].value : 0) + "片"
|
||||
}</span>`;
|
||||
}
|
||||
return res;
|
||||
|
@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-06-21 09:05:14
|
||||
* @LastEditTime: 2024-07-03 16:07:42
|
||||
* @LastEditTime: 2024-07-05 13:49:59
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@ -61,11 +61,11 @@ export default {
|
||||
`<span style='display:inline-block;margin-right:4px;width:10px;height:10px;background-color:${params[0].color}'></span>` +
|
||||
`<span style='display:inline-block;width:150px;color:rgba(0,0,0,0.8);font-size:14px;'>${params[0].axisValueLabel}</span>` +
|
||||
`<span style='color:rgba(0,0,0,0.48);font-size:14px;'>${params[0].name === "综合良率"
|
||||
? (params[0].value ? params[0].value.toFixed(2) : 0.0) + "%"
|
||||
? (params[0].value ? parseFloat(params[0].value.toFixed(2)) : 0.0) + "%"
|
||||
: params[0].name === "转化效率"
|
||||
? (params[0].value ? params[0].value.toFixed(2) : 0.0) + "%"
|
||||
? (params[0].value ? parseFloat(params[0].value.toFixed(2)) : 0.0) + "%"
|
||||
: params[0].axisValueLabel.search('总功率') != -1
|
||||
? (params[0].value ? params[0].value : 0) + "MW"
|
||||
? (params[0].value ? parseFloat(params[0].value.toFixed(2)) : 0) + "MW"
|
||||
: (params[0].value ? params[0].value : 0) + "片"
|
||||
}</span>`;
|
||||
// }
|
||||
@ -75,11 +75,11 @@ export default {
|
||||
`<span style='display:inline-block;margin-right:4px;width:10px;height:10px;background-color:${params[1].color}'></span>` +
|
||||
`<span style='display:inline-block;width:150px;color:rgba(0,0,0,0.8);font-size:14px;'>${params[1].axisValueLabel}</span>` +
|
||||
`<span style='color:rgba(0,0,0,0.48);font-size:14px;'>${params[1].name === "综合良率"
|
||||
? (params[1].value ? params[1].value.toFixed(2) : 0.0) + "%"
|
||||
? (params[1].value ? parseFloat(params[1].value.toFixed(2)) : 0.0) + "%"
|
||||
: params[1].name === "转化效率"
|
||||
? (params[1].value ? params[1].value.toFixed(2) : 0.0) + "%"
|
||||
? (params[1].value ? parseFloat(params[1].value.toFixed(2)) : 0.0) + "%"
|
||||
: params[1].axisValueLabel.search('总功率') != -1
|
||||
? (params[1].value ? params[1].value : 0) + "MW"
|
||||
? (params[1].value ? parseFloat(params[1].value.toFixed(2)) : 0) + "MW"
|
||||
: (params[1].value ? params[1].value : 0) + "片"
|
||||
}</span>`;
|
||||
}
|
||||
|
@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: zhp
|
||||
* @Date: 2024-04-15 10:49:13
|
||||
* @LastEditTime: 2024-07-01 14:43:42
|
||||
* @LastEditTime: 2024-07-05 13:24:58
|
||||
* @LastEditors: zhp
|
||||
* @Description:
|
||||
-->
|
||||
@ -357,10 +357,6 @@ export default {
|
||||
type: '芯片',
|
||||
item: '芯片良率',
|
||||
unit: '%'
|
||||
}, {
|
||||
type: '芯片',
|
||||
item: '芯片产量',
|
||||
unit: '片'
|
||||
}, {
|
||||
type: '芯片',
|
||||
item: '芯片总功率',
|
||||
@ -429,7 +425,7 @@ export default {
|
||||
{
|
||||
type: 'BIPV',
|
||||
item: 'BIPV产量',
|
||||
unit: 'm2'
|
||||
unit: '㎡'
|
||||
},
|
||||
{
|
||||
type: 'BIPV',
|
||||
@ -439,7 +435,7 @@ export default {
|
||||
{
|
||||
type: 'BIPV',
|
||||
item: '人均产量',
|
||||
unit: 'm2/人'
|
||||
unit: '㎡/人'
|
||||
},
|
||||
{
|
||||
type: 'BIPV',
|
||||
@ -462,6 +458,7 @@ export default {
|
||||
// this.chartMsg.xData.push(ele.titleValue)
|
||||
this.otherProps.push({
|
||||
label: ele.titleValue,
|
||||
filter: (val) => (val || val === 0 ? parseFloat(val.toFixed(2)) : "-"),
|
||||
prop: 'value' + i
|
||||
})
|
||||
})
|
||||
@ -471,35 +468,31 @@ export default {
|
||||
let m = 'value' + i
|
||||
// ele.productYieldDataVOList.forEach((item) => {
|
||||
dataArr[0]['' + m + ''] = item.ftoInput
|
||||
// dataArr[0].factory = item.factory === 1 ? '邯郸' : '瑞昌'
|
||||
// dataArr[1].factory = item.factory === 1 ? '邯郸' : '瑞昌'
|
||||
// dataArr[2].factory = item.factory === 1 ? '邯郸' : '瑞昌'
|
||||
// dataArr[3].factory = item.factory === 1 ? '邯郸' : '瑞昌'
|
||||
dataArr[1]['' + m + ''] = item.chipInput
|
||||
dataArr[2]['' + m + ''] = item.chipYield
|
||||
dataArr[1]['' + m + ''] = item.chipYield
|
||||
dataArr[2]['' + m + ''] = item.chipAveragePower
|
||||
dataArr[3]['' + m + ''] = item.chipYieldRate
|
||||
dataArr[4]['' + m + ''] = item.chipAveragePower
|
||||
dataArr[5]['' + m + ''] = item.chipTotalPower
|
||||
dataArr[6]['' + m + ''] = item.chipCssMarriageRate
|
||||
dataArr[7]['' + m + ''] = item.chipOee
|
||||
dataArr[8]['' + m + ''] = item.chipCapacityUtilizationRate
|
||||
dataArr[9]['' + m + ''] = item.chipAnnualAverageProduction
|
||||
dataArr[10]['' + m + ''] = item.chipBom
|
||||
dataArr[11]['' + m + ''] = item.componentYield
|
||||
dataArr[12]['' + m + ''] = item.componentAveragePower
|
||||
dataArr[13]['' + m + ''] = item.componentYieldRate
|
||||
dataArr[14]['' + m + ''] = item.componentTotalPower
|
||||
dataArr[15]['' + m + ''] = item.componentOee
|
||||
dataArr[16]['' + m + ''] = item.componentCapacityUtilizationRate
|
||||
dataArr[17]['' + m + ''] = item.componentAnnualAverageProduction
|
||||
dataArr[18]['' + m + ''] = item.componentBom
|
||||
dataArr[19]['' + m + ''] = item.bipvChipUsage
|
||||
dataArr[20]['' + m + ''] = item.bipvProductOutput
|
||||
dataArr[21]['' + m + ''] = item.bipvChipUtilizationRate
|
||||
dataArr[22]['' + m + ''] = item.bipvAnnualAverageProduction
|
||||
dataArr[23]['' + m + ''] = item.bipvOeeMaterialCost
|
||||
dataArr[24]['' + m + ''] = item.bipvInsideMaterialCost
|
||||
dataArr[25]['' + m + ''] = item.bipvComprehensiveMaterialCost
|
||||
dataArr[4]['' + m + ''] = item.chipTotalPower
|
||||
dataArr[5]['' + m + ''] = item.chipCssMarriageRate
|
||||
dataArr[6]['' + m + ''] = item.chipOee
|
||||
dataArr[7]['' + m + ''] = item.chipCapacityUtilizationRate
|
||||
dataArr[8]['' + m + ''] = item.chipAnnualAverageProduction
|
||||
dataArr[9]['' + m + ''] = item.chipBom
|
||||
dataArr[10]['' + m + ''] = item.componentYield
|
||||
dataArr[11]['' + m + ''] = item.componentAveragePower
|
||||
dataArr[12]['' + m + ''] = item.componentYieldRate
|
||||
dataArr[13]['' + m + ''] = item.componentTotalPower
|
||||
dataArr[14]['' + m + ''] = item.componentOee
|
||||
dataArr[15]['' + m + ''] = item.componentCapacityUtilizationRate
|
||||
dataArr[16]['' + m + ''] = item.componentAnnualAverageProduction
|
||||
dataArr[17]['' + m + ''] = item.componentBom
|
||||
dataArr[18]['' + m + ''] = item.bipvChipUsage
|
||||
dataArr[19]['' + m + ''] = item.bipvProductOutput
|
||||
dataArr[20]['' + m + ''] = item.bipvChipUtilizationRate
|
||||
dataArr[21]['' + m + ''] = item.bipvAnnualAverageProduction
|
||||
dataArr[22]['' + m + ''] = item.bipvOeeMaterialCost
|
||||
dataArr[23]['' + m + ''] = item.bipvInsideMaterialCost
|
||||
dataArr[24]['' + m + ''] = item.bipvComprehensiveMaterialCost
|
||||
// dataArr[25]['' + m + ''] = item.bipvComprehensiveMaterialCost
|
||||
|
||||
// })
|
||||
// ele.titleValue
|
||||
|
@ -566,6 +566,7 @@ export default {
|
||||
this.chartMsg.xData.push(ele.reportTimep)
|
||||
this.otherProps.push({
|
||||
label: ele.reportTimep,
|
||||
filter: (val) => (val || val === 0 ? val : "-"),
|
||||
prop: 'value' + i
|
||||
})
|
||||
})
|
||||
@ -614,18 +615,27 @@ export default {
|
||||
this.chartMsgYearTarget.series[0].data = [
|
||||
{
|
||||
value: res.data[0].yearTarget.chipTotalPower,
|
||||
label: {
|
||||
color: '#8EF0AB'
|
||||
},
|
||||
itemStyle: {
|
||||
color: '#8EF0AB'
|
||||
}
|
||||
},
|
||||
{
|
||||
value: res.data[0].yearTarget.componentTotalPower,
|
||||
label: {
|
||||
color: '#288AFF'
|
||||
},
|
||||
itemStyle: {
|
||||
color: '#288AFF'
|
||||
}
|
||||
},
|
||||
{
|
||||
value: null,
|
||||
label: {
|
||||
color: '#64BDFF'
|
||||
},
|
||||
itemStyle: {
|
||||
color: '#64BDFF'
|
||||
}
|
||||
@ -633,18 +643,27 @@ export default {
|
||||
this.chartMsgYearTarget.series[1].data = [
|
||||
{
|
||||
value: null,
|
||||
label: {
|
||||
color: '#8EF0AB'
|
||||
},
|
||||
itemStyle: {
|
||||
color: '#8EF0AB'
|
||||
}
|
||||
},
|
||||
{
|
||||
value: null,
|
||||
label: {
|
||||
color: '#288AFF'
|
||||
},
|
||||
itemStyle: {
|
||||
color: '#288AFF'
|
||||
}
|
||||
},
|
||||
{
|
||||
value: res.data[0].yearTarget.componentConversionEfficiency,
|
||||
label: {
|
||||
color: '#64BDFF'
|
||||
},
|
||||
itemStyle: {
|
||||
color: '#64BDFF'
|
||||
}
|
||||
|
@ -198,7 +198,7 @@ export default {
|
||||
position: [-18, -16],
|
||||
color: "#68C483",
|
||||
formatter: function (params) {
|
||||
return params.value
|
||||
return parseFloat(params.value.toFixed(2))
|
||||
},
|
||||
},
|
||||
},
|
||||
@ -212,7 +212,7 @@ export default {
|
||||
position: [0, -16],
|
||||
color: "#288AFF",
|
||||
formatter: function (params) {
|
||||
return params.value
|
||||
return parseFloat(params.value.toFixed(2))
|
||||
},
|
||||
},
|
||||
},
|
||||
@ -261,10 +261,10 @@ export default {
|
||||
barWidth: 20,
|
||||
label: {
|
||||
show: true,
|
||||
position: [-30, -16],
|
||||
position: [-10, -16],
|
||||
color: "#68C483",
|
||||
formatter: function (params) {
|
||||
return params.value
|
||||
return parseFloat(params.value.toFixed(2))
|
||||
},
|
||||
},
|
||||
},
|
||||
@ -279,7 +279,7 @@ export default {
|
||||
position: [0, -16],
|
||||
color: "#288AFF",
|
||||
formatter: function (params) {
|
||||
return params.value
|
||||
return parseFloat(params.value.toFixed(2))
|
||||
},
|
||||
},
|
||||
},
|
||||
@ -516,6 +516,7 @@ export default {
|
||||
// this.chartMsg.xData.push(ele.titleValue.replace(/[^\d]/g, " "))
|
||||
this.otherProps.push({
|
||||
label: ele.titleValue,
|
||||
filter: (val) => (val || val === 0 ? parseFloat(val.toFixed(2)) : "-"),
|
||||
prop: 'value' + i
|
||||
})
|
||||
})
|
||||
@ -637,7 +638,7 @@ export default {
|
||||
position: [-18, -16],
|
||||
color: "rgba(104,196,131)",
|
||||
formatter: function (params) {
|
||||
return params.value
|
||||
return params.value.toFixed(2)
|
||||
},
|
||||
},
|
||||
}, {
|
||||
@ -657,7 +658,7 @@ export default {
|
||||
position: [-18, -16],
|
||||
color: "rgba(104,196,131,.5)",
|
||||
formatter: function (params) {
|
||||
return params.value
|
||||
return params.value.toFixed(2)
|
||||
},
|
||||
},
|
||||
})
|
||||
@ -666,9 +667,6 @@ export default {
|
||||
stack: 'b',
|
||||
data: [
|
||||
{ name: "标准组件总功率完成值", value: obj.componentTotalPower,titleValue:obj.componentTotalPower },
|
||||
// { name: '标准组件总功率完成值', value: 23 },
|
||||
// { name: "%", value: 7.02 },
|
||||
// { name: "%", value: 80.2 },
|
||||
],
|
||||
type: "bar",
|
||||
barWidth: 20,
|
||||
@ -677,7 +675,7 @@ export default {
|
||||
position: [0, -16],
|
||||
color: "rgba(40,138,255)",
|
||||
formatter: function (params) {
|
||||
return params.value
|
||||
return params.value.toFixed(2)
|
||||
},
|
||||
},
|
||||
}, {
|
||||
@ -697,15 +695,12 @@ export default {
|
||||
position: [0, -16],
|
||||
color: "rgba(40,138,255,.5)",
|
||||
formatter: function (params) {
|
||||
return params.value
|
||||
return params.value.toFixed(2)
|
||||
},
|
||||
},
|
||||
})
|
||||
console.log('arr', chip,std)
|
||||
this.chartMsgTarget.series = [...chip, ...std]
|
||||
// arr.forEach((ele) => {
|
||||
|
||||
// })
|
||||
res.data.list.slice(res.data.list.length - 1, res.data.list.length).forEach((ele, index) => {
|
||||
// let i = index + 1
|
||||
this.chartMsgYearTarget.xData.push(ele.titleValue)
|
||||
|
@ -390,7 +390,7 @@ export default {
|
||||
{
|
||||
factory: null,
|
||||
item: 'BIPV产量',
|
||||
unit: 'm2'
|
||||
unit: '㎡'
|
||||
},]
|
||||
} else {
|
||||
return [{
|
||||
@ -647,6 +647,7 @@ export default {
|
||||
// this.chartMsg.xData.push(ele.titleValue.replace(/[^\d]/g, " "))
|
||||
this.otherProps.push({
|
||||
label: ele.titleValue,
|
||||
filter: (val) => (val || val === 0 ? val : "-"),
|
||||
prop: 'value' + i
|
||||
})
|
||||
})
|
||||
@ -832,7 +833,7 @@ export default {
|
||||
label: {
|
||||
show: true,
|
||||
color: "rgba(40,138,255)",
|
||||
position: [-18, -16],
|
||||
position: [-10, -16],
|
||||
formatter: function (params) {
|
||||
return params.value
|
||||
},
|
||||
@ -852,7 +853,7 @@ export default {
|
||||
// barGap: '-100%',
|
||||
label: {
|
||||
show: true,
|
||||
position: [-18, -16],
|
||||
position: [-10, -16],
|
||||
color: "rgba(40,138,255,.2)",
|
||||
formatter: function (params) {
|
||||
return params.value
|
||||
|
@ -146,13 +146,12 @@ export default {
|
||||
chartHeight: this.tableHeight(137) / 2 - 111,
|
||||
tableH: this.tableHeight(137) / 2 - 70,
|
||||
legendList: [
|
||||
{
|
||||
id: 1, name: "综合良率", type: 2, color: "#FFCE6A" },
|
||||
{
|
||||
id: 2, name: "FTO投入", type: 1, color: "#8EF0AB" },
|
||||
{id: 2, name: "FTO投入", type: 1, color: "#8EF0AB" },
|
||||
{ id: 3, name: "芯片产量", type: 1, color: "#288AFF" },
|
||||
{ id: 4, name: "标准组件产量", type: 1, color: "#64BDFF" },
|
||||
{
|
||||
id: 4, name: "标准组件产量", type: 1, color: "#64BDFF" },
|
||||
id: 1, name: "综合良率", type: 2, color: "#FFCE6A"
|
||||
},
|
||||
],
|
||||
legendListTarget: [
|
||||
{
|
||||
@ -587,6 +586,7 @@ export default {
|
||||
this.chartMsg.xData.push(ele.titleValue)
|
||||
this.otherProps.push({
|
||||
label: ele.titleValue,
|
||||
filter: (val) => (val || val === 0 ? val : "-"),
|
||||
prop: 'value' + i
|
||||
})
|
||||
})
|
||||
@ -601,24 +601,36 @@ export default {
|
||||
this.chartMsgYearTarget.series[0].data = [
|
||||
{
|
||||
value: item.ftoInput,
|
||||
label: {
|
||||
color: '#8EF0AB'
|
||||
},
|
||||
itemStyle: {
|
||||
color: '#8EF0AB'
|
||||
}
|
||||
},
|
||||
{
|
||||
value: item.chipYield,
|
||||
label: {
|
||||
color: '#288AFF'
|
||||
},
|
||||
itemStyle: {
|
||||
color: '#288AFF'
|
||||
}
|
||||
},
|
||||
{
|
||||
value: item.componentYield,
|
||||
label: {
|
||||
color: '#64BDFF'
|
||||
},
|
||||
itemStyle: {
|
||||
color: '#64BDFF'
|
||||
}
|
||||
},
|
||||
{
|
||||
value: null,
|
||||
label: {
|
||||
color: '#FFCE6A'
|
||||
},
|
||||
itemStyle: {
|
||||
color: '#FFCE6A'
|
||||
}
|
||||
@ -626,24 +638,36 @@ export default {
|
||||
this.chartMsgYearTarget.series[1].data = [
|
||||
{
|
||||
value: null,
|
||||
label: {
|
||||
color: '#8EF0AB'
|
||||
},
|
||||
itemStyle: {
|
||||
color: '#8EF0AB'
|
||||
}
|
||||
},
|
||||
{
|
||||
value: null,
|
||||
label: {
|
||||
color: '#288AFF'
|
||||
},
|
||||
itemStyle: {
|
||||
color: '#288AFF'
|
||||
}
|
||||
},
|
||||
{
|
||||
value: null,
|
||||
label: {
|
||||
color: '#64BDFF'
|
||||
},
|
||||
itemStyle: {
|
||||
color: '#64BDFF'
|
||||
}
|
||||
},
|
||||
{
|
||||
value: item.ftoInput,
|
||||
label: {
|
||||
color: '#FFCE6A'
|
||||
},
|
||||
itemStyle: {
|
||||
color: '#FFCE6A'
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user