提交 503d051d 编写于 作者: zhentian.jia's avatar zhentian.jia

Merge branch 'dev-learning-1120' into 'test-learning-1205'

Dev learning 1120



See merge request !121
......@@ -254,3 +254,15 @@ html,body{
color: #FF9A4B;
}
}
.empty-img {
position: relative;
height: 100px;
width: 100%;
display: flex;
img {
position: relative;
margin: 38px auto;
height: 24px;
width: 106px;
}
}
\ No newline at end of file
......@@ -6,10 +6,15 @@ export function dustributeOption(legendData, seriesData) {
},
tooltip: {
trigger: "item",
formatter: "{b} : {d}%"
// formatter: "{b} : {d}%",
formatter:function(data){
let value = data.name + ':' + data.percent.toFixed(1)+"%"
return value;
}
},
label: {
formatter: "{d}%"
// formatter: "{d}%",
formatter:function(data){ return data.percent.toFixed(1)+"%";}
},
color: ['#FF9A4B', '#FFBC3D', '#39AF9A', '#3BA0FF', '#5D7092'],
legend: {
......@@ -75,7 +80,7 @@ export function recordOption(legendData, xAxisData, seriesData) {
(
(100 * parseFloat(params[j].value)) /
parseFloat(value)
).toFixed(2) +
).toFixed(1) +
"%";
} else {
relVal +=
......
......@@ -376,7 +376,14 @@ export function getPicOption(title, legendData, colorData, seriesData) {
},
tooltip: {
trigger: 'item',
formatter: "{a} <br/>{b} : {c} ({d}%)"
// formatter: "{a} <br/>{b} : {c} ({d}%)"
formatter:function(data){
let value = data.name + ':' + data.percent.toFixed(1)+"%"
return value;
}
},
label: {
formatter:function(data){ return data.percent.toFixed(1)+"%";}
},
legend: {
orient: "vertical",
......
......@@ -90,8 +90,7 @@
<el-table-column prop="townName" label="乡镇/街道" show-overflow-tooltip></el-table-column>
<div slot="empty">
<div class="table-empty">
<img src="../../assets/image/no-content1.png" />
<p>没有相关数据,请重新选择查询范围</p>
<img src="../../assets/image/noData.png" />
</div>
</div>
</el-table>
......@@ -400,5 +399,11 @@ export default {
.pagination {
margin-right: 10px;
}
.table-empty {
img {
height: 24px;
width: 106px;
}
}
}
</style>
......@@ -38,8 +38,7 @@
</el-table-column>
<div slot="empty">
<div class="table-empty">
<img src="../../assets/image/no-content1.png" />
<p>没有相关数据,请重新选择查询范围</p>
<img src="../../assets/image/noData.png" />
</div>
</div>
</el-table>
......@@ -287,6 +286,12 @@ export default {
border: 0px solid #fff !important;
}
}
.table-empty {
img {
height: 24px;
width: 106px;
}
}
}
}
</style>
\ No newline at end of file
......@@ -28,8 +28,7 @@
</el-table-column>
<div slot="empty">
<div class="table-empty">
<img src="../../assets/image/no-content1.png" />
<p>没有相关数据,请重新选择查询范围</p>
<img src="../../assets/image/noData.png" />
</div>
</div>
</el-table>
......@@ -52,8 +51,7 @@
</el-table-column>
<div slot="empty">
<div class="table-empty">
<img src="../../assets/image/no-content1.png" />
<p>没有相关数据,请重新选择查询范围</p>
<img src="../../assets/image/noData.png" />
</div>
</div>
</el-table>
......@@ -346,5 +344,11 @@ export default {
margin-top: 30px;
margin-right: 13px;
}
.table-empty {
img {
height: 24px;
width: 106px;
}
}
}
</style>
\ No newline at end of file
......@@ -9,8 +9,20 @@
<p>"没有相关数据,请重新选择查询范围"</p>
</div>
<div class="chart" v-show="showData">
<div class="item" id="education" ref="education"></div>
<div class="item item-right" id="job" ref="job"></div>
<div v-if="showEducation === true">
<div class="item" id="education" ref="education"></div>
</div>
<div v-if="showEducation === false" class="empty-left">
<div class="title">人员学历分布</div>
<img src="../../assets/image/noData.png" />
</div>
<div v-if="showJob === true">
<div class="item item-right" id="job" ref="job"></div>
</div>
<div v-if="showJob === false" class="empty-left item-right">
<div class="title">人员职务分布</div>
<img src="../../assets/image/noData.png" />
</div>
</div>
<div class="chart" v-show="showData">
<div class="item">
......@@ -27,7 +39,13 @@
</div>
</div>
</div>
<div class="item item-right" id="age" ref="age"></div>
<div v-if="showAge === true">
<div class="item item-right" id="age" ref="age"></div>
</div>
<div v-if="showAge === false" class="empty-left item-right">
<div class="title">人员年龄分布</div>
<img src="../../assets/image/noData.png" />
</div>
</div>
</div>
</template>
......@@ -93,6 +111,10 @@ export default {
},
downloadId: null,
timeInfoChild: {},
showEducation: true,
showJob: true,
showAge: true,
};
},
watch: {
......@@ -123,8 +145,6 @@ export default {
});
});
this.$on("reset", () => {
this.showData = false;
this.crowdData = {};
});
this.$on("static", () => {
vm.getStatic();
......@@ -232,9 +252,9 @@ export default {
sexData[0].num = sexList[1].value;
sexData[1].num = sexList[2].value;
sexData[2].num = sexList[0].value;
sexData[0].rate = Math.floor(sexList[1].value / sum *10000) / 100;
sexData[1].rate = Math.floor(sexList[2].value / sum *10000) / 100;
sexData[2].rate = Math.floor(sexList[0].value / sum *10000) / 100;
sexData[0].rate = (sexList[1].value / sum *100).toFixed(1);
sexData[1].rate = (sexList[2].value / sum *100).toFixed(1);
sexData[2].rate = (sexList[0].value / sum *100).toFixed(1);
}
// console.log('this.$refs.ring0',this.$refs.ring0[0]);
......@@ -253,8 +273,12 @@ export default {
vm.sexData = sexData;
},
educationDivision(data) {
// console.log('this.$refs.education',this.$refs.education)
let myChart = echarts.init(this.$refs.education);
if(data.length == 0) {
vm.showEducation = false;
return;
} else {
vm.showEducation = true;
}
let educationList = data;
let legendData = [];
let seriesData = [];
......@@ -270,12 +294,19 @@ export default {
colorData,
seriesData
);
myChart.setOption(option);
vm.echartsData.chart1 = myChart;
vm.updateResize();
setTimeout(function(){
let myChart = echarts.init(vm.$refs.education);
myChart.setOption(option);
vm.echartsData.chart1 = myChart;
},20);
},
jobDivision(data) {
let myChart2 = echarts.init(this.$refs.job);
if(data.length == 0) {
vm.showJob = false;
return;
} else {
vm.showJob = true;
}
let titleList = data;
let legendData = [];
let seriesData = [];
......@@ -290,12 +321,19 @@ export default {
colorData,
seriesData
);
myChart2.setOption(option);
vm.echartsData.chart2 = myChart2;
vm.updateResize();
setTimeout(function(){
let myChart2 = echarts.init(vm.$refs.job);
myChart2.setOption(option);
vm.echartsData.chart2 = myChart2;
},20);
},
ageDivision(data) {
let myChart3 = echarts.init(this.$refs.age);
if(data.length == 0) {
vm.showAge = false;
return;
} else {
vm.showAge = true;
}
let xAxisData = [];
let seriesData = [];
let ageList = data;
......@@ -313,9 +351,11 @@ export default {
}
let option = operationData.getBarOption(xAxisData, seriesData);
myChart3.setOption(option);
vm.echartsData.chart3 = myChart3;
vm.updateResize();
setTimeout(function(){
let myChart3 = echarts.init(vm.$refs.age);
myChart3.setOption(option);
vm.echartsData.chart3 = myChart3;
},20);
}
}
};
......@@ -325,6 +365,9 @@ export default {
// background: #fff;
overflow: hidden;
// padding: 10px;
.el-radio-button__inner:hover {
color: #449284;
}
.header-title {
padding: 10px 12px;
font-size: 12px;
......@@ -354,6 +397,32 @@ export default {
margin: 20px auto 0 auto;
width: 1124px;
overflow-x: hidden;
.empty-left {
position: relative;
float: left;
margin-right: 20px;
padding: 0;
width: 552px;
height: 360px;
display: flex;
background: #ffffff;
.title {
position: relative;
margin-top: 20px;
margin-left: 20px;
font-size: 18px;
font-weight: bold;
}
img {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
height: 24px;
width: 106px;
}
}
.item {
position: relative;
float: left;
......
......@@ -10,19 +10,29 @@
</div>
<div class="spacing"></div>
<div class="chart-title">完成项目考试次数情况</div>
<div class="chart" id="examTimes" ref="examTimes"></div>
<div v-if="showExamTimes === true" >
<div class="chart" id="examTimes" ref="examTimes"></div>
</div>
<div v-if="showExamTimes === false" class="empty-img">
<img src="../../assets/image/noData.png" />
</div>
<div class="chart-remarks">注:本报表数据来源包括用户参加正式考试次数,不包含摸底考试次数。</div>
<div class="spacing"></div>
<!-- <div class="chart-title">完成项目考试分数情况</div> -->
<div class="chart-title-more">
<p>完成项目考试分数情况</p>
<el-radio-group class="rank-radio" size="medium" v-model="rankType" @change="changeRank">
<el-radio-group v-if="showExamScore === true" class="rank-radio" size="medium" v-model="rankType" @change="changeRank">
<el-radio-button label="1">1分</el-radio-button>
<el-radio-button label="5">5分</el-radio-button>
<el-radio-button label="10">10分</el-radio-button>
</el-radio-group>
</div>
<div class="chart" id="examScore" ref="examScore"></div>
<div v-if="showExamScore === true">
<div class="chart" id="examScore" ref="examScore"></div>
</div>
<div v-if="showExamScore === false" class="empty-img">
<img src="../../assets/image/noData.png" />
</div>
<div class="chart-remarks">注:本报表数据来源包括用户参加正式考试,不包含摸底考试。</div>
<div class="spacing"></div>
<div v-if="downloadId == null">
......@@ -45,8 +55,7 @@
</el-table-column>
<div slot="empty">
<div class="table-empty">
<img src="../../assets/image/no-content1.png" />
<p>没有相关数据,请重新选择查询范围</p>
<img src="../../assets/image/noData.png" />
</div>
</div>
</el-table>
......@@ -71,8 +80,7 @@
</el-table-column>
<div slot="empty">
<div class="table-empty">
<img src="../../assets/image/no-content1.png" />
<p>没有相关数据,请重新选择查询范围</p>
<img src="../../assets/image/noData.png" />
</div>
</div>
</el-table>
......@@ -137,6 +145,8 @@ export default {
rankType: '1',
timeInfoChild: {},
downloadId: null,
showExamTimes: true,
showExamScore: true,
};
},
watch: {
......@@ -278,17 +288,24 @@ export default {
}, 30);
},
setExamTimes(data) {
let myChart = echarts.init(this.$refs.examTimes);
if(data.length == 0) {
vm.showExamTimes = false;
return;
} else {
vm.showExamTimes = true;
}
let xAxisData = [];
let seriesData = [];
for (let i = 0; i < data.length; i++) {
xAxisData.push(data[i].times + "次");
seriesData.push(data[i].count);
}
let option = chartData.examTimes(xAxisData, seriesData);
myChart.setOption(option);
vm.echartsData.chart0 = myChart;
vm.updateResize();
setTimeout(function(){
let myChart = echarts.init(vm.$refs.examTimes);
let option = chartData.examTimes(xAxisData, seriesData);
myChart.setOption(option);
vm.echartsData.chart0 = myChart;
},20);
},
changeRank(value) {
console.log(value);
......@@ -312,17 +329,24 @@ export default {
}
},
setExamScore(data) {
let myChart = echarts.init(this.$refs.examScore);
if(data.length == 0) {
vm.showExamScore = false;
return;
} else {
vm.showExamScore = true;
}
let xAxisData = [];
let seriesData = [];
for (let i = 0; i < data.length; i++) {
xAxisData.push(data[i].timesStr);
seriesData.push(data[i].count);
}
let option = chartData.examScore(xAxisData, seriesData);
myChart.setOption(option);
vm.echartsData.chart1 = myChart;
vm.updateResize();
setTimeout(function(){
let myChart = echarts.init(vm.$refs.examScore);
let option = chartData.examScore(xAxisData, seriesData);
myChart.setOption(option);
vm.echartsData.chart1 = myChart;
},20);
},
// 跳转查看名单页面
goPage(data) {
......@@ -391,8 +415,8 @@ export default {
.examination-analysis {
background: #fff;
overflow: hidden;
.weight {
font-weight: bold;
.el-radio-button__inner:hover {
color: #449284;
}
.el-card {
border-width: 0px;
......@@ -518,5 +542,11 @@ export default {
margin-top: 30px;
margin-right: 13px;
}
.table-empty {
img {
height: 24px;
width: 106px;
}
}
}
</style>
......@@ -9,12 +9,22 @@
</div>
</div>
<div class="spacing"></div>
<div class="chart-title">不同学历完成项目前后正确率对比</div>
<div class="chartEdu" ref="education"></div>
<div class="chart-title">不同学历完成项目前后正确率对比</div>
<div v-if="showChartEdu === true">
<div class="chartEdu" ref="education"></div>
</div>
<div v-if="showChartEdu === false" class="empty-img">
<img src="../../assets/image/noData.png" />
</div>
<div class="chart-remarks">注:本报表数据来源仅仅统计同时包含摸底考和正式考的课程培训。</div>
<div class="spacing"></div>
<div class="chart-title">培训前后知识点掌握情况</div>
<div class="chartLearn" ref="learning"></div>
<div v-if="showChartLearn === true">
<div class="chartLearn" ref="learning"></div>
</div>
<div v-if="showChartLearn === false" class="empty-img">
<img src="../../assets/image/noData.png" />
</div>
<div class="chart-remarks">注:本报表数据来源仅包括有摸底考的课程培训。</div>
</div>
</template>
......@@ -46,6 +56,8 @@ export default {
chart2: {}
},
timeInfoChild: {},
showChartEdu: true,
showChartLearn: true,
};
},
watch: {
......@@ -95,9 +107,6 @@ export default {
timeFlag: vm.formInline.timeFlag
};
openLoading(vm);
// if(req.regionId == "000") {
// req.regionId = "000";
// }
// console.log("0 req", req);
vm.POST("stats/report/studyEffect", req).then(res => {
closeLoading(vm);
......@@ -121,39 +130,53 @@ export default {
title: "培训前后正确率"
}
];
cardData[0].value = (data.beforeRate*100).toFixed(2) + "%";
cardData[1].value = (data.afterRate*100).toFixed(2) + "%";
cardData[0].value = (data.beforeRate*100).toFixed(1) + "%";
cardData[1].value = (data.afterRate*100).toFixed(1) + "%";
vm.cardData = cardData;
},
setEducation(data) {
let myChart = echarts.init(this.$refs.education);
if(data.length == 0) {
vm.showChartEdu = false;
return;
} else {
vm.showChartEdu = true;
}
let xAxisData = [];
let seriesBefore = [];
let seriesAfter = [];
for(let i = 0; i < data.length ; i++) {
xAxisData.push(data[i].classifyName);
seriesBefore.push((data[i].beforeRate*100).toFixed(2));
seriesAfter.push((data[i].afterRate*100).toFixed(2));
seriesBefore.push((data[i].beforeRate*100).toFixed(1));
seriesAfter.push((data[i].afterRate*100).toFixed(1));
}
let option = chartData.educationEffect(xAxisData, seriesBefore ,seriesAfter);
myChart.setOption(option);
vm.echartsData.chart1 = myChart;
vm.updateResize();
setTimeout(function(){
let myChart = echarts.init(vm.$refs.education);
let option = chartData.educationEffect(xAxisData, seriesBefore ,seriesAfter);
myChart.setOption(option);
vm.echartsData.chart1 = myChart;
},20);
},
setLearning(data) {
let myChart = echarts.init(this.$refs.learning);
if(data.length == 0) {
vm.showChartLearn = false;
return;
} else {
vm.showChartLearn = true;
}
let xAxisData = [];
let seriesBefore = [];
let seriesAfter = [];
for(let i = 0; i < data.length ; i++) {
xAxisData.push(data[i].classifyName);
seriesBefore.push((data[i].beforeRate*100).toFixed(2));
seriesAfter.push((data[i].afterRate*100).toFixed(2));
seriesBefore.push((data[i].beforeRate*100).toFixed(1));
seriesAfter.push((data[i].afterRate*100).toFixed(1));
}
let option = chartData.knowledgeEffect(xAxisData, seriesBefore ,seriesAfter);
myChart.setOption(option);
vm.echartsData.chart2 = myChart;
vm.updateResize();
setTimeout(function(){
let myChart = echarts.init(vm.$refs.learning);
let option = chartData.knowledgeEffect(xAxisData, seriesBefore ,seriesAfter);
myChart.setOption(option);
vm.echartsData.chart2 = myChart;
},20);
}
}
};
......
......@@ -99,7 +99,8 @@
type="daterange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期">
end-placeholder="结束日期"
:picker-options="pickerOptions0">
</el-date-picker>
</el-col>
</el-form-item>
......@@ -319,6 +320,17 @@ export default {
originalFlag: 1
},
hospitalCntList: [],
maxDate: '',
minDate: '',
allRegionId: '',
pickerOptions0: {
disabledDate: time => {
// 在科学计数法中,为了使公式简便,可以用带“E”的格式表示。例如1.03乘10的8次方,可简写为“1.03e8”的形式
// 一天是24*60*60*1000 = 86400000 = 8.64e7
// console.log('this.maxDate',this.maxDate)
return time.getTime() > new Date(this.maxDate).getTime() || time.getTime() < new Date(this.minDate).getTime() - 8.64e7;
}
},
};
},
computed: {
......@@ -394,6 +406,9 @@ export default {
vm.displayExam = res.data.existExam;
vm.displayEffect = res.data.existEffect;
vm.certFlag = res.data.certFlag;
vm.maxDate = new Date(res.data.maxDate);
vm.minDate = new Date(res.data.minDate);
console.log('日期:',vm.maxDate,vm.minDate)
vm.getRegionOption();
}
});
......@@ -518,6 +533,7 @@ export default {
if (res.code == "000000") {
vm.formInline.region = [];
vm.formInline.region[0] = res.data.list[0].id;
vm.allRegionId = res.data.list[0].id;
vm.optionsRegion = operationData.setRegionOptionNew(
res.data.list
);
......@@ -626,7 +642,7 @@ export default {
});
},
search() {
console.log(vm.formInline);
// console.log(vm.formInline);
if(vm.formInline.timeFlag == 1) {
//截止昨日
vm.setExportReq();
......@@ -673,20 +689,29 @@ export default {
date: "",
organization: [],
checked: false,
timeFlag: 1,
during: null,
pageNo: 1,
pageSize: 20,
}
);
vm.formInline.region[0] = vm.allRegionId;
vm.areaLen = 0;
vm.tags = [];
if (this.activeName == "first") {
this.$refs.childPart.$emit("reset");
} else if (this.activeName == "second") {
this.$refs.childCrowd.$emit("reset");
} else if (this.activeName == "third") {
this.$refs.childCourse.$emit("reset");
} else if (this.activeName == "fourth") {
this.$refs.childExam.$emit("reset");
}
setTimeout(function(){
vm.search();
},20)
// if (this.activeName == "first") {
// this.$refs.childPart.$emit("reset");
// } else if (this.activeName == "second") {
// this.$refs.childCrowd.$emit("reset");
// } else if (this.activeName == "third") {
// this.$refs.childCourse.$emit("reset");
// } else if (this.activeName == "fourth") {
// this.$refs.childExam.$emit("reset");
// }
},
exportExcel() {
if(vm.downloadId == null) {
......@@ -904,7 +929,10 @@ export default {
position: absolute;
}
.el-tabs__item.is-active {
color: #409eff;
color: #449284;
}
.el-tabs__item:hover {
color: #449284;
}
.el-tabs__header {
width: 100%;
......
......@@ -95,8 +95,7 @@
</el-table-column>
<div slot="empty">
<div class="table-empty">
<img src="../../assets/image/no-content1.png">
<p>没有相关数据,请重新选择查询范围</p>
<img src="../../assets/image/noData.png" />
</div>
</div>
</el-table>
......@@ -380,6 +379,12 @@ export default {
position: relative;
left: 50%;
}
.table-empty {
img {
height: 24px;
width: 106px;
}
}
}
}
</style>
\ No newline at end of file
......@@ -54,8 +54,7 @@
</el-table-column>
<div slot="empty">
<div class="table-empty">
<img src="../../assets/image/no-content1.png" />
<p>没有找到符合的结果</p>
<img src="../../assets/image/noData.png" />
</div>
</div>
</el-table>
......@@ -186,6 +185,12 @@ export default {
.itemlist-content {
padding: 10px;
background: #fff;
.table-empty {
img {
height: 24px;
width: 106px;
}
}
}
}
</style>
\ No newline at end of file
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册