style: 运营监控

main
@0Melon0 1 year ago
parent 01d18640a4
commit 96454b33ef

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.7 KiB

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="417.4140625" height="40.5" viewBox="0 0 417.4140625 40.5"><defs><radialGradient cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" id="master_svg0_555_26275" gradientTransform="translate(208.70703125 20.5) rotate(90) scale(20 203)"><stop offset="0%" stop-color="#251567" stop-opacity="0.800000011920929"/><stop offset="100%" stop-color="#230F79" stop-opacity="0.699999988079071"/></radialGradient></defs><g><g><g><path d="M5.70703125,15L25.70703125,40.5L391.70703125,40.5L411.70703125,25L391.70703125,0.5L25.70703125,0.5L5.70703125,15Z" fill="url(#master_svg0_555_26275)" fill-opacity="1"/><path d="M5.70703125,15L6.32461225,15.7874L25.70703125,40.5L391.70703125,40.5L410.91603125,25.6128L411.70703125,25L411.07403125,24.2251L391.70703125,0.5L25.70703125,0.5L6.51722025,14.4126L5.70703125,15ZM26.19363125,39.5L7.13480125,15.2L26.03143125,1.5L391.23203125,1.5L410.28403125,24.8379L391.36503125,39.5L26.19363125,39.5Z" fill-rule="evenodd" fill="#5797B5" fill-opacity="0.699999988079071"/></g><g transform="matrix(-1,0,0,-1,833.4140625,45)"><path d="M419.77452125,21.7929L416.38693925,24.61589L415.99992925,24.9384L432.97513125,45L438.76213125,45L419.77452125,21.7929ZM417.41413325,25.0616L433.43893125,44L436.65193125,44L419.63954125,23.207099L417.41413325,25.0616Z" fill-rule="evenodd" fill="#5797B5" fill-opacity="0.699999988079071"/></g><g><path d="M3.77452125,17.2929L0.38693925,20.11589L-0.0000707500000000083,20.4384L16.97513125,40.5L22.76213125,40.5L3.77452125,17.2929ZM1.41413325,20.5616L17.43893125,39.5L20.65193125,39.5L3.63954125,18.707099L1.41413325,20.5616Z" fill-rule="evenodd" fill="#5797B5" fill-opacity="0.699999988079071"/></g></g></g></svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

@ -7,7 +7,7 @@ const routes = [
{
path: '/',
name: 'home',
redirect: '/operation',
redirect: '/scheduling',
},
{
path: '/monitor',
@ -18,7 +18,7 @@ const routes = [
{
path: '/scheduling',
name: 'scheduling',
meta: { title: '护理人员排班' },
meta: { title: '运营监控数据可视化' },
component: () => import('@/views/pageScheduling/index.vue'),
},
{

@ -1,7 +1,7 @@
<template>
<div class="h-[48.79vh] bgLeftTopBox p-[1.85vh]">
<div class="w-[26.85vh] h-[26.85vh] mx-auto m-[2vh]" ref="echartsContainer"></div>
<div class="w-[45.18vh] h-[14.81vh] bgTopLeftItemBox mx-auto mt-[3.7vh] px-[2.96vh] py-[2.4vh] flex justify-between items-center">
<div class="w-[21.29vh] h-[21.29vh] mx-auto m-[2vh]" ref="echartsContainer"></div>
<div class="w-[45.18vh] h-[14.81vh] bgTopLeftItemBox mx-auto mt-[4.8vh] px-[2.96vh] py-[2.4vh] flex justify-between items-center">
<section>
<div class="flex">
<img src="@/assets/svg/Monitor/TopLeft/TrianglePurple.svg" />

@ -38,10 +38,16 @@
</template>
<script>
export default {};
import { Carousel, CarouselItem } from 'element-ui';
export default {
components: {
'el-carousel': Carousel,
'el-carousel-item': CarouselItem,
},
};
</script>
<style>
<style lang="scss" scoped>
.bgRightMidBox {
background-image: url('@/assets/svg/Operation/RightMid/Box.svg');
background-size: contain;
@ -53,4 +59,11 @@ export default {};
box-sizing: border-box;
border: 1px solid rgba(87, 151, 181, 0.4);
}
:deep(.el-carousel) {
height: 100%;
.el-carousel__item,
.el-carousel__container {
height: 100%;
}
}
</style>

@ -1,9 +1,75 @@
<template>
<div></div>
<div class="w-[172.22vh] h-[83.51vh] bgBox mx-auto relative">
<div class="absolute w-[38.51vh] h-[3.7vh] bgTitleBox top-[-1.9vh] left-[3.6vh]">
<div class="w-[29.62vh] h-[2.5vh] mx-auto mt-[0.64vh] flex justify-between items-center leading-none">
<div class="h-[0.64vh]">
<img class="h-full" src="@/assets/svg/Monitor/Triangle.svg" />
</div>
<span class="panmen text-[1.66vh]">白班</span>
<p class="panmen text-[1.66vh]">手术间: 178</p>
<p class="panmen text-[1.66vh]">护理人员: 135</p>
</div>
</div>
<section class="w-[166.2vh] h-[77.12vh] absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2">
<el-carousel direction="vertical" :autoplay="false" :interval="5000" indicatorPosition="none">
<el-carousel-item v-for="item in 1" :key="item">
<section class="carouselItemBox">
<template v-for="(item, index) in 39">
<div class="w-[54.25vh] h-[4.44vh] leading-[4.44vh] text-center" :class="index % 6 < 3 ? 'bgOdd' : 'bgEven'" :key="index">
<div class="inline-block w-[9.07vh] h-[1.66vh] leading-none">
<span class="panmen text-[#8C5AFA] text-[1.48vh]">R-{{ String(index + 1).padStart(3, '0') }}</span>
</div>
<div class="inline-block w-[23vh] h-[1.66vh] leading-none pl-[1.94vh] border-l border-dashed border-l-[rgba(213,209,228,0.24)]">
<span class="text-[1.48vh]">陈宇孙晨邓一帆</span>
</div>
</div>
</template>
</section>
</el-carousel-item>
</el-carousel>
</section>
</div>
</template>
<script>
export default {};
import { Carousel, CarouselItem } from 'element-ui';
export default {
components: {
'el-carousel': Carousel,
'el-carousel-item': CarouselItem,
},
};
</script>
<style></style>
<style lang="scss" scoped>
.bgBox {
background-image: url('@/assets/svg/Schedule/Box.svg');
background-size: contain;
background-position: center;
background-repeat: no-repeat;
}
.bgTitleBox {
background-image: url('@/assets/svg/Schedule/TitleBox.svg');
background-size: contain;
background-position: center;
background-repeat: no-repeat;
}
:deep(.el-carousel) {
height: 100%;
.el-carousel__item,
.el-carousel__container {
height: 100%;
.carouselItemBox {
display: grid;
grid-template-columns: repeat(3, minmax(54.25vh, 1fr));
grid-row-gap: 1.64vh;
}
}
}
.bgOdd {
background-color: rgba(50, 35, 105, 0.38);
}
.bgEven {
background-color: rgba(74, 78, 103, 0.15);
}
</style>

Loading…
Cancel
Save