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

This commit is contained in:
姚宇浩 2024-06-06 11:32:39 +08:00
commit a574e0eb16
6 changed files with 240 additions and 284 deletions

View File

@ -3,178 +3,166 @@
</template>
<script setup>
import { onMounted, reactive, ref } from "vue";
import {
onBeforeMount,
ref,
reactive,
defineProps,
watch,
nextTick,
} from "vue";
// echarts
import * as echarts from "echarts";
const props = defineProps({
list: {
type: Array,
default: () => {
return [];
},
},
});
const chart = ref(); // DOM
const datas = {
value: 92.96,
const data = reactive({
list: 60,
option: {},
});
const getOption = () => {
data.option = {
series: [
//
{
type: "pie",
center: ["55%", "55%"],
radius: ["70%", "90%"],
hoverAnimation: false,
clockWise: false,
// startAngle: 180,
// endAngle: 360,
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,
radius: ["50%", "70%"],
center: ["55%", "55%"],
startAngle: 180,
labelLine: {
show: false,
},
hoverAnimation: false,
data: [
{
value: data.list,
label: {
normal: {
position: "center",
show: true,
textStyle: {
fontSize: "24",
fontWeight: "normal",
color: "#fff",
fontSize: 16,
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 - data.list,
name: "",
itemStyle: {
normal: {
color: "#095b9b", //
label: {
show: false,
},
labelLine: {
show: false,
},
},
emphasis: {
color: "#095b9b", //
},
},
},
],
},
],
};
};
let option = {
series: [
//
{
type: "pie",
center: ["55%", "55%"],
radius: ["70%", "90%"],
hoverAnimation: false,
clockWise: false,
// startAngle: 180,
// endAngle: 360,
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,
radius: ["50%", "70%"],
center: ["55%", "55%"],
startAngle: 180,
labelLine: {
show: false,
},
hoverAnimation: false,
data: [
{
value: datas.value,
label: {
normal: {
position: "center",
show: true,
textStyle: {
fontSize: "24",
fontWeight: "normal",
color: "#fff",
fontSize: 16,
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", //
},
},
},
],
},
],
const setChart = () => {
var myChart = echarts.init(chart.value);
myChart.setOption(data.option);
};
// let option = {
// tooltip: {
// trigger: 'item'
// },
// legend: {
// top: '5%',
// left: 'center'
// },
// series: [
// {
// name: 'Access From',
// type: 'pie',
// radius: ['40%', '70%'],
// center: ['50%', '70%'],
// // adjust the start and end angle
// startAngle: 180,
// endAngle: 360,
// data: [
// { value: 1048, name: 'Search Engine' },
// { value: 735, name: 'Direct' },
// { value: 580, name: 'Email' },
// { value: 484, name: 'Union Ads' },
// { value: 300, name: 'Video Ads' }
// ]
// }
// ]
// };
// 使
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();
// });
onBeforeMount(() => {
setTimeout(() => {
data.list = props.list;
getOption();
setChart();
}, 600);
});
</script>

View File

@ -3,17 +3,39 @@
</template>
<script setup>
import { onMounted, reactive, ref } from "vue";
import {
onBeforeMount,
onMounted,
ref,
reactive,
defineProps,
watch,
nextTick,
} from "vue";
// echarts
import * as echarts from "echarts";
const props = defineProps({
list: {
type: Array,
default: () => {
return [];
},
},
});
const chart = ref(); // DOM
const datas = {
value: 62.16,
}
let option = {
const data = reactive({
list: 60,
option: {},
initialLegendData: ["特困救助金额", "低保救助金额"],
initialLegendData1: ["特困救助人次", "低保救助人次", "低边救助人次"],
});
const getOption = () => {
data.option = {
series: [
//
{
@ -61,7 +83,7 @@ let option = {
center: ['55%', '55%'],
data: [
{
value: datas.value,
value: data.list,
label: {
normal: {
@ -102,7 +124,7 @@ let option = {
}
},
{
value: 100 - datas.value,
value: 100 - data.list,
name: '',
itemStyle: {
normal: {
@ -122,22 +144,20 @@ let option = {
}
]
};
};
const setChart = () => {
var myChart = echarts.init(chart.value);
myChart.setOption(data.option);
};
// 使
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();
// });
onBeforeMount(() => {
setTimeout(() => {
data.list = props.list;
getOption();
setChart();
}, 600);
});
</script>

View File

@ -300,22 +300,6 @@ const getOption = () => {
};
};
// // 使
// 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();
// // });
// });
const setChart = () => {
var myChart = echarts.init(chart.value);
myChart.setOption(data.option);
@ -324,12 +308,16 @@ const setChart = () => {
const setChart1 = () => {
data.list1 = [];
data.list2 = [];
// var myChart = echarts.init(chart.value);
// //
// myChart.showLoading();
if (data.list.length !== 0) {
// console.log(data.list, "");
data.list.data.forEach((item) => {
data.list1.push(item.sc); //
data.list2.push(item.fwcs); //
});
// //
// myChart.hideLoading();
}
};
@ -338,6 +326,7 @@ onBeforeMount(() => {
setTimeout(() => {
data.list = props.list;
data.day = props.list.day;
console.log(data.list, "助老服务");
setChart1();
getOption();
setChart();

View File

@ -90,11 +90,7 @@
</div>
</div>
<div class="schoolb">
<img
src="../assets/eduImg/xxgkTop.png"
class="gkTop"
alt=""
>
<img src="../assets/eduImg/xxgkTop.png" class="gkTop" alt="" />
<div class="grade">
<div class="schoolbs">
<span class="spot">初中</span>
@ -191,11 +187,11 @@
<div class="czr-sl">
<div class="historyimg historyimg1">
<span>覆盖医疗机构数量</span>
<span>22</span>
<span>{{data.whistleblower.yljgsl}}</span>
</div>
<div class="historyimg historyimg2">
<span>启用角色数量</span>
<span>101</span>
<span>{{data.whistleblower.qyjssl}}</span>
</div>
<!-- <img src="@/assets/eduImg/jyImg14.png" alt="" />
<img src="@/assets/eduImg/jyImg15.png" alt="" /> -->
@ -206,7 +202,7 @@
<div class="earlyWarning">
<div class="earlyWarning1">
<div>
<span class="green">16</span>
<span class="green">{{data.whistleblower.green}}</span>
</div>
<img src="@/assets/eduImg/jyImg10.png" alt="" />
<img src="@/assets/eduImg/pp3.gif" alt="" class="ppImg" />
@ -216,7 +212,7 @@
</div>
<div class="earlyWarning1">
<div>
<span class="yellow">239</span>
<span class="yellow">{{data.whistleblower.yellow}}</span>
</div>
<img src="@/assets/eduImg/jyImg9.png" alt="" />
<img src="@/assets/eduImg/pp2.gif" alt="" class="ppImg" />
@ -226,7 +222,7 @@
</div>
<div class="earlyWarning1">
<div>
<span class="red">139</span>
<span class="red">{{data.whistleblower.red}}</span>
</div>
<img src="@/assets/eduImg/jyImg8.png" alt="" />
<img src="@/assets/eduImg/pp1.gif" alt="" class="ppImg" />
@ -460,6 +456,7 @@ const data = reactive({
xxgk: {},
xzncjszcsl: [],
xzncxxsl: [[], []],
whistleblower: {},
zzxm: [],
schoolData: [
{ name: "副高级", value: "" },
@ -485,6 +482,7 @@ const getData = async () => {
data.zdgz[1].value = res.data.zdgz.dszn;
data.zdgz[2].value = res.data.zdgz.dqjt;
data.zdgz[3].value = res.data.zdgz.xsdb;
//
//
data.xxgk = res.data.xxgk;
//
@ -498,8 +496,8 @@ const getData = async () => {
data.xzncjszcsl = res.data.xzncjszcsl;
//
data.zzxm = res.data.zzxm;
// ratingBtn("");
//
data.whistleblower = res.data.whistleblower;
}
});
};

View File

@ -123,7 +123,7 @@
<div class="minTop">
<div class="minTopPart">
<div class="history2">
<div class="va">33.67</div>
<div class="va">{{ data.jkda.jdfs }}</div>
<img
src="@/assets/images/hygiene/shang_left.png"
alt=""
@ -144,20 +144,20 @@
<div class="minTopPart2">
<div class="left">
<div class="leftImg">
<eP4></eP4>
<eP4 :list="data.jkda.jdl"></eP4>
</div>
<div class="left_me">
<div>建档率</div>
<div class="bo">92.96%</div>
<div class="bo">{{ data.jkda.jdl }}%</div>
</div>
</div>
<div class="right">
<div class="rightImg">
<eP4_1></eP4_1>
<eP4_1 :list="data.jkda.jtysqyl"></eP4_1>
</div>
<div class="right_me">
<div>家庭医生签约率</div>
<div class="bo">62.16%</div>
<div class="bo">{{ data.jkda.jtysqyl }}%</div>
</div>
</div>
</div>
@ -293,7 +293,7 @@ const data = reactive({
medicalInsurance: {}, //
lmb: {}, //
mz: {}, //
jkda: [], //
jkda: {}, //
jsbgl: [], //
fyglrs: {}, //
jktj: {}, //65
@ -345,7 +345,7 @@ const getData = async () => {
data.medicalInsurance = res.data.medicalInsurance;
data.lmb = res.data.lmb;
data.mz = res.data.mz;
// data.jkda = res.data.jkda;
data.jkda = res.data.jkda;
data.jsbgl = res.data.jsbgl;
data.fyglrs = res.data.fyglrs;
data.jktj = res.data.jktj;

View File

@ -1,5 +1,5 @@
<template>
<div class="module" >
<div class="module">
<div class="displayFlex left_bg">
<div class="flex1">
<div class="yd_title left_1">
@ -48,10 +48,7 @@
:year="data.leftTopYear"
></ePie2>
</div>
<div
class="flex1"
style="margin-top: 10px"
>
<div class="flex1" style="margin-top: 10px">
<div class="yd_title left_2">
<div class="animate-border">
<i></i>
@ -97,10 +94,7 @@
:year="data.leftCenterYear"
/>
</div>
<div
class="flex1"
style="margin-top: 10px"
>
<div class="flex1" style="margin-top: 10px">
<div class="yd_title left_3">
<div class="animate-border">
<i></i>
@ -163,7 +157,7 @@
<div class="mtpText1">{{ data.oldAgeTotal }}</div>
<div class="mtpText2">{{ data.oldAgePercent }}%</div>
</div>
<ePie3d v-if="showR" :list="data.rkgk"></ePie3d>
<ePie3d v-if="showR" :list="data.rkgk"></ePie3d>
</div>
<div class="flex1">
<div class="yd_title familyPlanning">
@ -173,7 +167,7 @@
</div>
</div>
<ylJHSY
v-if="showR"
v-if="showR"
:list1="data.centerBottom1"
:list2="data.centerBottom2"
:year="data.centerBottomYear"
@ -193,19 +187,9 @@
<div>
<span>{{ data.yljgzlzx.yljg }}<span class="unit"></span></span>
</div>
<img
src="@/assets/YLimg/ylimg11.png"
alt=""
/>
<img
class="historyimg"
src="@/assets/YLimg/ylimg5.png"
alt=""
/>
<img
src="@/assets/YLimg/yljg.gif"
class="historyMoveImg"
/>
<img src="@/assets/YLimg/ylimg11.png" alt="" />
<img class="historyimg" src="@/assets/YLimg/ylimg5.png" alt="" />
<img src="@/assets/YLimg/yljg.gif" class="historyMoveImg" />
</div>
<!-- <div class="history1">
<div>
@ -218,19 +202,9 @@
<div>
<span>{{ data.yljgzlzx.zlzx }}<span class="unit"></span></span>
</div>
<img
src="@/assets/YLimg/ylimg12.png"
alt=""
/>
<img
class="historyimg"
src="@/assets/YLimg/ylimg10.png"
alt=""
/>
<img
src="@/assets/YLimg/yljg.gif"
class="historyMoveImg"
/>
<img src="@/assets/YLimg/ylimg12.png" alt="" />
<img class="historyimg" src="@/assets/YLimg/ylimg10.png" alt="" />
<img src="@/assets/YLimg/yljg.gif" class="historyMoveImg" />
</div>
</div>
</div>
@ -244,30 +218,14 @@
<div class="serviceBox">
<div class="serviceTop">
<div class="visit">
<img
class="serviceimg"
src="@/assets/YLimg/ylimg8.png"
alt=""
/>
<ylSMFW v-if="showR" :list="data.smfwcs"></ylSMFW>
<img class="serviceimg" src="@/assets/YLimg/ylimg8.png" alt="" />
<ylSMFW v-if="showR" :list="data.smfwcs"></ylSMFW>
</div>
<div class="medicalService">
<img
class="serviceimg"
src="@/assets/YLimg/ylimg9.png"
alt=""
/>
<img
class="moveYl"
src="@/assets/YLimg/turn.gif"
alt=""
/>
<img class="serviceimg" src="@/assets/YLimg/ylimg9.png" alt="" />
<img class="moveYl" src="@/assets/YLimg/turn.gif" alt="" />
<div class="medicalServiceTop">
<img
class="ylimg"
src="@/assets/YLimg/ylimg1.png"
alt=""
/>
<img class="ylimg" src="@/assets/YLimg/ylimg1.png" alt="" />
<span>36,234</span>
</div>
</div>
@ -283,7 +241,7 @@
/>
</div>
<ylXZZC
v-if="showR"
v-if="showR"
:list1="data.zccs1"
:list2="data.zccs2"
@village="chooseVillage"
@ -332,7 +290,7 @@ const leftchoose = ref({
second: "1",
third: "1",
});
const showR=ref(false)
const showR = ref(false);
//
const dialogShow = ref(false);
const tableType = reactive({
@ -442,15 +400,19 @@ const data = reactive({
yljgzlzx: { yljg: "", zlzx: "" },
zccs1: [],
zccs2: [],
smfwcs: [],
smfwcs: {
data: [{ nf: "2024", yf: "5", rq: "22", fwcs: "16", sc: "22" }],
day: ["5.22"],
},
});
onBeforeMount( () => {
onBeforeMount(() => {
getData();
});
const getData = () => {
http.get("/api/ggfwyth/yl").then((res) => {
const getData = () => {
http.get("/api/ggfwyth/yl").then((res) => {
if (res.code == 200) {
console.log(res.data, "养老");
//
//
res.data.endowmentInsurance.ffrc.forEach((element) => {
@ -506,14 +468,13 @@ const getData = () => {
data.yljgzlzx.zlzx = res.data.yljgzlzx.zlzx;
//
data.smfwcs = res.data.zlfw.smfwcs;
console.log(data.smfwcs,6666);
//
res.data.zlfw.xzzccs.forEach((element) => {
data.zccs1.push(element.xzjd); //
data.zccs2.push(element.zccs); //
});
}
showR.value=true;
showR.value = true;
});
};
</script>