Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
P
pica.cloud.web-education-admin
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
成员
成员
收起侧边栏
Close sidebar
动态
分支图
统计图
提交
打开侧边栏
com.pica.cloud.education.frontend
pica.cloud.web-education-admin
提交
c9a22f5f
提交
c9a22f5f
编写于
11月 27, 2019
作者:
zhentian.jia
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
多张页面api对接
上级
a22cb9e9
变更
7
显示空白字符变更
内嵌
并排
正在显示
7 个修改的文件
包含
741 行增加
和
434 行删除
+741
-434
filter.js
src/utils/filter.js
+56
-0
chartData.js
src/utils/learning/chartData.js
+96
-228
item-course-analysis.vue
src/views/learning/item-course-analysis.vue
+15
-4
item-data-all.vue
src/views/learning/item-data-all.vue
+428
-137
item-examination-analysis.vue
src/views/learning/item-examination-analysis.vue
+100
-38
item-learning-effect.vue
src/views/learning/item-learning-effect.vue
+27
-12
item-list.vue
src/views/learning/item-list.vue
+19
-15
未找到文件。
src/utils/filter.js
浏览文件 @
c9a22f5f
...
@@ -232,6 +232,28 @@ const vueFilter = {
...
@@ -232,6 +232,28 @@ const vueFilter = {
}
}
return
avgTime
;
return
avgTime
;
},
},
learnTimeValue
:
(
value
)
=>
{
let
s
=
parseInt
(
value
),
m
=
0
,
h
=
0
;
//秒,分,小时
if
(
s
==
NaN
){
//错误error
return
''
;
}
if
(
s
>
60
)
{
m
=
parseInt
(
s
/
60
);
s
=
parseInt
(
s
%
60
);
if
(
m
>
60
)
{
h
=
parseInt
(
m
/
60
);
m
=
parseInt
(
m
%
60
);
}
}
let
result
=
""
+
parseInt
(
s
)
+
"秒"
;
if
(
m
>
0
)
{
result
=
""
+
parseInt
(
m
)
+
"分"
+
result
;
}
if
(
h
>
0
)
{
result
=
""
+
parseInt
(
h
)
+
"小时"
+
result
;
}
return
result
;
},
getTotalTime
:
(
value
)
=>
{
getTotalTime
:
(
value
)
=>
{
let
time
=
value
+
'分钟'
;
let
time
=
value
+
'分钟'
;
return
time
;
return
time
;
...
@@ -286,5 +308,39 @@ const vueFilter = {
...
@@ -286,5 +308,39 @@ const vueFilter = {
let
rate
=
num
+
'%'
;
let
rate
=
num
+
'%'
;
return
rate
;
return
rate
;
},
},
sexValue
:
(
value
)
=>
{
if
(
value
==
1
)
{
return
'男'
;
}
else
if
(
value
==
2
)
{
return
'女'
;
}
else
if
(
value
==
0
)
{
return
'未知'
;
}
},
joinFlagValue
:
(
value
)
=>
{
if
(
value
==
1
)
{
return
'已参与'
;
}
else
if
(
value
==
2
)
{
return
'未参与'
;
}
},
finishFlagValue
:
(
value
)
=>
{
if
(
value
==
1
)
{
return
'已完成'
;
}
else
if
(
value
==
2
)
{
return
'未完成'
;
}
},
certGradeValue
:
(
value
)
=>
{
if
(
value
==
1
)
{
return
'优秀'
;
}
else
if
(
value
==
2
)
{
return
'良好'
;
}
else
if
(
value
==
3
)
{
return
'及格'
;
}
else
if
(
value
==
4
)
{
return
'不及格'
;
}
},
}
}
export
default
vueFilter
export
default
vueFilter
\ No newline at end of file
src/utils/learning/chartData.js
浏览文件 @
c9a22f5f
...
@@ -37,7 +37,7 @@ export function dustributeOption(legendData, seriesData) {
...
@@ -37,7 +37,7 @@ export function dustributeOption(legendData, seriesData) {
};
};
return
option
;
return
option
;
}
}
export
function
recordOption
()
{
export
function
recordOption
(
legendData
,
xAxisData
,
seriesData
)
{
let
option
=
{
let
option
=
{
title
:
{
title
:
{
text
:
""
,
text
:
""
,
...
@@ -62,12 +62,14 @@ export function recordOption() {
...
@@ -62,12 +62,14 @@ export function recordOption() {
}
}
relVal
+=
value
+
"人"
;
relVal
+=
value
+
"人"
;
let
divList
=
[];
let
divList
=
[];
divList
[
0
]
=
"<div style='background: #FFB01B;height: 12px;width: 20px;margin: 5px 5px 0 2px;float: left;border-radius:2px;'></div>"
;
divList
[
0
]
=
"<div style='background: #3BA0FF;height: 12px;width: 20px;margin: 5px 5px 0 2px;float: left;border-radius:2px;'></div>"
;
divList
[
1
]
=
"<div style='background: #39AF9A;height: 12px;width: 20px;margin: 5px 5px 0 2px;float: left;border-radius:2px;'></div>"
;
divList
[
1
]
=
"<div style='background: #FF9A4B;height: 12px;width: 20px;margin: 5px 5px 0 2px;float: left;border-radius:2px;'></div>"
;
divList
[
2
]
=
"<div style='background: #5D7092;height: 12px;width: 20px;margin: 5px 5px 0 2px;float: left;border-radius:2px;'></div>"
;
divList
[
2
]
=
"<div style='background: #FFB01B;height: 12px;width: 20px;margin: 5px 5px 0 2px;float: left;border-radius:2px;'></div>"
;
divList
[
3
]
=
"<div style='background: #39AF9A;height: 12px;width: 20px;margin: 5px 5px 0 2px;float: left;border-radius:2px;'></div>"
;
divList
[
4
]
=
"<div style='background: #5D7092;height: 12px;width: 20px;margin: 5px 5px 0 2px;float: left;border-radius:2px;'></div>"
;
for
(
let
j
=
params
.
length
-
1
;
j
>=
0
;
j
--
)
{
for
(
let
j
=
params
.
length
-
1
;
j
>=
0
;
j
--
)
{
relVal
+=
relVal
+=
"<br/>"
+
divList
[
j
%
3
]
+
"<br/>"
+
divList
[
j
]
+
params
[
j
].
seriesName
+
params
[
j
].
seriesName
+
"占比: "
+
"占比: "
+
(
(
...
@@ -79,9 +81,9 @@ export function recordOption() {
...
@@ -79,9 +81,9 @@ export function recordOption() {
return
relVal
;
return
relVal
;
}
}
},
},
color
:
[
'#FFB01B'
,
'#39AF9A'
,
'#5D7092'
],
color
:
[
'#
3BA0FF'
,
'#FF9A4B'
,
'#
FFB01B'
,
'#39AF9A'
,
'#5D7092'
],
legend
:
{
legend
:
{
data
:
[
"未获证人数"
,
"获优秀人数"
,
"获及格人数"
]
data
:
legendData
,
},
},
grid
:
{
grid
:
{
left
:
"3%"
,
left
:
"3%"
,
...
@@ -91,57 +93,29 @@ export function recordOption() {
...
@@ -91,57 +93,29 @@ export function recordOption() {
},
},
xAxis
:
{
xAxis
:
{
type
:
"category"
,
type
:
"category"
,
data
:
[
"博士"
,
"硕士"
,
"本科"
,
"大专"
,
"中专及以下"
,
"其他"
]
data
:
xAxisData
,
},
axisLine
:
{
//隐藏轴线
yAxis
:
{
show
:
false
type
:
"value"
,
name
:
"人数 (个)"
},
series
:
[
{
name
:
"获及格人数"
,
type
:
"bar"
,
stack
:
"总量"
,
barWidth
:
18
,
label
:
{
normal
:
{
show
:
true
,
rotate
:
-
90
,
}
},
},
data
:
[
220
,
182
,
191
,
234
,
290
,
330
]
axisTick
:
{
// 隐藏刻度
show
:
false
},
},
{
name
:
"获优秀人数"
,
type
:
"bar"
,
stack
:
"总量"
,
barWidth
:
18
,
label
:
{
normal
:
{
show
:
true
,
rotate
:
-
90
,
}
},
},
data
:
[
120
,
132
,
101
,
134
,
90
,
230
]
yAxis
:
{
type
:
"value"
,
name
:
"人数 (个)"
,
axisLine
:
{
//隐藏轴线
show
:
false
},
},
{
axisTick
:
{
// 隐藏刻度
name
:
"未获证人数"
,
show
:
false
type
:
"bar"
,
stack
:
"总量"
,
barWidth
:
18
,
label
:
{
normal
:
{
show
:
true
,
rotate
:
-
90
,
}
},
},
data
:
[
1
,
302
,
301
,
334
,
390
,
330
]
},
},
]
series
:
seriesData
,
};
};
return
option
;
return
option
;
}
}
export
function
certificateOption
()
{
export
function
certificateOption
(
xAxisData
,
seriesJoin
,
seriesCert
,
seriesRate
)
{
let
option
=
{
let
option
=
{
title
:
{
title
:
{
text
:
""
,
text
:
""
,
...
@@ -177,7 +151,7 @@ export function certificateOption() {
...
@@ -177,7 +151,7 @@ export function certificateOption() {
dataZoom
:
{
dataZoom
:
{
show
:
true
,
show
:
true
,
start
:
0
,
start
:
0
,
end
:
6
0
end
:
10
0
},
},
legend
:
{
legend
:
{
data
:
[
"参与人数"
,
"获证人数"
,
"获证比例"
]
data
:
[
"参与人数"
,
"获证人数"
,
"获证比例"
]
...
@@ -189,42 +163,16 @@ export function certificateOption() {
...
@@ -189,42 +163,16 @@ export function certificateOption() {
rotate
:
45
rotate
:
45
},
},
type
:
"category"
,
type
:
"category"
,
data
:
[
data
:
xAxisData
,
"北京市"
,
"天津市"
,
"河北省"
,
"山西省"
,
"内蒙古自治区"
,
"辽宁省"
,
"吉林省"
,
"黑龙江省"
,
"上海市"
,
"江苏省"
,
"浙江省"
,
"安徽省"
,
"福建省"
,
"江西省"
,
"山东省"
,
"河南省"
,
"湖北省"
,
"湖南省"
,
"广东省"
,
"广西壮族自治区"
,
"海南省"
,
"重庆市"
,
"四川省"
,
"贵州省"
,
"云南省"
,
"西藏自治区"
,
"陕西省"
,
"甘肃省"
,
"青海省"
,
"宁夏回族自治区"
,
"新疆维吾尔自治区"
],
axisPointer
:
{
axisPointer
:
{
type
:
"shadow"
type
:
"shadow"
}
},
axisLine
:
{
//隐藏轴线
show
:
false
},
axisTick
:
{
// 隐藏刻度
show
:
false
},
}
}
],
],
yAxis
:
[
yAxis
:
[
...
@@ -233,15 +181,31 @@ export function certificateOption() {
...
@@ -233,15 +181,31 @@ export function certificateOption() {
name
:
"人数(个)"
,
name
:
"人数(个)"
,
axisLabel
:
{
axisLabel
:
{
formatter
:
"{value} "
formatter
:
"{value} "
}
},
axisLine
:
{
//隐藏轴线
show
:
false
},
axisTick
:
{
// 隐藏刻度
show
:
false
},
},
},
{
{
type
:
"value"
,
type
:
"value"
,
name
:
"比例"
,
name
:
"比例"
,
min
:
0
,
min
:
0
,
max
:
100
,
max
:
100
,
show
:
false
,
axisLabel
:
{
axisLabel
:
{
formatter
:
"{value} %"
formatter
:
"{value} %"
},
axisLine
:
{
//隐藏轴线
show
:
false
},
axisTick
:
{
// 隐藏刻度
show
:
false
},
splitLine
:
{
show
:
false
}
}
}
}
],
],
...
@@ -250,41 +214,7 @@ export function certificateOption() {
...
@@ -250,41 +214,7 @@ export function certificateOption() {
name
:
"参与人数"
,
name
:
"参与人数"
,
barWidth
:
10
,
barWidth
:
10
,
type
:
"bar"
,
type
:
"bar"
,
data
:
[
data
:
seriesJoin
,
10
,
52
,
200
,
334
,
390
,
330
,
220
,
10
,
52
,
200
,
334
,
390
,
330
,
220
,
10
,
52
,
200
,
334
,
390
,
330
,
220
,
10
,
52
,
200
,
334
,
390
,
330
,
220
,
10
,
52
,
200
,
334
,
390
],
label
:
{
label
:
{
show
:
true
,
show
:
true
,
position
:
"top"
,
position
:
"top"
,
...
@@ -297,7 +227,7 @@ export function certificateOption() {
...
@@ -297,7 +227,7 @@ export function certificateOption() {
name
:
"获证人数"
,
name
:
"获证人数"
,
barWidth
:
10
,
barWidth
:
10
,
type
:
"bar"
,
type
:
"bar"
,
data
:
[
9
,
8
,
100
,
200
,
200
,
55
,
10
,
9
,
8
,
100
,
200
,
200
,
55
,
10
,
9
,
8
,
100
,
200
,
200
,
55
,
10
]
,
data
:
seriesCert
,
label
:
{
label
:
{
show
:
true
,
show
:
true
,
position
:
"top"
,
position
:
"top"
,
...
@@ -310,32 +240,7 @@ export function certificateOption() {
...
@@ -310,32 +240,7 @@ export function certificateOption() {
name
:
"获证比例"
,
name
:
"获证比例"
,
type
:
"line"
,
type
:
"line"
,
yAxisIndex
:
1
,
yAxisIndex
:
1
,
data
:
[
data
:
seriesRate
,
2
,
22
,
32
,
41
,
61
,
10
,
20
,
23
,
55
,
67
,
91
,
6
,
2
,
22
,
32
,
41
,
61
,
10
,
20
,
23
,
55
,
67
,
91
,
6
],
label
:
{
label
:
{
show
:
true
,
show
:
true
,
position
:
"top"
,
position
:
"top"
,
...
@@ -346,7 +251,7 @@ export function certificateOption() {
...
@@ -346,7 +251,7 @@ export function certificateOption() {
};
};
return
option
;
return
option
;
}
}
export
function
durationOption
()
{
export
function
durationOption
(
xAxisData
,
seriesData
)
{
let
option
=
{
let
option
=
{
title
:
{
title
:
{
text
:
""
,
text
:
""
,
...
@@ -368,7 +273,7 @@ export function durationOption() {
...
@@ -368,7 +273,7 @@ export function durationOption() {
dataZoom
:
{
dataZoom
:
{
show
:
true
,
show
:
true
,
start
:
0
,
start
:
0
,
end
:
66
end
:
100
},
},
xAxis
:
[
xAxis
:
[
{
{
...
@@ -377,39 +282,7 @@ export function durationOption() {
...
@@ -377,39 +282,7 @@ export function durationOption() {
rotate
:
35
rotate
:
35
},
},
type
:
"category"
,
type
:
"category"
,
data
:
[
data
:
xAxisData
,
"北京市"
,
"天津市"
,
"河北省"
,
"山西省"
,
"内蒙古自治区"
,
"辽宁省"
,
"吉林省"
,
"黑龙江省"
,
"上海市"
,
"江苏省"
,
"浙江省"
,
"安徽省"
,
"福建省"
,
"江西省"
,
"山东省"
,
"河南省"
,
"湖北省"
,
"湖南省"
,
"广东省"
,
"广西壮族自治区"
,
"海南省"
,
"重庆市"
,
"四川省"
,
"贵州省"
,
"云南省"
,
"西藏自治区"
,
"陕西省"
,
"甘肃省"
,
"青海省"
,
"宁夏回族自治区"
,
"新疆维吾尔自治区"
],
axisTick
:
{
axisTick
:
{
alignWithLabel
:
true
alignWithLabel
:
true
}
}
...
@@ -425,48 +298,14 @@ export function durationOption() {
...
@@ -425,48 +298,14 @@ export function durationOption() {
{
{
name
:
"时长"
,
name
:
"时长"
,
type
:
"bar"
,
type
:
"bar"
,
barWidth
:
17
,
barWidth
:
18
,
data
:
[
data
:
seriesData
,
10
,
52
,
200
,
334
,
390
,
330
,
220
,
10
,
52
,
200
,
334
,
390
,
330
,
220
,
10
,
52
,
200
,
334
,
390
,
330
,
220
,
10
,
52
,
200
,
334
,
390
,
330
,
220
,
10
,
52
,
200
,
334
,
390
],
label
:
{
label
:
{
show
:
true
,
show
:
true
,
position
:
"top"
,
position
:
"top"
,
formatter
:
"{c}"
,
//这是关键,在需要的地方加上就行了
formatter
:
"{c}"
,
//这是关键,在需要的地方加上就行了
rotate
:
-
90
,
rotate
:
-
90
,
offset
:
[
-
5
,
-
1
5
]
offset
:
[
-
5
,
-
1
7
]
}
}
}
}
]
]
...
@@ -500,7 +339,7 @@ export function educationEffect(xAxisData, seriesBefore ,seriesAfter) {
...
@@ -500,7 +339,7 @@ export function educationEffect(xAxisData, seriesBefore ,seriesAfter) {
return
relVal
;
return
relVal
;
}
}
},
},
color
:
[
"#
5D7092"
,
"#FFB01B
"
],
color
:
[
"#
FEBB3C"
,
"#39AF9A
"
],
legend
:
{
legend
:
{
data
:
[
"项目前总正确率"
,
"项目后总正确率"
]
data
:
[
"项目前总正确率"
,
"项目后总正确率"
]
},
},
...
@@ -512,7 +351,13 @@ export function educationEffect(xAxisData, seriesBefore ,seriesAfter) {
...
@@ -512,7 +351,13 @@ export function educationEffect(xAxisData, seriesBefore ,seriesAfter) {
},
},
xAxis
:
{
xAxis
:
{
type
:
"category"
,
type
:
"category"
,
data
:
xAxisData
data
:
xAxisData
,
axisLine
:
{
//隐藏轴线
show
:
false
},
axisTick
:
{
// 隐藏刻度
show
:
false
},
},
},
yAxis
:
{
yAxis
:
{
min
:
0
,
min
:
0
,
...
@@ -520,13 +365,19 @@ export function educationEffect(xAxisData, seriesBefore ,seriesAfter) {
...
@@ -520,13 +365,19 @@ export function educationEffect(xAxisData, seriesBefore ,seriesAfter) {
type
:
"value"
,
type
:
"value"
,
axisLabel
:
{
axisLabel
:
{
formatter
:
"{value} %"
formatter
:
"{value} %"
}
},
axisLine
:
{
//隐藏轴线
show
:
false
},
axisTick
:
{
// 隐藏刻度
show
:
false
},
},
},
series
:
[
series
:
[
{
{
name
:
"项目前总正确率"
,
name
:
"项目前总正确率"
,
type
:
"bar"
,
type
:
"bar"
,
barWidth
:
1
0
,
barWidth
:
1
8
,
data
:
seriesBefore
,
data
:
seriesBefore
,
label
:
{
label
:
{
show
:
true
,
show
:
true
,
...
@@ -539,7 +390,7 @@ export function educationEffect(xAxisData, seriesBefore ,seriesAfter) {
...
@@ -539,7 +390,7 @@ export function educationEffect(xAxisData, seriesBefore ,seriesAfter) {
{
{
name
:
"项目后总正确率"
,
name
:
"项目后总正确率"
,
type
:
"bar"
,
type
:
"bar"
,
barWidth
:
1
0
,
barWidth
:
1
8
,
data
:
seriesAfter
,
data
:
seriesAfter
,
label
:
{
label
:
{
show
:
true
,
show
:
true
,
...
@@ -580,7 +431,12 @@ export function knowledgeEffect(xAxisData, seriesBefore ,seriesAfter) {
...
@@ -580,7 +431,12 @@ export function knowledgeEffect(xAxisData, seriesBefore ,seriesAfter) {
return
relVal
;
return
relVal
;
}
}
},
},
color
:
[
"#5D7092"
,
"#FFB01B"
],
color
:
[
"#FFB01B"
,
"#5D7092"
],
dataZoom
:
{
show
:
true
,
start
:
0
,
end
:
100
},
legend
:
{
legend
:
{
data
:
[
"培训前正确率"
,
"培训后正确率"
]
data
:
[
"培训前正确率"
,
"培训后正确率"
]
},
},
...
@@ -595,6 +451,12 @@ export function knowledgeEffect(xAxisData, seriesBefore ,seriesAfter) {
...
@@ -595,6 +451,12 @@ export function knowledgeEffect(xAxisData, seriesBefore ,seriesAfter) {
interval
:
0
,
interval
:
0
,
rotate
:
45
rotate
:
45
},
},
axisLine
:
{
//隐藏轴线
show
:
false
},
axisTick
:
{
// 隐藏刻度
show
:
false
},
type
:
"category"
,
type
:
"category"
,
data
:
xAxisData
,
data
:
xAxisData
,
},
},
...
@@ -602,6 +464,12 @@ export function knowledgeEffect(xAxisData, seriesBefore ,seriesAfter) {
...
@@ -602,6 +464,12 @@ export function knowledgeEffect(xAxisData, seriesBefore ,seriesAfter) {
min
:
0
,
min
:
0
,
max
:
100
,
max
:
100
,
type
:
"value"
,
type
:
"value"
,
axisLine
:
{
//隐藏轴线
show
:
false
},
axisTick
:
{
// 隐藏刻度
show
:
false
},
axisLabel
:
{
axisLabel
:
{
formatter
:
"{value} %"
formatter
:
"{value} %"
}
}
...
@@ -610,7 +478,7 @@ export function knowledgeEffect(xAxisData, seriesBefore ,seriesAfter) {
...
@@ -610,7 +478,7 @@ export function knowledgeEffect(xAxisData, seriesBefore ,seriesAfter) {
{
{
name
:
"培训前正确率"
,
name
:
"培训前正确率"
,
type
:
"bar"
,
type
:
"bar"
,
barWidth
:
1
0
,
barWidth
:
1
8
,
data
:
seriesBefore
,
data
:
seriesBefore
,
label
:
{
label
:
{
show
:
true
,
show
:
true
,
...
@@ -623,7 +491,7 @@ export function knowledgeEffect(xAxisData, seriesBefore ,seriesAfter) {
...
@@ -623,7 +491,7 @@ export function knowledgeEffect(xAxisData, seriesBefore ,seriesAfter) {
{
{
name
:
"培训后正确率"
,
name
:
"培训后正确率"
,
type
:
"bar"
,
type
:
"bar"
,
barWidth
:
1
0
,
barWidth
:
1
8
,
data
:
seriesAfter
,
data
:
seriesAfter
,
label
:
{
label
:
{
show
:
true
,
show
:
true
,
...
...
src/views/learning/item-course-analysis.vue
浏览文件 @
c9a22f5f
...
@@ -24,7 +24,7 @@
...
@@ -24,7 +24,7 @@
<el-table-column
prop=
"finishCount"
label=
"完成培训人数"
align=
"center"
></el-table-column>
<el-table-column
prop=
"finishCount"
label=
"完成培训人数"
align=
"center"
></el-table-column>
<el-table-column
fixed=
"right"
label=
"操作"
min-width=
"50"
align=
"center"
>
<el-table-column
fixed=
"right"
label=
"操作"
min-width=
"50"
align=
"center"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<el-button
@
click=
"checkName(scope.row)"
type=
"text"
size=
"small"
>
查看名单
</el-button>
<el-button
class=
"button-jump"
@
click=
"checkName(scope.row)"
type=
"text"
size=
"small"
>
查看名单
</el-button>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<div
slot=
"empty"
>
<div
slot=
"empty"
>
...
@@ -36,6 +36,7 @@
...
@@ -36,6 +36,7 @@
</el-table>
</el-table>
<div
class=
"pagination"
>
<div
class=
"pagination"
>
<el-pagination
<el-pagination
class=
"pagination"
background
background
@
size-change=
"handleSizeChange"
@
size-change=
"handleSizeChange"
@
current-change=
"handleCurrentChange"
@
current-change=
"handleCurrentChange"
...
@@ -146,10 +147,12 @@ export default {
...
@@ -146,10 +147,12 @@ export default {
originalFlag
:
vm
.
formInline
.
checked
==
false
?
0
:
1
,
originalFlag
:
vm
.
formInline
.
checked
==
false
?
0
:
1
,
regionId
:
vm
.
formInline
.
region
[
vm
.
formInline
.
region
.
length
-
1
],
regionId
:
vm
.
formInline
.
region
[
vm
.
formInline
.
region
.
length
-
1
],
timeFlag
:
vm
.
formInline
.
timeFlag
,
timeFlag
:
vm
.
formInline
.
timeFlag
,
pageNo
:
vm
.
pageNo
,
pageSize
:
vm
.
pageSize
,
};
};
// console.log("3 req", req);
// console.log("3 req", req);
openLoading
(
vm
);
openLoading
(
vm
);
vm
.
POST
(
"stats/report/course
/"
+
vm
.
pageNo
+
'/'
+
vm
.
pageSize
,
req
).
then
(
res
=>
{
vm
.
POST
(
"stats/report/course
"
,
req
).
then
(
res
=>
{
closeLoading
(
vm
);
closeLoading
(
vm
);
if
(
res
.
code
==
"000000"
)
{
if
(
res
.
code
==
"000000"
)
{
if
(
type
!==
2
)
{
if
(
type
!==
2
)
{
...
@@ -273,8 +276,16 @@ export default {
...
@@ -273,8 +276,16 @@ export default {
}
}
.course-table
{
.course-table
{
top
:
20px
;
top
:
20px
;
padding
:
0
10px
0
10px
;
padding
:
0
;
margin-bottom
:
20px
;
width
:
95%
;
margin
:
0
auto
20px
auto
;
.button-jump
{
color
:
#449284
;
}
}
.pagination
{
margin-top
:
30px
;
margin-right
:
13px
;
}
}
}
}
</
style
>
</
style
>
\ No newline at end of file
src/views/learning/item-data-all.vue
浏览文件 @
c9a22f5f
...
@@ -24,36 +24,41 @@
...
@@ -24,36 +24,41 @@
</div>
</div>
</div>
</div>
<div
class=
"date-table"
>
<div
class=
"date-table"
>
<el-radio-group
class=
"change-range"
v-model=
"c
heckRange"
>
<el-tabs
class=
"change-range"
v-model=
"checkRange"
type=
"card"
@
tab-click=
"handleC
heckRange"
>
<el-
radio-button
label=
1
>
累计
</el-radio-button
>
<el-
tab-pane
label=
"累计"
name=
"1"
></el-tab-pane
>
<el-
radio-button
label=
2
>
新增
</el-radio-button
>
<el-
tab-pane
label=
"新增"
name=
"2"
></el-tab-pane
>
</el-
radio-group
>
</el-
tabs
>
<el-radio-group
class=
"change-date"
v-model=
"checkTime"
size=
"medium"
>
<el-radio-group
class=
"change-date"
v-model=
"checkTime"
size=
"medium"
@
change=
"handleCheckTime"
>
<el-radio-button
label=
1
>
日
</el-radio-button>
<el-radio-button
label=
"1"
>
日
</el-radio-button>
<el-radio-button
label=
2
>
周
</el-radio-button>
<el-radio-button
label=
"2"
>
周
</el-radio-button>
<el-radio-button
label=
3
>
月
</el-radio-button>
<el-radio-button
label=
"3"
>
月
</el-radio-button>
<el-radio-button
label=
4
>
年
</el-radio-button>
<el-radio-button
label=
"4"
>
年
</el-radio-button>
</el-radio-group>
</el-radio-group>
<el-table
:data=
"tableDateTime"
style=
"width: 100%"
>
<el-table
:data=
"tableDateTime"
style=
"width: 100%"
>
<el-table-column
prop=
"date"
label=
"日期"
align=
"center"
min-width=
"100"
></el-table-column>
<el-table-column
prop=
"date"
label=
"日期"
align=
"center"
min-width=
"100"
></el-table-column>
<el-table-column
prop=
"shouldOrgan"
label=
"应参与机构数"
align=
"center"
></el-table-column>
<el-table-column
prop=
"hospitalCount"
label=
"应参与机构数"
align=
"center"
></el-table-column>
<el-table-column
prop=
"joinOrgan"
label=
"已参与机构数"
align=
"center"
></el-table-column>
<el-table-column
prop=
"hospitalJoinCount"
label=
"已参与机构数"
align=
"center"
></el-table-column>
<el-table-column
prop=
"shouldPeople"
label=
"应参与人数"
align=
"center"
></el-table-column>
<el-table-column
prop=
"doctorCount"
label=
"应参与人数"
align=
"center"
></el-table-column>
<el-table-column
prop=
"joinPeople"
label=
"已参与人数"
align=
"center"
></el-table-column>
<el-table-column
prop=
"doctorJoinCount"
label=
"已参与人数"
align=
"center"
></el-table-column>
<el-table-column
prop=
"getPeople"
label=
"获证人数"
align=
"center"
></el-table-column>
<el-table-column
prop=
"finishCount"
label=
"获证人数"
align=
"center"
></el-table-column>
<el-table-column
v-if=
"gradeFlag[0] == true"
prop=
"grade1Count"
label=
"优秀"
align=
"center"
></el-table-column>
<el-table-column
v-if=
"gradeFlag[1] == true"
prop=
"grade2Count"
label=
"良好"
align=
"center"
></el-table-column>
<el-table-column
v-if=
"gradeFlag[2] == true"
prop=
"grade3Count"
label=
"及格"
align=
"center"
></el-table-column>
<el-table-column
v-if=
"gradeFlag[3] == true"
prop=
"grade4Count"
label=
"不及格"
align=
"center"
></el-table-column>
</el-table>
</el-table>
<
!--
<
div
class=
"pagination"
>
<div
class=
"pagination"
>
<el-pagination
<el-pagination
background
background
@
size-change=
"handleSizeD
ate
"
@
size-change=
"handleSizeD
wmy
"
@
current-change=
"handleCurrentD
ate
"
@
current-change=
"handleCurrentD
wmy
"
:current-page=
"form
Table
.pageNo"
:current-page=
"form
Dwmy
.pageNo"
:page-sizes=
"[
10, 20, 30, 1
00]"
:page-sizes=
"[
20, 30, 100 ,2
00]"
:page-size=
"form
Table
.pageSize"
:page-size=
"form
Dwmy
.pageSize"
layout=
"total, sizes, prev, pager, next, jumper"
layout=
"total, sizes, prev, pager, next, jumper"
:total=
"total
Rows
"
:total=
"total
Count
"
></el-pagination>
></el-pagination>
</div>
-->
</div>
</div>
</div>
<div
class=
"spacing"
></div>
<div
class=
"spacing"
></div>
<div
class=
"chart-title"
>
证历分布情况
</div>
<div
class=
"chart-title"
>
证历分布情况
</div>
...
@@ -71,27 +76,29 @@
...
@@ -71,27 +76,29 @@
<div
class=
"recordChart"
id=
"recordChart"
ref=
"recordChart"
></div>
<div
class=
"recordChart"
id=
"recordChart"
ref=
"recordChart"
></div>
<div
class=
"data-text"
>
<div
class=
"data-text"
>
<div
class=
"content-text"
>
<div
class=
"content-text"
>
<p
v-for=
"item in recordList"
:key=
"item.value"
>
{{
item
.
label
}}
:
{{
item
.
value
}}
人
</p>
<p
v-for=
"item in recordList"
>
{{
item
.
label
}}
:
{{
item
.
value
}}
人
</p>
</div>
</div>
</div>
</div>
</div>
</div>
<!--
<el-select
class=
"chart-select"
v-model=
"rankType"
placeholder=
"请选择"
>
<div
class=
"spacing"
></div>
<el-option
<div
class=
"chart-title-more"
>
v-for=
"item in rankOptions"
<p>
项目排名情况
</p>
:key=
"item.value"
<el-radio-group
class=
"rank-radio"
size=
"medium"
v-model=
"rankType"
@
change=
"changeRank"
>
:label=
"item.label"
<el-radio-button
label=
"1"
>
按获证人数排名
</el-radio-button>
:value=
"item.value"
<el-radio-button
label=
"2"
>
按获证比例排名
</el-radio-button>
></el-option>
<el-radio-button
label=
"3"
>
按参与人数排名
</el-radio-button>
</el-select>
-->
</el-radio-group>
<div
class=
"chart-title"
>
培训情况排名
</div>
</div>
<div
class=
"chart"
id=
"certificateChart"
ref=
"certificateChart"
></div>
<div
class=
"chartCert"
id=
"certificateChart"
ref=
"certificateChart"
></div>
<div
class=
"spacing"
></div>
<div
class=
"chart-title"
>
在线培训完成时长情况
</div>
<div
class=
"chart-title"
>
在线培训完成时长情况
</div>
<div
class=
"chart"
id=
"durationChart"
ref=
"durationChart"
></div>
<div
class=
"chartDuration"
id=
"durationChart"
ref=
"durationChart"
></div>
<div
class=
"chart-remarks"
>
注:在线培训完成时长=完成项目时间-开始参与项目时间
</div>
</div>
</div>
<div
v-if=
"dataType == 1"
class=
"data-table"
>
<div
v-if=
"dataType == 1"
class=
"data-table"
>
<div
class=
"box-list"
>
<div
class=
"box-list"
>
<div
v-for=
"(item , index) in cardData"
:key=
"index"
class=
"box"
>
<div
v-for=
"(item , index) in cardData"
:key=
"index"
class=
"box"
>
<el-card
class=
"box-card box-card2"
>
<el-card
class=
"box-card box-card2"
v-bind:class=
"
{ 'box-last': index == 1 }"
>
<el-tooltip
class=
"item-tool"
placement=
"bottom-end"
effect=
"light"
>
<el-tooltip
class=
"item-tool"
placement=
"bottom-end"
effect=
"light"
>
<div
slot=
"content"
>
<div
slot=
"content"
>
<p
v-for=
"text in item.content"
>
{{
text
}}
</p>
<p
v-for=
"text in item.content"
>
{{
text
}}
</p>
...
@@ -108,35 +115,94 @@
...
@@ -108,35 +115,94 @@
<p
class=
"should"
>
{{
item
.
shouldKey
}}
:
{{
item
.
shouldNum
}}
</p>
<p
class=
"should"
>
{{
item
.
shouldKey
}}
:
{{
item
.
shouldNum
}}
</p>
</div>
</div>
</el-card>
</el-card>
<!--
<div
v-if=
"index+1 !== cardData.length"
class=
"line"
></div>
-->
</div>
</div>
</div>
</div>
<div
class=
"date-table"
>
<el-tabs
class=
"change-range"
v-model=
"checkRange"
type=
"card"
@
tab-click=
"handleCheckRange"
>
<el-tab-pane
label=
"累计"
name=
"1"
></el-tab-pane>
<el-tab-pane
label=
"新增"
name=
"2"
></el-tab-pane>
</el-tabs>
<el-radio-group
class=
"change-date"
v-model=
"checkTime"
size=
"medium"
@
change=
"handleCheckTime"
>
<el-radio-button
label=
"1"
>
日
</el-radio-button>
<el-radio-button
label=
"2"
>
周
</el-radio-button>
<el-radio-button
label=
"3"
>
月
</el-radio-button>
<el-radio-button
label=
"4"
>
年
</el-radio-button>
</el-radio-group>
<el-table
:data=
"tableDateTime"
style=
"width: 100%"
>
<el-table-column
prop=
"date"
label=
"日期"
align=
"center"
min-width=
"100"
></el-table-column>
<el-table-column
prop=
"hospitalCount"
label=
"应参与机构数"
align=
"center"
></el-table-column>
<el-table-column
prop=
"hospitalJoinCount"
label=
"已参与机构数"
align=
"center"
></el-table-column>
<el-table-column
prop=
"doctorCount"
label=
"应参与人数"
align=
"center"
></el-table-column>
<el-table-column
prop=
"doctorJoinCount"
label=
"已参与人数"
align=
"center"
></el-table-column>
<el-table-column
prop=
"finishCount"
label=
"获证人数"
align=
"center"
></el-table-column>
<el-table-column
v-if=
"gradeFlag[0] == true"
prop=
"grade1Count"
label=
"优秀"
align=
"center"
></el-table-column>
<el-table-column
v-if=
"gradeFlag[1] == true"
prop=
"grade2Count"
label=
"良好"
align=
"center"
></el-table-column>
<el-table-column
v-if=
"gradeFlag[2] == true"
prop=
"grade3Count"
label=
"及格"
align=
"center"
></el-table-column>
<el-table-column
v-if=
"gradeFlag[3] == true"
prop=
"grade4Count"
label=
"不及格"
align=
"center"
></el-table-column>
</el-table>
<div
class=
"pagination"
>
<el-pagination
background
@
size-change=
"handleSizeDwmy"
@
current-change=
"handleCurrentDwmy"
:current-page=
"formDwmy.pageNo"
:page-sizes=
"[20, 30, 100 ,200]"
:page-size=
"formDwmy.pageSize"
layout=
"total, sizes, prev, pager, next, jumper"
:total=
"totalCount"
></el-pagination>
</div>
</div>
<div
class=
"spacing"
></div>
<div
class=
"person"
>
<div
class=
"person"
>
<div
class=
"person-title"
>
项目人员情况
</div>
<div
class=
"person-title"
>
项目人员情况
</div>
<!--
<el-radio-group
class=
"person-radio"
v-model=
"tableType"
@
change=
"change"
>
<el-tabs
class=
"tabs-person"
v-model=
"tableType"
type=
"card"
@
tab-click=
"handlePerson"
>
<el-radio-button
label=
"0"
>
已获证
</el-radio-button>
<el-tab-pane
label=
"已获证"
name=
"1"
></el-tab-pane>
<el-radio-button
label=
"1"
>
未获证
</el-radio-button>
<el-tab-pane
label=
"未获证"
name=
"2"
></el-tab-pane>
<el-radio-button
label=
"2"
>
未参与
</el-radio-button>
<el-tab-pane
label=
"未参与"
name=
"3"
></el-tab-pane>
</el-radio-group>
-->
</el-tabs>
<el-table
:data=
"tableData"
style=
"width: 100%"
>
<el-table
:data=
"tableData"
class=
"person-table"
>
<el-table-column
prop=
"rank"
label=
"排名"
align=
"center"
></el-table-column>
<el-table-column
prop=
"certGrade"
label=
"排名"
align=
"center"
></el-table-column>
<el-table-column
prop=
"name"
label=
"姓名"
align=
"center"
></el-table-column>
<el-table-column
prop=
"doctorName"
label=
"姓名"
align=
"center"
></el-table-column>
<el-table-column
prop=
"sex"
label=
"性别"
align=
"center"
></el-table-column>
<el-table-column
prop=
"sex"
label=
"性别"
align=
"center"
>
<el-table-column
prop=
"department"
label=
"科室"
align=
"center"
></el-table-column>
<template
slot-scope=
"scope"
>
<el-table-column
prop=
"join"
label=
"是否参与项目"
align=
"center"
></el-table-column>
<span>
{{
scope
.
row
.
sex
|
sexValue
}}
</span>
<el-table-column
prop=
"complete"
label=
"是否完成项目"
align=
"center"
></el-table-column>
</
template
>
<el-table-column
prop=
"grade"
label=
"证书级别"
align=
"center"
></el-table-column>
</el-table-column>
<el-table-column
prop=
"certificateDate"
label=
"获证日期"
align=
"center"
></el-table-column>
<el-table-column
prop=
"departmentName"
label=
"科室"
align=
"center"
></el-table-column>
<el-table-column
prop=
"record"
label=
"成绩"
align=
"center"
></el-table-column>
<el-table-column
prop=
"joinFlag"
label=
"是否参与项目"
align=
"center"
>
<el-table-column
prop=
"learnTime"
label=
"学习时长"
align=
"center"
></el-table-column>
<
template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
.
joinFlag
|
joinFlagValue
}}
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"finishFlag"
label=
"是否完成项目"
align=
"center"
>
<
template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
.
finishFlag
|
finishFlagValue
}}
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"certGrade"
label=
"证书级别"
align=
"center"
>
<
template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
.
certGrade
|
certGradeValue
}}
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"finishDate"
label=
"获证日期"
align=
"center"
></el-table-column>
<el-table-column
prop=
"score"
label=
"成绩"
align=
"center"
></el-table-column>
<el-table-column
prop=
"learnTime"
min-width=
"150"
label=
"学习时长"
align=
"center"
>
<
template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
.
learnTime
|
learnTimeValue
}}
</span>
</
template
>
</el-table-column>
</el-table>
</el-table>
<div
class=
"chart-remarks"
>
注:本报表数据来源仅包括有摸底考的课程培训。
</div>
<div
class=
"pagination"
>
<div
class=
"pagination"
>
<el-pagination
<el-pagination
class=
"pagination"
background
background
@
size-change=
"handleSizeChange"
@
size-change=
"handleSizeChange"
@
current-change=
"handleCurrentChange"
@
current-change=
"handleCurrentChange"
:current-page=
"formTable.pageNo"
:current-page=
"formTable.pageNo"
:page-sizes=
"[10, 20, 30, 100]"
:page-sizes=
"[10, 20, 30, 100
,200
]"
:page-size=
"formTable.pageSize"
:page-size=
"formTable.pageSize"
layout=
"total, sizes, prev, pager, next, jumper"
layout=
"total, sizes, prev, pager, next, jumper"
:total=
"totalRows"
:total=
"totalRows"
...
@@ -167,14 +233,14 @@ export default {
...
@@ -167,14 +233,14 @@ export default {
},
},
organizationList
:
{
organizationList
:
{
type
:
Array
type
:
Array
}
}
,
},
},
data
()
{
data
()
{
return
{
return
{
roleType
:
"L1"
,
roleType
:
"L1"
,
projectId
:
""
,
projectId
:
""
,
dataType
:
0
,
dataType
:
0
,
tableType
:
"
0
"
,
tableType
:
"
1
"
,
echartsData
:
{
echartsData
:
{
chart0
:
{},
chart0
:
{},
chart1
:
{},
chart1
:
{},
...
@@ -184,7 +250,7 @@ export default {
...
@@ -184,7 +250,7 @@ export default {
distributeList
:
[],
distributeList
:
[],
recordList
:
[],
recordList
:
[],
cardData
:
[],
cardData
:
[],
rankType
:
1
,
rankType
:
"1"
,
rankOptions
:
[
rankOptions
:
[
{
{
value
:
1
,
value
:
1
,
...
@@ -198,38 +264,102 @@ export default {
...
@@ -198,38 +264,102 @@ export default {
tableData
:
[],
tableData
:
[],
tableDateTime
:
[],
tableDateTime
:
[],
totalRows
:
0
,
totalRows
:
0
,
formDwmy
:
{
pageNo
:
1
,
pageSize
:
20
,
},
formTable
:
{
formTable
:
{
pageNo
:
1
,
pageNo
:
1
,
pageSize
:
1
0
,
pageSize
:
2
0
,
},
},
checkRange
:
1
,
checkRange
:
"1"
,
checkTime
:
1
,
checkTime
:
"1"
,
totalCount
:
0
,
gradeFlag
:
[
false
,
false
,
false
,
false
],
hospitalCnt
:
''
,
hospitalId
:
[],
};
};
},
},
created
()
{
created
()
{
vm
=
this
;
vm
=
this
;
vm
.
projectId
=
vm
.
getUrlSearch
(
window
.
location
.
href
,
"id"
);
vm
.
projectId
=
vm
.
getUrlSearch
(
window
.
location
.
href
,
"id"
);
// vm.initCard();
// if(vm.dataType == 0) {
// vm.setTableDate();
// setTimeout(function() {
// vm.setDistributeChart();
// vm.setRecordChart();
// vm.setDurationChart();
// vm.setCertificateChart();
// }, 500);
// } else {
// vm.setTable();
// }
},
},
mounted
:
function
()
{
mounted
:
function
()
{
this
.
$on
(
"search"
,
()
=>
{
this
.
$on
(
"search"
,
()
=>
{
vm
.
checkRange
=
1
;
vm
.
gethHspitalsCnt
();
vm
.
checkTime
=
1
,
this
.
search
();
});
});
},
},
methods
:
{
methods
:
{
gethHspitalsCnt
()
{
let
req
=
{
projectId
:
vm
.
projectId
,
regionId
:
vm
.
formInline
.
region
[
vm
.
formInline
.
region
.
length
-
1
]
};
vm
.
GET
(
"stats/region/hospitals/cnt"
,
req
).
then
(
res
=>
{
if
(
res
.
code
==
"000000"
)
{
vm
.
hospitalCnt
=
res
.
data
.
hospitalCnt
;
vm
.
hospitalCnt
=
1
;
if
(
vm
.
hospitalCnt
==
1
)
{
vm
.
hospitalId
[
0
]
=
res
.
data
.
list
[
0
].
hospitalId
;
}
vm
.
searchType
();
}
});
},
searchType
()
{
if
(
vm
.
formInline
.
organization
.
length
==
1
)
{
vm
.
dataType
=
1
;
}
else
{
if
(
vm
.
hospitalCnt
==
1
)
{
vm
.
dataType
=
1
;
}
else
{
vm
.
dataType
=
0
;
}
}
console
.
log
(
'vm.hospitalCnt'
,
vm
.
hospitalCnt
);
if
(
vm
.
dataType
==
0
)
{
vm
.
checkRange
=
"1"
;
vm
.
checkTime
=
"1"
,
this
.
search
();
this
.
searchDwmy
();
}
else
{
this
.
searchDwmy
();
this
.
searchPerson
();
}
},
searchPerson
(
type
)
{
let
req
=
{
projectId
:
vm
.
projectId
,
beginDate
:
operationData
.
setDuringTime
(
vm
.
formInline
.
during
,
'begin'
),
endDate
:
operationData
.
setDuringTime
(
vm
.
formInline
.
during
,
'end'
),
hospitalIdList
:
vm
.
formInline
.
organization
,
originalFlag
:
vm
.
formInline
.
checked
==
false
?
0
:
1
,
regionId
:
vm
.
formInline
.
region
[
vm
.
formInline
.
region
.
length
-
1
],
timeFlag
:
vm
.
formInline
.
timeFlag
,
pageNo
:
vm
.
formTable
.
pageNo
,
pageSize
:
vm
.
formTable
.
pageSize
,
};
openLoading
(
vm
);
if
(
req
.
regionId
==
"000"
)
{
req
.
regionId
=
"310"
;
}
// console.log("0 req", req);
vm
.
POST
(
"stats/report/generalPersonal/"
+
vm
.
tableType
,
req
).
then
(
res
=>
{
closeLoading
(
vm
);
if
(
res
.
code
==
"000000"
)
{
if
(
type
!=
1
)
{
vm
.
initCard
(
res
.
data
.
percentData
);
}
vm
.
totalRows
=
res
.
data
.
totalSize
;
vm
.
tableData
=
res
.
data
.
personData
;
}
});
},
handlePerson
(
tab
,
event
)
{
vm
.
tableType
=
tab
.
name
;
vm
.
formTable
.
pageNo
=
1
;
vm
.
searchPerson
(
1
);
},
search
()
{
search
()
{
let
req
=
{
let
req
=
{
projectId
:
vm
.
projectId
,
projectId
:
vm
.
projectId
,
...
@@ -251,11 +381,47 @@ export default {
...
@@ -251,11 +381,47 @@ export default {
vm
.
initCard
(
res
.
data
.
percentData
);
vm
.
initCard
(
res
.
data
.
percentData
);
vm
.
setDistributeChart
(
res
.
data
.
certData
);
vm
.
setDistributeChart
(
res
.
data
.
certData
);
vm
.
setRecordChart
(
res
.
data
.
eduData
);
vm
.
setRecordChart
(
res
.
data
.
eduData
);
vm
.
set
DurationChart
(
);
vm
.
set
CertificateChart
(
res
.
data
.
studyRank
);
vm
.
set
CertificateChart
(
);
vm
.
set
DurationChart
(
res
.
data
.
costRank
);
}
}
});
});
},
},
searchDwmy
()
{
let
req
=
{
projectId
:
vm
.
projectId
,
beginDate
:
operationData
.
setDuringTime
(
vm
.
formInline
.
during
,
'begin'
),
endDate
:
operationData
.
setDuringTime
(
vm
.
formInline
.
during
,
'end'
),
hospitalIdList
:
vm
.
formInline
.
organization
,
originalFlag
:
vm
.
formInline
.
checked
==
false
?
0
:
1
,
regionId
:
vm
.
formInline
.
region
[
vm
.
formInline
.
region
.
length
-
1
],
timeFlag
:
vm
.
formInline
.
timeFlag
,
timeType
:
parseInt
(
vm
.
checkTime
),
dataType
:
parseInt
(
vm
.
checkRange
),
pageNo
:
vm
.
formDwmy
.
pageNo
,
pageSize
:
vm
.
formDwmy
.
pageSize
,
};
openLoading
(
vm
);
vm
.
POST
(
"stats/dwmy/"
,
req
).
then
(
res
=>
{
closeLoading
(
vm
);
if
(
res
.
code
==
"000000"
)
{
vm
.
tableDateTime
=
res
.
data
.
list
;
vm
.
totalCount
=
res
.
data
.
totalCount
;
for
(
let
i
=
0
;
i
<
res
.
data
.
title
.
length
;
i
++
)
{
vm
.
gradeFlag
[
i
]
=
res
.
data
.
title
[
i
].
show
;
}
}
});
},
handleCheckRange
(
tab
,
event
)
{
vm
.
formDwmy
.
pageNo
=
1
;
vm
.
checkRange
=
tab
.
name
;
vm
.
searchDwmy
();
},
handleCheckTime
(
value
)
{
vm
.
formDwmy
.
pageNo
=
1
;
vm
.
timeType
=
value
;
vm
.
searchDwmy
();
},
initCard
(
data
)
{
initCard
(
data
)
{
let
cardData
=
[
let
cardData
=
[
{
{
...
@@ -298,8 +464,6 @@ export default {
...
@@ -298,8 +464,6 @@ export default {
]
]
}
}
];
];
if
(
vm
.
dataType
==
0
)
{
cardData
[
0
].
value
=
data
.
hospitalRate
*
100
+
'%'
;
cardData
[
0
].
value
=
data
.
hospitalRate
*
100
+
'%'
;
cardData
[
0
].
hasNum
=
data
.
hospitalJoinCount
;
cardData
[
0
].
hasNum
=
data
.
hospitalJoinCount
;
cardData
[
0
].
shouldNum
=
data
.
hospitalCount
;
cardData
[
0
].
shouldNum
=
data
.
hospitalCount
;
...
@@ -307,7 +471,7 @@ export default {
...
@@ -307,7 +471,7 @@ export default {
cardData
[
1
].
value
=
data
.
doctorRate
*
100
+
'%'
;
cardData
[
1
].
value
=
data
.
doctorRate
*
100
+
'%'
;
cardData
[
1
].
hasNum
=
data
.
joinCount
;
cardData
[
1
].
hasNum
=
data
.
joinCount
;
cardData
[
1
].
shouldNum
=
data
.
doctorCount
;
cardData
[
1
].
shouldNum
=
data
.
doctorCount
;
if
(
vm
.
dataType
==
0
)
{
cardData
[
2
].
value
=
data
.
certificateRate
*
100
+
'%'
;
cardData
[
2
].
value
=
data
.
certificateRate
*
100
+
'%'
;
cardData
[
2
].
hasNum
=
data
.
finishCount
;
cardData
[
2
].
hasNum
=
data
.
finishCount
;
cardData
[
2
].
shouldNum
=
data
.
doctorCount
;
cardData
[
2
].
shouldNum
=
data
.
doctorCount
;
...
@@ -317,18 +481,6 @@ export default {
...
@@ -317,18 +481,6 @@ export default {
vm
.
cardData
=
cardData
.
slice
(
0
,
2
);
vm
.
cardData
=
cardData
.
slice
(
0
,
2
);
}
}
},
},
setTableDate
()
{
vm
.
tableDateTime
=
[
{
date
:
'2019-11-15'
,
shouldOrgan
:
7900
,
joinOrgan
:
7900
,
shouldPeople
:
8000
,
joinPeople
:
8000
,
getPeople
:
8000
,
}
];
},
updateResize
()
{
updateResize
()
{
setTimeout
(
function
()
{
setTimeout
(
function
()
{
window
.
onresize
=
function
()
{
window
.
onresize
=
function
()
{
...
@@ -339,8 +491,6 @@ export default {
...
@@ -339,8 +491,6 @@ export default {
};
};
},
100
);
},
100
);
},
},
setInitWidth
()
{
},
setDistributeChart
(
data
)
{
setDistributeChart
(
data
)
{
let
keyName
=
[
'未获证人数'
,
'优秀人数'
,
'良好人数'
,
'及格人数'
,
'不及格人数'
];
let
keyName
=
[
'未获证人数'
,
'优秀人数'
,
'良好人数'
,
'及格人数'
,
'不及格人数'
];
let
keyName2
=
[
'未获证人数占比'
,
'优秀人数占比'
,
'良好人数占比'
,
'及格人数占比'
,
'不及格人数占比'
];
let
keyName2
=
[
'未获证人数占比'
,
'优秀人数占比'
,
'良好人数占比'
,
'及格人数占比'
,
'不及格人数占比'
];
...
@@ -370,6 +520,10 @@ export default {
...
@@ -370,6 +520,10 @@ export default {
},
},
setRecordChart
(
data
)
{
setRecordChart
(
data
)
{
let
recordList
=
[
let
recordList
=
[
{
label
:
'博士后'
,
value
:
0
,
},
{
{
label
:
'博士'
,
label
:
'博士'
,
value
:
0
,
value
:
0
,
...
@@ -395,62 +549,128 @@ export default {
...
@@ -395,62 +549,128 @@ export default {
value
:
0
,
value
:
0
,
},
},
]
]
let
sum
=
[];
let
keyName
=
[
'未获证人数'
,
'获优秀人数'
,
'获良好人数'
,
'获及格人数'
,
'获不及格人数'
];
let
legendData
=
[];
let
xAxisData
=
[
"博士后"
,
"博士"
,
"硕士"
,
"本科"
,
"大专"
,
"中专及以下"
,
"其他"
];
for
(
let
i
=
0
;
i
<
data
.
length
;
i
++
)
{
for
(
let
i
=
0
;
i
<
data
.
length
;
i
++
)
{
console
.
log
(
'data[i]'
,
data
[
i
].
certList
.
length
);
// console.log('data[i]',data[i].certList
);
let
certList
=
data
[
i
].
certList
;
let
certList
=
data
[
i
].
certList
;
for
(
let
j
=
0
;
j
<
certList
.
length
;
i
++
)
{
legendData
.
push
(
keyName
[
data
[
i
].
certId
]);
recordList
[
j
].
value
+=
certList
[
j
].
value
;
for
(
let
a
=
0
;
a
<
certList
.
length
;
a
++
)
{
recordList
[
a
].
value
+=
certList
[
a
].
value
;
}
}
let
seriesData
=
[];
let
seriesArr
=
[];
let
seriesName
=
[];
let
index
=
0
;
for
(
let
x
=
data
.
length
-
1
;
x
>=
0
;
x
--
)
{
let
certList
=
data
[
x
].
certList
;
seriesArr
[
index
]
=
[];
seriesName
.
push
(
keyName
[
data
[
x
].
certId
]);
for
(
let
y
=
0
;
y
<
certList
.
length
;
y
++
)
{
seriesArr
[
index
].
push
(
certList
[
y
].
value
);
}
index
++
;
}
for
(
let
z
=
0
;
z
<
seriesArr
.
length
;
z
++
)
{
let
seriesObj
=
{
name
:
seriesName
[
z
],
type
:
"bar"
,
stack
:
"总量"
,
barWidth
:
18
,
label
:
{
normal
:
{
show
:
true
,
rotate
:
-
90
,
}
}
},
data
:
seriesArr
[
z
],
};
seriesData
.
push
(
seriesObj
);
}
}
// console.log('data',legendData,seriesArr,seriesData);
vm
.
recordList
=
recordList
;
vm
.
recordList
=
recordList
;
let
myChart
=
echarts
.
init
(
this
.
$refs
.
recordChart
);
let
myChart
=
echarts
.
init
(
this
.
$refs
.
recordChart
);
let
option
=
chartData
.
recordOption
();
let
option
=
chartData
.
recordOption
(
legendData
,
xAxisData
,
seriesData
);
myChart
.
setOption
(
option
);
myChart
.
setOption
(
option
);
vm
.
echartsData
.
chart1
=
myChart
;
vm
.
echartsData
.
chart1
=
myChart
;
vm
.
updateResize
();
vm
.
updateResize
();
},
},
setCertificateChart
()
{
changeRank
(
value
)
{
let
req
=
{
projectId
:
vm
.
projectId
,
beginDate
:
operationData
.
setDuringTime
(
vm
.
formInline
.
during
,
'begin'
),
endDate
:
operationData
.
setDuringTime
(
vm
.
formInline
.
during
,
'end'
),
hospitalIdList
:
vm
.
formInline
.
organization
,
originalFlag
:
vm
.
formInline
.
checked
==
false
?
0
:
1
,
regionId
:
vm
.
formInline
.
region
[
vm
.
formInline
.
region
.
length
-
1
],
timeFlag
:
vm
.
formInline
.
timeFlag
,
};
openLoading
(
vm
);
if
(
req
.
regionId
==
"000"
)
{
req
.
regionId
=
"310"
;
}
vm
.
POST
(
"stats/report/studyRank/"
+
value
,
req
).
then
(
res
=>
{
closeLoading
(
vm
);
vm
.
setCertificateChart
(
res
.
data
.
studyRank
);
});
},
setCertificateChart
(
data
)
{
let
xAxisData
=
[];
let
seriesJoin
=
[];
let
seriesCert
=
[];
let
seriesRate
=
[];
for
(
let
i
=
0
;
i
<
data
.
length
;
i
++
)
{
xAxisData
.
push
(
data
[
i
].
subName
);
seriesJoin
.
push
(
data
[
i
].
joinCount
);
seriesCert
.
push
(
data
[
i
].
certCount
);
seriesRate
.
push
(
data
[
i
].
certRate
);
}
let
myChart
=
echarts
.
init
(
this
.
$refs
.
certificateChart
);
let
myChart
=
echarts
.
init
(
this
.
$refs
.
certificateChart
);
let
option
=
chartData
.
certificateOption
();
let
option
=
chartData
.
certificateOption
(
xAxisData
,
seriesJoin
,
seriesCert
,
seriesRate
);
myChart
.
setOption
(
option
);
myChart
.
setOption
(
option
);
vm
.
echartsData
.
chart2
=
myChart
;
vm
.
echartsData
.
chart2
=
myChart
;
vm
.
updateResize
();
vm
.
updateResize
();
},
},
setDurationChart
()
{
setDurationChart
(
data
)
{
let
xAxisData
=
[];
let
seriesData
=
[];
for
(
let
i
=
0
;
i
<
data
.
length
;
i
++
)
{
xAxisData
.
push
(
data
[
i
].
subName
);
seriesData
.
push
(
data
[
i
].
costTime
);
}
let
myChart
=
echarts
.
init
(
this
.
$refs
.
durationChart
);
let
myChart
=
echarts
.
init
(
this
.
$refs
.
durationChart
);
let
option
=
chartData
.
durationOption
();
let
option
=
chartData
.
durationOption
(
xAxisData
,
seriesData
);
myChart
.
setOption
(
option
);
myChart
.
setOption
(
option
);
vm
.
echartsData
.
chart3
=
myChart
;
vm
.
echartsData
.
chart3
=
myChart
;
vm
.
updateResize
();
vm
.
updateResize
();
},
},
//日周月年分页
handleSizeDwmy
(
val
)
{
console
.
log
(
`每页
${
val
}
条`
);
vm
.
formDwmy
.
pageSize
=
val
;
vm
.
formDwmy
.
pageNo
=
1
;
vm
.
searchDwmy
();
},
handleCurrentDwmy
(
val
)
{
console
.
log
(
`当前页:
${
val
}
`
);
vm
.
formDwmy
.
pageNo
=
val
;
vm
.
searchDwmy
();
},
//机构人员分页
handleSizeChange
(
val
)
{
handleSizeChange
(
val
)
{
console
.
log
(
`每页
${
val
}
条`
);
console
.
log
(
`每页
${
val
}
条`
);
vm
.
formTable
.
pageSize
=
val
;
vm
.
formTable
.
pageSize
=
val
;
vm
.
formTable
.
pageNo
=
1
;
vm
.
formTable
.
pageNo
=
1
;
vm
.
searchPerson
(
1
);
},
},
handleCurrentChange
(
val
)
{
handleCurrentChange
(
val
)
{
console
.
log
(
`当前页:
${
val
}
`
);
console
.
log
(
`当前页:
${
val
}
`
);
vm
.
formTable
.
pageNo
=
val
;
vm
.
formTable
.
pageNo
=
val
;
vm
.
searchPerson
(
1
);
},
},
setTable
()
{
vm
.
tableData
=
[
{
id
:
1
,
rank
:
1
,
name
:
'伊娟'
,
sex
:
'女'
,
department
:
'内科'
,
join
:
1
,
complete
:
1
,
grade
:
'1级'
,
certificateDate
:
'2019-10-11'
,
record
:
100
,
learnTime
:
'4小时23分34秒'
,
}
];
}
}
}
};
};
</
script
>
</
script
>
...
@@ -544,8 +764,8 @@ export default {
...
@@ -544,8 +764,8 @@ export default {
}
}
}
}
.box-card2
{
.box-card2
{
width
:
4
8
%
;
width
:
4
9
%
;
margin-right
:
1
%
;
margin-right
:
2
%
;
}
}
.box-last
{
.box-last
{
margin-right
:
0
;
margin-right
:
0
;
...
@@ -562,13 +782,21 @@ export default {
...
@@ -562,13 +782,21 @@ export default {
width
:
100%
;
width
:
100%
;
margin-top
:
20px
;
margin-top
:
20px
;
padding
:
0
30px
0
30px
;
padding
:
0
30px
0
30px
;
.change-range
{
.el-tabs__header
{
margin-bottom
:
0px
;
}
.el-tabs__nav-scroll
{
margin-left
:
0px
;
}
}
.change-date
{
.change-date
{
position
:
relativ
e
;
position
:
absolut
e
;
float
:
right
;
top
:
0px
;
margin-bottom
:
5
px
;
right
:
30
px
;
}
}
}
}
.
chart-select
{
.
rank-radio
{
position
:
relative
;
position
:
relative
;
}
}
.chart-title
{
.chart-title
{
...
@@ -581,11 +809,51 @@ export default {
...
@@ -581,11 +809,51 @@ export default {
line-height
:
25px
;
line-height
:
25px
;
color
:
#000000
;
color
:
#000000
;
}
}
.chart
{
.chart-title-more
{
position
:
relative
;
width
:
100%
;
height
:
70px
;
p
{
position
:
relative
;
float
:
left
;
width
:
400px
;
margin-top
:
30px
;
margin-left
:
30px
;
height
:
25px
;
font-size
:
18px
;
font-weight
:
600
;
line-height
:
25px
;
color
:
#000000
;
}
.rank-radio
{
position
:
relative
;
margin
:
30px
30px
0
0
;
float
:
right
;
.el-radio-button__inner
{
padding
:
7px
11px
;
}
}
}
.chart-remarks
{
position
:
relative
;
height
:
66px
;
padding
:
20px
0
30px
30px
;
font-size
:
16px
;
font-weight
:
400
;
line-height
:
16px
;
color
:
#666666
;
}
.chartCert
{
position
:
relative
;
position
:
relative
;
margin
:
20px
auto
0
auto
;
margin
:
20px
auto
0
auto
;
width
:
860px
;
width
:
1064px
;
height
:
350px
;
height
:
462px
;
}
.chartDuration
{
position
:
relative
;
margin
:
20px
auto
0
auto
;
width
:
1064px
;
height
:
380px
;
}
}
.chart-distributeChart
{
.chart-distributeChart
{
position
:
relative
;
position
:
relative
;
...
@@ -660,10 +928,24 @@ export default {
...
@@ -660,10 +928,24 @@ export default {
position
:
relative
;
position
:
relative
;
margin-top
:
20px
;
margin-top
:
20px
;
width
:
100%
;
width
:
100%
;
.tabs-person
{
margin
:
0
auto
;
width
:
95%
;
.el-tabs__header
{
margin-bottom
:
0px
;
}
.el-tabs__nav-scroll
{
margin-left
:
0px
;
}
}
.person-title
{
.person-title
{
position
:
relative
;
margin
:
30px
0
25px
30px
;
height
:
25px
;
font-size
:
18px
;
font-size
:
18px
;
font-weight
:
700
;
font-weight
:
600
;
margin-bottom
:
20px
;
line-height
:
25px
;
color
:
#000000
;
}
}
.person-radio
{
.person-radio
{
margin-top
:
10px
;
margin-top
:
10px
;
...
@@ -684,6 +966,15 @@ export default {
...
@@ -684,6 +966,15 @@ export default {
}
}
}
}
}
}
.person-table
{
padding
:
0
;
width
:
95%
;
margin
:
0
auto
20px
auto
;
}
.pagination
{
margin-top
:
30px
;
margin-right
:
13px
;
}
}
}
}
}
</
style
>
</
style
>
\ No newline at end of file
src/views/learning/item-examination-analysis.vue
浏览文件 @
c9a22f5f
...
@@ -13,13 +13,21 @@
...
@@ -13,13 +13,21 @@
<div
class=
"spacing"
></div>
<div
class=
"spacing"
></div>
<div
class=
"chart-title"
>
完成项目考试次数情况
</div>
<div
class=
"chart-title"
>
完成项目考试次数情况
</div>
<div
class=
"chart"
id=
"examTimes"
ref=
"examTimes"
></div>
<div
class=
"chart"
id=
"examTimes"
ref=
"examTimes"
></div>
<div
class=
"chart-remarks"
>
注:本报表数据来源包括用户参加正式考试
,不包含摸底考试
。
</div>
<div
class=
"chart-remarks"
>
注:本报表数据来源包括用户参加正式考试
次数,不包含摸底考试次数
。
</div>
<div
class=
"spacing"
></div>
<div
class=
"spacing"
></div>
<div
class=
"chart-title"
>
完成项目考试分数情况
</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-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
class=
"chart"
id=
"examScore"
ref=
"examScore"
></div>
<div
class=
"chart-remarks"
>
注:本报表数据来源包括用户参加正式考试,不包含摸底考试。
</div>
<div
class=
"spacing"
></div>
<div
class=
"spacing"
></div>
<div
class=
"table"
>
<el-table
:data=
"tableData"
border
class=
"exam-table"
>
<el-table
:data=
"tableData"
style=
"width: 100%"
border
>
<el-table-column
prop=
"examType"
label=
"类型"
align=
"center"
></el-table-column>
<el-table-column
prop=
"examType"
label=
"类型"
align=
"center"
></el-table-column>
<el-table-column
prop=
"examName"
label=
"考试名"
min-width=
"150"
align=
"center"
></el-table-column>
<el-table-column
prop=
"examName"
label=
"考试名"
min-width=
"150"
align=
"center"
></el-table-column>
<el-table-column
prop=
"doctorCount"
label=
"应参与考试人数"
align=
"center"
></el-table-column>
<el-table-column
prop=
"doctorCount"
label=
"应参与考试人数"
align=
"center"
></el-table-column>
...
@@ -33,7 +41,7 @@
...
@@ -33,7 +41,7 @@
</el-table-column>
</el-table-column>
<el-table-column
label=
"操作"
fixed=
"right"
align=
"center"
min-width=
"100"
>
<el-table-column
label=
"操作"
fixed=
"right"
align=
"center"
min-width=
"100"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<el-button
type=
"text"
size=
"small"
@
click=
"goPage(scope.row)"
>
查看名单
</el-button>
<el-button
class=
"button-jump"
type=
"text"
size=
"small"
@
click=
"goPage(scope.row)"
>
查看名单
</el-button>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<div
slot=
"empty"
>
<div
slot=
"empty"
>
...
@@ -43,10 +51,10 @@
...
@@ -43,10 +51,10 @@
</div>
</div>
</div>
</div>
</el-table>
</el-table>
</div>
<!-- 分页 -->
<!-- 分页 -->
<div
class=
"pagination"
>
<div
class=
"pagination"
>
<el-pagination
<el-pagination
class=
"pagination"
background
background
@
size-change=
"handleSizeChange"
@
size-change=
"handleSizeChange"
@
current-change=
"handleCurrentChange"
@
current-change=
"handleCurrentChange"
...
@@ -97,7 +105,8 @@ export default {
...
@@ -97,7 +105,8 @@ export default {
chart0
:
{},
chart0
:
{},
chart1
:
{}
chart1
:
{}
},
},
scoreData
:
{}
examData
:
{},
rankType
:
'1'
,
};
};
},
},
created
()
{
created
()
{
...
@@ -145,7 +154,7 @@ export default {
...
@@ -145,7 +154,7 @@ export default {
vm
.
POST
(
"stats/report/exam"
,
req
).
then
(
res
=>
{
vm
.
POST
(
"stats/report/exam"
,
req
).
then
(
res
=>
{
closeLoading
(
vm
);
closeLoading
(
vm
);
if
(
res
.
code
==
"000000"
)
{
if
(
res
.
code
==
"000000"
)
{
vm
.
score
Data
=
res
.
data
;
vm
.
exam
Data
=
res
.
data
;
vm
.
setCardData
(
res
.
data
);
vm
.
setCardData
(
res
.
data
);
vm
.
setExamTimes
(
res
.
data
.
examTimesList
);
vm
.
setExamTimes
(
res
.
data
.
examTimesList
);
vm
.
setExamScore
(
res
.
data
.
examScoreList
);
vm
.
setExamScore
(
res
.
data
.
examScoreList
);
...
@@ -230,6 +239,16 @@ export default {
...
@@ -230,6 +239,16 @@ export default {
vm
.
echartsData
.
chart0
=
myChart
;
vm
.
echartsData
.
chart0
=
myChart
;
vm
.
updateResize
();
vm
.
updateResize
();
},
},
changeRank
(
value
)
{
console
.
log
(
value
);
if
(
value
==
'1'
)
{
vm
.
setExamScore
(
vm
.
examData
.
examScoreList
);
}
else
if
(
value
==
'5'
)
{
vm
.
setExamScore
(
vm
.
examData
.
fiveExamScoreList
);
}
else
if
(
value
==
'10'
)
{
vm
.
setExamScore
(
vm
.
examData
.
tenExamScoreList
);
}
},
setExamScore
(
data
)
{
setExamScore
(
data
)
{
let
myChart
=
echarts
.
init
(
this
.
$refs
.
examScore
);
let
myChart
=
echarts
.
init
(
this
.
$refs
.
examScore
);
let
xAxisData
=
[];
let
xAxisData
=
[];
...
@@ -356,23 +375,66 @@ export default {
...
@@ -356,23 +375,66 @@ export default {
}
}
.chart-title
{
.chart-title
{
position
:
relative
;
position
:
relative
;
margin-top
:
17
px
;
margin-top
:
30
px
;
margin-left
:
30px
;
margin-left
:
30px
;
height
:
25px
;
font-size
:
18px
;
font-weight
:
600
;
line-height
:
25px
;
color
:
#000000
;
}
.chart-title-more
{
position
:
relative
;
width
:
100%
;
width
:
100%
;
height
:
60px
;
height
:
70px
;
font-size
:
18px
;
p
{
font-weight
:
600
;
position
:
relative
;
line-height
:
60px
;
float
:
left
;
width
:
400px
;
margin-top
:
30px
;
margin-left
:
30px
;
height
:
25px
;
font-size
:
18px
;
font-weight
:
600
;
line-height
:
25px
;
color
:
#000000
;
color
:
#000000
;
}
}
.rank-radio
{
position
:
relative
;
margin
:
30px
30px
0
0
;
float
:
right
;
.el-radio-button__inner
{
padding
:
7px
29px
;
}
}
}
.chart
{
.chart
{
position
:
relative
;
position
:
relative
;
margin
:
20px
auto
0
auto
;
margin
:
0
auto
0
auto
;
width
:
860
px
;
width
:
1064
px
;
height
:
3
5
0px
;
height
:
3
8
0px
;
}
}
.chart-remarks
{
.chart-remarks
{
position
:
relative
;
position
:
relative
;
height
:
66px
;
padding
:
20px
0
30px
30px
;
font-size
:
16px
;
font-weight
:
400
;
line-height
:
16px
;
color
:
#666666
;
}
.exam-table
{
top
:
20px
;
padding
:
0
;
width
:
95%
;
margin
:
0
auto
20px
auto
;
.button-jump
{
color
:
#449284
;
}
}
.pagination
{
margin-top
:
30px
;
margin-right
:
13px
;
}
}
}
}
</
style
>
</
style
>
src/views/learning/item-learning-effect.vue
浏览文件 @
c9a22f5f
...
@@ -12,10 +12,12 @@
...
@@ -12,10 +12,12 @@
</div>
</div>
<div
class=
"spacing"
></div>
<div
class=
"spacing"
></div>
<div
class=
"chart-title"
>
不同学历完成项目前后正确率对比
</div>
<div
class=
"chart-title"
>
不同学历完成项目前后正确率对比
</div>
<div
class=
"chart"
ref=
"education"
></div>
<div
class=
"chartEdu"
ref=
"education"
></div>
<div
class=
"chart-remarks"
>
注:本报表数据来源仅仅统计同时包含摸底考和正式考的课程培训。
</div>
<div
class=
"spacing"
></div>
<div
class=
"spacing"
></div>
<div
class=
"chart-title"
>
培训前后知识点掌握情况
</div>
<div
class=
"chart-title"
>
培训前后知识点掌握情况
</div>
<div
class=
"chart"
ref=
"learning"
></div>
<div
class=
"chartLearn"
ref=
"learning"
></div>
<div
class=
"chart-remarks"
>
注:本报表数据来源仅包括有摸底考的课程培训。
</div>
</div>
</div>
</
template
>
</
template
>
...
@@ -190,21 +192,34 @@ export default {
...
@@ -190,21 +192,34 @@ export default {
}
}
.chart-title
{
.chart-title
{
position
:
relative
;
position
:
relative
;
margin-top
:
17
px
;
margin-top
:
30
px
;
margin-left
:
30px
;
margin-left
:
30px
;
width
:
100%
;
height
:
25px
;
height
:
60px
;
font-size
:
18px
;
font-size
:
18px
;
font-weight
:
600
;
font-weight
:
600
;
line-height
:
25px
;
line-height
:
60px
;
color
:
#000000
;
color
:
#000000
;
}
}
.chart
{
.chartEdu
{
position
:
relative
;
margin
:
20px
auto
0
auto
;
width
:
1064px
;
height
:
380px
;
}
.chartLearn
{
position
:
relative
;
position
:
relative
;
margin
:
20px
auto
0
auto
;
margin
:
20px
auto
0
auto
;
// width: 100%;
width
:
1064px
;
width
:
860px
;
height
:
462px
;
height
:
350px
;
}
.chart-remarks
{
position
:
relative
;
height
:
66px
;
padding
:
20px
0
30px
30px
;
font-size
:
16px
;
font-weight
:
400
;
line-height
:
16px
;
color
:
#666666
;
}
}
}
}
</
style
>
</
style
>
src/views/learning/item-list.vue
浏览文件 @
c9a22f5f
...
@@ -261,6 +261,8 @@ export default {
...
@@ -261,6 +261,8 @@ export default {
}
}
],
],
areaLen
:
1
,
areaLen
:
1
,
hospitalCnt
:
0
,
hospitalId
:
[],
};
};
},
},
computed
:
{
computed
:
{
...
@@ -285,21 +287,6 @@ export default {
...
@@ -285,21 +287,6 @@ export default {
},
},
methods
:
{
methods
:
{
getDisplay
(
type
)
{
getDisplay
(
type
)
{
// let req = {
// projectId: vm.projectId,
// projectName: vm.projectName,
// };
// openLoading(vm);
// vm.reportGET("report/portal/display", req).then(res => {
// closeLoading(vm);
// if (res.code == "000000") {
// vm.showOriginal = res.data.status;
// vm.roleType = res.data.roleType;
// vm.displayExam = res.data.existExam;
// vm.flag = res.data.flag;
// }
// });
let
reqInfo
=
{
let
reqInfo
=
{
projectId
:
vm
.
projectId
,
projectId
:
vm
.
projectId
,
};
};
...
@@ -436,6 +423,23 @@ export default {
...
@@ -436,6 +423,23 @@ export default {
vm
.
optionsRegion
=
operationData
.
setRegionOptionNew
(
vm
.
optionsRegion
=
operationData
.
setRegionOptionNew
(
res
.
data
.
list
res
.
data
.
list
);
);
// vm.gethHspitalsCnt();
vm
.
search
();
}
});
},
gethHspitalsCnt
()
{
let
req
=
{
projectId
:
vm
.
projectId
,
regionId
:
vm
.
formInline
.
region
[
vm
.
formInline
.
region
.
length
-
1
]
};
vm
.
GET
(
"stats/region/hospitals/cnt"
,
req
).
then
(
res
=>
{
if
(
res
.
code
==
"000000"
)
{
vm
.
hospitalCnt
=
res
.
data
.
hospitalCnt
;
vm
.
hospitalCnt
=
1
;
if
(
vm
.
hospitalCnt
==
1
)
{
vm
.
hospitalId
[
0
]
=
res
.
data
.
list
[
0
].
hospitalId
;
}
vm
.
search
();
vm
.
search
();
}
}
});
});
...
...
写
预览
Markdown
格式
0%
请重试
or
附加一个文件
附加文件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录