Merge branch 'main' of git.zdool.com:xs/ggfwjsc

This commit is contained in:
姚宇浩 2024-04-17 14:20:47 +08:00
commit 1f54cd7010
37 changed files with 1548 additions and 169 deletions

View File

@ -12,6 +12,7 @@
"echarts": "^5.4.2", "echarts": "^5.4.2",
"echarts-gl": "^2.0.9", "echarts-gl": "^2.0.9",
"echarts-liquidfill": "^3.1.0", "echarts-liquidfill": "^3.1.0",
"element-plus": "^2.7.0",
"sass": "^1.60.0", "sass": "^1.60.0",
"vue": "^3.2.47", "vue": "^3.2.47",
"vue-router": "^4.1.6" "vue-router": "^4.1.6"

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 323 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 269 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 101 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 97 KiB

View File

@ -3,6 +3,8 @@ import './style.css'
import App from './App.vue' import App from './App.vue'
// 引入路由 // 引入路由
import router from "./router"; import router from "./router";
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
createApp(App).use(router).mount('#app') createApp(App).use(router).use(ElementPlus).mount('#app')

View File

@ -0,0 +1,218 @@
<template>
<div ref="chart" style="width: 100%;height: calc(100% - 70px)"></div>
</template>
<script setup>
import { onMounted, reactive, ref } from "vue";
// echarts
import * as echarts from "echarts";
const chart = ref(); // DOM
const data = [20, 20, 50, 80, 70, 10, 30];
// const lineData = [150, 230, 224, 218, 135, 147, 260];
// const max = data
// .concat(lineData)
// .reduce((pre, cur) => (pre > cur ? pre : cur), 0); //
// //
const color = [
{
type: "linear",
x: 0,
x2: 0,
y: 0,
y2: 1,
colorStops: [
{
offset: 0,
color: "rgba(17, 193, 255, 1)",
},
{
offset: 0.5,
color: "rgba(17, 193, 255, 0.5)",
},
{
offset: 1,
color: "rgba(17, 193, 255, 0.20)",
},
],
},
];
const option = {
tooltip: {
trigger: "axis",
formatter: "{b0}<br/> {a0}:{c0}<br/>{a1}:{c1}",
axisPointer: {
type: "cross",
label: {
backgroundColor: "#3F82F7", //
},
},
},
legend: {
// data: ["", ""],
// top: "8%",
textStyle: {
fontSize: 12,
color: "#ffffff",
},
},
grid: {
top: "8%",
left: "5%",
right: "3%",
bottom: "0%",
containLabel: true,
color: "#ffffff",
},
calculable: true,
// color: "rgba(0, 252, 255, 1)",
color,
xAxis: [
{
type: "category",
axisLabel: {
//
textStyle: {
color: "#ffffff",
},
},
axisTick: {
show: false, //
},
data: ["东华街道", "龙洲街道","湖镇镇","詹家镇","小南海镇",],
},
{
type: "category",
show: false,
data: ["东华街道", "龙洲街道","湖镇镇","詹家镇","小南海镇",],
},
],
yAxis: [
{
type: "value",
scale: true,
// name: "/",
// max: data.length,
splitLine: {
show: false,
lineStyle: {
color: "#ffffff",
width: 1,
},
},
axisLabel: {
//
textStyle: {
color: "#ffffff",
},
},
axisLine: {
//y线
show: false,
lineStyle: {
color: "#ffffff",
width: 1,
type: "solid",
},
},
},
// {
// type: "value",
// scale: true,
// // name: "/",
// min: 0,
// max: max,
// splitLine: {//线
// show: false,
// lineStyle: {
// color: "#ffffff",
// width: 1,
// },
// },
// axisLabel: {//y
// textStyle: {
// color: "#ffffff",
// },
// },
// axisLine: {
// //y线
// show: false,
// lineStyle: {
// color: "#ffffff",
// width: 1,
// type: "solid",
// },
// },
// },
],
series: [
{
// name: "",
data: data,
barWidth: 20,
type: "bar",
},
// {
// // name: "",
// data: lineData,
// type: "line", //线
// itemStyle: {
// borderColor: "#00FCFF",
// borderWidth: 1,
// color: "#00FCFF",
// },
// },
{
xAxisIndex: 1,
itemStyle: {
color: "rgba(180, 180, 180, 0.2)", //
},
// data: data.map(() => max),
data: data,
barWidth: 40, //
emphasis: {
itemStyle: {
color: {
type: "linear",
x: 0,
x2: 0,
y: 0,
y2: 1,
colorStops: [
{
offset: 0,
color: "rgba(64, 247, 176, 0.25)",
},
{
offset: 1,
color: "rgba(17, 34, 64, 0.25)",
},
],
},
},
},
type: "bar",
},
],
};
// 使
onMounted(() => {
// domecharts
// var myChart = echarts.init(document.getElementById('main'));
// Vue3
var myChart = echarts.init(chart.value);
// init(); // vue3.2this
// 使
myChart.setOption(option);
// :
// window.addEventListener("resize", () => {
// myChart.resize();
// });
});
</script>
<style scoped></style>

View File

@ -0,0 +1,149 @@
<template>
<div ref="chart" style="width: 50%; height:50%;min-height:205px;"></div>
</template>
<script setup>
import { onMounted, reactive, ref } from "vue";
// echarts
import * as echarts from "echarts";
const chart = ref(); // DOM
const datas = {
value: 18,
text: "留 守 儿 童"
}
let option = {
series: [
//
{
type: "pie",
center: ["60%", "55%"],
radius: ["50%", "82%"],
hoverAnimation: false,
clockWise: false,
itemStyle: {
normal: {
borderWidth: 1,
borderColor: "rgba(193, 229, 255, .1)",
color: new echarts.graphic.LinearGradient(1, 1, 1, 0, [
{
offset: 1,
color: "rgba(127, 242, 255, .2)",
},
{
offset: 0,
color: "rgba(109, 195, 255, 0)",
},
]),
},
},
tooltip: {
show: false,
},
label: {
show: false,
},
data: [100],
},
/*内心原型图,展示整体数据概览*/
{
name: 'pie',
type: 'pie',
roundCap: true,
clockWise: true,
startAngle: 180,
labelLine: {
show: false
},
radius: ['50%', '70%'],
hoverAnimation: false,
center: ['60%', '55%'],
data: [
{
value: datas.value,
label: {
normal: {
formatter: '{d}{cell|%}\n{text|' + datas.text + '}',
position: 'center',
show: true,
textStyle: {
fontSize: '24',
fontWeight: 'normal',
color: '#fff',
lineHeight: 30,
rich: {
cell: {
fontSize: '24',
fontWeight: 'normal',
color: '#fff',
},
text: {
fontSize: 16,
fontFamily: 'FZLanTingHeiS-L-GB',
color: '#fff',
}
}
}
}
},
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 1, 1, 0, [{
offset: 0,
color: 'rgba(0, 255, 250, 0.29)'
},
{
offset: 0.5,
color: 'rgba(0, 255, 250, 0.8)'
}, {
offset: 1,
color: 'rgba(0, 255, 250, 1)'
}]),
shadowColor: 'rgba(1,1,1,0.5)',
shadowBlur: 1
}
}
},
{
value: 100 - datas.value,
name: '',
itemStyle: {
normal: {
color: '#095b9b', //
label: {
show: false
},
labelLine: {
show: false
}
},
emphasis: {
color: '#095b9b' //
}
}
}]
}
]
};
// 使
onMounted(() => {
// domecharts
// var myChart = echarts.init(document.getElementById('main'));
// Vue3
var myChart = echarts.init(chart.value);
// init(); // vue3.2this
// 使
myChart.setOption(option);
// :
// window.addEventListener("resize", () => {
// myChart.resize();
// });
});
</script>
<style scoped></style>

View File

@ -0,0 +1,145 @@
<template>
<div ref="chart" style="width: 50%; height:50%;min-height:205px;"></div>
</template>
<script setup>
import { onMounted, reactive, ref } from "vue";
// echarts
import * as echarts from "echarts";
const chart = ref(); // DOM
const datas = {
value: 38,
text: "单 亲 家 庭"
}
let option = {
series: [
//
{
type: "pie",
center: ["40%", "55%"],
radius: ["50%", "82%"],
hoverAnimation: false,
clockWise: false,
itemStyle: {
normal: {
borderWidth: 1,
borderColor: "rgba(193, 229, 255, .1)",
color: new echarts.graphic.LinearGradient(1, 1, 1, 0, [
{
offset: 1,
color: "rgba(127, 242, 255, .2)",
},
{
offset: 0,
color: "rgba(109, 195, 255, 0)",
},
]),
},
},
tooltip: {
show: false,
},
label: {
show: false,
},
data: [100],
},
/*内心原型图,展示整体数据概览*/
{
name: 'pie',
type: 'pie',
roundCap: true,
clockWise: true,
startAngle: 180,
labelLine: {
show: false
},
radius: ['50%', '70%'],
hoverAnimation: false,
center: ['40%', '55%'],
data: [
{
value: datas.value,
label: {
normal: {
formatter: '{d}{cell|%}\n{text|' + datas.text + '}',
position: 'center',
show: true,
textStyle: {
fontSize: '24',
fontWeight: 'normal',
color: '#fff',
lineHeight: 30,
rich: {
cell: {
fontSize: '24',
fontWeight: 'normal',
color: '#fff',
},
text: {
fontSize: 16,
fontFamily: 'FZLanTingHeiS-L-GB',
color: '#fff',
}
}
}
}
},
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 1, 1, [{
offset: 0,
color: 'rgba(0, 255, 134, 0.29)'
}, {
offset: 1,
color: 'rgba(0, 255, 134, 1)'
}]),
shadowColor: 'rgba(1,1,1,0.5)',
shadowBlur: 1
}
}
},
{
value: 100 - datas.value,
name: '',
itemStyle: {
normal: {
color: '#095b9b', //
label: {
show: false
},
labelLine: {
show: false
}
},
emphasis: {
color: '#095b9b' //
}
}
}]
}
]
};
// 使
onMounted(() => {
// domecharts
// var myChart = echarts.init(document.getElementById('main'));
// Vue3
var myChart = echarts.init(chart.value);
// init(); // vue3.2this
// 使
myChart.setOption(option);
// :
// window.addEventListener("resize", () => {
// myChart.resize();
// });
});
</script>
<style scoped></style>

View File

@ -0,0 +1,145 @@
<template>
<div ref="chart" style="width: 50%; height: 50%;min-height:205px;"></div>
</template>
<script setup>
import { onMounted, reactive, ref } from "vue";
// echarts
import * as echarts from "echarts";
const chart = ref(); // DOM
const datas = {
value: 65.1,
text: "独 生 子 女"
}
let option = {
series: [
//
{
type: "pie",
center: ["60%", "45%"],
radius: ["50%", "82%"],
hoverAnimation: false,
clockWise: false,
itemStyle: {
normal: {
borderWidth: 1,
borderColor: "rgba(193, 229, 255, .1)",
color: new echarts.graphic.LinearGradient(1, 1, 1, 0, [
{
offset: 1,
color: "rgba(127, 242, 255, .2)",
},
{
offset: 0,
color: "rgba(109, 195, 255, 0)",
},
]),
},
},
tooltip: {
show: false,
},
label: {
show: false,
},
data: [100],
},
/*内心原型图,展示整体数据概览*/
{
name: 'pie',
type: 'pie',
roundCap: true,
clockWise: true,
startAngle: 180,
labelLine: {
show: false
},
radius: ['50%', '70%'],
hoverAnimation: false,
center: ['60%', '45%'],
data: [
{
value: datas.value,
label: {
normal: {
formatter: '{d}{cell|%}\n{text|' + datas.text + '}',
position: 'center',
show: true,
textStyle: {
fontSize: '24',
fontWeight: 'normal',
color: '#fff',
lineHeight: 30,
rich: {
cell: {
fontSize: '24',
fontWeight: 'normal',
color: '#fff',
},
text: {
fontSize: 16,
fontFamily: 'FZLanTingHeiS-L-GB',
color: '#fff',
}
}
}
}
},
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 1, 1, 0, [{
offset: 0,
color: 'rgba(255, 224, 0, 0.29)'
}, {
offset: 1,
color: 'rgba(255, 224, 0, 1)'
}]),
shadowColor: 'rgba(1,1,1,0.5)',
shadowBlur: 1
}
}
},
{
value: 100 - datas.value,
name: '',
itemStyle: {
normal: {
color: 'rgba(255, 224, 0, 0.1)', //
label: {
show: false
},
labelLine: {
show: false
}
},
emphasis: {
color: 'rgba(255, 224, 0, 0.1)' //
}
}
}]
}
]
};
// 使
onMounted(() => {
// domecharts
// var myChart = echarts.init(document.getElementById('main'));
// Vue3
var myChart = echarts.init(chart.value);
// init(); // vue3.2this
// 使
myChart.setOption(option);
// :
// window.addEventListener("resize", () => {
// myChart.resize();
// });
});
</script>
<style scoped></style>

View File

@ -0,0 +1,145 @@
<template>
<div ref="chart" style="width: 50%; height: 50%;min-height:205px;"></div>
</template>
<script setup>
import { onMounted, reactive, ref } from "vue";
// echarts
import * as echarts from "echarts";
const chart = ref(); // DOM
const datas = {
value: 0.1,
text: "享 受 低 保"
}
let option = {
series: [
//
{
type: "pie",
center: ["40%", "45%"],
radius: ["50%", "82%"],
hoverAnimation: false,
clockWise: false,
itemStyle: {
normal: {
borderWidth: 1,
borderColor: "rgba(193, 229, 255, .1)",
color: new echarts.graphic.LinearGradient(1, 1, 1, 0, [
{
offset: 1,
color: "rgba(127, 242, 255, .2)",
},
{
offset: 0,
color: "rgba(109, 195, 255, 0)",
},
]),
},
},
tooltip: {
show: false,
},
label: {
show: false,
},
data: [100],
},
/*内心原型图,展示整体数据概览*/
{
name: 'pie',
type: 'pie',
roundCap: true,
clockWise: true,
startAngle: 180,
labelLine: {
show: false
},
radius: ['50%', '70%'],
hoverAnimation: false,
center: ['40%', '45%'],
data: [
{
value: datas.value,
label: {
normal: {
formatter: '{d}{cell|%}\n{text|' + datas.text + '}',
position: 'center',
show: true,
textStyle: {
fontSize: '24',
fontWeight: 'normal',
color: '#fff',
lineHeight: 30,
rich: {
cell: {
fontSize: '24',
fontWeight: 'normal',
color: '#fff',
},
text: {
fontSize: 16,
fontFamily: 'FZLanTingHeiS-L-GB',
color: '#fff',
}
}
}
}
},
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 1, 1, 0, [{
offset: 0,
color: 'rgba(254, 135, 98, 0.29)'
}, {
offset: 1,
color: 'rgba(254, 135, 98, 1)'
}]),
shadowColor: 'rgba(1,1,1,0.5)',
shadowBlur: 1
}
}
},
{
value: 100 - datas.value,
name: '',
itemStyle: {
normal: {
color: 'rgba(254, 135, 98, 0.1)', //
label: {
show: false
},
labelLine: {
show: false
}
},
emphasis: {
color: 'rgba(254, 135, 98, 0.1)' //
}
}
}]
}
]
};
// 使
onMounted(() => {
// domecharts
// var myChart = echarts.init(document.getElementById('main'));
// Vue3
var myChart = echarts.init(chart.value);
// init(); // vue3.2this
// 使
myChart.setOption(option);
// :
// window.addEventListener("resize", () => {
// myChart.resize();
// });
});
</script>
<style scoped></style>

View File

@ -0,0 +1,130 @@
<template>
<div ref="chart" style="width: 100%; height:calc(100% - 126px);min-height:205px;"></div>
</template>
<script setup>
import { onMounted, reactive, ref } from "vue";
// echarts
import * as echarts from "echarts";
const chart = ref(); // DOM
var colors = [
'#4EC2FF',
'#FF805C',
'#12F7D5',
'#268FFF',
'#FFE986'
]
var data = [
{
name: '正常',
value: 17
},
{
name: '关注',
value: 16
},
{
name: '追踪',
value: 14
},
{
name: '异常',
value: 8
},
{
name: '警戒',
value: 8
}
];
let option = {
color: colors,
legend: {
orient: 'vertical',
top: 'center',
right: '6%',
icon: "circle",
itemGap: 20,
itemWidth: 10,
itemHeight: 10,
textStyle: {
color: '#fff',
fontSize: 18
},
formatter: function (name) {
var target;
for (var i = 0, l = data.length; i < l; i++) {
if (data[i].name == name) {
target = data[i].value;
}
}
return ` ${name} ${target} `;
},
},
tooltip: {
trigger: 'item',
formatter: '{a} <br/>{b} : {c} ({d}%)'
},
series: [
/*内心原型图,展示整体数据概览*/
{
name: '测评分析',
type: 'pie',
radius: ['20%', '70%'],
center: ['30%', '50%'],
roseType: 'radius',
minShowLabelAngle: 30,
label: {
show: false,
},
data: data
},
//
{
type: "pie",
center: ["30%", "50%"],
radius: ["20%", "26%"],
hoverAnimation: false,
clockWise: false,
itemStyle: {
normal: {
borderWidth: 1,
borderColor: "rgba(193, 229, 255, .1)",
color: 'rgba(14, 59, 123, 0.60)'
},
},
tooltip: {
show: false,
},
label: {
show: false,
},
data: [100],
},
]
};
// 使
onMounted(() => {
// domecharts
// var myChart = echarts.init(document.getElementById('main'));
// Vue3
var myChart = echarts.init(chart.value);
// init(); // vue3.2this
// 使
myChart.setOption(option);
// :
// window.addEventListener("resize", () => {
// myChart.resize();
// });
});
</script>
<style scoped></style>

View File

@ -65,7 +65,6 @@ const option = {
color: "#ffffff", color: "#ffffff",
}, },
calculable: true, calculable: true,
// color: "rgba(0, 252, 255, 1)",
color, color,
xAxis: [ xAxis: [
{ {
@ -77,7 +76,9 @@ const option = {
color: "#ffffff", color: "#ffffff",
}, },
}, },
axisTick: {
show: false, //
},
data: ["2019", "2020", "2021", "2022", "2023"], data: ["2019", "2020", "2021", "2022", "2023"],
}, },
{ {

View File

@ -77,7 +77,9 @@ const option = {
color: "#ffffff", color: "#ffffff",
}, },
}, },
axisTick: {
show: false, //
},
data: ["4.07", "4.08", "4.09", "4.10", "4.11"], data: ["4.07", "4.08", "4.09", "4.10", "4.11"],
}, },
{ {
@ -155,6 +157,11 @@ const option = {
name: "上门服务次数", name: "上门服务次数",
data: lineData, data: lineData,
type: "line", //线 type: "line", //线
itemStyle: {
borderColor: "#00FCFF",
borderWidth: 1,
color: "#00FCFF",
},
}, },
{ {
xAxisIndex: 1, xAxisIndex: 1,

View File

@ -13,7 +13,7 @@ import * as echarts from "echarts";
const chart = ref(null); // DOM const chart = ref(null); // DOM
const data = ["大街乡", "社阳乡", "沐尘畲族乡", "庙下乡", "溪口镇", "罗家乡"]; const data = ["大街乡", "社阳乡", "沐尘畲族乡", "庙下乡", "溪口镇", "罗家乡"];
const datas = ["2", "4", "7", " 23", "25", "250"]; const datas = ["8", "10", "7", " 23", "25", "250"];
let zoomShow = true; let zoomShow = true;
// if (data.length > 7) { // if (data.length > 7) {
@ -39,26 +39,26 @@ let option = {
color: "#ffffff", color: "#ffffff",
}, },
dataZoom: [ dataZoom: [
{ {//
show: zoomShow, show: zoomShow,
type: "inside", type: "inside",
startValue: 0, startValue: 0,
endValue: 2, endValue: 10,
minValueSpan: 2, minValueSpan: 2,
maxValueSpan: 2, maxValueSpan: 10,
yAxisIndex: [0], yAxisIndex: [0],
zoomOnMouseWheel: false, // zoomOnMouseWheel: false, //
moveOnMouseWheel: true, // moveOnMouseWheel: true, //
moveOnMouseMove: true, // moveOnMouseMove: true, //
}, },
{ { //使
show: zoomShow, show: zoomShow,
type: "slider", type: "slider",
realtime: true, realtime: true,
startValue: 0, startValue: 0,
endValue: 2, endValue: 2,
width: "3.5", width: "8",
height: "80%", height: "90%",
yAxisIndex: [0], // y yAxisIndex: [0], // y
fillerColor: "rgba(154, 181, 215, 1)", // fillerColor: "rgba(154, 181, 215, 1)", //
borderColor: "rgba(17, 100, 210, 0.12)", borderColor: "rgba(17, 100, 210, 0.12)",
@ -67,9 +67,35 @@ let option = {
showDataShadow: false, // auto showDataShadow: false, // auto
showDetail: false, // showDetail: false, //
top: "1%", top: "1%",
right: "5", right: "8",//
}, },
], ],
// dataZoom: [
// {
// //使
// id: "dataZoomY",
// type: "slider",
// yAxisIndex: [0], // y
// filterMode: "empty", //,
// width: "10",
// height: "100%",
// right: "3%", //
// orient: "vertical", // 'horizontal''vertical'
// start: 0, // ,0 ~ 100
// end: 70, //
// zoomLock: true, //
// fillerColor: "rgba(154, 181, 215, 1)", //
// borderColor: "rgba(17, 100, 210, 0.12)",
// backgroundColor: "#cfcfcf", //
// handleSize: 0, //
// showDataShadow: false, // auto
// showDetail: false, //
// zoomOnMouseWheel: false, //
// moveOnMouseWheel: true, //
// moveOnMouseMove: true, //
// },
// ],
calculable: true, calculable: true,
xAxis: { xAxis: {
// name: '/', // name: '/',
@ -98,6 +124,11 @@ let option = {
width: 1, width: 1,
}, },
}, },
axisPointer: {
label: {
autoSplitNumber: 5,
},
},
}, },
yAxis: { yAxis: {
type: "category", // type: "category", //
@ -106,7 +137,7 @@ let option = {
//y //y
axisLabel: { axisLabel: {
inside: false, inside: false,
bargap: 0.5, // // bargap: 0.5, //
textStyle: { textStyle: {
color: "#ffffff", color: "#ffffff",
}, },
@ -120,11 +151,8 @@ let option = {
type: "solid", type: "solid",
}, },
}, },
// axisTick: {
scrollbar: { show: false, // x
orient: "vertical",
//
height: 100,
}, },
//线 //线
splitLine: { splitLine: {

View File

@ -1,163 +1,138 @@
<template> <template>
<div class="module"> <div class="module">
<div class="displayFlex left_bg">
<div class="displayFlex">
<div class="flex1"> <div class="flex1">
<div class="yd_title"> <div class="yd_title left_1"></div>
<span class="text">助乡兴趣点</span> <div style="width: 100%; height:calc(100% - 46px);display: flex;flex-wrap:wrap;">
<ePie1></ePie1>
<ePie2></ePie2>
<ePie3></ePie3>
<ePie4></ePie4>
</div> </div>
<ePie></ePie>
</div> </div>
<div class="flex1"> <div class="flex1">
<div class="yd_title"> <div class="yd_title left_2"></div>
<span class="text">基本信息</span> <div class="selectLint">
<div class="selectBox">
<el-select v-model="value" placeholder="Select" size="large" class="selClass">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</div> </div>
<div class="basicInformation"> <div class="selectBox">
<div class="basicInformation_item"> <el-select v-model="value" placeholder="Select" size="large">
<img class="icon" src="../assets/img_01.png" alt="" /> <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" />
<div class="right"> </el-select>
<div class="label">
<span>学历</span>
</div>
<p>浙江大学研究生</p>
</div> </div>
</div> </div>
<div class="basicInformation_item"> <ePieRose></ePieRose>
<img class="icon" src="../assets/img_01.png" alt="" />
<div class="right">
<div class="label">
<span>性格</span>
</div>
<p>沉稳</p>
</div> </div>
</div> </div>
<div class="basicInformation_item"> <div class="displayFlex center_bg">
<img class="icon" src="../assets/img_01.png" alt="" />
<div class="right">
<div class="label">
<span>分类</span>
</div>
<p>乡贤代表</p>
</div>
</div>
<div class="basicInformation_item">
<img class="icon" src="../assets/img_01.png" alt="" />
<div class="right">
<div class="label">
<span>所属行业</span>
</div>
<p>计算机<br />应用专家</p>
</div>
</div>
<div class="basicInformation_item">
<img class="icon" src="../assets/img_01.png" alt="" />
<div class="right">
<div class="label">
<span>家属情况</span>
</div>
<p>父母去世姨妈 在象</p>
</div>
</div>
<div class="basicInformation_item">
<img class="icon" src="../assets/img_01.png" alt="" />
<div class="right">
<div class="label">
<span>对乡情感</span>
</div>
<p>积极参与</p>
</div>
</div>
</div>
</div>
</div>
<div class="displayFlex">
<div class="flex1"> <div class="flex1">
<div class="yd_title"> <div class="yd_title center_1"></div>
<span class="text">活动数据分析</span>
</div>
<eGraph></eGraph> <eGraph></eGraph>
</div> </div>
</div>
<div class="displayFlex right_bg">
<div class="flex1"> <div class="flex1">
<div class="yd_title"> <div class="yd_title right_1"></div>
<span class="text">走访日志</span> <div class="czr-sl">
<div class="historyimg historyimg1">
<span>覆盖医疗机构数量</span>
<span>22</span>
</div> </div>
<div class="visitLog"> <div class="historyimg historyimg2">
<div class="visitLog_item"> <span>启用角色数量</span>
<img <span>101</span>
src="../assets/img_02.png"
width="48px"
height="51px"
alt=""
/>
<div class="visitLog_item_box">
<h4>故居走访</h4>
<p>走访人员陈思思</p>
<p>走访时间2023-03-19 09:00:03</p>
</div> </div>
<span class="check">点击查看</span> <!-- <img src="@/assets/eduImg/jyImg14.png" alt="" />
<img src="@/assets/eduImg/jyImg15.png" alt="" /> -->
</div> </div>
<div class="visitLog_item"> <edCSR></edCSR>
<img
src="../assets/img_02.png"
width="48px"
height="51px"
alt=""
/>
<div class="visitLog_item_box">
<h4>节日走访</h4>
<p>走访人员陈思思</p>
<p>走访时间2023-03-19 09:00:03</p>
</div> </div>
<span class="check">点击查看</span> <div class="flex11">
<div class="earlyWarning">
<div class="earlyWarning1">
<div>
<span class="green">16</span>
</div> </div>
<div class="visitLog_item"> <img src="@/assets/eduImg/jyImg10.png" alt="" />
<img <div class="historyimg historyimg1">
src="../assets/img_02.png" <span>绿色预警</span>
width="48px"
height="51px"
alt=""
/>
<div class="visitLog_item_box">
<h4>新年走访</h4>
<p>走访人员陈思思</p>
<p>走访时间2023-03-19 09:00:03</p>
</div>
<span class="check">点击查看</span>
</div> </div>
</div> </div>
<div class="earlyWarning1">
<div>
<span class="yellow">239</span>
</div>
<img src="@/assets/eduImg/jyImg9.png" alt="" />
<div class="historyimg historyimg2">
<span>黄色预警</span>
</div> </div>
</div> </div>
<div class="displayFlex"> <div class="earlyWarning1">
<div class="flex1"> <div>
<div class="yd_title"> <span class="red">139</span>
<span class="text">个人经历</span> </div>
<img src="@/assets/eduImg/jyImg8.png" alt="" />
<div class="historyimg historyimg3">
<span>红色预警</span>
</div>
</div> </div>
<div class="history">
<p>2002年至2009年担任浙江大学计算机学院和软件学院院长</p>
<p>1984年获得浙江大学计算机应用专业硕士学位之后留校任教</p>
<p>1990年获得浙江大学计算机应用专业博士学位</p>
<p>1994年至1996年担任浙江大学计算机系副系主任</p>
<p>1997年至2002年担任浙江大学计算机系系主任</p>
<p>2002年至2009年担任浙江大学计算机学院和软件学院院长</p>
</div> </div>
</div> </div>
<div class="flex1"> <div class="flex1">
<div class="yd_title"> <div style="display: flex; justify-content: center">
<span class="text">职位</span> <div class="czr-bj">
<div class="czrBox">
<div class="situation situation1"></div>
</div> </div>
<eBubble></eBubble> <div class="czrBox">
<div class="situation situation2"></div>
</div>
<div class="czrBox">
<div class="situation situation3"></div>
</div>
</div>
</div>
<!-- <eBubble></eBubble> -->
</div> </div>
</div> </div>
</div> </div>
</template> </template>
<script setup> <script setup>
// import eBubble from "./echarts/bubble.vue"; import edCSR from "./echarts_education/edCSR.vue";
// import ePie from "./echarts/pie.vue"; import ePie1 from "./echarts_education/pie1.vue";
// import ePie2 from "./echarts/pie2.vue"; import ePie2 from "./echarts_education/pie2.vue";
// import eGraph from "./echarts/graph.vue"; import ePie3 from "./echarts_education/pie3.vue";
import ePie4 from "./echarts_education/pie4.vue";
import ePieRose from "./echarts_education/pieRose.vue";
import { ref } from 'vue'
const value = ref('')
const options = [
{
value: 'Option1',
label: 'Option1',
},
{
value: 'Option2',
label: 'Option2',
},
{
value: 'Option3',
label: 'Option3',
},
{
value: 'Option4',
label: 'Option4',
},
{
value: 'Option5',
label: 'Option5',
},
]
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@ -167,7 +142,7 @@
display: flex; display: flex;
flex-direction: column; flex-direction: column;
// flex: 1; // flex: 1;
width: 33.333333333%; width: 30%;
} }
.flex1 { .flex1 {
@ -175,20 +150,77 @@
// padding: 0 28px; // padding: 0 28px;
box-sizing: border-box; box-sizing: border-box;
} }
.module { .module {
display: flex; display: flex;
width: 100%; width: 100%;
height: calc(100vh - 112px); height: calc(100vh - 112px);
} }
.yd_title { .left_bg {
background-image: url(@/assets/img_04.png); width: 642px;
// height: 100%;
box-sizing: border-box;
padding-left: 50px;
padding-right: 20px;
margin-right: 28px;
background-image: url(@/assets/images/left_bg.png);
background-repeat: no-repeat; background-repeat: no-repeat;
background-size: 100% 100%; background-size: 100% 100%;
}
.center_bg {
width: 582px;
box-sizing: border-box;
padding-left: 10px;
// margin-right: 28px;
background-image: url(@/assets/images/center_bg.png);
background-repeat: no-repeat;
background-size: 100% 100%;
}
.right_bg {
width: 642px;
box-sizing: border-box;
padding-right: 50px;
padding-left: 20px;
margin-left: 28px;
background-image: url(@/assets/images/right_bg.png);
background-repeat: no-repeat;
background-size: 100% 100%;
}
.left_1 {
background-image: url(@/assets/eduImg/title1.png);
background-repeat: no-repeat;
background-size: 100% 100%;
}
.left_2 {
background-image: url(@/assets/eduImg/title2.png);
background-repeat: no-repeat;
background-size: 100% 100%;
}
.center_1 {
background-image: url(@/assets/eduImg/title3.png);
background-repeat: no-repeat;
background-size: 100% 100%;
}
.right_1 {
background-image: url(@/assets/eduImg/title4.png);
background-repeat: no-repeat;
background-size: 100% 100%;
}
.yd_title {
// background-image: url(@/assets/img_04.png);
// background-repeat: no-repeat;
// background-size: 100% 100%;
box-sizing: border-box; box-sizing: border-box;
width: 100%; width: 100%;
height: 36px; height: 36px;
position: relative; position: relative;
.text { .text {
font-size: 16px; font-size: 16px;
font-family: SourceHanSansCN; font-family: SourceHanSansCN;
@ -205,6 +237,7 @@
flex-direction: row; flex-direction: row;
flex-wrap: wrap; flex-wrap: wrap;
padding-top: 22px; padding-top: 22px;
.basicInformation_item { .basicInformation_item {
flex: 0 0 50%; flex: 0 0 50%;
padding: 0 2px; padding: 0 2px;
@ -213,10 +246,12 @@
box-sizing: border-box; box-sizing: border-box;
display: flex; display: flex;
align-items: center; align-items: center;
.icon { .icon {
width: 79px; width: 79px;
height: 47px; height: 47px;
} }
.right { .right {
margin-left: 4px; margin-left: 4px;
@ -226,6 +261,7 @@
background-repeat: no-repeat; background-repeat: no-repeat;
background-position: bottom; background-position: bottom;
margin-bottom: 4px; margin-bottom: 4px;
span { span {
font-size: 12px; font-size: 12px;
font-weight: 400; font-weight: 400;
@ -234,6 +270,7 @@
margin-left: 2px; margin-left: 2px;
} }
} }
p { p {
font-size: 16px; font-size: 16px;
font-weight: bold; font-weight: bold;
@ -253,12 +290,15 @@
margin-top: 16px; margin-top: 16px;
padding: 15px 8px; padding: 15px 8px;
box-sizing: border-box; box-sizing: border-box;
img { img {
display: inline-block; display: inline-block;
margin-right: 10px; margin-right: 10px;
} }
.visitLog_item_box { .visitLog_item_box {
flex: auto; flex: auto;
h4 { h4 {
font-size: 18px; font-size: 18px;
font-family: MicrosoftYaHei; font-family: MicrosoftYaHei;
@ -266,6 +306,7 @@
color: #0096ff; color: #0096ff;
margin-bottom: 2px; margin-bottom: 2px;
} }
p { p {
font-size: 12px; font-size: 12px;
font-family: SourceHanSansCN; font-family: SourceHanSansCN;
@ -274,6 +315,7 @@
margin-top: 6px; margin-top: 6px;
} }
} }
.check { .check {
font-size: 12px; font-size: 12px;
font-family: SourceHanSansCN; font-family: SourceHanSansCN;
@ -286,6 +328,7 @@
.history { .history {
padding-top: 12px; padding-top: 12px;
p { p {
margin-top: 12px; margin-top: 12px;
font-size: 12px; font-size: 12px;
@ -301,6 +344,7 @@
align-items: center; align-items: center;
justify-content: center; justify-content: center;
margin: 12px 0 20px; margin: 12px 0 20px;
span { span {
text-align: center; text-align: center;
background: rgba(0, 89, 130, 0.73); background: rgba(0, 89, 130, 0.73);
@ -314,9 +358,11 @@
margin: 0 10px; margin: 0 10px;
} }
} }
.property { .property {
display: flex; display: flex;
padding: 14px 0 10px; padding: 14px 0 10px;
.property_box { .property_box {
background-image: url(@/assets/img_05.png); background-image: url(@/assets/img_05.png);
background-size: 100% 100%; background-size: 100% 100%;
@ -325,12 +371,14 @@
height: 91px; height: 91px;
margin: 0 12px; margin: 0 12px;
text-align: center; text-align: center;
h5 { h5 {
font-size: 14px; font-size: 14px;
font-weight: 400; font-weight: 400;
color: #ffffff; color: #ffffff;
margin: 9px 0 16px; margin: 9px 0 16px;
} }
p { p {
font-size: 21px; font-size: 21px;
font-weight: bold; font-weight: bold;
@ -338,6 +386,7 @@
} }
} }
} }
.activity { .activity {
h5 { h5 {
font-size: 14px; font-size: 14px;
@ -347,9 +396,11 @@
border-bottom: 2px solid rgba(0, 164, 250, 1); border-bottom: 2px solid rgba(0, 164, 250, 1);
margin-bottom: 17px; margin-bottom: 17px;
} }
.activity_content { .activity_content {
margin: 0 -6px 12px; margin: 0 -6px 12px;
display: flex; display: flex;
.activity_box { .activity_box {
width: 50%; width: 50%;
display: inline-block; display: inline-block;
@ -357,6 +408,7 @@
box-sizing: border-box; box-sizing: border-box;
background-color: rgba(15, 28, 54, 1); background-color: rgba(15, 28, 54, 1);
padding: 12px 12px 19px; padding: 12px 12px 19px;
p { p {
font-size: 14px; font-size: 14px;
font-weight: 400; font-weight: 400;
@ -367,26 +419,31 @@
} }
} }
} }
.monitor { .monitor {
.monitor_box { .monitor_box {
display: flex; display: flex;
padding: 8px 0; padding: 8px 0;
border-bottom: 2px solid rgba(255, 255, 255, 0.67); border-bottom: 2px solid rgba(255, 255, 255, 0.67);
img { img {
width: 115px; width: 115px;
height: 84px; height: 84px;
margin-right: 21px; margin-right: 21px;
} }
.monitor_box_text { .monitor_box_text {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
justify-content: space-between; justify-content: space-between;
h4 { h4 {
font-size: 14px; font-size: 14px;
font-weight: 400; font-weight: 400;
color: #ffffff; color: #ffffff;
line-height: 20px; line-height: 20px;
} }
p { p {
font-size: 14px; font-size: 14px;
font-weight: 400; font-weight: 400;
@ -396,4 +453,219 @@
} }
} }
} }
.yd_title {
// background-image: url(@/assets/img_04.png);
// background-repeat: no-repeat;
// background-size: 100% 100%;
box-sizing: border-box;
width: 94%;
height: 36px;
position: relative;
.text {
display: flex;
position: absolute;
font-size: 16px;
font-family: SourceHanSansCN;
font-weight: bold;
color: #ffffff;
position: absolute;
right: 5px;
top: 3px;
}
}
.mechanism {
background-image: url(@/assets/YLTitle/titleImg10.png);
background-repeat: no-repeat;
background-size: 100% 100%;
}
.czr-sl {
display: flex;
.historyimg {
width: 255px;
height: 56px;
background-repeat: no-repeat;
background-size: 100% 100%;
margin-top: 20px;
display: flex;
align-items: center;
justify-content: space-between;
padding-left: 70px;
span {
font-weight: 400;
font-size: 16px;
color: #ffffff;
line-height: 22px;
letter-spacing: 2px;
text-align: left;
font-style: normal;
font-family: PingFangSC, PingFang SC;
padding-right: 10px;
}
}
.historyimg1 {
background-image: url(@/assets/eduImg/jyImg14.png);
margin-right: 10px;
}
.historyimg2 {
background-image: url(@/assets/eduImg/jyImg15.png);
}
}
.flex11 {
padding: 12px 0;
}
.earlyWarning {
height: calc(100% - 10px);
display: flex;
align-items: center;
justify-content: space-around;
.earlyWarning1 {
font-size: 26px;
color: #ffffff;
line-height: 30px;
letter-spacing: 1px;
text-align: center;
font-style: normal;
font-family: PangMenZhengDao;
display: flex;
flex-direction: column;
align-items: center;
img {
width: 136px;
height: 100px;
}
.green {
font-size: 26px;
font-weight: bold;
letter-spacing: 2px;
text-align: center;
font-style: normal;
font-family: DINAlternate, DINAlternate;
background-image: linear-gradient(180deg, #7be546 0%, #38ffb1 100%);
background-clip: text;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.yellow {
font-size: 26px;
font-weight: bold;
letter-spacing: 2px;
text-align: center;
font-style: normal;
font-family: DINAlternate, DINAlternate;
background-image: linear-gradient(180deg, #ee8404 0%, #efd404 100%);
background-clip: text;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.red {
font-size: 26px;
font-weight: bold;
letter-spacing: 2px;
text-align: center;
font-style: normal;
font-family: DINAlternate, DINAlternate;
background-image: linear-gradient(180deg, #ff3e00 0%, #ed5a2d 100%);
background-clip: text;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.historyimg {
width: 133px;
height: 19px;
background-repeat: no-repeat;
background-size: 100% 100%;
margin-top: 20px;
display: flex;
align-items: center;
justify-content: center;
span {
font-weight: 500;
font-size: 14px;
color: #ffffff;
letter-spacing: 4px;
font-style: normal;
font-family: PingFangSC, PingFang SC;
}
}
.historyimg1 {
background-image: url(@/assets/eduImg/jyImg4.png);
}
.historyimg2 {
background-image: url(@/assets/eduImg/jyImg6.png);
}
.historyimg3 {
background-image: url(@/assets/eduImg/jyImg5.png);
}
}
}
.czr-bj {
width: 529px;
height: calc(100% - 26px);
background: rgba(0, 103, 165, 0.18);
box-shadow: inset 0px 0px 58px 0px rgba(37, 175, 252, 0.47);
border-radius: 2px;
padding: 20px 0 0 14px;
// box-sizing: border-box;
.czrBox {
height: 8vh;
}
.situation {
width: 495px;
height: 26px;
background-repeat: no-repeat;
background-size: 100% 100%;
}
.situation1 {
background-image: url(@/assets/eduImg/jyImg11.png);
}
.situation2 {
background-image: url(@/assets/eduImg/jyImg12.png);
}
.situation3 {
background-image: url(@/assets/eduImg/jyImg13.png);
}
};
.selectLint {
width: 94%;
display: flex;
margin: 30px 0 10px;
justify-content: space-between;
.selectBox {
width: 48%;
background-image: url(@/assets/eduImg/jyImg7.png);
background-repeat: no-repeat;
background-size: 100% 100%;
}
}
</style>
<style lang="scss">
.selectBox {
.el-select--large .el-select__wrapper {
font-size: 18px !important;
}
.el-select__wrapper {
background-color: rgba(255, 255, 255, 0) !important;
}
.el-select__placeholder {
color: #fff !important;
}
.el-select__caret {
color: #fff !important;
font-size: 18px !important;
}
}
</style> </style>

View File

@ -31,7 +31,7 @@
<ePie v-if="leftchoose.first == '1'"></ePie> <ePie v-if="leftchoose.first == '1'"></ePie>
<ePie2 v-else></ePie2> <ePie2 v-else></ePie2>
</div> </div>
<div class="flex1" style="margin-top:10px;"> <div class="flex1" style="margin-top: 10px">
<div class="yd_title left_2"> <div class="yd_title left_2">
<span class="text"> <span class="text">
<img <img
@ -61,7 +61,7 @@
<eP2 v-if="leftchoose.second == '1'"></eP2> <eP2 v-if="leftchoose.second == '1'"></eP2>
<eP2_2 v-else /> <eP2_2 v-else />
</div> </div>
<div class="flex1" style="margin-top:10px;"> <div class="flex1" style="margin-top: 10px">
<div class="yd_title left_3"> <div class="yd_title left_3">
<span class="text"> <span class="text">
<img <img
@ -106,10 +106,7 @@
</div> </div>
<div class="flex1"> <div class="flex1">
<div class="yd_title familyPlanning"></div> <div class="yd_title familyPlanning"></div>
<!-- 计划生育 -->
<!-- <div style="width: 100%; "> -->
<ylJHSY></ylJHSY> <ylJHSY></ylJHSY>
<!-- </div> -->
</div> </div>
</div> </div>
<div class="displayFlex right_bg"> <div class="displayFlex right_bg">
@ -180,7 +177,6 @@ import eP3_2 from "./echarts_yl/eP3_2.vue";
import ePie2 from "./echarts_yl/pie2.vue"; import ePie2 from "./echarts_yl/pie2.vue";
import eGraph from "./echarts_yl/graph.vue"; import eGraph from "./echarts_yl/graph.vue";
import ePie3d from "./echarts_yl/pie3d.vue"; import ePie3d from "./echarts_yl/pie3d.vue";
// import waterBall from "./echarts_yl/waterBall.vue";
import ylJHSY from "./echarts_yl/ylJHSY.vue"; import ylJHSY from "./echarts_yl/ylJHSY.vue";
import ylSMFW from "./echarts_yl/ylSMFW.vue"; import ylSMFW from "./echarts_yl/ylSMFW.vue";
import ylXZZC from "./echarts_yl/ylXZZC.vue"; import ylXZZC from "./echarts_yl/ylXZZC.vue";
@ -295,11 +291,10 @@ const change = (name, index) => {
.medicalServiceTop { .medicalServiceTop {
position: relative; position: relative;
span { span {
position: absolute; position: absolute;
left: 39px; left: 4.5vh;
top: 35%; top: 8vh;
font-weight: bold; font-weight: bold;
font-size: 32px; font-size: 32px;
color: #ffffff; color: #ffffff;
@ -473,9 +468,10 @@ const change = (name, index) => {
} }
.history { .history {
padding-top: 12px; height: calc(100% - 36px);
display: flex; display: flex;
justify-content: space-around; justify-content: space-around;
align-items: center;
.history1 { .history1 {
font-size: 26px; font-size: 26px;
color: #ffffff; color: #ffffff;

140
yarn.lock
View File

@ -7,6 +7,16 @@
resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.21.3.tgz" resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.21.3.tgz"
integrity sha512-lobG0d7aOfQRXh8AyklEAgZGvA4FShxo6xQbUrrT/cNBPUdIDojlokwJsQyCC/eKia7ifqM0yP+2DRZ4WKw2RQ== integrity sha512-lobG0d7aOfQRXh8AyklEAgZGvA4FShxo6xQbUrrT/cNBPUdIDojlokwJsQyCC/eKia7ifqM0yP+2DRZ4WKw2RQ==
"@ctrl/tinycolor@^3.4.1":
version "3.6.1"
resolved "https://registry.npmmirror.com/@ctrl/tinycolor/-/tinycolor-3.6.1.tgz#b6c75a56a1947cc916ea058772d666a2c8932f31"
integrity sha512-SITSV6aIXsuVNV3f3O0f2n/cgyEDWoSqtZMYiAmcsYHydcKrOz3gUxB/iXd/Qf08+IZX4KpgNbvUdMBmWz+kcA==
"@element-plus/icons-vue@^2.3.1":
version "2.3.1"
resolved "https://registry.npmmirror.com/@element-plus/icons-vue/-/icons-vue-2.3.1.tgz#1f635ad5fdd5c85ed936481525570e82b5a8307a"
integrity sha512-XxVUZv48RZAd87ucGS48jPf6pKu0yV5UCg9f4FFwtrYxXOwWuVJo6wOvSLKEoMQKjv8GsX/mhP6UsC1lRwbUWg==
"@esbuild/android-arm64@0.17.14": "@esbuild/android-arm64@0.17.14":
version "0.17.14" version "0.17.14"
resolved "https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.17.14.tgz#4624cea3c8941c91f9e9c1228f550d23f1cef037" resolved "https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.17.14.tgz#4624cea3c8941c91f9e9c1228f550d23f1cef037"
@ -117,6 +127,48 @@
resolved "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.14.tgz" resolved "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.14.tgz"
integrity sha512-gPQmsi2DKTaEgG14hc3CHXHp62k8g6qr0Pas+I4lUxRMugGSATh/Bi8Dgusoz9IQ0IfdrvLpco6kujEIBoaogA== integrity sha512-gPQmsi2DKTaEgG14hc3CHXHp62k8g6qr0Pas+I4lUxRMugGSATh/Bi8Dgusoz9IQ0IfdrvLpco6kujEIBoaogA==
"@floating-ui/core@^1.0.0":
version "1.6.0"
resolved "https://registry.npmmirror.com/@floating-ui/core/-/core-1.6.0.tgz#fa41b87812a16bf123122bf945946bae3fdf7fc1"
integrity sha512-PcF++MykgmTj3CIyOQbKA/hDzOAiqI3mhuoN44WRCopIs1sgoDoU4oty4Jtqaj/y3oDU6fnVSm4QG0a3t5i0+g==
dependencies:
"@floating-ui/utils" "^0.2.1"
"@floating-ui/dom@^1.0.1":
version "1.6.3"
resolved "https://registry.npmmirror.com/@floating-ui/dom/-/dom-1.6.3.tgz#954e46c1dd3ad48e49db9ada7218b0985cee75ef"
integrity sha512-RnDthu3mzPlQ31Ss/BTwQ1zjzIhr3lk1gZB1OC56h/1vEtaXkESrOqL5fQVMfXpwGtRwX+YsZBdyHtJMQnkArw==
dependencies:
"@floating-ui/core" "^1.0.0"
"@floating-ui/utils" "^0.2.0"
"@floating-ui/utils@^0.2.0", "@floating-ui/utils@^0.2.1":
version "0.2.1"
resolved "https://registry.npmmirror.com/@floating-ui/utils/-/utils-0.2.1.tgz#16308cea045f0fc777b6ff20a9f25474dd8293d2"
integrity sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q==
"@popperjs/core@npm:@sxzz/popperjs-es@^2.11.7":
version "2.11.7"
resolved "https://registry.npmmirror.com/@sxzz/popperjs-es/-/popperjs-es-2.11.7.tgz#a7f69e3665d3da9b115f9e71671dae1b97e13671"
integrity sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ==
"@types/lodash-es@^4.17.6":
version "4.17.12"
resolved "https://registry.npmmirror.com/@types/lodash-es/-/lodash-es-4.17.12.tgz#65f6d1e5f80539aa7cfbfc962de5def0cf4f341b"
integrity sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==
dependencies:
"@types/lodash" "*"
"@types/lodash@*", "@types/lodash@^4.14.182":
version "4.17.0"
resolved "https://registry.npmmirror.com/@types/lodash/-/lodash-4.17.0.tgz#d774355e41f372d5350a4d0714abb48194a489c3"
integrity sha512-t7dhREVv6dbNj0q17X12j7yDG4bD/DHYX7o5/DbDxobP0HnGPgpRz2Ej77aL7TZT3DSw13fqUTj8J4mMnqa7WA==
"@types/web-bluetooth@^0.0.16":
version "0.0.16"
resolved "https://registry.npmmirror.com/@types/web-bluetooth/-/web-bluetooth-0.0.16.tgz#1d12873a8e49567371f2a75fe3e7f7edca6662d8"
integrity sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==
"@vitejs/plugin-vue@^4.1.0": "@vitejs/plugin-vue@^4.1.0":
version "4.1.0" version "4.1.0"
resolved "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.1.0.tgz" resolved "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.1.0.tgz"
@ -217,6 +269,28 @@
resolved "https://registry.npmjs.org/@vue/shared/-/shared-3.2.47.tgz" resolved "https://registry.npmjs.org/@vue/shared/-/shared-3.2.47.tgz"
integrity sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ== integrity sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ==
"@vueuse/core@^9.1.0":
version "9.13.0"
resolved "https://registry.npmmirror.com/@vueuse/core/-/core-9.13.0.tgz#2f69e66d1905c1e4eebc249a01759cf88ea00cf4"
integrity sha512-pujnclbeHWxxPRqXWmdkKV5OX4Wk4YeK7wusHqRwU0Q7EFusHoqNA/aPhB6KCh9hEqJkLAJo7bb0Lh9b+OIVzw==
dependencies:
"@types/web-bluetooth" "^0.0.16"
"@vueuse/metadata" "9.13.0"
"@vueuse/shared" "9.13.0"
vue-demi "*"
"@vueuse/metadata@9.13.0":
version "9.13.0"
resolved "https://registry.npmmirror.com/@vueuse/metadata/-/metadata-9.13.0.tgz#bc25a6cdad1b1a93c36ce30191124da6520539ff"
integrity sha512-gdU7TKNAUVlXXLbaF+ZCfte8BjRJQWPCa2J55+7/h+yDtzw3vOoGQDRXzI6pyKyo6bXFT5/QoPE4hAknExjRLQ==
"@vueuse/shared@9.13.0":
version "9.13.0"
resolved "https://registry.npmmirror.com/@vueuse/shared/-/shared-9.13.0.tgz#089ff4cc4e2e7a4015e57a8f32e4b39d096353b9"
integrity sha512-UrnhU+Cnufu4S6JLCPZnkWh0WwZGUp72ktOF2DFptMlOs3TOdVv8xJN53zhHGARmVOsz5KqOls09+J1NR6sBKw==
dependencies:
vue-demi "*"
anymatch@~3.1.2: anymatch@~3.1.2:
version "3.1.3" version "3.1.3"
resolved "https://registry.npmmirror.com/anymatch/-/anymatch-3.1.3.tgz" resolved "https://registry.npmmirror.com/anymatch/-/anymatch-3.1.3.tgz"
@ -225,6 +299,11 @@ anymatch@~3.1.2:
normalize-path "^3.0.0" normalize-path "^3.0.0"
picomatch "^2.0.4" picomatch "^2.0.4"
async-validator@^4.2.5:
version "4.2.5"
resolved "https://registry.npmmirror.com/async-validator/-/async-validator-4.2.5.tgz#c96ea3332a521699d0afaaceed510a54656c6339"
integrity sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==
binary-extensions@^2.0.0: binary-extensions@^2.0.0:
version "2.2.0" version "2.2.0"
resolved "https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.2.0.tgz" resolved "https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.2.0.tgz"
@ -262,6 +341,11 @@ csstype@^2.6.8:
resolved "https://registry.npmjs.org/csstype/-/csstype-2.6.21.tgz" resolved "https://registry.npmjs.org/csstype/-/csstype-2.6.21.tgz"
integrity sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w== integrity sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==
dayjs@^1.11.3:
version "1.11.10"
resolved "https://registry.npmmirror.com/dayjs/-/dayjs-1.11.10.tgz#68acea85317a6e164457d6d6947564029a6a16a0"
integrity sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==
echarts-gl@^2.0.9: echarts-gl@^2.0.9:
version "2.0.9" version "2.0.9"
resolved "https://registry.npmmirror.com/echarts-gl/-/echarts-gl-2.0.9.tgz" resolved "https://registry.npmmirror.com/echarts-gl/-/echarts-gl-2.0.9.tgz"
@ -283,6 +367,27 @@ echarts@^5.4.2:
tslib "2.3.0" tslib "2.3.0"
zrender "5.4.3" zrender "5.4.3"
element-plus@^2.7.0:
version "2.7.0"
resolved "https://registry.npmmirror.com/element-plus/-/element-plus-2.7.0.tgz#1d72b06946c46a6f18e5315610b7f0147b8efb24"
integrity sha512-WAiaFLavuWFxof9qwkC27jvkh9nRcNnB506g1vvJSiVaVqjCBWUFCIyJKeN11M1qcv2cS5VV5PfSLjTIkrw87A==
dependencies:
"@ctrl/tinycolor" "^3.4.1"
"@element-plus/icons-vue" "^2.3.1"
"@floating-ui/dom" "^1.0.1"
"@popperjs/core" "npm:@sxzz/popperjs-es@^2.11.7"
"@types/lodash" "^4.14.182"
"@types/lodash-es" "^4.17.6"
"@vueuse/core" "^9.1.0"
async-validator "^4.2.5"
dayjs "^1.11.3"
escape-html "^1.0.3"
lodash "^4.17.21"
lodash-es "^4.17.21"
lodash-unified "^1.0.2"
memoize-one "^6.0.0"
normalize-wheel-es "^1.2.0"
esbuild@^0.17.5: esbuild@^0.17.5:
version "0.17.14" version "0.17.14"
resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.17.14.tgz" resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.17.14.tgz"
@ -311,6 +416,11 @@ esbuild@^0.17.5:
"@esbuild/win32-ia32" "0.17.14" "@esbuild/win32-ia32" "0.17.14"
"@esbuild/win32-x64" "0.17.14" "@esbuild/win32-x64" "0.17.14"
escape-html@^1.0.3:
version "1.0.3"
resolved "https://registry.npmmirror.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988"
integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==
estree-walker@^2.0.2: estree-walker@^2.0.2:
version "2.0.2" version "2.0.2"
resolved "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz" resolved "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz"
@ -383,6 +493,21 @@ is-number@^7.0.0:
resolved "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz" resolved "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz"
integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
lodash-es@^4.17.21:
version "4.17.21"
resolved "https://registry.npmmirror.com/lodash-es/-/lodash-es-4.17.21.tgz#43e626c46e6591b7750beb2b50117390c609e3ee"
integrity sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==
lodash-unified@^1.0.2:
version "1.0.3"
resolved "https://registry.npmmirror.com/lodash-unified/-/lodash-unified-1.0.3.tgz#80b1eac10ed2eb02ed189f08614a29c27d07c894"
integrity sha512-WK9qSozxXOD7ZJQlpSqOT+om2ZfcT4yO+03FuzAHD0wF6S0l0090LRPDx3vhTTLZ8cFKpBn+IOcVXK6qOcIlfQ==
lodash@^4.17.21:
version "4.17.21"
resolved "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
magic-string@^0.25.7: magic-string@^0.25.7:
version "0.25.9" version "0.25.9"
resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz" resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz"
@ -390,6 +515,11 @@ magic-string@^0.25.7:
dependencies: dependencies:
sourcemap-codec "^1.4.8" sourcemap-codec "^1.4.8"
memoize-one@^6.0.0:
version "6.0.0"
resolved "https://registry.npmmirror.com/memoize-one/-/memoize-one-6.0.0.tgz#b2591b871ed82948aee4727dc6abceeeac8c1045"
integrity sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==
nanoid@^3.3.4: nanoid@^3.3.4:
version "3.3.6" version "3.3.6"
resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz" resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz"
@ -400,6 +530,11 @@ normalize-path@^3.0.0, normalize-path@~3.0.0:
resolved "https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz" resolved "https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz"
integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
normalize-wheel-es@^1.2.0:
version "1.2.0"
resolved "https://registry.npmmirror.com/normalize-wheel-es/-/normalize-wheel-es-1.2.0.tgz#0fa2593d619f7245a541652619105ab076acf09e"
integrity sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw==
path-parse@^1.0.7: path-parse@^1.0.7:
version "1.0.7" version "1.0.7"
resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz"
@ -500,6 +635,11 @@ vite@^4.2.0:
optionalDependencies: optionalDependencies:
fsevents "~2.3.2" fsevents "~2.3.2"
vue-demi@*:
version "0.14.7"
resolved "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.14.7.tgz#8317536b3ef74c5b09f268f7782e70194567d8f2"
integrity sha512-EOG8KXDQNwkJILkx/gPcoL/7vH+hORoBaKgGe+6W7VFMvCYJfmF2dGbvgDroVnI8LU7/kTu8mbjRZGBU1z9NTA==
vue-router@^4.1.6: vue-router@^4.1.6:
version "4.1.6" version "4.1.6"
resolved "https://registry.npmjs.org/vue-router/-/vue-router-4.1.6.tgz" resolved "https://registry.npmjs.org/vue-router/-/vue-router-4.1.6.tgz"