lb #12

Merged
gtz217 merged 27 commits from lb into master 2022-11-18 17:04:51 +08:00
4 changed files with 270 additions and 106 deletions
Showing only changes of commit 9dd1f27481 - Show all commits

View File

@ -1,10 +1,22 @@
<template> <template>
<div class="techy-analysis-header"> <div class="techy-analysis-header">
<span style="display: inline-block; width: calc(56px * var(--beilv)); height: calc(13px * var(--beilv));" v-html="titleLeftSVG" /> <template v-if="type === 'special'">
<div style="background: #cccc; width: 200px; height: 20px;"></div>
</template>
<template v-else>
<span
style="display: inline-block; width: calc(56px * var(--beilv)); height: calc(13px * var(--beilv));"
v-html="titleLeftSVG"
/>
<span class="techy-analysis-header__title"> <span class="techy-analysis-header__title">
<slot /> <slot />
</span> </span>
<span style="display: inline-block; width: calc(56px * var(--beilv)); height: calc(13px * var(--beilv));" v-html="titleRightSVG" /> <span
style="display: inline-block; width: calc(56px * var(--beilv)); height: calc(13px * var(--beilv));"
v-html="titleRightSVG"
/>
</template>
</div> </div>
</template> </template>
@ -109,6 +121,12 @@ const titleRightSVG = `<svg
export default { export default {
name: 'TechyAnalysisHeader', name: 'TechyAnalysisHeader',
props: {
type: {
type: String,
default: 'default-type'
}
},
data() { data() {
return { titleLeftSVG, titleRightSVG } return { titleLeftSVG, titleRightSVG }
} }

View File

@ -38,10 +38,10 @@
<!-- 第一行 --> <!-- 第一行 -->
<div class="quality-analysis__body__row-1"> <div class="quality-analysis__body__row-1">
<!-- 第一列 --> <!-- 第一列 -->
<div class="grow-8 flex gap-16"> <div class="flex gap-16">
<div class="grow"> <div class="grow" style="max-width: 24vw;">
<techy-box class="" style="padding: calc(16px * var(--beilv));"> <techy-box class="" style="padding: calc(8px * var(--beilv));">
<techy-analysis-header>产线缺陷日对比</techy-analysis-header> <techy-analysis-header type="special">产线缺陷日对比</techy-analysis-header>
<div <div
class="absolute top-0 left-0" class="absolute top-0 left-0"
style="position: absolute; width: 100%; height: 100%; top: 0; left: 0;" style="position: absolute; width: 100%; height: 100%; top: 0; left: 0;"
@ -67,9 +67,9 @@
</div> </div>
</techy-box> </techy-box>
</div> </div>
<div class="grow"> <div class="grow" style="max-width: 24vw;">
<techy-box class="" style="padding: calc(16px * var(--beilv));"> <techy-box class="" style="padding: calc(8px * var(--beilv));">
<techy-analysis-header>产线缺陷月对比</techy-analysis-header> <techy-analysis-header type="special">产线缺陷月对比</techy-analysis-header>
<div <div
class="absolute top-0 left-0" class="absolute top-0 left-0"
style="position: absolute; width: 100%; height: 100%; top: 0; left: 0;" style="position: absolute; width: 100%; height: 100%; top: 0; left: 0;"
@ -99,7 +99,7 @@
</div> </div>
<!-- 第二列 --> <!-- 第二列 -->
<div class="grow-6 flex gap-16"> <div class="grow flex gap-16">
<div class="width-222"> <div class="width-222">
<techy-box class="" style="padding: calc(16px * var(--beilv));"> <techy-box class="" style="padding: calc(16px * var(--beilv));">
<techy-analysis-header :show-top-icon="false">产线缺陷分析</techy-analysis-header> <techy-analysis-header :show-top-icon="false">产线缺陷分析</techy-analysis-header>
@ -554,7 +554,7 @@ export default {
.date-select { .date-select {
position: absolute; position: absolute;
top: calc(16px * var(--beilv)); top: calc(16px * var(--beilv));
right: calc(10px * var(--beilv)); right: calc(22px * var(--beilv));
border-radius: calc(2px * var(--beilv)); border-radius: calc(2px * var(--beilv));
overflow: hidden; overflow: hidden;
display: flex; display: flex;

View File

@ -1,5 +1,121 @@
<template> <template>
<div class="techy-analysis-header"> <div class="techy-analysis-header">
<template v-if="type === 'special'">
<div
style="background: #ccc0; width: 100%; height: calc(22px * var(--beilv)); display: flex; justify-content: center; align-items: center;"
>
<div class="legend" style="background: #fff0; width: calc(126px * var(--beilv));"></div>
<div style="flex: 1; white-space: nowrap; overflow: hidden;">
<span class="top-icon">
<svg
width="100%"
height="100%"
viewBox="0 0 56 13"
version="1.1"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
>
<title>left</title>
<g id="2MES。2-6蓝底-7、8白底" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="2-5质量管理" transform="translate(-419.000000, -808.000000)" fill="#31A6AE">
<g id="编组-16备份-7" transform="translate(360.000000, 513.000000)">
<g id="编组-20备份" transform="translate(24.000000, 277.000000)">
<g id="编组-13备份" transform="translate(35.000000, 16.000000)">
<g
id="编组-2备份"
transform="translate(28.000000, 8.500000) scale(1, -1) translate(-28.000000, -8.500000) translate(0.000000, 2.000000)"
>
<polygon id="路径-11" points="47.1645736 7.79376563e-14 43 0 52.2664792 13 56 13"></polygon>
<polygon
id="路径-11备份"
opacity="0.8"
points="36.1645736 7.79376563e-14 32 0 41.2664792 13 45 13"
></polygon>
<polygon
id="路径-11备份-3"
opacity="0.4"
points="14.1645736 7.79376563e-14 10 0 19.2664792 13 23 13"
></polygon>
<polygon
id="路径-11备份-2"
opacity="0.601434"
points="25.1645736 7.79376563e-14 21 0 30.2664792 13 34 13"
></polygon>
<polygon
id="路径-11备份-4"
opacity="0.201434"
points="4.16457365 7.79376563e-14 5.06480115e-16 0 9.26647921 13 13 13"
></polygon>
</g>
</g>
</g>
</g>
</g>
</g>
</svg>
</span>
<span class="techy-analysis-header__title">
<slot />
</span>
<span class="top-icon">
<svg
width="100%"
height="100%"
viewBox="0 0 56 13"
version="1.1"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
>
<title>right</title>
<g id="2MES。2-6蓝底-7、8白底" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="2-5质量管理" transform="translate(-653.000000, -808.000000)" fill="#31A6AE">
<g id="编组-16备份-7" transform="translate(360.000000, 513.000000)">
<g id="编组-20备份" transform="translate(24.000000, 277.000000)">
<g id="编组-13备份" transform="translate(35.000000, 16.000000)">
<g
id="编组-2备份-2"
transform="translate(262.000000, 8.500000) scale(-1, -1) translate(-262.000000, -8.500000) translate(234.000000, 2.000000)"
>
<polygon id="路径-11" points="47.1645736 7.79376563e-14 43 0 52.2664792 13 56 13"></polygon>
<polygon
id="路径-11备份"
opacity="0.8"
points="36.1645736 7.79376563e-14 32 0 41.2664792 13 45 13"
></polygon>
<polygon
id="路径-11备份-3"
opacity="0.4"
points="14.1645736 7.79376563e-14 10 0 19.2664792 13 23 13"
></polygon>
<polygon
id="路径-11备份-2"
opacity="0.601434"
points="25.1645736 7.79376563e-14 21 0 30.2664792 13 34 13"
></polygon>
<polygon
id="路径-11备份-4"
opacity="0.201434"
points="4.16457365 7.79376563e-14 5.06480115e-16 0 9.26647921 13 13 13"
></polygon>
</g>
</g>
</g>
</g>
</g>
</g>
</svg>
</span>
</div>
<div class="legend" style="background: #fff0; width: calc(126px * var(--beilv)); padding-left: calc(8px * var(--beilv));">
<div class="legend-item pla" style="margin-right: calc(8px * var(--beilv));">产线A</div>
<div class="legend-item plb">产线B</div>
</div>
</div>
</template>
<template v-else>
<span v-if="showTopIcon" class="top-icon"> <span v-if="showTopIcon" class="top-icon">
<svg <svg
width="100%" width="100%"
@ -99,6 +215,7 @@
</g> </g>
</svg> </svg>
</span> </span>
</template>
</div> </div>
</template> </template>
@ -106,6 +223,10 @@
export default { export default {
name: 'TechyAnalysisHeader', name: 'TechyAnalysisHeader',
props: { props: {
type: {
type: String,
default: 'dafault-type'
},
showTopIcon: { showTopIcon: {
type: Boolean, type: Boolean,
default: true default: true
@ -132,6 +253,30 @@ export default {
.top-icon { .top-icon {
display: inline-block; display: inline-block;
width: calc(56px * var(--beilv)); width: calc(56px * var(--beilv));
height: calc(13px * var(--beilv)); height: calc(12px * var(--beilv));
margin-bottom: calc(2px * var(--beilv));
}
.legend-item {
font-size: calc(10px * var(--beilv));
line-height: 1.5;
color: #dff1fe;
display: inline-block;
}
.legend-item::before {
content: '';
display: inline-block;
width: calc(8px * var(--beilv));
height: calc(8px * var(--beilv));
background: #fffc;
margin-right: calc(8px * var(--beilv));
}
.pla::before {
background: linear-gradient(to top, #49fbd6, transparent);
}
.plb::before {
background: linear-gradient(to top, #49b2ff, transparent);
} }
</style> </style>

View File

@ -250,14 +250,15 @@ export default {
containLabel: true containLabel: true
}, },
legend: { legend: {
itemWidth: 8, show: false,
itemHeight: 8, itemWidth: 10,
itemHeight: 10,
selectedMode: false, selectedMode: false,
top: '7%', top: '7%',
right: '2%', right: '2%',
textStyle: { textStyle: {
color: '#fff9', color: '#fff9',
fontSize: 10 fontSize: 12
} }
}, },
xAxis: { xAxis: {