Browse Source

Merge remote-tracking branch 'origin/master'

# Conflicts:
#	src/views/data/Mail12337.vue
main
wxc 1 year ago
parent
commit
ffcc55fa03
  1. 2
      src/components/datav/chart-bar.vue
  2. 18
      src/views/datav/CaseVerif.vue
  3. 16
      src/views/datav/Gobal.vue
  4. 2
      src/views/datav/Lmgz.vue
  5. 22
      src/views/datav/MailVisits.vue
  6. 23
      src/views/datav/SceneInsp.vue
  7. 19
      src/views/datav/VideoInsp.vue
  8. 16
      src/views/datav/subonedatav/SubOneCaseVerif.vue
  9. 37
      src/views/datav/subonedatav/SubOneGlobal.vue
  10. 20
      src/views/datav/subonedatav/SubOneMailVisits.vue
  11. 20
      src/views/datav/subonedatav/SubOneSceneInsp.vue
  12. 18
      src/views/datav/subonedatav/SubOneVideoInsp.vue

2
src/components/datav/chart-bar.vue

@ -105,6 +105,7 @@ function getColor(val) {
if (props.color instanceof String) { if (props.color instanceof String) {
return props.color; return props.color;
} }
console.log(val)
if (props.color instanceof Array) { if (props.color instanceof Array) {
const colors = [...props.color]; const colors = [...props.color];
// percentage // percentage
@ -116,7 +117,6 @@ function getColor(val) {
} }
} }
return "linear-gradient(270deg, #63e700 0%, #19674c 100%)"; return "linear-gradient(270deg, #63e700 0%, #19674c 100%)";
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>

18
src/views/datav/CaseVerif.vue

@ -222,11 +222,7 @@ const colors = [
{ {
color: "linear-gradient( 270deg, #FFB90E 0%, #71501D 100%)", color: "linear-gradient( 270deg, #FFB90E 0%, #71501D 100%)",
percentage: 60, percentage: 60,
}, }
{
color: "linear-gradient( 270deg, #63E700 0%, #19674C 100%)",
percentage: 40,
},
]; ];
// region // region
@ -575,15 +571,15 @@ const getCaseVerificationMapData = async (timeValue) => {
value: item.total, value: item.total,
}; };
}); });
const maxItem = mappedData.reduce((max, item) => (Number(item.value) > Number(max.value) ? item : max), mappedData[0]);
const range60Percent = maxItem.value * 0.6 //
const range80Percent = maxItem.value * 0.8 //
globalTempMapVoList.value = mappedData globalTempMapVoList.value = mappedData
const total = mappedData.reduce((sum, item) => sum + Number(item.value), 0);
const avg = total / mappedData.length; //
const range30Percent = avg * 0.3 //
option.value.series[0].data = mappedData; option.value.series[0].data = mappedData;
option.value.visualMap.pieces = [ option.value.visualMap.pieces = [
{gte: 0, lte: avg - range30Percent, label: "低于平均问题30%", color: "#4987F6"}, {gte: 0, lte: range60Percent, label: "低于最大问题的60%", color: "#4987F6"},
{gte: avg - range30Percent, lte: avg + range30Percent + 0.1, label: "平均问题上下浮动30%内", color: "#F6A149"}, {gte: range60Percent, lte: range80Percent, label: "介于最大问题的60%~80%", color: "#F6A149"},
{gte: avg + range30Percent, label: "高于平均问题30%", color: "#D34343"}, {gte: range80Percent, label: "高于最大问题80%", color: "#D34343"},
]; ];
} }
const getCaseVerificationTrendData = async (year) => { const getCaseVerificationTrendData = async (year) => {

16
src/views/datav/Gobal.vue

@ -197,11 +197,7 @@ const colors = [
{ {
color: "linear-gradient( 270deg, #FFB90E 0%, #71501D 100%)", color: "linear-gradient( 270deg, #FFB90E 0%, #71501D 100%)",
percentage: 60, percentage: 60,
}, }
{
color: "linear-gradient( 270deg, #63E700 0%, #19674C 100%)",
percentage: 40,
},
]; ];
const activeOrgTab = ref("1"); const activeOrgTab = ref("1");
@ -416,6 +412,8 @@ const proTrend = ref({
const getOrganizationRankData = async (timeValue = time.value) => { const getOrganizationRankData = async (timeValue = time.value) => {
const res = await getOrganizationRank(timeValue); const res = await getOrganizationRank(timeValue);
fxsjlist.value = res.fxsjlist; fxsjlist.value = res.fxsjlist;
// 5, 3, 2, 1
// console.log(fxsjlist.value);
jsdwlist.value = res.jsdwlist; jsdwlist.value = res.jsdwlist;
} }
const getBusinessRateData = async (timeValue = time.value) => { const getBusinessRateData = async (timeValue = time.value) => {
@ -474,16 +472,14 @@ const getGlobalMapData = async (timeValue = time.value) => {
}); });
// //
const maxItem = mappedData.reduce((max, item) => (Number(item.value) > Number(max.value) ? item : max), mappedData[0]); const maxItem = mappedData.reduce((max, item) => (Number(item.value) > Number(max.value) ? item : max), mappedData[0]);
const range40Percent = maxItem.value * 0.4 //
const range60Percent = maxItem.value * 0.6 // const range60Percent = maxItem.value * 0.6 //
const range80Percent = maxItem.value * 0.8 // const range80Percent = maxItem.value * 0.8 //
globalTempMapVoList.value = mappedData; globalTempMapVoList.value = mappedData;
option.value.series[0].data = globalTempMapVoList; option.value.series[0].data = globalTempMapVoList;
console.log(range40Percent, range60Percent, range80Percent);
option.value.visualMap.pieces = [ option.value.visualMap.pieces = [
{gte: 0, lte: range40Percent, label: "低于最大问题的40%", color: "#4987F6"}, {gte: 0, lte: range60Percent, label: "低于最大问题的60%", color: "#4987F6"},
{gte: range40Percent, lte: range60Percent, label: "平均问题上下浮动30%内", color: "#F6A149"}, {gte: range60Percent, lte: range80Percent, label: "介于最大问题的60%~80%", color: "#F6A149"},
{gte: range80Percent, label: "高于平均问题30%", color: "#D34343"}, {gte: range80Percent, label: "高于最大问题80%", color: "#D34343"},
]; ];
} }
const getGlobalTrendData = async (year = selectedYear.value) => { const getGlobalTrendData = async (year = selectedYear.value) => {

2
src/views/datav/Lmgz.vue

@ -347,7 +347,7 @@ let orgRateList = ref([])
let orgCarRateList = ref([]) let orgCarRateList = ref([])
const time = ref([ const time = ref([
moment().startOf("year").format("YYYY-MM-DD"), moment().subtract(1, "year").format("YYYY-MM-DD"),
moment().format("YYYY-MM-DD"), moment().format("YYYY-MM-DD"),
]); ]);

22
src/views/datav/MailVisits.vue

@ -71,6 +71,7 @@
:data="fxsjLeaderViewMailList" :data="fxsjLeaderViewMailList"
:max="11" :max="11"
size="large" size="large"
:color="leaderViewColors"
/> />
</el-scrollbar> </el-scrollbar>
</datav-tab-item> </datav-tab-item>
@ -104,6 +105,7 @@
:data="bwzdLeaderViewMailList" :data="bwzdLeaderViewMailList"
:max="11" :max="11"
size="large" size="large"
:color="leaderViewColors"
/> />
</el-scrollbar> </el-scrollbar>
</datav-tab-item> </datav-tab-item>
@ -256,7 +258,7 @@
:data="fxsjLeaderReviewMailList" :data="fxsjLeaderReviewMailList"
size="large" size="large"
:max="11" :max="11"
:color="colors" :color="leaderViewColors"
/> />
</el-scrollbar> </el-scrollbar>
</datav-tab-item> </datav-tab-item>
@ -291,6 +293,7 @@
<datav-chart-bar <datav-chart-bar
:data="bwzdLeaderReviewMailList" :data="bwzdLeaderReviewMailList"
size="large" size="large"
:color="leaderViewColors"
/> />
</el-scrollbar> </el-scrollbar>
</datav-tab-item> </datav-tab-item>
@ -422,6 +425,21 @@ const colors = [
percentage: 40, percentage: 40,
}, },
]; ];
const leaderViewColors = [
{
color: "linear-gradient( 270deg, #63E700 0%, #19674C 100%)",
percentage: 80,
},
{
color: "linear-gradient( 270deg, #FFB90E 0%, #71501D 100%)",
percentage: 60,
},
{
color: "linear-gradient( 270deg, #FB002D 0%, #822232 100%)",
percentage: 0,
},
];
//endregion //endregion
// region // region
@ -699,7 +717,7 @@ const option = ref({
borderColor: "#FF0000", // borderColor: "#FF0000", //
borderWidth: 4 // borderWidth: 4 //
}, },
data:[] data: []
} }
], ],
}) })

23
src/views/datav/SceneInsp.vue

@ -62,6 +62,7 @@
title="整改率排名" title="整改率排名"
sub-title="已整改/问题数" sub-title="已整改/问题数"
unit="%" unit="%"
:color="dayTimeColors"
/> />
</el-scrollbar> </el-scrollbar>
</datav-tab-item> </datav-tab-item>
@ -115,6 +116,7 @@
title="整改率排名" title="整改率排名"
sub-title="已整改/问题数" sub-title="已整改/问题数"
unit="%" unit="%"
:color="dayTimeColors"
/> />
</el-scrollbar> </el-scrollbar>
</datav-tab-item> </datav-tab-item>
@ -938,9 +940,28 @@ const colors = [
}, },
{ {
color: "linear-gradient( 270deg, #63E700 0%, #19674C 100%)", color: "linear-gradient( 270deg, #63E700 0%, #19674C 100%)",
percentage: 40, percentage: 0,
}, },
]; ];
const dayTimeColors = [
{
color: "linear-gradient( 270deg, #63E700 0%, #19674C 100%)",
percentage: 80,
},
{
color: "linear-gradient( 270deg, #FFB90E 0%, #71501D 100%)",
percentage: 75,
},
{
color: "linear-gradient( 270deg, #FB002D 0%, #822232 100%)",
percentage: 0,
},
];
// endregion // endregion
// region // region

19
src/views/datav/VideoInsp.vue

@ -243,11 +243,7 @@ const colors = [
{ {
color: "linear-gradient( 270deg, #FFB90E 0%, #71501D 100%)", color: "linear-gradient( 270deg, #FFB90E 0%, #71501D 100%)",
percentage: 60, percentage: 60,
}, }
{
color: "linear-gradient( 270deg, #63E700 0%, #19674C 100%)",
percentage: 40,
},
]; ];
const videoUrl = 'webrtc://47.121.143.167/live/livestream'; const videoUrl = 'webrtc://47.121.143.167/live/livestream';
// endregion // endregion
@ -478,15 +474,16 @@ const getVideoSuperviseMapData = async (timeValue) => {
value: item.discoverProblem, value: item.discoverProblem,
}; };
}); });
const total = mappedData.reduce((sum, item) => sum + Number(item.value), 0); //
const avg = total / mappedData.length; // const maxItem = mappedData.reduce((max, item) => (Number(item.value) > Number(max.value) ? item : max), mappedData[0]);
const range30Percent = avg * 0.3 // const range60Percent = maxItem.value * 0.6 //
const range80Percent = maxItem.value * 0.8 //
mapIconList.value = mappedData mapIconList.value = mappedData
option.value.series[0].data = mapIconList option.value.series[0].data = mapIconList
option.value.visualMap.pieces = [ option.value.visualMap.pieces = [
{gte: 0, lte: avg - range30Percent, label: "低于平均问题30%", color: "#4987F6"}, {gte: 0, lte: range60Percent, label: "低于最大问题的60%", color: "#4987F6"},
{gte: avg - range30Percent, lte: avg + range30Percent + 0.1, label: "平均问题上下浮动30%内", color: "#F6A149"}, {gte: range60Percent, lte: range80Percent, label: "介于最大问题的60%~80%", color: "#F6A149"},
{gte: avg + range30Percent, label: "高于平均问题30%", color: "#D34343"}, {gte: range80Percent, label: "高于最大问题80%", color: "#D34343"},
]; ];
} }
const getVideoSuperviseTrendData = async (year) => { const getVideoSuperviseTrendData = async (year) => {

16
src/views/datav/subonedatav/SubOneCaseVerif.vue

@ -213,10 +213,6 @@ const colors = [
color: "linear-gradient( 270deg, #FFB90E 0%, #71501D 100%)", color: "linear-gradient( 270deg, #FFB90E 0%, #71501D 100%)",
percentage: 60, percentage: 60,
}, },
{
color: "linear-gradient( 270deg, #63E700 0%, #19674C 100%)",
percentage: 40,
},
]; ];
// endregion // endregion
@ -518,14 +514,14 @@ const getMapIcon = async(departId, timeValue)=> {
}; };
}); });
gobalTempMapVoList.value = mappedData gobalTempMapVoList.value = mappedData
const total = mappedData.reduce((sum, item) => sum + Number(item.value), 0); const maxItem = mappedData.reduce((max, item) => (Number(item.value) > Number(max.value) ? item : max), mappedData[0]);
const avg = total / mappedData.length; // const range60Percent = maxItem.value * 0.6 //
const range30Percent = avg*0.3 // const range80Percent = maxItem.value * 0.8 //
option.value.series[0].data = mappedData; option.value.series[0].data = mappedData;
option.value.visualMap.pieces = [ option.value.visualMap.pieces = [
{gte: 0, lte: avg - range30Percent, label: "低于平均问题30%", color: "#4987F6"}, {gte: 0, lte: range60Percent, label: "低于最大问题的60%", color: "#4987F6"},
{gte: avg - range30Percent, lte: avg + range30Percent+0.1, label: "平均问题上下浮动30%内", color: "#F6A149"}, {gte: range60Percent, lte: range80Percent, label: "介于最大问题的60%~80%", color: "#F6A149"},
{gte: avg + range30Percent, label: "高于平均问题30%", color: "#D34343"}, {gte: range80Percent, label: "高于最大问题80%", color: "#D34343"},
]; ];
} }
const getProTrendList= async(departId, year) => { const getProTrendList= async(departId, year) => {

37
src/views/datav/subonedatav/SubOneGlobal.vue

@ -10,7 +10,7 @@
v-model="activeOrgTab" v-model="activeOrgTab"
type="bottom-button" type="bottom-button"
> >
<datav-tab-item label="分县市局" name="1"> <datav-tab-item label="派出所" name="1">
<el-scrollbar height="340px"> <el-scrollbar height="340px">
<datav-chart-bar <datav-chart-bar
:data="fxsjlist" :data="fxsjlist"
@ -20,7 +20,7 @@
/> />
</el-scrollbar> </el-scrollbar>
</datav-tab-item> </datav-tab-item>
<datav-tab-item label="局属单位" name="2"> <datav-tab-item label="大队" name="2">
<el-scrollbar height="340px"> <el-scrollbar height="340px">
<datav-chart-bar <datav-chart-bar
:data="jsdwlist" :data="jsdwlist"
@ -75,6 +75,7 @@
style="width: 13.66%; margin-left: 10px" style="width: 13.66%; margin-left: 10px"
/> />
</div> </div>
<div id="map">
<v-charts <v-charts
style="height: 360px" style="height: 360px"
:option="option" :option="option"
@ -82,7 +83,7 @@
ref="subOneGlobalMap" ref="subOneGlobalMap"
@click="handleClick" @click="handleClick"
/> />
</div>
<div> <div>
<datav-card title="问题趋势"> <datav-card title="问题趋势">
<v-charts <v-charts
@ -130,7 +131,7 @@
</el-row> </el-row>
</main> </main>
</div> </div>
<negative-info-depart-dialog v-model="show" :departId="tempDepartId" /> <negative-info-depart-dialog v-model="showDialog" :departId="tempDepartId"/>
</el-scrollbar> </el-scrollbar>
</template> </template>
@ -151,7 +152,7 @@ import {
} from "@/api/screen/subScreen/subOneGlobal.ts"; } from "@/api/screen/subScreen/subOneGlobal.ts";
// region // region
const show = ref(false); // const showDialog = ref(false); //
const tempDepartId = ref(0); // id const tempDepartId = ref(0); // id
const router = useRouter(); const router = useRouter();
@ -196,7 +197,7 @@ const colors = [
percentage: 40, percentage: 40,
}, },
]; ];
let subOneGlobalMapIntervalId ; let subOneGlobalMapIntervalId;
// endregion // endregion
@ -428,15 +429,15 @@ const getSubOneGlobalMapIcon = async (departId = currentDepartId, timeValue = ti
value: item.totalPro, value: item.totalPro,
}; };
}); });
const total = mappedData.reduce((sum, item) => sum + Number(item.value), 0); const maxItem = mappedData.reduce((max, item) => (Number(item.value) > Number(max.value) ? item : max), mappedData[0]);
const avg = total / mappedData.length; // const range60Percent = maxItem.value * 0.6 //
const range30Percent = avg * 0.3 // const range80Percent = maxItem.value * 0.8 //
globalTempMapVoList.value = mappedData; globalTempMapVoList.value = mappedData;
option.value.series[0].data = globalTempMapVoList; option.value.series[0].data = globalTempMapVoList;
option.value.visualMap.pieces = [ option.value.visualMap.pieces = [
{gte: 0, lte: avg - range30Percent, label: "低于平均问题30%", color: "#4987F6"}, {gte: 0, lte: range60Percent, label: "低于最大问题的60%", color: "#4987F6"},
{gte: avg - range30Percent, lte: avg + range30Percent + 0.1, label: "平均问题上下浮动30%内", color: "#F6A149"}, {gte: range60Percent, lte: range80Percent, label: "介于最大问题的60%~80%", color: "#F6A149"},
{gte: avg + range30Percent, label: "高于平均问题30%", color: "#D34343"}, {gte: range80Percent, label: "高于最大问题80%", color: "#D34343"},
]; ];
} }
const getSubOneGlobalTrendData = async (departId = currentDepartId, year) => { const getSubOneGlobalTrendData = async (departId = currentDepartId, year) => {
@ -515,6 +516,8 @@ watch(time, () => {
}); });
const setupEventListeners = () => { const setupEventListeners = () => {
const mySubOneGlobalMap = subOneGlobalMap?.value?.chart; const mySubOneGlobalMap = subOneGlobalMap?.value?.chart;
const map = document.getElementById("map");
console.log(map)
// //
mySubOneGlobalMap.on('mousemove', (e) => { mySubOneGlobalMap.on('mousemove', (e) => {
// console.log(e.dataIndex); // console.log(e.dataIndex);
@ -525,15 +528,20 @@ const setupEventListeners = () => {
}); });
// //
mySubOneGlobalMap.on('mouseout', () => { mySubOneGlobalMap.on('mouseout', () => {
//
if (showDialog.value) {
clearInterval(subOneGlobalMapIntervalId); //
} else {
clearInterval(subOneGlobalMapIntervalId); // clearInterval(subOneGlobalMapIntervalId); //
subOneGlobalMapIntervalId = setInterval(mapAnimation, 2000); subOneGlobalMapIntervalId = setInterval(mapAnimation, 2000);
}
}); });
}; };
const handleClick = (params) => { const handleClick = (params) => {
const departId = params.data.departId; const departId = params.data.departId;
show.value = true; showDialog.value = true;
tempDepartId.value=2661 tempDepartId.value = departId
clearInterval(subOneGlobalMapIntervalId); clearInterval(subOneGlobalMapIntervalId);
// alert(departId) // alert(departId)
} }
@ -556,6 +564,7 @@ const handleClick = (params) => {
background: linear-gradient(180deg, rgba(1, 4, 87, 0.8) 0%, rgba(3, 21, 119, 0.8) 100%); background: linear-gradient(180deg, rgba(1, 4, 87, 0.8) 0%, rgba(3, 21, 119, 0.8) 100%);
border: 1px solid #4E8FFF; border: 1px solid #4E8FFF;
margin: -10px -10px -10px -10px; margin: -10px -10px -10px -10px;
} }
//// ////

20
src/views/datav/subonedatav/SubOneMailVisits.vue

@ -74,6 +74,7 @@
:max="11" :max="11"
size="large" size="large"
label-width="110" label-width="110"
:color="leaderViewColors"
/> />
</el-scrollbar> </el-scrollbar>
</datav-tab-item> </datav-tab-item>
@ -110,6 +111,7 @@
:max="11" :max="11"
size="large" size="large"
label-width="110" label-width="110"
:color="leaderViewColors"
/> />
</el-scrollbar> </el-scrollbar>
</datav-tab-item> </datav-tab-item>
@ -262,7 +264,7 @@
:data="fxsjLeaderReviewMailList" :data="fxsjLeaderReviewMailList"
size="large" size="large"
:max="11" :max="11"
:color="colors" :color="leaderViewColors"
label-width="110" label-width="110"
/> />
</el-scrollbar> </el-scrollbar>
@ -301,6 +303,7 @@
:data="bwzdLeaderReviewMailList" :data="bwzdLeaderReviewMailList"
size="large" size="large"
label-width="110" label-width="110"
:color="leaderViewColors"
/> />
</el-scrollbar> </el-scrollbar>
</datav-tab-item> </datav-tab-item>
@ -442,6 +445,21 @@ const colors = [
}, },
]; ];
const leaderViewColors = [
{
color: "linear-gradient( 270deg, #63E700 0%, #19674C 100%)",
percentage: 80,
},
{
color: "linear-gradient( 270deg, #FFB90E 0%, #71501D 100%)",
percentage: 60,
},
{
color: "linear-gradient( 270deg, #FB002D 0%, #822232 100%)",
percentage: 0,
},
];
//endregion //endregion
// region // region

20
src/views/datav/subonedatav/SubOneSceneInsp.vue

@ -63,6 +63,7 @@
sub-title="已整改/问题数" sub-title="已整改/问题数"
unit="%" unit="%"
:label-width="110" :label-width="110"
:color="dayTimeColors"
/> />
</el-scrollbar> </el-scrollbar>
</datav-tab-item> </datav-tab-item>
@ -117,6 +118,7 @@
sub-title="已整改/问题数" sub-title="已整改/问题数"
unit="%" unit="%"
:label-width="110" :label-width="110"
:color="dayTimeColors"
/> />
</el-scrollbar> </el-scrollbar>
</datav-tab-item> </datav-tab-item>
@ -938,7 +940,23 @@ const colors = [
}, },
{ {
color: "linear-gradient( 270deg, #63E700 0%, #19674C 100%)", color: "linear-gradient( 270deg, #63E700 0%, #19674C 100%)",
percentage: 40, percentage: 0,
},
];
const dayTimeColors = [
{
color: "linear-gradient( 270deg, #63E700 0%, #19674C 100%)",
percentage: 80,
},
{
color: "linear-gradient( 270deg, #FFB90E 0%, #71501D 100%)",
percentage: 75,
},
{
color: "linear-gradient( 270deg, #FB002D 0%, #822232 100%)",
percentage: 0,
}, },
]; ];

18
src/views/datav/subonedatav/SubOneVideoInsp.vue

@ -242,10 +242,6 @@ const colors = [
color: "linear-gradient( 270deg, #FFB90E 0%, #71501D 100%)", color: "linear-gradient( 270deg, #FFB90E 0%, #71501D 100%)",
percentage: 60, percentage: 60,
}, },
{
color: "linear-gradient( 270deg, #63E700 0%, #19674C 100%)",
percentage: 40,
},
]; ];
// endregion // endregion
@ -433,23 +429,21 @@ const getSubOneAllVideoSuperviseCountData = async (departId, timeValue) => {
const getSubOneVideoSuperviseMapData = async (departId, timeValue) => { const getSubOneVideoSuperviseMapData = async (departId, timeValue) => {
const res = await getSubOneVideoSuperviseMap(departId, timeValue); const res = await getSubOneVideoSuperviseMap(departId, timeValue);
console.log(res.videoSuperviseMapIconVoList)
console.log("地图数据来了");
const mappedData = res.videoSuperviseMapIconVoList.map(item => { const mappedData = res.videoSuperviseMapIconVoList.map(item => {
return { return {
...item, ...item,
value: item.discoverProblem, value: item.discoverProblem,
}; };
}); });
const total = mappedData.reduce((sum, item) => sum + Number(item.value), 0); const maxItem = mappedData.reduce((max, item) => (Number(item.value) > Number(max.value) ? item : max), mappedData[0]);
const avg = total / mappedData.length; // const range60Percent = maxItem.value * 0.6 //
const range30Percent = avg * 0.3 // const range80Percent = maxItem.value * 0.8 //
mapIconList.value = mappedData mapIconList.value = mappedData
option.value.series[0].data = mapIconList option.value.series[0].data = mapIconList
option.value.visualMap.pieces = [ option.value.visualMap.pieces = [
{gte: 0, lte: avg - range30Percent, label: "低于平均问题30%", color: "#4987F6"}, {gte: 0, lte: range60Percent, label: "低于最大问题的60%", color: "#4987F6"},
{gte: avg - range30Percent, lte: avg + range30Percent + 0.1, label: "平均问题上下浮动30%内", color: "#F6A149"}, {gte: range60Percent, lte: range80Percent, label: "介于最大问题的60%~80%", color: "#F6A149"},
{gte: avg + range30Percent, label: "高于平均问题30%", color: "#D34343"}, {gte: range80Percent, label: "高于最大问题80%", color: "#D34343"},
]; ];
} }

Loading…
Cancel
Save