Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
P
pica_eagle_new
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
Close sidebar
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
xiaoping.di
pica_eagle_new
提交
7d3c9951
提交
7d3c9951
编写于
10月 09, 2021
作者:
xiaoping.di
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
考试优化
上级
1d993e9a
变更
28
隐藏空白字符变更
内嵌
并排
正在显示
28 个修改的文件
包含
1280 行增加
和
1118 行删除
+1280
-1118
.eslintignore
.eslintignore
+1
-1
exam.js
src/api/exam.js
+1
-1
storke.js
src/api/storke.js
+3
-3
index.vue
src/components/common/header/index.vue
+66
-66
cell.vue
src/components/pica-radio/cell.vue
+26
-13
index.vue
src/components/pica-radio/index.vue
+10
-8
item.vue
src/components/pica-radio/item.vue
+23
-14
aboutCourse.vue
src/components/stroke/aboutCourse.vue
+30
-30
componentMain.vue
src/components/stroke/componentMain.vue
+1
-1
examCodeInput.vue
src/components/stroke/examCodeInput.vue
+3
-1
examHistory.vue
src/components/stroke/examHistory.vue
+4
-4
examInfo.vue
src/components/stroke/examInfo.vue
+19
-23
headerSlider.vue
src/components/stroke/headerSlider.vue
+1
-1
livesExamHistory.vue
src/components/stroke/livesExamHistory.vue
+3
-3
localExamHistory.vue
src/components/stroke/localExamHistory.vue
+3
-3
picaHeader.vue
src/components/stroke/picaHeader.vue
+4
-3
projectContent.vue
src/components/stroke/projectContent.vue
+52
-107
textCollapse.vue
src/components/stroke/textCollapse.vue
+13
-20
vue-vant.js
src/plugins/vue-vant.js
+4
-2
index.js
src/router/index.js
+5
-5
Home.vue
src/views/Home.vue
+16
-16
exam_history.vue
src/views/exam/exam_history.vue
+62
-46
exam_wrong.vue
src/views/exam/exam_wrong.vue
+115
-77
index.vue
src/views/exam/index.vue
+334
-288
local_exam_history.vue
src/views/exam/local_exam_history.vue
+85
-78
index.vue
src/views/examResult/index.vue
+169
-152
index.js
src/views/stroke/index.js
+73
-63
index.vue
src/views/stroke/index.vue
+154
-89
未找到文件。
.eslintignore
浏览文件 @
7d3c9951
/h5-submodules-master
/h5-submodules-master
/node_modules
/node_modules
/src
src/api/exam.js
浏览文件 @
7d3c9951
...
@@ -16,7 +16,7 @@ export const getCoopExamQuest = async (param) => {
...
@@ -16,7 +16,7 @@ export const getCoopExamQuest = async (param) => {
});
});
};
};
//教培中间模块
//
教培中间模块
export
const
getCoopExam
=
async
(
param
)
=>
{
export
const
getCoopExam
=
async
(
param
)
=>
{
return
request
({
return
request
({
url
:
'app/projectExam/exam'
,
url
:
'app/projectExam/exam'
,
...
...
src/api/storke.js
浏览文件 @
7d3c9951
...
@@ -7,7 +7,7 @@ export const getCoopTop = async (param) => {
...
@@ -7,7 +7,7 @@ export const getCoopTop = async (param) => {
params
:
param
,
params
:
param
,
});
});
};
};
//教培底部模块
//
教培底部模块
export
const
getCoopBottom
=
async
(
param
)
=>
{
export
const
getCoopBottom
=
async
(
param
)
=>
{
return
request
({
return
request
({
url
:
'contents/projects/bottom'
,
url
:
'contents/projects/bottom'
,
...
@@ -16,7 +16,7 @@ export const getCoopBottom = async (param) => {
...
@@ -16,7 +16,7 @@ export const getCoopBottom = async (param) => {
});
});
};
};
//教培中间模块
//
教培中间模块
export
const
getCoopMiddle
=
async
(
param
)
=>
{
export
const
getCoopMiddle
=
async
(
param
)
=>
{
return
request
({
return
request
({
url
:
'contents/projects/middle'
,
url
:
'contents/projects/middle'
,
...
@@ -25,7 +25,7 @@ export const getCoopMiddle = async (param) => {
...
@@ -25,7 +25,7 @@ export const getCoopMiddle = async (param) => {
});
});
};
};
//教培考试信息模块
//
教培考试信息模块
export
const
getCoopLiveExam
=
async
(
param
)
=>
{
export
const
getCoopLiveExam
=
async
(
param
)
=>
{
return
request
({
return
request
({
url
:
`contents/projects/live/
${
param
.
id
}
`
,
url
:
`contents/projects/live/
${
param
.
id
}
`
,
...
...
src/components/common/header/index.vue
浏览文件 @
7d3c9951
<
template
>
<
template
>
<div
<div
class=
"nav-title"
class=
"nav-title"
:style=
"
:style=
"
'background:' +
'background:' +
bgColor +
bgColor +
';' +
';' +
'padding-top:' +
'padding-top:' +
paddingTop
paddingTop
"
"
>
<span
class=
"nav-back"
@
click=
"goBack"
>
<img
v-show=
"isBlack"
src=
"./images/left-array-black.png"
alt=
""
>
<img
v-show=
"!isBlack"
src=
"./images/left-array-whiter.png"
alt=
""
>
</span>
<span
v-show=
"bgColor !== 'none'"
class=
"nav-title-title"
>
{{
title
}}
</span>
<span
v-if=
"isShowRight"
class=
"nav-share"
@
click=
"rightAction"
>
<span
class=
"active-text"
>
客服
</span>
</span>
<span
v-if=
"!isShowRight"
class=
"nav-share"
@
click=
"rightAction"
>
>
<span
<span
class=
"
nav-back
"
class=
"
active-text
"
@
click=
"
goBack
"
@
click=
"
share
"
>
>
<img
<img
v-
show=
"isBlack
"
v-
if=
"isShowShare
"
src=
"./images/
left-array
-black.png"
src=
"./images/
share-icon
-black.png"
alt=
""
alt=
""
>
>
<img
<img
v-
show=
"!isBlack
"
v-
else-if=
"isShowShareWhite
"
src=
"./images/
left-array-whiter
.png"
src=
"./images/
share-icon-white
.png"
alt=
""
alt=
""
>
>
</span>
<span
v-show=
"bgColor !== 'none'"
class=
"nav-title-title"
>
{{
title
}}
</span>
<span
v-if=
"isShowRight"
class=
"nav-share"
@
click=
"rightAction"
>
<span
class=
"active-text"
>
客服
</span>
</span>
<span
v-if=
"!isShowRight"
class=
"nav-share"
@
click=
"rightAction"
>
<span
<span
class=
"active-text"
v-else-if=
"isCancel"
@
click=
"share"
class=
"nav-share"
@
click=
"cancelGoSearch"
>
>
<img
<span
class=
"active-text"
>
取消
</span>
v-if=
"isShowShare"
src=
"./images/share-icon-black.png"
alt=
""
>
<img
v-else-if=
"isShowShareWhite"
src=
"./images/share-icon-white.png"
alt=
""
>
<span
v-else-if=
"isCancel"
class=
"nav-share"
@
click=
"cancelGoSearch"
>
<span
class=
"active-text"
>
取消
</span>
</span>
</span>
</span>
</span>
</span>
<slot
name=
"externals"
/>
</span>
<!--
<span
class=
"nav-share"
>
<slot
name=
"externals"
/>
<!--
<span
class=
"nav-share"
>
<slot></slot>
<slot></slot>
</span>
-->
</span>
-->
</div>
</div>
<!--
<section
<!--
<section
v-if=
"!isWeb"
v-if=
"!isWeb"
:class=
"isFixheader ? 'nav-top fixed' : 'nav-top'"
:class=
"isFixheader ? 'nav-top fixed' : 'nav-top'"
...
@@ -188,17 +188,17 @@
...
@@ -188,17 +188,17 @@
};
};
try
{
try
{
this
.
$rocNative
.
getAppVersionCode
().
then
(
res
=>
{
this
.
$rocNative
.
getAppVersionCode
().
then
(
res
=>
{
if
(
res
.
versionCode
<
'3.7.8'
)
{
if
(
res
.
versionCode
<
'3.7.8'
)
{
console
.
log
(
'低版本'
);
console
.
log
(
'低版本'
);
}
else
{
}
else
{
window
.
prompt
(
JSON
.
stringify
({
window
.
prompt
(
JSON
.
stringify
({
functionName
:
'getPhoneParameters'
,
functionName
:
'getPhoneParameters'
,
paramJson
:
JSON
.
stringify
({}),
paramJson
:
JSON
.
stringify
({}),
callBackName
:
'getPhoneParameters'
callBackName
:
'getPhoneParameters'
}));
}));
}
}
});
});
}
catch
(
error
){
}
catch
(
error
)
{
console
.
log
(
122
);
console
.
log
(
122
);
}
}
},
},
...
...
src/components/pica-radio/cell.vue
浏览文件 @
7d3c9951
...
@@ -3,28 +3,41 @@
...
@@ -3,28 +3,41 @@
<!--A Cell -->
<!--A Cell -->
<
template
>
<
template
>
<div
:class=
"['wxc-cell', hasTopBorder && 'cell-top-border', hasBottomBorder && 'cell-bottom-border', hasMargin && 'cell-margin', hasVerticalIndent && 'cell-indent', desc && 'has-desc']"
<div
:class=
"['wxc-cell', hasTopBorder && 'cell-top-border', hasBottomBorder && 'cell-bottom-border', hasMargin && 'cell-margin', hasVerticalIndent && 'cell-indent', desc && 'has-desc']"
:style=
"cellStyle"
:style=
"cellStyle"
:accessible=
"autoAccessible"
:accessible=
"autoAccessible"
:aria-label=
"`$
{label},${title},${desc}`"
:aria-label=
"`$
{label},${title},${desc}`"
@click="cellClicked">
@click="cellClicked"
>
<slot
name=
"label"
>
<slot
name=
"label"
>
<div
v-if=
"label"
>
<div
v-if=
"label"
>
<div
class=
"cell-label-text"
>
{{
label
}}
</div>
<div
class=
"cell-label-text"
>
{{
label
}}
</div>
</div>
</div>
</slot>
</slot>
<div
class=
"cell-title"
>
<div
class=
"cell-title"
>
<slot
name=
"title"
>
<slot
name=
"title"
>
<div
class=
"cell-content"
>
{{
title
}}
</div>
<div
class=
"cell-content"
>
<div
class=
"cell-desc-text"
v-if=
"desc"
>
{{
desc
}}
</div>
{{
title
}}
</div>
<div
v-if=
"desc"
class=
"cell-desc-text"
>
{{
desc
}}
</div>
</slot>
</slot>
</div>
</div>
<slot
name=
"value"
></slot>
<slot
name=
"value"
/>
<slot></slot>
<slot
/>
<img
:src=
"arrowIcon"
<img
class=
"cell-arrow-icon"
v-if=
"hasArrow"
:aria-hidden=
"true"
:src=
"arrowIcon"
v-if=
"hasArrow"
/>
class=
"cell-arrow-icon"
:aria-hidden=
"true"
>
</div>
</div>
</
template
>
</
template
>
...
@@ -92,7 +105,7 @@
...
@@ -92,7 +105,7 @@
</
style
>
</
style
>
<
script
>
<
script
>
//import {Utils} from 'weex-ui';
//
import {Utils} from 'weex-ui';
export
default
{
export
default
{
props
:
{
props
:
{
...
@@ -149,7 +162,7 @@
...
@@ -149,7 +162,7 @@
cellClicked
(
e
)
{
cellClicked
(
e
)
{
const
link
=
this
.
link
;
const
link
=
this
.
link
;
this
.
$emit
(
'wxcCellClicked'
,
{
e
});
this
.
$emit
(
'wxcCellClicked'
,
{
e
});
//link && Utils.goToH5Page(link, true);
//
link && Utils.goToH5Page(link, true);
}
}
}
}
};
};
...
...
src/components/pica-radio/index.vue
浏览文件 @
7d3c9951
...
@@ -4,11 +4,13 @@
...
@@ -4,11 +4,13 @@
<
template
>
<
template
>
<div>
<div>
<wxc-radio
v-for=
"(item,i) in updateList"
<wxc-radio
:config=
"config"
v-for=
"(item,i) in updateList"
v-bind=
"item"
:key=
"i"
@
wxcRadioItemChecked=
"wxcRadioItemChecked(i,$event)"
:config=
"config"
:key=
"i"
></wxc-radio>
v-bind=
"item"
@
wxcRadioItemChecked=
"wxcRadioItemChecked(i,$event)"
/>
</div>
</div>
</
template
>
</
template
>
...
@@ -54,7 +56,7 @@
...
@@ -54,7 +56,7 @@
this
.
setListChecked
(
this
.
list
);
this
.
setListChecked
(
this
.
list
);
},
},
methods
:
{
methods
:
{
setListChecked
(
list
){
setListChecked
(
list
)
{
if
(
list
&&
list
.
length
>
0
)
{
if
(
list
&&
list
.
length
>
0
)
{
list
.
forEach
((
item
,
i
)
=>
{
list
.
forEach
((
item
,
i
)
=>
{
item
.
checked
&&
(
this
.
checkedIndex
=
i
);
item
.
checked
&&
(
this
.
checkedIndex
=
i
);
...
@@ -65,8 +67,8 @@
...
@@ -65,8 +67,8 @@
const
oldIndex
=
this
.
checkedIndex
;
const
oldIndex
=
this
.
checkedIndex
;
const
{
value
,
title
}
=
this
.
list
[
i
];
const
{
value
,
title
}
=
this
.
list
[
i
];
this
.
checkedIndex
=
i
;
this
.
checkedIndex
=
i
;
this
.
$emit
(
'wxcRadioListChecked'
,
{
value
,
title
,
oldIndex
,
index
:
i
,
item
:
this
.
list
[
i
]
})
this
.
$emit
(
'wxcRadioListChecked'
,
{
value
,
title
,
oldIndex
,
index
:
i
,
item
:
this
.
list
[
i
]
});
}
}
}
}
}
}
;
</
script
>
</
script
>
src/components/pica-radio/item.vue
浏览文件 @
7d3c9951
...
@@ -3,17 +3,26 @@
...
@@ -3,17 +3,26 @@
<
template
>
<
template
>
<div>
<div>
<div
:has-bottom-border=
"false"
class=
"radio-all"
<div
@
click=
"wxcCellClicked"
:has-bottom-border=
"false"
:accessible=
"true"
class=
"radio-all"
:aria-label=
"`$
{title},状态为${checked?'已选中':'未选中'},${disabled?'不可更改':''}`">
:accessible=
"true"
<img
:src=
"radioIcon"
:aria-label=
"`$
{title},状态为${checked?'已选中':'未选中'},${disabled?'不可更改':''}`"
slot=
"label"
@click="wxcCellClicked"
class=
"radio"
/>
>
<div
:style=
"
{color:color}"
<img
class="title-text"
slot=
"label"
slot="title">
{{
title
}}
</div>
:src=
"radioIcon"
class=
"radio"
>
<div
slot=
"title"
:style=
"
{color:color}"
class="title-text"
>
{{
title
}}
</div>
</div>
</div>
</div>
</div>
</
template
>
</
template
>
...
@@ -38,7 +47,7 @@
...
@@ -38,7 +47,7 @@
</
style
>
</
style
>
<
script
>
<
script
>
import
WxcCell
from
'./cell.vue'
import
WxcCell
from
'./cell.vue'
;
const
CHECKED
=
'https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/radio_checked.png'
;
const
CHECKED
=
'https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/radio_checked.png'
;
const
UNCHECKED
=
'https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/radio_unchecked.png'
;
const
UNCHECKED
=
'https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/radio_unchecked.png'
;
...
@@ -80,7 +89,7 @@
...
@@ -80,7 +89,7 @@
const
mergeIcon
=
icon
;
const
mergeIcon
=
icon
;
config
.
checkedIcon
&&
(
mergeIcon
[
0
]
=
config
.
checkedIcon
);
config
.
checkedIcon
&&
(
mergeIcon
[
0
]
=
config
.
checkedIcon
);
config
.
disabledIcon
&&
(
mergeIcon
[
1
]
=
config
.
disabledIcon
);
config
.
disabledIcon
&&
(
mergeIcon
[
1
]
=
config
.
disabledIcon
);
return
checked
?
CHECKED
:
UNCHECKED
;
return
checked
?
CHECKED
:
UNCHECKED
;
},
},
backgroundColor
()
{
backgroundColor
()
{
const
{
disabled
}
=
this
;
const
{
disabled
}
=
this
;
...
@@ -97,9 +106,9 @@
...
@@ -97,9 +106,9 @@
wxcCellClicked
()
{
wxcCellClicked
()
{
const
{
disabled
,
value
}
=
this
;
const
{
disabled
,
value
}
=
this
;
if
(
!
disabled
)
{
if
(
!
disabled
)
{
this
.
$emit
(
'wxcRadioItemChecked'
,
{
value
,
disabled
})
this
.
$emit
(
'wxcRadioItemChecked'
,
{
value
,
disabled
})
;
}
}
}
}
}
}
}
}
;
</
script
>
</
script
>
src/components/stroke/aboutCourse.vue
浏览文件 @
7d3c9951
...
@@ -18,7 +18,7 @@
...
@@ -18,7 +18,7 @@
<img
<img
class=
"see_more_img"
class=
"see_more_img"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/arrow_right_gray%403x.png"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/arrow_right_gray%403x.png"
/
>
>
</div>
</div>
</div>
</div>
<div
<div
...
@@ -42,7 +42,7 @@
...
@@ -42,7 +42,7 @@
<img
<img
class=
"course_img"
class=
"course_img"
:src=
"value.app_course_url"
:src=
"value.app_course_url"
/
>
>
<div
class=
"course_info"
>
<div
class=
"course_info"
>
{{
messages
(
value
.
course_name
,
18
)
}}
{{
messages
(
value
.
course_name
,
18
)
}}
</div>
</div>
...
@@ -51,7 +51,7 @@
...
@@ -51,7 +51,7 @@
<img
<img
class=
"play_img"
class=
"play_img"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/play_gray%403x.png"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/play_gray%403x.png"
/
>
>
<div
class=
"play_count"
>
<div
class=
"play_count"
>
{{
value
.
join_num
}}
{{
value
.
join_num
}}
</div>
</div>
...
@@ -70,7 +70,7 @@
...
@@ -70,7 +70,7 @@
<
script
>
<
script
>
// text collapse
// text collapse
//const configurationModule = weex.requireModule('configurationModule');
//
const configurationModule = weex.requireModule('configurationModule');
export
default
{
export
default
{
components
:
{},
components
:
{},
...
@@ -105,37 +105,37 @@
...
@@ -105,37 +105,37 @@
enterCourse
(
obj
)
{
enterCourse
(
obj
)
{
this
.
intoCourse
(
obj
);
this
.
intoCourse
(
obj
);
},
},
intoCourseMore
(
obj
){
intoCourseMore
(
obj
)
{
let
appModuleModel
=
[
const
appModuleModel
=
[
{
{
'key'
:
'className'
,
'key'
:
'className'
,
'value'
:
'value=com.picahealth.yunque.activitys.famousteacherschool.AllDiseaseActivity###MicroProfessionTableController'
'value'
:
'value=com.picahealth.yunque.activitys.famousteacherschool.AllDiseaseActivity###MicroProfessionTableController'
},
},
{
{
key
:
'pointsId'
,
key
:
'pointsId'
,
value
:
obj
.
points_id
value
:
obj
.
points_id
}
}
];
];
this
.
$rocNative
.
dispatchEventByModuleCode
({
this
.
$rocNative
.
dispatchEventByModuleCode
({
modeCode
:
'M200'
,
modeCode
:
'M200'
,
jsonString
:
appModuleModel
,
jsonString
:
appModuleModel
,
});
});
},
},
intoCourse
(
obj
){
intoCourse
(
obj
)
{
let
appModuleModel
=
[
const
appModuleModel
=
[
{
{
'key'
:
'className'
,
'key'
:
'className'
,
'value'
:
'value=com.picahealth.yunque.activitys.courseplaynew.CourseIntroduceActivity###WeexCourseIntroViewController'
'value'
:
'value=com.picahealth.yunque.activitys.courseplaynew.CourseIntroduceActivity###WeexCourseIntroViewController'
},
},
{
{
key
:
'courseId'
,
key
:
'courseId'
,
value
:
obj
.
course_id
value
:
obj
.
course_id
}
}
];
];
this
.
$rocNative
.
dispatchEventByModuleCode
({
this
.
$rocNative
.
dispatchEventByModuleCode
({
modeCode
:
'M200'
,
modeCode
:
'M200'
,
jsonString
:
appModuleModel
,
jsonString
:
appModuleModel
,
});
});
}
}
},
},
...
...
src/components/stroke/componentMain.vue
浏览文件 @
7d3c9951
...
@@ -33,7 +33,7 @@
...
@@ -33,7 +33,7 @@
import
textCollapse
from
'./textCollapse'
;
import
textCollapse
from
'./textCollapse'
;
import
projectContent
from
'./projectContent'
;
import
projectContent
from
'./projectContent'
;
import
aboutCourse
from
'./aboutCourse'
;
import
aboutCourse
from
'./aboutCourse'
;
//const globalEvent = weex.requireModule('globalEvent');
//
const globalEvent = weex.requireModule('globalEvent');
export
default
{
export
default
{
components
:
{
components
:
{
headerSlider
,
headerSlider
,
...
...
src/components/stroke/examCodeInput.vue
浏览文件 @
7d3c9951
...
@@ -34,7 +34,9 @@
...
@@ -34,7 +34,9 @@
:maxlength=
"number"
:maxlength=
"number"
autofocus=
"true"
autofocus=
"true"
autocorrect=
"off"
autocorrect=
"off"
autocomplete=
"off"
autocapitalize=
"off"
@
keyup=
"handleInput($event)"
autocomplete=
"off"
autocapitalize=
"off"
@
keyup=
"handleInput($event)"
>
>
<label
for=
"code"
>
<label
for=
"code"
>
<div
class=
"code-input-wrap"
>
<div
class=
"code-input-wrap"
>
...
...
src/components/stroke/examHistory.vue
浏览文件 @
7d3c9951
...
@@ -18,7 +18,7 @@
...
@@ -18,7 +18,7 @@
<img
<img
class=
"history_title_img"
class=
"history_title_img"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/arrow_right_gray%403x.png"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/arrow_right_gray%403x.png"
/
>
>
</div>
</div>
</div>
</div>
<div
<div
...
@@ -34,12 +34,12 @@
...
@@ -34,12 +34,12 @@
v-if=
"value.passFlag == 5"
v-if=
"value.passFlag == 5"
class=
"history_item_radio"
class=
"history_item_radio"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/eee%403x.png"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/eee%403x.png"
/
>
>
<img
<img
v-if=
"value.passFlag != 5"
v-if=
"value.passFlag != 5"
class=
"history_item_radio"
class=
"history_item_radio"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/ee%403x.png"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/ee%403x.png"
/
>
>
<div
<div
v-if=
"key+1
<historyList
.
length
"
v-if=
"key+1
<historyList
.
length
"
class=
"history_item_radio_bottom"
class=
"history_item_radio_bottom"
...
@@ -82,7 +82,7 @@
...
@@ -82,7 +82,7 @@
v-if=
"value.wrongNo > 0"
v-if=
"value.wrongNo > 0"
class=
"history_item_right_img"
class=
"history_item_right_img"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/arrow_right_gray%403x.png"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/arrow_right_gray%403x.png"
/
>
>
</div>
</div>
</div>
</div>
</div>
</div>
...
...
src/components/stroke/examInfo.vue
浏览文件 @
7d3c9951
...
@@ -5,17 +5,17 @@
...
@@ -5,17 +5,17 @@
v-if=
"type == 0"
v-if=
"type == 0"
class=
"result_image"
class=
"result_image"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/yh%403x.png"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/yh%403x.png"
/
>
>
<img
<img
v-if=
"type == 1"
v-if=
"type == 1"
class=
"result_image"
class=
"result_image"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/tg%403x.png"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/tg%403x.png"
/
>
>
<img
<img
v-if=
"type == 2"
v-if=
"type == 2"
class=
"result_image"
class=
"result_image"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/ks%403x.png"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/ks%403x.png"
/
>
>
<div
class=
"exam_name"
>
<div
class=
"exam_name"
>
<div
<div
v-if=
"type == 2"
v-if=
"type == 2"
...
@@ -66,7 +66,7 @@
...
@@ -66,7 +66,7 @@
<img
<img
class=
"exam_time_img"
class=
"exam_time_img"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/arrow_right_black%403x.png"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/arrow_right_black%403x.png"
/
>
>
</div>
</div>
</div>
</div>
<div
<div
...
@@ -113,11 +113,11 @@
...
@@ -113,11 +113,11 @@
<
script
>
<
script
>
// text collapse
// text collapse
//const modal = weex.requireModule('modal');
//
const modal = weex.requireModule('modal');
// import {click_start_test, click_test_completed, click_retest, click_mid_wrong_collection} from '../../util/buryingPoint';
// import {click_start_test, click_test_completed, click_retest, click_mid_wrong_collection} from '../../util/buryingPoint';
//import WxcDialog from '../../components/wxc-dialog';
//
import WxcDialog from '../../components/wxc-dialog';
export
default
{
export
default
{
//components: {WxcDialog},
//
components: {WxcDialog},
props
:[
'type'
,
'exam'
,
'startNum'
,
'endNum'
,
'examType'
,
'options'
,
'hasWrong'
],
props
:[
'type'
,
'exam'
,
'startNum'
,
'endNum'
,
'examType'
,
'options'
,
'hasWrong'
],
data
()
{
data
()
{
return
{
return
{
...
@@ -163,13 +163,13 @@
...
@@ -163,13 +163,13 @@
const
endDate
=
new
Date
(
this
.
options
.
endDate
);
const
endDate
=
new
Date
(
this
.
options
.
endDate
);
const
date
=
new
Date
();
const
date
=
new
Date
();
if
(
date
>
endDate
)
{
if
(
date
>
endDate
)
{
this
.
showExamFinishedTip
=
true
;
this
.
showExamFinishedTip
=
true
;
this
.
$dialog
.
alert
({
this
.
$dialog
.
alert
({
title
:
''
,
title
:
''
,
message
:
"考试已结束"
,
message
:
'考试已结束'
,
confirmButtonText
:
"我知道了"
confirmButtonText
:
'我知道了'
})
});
return
;
return
;
}
}
}
}
// this.appBuryingPointEntrust({
// this.appBuryingPointEntrust({
...
@@ -178,12 +178,12 @@
...
@@ -178,12 +178,12 @@
// });
// });
const
query
=
{
const
query
=
{
examId
:
obj
.
examId
,
examId
:
obj
.
examId
,
// examType: this.options.examType,
examType
:
this
.
$route
.
query
.
examType
,
examType
:
this
.
$route
.
query
.
examType
,
endDate
:
this
.
$route
.
query
.
endDate
endDate
:
this
.
$route
.
query
.
endDate
};
};
if
(
this
.
startNum
>
0
)
{
if
(
this
.
startNum
>
0
)
{
Vue
.
set
(
query
,
'startNum'
,
this
.
startNum
);
query
.
startNum
=
this
.
startNum
;
// Vue.set(query, 'startNum', this.startNum);
}
}
this
.
$router
.
push
({
this
.
$router
.
push
({
path
:
'/exam'
,
path
:
'/exam'
,
...
@@ -198,7 +198,7 @@
...
@@ -198,7 +198,7 @@
this
.
$router
.
push
({
this
.
$router
.
push
({
path
:
'/stoke'
path
:
'/stoke'
});
});
//weex.requireModule('CourseModule').goBack(2);
//
weex.requireModule('CourseModule').goBack(2);
}
else
{
}
else
{
this
.
$router
.
push
({
this
.
$router
.
push
({
path
:
'/'
path
:
'/'
...
@@ -206,16 +206,12 @@
...
@@ -206,16 +206,12 @@
}
}
}
}
},
},
goExamStart
(
obj
)
{
// 我要重考
goExamStart
()
{
// 我要重考
if
(
!
this
.
endNum
)
{
if
(
!
this
.
endNum
)
{
this
.
$toast
(
'您尚未完成相关培训课程的学习'
)
this
.
$toast
(
'您尚未完成相关培训课程的学习'
)
;
}
else
{
}
else
{
this
.
$emit
(
'reExamStart'
);
this
.
$emit
(
'reExamStart'
);
}
}
// this.appBuryingPointEntrust({
// ...click_retest,
// createdTime: new Date().getTime()
// });
},
},
},
},
...
...
src/components/stroke/headerSlider.vue
浏览文件 @
7d3c9951
...
@@ -17,7 +17,7 @@
...
@@ -17,7 +17,7 @@
v-lazy=
"img.image_url"
v-lazy=
"img.image_url"
class=
"image"
class=
"image"
resize=
"stretch"
resize=
"stretch"
/
>
>
</van-swipe-item>
</van-swipe-item>
</van-swipe>
</van-swipe>
</div>
</div>
...
...
src/components/stroke/livesExamHistory.vue
浏览文件 @
7d3c9951
...
@@ -18,7 +18,7 @@
...
@@ -18,7 +18,7 @@
<img
<img
class=
"history_title_img"
class=
"history_title_img"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/arrow_right_gray%403x.png"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/arrow_right_gray%403x.png"
/
>
>
</div>
</div>
</div>
</div>
...
@@ -46,7 +46,7 @@
...
@@ -46,7 +46,7 @@
<img
<img
class=
"item3_right_arrow"
class=
"item3_right_arrow"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/arrow_right_black%403x.png"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/arrow_right_black%403x.png"
/
>
>
</div>
</div>
<div
<div
v-if=
"value.restTimes > 0 || value.restTimes == -1"
v-if=
"value.restTimes > 0 || value.restTimes == -1"
...
@@ -65,7 +65,7 @@
...
@@ -65,7 +65,7 @@
<img
<img
class=
"empty-img"
class=
"empty-img"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/wu%402x.png"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/wu%402x.png"
/
>
>
<div
class=
"empty-text"
>
<div
class=
"empty-text"
>
暂无现场考试记录
暂无现场考试记录
</div>
</div>
...
...
src/components/stroke/localExamHistory.vue
浏览文件 @
7d3c9951
...
@@ -18,7 +18,7 @@
...
@@ -18,7 +18,7 @@
<img
<img
class=
"history_title_img"
class=
"history_title_img"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/arrow_right_gray%403x.png"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/arrow_right_gray%403x.png"
/
>
>
</div>
</div>
</div>
</div>
...
@@ -46,7 +46,7 @@
...
@@ -46,7 +46,7 @@
<img
<img
class=
"item3_right_arrow"
class=
"item3_right_arrow"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/arrow_right_black%403x.png"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/arrow_right_black%403x.png"
/
>
>
</div>
</div>
<div
<div
v-if=
"value.restTimes > 0 || value.restTimes == -1"
v-if=
"value.restTimes > 0 || value.restTimes == -1"
...
@@ -65,7 +65,7 @@
...
@@ -65,7 +65,7 @@
<img
<img
class=
"empty-img"
class=
"empty-img"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/wu%402x.png"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/wu%402x.png"
/
>
>
<div
class=
"empty-text"
>
<div
class=
"empty-text"
>
暂无现场考试记录
暂无现场考试记录
</div>
</div>
...
...
src/components/stroke/picaHeader.vue
浏览文件 @
7d3c9951
...
@@ -13,18 +13,19 @@
...
@@ -13,18 +13,19 @@
src=
"http://pica-pro.oss-cn-shanghai.aliyuncs.com/md_resources/back_gray.png"
src=
"http://pica-pro.oss-cn-shanghai.aliyuncs.com/md_resources/back_gray.png"
style=
"width: 25px; height: 25px;"
style=
"width: 25px; height: 25px;"
@
click=
"goBack"
@
click=
"goBack"
/
>
>
<div
<div
v-if=
"!showHeader"
v-if=
"!showHeader"
style=
"width:25px;height: 25px;"
style=
"width:25px;height: 25px;"
>
>
</div>
</div>
<img
<img
v-if=
"type == 2"
v-if=
"type == 2"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/close%403x.png"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/close%403x.png"
style=
"width: 35px; height: 35px;"
style=
"width: 35px; height: 35px;"
@
click=
"goBack"
@
click=
"goBack"
/
>
>
<div
class=
"title"
>
<div
class=
"title"
>
{{
title
}}
{{
title
}}
</div>
</div>
...
...
src/components/stroke/projectContent.vue
浏览文件 @
7d3c9951
...
@@ -20,7 +20,7 @@
...
@@ -20,7 +20,7 @@
<img
<img
class=
"advice_auth_img"
class=
"advice_auth_img"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/cup%403x.png"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/cup%403x.png"
/
>
>
<div
class=
"advice_auth_text"
>
<div
class=
"advice_auth_text"
>
<div
class=
"advice_auth_text_content"
>
<div
class=
"advice_auth_text_content"
>
{{
examContent
.
all_exam_writing
}}
{{
examContent
.
all_exam_writing
}}
...
@@ -37,7 +37,7 @@
...
@@ -37,7 +37,7 @@
v-if=
"examContent.exam_order == 5"
v-if=
"examContent.exam_order == 5"
class=
"circle_gray"
class=
"circle_gray"
:src=
"examContent.allowFlag==1 ? circleYellow: circleGray"
:src=
"examContent.allowFlag==1 ? circleYellow: circleGray"
/
>
>
<div
<div
v-if=
"examContent.exam_order == 1"
v-if=
"examContent.exam_order == 1"
class=
"order_number"
class=
"order_number"
...
@@ -125,34 +125,17 @@
...
@@ -125,34 +125,17 @@
<img
<img
class=
"item3_right_arrow"
class=
"item3_right_arrow"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/arrow_right_black%403x.png"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/arrow_right_black%403x.png"
/
>
>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!--
<wxc-dialog
title=
""
:content=
"setContent"
:show=
"isQuery"
cancel-text=
"取消"
confirm-text=
"去考试"
main-btn-color=
"#35cbca"
@
wxcDialogCancelBtnClicked=
"wxcDialogCancelBtnClicked"
@
wxcDialogConfirmBtnClicked=
"wxcDialogConfirmBtnClicked"
/>
1111-->
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
// text collapse
import
Vue
from
'vue'
;
// const modal = weex.requireModule('modal');
// const configurationModule = weex.requireModule('configurationModule');
// import wxcDialog from '../wxc-dialog';
// const storage = weex.requireModule('storage');
import
{
getCoopRoleCode
}
from
'@/api/content.js'
;
import
{
getCoopRoleCode
}
from
'@/api/content.js'
;
export
default
{
export
default
{
//components: {wxcDialog},
props
:[
'examContent'
,
'hasAuth'
,
'keyIndex'
],
props
:[
'examContent'
,
'hasAuth'
,
'keyIndex'
],
data
()
{
data
()
{
return
{
return
{
...
@@ -240,45 +223,28 @@
...
@@ -240,45 +223,28 @@
roleCode
:
'R001'
,
roleCode
:
'R001'
,
user_role_list
:
''
user_role_list
:
''
};
};
getCoopRoleCode
().
catch
(
res
=>
{
getCoopRoleCode
().
catch
(
res
=>
{
if
(
res
.
data
&&
res
.
data
.
respCode
==
200
)
{
if
(
res
.
data
&&
res
.
data
.
respCode
==
200
)
{
sendObj
.
roleCode
=
res
.
data
.
roleCode
;
sendObj
.
roleCode
=
res
.
data
.
roleCode
;
const
mess
=
obj
.
field_requirement
?
obj
.
field_requirement
:
-
1
;
const
mess
=
obj
.
field_requirement
?
obj
.
field_requirement
:
-
1
;
sendObj
.
field_requirement
=
mess
;
sendObj
.
field_requirement
=
mess
;
sendObj
.
user_role_list
=
obj
.
user_role_list
;
sendObj
.
user_role_list
=
obj
.
user_role_list
;
console
.
log
(
sendObj
,
"sendObjsendObj"
)
console
.
log
(
sendObj
,
'sendObjsendObj'
);
if
(
sendObj
.
user_role_list
==
"R004"
)
{
if
(
sendObj
.
user_role_list
==
'R004'
)
{
this
.
dataOkForExam
();
this
.
dataOkForExam
();
}
}
//configurationModule.checkIDCardAndEducation(sendObj); 111
//
configurationModule.checkIDCardAndEducation(sendObj); 111
}
else
{
}
else
{
this
.
$toast
(
"网络异常,请稍后再试"
);
this
.
$toast
(
'网络异常,请稍后再试'
);
}
}
});
});
// this.GET('contents/projects/guestRoleCode', {}, (res) => {
// // modal.alert({message:'goIDCardAndEdu ' + res})
// const configurationModule = weex.requireModule('configurationModule');
// if(res.data && res.data.respCode == 200) {
// sendObj.roleCode = res.data.roleCode;
// const mess = obj.field_requirement ? obj.field_requirement : -1;
// sendObj.field_requirement = mess;
// sendObj.user_role_list = obj.user_role_list;
// // modal.alert({message:'goIDCardAndEdu 200' + JSON.stringify(sendObj)})
// configurationModule.checkIDCardAndEducation(sendObj);
// }else {
// modal.toast({
// message: '网络异常,请稍后再试',
// duration: 1.0
// });
// }
// });
},
},
dataOkForExam
()
{
dataOkForExam
()
{
this
.
addLogicForExam
();
this
.
addLogicForExam
();
},
},
goExam
(
index
,
obj
)
{
goExam
(
index
,
obj
)
{
this
.
$storejs
.
set
(
'keyIndex'
,
this
.
keyIndex
)
this
.
$storejs
.
set
(
'keyIndex'
,
this
.
keyIndex
);
//localStorage.setItem('keyIndex', this.keyIndex)
//
localStorage.setItem('keyIndex', this.keyIndex)
if
(
this
.
examContent
.
allowFlag
==
1
)
{
// 加入项目(项目考试组件有权限)
if
(
this
.
examContent
.
allowFlag
==
1
)
{
// 加入项目(项目考试组件有权限)
this
.
currentIndex
=
index
;
this
.
currentIndex
=
index
;
this
.
currentObj
=
obj
;
this
.
currentObj
=
obj
;
...
@@ -288,7 +254,7 @@
...
@@ -288,7 +254,7 @@
this
.
$toast
(
this
.
examNotStartLabl
);
this
.
$toast
(
this
.
examNotStartLabl
);
}
}
}
else
{
// 未加入项目
}
else
{
// 未加入项目
this
.
$toast
(
this
.
examContent
.
show_text
);
this
.
$toast
(
this
.
examContent
.
show_text
);
}
}
},
},
...
@@ -315,7 +281,6 @@
...
@@ -315,7 +281,6 @@
const
isGoExam
=
this
.
getBoolForExam
(
obj
);
const
isGoExam
=
this
.
getBoolForExam
(
obj
);
if
(
isGoExam
)
{
// 去重考
if
(
isGoExam
)
{
// 去重考
if
((
index
==
0
||
index
==
1
)
||
(
index
>
0
&&
!
this
.
examContent
.
allLists
[
index
-
1
].
course_id
))
{
//
if
((
index
==
0
||
index
==
1
)
||
(
index
>
0
&&
!
this
.
examContent
.
allLists
[
index
-
1
].
course_id
))
{
//
// modal.alert({message:'111'})
this
.
query
=
{
this
.
query
=
{
examId
:
obj
.
exam_id
,
examId
:
obj
.
exam_id
,
origin
:
'start'
origin
:
'start'
...
@@ -345,11 +310,7 @@
...
@@ -345,11 +310,7 @@
this
.
isQuery
=
true
;
this
.
isQuery
=
true
;
this
.
diaLogConfirm
();
this
.
diaLogConfirm
();
}
else
{
}
else
{
this
.
$toast
(
'您尚未完成“'
+
course_name
+
'”培训课程的学习。'
)
this
.
$toast
(
'您尚未完成“'
+
course_name
+
'”培训课程的学习。'
);
// modal.toast({
// message: ,
// duration: 1.0
// });
}
}
}
}
}
}
...
@@ -364,16 +325,13 @@
...
@@ -364,16 +325,13 @@
const
lastItem
=
this
.
examContent
.
allLists
[
index
-
1
];
const
lastItem
=
this
.
examContent
.
allLists
[
index
-
1
];
if
(
lastItem
.
progress
<
100
)
{
if
(
lastItem
.
progress
<
100
)
{
this
.
beforeLearningExamNumber
=
obj
.
times
==
-
1
?
100
:
(
obj
.
times
-
obj
.
exam_num
);
this
.
beforeLearningExamNumber
=
obj
.
times
==
-
1
?
100
:
(
obj
.
times
-
obj
.
exam_num
);
Vue
.
set
(
this
.
query
,
'endNum'
,
this
.
beforeLearningExamNumber
);
this
.
$set
(
this
.
query
,
'endNum'
,
this
.
beforeLearningExamNumber
);
// Vue.set(this.query, 'endNum', this.beforeLearningExamNumber);
}
}
}
}
this
.
currentIndex
=
index
;
this
.
currentIndex
=
index
;
this
.
currentObj
=
obj
;
this
.
currentObj
=
obj
;
this
.
goIDCardAndEdu
(
obj
);
this
.
goIDCardAndEdu
(
obj
);
// this.$router.push({
// path:'/exam_result',
// query: this.query
// })
}
}
}
else
{
// 没有考试
}
else
{
// 没有考试
if
(
index
>
0
)
{
// 大于第一项
if
(
index
>
0
)
{
// 大于第一项
...
@@ -388,12 +346,7 @@
...
@@ -388,12 +346,7 @@
this
.
currentIndex
=
index
;
this
.
currentIndex
=
index
;
this
.
currentObj
=
obj
;
this
.
currentObj
=
obj
;
this
.
goIDCardAndEdu
(
obj
);
this
.
goIDCardAndEdu
(
obj
);
// this.$router.push({
// path:'/exam_result',
// query: this.query
// })
}
else
{
}
else
{
// modal.alert({message:'666'})
let
flag
=
false
;
let
flag
=
false
;
if
(
this
.
examContent
.
exam_order
==
1
)
{
// 考试顺序--序贯
if
(
this
.
examContent
.
exam_order
==
1
)
{
// 考试顺序--序贯
for
(
let
i
=
0
;
i
<
index
;
i
++
)
{
for
(
let
i
=
0
;
i
<
index
;
i
++
)
{
...
@@ -409,10 +362,6 @@
...
@@ -409,10 +362,6 @@
}
}
if
(
flag
)
{
if
(
flag
)
{
this
.
$toast
(
'请按顺序完成学习及考试'
);
this
.
$toast
(
'请按顺序完成学习及考试'
);
// modal.toast({
// message: '请按顺序完成学习及考试',
// duration: 1.0
// });
}
else
{
}
else
{
const
course_name
=
this
.
examContent
.
allLists
[
index
-
1
].
course_name
;
const
course_name
=
this
.
examContent
.
allLists
[
index
-
1
].
course_name
;
if
(
obj
.
times
>
0
||
obj
.
times
==
-
1
)
{
// 学习课程前的考试次数
if
(
obj
.
times
>
0
||
obj
.
times
==
-
1
)
{
// 学习课程前的考试次数
...
@@ -424,7 +373,7 @@
...
@@ -424,7 +373,7 @@
this
.
isQuery
=
true
;
this
.
isQuery
=
true
;
this
.
diaLogConfirm
();
this
.
diaLogConfirm
();
}
else
{
}
else
{
this
.
$toast
(
'您尚未完成“'
+
course_name
+
'”培训课程的学习。'
)
this
.
$toast
(
'您尚未完成“'
+
course_name
+
'”培训课程的学习。'
)
;
}
}
}
}
}
}
...
@@ -440,10 +389,7 @@
...
@@ -440,10 +389,7 @@
this
.
currentObj
=
obj
;
this
.
currentObj
=
obj
;
this
.
goIDCardAndEdu
(
obj
);
this
.
goIDCardAndEdu
(
obj
);
}
else
{
}
else
{
// modal.toast({
this
.
$toast
(
'请按顺序完成学习及考试'
);
// message: '请按顺序完成学习及考试',
// duration: 1.0
// });
}
}
}
}
}
else
{
// 第一项
}
else
{
// 第一项
...
@@ -457,54 +403,52 @@
...
@@ -457,54 +403,52 @@
}
}
}
}
}
else
{
// 课程项
}
else
{
// 课程项
console
.
log
(
obj
,
"iiiiiiiiiii"
)
console
.
log
(
obj
,
'iiiiiiiiiii'
);
if
(
this
.
examContent
.
exam_order
==
5
||
index
==
0
)
{
// 顺序并列, 或者顺序贯序但为第一项
if
(
this
.
examContent
.
exam_order
==
5
||
index
==
0
)
{
// 顺序并列, 或者顺序贯序但为第一项
// modal.alert({message:'999'})
this
.
goStudyNative
(
obj
);
//configurationModule.intoCourse(obj);
this
.
goStudyNative
(
obj
)
}
else
{
}
else
{
const
lastItem
=
this
.
examContent
.
allLists
[
index
-
1
];
const
lastItem
=
this
.
examContent
.
allLists
[
index
-
1
];
if
((
lastItem
.
testNumFlag
>
0
&&
lastItem
.
answerResultModel
.
pass_flag
==
5
)
||
lastItem
.
progress
>=
0
)
{
if
((
lastItem
.
testNumFlag
>
0
&&
lastItem
.
answerResultModel
.
pass_flag
==
5
)
||
lastItem
.
progress
>=
0
)
{
//configurationModule.intoCourse(obj);
//
configurationModule.intoCourse(obj);
this
.
goStudyNative
(
obj
)
this
.
goStudyNative
(
obj
)
;
}
else
{
}
else
{
this
.
$toast
(
'请按顺序完成学习及考试'
)
this
.
$toast
(
'请按顺序完成学习及考试'
)
;
}
}
}
}
}
}
},
},
goStudyNative
(
obj
){
goStudyNative
(
obj
)
{
let
appModuleModel
=
[
const
appModuleModel
=
[
{
{
'key'
:
'className'
,
'key'
:
'className'
,
'value'
:
'value=com.picahealth.yunque.activitys.courseplaynew.CourseIntroduceActivity###WeexCourseIntroViewController'
'value'
:
'value=com.picahealth.yunque.activitys.courseplaynew.CourseIntroduceActivity###WeexCourseIntroViewController'
},
},
{
{
key
:
'courseId'
,
key
:
'courseId'
,
value
:
obj
.
course_id
value
:
obj
.
course_id
}
}
];
];
this
.
$rocNative
.
dispatchEventByModuleCode
({
this
.
$rocNative
.
dispatchEventByModuleCode
({
modeCode
:
'M200'
,
modeCode
:
'M200'
,
jsonString
:
appModuleModel
,
jsonString
:
appModuleModel
,
});
});
},
},
diaLogConfirm
(){
diaLogConfirm
()
{
this
.
$dialog
this
.
$dialog
.
confirm
({
.
confirm
({
title
:
'提醒'
,
title
:
'提醒'
,
message
:
this
.
setContent
,
message
:
this
.
setContent
,
cancelButtonText
:
'取消'
,
cancelButtonText
:
'取消'
,
confirmButtonText
:
'去考试'
,
confirmButtonText
:
'去考试'
,
confirmButtonColor
:
'#94dcd2'
,
confirmButtonColor
:
'#94dcd2'
,
cancelButtonColor
:
'#666'
,
cancelButtonColor
:
'#666'
,
})
})
.
then
(()
=>
{
.
then
(()
=>
{
this
.
wxcDialogConfirmBtnClicked
();
this
.
wxcDialogConfirmBtnClicked
();
})
})
.
catch
(()
=>
{
.
catch
(()
=>
{
this
.
wxcDialogCancelBtnClicked
();
this
.
wxcDialogCancelBtnClicked
();
});
});
},
},
wxcDialogCancelBtnClicked
()
{
wxcDialogCancelBtnClicked
()
{
// 此处必须设置,组件为无状态组件,自己管理
// 此处必须设置,组件为无状态组件,自己管理
...
@@ -518,7 +462,8 @@
...
@@ -518,7 +462,8 @@
origin
:
'start'
origin
:
'start'
};
};
if
(
this
.
beforeLearningExamNumber
>
0
)
{
if
(
this
.
beforeLearningExamNumber
>
0
)
{
Vue
.
set
(
this
.
query
,
'startNum'
,
this
.
beforeLearningExamNumber
);
this
.
$set
(
this
.
query
,
'startNum'
,
this
.
beforeLearningExamNumber
);
// Vue.set(this.query, 'startNum', this.beforeLearningExamNumber);
}
}
this
.
goIDCardAndEdu
(
this
.
currentObj
);
this
.
goIDCardAndEdu
(
this
.
currentObj
);
}
}
...
...
src/components/stroke/textCollapse.vue
浏览文件 @
7d3c9951
...
@@ -3,11 +3,19 @@
...
@@ -3,11 +3,19 @@
<div
<div
ref=
"textRef"
ref=
"textRef"
>
>
<div
class=
"ele-content"
:class=
"
{'ele-contentOther':status}">
<div
class=
"ele-content"
:class=
"
{'ele-contentOther':status}"
>
<span>
简介:
</span>
<span>
简介:
</span>
{{
message
}}
{{
message
}}
</div>
</div>
<div
@
click=
"seeMore"
class=
"ele-content-btn"
>
{{
status
?
'显示全部'
:
'收起'
}}
</div>
<div
class=
"ele-content-btn"
@
click=
"seeMore"
>
{{
status
?
'显示全部'
:
'收起'
}}
</div>
</div>
</div>
<div
<div
class=
"see_more"
class=
"see_more"
...
@@ -21,9 +29,6 @@
...
@@ -21,9 +29,6 @@
</
template
>
</
template
>
<
script
>
<
script
>
// text collapse
// const dom = weex.requireModule('dom');
export
default
{
export
default
{
components
:
{},
components
:
{},
props
:[
'infoMsg'
],
props
:[
'infoMsg'
],
...
@@ -35,31 +40,19 @@
...
@@ -35,31 +40,19 @@
},
},
computed
:
{
computed
:
{
message
:
function
()
{
message
:
function
()
{
return
this
.
infoMsg
.
textModuleList
[
0
].
content
return
this
.
infoMsg
.
textModuleList
[
0
].
content
;
}
}
},
},
created
()
{
created
()
{
},
mounted
()
{
this
.
init
();
},
},
methods
:
{
methods
:
{
getShortBrief
(
str
)
{
},
init
()
{
console
.
log
(
this
.
infoMsg
.
textModuleList
[
0
])
},
seeMore
()
{
seeMore
()
{
this
.
status
=
!
this
.
status
;
this
.
status
=
!
this
.
status
;
}
}
},
},
};
};
</
script
>
</
script
>
<
style
scoped
>
<
style
scoped
>
.message-backups
{
.message-backups
{
position
:
fixed
;
position
:
fixed
;
...
...
src/plugins/vue-vant.js
浏览文件 @
7d3c9951
...
@@ -35,7 +35,8 @@ import {
...
@@ -35,7 +35,8 @@ import {
Sticky
,
Sticky
,
Collapse
,
Collapse
,
CollapseItem
,
CollapseItem
,
CountDown
CountDown
,
PullRefresh
}
from
'vant'
;
}
from
'vant'
;
Vue
.
use
(
List
)
Vue
.
use
(
List
)
...
@@ -73,4 +74,5 @@ Vue.use(List)
...
@@ -73,4 +74,5 @@ Vue.use(List)
.
use
(
Sticky
)
.
use
(
Sticky
)
.
use
(
Collapse
)
.
use
(
Collapse
)
.
use
(
CollapseItem
)
.
use
(
CollapseItem
)
.
use
(
CountDown
);
.
use
(
CountDown
)
.
use
(
PullRefresh
);
src/router/index.js
浏览文件 @
7d3c9951
...
@@ -20,22 +20,22 @@ const routerConfig = [
...
@@ -20,22 +20,22 @@ const routerConfig = [
},
},
{
{
path
:
'/exam-result'
,
path
:
'/exam-result'
,
name
:
'exam
-r
esult'
,
name
:
'exam
R
esult'
,
component
:
()
=>
import
(
'@/views/examResult/index.vue'
)
component
:
()
=>
import
(
'@/views/examResult/index.vue'
)
},
},
{
{
path
:
'/exam-wrong'
,
path
:
'/exam-wrong'
,
name
:
'exam
-w
rong'
,
name
:
'exam
W
rong'
,
component
:
()
=>
import
(
'@/views/exam/exam_wrong.vue'
)
component
:
()
=>
import
(
'@/views/exam/exam_wrong.vue'
)
},
},
{
{
path
:
'/exam-history'
,
path
:
'/exam-history'
,
name
:
'exam
-h
istory'
,
name
:
'exam
H
istory'
,
component
:
()
=>
import
(
'@/views/exam/exam_history.vue'
)
component
:
()
=>
import
(
'@/views/exam/exam_history.vue'
)
},
},
{
{
path
:
'/local-exam-history'
,
path
:
'/local-exam-history'
,
name
:
'local
-exam-h
istory'
,
name
:
'local
ExamH
istory'
,
component
:
()
=>
import
(
'@/views/exam/local_exam_history'
)
component
:
()
=>
import
(
'@/views/exam/local_exam_history'
)
},
},
{
{
...
...
src/views/Home.vue
浏览文件 @
7d3c9951
...
@@ -38,28 +38,28 @@
...
@@ -38,28 +38,28 @@
import
{
listRelatives
,
list
}
from
'@/api/home'
;
import
{
listRelatives
,
list
}
from
'@/api/home'
;
export
default
{
export
default
{
name
:
'Home'
,
name
:
'Home'
,
data
()
{
return
{
token
:
'F65FDAEE03F34EA78490050B8A83BF95'
};
},
computed
:
{
computed
:
{
count
()
{
count
()
{
return
this
.
$store
.
state
.
home
.
count
;
return
this
.
$store
.
state
.
home
.
count
;
}
}
},
},
data
(){
return
{
token
:
"F65FDAEE03F34EA78490050B8A83BF95"
}
},
mounted
()
{
mounted
()
{
getCoopTop
({
id
:
4
,
token
:
this
.
token
}).
then
((
res
)
=>
{
getCoopTop
({
id
:
4
,
token
:
this
.
token
}).
then
((
res
)
=>
{
console
.
log
(
res
);
console
.
log
(
res
);
if
(
res
&&
res
.
data
)
{
if
(
res
&&
res
.
data
)
{
this
.
infoLists
=
res
.
data
.
texts
;
// 简介(文案)组件
this
.
infoLists
=
res
.
data
.
texts
;
// 简介(文案)组件
this
.
sliderLists
=
res
.
data
.
carousels
;
// 轮播图组件
this
.
sliderLists
=
res
.
data
.
carousels
;
// 轮播图组件
this
.
projectName
=
res
.
data
.
projectName
;
// 项目名称
this
.
projectName
=
res
.
data
.
projectName
;
// 项目名称
this
.
projectName
=
this
.
getLength
(
this
.
projectName
,
8
);
this
.
projectName
=
this
.
getLength
(
this
.
projectName
,
8
);
}
else
{
}
else
{
this
.
$toast
(
res
.
message
);
this
.
$toast
(
res
.
message
);
}
}
});
});
console
.
log
(
this
.
$route
.
meta
);
// {requiresAuth: true}
console
.
log
(
this
.
$route
.
meta
);
// {requiresAuth: true}
},
},
methods
:
{
methods
:
{
...
...
src/views/exam/exam_history.vue
浏览文件 @
7d3c9951
<
template
>
<
template
>
<scroller
show-scrollbar=
"false"
class=
"back-fff"
>
<scroller
<div
class=
"contenter"
>
show-scrollbar=
"false"
<exam-history
:showHeaderH=
"showHeaderH"
:historyList=
"historyList"
:examId=
"id"
:examType=
"examType"
></exam-history>
class=
"back-fff"
<pica-header
title=
"考试记录"
@
goBack=
"goBack"
showHeader=
"true"
></pica-header>
>
<div
class=
"history-nomore"
v-if=
"historyList.length > 0"
>
<div
class=
"contenter"
>
<div
class=
"nomore-text"
>
没有更多记录了
</div>
<exam-history
</div>
:show-header-h=
"showHeaderH"
:history-list=
"historyList"
:exam-id=
"id"
:exam-type=
"examType"
/>
<pica-header
title=
"考试记录"
show-header=
"true"
@
goBack=
"goBack"
/>
<div
v-if=
"historyList.length > 0"
class=
"history-nomore"
>
<div
class=
"nomore-text"
>
没有更多记录了
</div>
</div>
</div>
</scroller>
</div>
</scroller>
</
template
>
</
template
>
<
style
scoped
>
<
style
scoped
>
...
@@ -22,43 +38,43 @@
...
@@ -22,43 +38,43 @@
</
style
>
</
style
>
<
script
>
<
script
>
import
storejs
from
'storejs'
;
import
storejs
from
'storejs'
;
import
picaHeader
from
'@/components/stroke/picaHeader'
import
picaHeader
from
'@/components/stroke/picaHeader'
;
import
examHistory
from
'@/components/stroke/examHistory'
import
examHistory
from
'@/components/stroke/examHistory'
;
import
{
getCoopExamResultNews
,
getCoopResultNewsLocal
}
from
'@/api/exam.js'
;
import
{
getCoopExamResultNews
,
getCoopResultNewsLocal
}
from
'@/api/exam.js'
;
export
default
{
export
default
{
data
:
()
=>
({
components
:{
picaHeader
,
examHistory
},
id
:
''
,
data
:
()
=>
({
isPassExam
:
false
,
id
:
''
,
showHeaderH
:
false
,
isPassExam
:
false
,
historyList
:[],
showHeaderH
:
false
,
examType
:
''
,
historyList
:[],
token
:
""
examType
:
''
,
}),
token
:
''
computed
:
{
}),
},
computed
:
{
components
:{
picaHeader
,
examHistory
},
},
created
()
{
created
()
{
// this.historyList = this.$route.query.historyList
// this.historyList = this.$route.query.historyList
this
.
id
=
this
.
$route
.
query
.
examId
;
this
.
id
=
this
.
$route
.
query
.
examId
;
this
.
token
=
storejs
.
get
(
'token'
);
this
.
token
=
storejs
.
get
(
'token'
);
this
.
init
()
this
.
init
();
},
},
methods
:
{
methods
:
{
init
(){
init
()
{
let
funCoop
=
getCoopExamResultNews
let
funCoop
=
getCoopExamResultNews
;
if
(
this
.
$route
.
query
.
examType
==
'local'
){
if
(
this
.
$route
.
query
.
examType
==
'local'
)
{
funCoop
=
getCoopResultNewsLocal
funCoop
=
getCoopResultNewsLocal
;
}
funCoop
({
examId
:
this
.
id
,
token
:
this
.
token
}).
catch
(
res
=>
{
this
.
historyList
=
res
.
data
.
examRecordList
this
.
historyList
.
map
(
res
=>
{
res
.
createdTime
=
res
.
createdTime
.
substring
(
0
,
10
)
})
})
}
}
}
funCoop
({
examId
:
this
.
id
,
token
:
this
.
token
}).
catch
(
res
=>
{
}
this
.
historyList
=
res
.
data
.
examRecordList
;
this
.
historyList
.
map
(
res
=>
{
res
.
createdTime
=
res
.
createdTime
.
substring
(
0
,
10
);
});
});
}
}
};
</
script
>
</
script
>
<
style
scoped
>
<
style
scoped
>
.history-nomore
{
.history-nomore
{
...
...
src/views/exam/exam_wrong.vue
浏览文件 @
7d3c9951
<
template
>
<
template
>
<list>
<list>
<cell>
<cell>
<div
class=
"head-fixed"
>
<div
class=
"head-fixed"
>
<div
class=
"head-bg"
:style=
"
{backgroundColor: headBg, height: '5px'}">
</div>
<div
<div
class=
"head wrap"
>
class=
"head-bg"
<img
@
click=
"back"
src=
"http://pica-pro.oss-cn-shanghai.aliyuncs.com/md_resources/back_gray.png"
style=
"width: 25px; height: 25px;"
/>
:style=
"
{backgroundColor: headBg, height: '5px'}"
<text
class=
"title"
>
错题集
</text>
/>
<text
class=
"empty"
></text>
<div
class=
"head wrap"
>
</div>
<img
</div>
src=
"http://pica-pro.oss-cn-shanghai.aliyuncs.com/md_resources/back_gray.png"
<div
class=
"img-wrap"
>
style=
"width: 25px; height: 25px;"
<img
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/icon_report_grey.png"
style=
"width: 53px; height: 65px;"
/>
@
click=
"back"
</div>
>
<div
class=
"result-wrap"
>
<text
class=
"title"
>
<div
style=
"font-size: 16px;"
>
正确题目数 :
{{
rightNum
}}
题
</div>
错题集
<div
style=
"padding-left: 15px;font-size: 16px;"
>
错误题目数 :
</div>
</text>
<div
style=
"color: #d84a38;font-size: 16px;"
>
{{
wrongNum
}}
题
</div>
<text
class=
"empty"
/>
</div>
</div>
<div
style=
"padding: 0 15px"
>
</div>
<div
class=
"separator"
></div>
<div
class=
"img-wrap"
>
</div>
<img
<div
class=
"info"
>
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/icon_report_grey.png"
<div
style=
"font-size: 20px; padding-bottom: 20px; padding-top: 10px;"
>
试题分析
</div>
style=
"width: 53px; height: 65px;"
<div
class=
"detail"
v-for=
"(wrong,index) in wrongList"
:key=
"index"
>
>
<div
class=
"question-index"
>
第
{{
wrong
.
seqNo
}}
题:
</div>
</div>
<div
class=
"question-title"
>
{{
wrong
.
question
}}
</div>
<div
class=
"result-wrap"
>
<div
class=
"answer"
style=
"color: #d84a38;"
>
您的答案:
{{
wrong
.
answer
}}
</div>
<div
style=
"font-size: 16px;"
>
<div
class=
"answer"
style=
"color: #35CBCA;"
>
正确答案:
{{
wrong
.
correctAnswer
}}
</div>
正确题目数 :
{{
rightNum
}}
题
</div>
</div>
</div>
<div
style=
"padding-left: 15px;font-size: 16px;"
>
<!--
<wxc-loading
:show=
"showLoading"
></wxc-loading>
-->
错误题目数 :
</cell>
</div>
</list>
<div
style=
"color: #d84a38;font-size: 16px;"
>
{{
wrongNum
}}
题
</div>
</div>
<div
style=
"padding: 0 15px"
>
<div
class=
"separator"
/>
</div>
<div
class=
"info"
>
<div
style=
"font-size: 20px; padding-bottom: 20px; padding-top: 10px;"
>
试题分析
</div>
<div
v-for=
"(wrong,index) in wrongList"
:key=
"index"
class=
"detail"
>
<div
class=
"question-index"
>
第
{{
wrong
.
seqNo
}}
题:
</div>
<div
class=
"question-title"
>
{{
wrong
.
question
}}
</div>
<div
class=
"answer"
style=
"color: #d84a38;"
>
您的答案:
{{
wrong
.
answer
}}
</div>
<div
class=
"answer"
style=
"color: #35CBCA;"
>
正确答案:
{{
wrong
.
correctAnswer
}}
</div>
</div>
</div>
<!--
<wxc-loading
:show=
"showLoading"
></wxc-loading>
-->
</cell>
</list>
</
template
>
</
template
>
<
style
scoped
>
<
style
scoped
>
...
@@ -114,47 +152,47 @@
...
@@ -114,47 +152,47 @@
<
script
>
<
script
>
// import { WxcLoading } from 'weex-ui'
// import { WxcLoading } from 'weex-ui'
// import WxcLoading from '../../components/wxc-loading'
// import WxcLoading from '../../components/wxc-loading'
//let modal = weex.requireModule('modal')
//
let modal = weex.requireModule('modal')
//import WxcLoading from '../../components/wxc-loading'
//
import WxcLoading from '../../components/wxc-loading'
import
{
getCoopExamWrongRecords
}
from
'@/api/exam.js'
;
import
{
getCoopExamWrongRecords
}
from
'@/api/exam.js'
;
export
default
{
export
default
{
//
components: { WxcLoading },
//
components: { WxcLoading },
data
:
()
=>
({
data
:
()
=>
({
showLoading
:
false
,
showLoading
:
false
,
wrongList
:
[],
wrongList
:
[],
rightNum
:
''
,
rightNum
:
''
,
wrongNum
:
''
,
wrongNum
:
''
,
headBg
:
'#ffffff'
,
headBg
:
'#ffffff'
,
headHeight
:
0
,
headHeight
:
0
,
token
:
""
token
:
''
}),
}),
computed
:
{
computed
:
{
},
},
created
()
{
created
()
{
this
.
token
=
this
.
$storejs
.
get
(
'token'
);
this
.
token
=
this
.
$storejs
.
get
(
'token'
);
this
.
init
();
this
.
init
();
},
},
methods
:
{
methods
:
{
init
()
{
init
()
{
this
.
showLoading
=
true
;
this
.
showLoading
=
true
;
le
t
para
=
{
cons
t
para
=
{
answerResultId
:
this
.
$route
.
query
.
answerResultId
,
answerResultId
:
this
.
$route
.
query
.
answerResultId
,
type
:
5
,
type
:
5
,
token
:
this
.
token
token
:
this
.
token
};
};
getCoopExamWrongRecords
(
para
).
catch
(
res
=>
{
getCoopExamWrongRecords
(
para
).
catch
(
res
=>
{
this
.
showLoading
=
false
this
.
showLoading
=
false
;
le
t
data
=
res
.
data
;
cons
t
data
=
res
.
data
;
if
(
data
.
respCode
==
200
)
{
if
(
data
.
respCode
==
200
)
{
this
.
wrongList
=
data
.
wrongList
this
.
wrongList
=
data
.
wrongList
;
this
.
rightNum
=
data
.
correctNo
this
.
rightNum
=
data
.
correctNo
;
this
.
wrongNum
=
data
.
wrongNo
this
.
wrongNum
=
data
.
wrongNo
;
}
else
{
}
else
{
this
.
$toast
(
data
.
respMsg
);
this
.
$toast
(
data
.
respMsg
);
}
}
})
})
;
// this.GET('app/projectExam/wrongs', para, res => {
// this.GET('app/projectExam/wrongs', para, res => {
// this.showLoading = false
// this.showLoading = false
// let data = res.data;
// let data = res.data;
// if(data.respCode == 200) {
// if(data.respCode == 200) {
// this.wrongList = data.wrongList
// this.wrongList = data.wrongList
...
@@ -163,11 +201,11 @@
...
@@ -163,11 +201,11 @@
// } else {
// } else {
// this.$toast(data.respMsg);
// this.$toast(data.respMsg);
// }
// }
// })
// })
},
},
back
()
{
back
()
{
this
.
$router
.
go
(
-
1
)
this
.
$router
.
go
(
-
1
);
}
}
}
}
}
};
</
script
>
</
script
>
\ No newline at end of file
src/views/exam/index.vue
浏览文件 @
7d3c9951
<
template
>
<
template
>
<list>
<list>
<cell>
<cell>
<div
class=
"head-fixed"
>
<div
class=
"head-fixed"
>
<div
class=
"head-bg"
:style=
"
{backgroundColor: headBg, height:'15px'}">
</div>
<div
<div
class=
"head wrap"
>
class=
"head-bg"
<div
@
click=
"giveUp"
class=
"back-wrap"
>
:style=
"
{backgroundColor: headBg, height:'15px'}"
<img
src=
"http://pica-pro.oss-cn-shanghai.aliyuncs.com/md_resources/back_gray.png"
style=
"width: 25px; height: 25px;"
/>
/>
<div
class=
"back-txt"
>
放弃考试
</div>
<div
class=
"head wrap"
>
</div>
<div
<text
class=
"empty"
></text>
class=
"back-wrap"
<div
class=
"time-left"
>
@
click=
"giveUp"
<div
class=
"time-label"
>
剩余时间
</div>
>
<van-count-down
:time=
"TIME"
format=
"mm:ss"
>
<img
<template
#
default=
"timeData"
>
src=
"http://pica-pro.oss-cn-shanghai.aliyuncs.com/md_resources/back_gray.png"
<!--
<span
class=
"block"
>
{{
timeData
.
hours
}}
</span>
style=
"width: 25px; height: 25px;"
>
<div
class=
"back-txt"
>
放弃考试
</div>
</div>
<text
class=
"empty"
/>
<div
class=
"time-left"
>
<div
class=
"time-label"
>
剩余时间
</div>
<van-count-down
:time=
"TIME"
format=
"mm:ss"
>
<template
#
default=
"timeData"
>
<!--
<span
class=
"block"
>
{{
timeData
.
hours
}}
</span>
<span
class=
"colon"
>
:
</span>
-->
<span
class=
"colon"
>
:
</span>
-->
<span
class=
"block"
>
{{
timeData
.
minutes
}}
</span>
<span
class=
"block"
>
{{
timeData
.
minutes
}}
</span>
<span
class=
"colon"
>
:
</span>
<span
class=
"colon"
>
:
</span>
<span
class=
"block"
>
{{
timeData
.
seconds
}}
</span>
<span
class=
"block"
>
{{
timeData
.
seconds
}}
</span>
</
template
>
</
template
>
</van-count-down>
</van-count-down>
<!-- <wxc-countdown v-if="isInitFinished" tpl="{m}:{s}" :time="TIME" class="time" @wxcOnComplete="timeout"
<!-- <wxc-countdown v-if="isInitFinished" tpl="{m}:{s}" :time="TIME" class="time" @wxcOnComplete="timeout"
:timeBoxStyle="{backgroundColor: '#ffffff', width: '50px', height: '50px', paddingBottom: '10px'}"
:timeBoxStyle="{backgroundColor: '#ffffff', width: '50px', height: '50px', paddingBottom: '10px'}"
:timeTextStyle="{fontSize: '38px', color: 'rgb(51,51,51)'}"
:timeTextStyle="{fontSize: '38px', color: 'rgb(51,51,51)'}"
:dotTextStyle="{color: 'rgb(51,51,51)', fontSize: '38px', fontWeight: '400'}"
:dotTextStyle="{color: 'rgb(51,51,51)', fontSize: '38px', fontWeight: '400'}"
:dotBoxStyle="{width: '35px', paddingBottom: '10px'}">
:dotBoxStyle="{width: '35px', paddingBottom: '10px'}">
</wxc-countdown> 111-->
</wxc-countdown> 111-->
</div>
</div>
</div>
</div>
</div>
</div>
<div
class=
"questions-wrap"
>
<div
class=
"questions-wrap"
>
<div
class=
"question"
v-for=
"(item, index) in questions"
:ref=
"'question_' + index"
:key=
"index"
>
<div
<div
class=
"description"
>
{{index + 1}}:{{item.name}}
</div>
v-for=
"(item, index) in questions"
<pica-radio
:list=
"item.answerList"
@
wxcRadioListChecked=
"select"
></pica-radio>
:ref=
"'question_' + index"
</div>
:key=
"index"
</div>
class=
"question"
>
<div
class=
"description"
>
{{ index + 1 }}:{{ item.name }}
</div>
<pica-radio
:list=
"item.answerList"
@
wxcRadioListChecked=
"select"
/>
</div>
</div>
<div
class=
"submit-wrap"
>
<div
class=
"submit-wrap"
>
<div
class=
"select-status"
>
<div
class=
"select-status"
>
<div
class=
"status-label"
>
已答题:
</div>
<div
class=
"status-label"
>
<div
class=
"status-value"
>
{{selectedCount}}/{{questions.length}}
</div>
已答题:
</div>
</div>
<div>
<div
class=
"status-value"
>
<van-button
type=
"primary"
class=
"coop-btn"
@
click=
"submitQuery"
>
{{isSubmitting ? '提交中' : '提交'}}
</van-button>
{{ selectedCount }}/{{ questions.length }}
</div>
</div>
<!-- <wxc-button :btnStyle="submitBtnStyle" :text="isSubmitting ? '提交中' : '提交'"
</div>
<div>
<van-button
type=
"primary"
class=
"coop-btn"
@
click=
"submitQuery"
>
{{ isSubmitting ? '提交中' : '提交' }}
</van-button>
</div>
<!-- <wxc-button :btnStyle="submitBtnStyle" :text="isSubmitting ? '提交中' : '提交'"
@wxcButtonClicked="submitQuery"></wxc-button> 111-->
@wxcButtonClicked="submitQuery"></wxc-button> 111-->
</div>
</div>
<!-- <wxc-dialog confirm-text="提交考卷"
<!-- <wxc-dialog confirm-text="提交考卷"
cancel-text="再想一下"
cancel-text="再想一下"
:show="showSubmitConfirm"
:show="showSubmitConfirm"
main-btn-color="#2ab9a5"
main-btn-color="#2ab9a5"
...
@@ -87,9 +123,8 @@
...
@@ -87,9 +123,8 @@
</wxc-dialog>
</wxc-dialog>
<wxc-loading :show="showLoading"></wxc-loading> -->
<wxc-loading :show="showLoading"></wxc-loading> -->
</cell>
</cell>
</list>
</list>
</template>
</template>
<
style
scoped
>
<
style
scoped
>
...
@@ -215,24 +250,24 @@
...
@@ -215,24 +250,24 @@
</
style
>
</
style
>
<
script
>
<
script
>
//import { WxcButton, WxcMinibar, WxcCountdown } from 'weex-ui'
//
import { WxcButton, WxcMinibar, WxcCountdown } from 'weex-ui'
// import WxcLoading from '../../components/wxc-loading'
// import WxcLoading from '../../components/wxc-loading'
import
PicaRadio
from
'@/components/pica-radio'
import
PicaRadio
from
'@/components/pica-radio'
;
// import WxcDialog from '../../components/wxc-dialog'
// import WxcDialog from '../../components/wxc-dialog'
// import {click_submit_test,click_cancel_test} from '../../util/buryingPoint'
// import {click_submit_test,click_cancel_test} from '../../util/buryingPoint'
// let modal = weex.requireModule('modal')
// let modal = weex.requireModule('modal')
//
let navigator = weex.requireModule('navigator')
//
let navigator = weex.requireModule('navigator')
// const storage = weex.requireModule('storage')
// const storage = weex.requireModule('storage')
// const dom = weex.requireModule('dom')
// const dom = weex.requireModule('dom')
import
{
getCoopExamQuest
,
getAnwserExam
}
from
'@/api/exam.js'
;
import
{
getCoopExamQuest
,
getAnwserExam
}
from
'@/api/exam.js'
;
export
default
{
export
default
{
components
:
{
components
:
{
PicaRadio
PicaRadio
// WxcButton, WxcDialog, WxcLoading, WxcMinibar,
// WxcButton, WxcDialog, WxcLoading, WxcMinibar,
// PicaRadio, WxcCountdown
// PicaRadio, WxcCountdown
},
},
data
()
{
data
()
{
return
{
return
{
selected
:
{},
selected
:
{},
selectedCount
:
0
,
selectedCount
:
0
,
...
@@ -251,244 +286,255 @@ export default {
...
@@ -251,244 +286,255 @@ export default {
startNum
:
-
1
,
startNum
:
-
1
,
isSubmitting
:
false
,
isSubmitting
:
false
,
submitBtnStyle
:
{
submitBtnStyle
:
{
width
:
'230px'
,
width
:
'230px'
,
fontSize
:
'40px'
,
fontSize
:
'40px'
,
borderRadius
:
0
,
borderRadius
:
0
,
backgroundColor
:
'#58b5a8'
,
backgroundColor
:
'#58b5a8'
,
},
token
:
""
}
},
computed
:
{
},
},
created
()
{
token
:
''
this
.
token
=
this
.
$storejs
.
get
(
'token'
);
};
this
.
startNum
=
this
.
$route
.
query
.
startNum
||
-
1
},
this
.
init
();
computed
:
{
// weex.requireModule('globalEvent').addEventListener("goPreviousPage", e=> {//监听物理返回上一页
},
// this.back()
created
()
{
// });
this
.
token
=
this
.
$storejs
.
get
(
'token'
);
},
this
.
startNum
=
this
.
$route
.
query
.
startNum
||
-
1
;
this
.
init
();
// weex.requireModule('globalEvent').addEventListener("goPreviousPage", e=> {//监听物理返回上一页
// this.back()
// });
},
methods
:
{
methods
:
{
isAllSelected
()
{
isAllSelected
()
{
return
this
.
selectedCount
&&
this
.
questions
.
length
==
this
.
selectedCount
return
this
.
selectedCount
&&
this
.
questions
.
length
==
this
.
selectedCount
;
},
},
getCorrectId
(
list
)
{
getCorrectId
(
list
)
{
for
(
var
i
=
0
,
len
=
list
.
length
;
i
<
len
;
i
++
)
{
for
(
var
i
=
0
,
len
=
list
.
length
;
i
<
len
;
i
++
)
{
if
(
list
[
i
].
type
==
1
)
{
if
(
list
[
i
].
type
==
1
)
{
return
list
[
i
].
id
return
list
[
i
].
id
;
}
}
}
}
},
},
format
(
questions
)
{
format
(
questions
)
{
questions
.
forEach
(
(
question
,
i
)
=>
{
questions
.
forEach
(
(
question
,
i
)
=>
{
let
choices
=
[
'a'
,
'b'
,
'c'
,
'd'
]
const
choices
=
[
'a'
,
'b'
,
'c'
,
'd'
];
let
correctId
=
this
.
getCorrectId
(
question
.
answerList
)
const
correctId
=
this
.
getCorrectId
(
question
.
answerList
);
question
.
answerList
.
forEach
(
(
answer
,
j
)
=>
{
question
.
answerList
.
forEach
(
(
answer
,
j
)
=>
{
answer
.
title
=
choices
[
j
].
toUpperCase
()
+
'. '
+
answer
.
answer
answer
.
title
=
choices
[
j
].
toUpperCase
()
+
'. '
+
answer
.
answer
;
answer
.
value
=
choices
[
j
].
toUpperCase
()
answer
.
value
=
choices
[
j
].
toUpperCase
();
answer
.
index
=
i
answer
.
index
=
i
;
answer
.
seqNo
=
i
+
1
answer
.
seqNo
=
i
+
1
;
answer
.
correctId
=
correctId
answer
.
correctId
=
correctId
;
answer
.
questionType
=
question
.
type
answer
.
questionType
=
question
.
type
;
answer
.
answerId
=
answer
.
id
answer
.
answerId
=
answer
.
id
;
})
});
})
});
return
questions
return
questions
;
},
},
init
()
{
init
()
{
le
t
para
=
{
cons
t
para
=
{
'examId'
:
this
.
$route
.
query
.
examId
,
'examId'
:
this
.
$route
.
query
.
examId
,
'type'
:
5
,
'type'
:
5
,
'token'
:
this
.
token
'token'
:
this
.
token
};
};
getCoopExamQuest
(
para
).
catch
(
res
=>
{
getCoopExamQuest
(
para
).
catch
(
res
=>
{
this
.
showLoading
=
false
this
.
showLoading
=
false
;
let
data
=
res
.
data
;
const
data
=
res
.
data
;
if
(
data
.
respCode
==
200
)
{
if
(
data
.
respCode
==
200
)
{
this
.
isInitFinished
=
true
this
.
isInitFinished
=
true
;
this
.
questions
=
this
.
format
(
data
.
questionList
)
this
.
questions
=
this
.
format
(
data
.
questionList
);
this
.
examTime
=
data
.
examTime
*
1000
this
.
examTime
=
data
.
examTime
*
1000
;
this
.
TIME
=
new
Date
().
getTime
()
+
this
.
examTime
this
.
TIME
=
new
Date
().
getTime
()
+
this
.
examTime
;
console
.
log
(
this
.
TIME
,
"----000-----"
);
}
else
{
}
else
{
this
.
$toast
(
data
.
respMsg
);
this
.
$toast
(
data
.
respMsg
);
}
}
})
})
;
// this.GET('app/projectExam/questions', para, res => {
// this.GET('app/projectExam/questions', para, res => {
// this.showLoading = false
// this.showLoading = false
// let data = res.data
// let data = res.data
// if(data.respCode == 200) {
// if(data.respCode == 200) {
// this.isInitFinished = true
// this.isInitFinished = true
// this.questions = this.format(data.questionList)
// this.questions = this.format(data.questionList)
// this.examTime = data.examTime*1000
// this.examTime = data.examTime*1000
// this.TIME = new Date().getTime() + this.examTime
// this.TIME = new Date().getTime() + this.examTime
// } else {
// } else {
// this.toast({
// this.toast({
// message: data.respMsg
// message: data.respMsg
// })
// })
// }
// }
// })
// })
},
},
back
()
{
back
()
{
this
.
$router
.
go
(
-
1
);
this
.
$router
.
go
(
-
1
);
//weex.requireModule('eventModule').backPreviousPage({})
// weex.requireModule('eventModule').backPreviousPage({})
},
getUnselected
()
{
let
result
=
[]
let
selected
=
this
.
selected
this
.
questions
.
forEach
(
(
question
,
i
)
=>
{
if
(
!
selected
[
i
])
{
result
.
push
({
questionId
:
question
.
id
,
correctId
:
question
.
answerList
[
0
].
correctId
,
answerId
:
0
,
questionType
:
question
.
type
,
seqNo
:
question
.
answerList
[
0
].
seqNo
,
type
:
2
})
}
})
return
result
},
},
getAnswerTime
()
{
getUnselected
()
{
let
surplusTime
=
this
.
TIME
-
new
Date
().
getTime
()
const
result
=
[];
return
surplusTime
>
0
?
Math
.
floor
((
this
.
examTime
-
surplusTime
)
/
1000
)
:
this
.
examTime
/
1000
const
selected
=
this
.
selected
;
},
this
.
questions
.
forEach
(
(
question
,
i
)
=>
{
submit
()
{
if
(
!
selected
[
i
])
{
let
para
=
{
result
.
push
({
answerTime
:
this
.
getAnswerTime
(),
questionId
:
question
.
id
,
examId
:
this
.
$route
.
query
.
examId
,
correctId
:
question
.
answerList
[
0
].
correctId
,
type
:
5
answerId
:
0
,
}
questionType
:
question
.
type
,
let
resultList
=
[]
seqNo
:
question
.
answerList
[
0
].
seqNo
,
Object
.
keys
(
this
.
selected
).
forEach
(
attr
=>
{
type
:
2
resultList
.
push
(
this
.
selected
[
attr
])
});
});
if
(
this
.
selected
.
length
!=
this
.
questions
.
length
)
{
}
resultList
=
resultList
.
concat
(
this
.
getUnselected
())
});
}
return
result
;
para
.
resultList
=
resultList
},
this
.
showLoading
=
true
getAnswerTime
()
{
this
.
isSubmitting
=
true
const
surplusTime
=
this
.
TIME
-
new
Date
().
getTime
();
getAnwserExam
(
para
).
catch
(
res
=>
{
return
surplusTime
>
0
?
Math
.
floor
((
this
.
examTime
-
surplusTime
)
/
1000
)
:
this
.
examTime
/
1000
;
},
submit
()
{
alert
(
123
);
const
para
=
{
answerTime
:
this
.
getAnswerTime
(),
examId
:
this
.
$route
.
query
.
examId
,
type
:
5
,
token
:
this
.
token
};
console
.
log
(
this
.
token
,
'--------'
);
let
resultList
=
[];
Object
.
keys
(
this
.
selected
).
forEach
(
attr
=>
{
resultList
.
push
(
this
.
selected
[
attr
]);
});
if
(
this
.
selected
.
length
!=
this
.
questions
.
length
)
{
resultList
=
resultList
.
concat
(
this
.
getUnselected
());
}
para
.
resultList
=
resultList
;
this
.
showLoading
=
true
;
this
.
isSubmitting
=
true
;
console
.
log
(
para
,
'para'
);
getAnwserExam
(
para
).
catch
(
res
=>
{
this
.
showLoading
=
false
;
this
.
showLoading
=
false
;
this
.
isSubmitting
=
false
;
this
.
isSubmitting
=
false
;
le
t
data
=
res
.
data
;
cons
t
data
=
res
.
data
;
if
(
data
.
respCode
==
200
)
{
if
(
data
.
respCode
==
200
)
{
let
query
=
{
alert
(
2222
);
examId
:
this
.
$route
.
query
.
examId
,
const
query
=
{
answerResultId
:
data
.
answerResultId
,
examId
:
this
.
$route
.
query
.
examId
,
from
:
'exam'
answerResultId
:
data
.
answerResultId
,
}
from
:
'exam'
if
(
this
.
startNum
>
0
){
};
Vue
.
set
(
query
,
"endNum"
,
this
.
startNum
-
1
)
alert
(
33
);
}
if
(
this
.
startNum
>
0
)
{
this
.
$router
.
push
({
alert
(
4
);
path
:
'/exam-result'
,
query
.
endNum
=
this
.
startNum
-
1
;
query
:
query
// this.$set(this.query, 'endNum', this.startNum - 1);
})
// Vue.set(query, 'endNum', this.startNum - 1);
}
else
{
}
this
.
$toast
(
data
.
respMsg
)
alert
(
5
);
}
this
.
$router
.
push
({
name
:
'examResult'
,
query
:
query
});
})
// alert(1111);
// this.POST('app/projectExam/apply', para, res => {
return
;
// this.showLoading = false
// this.$router.push({
// this.isSubmitting = false
// path:'/exam-result',
// let data = res.data
// query: query
// if(data.respCode == 200) {
// });
alert
(
1111
);
}
else
{
this
.
$toast
(
data
.
respMsg
);
}
});
// this.POST('app/projectExam/apply', para, res => {
// this.showLoading = false
// this.isSubmitting = false
// let data = res.data
// if(data.respCode == 200) {
// let query = {
// let query = {
// examId: this.$route.query.examId,
// examId: this.$route.query.examId,
// answerResultId: data.answerResultId,
// answerResultId: data.answerResultId,
// // origin: 'end',
// // origin: 'end',
// from: 'exam'
// from: 'exam'
// }
// }
// if (this.startNum >0){
// if (this.startNum >0){
// Vue.set(query, "endNum", this.startNum - 1)
// Vue.set(query, "endNum", this.startNum - 1)
// }
// }
// this.$router.push({
// this.$router.push({
// path:'/exam_result',
// path:'/exam_result',
// query: query
// query: query
// })
// })
// } else {
// } else {
// this.$toast(data.respMsg)
// this.$toast(data.respMsg)
// }
// }
// })
// })
},
},
submitQuery
()
{
submitQuery
()
{
if
(
this
.
isSubmitting
)
{
if
(
this
.
isSubmitting
)
{
return
return
;
}
}
if
(
this
.
isAllSelected
())
{
if
(
this
.
isAllSelected
())
{
this
.
showSubmitConfirm
=
true
this
.
showSubmitConfirm
=
true
;
this
.
submitDialog
();
this
.
submitDialog
();
}
else
{
}
else
{
this
.
showUnFinishedTip
=
true
;
this
.
showUnFinishedTip
=
true
;
this
.
firstUnselectedIndex
=
this
.
getFirstUnselected
();
this
.
firstUnselectedIndex
=
this
.
getFirstUnselected
();
this
.
submitDialogFinish
();
this
.
submitDialogFinish
();
}
}
},
},
submitDialogFinish
(){
submitDialogFinish
()
{
let
msg
=
`第
${
this
.
firstUnselectedIndex
}
题尚未做答,请回答所有题目后再提交`
const
msg
=
`第
${
this
.
firstUnselectedIndex
}
题尚未做答,请回答所有题目后再提交`
;
this
.
$dialog
this
.
$dialog
.
alert
({
.
alert
({
title
:
'提醒'
,
title
:
'提醒'
,
message
:
msg
,
message
:
msg
,
confirmButtonColor
:
'#94dcd2'
,
confirmButtonColor
:
'#94dcd2'
,
})
})
.
then
(()
=>
{
.
then
(()
=>
{
this
.
unFinishedConfirm
();
this
.
unFinishedConfirm
();
})
});
},
},
submitDialog
(){
submitDialog
()
{
this
.
$dialog
this
.
$dialog
.
confirm
({
.
confirm
({
title
:
'确定提交考卷'
,
title
:
'确定提交考卷'
,
message
:
'一旦提交后,将无法修改答题内容'
,
message
:
'一旦提交后,将无法修改答题内容'
,
cancelButtonText
:
'在想一下'
,
cancelButtonText
:
'在想一下'
,
confirmButtonText
:
'提交考卷'
,
confirmButtonText
:
'提交考卷'
,
confirmButtonColor
:
'#94dcd2'
,
confirmButtonColor
:
'#94dcd2'
,
cancelButtonColor
:
'#666'
,
cancelButtonColor
:
'#666'
,
})
})
.
then
(()
=>
{
.
then
(()
=>
{
this
.
submitConfirm
();
this
.
submitConfirm
();
})
})
.
catch
(()
=>
{
.
catch
(()
=>
{
this
.
hideSubmitConfirm
();
this
.
hideSubmitConfirm
();
});
});
},
},
getFirstUnselected
()
{
getFirstUnselected
()
{
let
count
=
this
.
questions
.
length
const
count
=
this
.
questions
.
length
;
let
selectedIndexs
=
Object
.
keys
(
this
.
selected
)
const
selectedIndexs
=
Object
.
keys
(
this
.
selected
);
for
(
var
i
=
0
;
i
<
count
;
i
++
)
{
for
(
var
i
=
0
;
i
<
count
;
i
++
)
{
if
(
selectedIndexs
.
indexOf
(
i
+
''
)
==
-
1
)
{
if
(
selectedIndexs
.
indexOf
(
i
+
''
)
==
-
1
)
{
return
i
+
1
return
i
+
1
;
}
}
}
}
},
unFinishedConfirm
()
{
this
.
showUnFinishedTip
=
false
;
},
},
unFinishedConfirm
()
{
submitConfirm
()
{
this
.
showUnFinishedTip
=
false
this
.
showSubmitConfirm
=
false
;
const
el
=
this
.
$refs
[
'question_'
+
(
this
.
firstUnselectedIndex
-
1
)][
0
]
this
.
submit
();
//dom.scrollToElement(el, { offset: -140, animated: false })
},
},
submitConfirm
()
{
hideSubmitConfirm
()
{
this
.
showSubmitConfirm
=
false
this
.
showSubmitConfirm
=
false
;
this
.
submit
()
},
},
hideSubmitConfirm
()
{
this
.
showSubmitConfirm
=
false
},
select
(
obj
)
{
select
(
obj
)
{
let
item
=
obj
.
item
const
item
=
obj
.
item
;
this
.
selected
[
item
.
index
]
=
item
this
.
selected
[
item
.
index
]
=
item
;
this
.
selectedCount
=
Object
.
keys
(
this
.
selected
).
length
this
.
selectedCount
=
Object
.
keys
(
this
.
selected
).
length
;
},
},
timeout
()
{
timeout
()
{
if
(
!
this
.
showSubmitConfirm
)
{
if
(
!
this
.
showSubmitConfirm
)
{
this
.
showTimeoutConfirm
=
true
this
.
showTimeoutConfirm
=
true
;
this
.
$dialog
this
.
$dialog
.
alert
({
.
alert
({
title
:
'提醒'
,
title
:
'提醒'
,
...
@@ -502,36 +548,36 @@ export default {
...
@@ -502,36 +548,36 @@ export default {
}
}
},
},
timeoutConfirm
()
{
timeoutConfirm
()
{
this
.
showTimeoutConfirm
=
false
this
.
showTimeoutConfirm
=
false
;
this
.
submit
()
this
.
submit
();
},
},
giveUp
()
{
giveUp
()
{
if
(
this
.
isSubmitting
)
{
return
}
if
(
this
.
isSubmitting
)
{
return
;
}
this
.
showGiveUpConfirm
=
true
this
.
showGiveUpConfirm
=
true
;
this
.
$dialog
this
.
$dialog
.
confirm
({
.
confirm
({
title
:
'提醒'
,
title
:
'提醒'
,
message
:
'确认要放弃本次考试吗?'
,
message
:
'确认要放弃本次考试吗?'
,
cancelButtonText
:
'放弃'
,
cancelButtonText
:
'放弃'
,
confirmButtonText
:
'继续考试'
,
confirmButtonText
:
'继续考试'
,
confirmButtonColor
:
'#94dcd2'
,
confirmButtonColor
:
'#94dcd2'
,
cancelButtonColor
:
'#666'
,
cancelButtonColor
:
'#666'
,
})
})
.
then
(()
=>
{
.
then
(()
=>
{
this
.
giveUpConfirm
();
this
.
giveUpConfirm
();
})
})
.
catch
(()
=>
{
.
catch
(()
=>
{
this
.
hideGiveUpConfirm
();
this
.
hideGiveUpConfirm
();
});
});
},
},
hideGiveUpConfirm
()
{
hideGiveUpConfirm
()
{
this
.
showGiveUpConfirm
=
false
this
.
showGiveUpConfirm
=
false
;
this
.
back
()
this
.
back
();
},
},
giveUpConfirm
()
{
giveUpConfirm
()
{
this
.
showGiveUpConfirm
=
false
this
.
showGiveUpConfirm
=
false
;
}
}
}
}
}
};
</
script
>
</
script
>
\ No newline at end of file
src/views/exam/local_exam_history.vue
浏览文件 @
7d3c9951
<
template
>
<
template
>
<div
class=
"contenter"
>
<div
class=
"contenter"
>
<lives-exam-history
:showHeaderH=
"false"
:localHistoryList=
"historyList"
@
goExamStart=
"goExamStart"
@
watchResult=
"watchResult"
></lives-exam-history>
<lives-exam-history
<div
class=
"history-nomore"
v-if=
"historyList.length > 0"
>
:show-header-h=
"false"
<div
class=
"nomore-text"
>
没有更多记录了
</div>
:local-history-list=
"historyList"
@
goExamStart=
"goExamStart"
@
watchResult=
"watchResult"
/>
<div
v-if=
"historyList.length > 0"
class=
"history-nomore"
>
<div
class=
"nomore-text"
>
没有更多记录了
</div>
</div>
<pica-header
title=
"考试记录"
@
goBack=
"goBack"
showHeader=
"true"
></pica-header>
</div>
</div>
<pica-header
title=
"考试记录"
show-header=
"true"
@
goBack=
"goBack"
/>
</div>
</
template
>
</
template
>
<
style
scoped
>
<
style
scoped
>
...
@@ -19,83 +33,76 @@
...
@@ -19,83 +33,76 @@
</
style
>
</
style
>
<
script
>
<
script
>
import
picaHeader
from
'@/components/stroke/picaHeader'
import
picaHeader
from
'@/components/stroke/picaHeader'
;
import
livesExamHistory
from
"@/components/stroke/livesExamHistory"
;
import
livesExamHistory
from
'@/components/stroke/livesExamHistory'
;
import
{
getCoopLiveExam
}
from
'@/api/storke.js'
;
import
{
getCoopLiveExam
}
from
'@/api/storke.js'
;
export
default
{
export
default
{
data
:
()
=>
({
components
:{
id
:
''
,
livesExamHistory
,
isPassExam
:
false
,
picaHeader
},
showHeaderH
:
false
,
data
:
()
=>
({
historyList
:[],
id
:
''
,
isPassExam
:
false
,
showHeaderH
:
false
,
historyList
:[],
livesList
:{
livesList
:{
examId
:
''
,
examId
:
''
,
examResultId
:
''
,
examResultId
:
''
,
endDate
:
''
endDate
:
''
},
},
token
:
""
token
:
''
}),
}),
computed
:
{
computed
:
{
},
},
components
:{
created
()
{
livesExamHistory
,
this
.
token
=
this
.
$storejs
.
get
(
'token'
);
picaHeader
},
this
.
id
=
this
.
$route
.
query
.
projectId
;
created
()
{
this
.
init
();
this
.
token
=
this
.
$storejs
.
get
(
'token'
);
},
this
.
id
=
this
.
$route
.
query
.
projectId
methods
:
{
this
.
init
()
init
()
{
},
const
_self
=
this
;
methods
:
{
getCoopLiveExam
({
id
:
this
.
id
,
token
:
this
.
token
}).
catch
(
res
=>
{
init
(){
if
(
res
&&
res
.
data
)
{
/*this.GET('app/exam/lives/results',{examId:id,pageNo:1,pageSize:15},res=>{
if
(
res
.
data
.
pLiveExamList
&&
res
.
data
.
pLiveExamList
.
length
)
{
console.log("所有现场考试记录",res)
_self
.
historyList
=
res
.
data
.
pLiveExamList
;
this.historyList = res.data.examRecordList
_self
.
historyList
=
_self
.
historyList
.
concat
([]);
this.historyList.map(res=>{
}
else
{
// res.createdTime = res.createdTime.substring(0,10)
_self
.
historyList
=
[];
})
})*/
let
_self
=
this
getCoopLiveExam
({
id
:
id
,
token
:
this
.
token
}).
catch
(
res
=>
{
if
(
res
&&
res
.
data
){
if
(
res
.
data
.
pLiveExamList
&&
res
.
data
.
pLiveExamList
.
length
){
_self
.
historyList
=
res
.
data
.
pLiveExamList
_self
.
historyList
=
_self
.
historyList
.
concat
([])
}
else
{
_self
.
historyList
=
[]
}
}
else
{
this
.
$toast
(
'网络异常,请稍后再试'
);
}
});
},
//重考
goExamStart
(
obj
){
this
.
$router
.
push
({
path
:
'/exam-result'
,
query
:{
examId
:
obj
.
id
,
origin
:
'start'
,
examType
:
'local'
,
endDate
:
obj
.
endDate
,
answerResultId
:
obj
.
examResultId
}
})
},
//查看
watchResult
(
obj
){
this
.
$router
.
push
({
path
:
'/exam-result'
,
query
:{
examId
:
obj
.
id
,
origin
:
''
,
examType
:
'local'
,
endDate
:
obj
.
endDate
,
answerResultId
:
obj
.
examResultId
}
})
}
}
}
}
else
{
}
this
.
$toast
(
'网络异常,请稍后再试'
);
}
});
},
// 重考
goExamStart
(
obj
)
{
this
.
$router
.
push
({
path
:
'/exam-result'
,
query
:{
examId
:
obj
.
id
,
origin
:
'start'
,
examType
:
'local'
,
endDate
:
obj
.
endDate
,
answerResultId
:
obj
.
examResultId
}
});
},
// 查看
watchResult
(
obj
)
{
this
.
$router
.
push
({
path
:
'/exam-result'
,
query
:{
examId
:
obj
.
id
,
origin
:
''
,
examType
:
'local'
,
endDate
:
obj
.
endDate
,
answerResultId
:
obj
.
examResultId
}
});
}
}
};
</
script
>
</
script
>
<
style
scoped
>
<
style
scoped
>
.history-nomore
{
.history-nomore
{
...
...
src/views/examResult/index.vue
浏览文件 @
7d3c9951
<
template
>
<
template
>
<!--
<scroller
show-scrollbar=
"false"
style=
"background-color: white;"
>
-->
<!--
<scroller
show-scrollbar=
"false"
style=
"background-color: white;"
>
-->
<div>
<div>
<div
class=
"body_background"
>
<div
class=
"body_background"
>
<pica-header
@
goBack=
"goBack"
:type=
"type"
:showHeader=
"showHeader"
></pica-header>
<pica-header
<exam-info
:exam=
"exam"
:type=
"type"
@
reExamStart=
"reExamStart"
:startNum=
"startNum"
:endNum=
"endNum"
:examType=
"examType"
v-bind:hasWrong=
"hasWrong"
></exam-info>
:type=
"type"
<exam-history
:showHeaderH=
"showHeaderH"
:historyList=
"historyList"
:examId=
"examId"
:exam=
"exam"
></exam-history>
:show-header=
"showHeader"
</div>
@
goBack=
"goBack"
</div>
/>
<!--
<wxc-loading
:show=
"isShow"
></wxc-loading>
-->
<exam-info
<!--
</scroller>
-->
:exam=
"exam"
:type=
"type"
:start-num=
"startNum"
:end-num=
"endNum"
:exam-type=
"examType"
:has-wrong=
"hasWrong"
@
reExamStart=
"reExamStart"
/>
<exam-history
:show-header-h=
"showHeaderH"
:history-list=
"historyList"
:exam-id=
"examId"
:exam=
"exam"
/>
</div>
</div>
<!--
<wxc-loading
:show=
"isShow"
></wxc-loading>
-->
<!--
</scroller>
-->
</
template
>
</
template
>
<
style
scoped
>
<
style
scoped
>
...
@@ -18,150 +35,150 @@
...
@@ -18,150 +35,150 @@
}
}
</
style
>
</
style
>
<
script
>
<
script
>
import
examInfo
from
'@/components/stroke/examInfo'
import
examInfo
from
'@/components/stroke/examInfo'
;
import
examHistory
from
'@/components/stroke/examHistory'
import
examHistory
from
'@/components/stroke/examHistory'
;
import
picaHeader
from
'@/components/stroke/picaHeader'
import
picaHeader
from
'@/components/stroke/picaHeader'
;
import
{
getCoopExam
,
getCoopExamResultNew
,
getCoopExamResultNews
}
from
'@/api/exam.js'
;
import
{
getCoopExam
,
getCoopExamResultNew
,
getCoopExamResultNews
}
from
'@/api/exam.js'
;
//import WxcLoading from '../../components/wxc-loading'
// import WxcLoading from '../../components/wxc-loading'
//let configurationModule = weex.requireModule('configurationModule')
// let configurationModule = weex.requireModule('configurationModule')
//let modal = weex.requireModule('modal')
// let modal = weex.requireModule('modal')
export
default
{
export
default
{
data
:
()
=>
({
answerResultId
:
''
,
id
:
''
,
examId
:
''
,
isPassExam
:
false
,
showHeader
:
true
,
showHeaderH
:
true
,
//历史记录的header
exam
:{},
//考试基本信息
historyList
:[],
type
:
2
,
//2 考试开始, 0 考试失败, 1 考试成功
source
:
''
,
startNum
:
-
1
,
endNum
:
-
1
,
isShow
:
false
,
from
:
''
,
testMsg
:
''
,
examType
:
'common'
,
hasWrong
:
false
,
token
:
""
}),
computed
:
{},
components
:{
components
:{
examInfo
,
examInfo
,
examHistory
,
picaHeader
,
examHistory
,
picaHeader
,
//WxcLoading
// WxcLoading
},
data
:
()
=>
({
answerResultId
:
''
,
id
:
''
,
examId
:
''
,
isPassExam
:
false
,
showHeader
:
true
,
showHeaderH
:
true
,
// 历史记录的header
exam
:{},
// 考试基本信息
historyList
:[],
type
:
2
,
// 2 考试开始, 0 考试失败, 1 考试成功
source
:
''
,
startNum
:
-
1
,
endNum
:
-
1
,
isShow
:
false
,
from
:
''
,
testMsg
:
''
,
examType
:
'common'
,
hasWrong
:
false
,
token
:
''
}),
computed
:
{},
created
()
{
this
.
token
=
this
.
$storejs
.
get
(
'token'
);
this
.
examId
=
this
.
$route
.
query
.
examId
;
this
.
from
=
this
.
$route
.
query
.
from
;
this
.
showHeader
=
this
.
from
!=
'exam'
;
this
.
answerResultId
=
this
.
$route
.
query
.
answerResultId
||
0
;
const
startNum
=
this
.
$route
.
query
.
startNum
;
const
endNum
=
this
.
$route
.
query
.
endNum
;
this
.
startNum
=
startNum
>=
0
?
startNum
:
-
1
;
this
.
endNum
=
endNum
>=
0
?
endNum
:
-
1
;
},
},
created
()
{
mounted
()
{
this
.
token
=
this
.
$storejs
.
get
(
'token'
);
this
.
init
();
this
.
examId
=
this
.
$route
.
query
.
examId
this
.
from
=
this
.
$route
.
query
.
from
this
.
showHeader
=
this
.
from
!=
'exam'
this
.
answerResultId
=
this
.
$route
.
query
.
answerResultId
||
0
let
startNum
=
this
.
$route
.
query
.
startNum
let
endNum
=
this
.
$route
.
query
.
endNum
this
.
startNum
=
startNum
>=
0
?
startNum
:
-
1
this
.
endNum
=
endNum
>=
0
?
endNum
:
-
1
},
mounted
(){
this
.
init
()
},
},
methods
:
{
methods
:
{
init
(){
init
()
{
this
.
isShow
=
true
this
.
isShow
=
true
;
this
.
hasWrong
=
false
;
this
.
hasWrong
=
false
;
if
(
this
.
from
!==
"exam"
&&
!
(
this
.
answerResultId
>
0
)){
//开始页面
if
(
this
.
from
!==
'exam'
&&
!
(
this
.
answerResultId
>
0
))
{
// 开始页面
this
.
type
=
2
this
.
type
=
2
;
getCoopExam
({
"examId"
:
this
.
examId
,
"type"
:
5
,
token
:
this
.
token
}).
catch
(
res
=>
{
getCoopExam
({
'examId'
:
this
.
examId
,
'type'
:
5
,
token
:
this
.
token
}).
catch
(
res
=>
{
if
(
res
.
data
){
if
(
res
.
data
)
{
if
(
res
.
data
.
respCode
==
1000
)
{
if
(
res
.
data
.
respCode
==
1000
)
{
return
this
.
$toast
(
res
.
data
.
respMsg
);
return
this
.
$toast
(
res
.
data
.
respMsg
);
}
else
if
(
res
.
data
.
respCode
==
401
||
res
.
data
.
respCode
==
404
)
{
}
else
if
(
res
.
data
.
respCode
==
401
||
res
.
data
.
respCode
==
404
)
{
return
this
.
$rocNative
.
gotoLogin
();
return
this
.
$rocNative
.
gotoLogin
();
};
if
(
res
.
data
.
respCode
==
200
){
this
.
exam
=
res
.
data
.
examBaseInfo
}
}
else
{
this
.
hasWrong
=
true
;
this
.
$toast
(
res
.
data
.
respMsg
)
}
})
}
else
{
//结果页面
this
.
hasWrong
=
false
;
getCoopExamResultNew
({
answerResultId
:
this
.
answerResultId
,
type
:
5
,
token
:
this
.
token
}).
catch
(
res
=>
{
if
(
res
.
data
){
if
(
res
.
data
.
respCode
==
200
){
// weex.requireModule('CourseModule').finishTest(res.data)
this
.
exam
=
res
.
data
.
answerResult
this
.
type
=
this
.
exam
.
passFlag
==
5
?
1
:
0
;
}
else
if
(
res
.
data
.
respCode
==
1000
)
{
return
this
.
$toast
(
res
.
data
.
respMsg
);
}
else
if
(
res
.
data
.
respCode
==
401
||
res
.
data
.
respCode
==
404
)
{
return
this
.
$rocNative
.
gotoLogin
();
}
else
{
this
.
hasWrong
=
true
;
this
.
$toast
(
res
.
data
.
respMsg
)
}
}
else
{
this
.
hasWrong
=
true
;
this
.
$toast
(
res
.
data
.
respMsg
)
}
});
}
}
this
.
hasWrong
=
false
;
if
(
res
.
data
.
respCode
==
200
)
{
getCoopExamResultNews
({
examId
:
this
.
examId
,
pageNo
:
1
,
pageSize
:
3
,
type
:
5
,
token
:
this
.
token
}).
catch
(
res
=>
{
this
.
exam
=
res
.
data
.
examBaseInfo
;
this
.
isShow
=
false
}
if
(
res
.
data
){
}
else
{
if
(
res
.
data
.
respCode
==
200
){
this
.
hasWrong
=
true
;
this
.
historyList
=
res
.
data
.
examRecordList
this
.
$toast
(
res
.
data
.
respMsg
);
this
.
historyList
.
map
(
res
=>
{
res
.
createdTime
=
res
.
createdTime
.
substring
(
0
,
10
)
})
}
else
if
(
res
.
data
.
respCode
==
1000
)
{
return
this
.
$toast
(
res
.
data
.
respMsg
);
}
else
if
(
res
.
data
.
respCode
==
401
||
res
.
data
.
respCode
==
404
)
{
return
this
.
$rocNative
.
gotoLogin
();
}
else
{
this
.
hasWrong
=
true
;
this
.
$toast
(
res
.
data
.
respMsg
)
}
}
else
{
this
.
hasWrong
=
true
;
this
.
$toast
(
res
.
data
.
respMsg
)
}
})
// this.GET('app/projectExam/results',{examId:this.examId,pageNo:1,pageSize:3, type: 5},res=>{
// this.isShow = false
// if (res.data && res.data.respCode == 200){
// this.historyList = res.data.examRecordList
// this.historyList.map(res=>{
// res.createdTime = res.createdTime.substring(0,10)
// })
// }else {
// this.hasWrong = true;
// modal.toast({
// message: res.data.respMsg,
// duration: 1.0
// })
// }
// })
},
goBack
(){
this
.
$router
.
go
(
-
1
);
},
reExamStart
(){
this
.
from
=
"start"
this
.
type
=
2
this
.
showHeader
=
true
if
(
this
.
endNum
>
0
){
this
.
startNum
=
this
.
endNum
}
this
.
answerResultId
=
-
1
this
.
init
()
}
}
}
});
}
}
else
{
// 结果页面
this
.
hasWrong
=
false
;
getCoopExamResultNew
({
answerResultId
:
this
.
answerResultId
,
type
:
5
,
token
:
this
.
token
}).
catch
(
res
=>
{
if
(
res
.
data
)
{
if
(
res
.
data
.
respCode
==
200
)
{
// weex.requireModule('CourseModule').finishTest(res.data)
this
.
exam
=
res
.
data
.
answerResult
;
this
.
type
=
this
.
exam
.
passFlag
==
5
?
1
:
0
;
}
else
if
(
res
.
data
.
respCode
==
1000
)
{
return
this
.
$toast
(
res
.
data
.
respMsg
);
}
else
if
(
res
.
data
.
respCode
==
401
||
res
.
data
.
respCode
==
404
)
{
return
this
.
$rocNative
.
gotoLogin
();
}
else
{
this
.
hasWrong
=
true
;
this
.
$toast
(
res
.
data
.
respMsg
);
}
}
else
{
this
.
hasWrong
=
true
;
this
.
$toast
(
res
.
data
.
respMsg
);
}
});
}
this
.
hasWrong
=
false
;
getCoopExamResultNews
({
examId
:
this
.
examId
,
pageNo
:
1
,
pageSize
:
3
,
type
:
5
,
token
:
this
.
token
}).
catch
(
res
=>
{
this
.
isShow
=
false
;
if
(
res
.
data
)
{
if
(
res
.
data
.
respCode
==
200
)
{
this
.
historyList
=
res
.
data
.
examRecordList
;
this
.
historyList
.
map
(
res
=>
{
res
.
createdTime
=
res
.
createdTime
.
substring
(
0
,
10
);
});
}
else
if
(
res
.
data
.
respCode
==
1000
)
{
return
this
.
$toast
(
res
.
data
.
respMsg
);
}
else
if
(
res
.
data
.
respCode
==
401
||
res
.
data
.
respCode
==
404
)
{
return
this
.
$rocNative
.
gotoLogin
();
}
else
{
this
.
hasWrong
=
true
;
this
.
$toast
(
res
.
data
.
respMsg
);
}
}
else
{
this
.
hasWrong
=
true
;
this
.
$toast
(
res
.
data
.
respMsg
);
}
});
// this.GET('app/projectExam/results',{examId:this.examId,pageNo:1,pageSize:3, type: 5},res=>{
// this.isShow = false
// if (res.data && res.data.respCode == 200){
// this.historyList = res.data.examRecordList
// this.historyList.map(res=>{
// res.createdTime = res.createdTime.substring(0,10)
// })
// }else {
// this.hasWrong = true;
// modal.toast({
// message: res.data.respMsg,
// duration: 1.0
// })
// }
// })
},
goBack
()
{
this
.
$router
.
go
(
-
1
);
},
reExamStart
()
{
this
.
from
=
'start'
;
this
.
type
=
2
;
this
.
showHeader
=
true
;
if
(
this
.
endNum
>
0
)
{
this
.
startNum
=
this
.
endNum
;
}
this
.
answerResultId
=
-
1
;
this
.
init
();
}
}
};
</
script
>
</
script
>
\ No newline at end of file
src/views/stroke/index.js
浏览文件 @
7d3c9951
// import WxcDialog from '../components/wxc-dialog'
// import WxcDialog from '../components/wxc-dialog'
// import strokeSlot from '../components/business/strokeSlot'
// import strokeSlot from '../components/business/strokeSlot'
//import examHistory from '../components/stroke/examHistory';
//
import examHistory from '../components/stroke/examHistory';
//import main from '../components/stroke/main';
//
import main from '../components/stroke/main';
// import picaCommon from '../util/picaCommon'
// import picaCommon from '../util/picaCommon'
// import WxcLoading from '../components/wxc-loading'
// import WxcLoading from '../components/wxc-loading'
// import livesExamHistory from "../components/stroke/livesExamHistory";
// import livesExamHistory from "../components/stroke/livesExamHistory";
//import WxcDialog from '../components/wxc-dialog';
//
import WxcDialog from '../components/wxc-dialog';
// let modal = weex.requireModule('modal')
// let modal = weex.requireModule('modal')
// let configurationModule = weex.requireModule('configurationModule')
// let configurationModule = weex.requireModule('configurationModule')
// let globalEvent = weex.requireModule('globalEvent')
// let globalEvent = weex.requireModule('globalEvent')
// let storage = weex.requireModule('storage')
// let storage = weex.requireModule('storage')
//import WxcDialog from '../components/wxc-dialog'
//
import WxcDialog from '../components/wxc-dialog'
import
componentMain
from
'@/components/stroke/componentMain'
;
import
componentMain
from
'@/components/stroke/componentMain'
;
import
CommonHeader
from
'@/components/common/header'
;
import
CommonHeader
from
'@/components/common/header'
;
import
livesExamHistory
from
"@/components/stroke/livesExamHistory"
;
import
livesExamHistory
from
'@/components/stroke/livesExamHistory'
;
import
{
getCoopTop
,
getCoopBottom
,
getCoopMiddle
,
getCoopLiveExam
,
getCoopOrder
}
from
'@/api/storke.js'
;
import
{
getCoopTop
,
getCoopBottom
,
getCoopMiddle
,
getCoopLiveExam
,
getCoopOrder
}
from
'@/api/storke.js'
;
import
{
getCoopExamResult
}
from
'@/api/exam.js'
;
import
{
getCoopExamResult
}
from
'@/api/exam.js'
;
export
default
{
export
default
{
...
@@ -27,7 +27,8 @@ import { getCoopExamResult } from '@/api/exam.js';
...
@@ -27,7 +27,8 @@ import { getCoopExamResult } from '@/api/exam.js';
livesExamHistory
livesExamHistory
},
},
data
()
{
data
()
{
return
{
return
{
isLoading
:
true
,
keyIndex
:
0
,
keyIndex
:
0
,
showExamFinishedTip
:
false
,
showExamFinishedTip
:
false
,
showReInputTip
:
false
,
showReInputTip
:
false
,
...
@@ -66,7 +67,7 @@ import { getCoopExamResult } from '@/api/exam.js';
...
@@ -66,7 +67,7 @@ import { getCoopExamResult } from '@/api/exam.js';
height
:
'45px'
,
height
:
'45px'
,
backgroundColor
:
'rgba(106, 159, 233, 0.1)'
,
backgroundColor
:
'rgba(106, 159, 233, 0.1)'
,
borderRadius
:
'30px'
,
borderRadius
:
'30px'
,
margin
:
"0 auto"
,
margin
:
'0 auto'
,
width
:
'200px'
width
:
'200px'
},
},
codeTextStyle
:
{
codeTextStyle
:
{
...
@@ -88,10 +89,10 @@ import { getCoopExamResult } from '@/api/exam.js';
...
@@ -88,10 +89,10 @@ import { getCoopExamResult } from '@/api/exam.js';
needMarginBottom
:
false
,
needMarginBottom
:
false
,
marginBottom
:
'0px'
,
marginBottom
:
'0px'
,
parms
:{
parms
:{
id
:
4
,
token
:
"6A713648AB954CAEAE6B39265F624B52"
id
:
4
,
token
:
'BEB69157CD5E45CC8076B3AF54049A88'
},
},
flagLoading
:
0
,
flagLoading
:
0
,
title
:
""
,
title
:
''
,
bgColor
:
'rgba(255,255,255,0)'
,
bgColor
:
'rgba(255,255,255,0)'
,
isFixHeader
:
true
,
isFixHeader
:
true
,
orderListFlag
:
false
orderListFlag
:
false
...
@@ -103,6 +104,7 @@ import { getCoopExamResult } from '@/api/exam.js';
...
@@ -103,6 +104,7 @@ import { getCoopExamResult } from '@/api/exam.js';
},
},
flagLoading
(
newv
)
{
flagLoading
(
newv
)
{
if
(
newv
==
4
)
{
if
(
newv
==
4
)
{
this
.
isLoading
=
false
;
this
.
getOrder
();
this
.
getOrder
();
}
}
}
}
...
@@ -113,21 +115,25 @@ import { getCoopExamResult } from '@/api/exam.js';
...
@@ -113,21 +115,25 @@ import { getCoopExamResult } from '@/api/exam.js';
this
.
allowFlag
=
this
.
$route
.
query
.
allowFlag
||
1
;
this
.
allowFlag
=
this
.
$route
.
query
.
allowFlag
||
1
;
this
.
projectId
=
this
.
$route
.
query
.
projectId
||
2
;
this
.
projectId
=
this
.
$route
.
query
.
projectId
||
2
;
this
.
parms
.
id
=
this
.
projectId
;
this
.
parms
.
id
=
this
.
projectId
;
let
_that
=
this
;
this
.
parms
.
token
=
2
;
const
_that
=
this
;
this
.
$rocNative
.
getUserInfo
()
this
.
$rocNative
.
getUserInfo
()
.
then
((
res
)
=>
{
.
then
((
res
)
=>
{
let
token
=
""
let
token
=
''
;
if
(
res
.
userToken
)
{
if
(
res
.
userToken
)
{
token
=
res
.
userToken
token
=
res
.
userToken
;
}
else
{
}
else
{
token
=
_that
.
$route
.
query
.
token
token
=
_that
.
$route
.
query
.
token
;
}
}
_that
.
parms
.
token
=
token
;
_that
.
parms
.
token
=
token
;
_that
.
$storejs
.
set
(
'token'
,
token
);
_that
.
$storejs
.
set
(
'token'
,
token
);
this
.
init
();
this
.
init
();
})
})
.
catch
(()
=>
{
.
catch
(()
=>
{
this
.
init
();
if
(
this
.
$rocNative
.
isWeb
)
{
this
.
init
();
}
this
.
$rocNative
.
gotoLogin
();
});
});
},
},
mounted
()
{
mounted
()
{
...
@@ -140,17 +146,21 @@ import { getCoopExamResult } from '@/api/exam.js';
...
@@ -140,17 +146,21 @@ import { getCoopExamResult } from '@/api/exam.js';
// });
// });
// }) ///
// }) ///
window
.
addEventListener
(
'scroll'
,
this
.
scrollToTop
)
window
.
addEventListener
(
'scroll'
,
this
.
scrollToTop
)
;
},
},
methods
:
{
methods
:
{
onRefresh
()
{
this
.
flagLoading
=
0
;
this
.
init
();
},
scrollToTop
()
{
scrollToTop
()
{
var
scrollTop
=
window
.
pageYOffset
||
document
.
documentElement
.
scrollTop
||
document
.
body
.
scrollTop
;
var
scrollTop
=
window
.
pageYOffset
||
document
.
documentElement
.
scrollTop
||
document
.
body
.
scrollTop
;
if
(
scrollTop
>
8
3
)
{
if
(
scrollTop
>
6
3
)
{
this
.
bgColor
=
"#fff"
;
this
.
bgColor
=
'#fff'
;
this
.
title
=
this
.
projectName
;
this
.
title
=
this
.
projectName
;
}
else
if
(
scrollTop
<
83
)
{
}
else
if
(
scrollTop
<
63
)
{
this
.
bgColor
=
"rgba(255,255,255,0)"
;
this
.
bgColor
=
'rgba(255,255,255,0)'
;
this
.
title
=
""
this
.
title
=
''
;
}
}
},
},
getCurrentIndex
(
key
)
{
getCurrentIndex
(
key
)
{
...
@@ -199,26 +209,26 @@ import { getCoopExamResult } from '@/api/exam.js';
...
@@ -199,26 +209,26 @@ import { getCoopExamResult } from '@/api/exam.js';
}
}
this
.
isShow
=
false
;
this
.
isShow
=
false
;
var
result
=
res
.
data
.
checkResult
;
var
result
=
res
.
data
.
checkResult
;
le
t
flag
=
result
.
resultFlag
;
cons
t
flag
=
result
.
resultFlag
;
if
(
flag
==
1
)
{
if
(
flag
==
1
)
{
this
.
$router
.
push
({
this
.
$router
.
push
({
path
:
'/exam-result'
,
query
:{
'examId'
:
result
.
examId
,
'origin'
:
'start'
,
'examType'
:
'local'
,
'endDate'
:
result
.
endDate
}
path
:
'/exam-result'
,
query
:{
'examId'
:
result
.
examId
,
'origin'
:
'start'
,
'examType'
:
'local'
,
'endDate'
:
result
.
endDate
}
});
});
}
else
if
(
flag
==
5
)
{
}
else
if
(
flag
==
5
)
{
this
.
showExamNotStartTip
=
true
;
this
.
showExamNotStartTip
=
true
;
this
.
noExamStart
(
"考试未开始"
);
this
.
noExamStart
(
'考试未开始'
);
}
else
if
(
flag
==
10
||
flag
==
20
)
{
}
else
if
(
flag
==
10
||
flag
==
20
)
{
this
.
showExamFinishedTip
=
true
;
this
.
showExamFinishedTip
=
true
;
this
.
noExamStart
(
"考试已结束"
);
this
.
noExamStart
(
'考试已结束'
);
}
else
if
(
flag
==
15
)
{
}
else
if
(
flag
==
15
)
{
this
.
showReInputTip
=
true
;
this
.
showReInputTip
=
true
;
this
.
resetExamCodeEnter
()
this
.
resetExamCodeEnter
()
;
}
else
if
(
flag
==
30
)
{
}
else
if
(
flag
==
30
)
{
this
.
timesFull
=
true
;
this
.
timesFull
=
true
;
this
.
noExamStart
(
"考试次数已用完"
);
this
.
noExamStart
(
'考试次数已用完'
);
}
}
}
}
})
})
;
// this.GET('app/exam/lives/check', {examCode: code}, (res) => {
// this.GET('app/exam/lives/check', {examCode: code}, (res) => {
// this.isShow = false;
// this.isShow = false;
// var result = res.data.checkResult,
// var result = res.data.checkResult,
...
@@ -243,7 +253,7 @@ import { getCoopExamResult } from '@/api/exam.js';
...
@@ -243,7 +253,7 @@ import { getCoopExamResult } from '@/api/exam.js';
this
.
$dialog
.
alert
({
this
.
$dialog
.
alert
({
title
:
''
,
title
:
''
,
message
:
message
,
message
:
message
,
confirmButtonText
:
"我知道了"
confirmButtonText
:
'我知道了'
}).
then
(()
=>
{
}).
then
(()
=>
{
// on close
// on close
});
});
...
@@ -305,25 +315,25 @@ import { getCoopExamResult } from '@/api/exam.js';
...
@@ -305,25 +315,25 @@ import { getCoopExamResult } from '@/api/exam.js';
getTop
()
{
getTop
()
{
this
.
isShow
=
true
;
this
.
isShow
=
true
;
const
_self
=
this
;
const
_self
=
this
;
//得到顶部的方法
//
得到顶部的方法
getCoopTop
(
this
.
parms
).
catch
((
res
)
=>
{
getCoopTop
(
this
.
parms
).
catch
((
res
)
=>
{
if
(
res
&&
res
.
data
)
{
if
(
res
&&
res
.
data
)
{
if
(
this
.
flagLoading
!=
5
)
{
if
(
this
.
flagLoading
!=
4
)
{
this
.
flagLoading
=
this
.
flagLoading
+
1
this
.
flagLoading
=
this
.
flagLoading
+
1
;
}
}
if
(
res
.
data
.
respCode
==
1000
)
{
if
(
res
.
data
.
respCode
==
1000
)
{
return
this
.
$toast
(
res
.
data
.
respMsg
);
return
this
.
$toast
(
res
.
data
.
respMsg
);
}
else
if
(
res
.
data
.
respCode
==
401
||
res
.
data
.
respCode
==
404
)
{
}
else
if
(
res
.
data
.
respCode
==
401
||
res
.
data
.
respCode
==
404
)
{
return
this
.
$rocNative
.
gotoLogin
();
return
this
.
$rocNative
.
gotoLogin
();
}
;
}
this
.
infoLists
=
res
.
data
.
texts
;
// 简介(文案)组件
this
.
infoLists
=
res
.
data
.
texts
;
// 简介(文案)组件
this
.
sliderLists
=
res
.
data
.
carousels
;
// 轮播图组件
this
.
sliderLists
=
res
.
data
.
carousels
;
// 轮播图组件
this
.
projectName
=
res
.
data
.
projectName
;
// 项目名称
this
.
projectName
=
res
.
data
.
projectName
;
// 项目名称
//this.projectName = this.getLength(this.projectName, 8);
//
this.projectName = this.getLength(this.projectName, 8);
}
else
{
}
else
{
this
.
$toast
(
"网络异常,请稍后再试"
);
this
.
$toast
(
'网络异常,请稍后再试'
);
}
}
})
})
;
},
},
getBottom
()
{
getBottom
()
{
getCoopBottom
(
this
.
parms
).
catch
((
res
)
=>
{
getCoopBottom
(
this
.
parms
).
catch
((
res
)
=>
{
...
@@ -332,9 +342,9 @@ import { getCoopExamResult } from '@/api/exam.js';
...
@@ -332,9 +342,9 @@ import { getCoopExamResult } from '@/api/exam.js';
return
this
.
$toast
(
res
.
data
.
respMsg
);
return
this
.
$toast
(
res
.
data
.
respMsg
);
}
else
if
(
res
.
data
.
respCode
==
401
||
res
.
data
.
respCode
==
404
)
{
}
else
if
(
res
.
data
.
respCode
==
401
||
res
.
data
.
respCode
==
404
)
{
return
this
.
$rocNative
.
gotoLogin
();
return
this
.
$rocNative
.
gotoLogin
();
}
;
}
if
(
this
.
flagLoading
!=
5
)
{
if
(
this
.
flagLoading
!=
4
)
{
this
.
flagLoading
=
this
.
flagLoading
+
1
this
.
flagLoading
=
this
.
flagLoading
+
1
;
}
}
this
.
courseLists
=
res
.
data
.
courses
;
this
.
courseLists
=
res
.
data
.
courses
;
if
(
this
.
courseLists
&&
this
.
courseLists
.
length
)
{
if
(
this
.
courseLists
&&
this
.
courseLists
.
length
)
{
...
@@ -344,9 +354,9 @@ import { getCoopExamResult } from '@/api/exam.js';
...
@@ -344,9 +354,9 @@ import { getCoopExamResult } from '@/api/exam.js';
}
}
this
.
courseLists
=
this
.
courseLists
.
concat
([]);
this
.
courseLists
=
this
.
courseLists
.
concat
([]);
}
else
{
}
else
{
this
.
$toast
(
"网络异常,请稍后再试"
);
this
.
$toast
(
'网络异常,请稍后再试'
);
}
}
})
})
;
},
},
getMiddle
()
{
getMiddle
()
{
getCoopMiddle
(
this
.
parms
).
catch
((
res
)
=>
{
getCoopMiddle
(
this
.
parms
).
catch
((
res
)
=>
{
...
@@ -356,9 +366,9 @@ import { getCoopExamResult } from '@/api/exam.js';
...
@@ -356,9 +366,9 @@ import { getCoopExamResult } from '@/api/exam.js';
return
this
.
$toast
(
res
.
data
.
respMsg
);
return
this
.
$toast
(
res
.
data
.
respMsg
);
}
else
if
(
res
.
data
.
respCode
==
401
||
res
.
data
.
respCode
==
404
)
{
}
else
if
(
res
.
data
.
respCode
==
401
||
res
.
data
.
respCode
==
404
)
{
return
this
.
$rocNative
.
gotoLogin
();
return
this
.
$rocNative
.
gotoLogin
();
}
;
}
if
(
this
.
flagLoading
!=
5
)
{
if
(
this
.
flagLoading
!=
4
)
{
this
.
flagLoading
=
this
.
flagLoading
+
1
this
.
flagLoading
=
this
.
flagLoading
+
1
;
}
}
this
.
examLists
=
res
.
data
.
moduleTypeExams
;
this
.
examLists
=
res
.
data
.
moduleTypeExams
;
if
(
this
.
examLists
&&
this
.
examLists
.
length
)
{
if
(
this
.
examLists
&&
this
.
examLists
.
length
)
{
...
@@ -385,9 +395,9 @@ import { getCoopExamResult } from '@/api/exam.js';
...
@@ -385,9 +395,9 @@ import { getCoopExamResult } from '@/api/exam.js';
this
.
examLists
=
[];
this
.
examLists
=
[];
}
}
}
else
{
}
else
{
this
.
$toast
(
"网络异常,请稍后再试"
)
this
.
$toast
(
'网络异常,请稍后再试'
);
}
}
})
})
;
// const _self = this;
// const _self = this;
// this.GET('contents/projects/middle', {id: this.projectId}, function (res) {
// this.GET('contents/projects/middle', {id: this.projectId}, function (res) {
// _self.isShow = false;
// _self.isShow = false;
...
@@ -434,8 +444,8 @@ import { getCoopExamResult } from '@/api/exam.js';
...
@@ -434,8 +444,8 @@ import { getCoopExamResult } from '@/api/exam.js';
}
else
if
(
res
.
data
.
respCode
==
401
||
res
.
data
.
respCode
==
404
)
{
}
else
if
(
res
.
data
.
respCode
==
401
||
res
.
data
.
respCode
==
404
)
{
return
this
.
$rocNative
.
gotoLogin
();
return
this
.
$rocNative
.
gotoLogin
();
}
}
if
(
this
.
flagLoading
!=
5
)
{
if
(
this
.
flagLoading
!=
4
)
{
this
.
flagLoading
=
this
.
flagLoading
+
1
this
.
flagLoading
=
this
.
flagLoading
+
1
;
}
}
this
.
pLiveMapping
=
res
.
data
.
pLiveMapping
;
this
.
pLiveMapping
=
res
.
data
.
pLiveMapping
;
if
(
res
.
data
.
pLiveExamList
&&
res
.
data
.
pLiveExamList
.
length
)
{
if
(
res
.
data
.
pLiveExamList
&&
res
.
data
.
pLiveExamList
.
length
)
{
...
@@ -443,14 +453,14 @@ import { getCoopExamResult } from '@/api/exam.js';
...
@@ -443,14 +453,14 @@ import { getCoopExamResult } from '@/api/exam.js';
this
.
localHistoryList
=
this
.
localHistoryList
.
concat
([]);
this
.
localHistoryList
=
this
.
localHistoryList
.
concat
([]);
}
}
}
else
{
}
else
{
this
.
$toast
(
"网络异常,请稍后再试"
);
this
.
$toast
(
'网络异常,请稍后再试'
);
}
}
//this.getOrder();
//
this.getOrder();
});
});
},
},
getOrder
()
{
getOrder
()
{
//const _self = this;
//
const _self = this;
getCoopOrder
(
this
.
parms
).
catch
((
res
)
=>
{
getCoopOrder
(
this
.
parms
).
catch
((
res
)
=>
{
if
(
res
&&
res
.
data
)
{
if
(
res
&&
res
.
data
)
{
if
(
res
.
data
.
respCode
==
1000
)
{
if
(
res
.
data
.
respCode
==
1000
)
{
...
@@ -460,13 +470,13 @@ import { getCoopExamResult } from '@/api/exam.js';
...
@@ -460,13 +470,13 @@ import { getCoopExamResult } from '@/api/exam.js';
}
}
// 组件type
// 组件type
// module_type:1、轮播图组件 5、文案组件 10、考试组件 15、关联课程组件 20、链接组件 25、现场考试组件
// module_type:1、轮播图组件 5、文案组件 10、考试组件 15、关联课程组件 20、链接组件 25、现场考试组件
if
(
this
.
flagLoading
!=
5
)
{
//
if (this.flagLoading !=5) {
this
.
flagLoading
=
this
.
flagLoading
+
1
;
//
this.flagLoading = this.flagLoading + 1;
}
//
}
this
.
orderList
=
res
.
data
.
projectList
;
this
.
orderList
=
res
.
data
.
projectList
;
this
.
orderListFlag
=
this
.
orderList
.
some
(
item
=>
{
this
.
orderListFlag
=
this
.
orderList
.
some
(
item
=>
{
return
item
.
module_type
==
25
return
item
.
module_type
==
25
;
})
})
;
if
(
res
.
data
.
respCode
!=
200
)
{
if
(
res
.
data
.
respCode
!=
200
)
{
return
this
.
$toast
(
res
.
data
.
respMsg
);
return
this
.
$toast
(
res
.
data
.
respMsg
);
}
}
...
@@ -494,27 +504,27 @@ import { getCoopExamResult } from '@/api/exam.js';
...
@@ -494,27 +504,27 @@ import { getCoopExamResult } from '@/api/exam.js';
}
}
this
.
slots
=
this
.
slots
.
concat
([]);
this
.
slots
=
this
.
slots
.
concat
([]);
this
.
allComponentLists
=
[];
this
.
allComponentLists
=
[];
this
.
sliderLists
.
forEach
(
(
item
)
=>
{
this
.
sliderLists
.
forEach
(
(
item
)
=>
{
this
.
allComponentLists
.
push
(
item
);
this
.
allComponentLists
.
push
(
item
);
});
});
this
.
infoLists
.
forEach
((
item
)
=>
{
this
.
infoLists
.
forEach
((
item
)
=>
{
this
.
allComponentLists
.
push
(
item
);
this
.
allComponentLists
.
push
(
item
);
});
});
this
.
courseLists
.
forEach
((
item
)
=>
{
this
.
courseLists
.
forEach
((
item
)
=>
{
this
.
allComponentLists
.
push
(
item
);
this
.
allComponentLists
.
push
(
item
);
});
});
this
.
examLists
.
forEach
((
item
)
=>
{
this
.
examLists
.
forEach
((
item
)
=>
{
this
.
allComponentLists
.
push
(
item
);
this
.
allComponentLists
.
push
(
item
);
});
});
this
.
livesExamLists
.
forEach
((
item
)
=>
{
this
.
livesExamLists
.
forEach
((
item
)
=>
{
this
.
allComponentLists
.
push
(
item
);
this
.
allComponentLists
.
push
(
item
);
});
});
this
.
allComponentLists
.
sort
((
a
,
b
)
=>
{
this
.
allComponentLists
.
sort
((
a
,
b
)
=>
{
return
a
.
seq_no
-
b
.
seq_no
;
return
a
.
seq_no
-
b
.
seq_no
;
});
});
this
.
allComponentLists
=
this
.
allComponentLists
.
concat
([]);
// Object.assign([],)
this
.
allComponentLists
=
this
.
allComponentLists
.
concat
([]);
// Object.assign([],)
}
else
{
}
else
{
this
.
$toast
(
"网络异常,请稍后再试"
);
this
.
$toast
(
'网络异常,请稍后再试'
);
}
}
});
});
},
},
...
@@ -545,7 +555,7 @@ import { getCoopExamResult } from '@/api/exam.js';
...
@@ -545,7 +555,7 @@ import { getCoopExamResult } from '@/api/exam.js';
this
.
$router
.
go
(
-
1
);
this
.
$router
.
go
(
-
1
);
}
}
// storage.setItem('needFlash', 'true');
// storage.setItem('needFlash', 'true');
//configurationModule.goBack(); 11
//
configurationModule.goBack(); 11
},
},
// 重考
// 重考
goExamStart
(
obj
)
{
goExamStart
(
obj
)
{
...
...
src/views/stroke/index.vue
浏览文件 @
7d3c9951
<
template
>
<
template
>
<div>
<div>
<div
class=
"stroke_container"
v-if=
"this.flagLoading==5"
>
<van-pull-refresh
<common-header
v-model=
"isLoading"
:bg-color=
"bgColor"
@
refresh=
"onRefresh"
:title=
"title"
>
:is-fix-header=
"isFixHeader"
<div
class=
"stroke_container"
>
:is-custom-back=
"true"
<common-header
@
selfGoBack=
"consulOrder"
:bg-color=
"bgColor"
/>
:title=
"title"
<template
v-if=
"allComponentLists.length"
>
:is-fix-header=
"isFixHeader"
<div
:is-custom-back=
"true"
v-for=
"(value, key) in slots"
@
selfGoBack=
"consulOrder"
ref=
"scrollerDom"
/>
:key=
"'a'+key"
<template
v-if=
"allComponentLists.length"
>
>
<component-main
ref=
"mainCp"
:type=
"value.slot"
:datas=
"allComponentLists[key]"
:keyIndex=
"key"
@
click
.
native=
"getCurrentIndex(key)"
/>
</div>
</
template
>
<!--</stroke-slot>-->
<div
v-if=
"orderListFlag"
>
<div
class=
"local-exam"
>
<div
<div
v-if=
"allowFlag == 0"
v-for=
"(value, key) in slots"
class=
"project_advice_new"
ref=
"scrollerDom"
:key=
"'a'+key"
>
>
<div
class=
"project_advice_text_new"
>
<component-main
您暂不属于该项目,若想获得学习权限,请拨打电话 400-920-8877 联系云鹊医工作人员。
ref=
"mainCp"
</div>
:type=
"value.slot"
:datas=
"allComponentLists[key]"
:key-index=
"key"
@
click
.
native=
"getCurrentIndex(key)"
/>
</div>
</div>
<div
class=
"project_title"
>
</
template
>
{{ pLiveMapping.examName }}
<!--</stroke-slot>-->
</div
>
<div
v-if=
"orderListFlag"
>
<div
class=
"
code-btn-wrap
"
>
<div
class=
"
local-exam
"
>
<div
:class=
"{'code-btn': (allowFlag == 0),'code-active-btn': (allowFlag != 0)}"
<div
:style=
"codeBtn
"
v-if=
"allowFlag == 0
"
@
click=
"codeBtnClicked
"
class=
"project_advice_new
"
>
>
<!-- :textStyle="allowFlag == 0 ? codeTextStyleNo : codeTextStyle" -->
<div
class=
"project_advice_text_new"
>
{{pLiveMapping.buttonName}}
您暂不属于该项目,若想获得学习权限,请拨打电话 400-920-8877 联系云鹊医工作人员。
</div>
</div>
<div
class=
"project_title"
>
{{ pLiveMapping.examName }}
</div>
<div
class=
"code-btn-wrap"
>
<div
:class=
"{'code-btn': (allowFlag == 0),'code-active-btn': (allowFlag != 0)}"
:style=
"codeBtn"
@
click=
"codeBtnClicked"
>
<!-- :textStyle="allowFlag == 0 ? codeTextStyleNo : codeTextStyle" -->
{{ pLiveMapping.buttonName }}
</div>
</div>
</div>
</div>
</div>
</div>
<div
class=
"history-wrap"
>
<div
class=
"history-wrap"
>
<div
class=
"history-header"
>
<div
class=
"history-header"
>
<div
class=
"project_title his_label"
>
<div
class=
"project_title his_label"
>
考试记录
考试记录
</div>
<div
v-if=
"localHistoryList.length >= 5"
class=
"course_see_more"
@
click=
"seeMoreHistory"
>
<div
class=
"see_more"
>
更多
</div>
</div>
<img
<div
class=
"see_more_img"
v-if=
"localHistoryList.length >= 5"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/arrow_right_gray%403x.png"
class=
"course_see_more"
@
click=
"seeMoreHistory"
>
>
<div
class=
"see_more"
>
更多
</div>
<img
class=
"see_more_img"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/arrow_right_gray%403x.png"
>
</div>
</div>
</div>
<lives-exam-history
:show-header-h=
"false"
:local-history-list=
"localHistoryList.slice(0,5)"
@
goExamStart=
"goExamStart"
@
watchResult=
"watchResult"
/>
</div>
</div>
<lives-exam-history
:show-header-h=
"false"
:local-history-list=
"localHistoryList.slice(0,5)"
@
goExamStart=
"goExamStart"
@
watchResult=
"watchResult"
/>
</div>
</div>
</div>
</div>
</div>
<!-- <wxc-loading :show="isShow"></wxc-loading> -->
<!-- <wxc-loading :show="isShow"></wxc-loading> -->
<!-- <wxc-dialog confirm-text="重新输入"
<!-- <wxc-dialog confirm-text="重新输入"
cancel-text="取消"
cancel-text="取消"
:show="showReInputTip"
:show="showReInputTip"
@wxcDialogCancelBtnClicked="hideReInput"
@wxcDialogCancelBtnClicked="hideReInput"
...
@@ -88,7 +91,7 @@
...
@@ -88,7 +91,7 @@
<div slot="content" class="content-subtext">考试码不正确</div>
<div slot="content" class="content-subtext">考试码不正确</div>
</wxc-dialog> 11-->
</wxc-dialog> 11-->
<!-- <wxc-dialog confirm-text="我知道了"
<!-- <wxc-dialog confirm-text="我知道了"
:show="showExamNotStartTip"
:show="showExamNotStartTip"
main-btn-color="#35cbca"
main-btn-color="#35cbca"
:single="true"
:single="true"
...
@@ -96,7 +99,7 @@
...
@@ -96,7 +99,7 @@
<text slot="content" class="content-subtext">考试未开始</text>
<text slot="content" class="content-subtext">考试未开始</text>
</wxc-dialog> 11-->
</wxc-dialog> 11-->
<!-- <wxc-dialog confirm-text="我知道了"
<!-- <wxc-dialog confirm-text="我知道了"
:show="showExamFinishedTip"
:show="showExamFinishedTip"
main-btn-color="#35cbca"
main-btn-color="#35cbca"
:single="true"
:single="true"
...
@@ -104,7 +107,7 @@
...
@@ -104,7 +107,7 @@
<text slot="content" class="content-subtext">考试已结束</text>
<text slot="content" class="content-subtext">考试已结束</text>
</wxc-dialog> 11-->
</wxc-dialog> 11-->
<!-- <wxc-dialog confirm-text="我知道了"
<!-- <wxc-dialog confirm-text="我知道了"
:show="timesFull"
:show="timesFull"
main-btn-color="#35cbca"
main-btn-color="#35cbca"
:single="true"
:single="true"
...
@@ -112,9 +115,9 @@
...
@@ -112,9 +115,9 @@
<text slot="content" class="content-subtext">考试次数已用完</text>
<text slot="content" class="content-subtext">考试次数已用完</text>
</wxc-dialog> 11-->
</wxc-dialog> 11-->
<!--height="342"-->
<!--height="342"-->
<!-- <wxc-mask height="642"
<!-- <wxc-mask height="642"
width="750"
width="750"
border-radius="0"
border-radius="0"
duration="200"
duration="200"
...
@@ -139,24 +142,86 @@
...
@@ -139,24 +142,86 @@
</div>
</div>
</div>
</div>
</wxc-mask> 11-->
</wxc-mask> 11-->
<van-overlay
:show=
"showCodeInputDialog"
@
click=
"showCodeInputDialog = false"
>
<van-overlay
<div
class=
"wrapper"
@
click
.
stop
>
:show=
"showCodeInputDialog"
<div
class=
"code-content"
>
@
click=
"showCodeInputDialog = false"
<div
class=
"code-title-wrap"
>
>
<img
class=
"code-img"
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/close%403x.png"
@
click=
"showCodeInputDialog=false"
/>
<div
<div
class=
"code-title"
>
请输入考试码
</div>
class=
"wrapper"
</div>
@
click
.
stop
<div
class=
"code-input-wrap"
>
>
<input
type=
"text"
class=
"code-input"
:class=
"[code1.length > 0 ? 'code-active': '']"
v-model=
"code1"
maxlength=
"1"
@
input=
"codeChange(code1, 'code2')"
ref=
"code1"
autofocus=
"true"
/>
<div
class=
"code-content"
>
<input
type=
"text"
class=
"code-input"
:class=
"[code2.length > 0 ? 'code-active': '']"
v-model=
"code2"
maxlength=
"1"
@
input=
"codeChange(code2, 'code3')"
ref=
"code2"
/>
<div
class=
"code-title-wrap"
>
<input
type=
"text"
class=
"code-input"
:class=
"[code3.length > 0 ? 'code-active': '']"
v-model=
"code3"
maxlength=
"1"
@
input=
"codeChange(code3, 'code4')"
ref=
"code3"
/>
<img
<input
type=
"text"
class=
"code-input"
:class=
"[code4.length > 0 ? 'code-active': '']"
v-model=
"code4"
maxlength=
"1"
@
input=
"codeChange(code4, 'code5')"
ref=
"code4"
/>
class=
"code-img"
<input
type=
"text"
class=
"code-input"
:class=
"[code5.length > 0 ? 'code-active': '']"
v-model=
"code5"
maxlength=
"1"
@
input=
"codeChange(code5, 'code6')"
ref=
"code5"
/>
src=
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/eagle_plan/close%403x.png"
<input
type=
"text"
class=
"code-input"
:class=
"[code6.length > 0 ? 'code-active': '']"
v-model=
"code6"
maxlength=
"1"
@
input=
"codeChange(code6, '')"
ref=
"code6"
/>
@
click=
"showCodeInputDialog=false"
>
<div
class=
"code-title"
>
请输入考试码
</div>
</div>
<div
class=
"code-input-wrap"
>
<input
ref=
"code1"
v-model=
"code1"
type=
"text"
class=
"code-input"
:class=
"[code1.length > 0 ? 'code-active': '']"
maxlength=
"1"
autofocus=
"true"
@
input=
"codeChange(code1, 'code2')"
>
<input
ref=
"code2"
v-model=
"code2"
type=
"text"
class=
"code-input"
:class=
"[code2.length > 0 ? 'code-active': '']"
maxlength=
"1"
@
input=
"codeChange(code2, 'code3')"
>
<input
ref=
"code3"
v-model=
"code3"
type=
"text"
class=
"code-input"
:class=
"[code3.length > 0 ? 'code-active': '']"
maxlength=
"1"
@
input=
"codeChange(code3, 'code4')"
>
<input
ref=
"code4"
v-model=
"code4"
type=
"text"
class=
"code-input"
:class=
"[code4.length > 0 ? 'code-active': '']"
maxlength=
"1"
@
input=
"codeChange(code4, 'code5')"
>
<input
ref=
"code5"
v-model=
"code5"
type=
"text"
class=
"code-input"
:class=
"[code5.length > 0 ? 'code-active': '']"
maxlength=
"1"
@
input=
"codeChange(code5, 'code6')"
>
<input
ref=
"code6"
v-model=
"code6"
type=
"text"
class=
"code-input"
:class=
"[code6.length > 0 ? 'code-active': '']"
maxlength=
"1"
@
input=
"codeChange(code6, '')"
>
</div>
</div>
</div>
</div>
</div>
</van-overlay>
</div>
</van-pull-refresh>
</van-overlay>
</div>
</div>
</template>
</template>
...
...
写
预览
Markdown
格式
0%
请重试
or
附加一个文件
附加文件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录