Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
confucius
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
罗超
confucius
Commits
94ea3ac4
Commit
94ea3ac4
authored
Aug 18, 2021
by
罗超
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1
parent
b9effd4a
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
833 additions
and
163 deletions
+833
-163
exam.js
src/api/system/exam.js
+25
-0
index.js
src/api/teacher/index.js
+14
-2
examineeManager.vue
src/pages/exam/examineeManager.vue
+179
-0
examlist.vue
src/pages/exam/examlist.vue
+187
-153
examConfig.vue
src/pages/system/examConfig.vue
+411
-0
processSet.vue
src/pages/system/processSet.vue
+4
-4
routes.js
src/router/routes.js
+13
-4
No files found.
src/api/system/exam.js
0 → 100644
View file @
94ea3ac4
import
request
from
'../../utils/request'
/**
* 获取考试配置
*
*/
export
function
getExaminationConfigureModel
(
data
)
{
return
request
({
url
:
'/Exam/GetExaminationConfigureModel'
,
method
:
'post'
,
data
})
}
/**
* 新增/修改考试配置
*
*/
export
function
setExaminationConfigure
(
data
)
{
return
request
({
url
:
'/Exam/SetExaminationConfigure'
,
method
:
'post'
,
data
})
}
\ No newline at end of file
src/api/teacher/index.js
View file @
94ea3ac4
...
@@ -75,7 +75,7 @@ export function GetEducationReceiptType() {
...
@@ -75,7 +75,7 @@ export function GetEducationReceiptType() {
* 获取下拉数据
* 获取下拉数据
* @param {JSON参数} data
* @param {JSON参数} data
*/
*/
export
function
GetEduReceiptInfo
(
data
)
{
export
function
GetEduReceiptInfo
(
data
)
{
return
request
({
return
request
({
url
:
'/EducationReceipt/GetEduReceiptInfo '
,
url
:
'/EducationReceipt/GetEduReceiptInfo '
,
method
:
'post'
,
method
:
'post'
,
...
@@ -214,4 +214,16 @@ export function queryExamPublish(data) {
...
@@ -214,4 +214,16 @@ export function queryExamPublish(data) {
method
:
'post'
,
method
:
'post'
,
data
data
})
})
}
}
\ No newline at end of file
/**
* 获取考卷考生列表
* @param {JSON参数} data
*/
export
function
getExaminationStudentPage
(
data
)
{
return
request
({
url
:
'/Exam/GetExaminationStudentPage'
,
method
:
'post'
,
data
})
}
src/pages/exam/examineeManager.vue
0 → 100644
View file @
94ea3ac4
<
style
>
.OtherCourseNum
{
display
:
inline-block
;
width
:
25px
;
height
:
25px
;
text-align
:
center
;
line-height
:
25px
;
border
:
1px
solid
#2961fe
;
border-radius
:
50%
;
cursor
:
pointer
;
color
:
#2961fe
;
}
.OCourseTable
{
width
:
400px
;
text-align
:
center
;
}
.OCourseTable
tr
td
{
height
:
40px
;
}
.OCourseTable
tr
th
{
height
:
40px
;
background-color
:
rgb
(
238
,
238
,
239
);
}
</
style
>
<
template
>
<div
class=
"page-body"
>
<div
class=
"page-search row items-center"
>
<div
class=
"col row wrap q-mr-lg q-col-gutter-md"
>
<div
class=
"col-3"
>
<q-input
@
change=
"refreshPage"
clearable
standout=
"bg-primary text-white"
v-model=
"msg.GuestName"
label=
"考生名称"
@
clear=
"refreshPage"
maxlength=
"20"
/>
</div>
</div>
</div>
<div
class=
"page-content"
>
<q-table
:pagination=
"msg"
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
class=
"sticky-column-table sticky-right-column-table"
separator=
"none"
:data=
"data"
:columns=
"columns"
row-key=
"name"
>
<template
v-slot:top=
"props"
>
<div
class=
"col-2 q-table__title"
>
考生管理
</div>
</
template
>
<
template
v-slot:bottom
>
<q-pagination
class=
"full-width justify-end"
v-model=
"msg.pageIndex"
color=
"primary"
:max=
"pageCount"
:input=
"true"
@
input=
"changePage"
/>
</
template
>
<
template
v-slot:body-cell-optioned=
"props"
>
<q-td
:props=
"props"
>
<!--
<q-btn
flat
size=
"xs"
color=
"accent"
style=
"font-weight: 400"
label=
"停课"
@
click=
"ShowStopLesson(props.row)"
v-if=
"props.row.GuestState === 1"
/>
<q-btn
flat
size=
"xs"
color=
"accent"
style=
"font-weight: 400"
label=
"课耗明细"
@
click=
"goUrl(props.row)"
/>
-->
</q-td>
</
template
>
</q-table>
</div>
</div>
</template>
<
script
>
import
{
getExaminationStudentPage
}
from
"../../api/teacher/index"
;
export
default
{
meta
:
{
title
:
"考生管理"
,
},
data
()
{
return
{
columns
:
[
{
name
:
"GuestId"
,
label
:
"考生编号"
,
field
:
"GuestId"
,
align
:
"left"
,
},
{
name
:
"GuestName"
,
label
:
"考生名称"
,
field
:
"GuestName"
,
align
:
"left"
,
},
{
name
:
"Mobile"
,
label
:
"电话"
,
field
:
"Mobile"
,
align
:
"left"
,
},
{
name
:
"ClassName"
,
label
:
"班级名称"
,
field
:
"ClassName"
,
align
:
"left"
,
},
// {
// name: "optioned",
// label: "操作",
// field: "CourseId",
// },
],
data
:
[],
loading
:
false
,
msg
:
{
pageIndex
:
1
,
pageSize
:
12
,
rowsPerPage
:
12
,
PublishId
:
0
,
GuestName
:
""
,
//学员名称
},
pageCount
:
0
,
};
},
created
()
{
this
.
msg
.
PublishId
=
this
.
$route
.
query
.
Id
;
console
.
log
(
289
,
this
.
$route
);
},
mounted
()
{
this
.
getList
();
},
methods
:
{
getList
()
{
getExaminationStudentPage
(
this
.
msg
).
then
((
res
)
=>
{
console
.
log
(
296
,
res
);
if
(
res
.
Code
===
1
)
{
this
.
data
=
res
.
Data
.
PageData
;
this
.
pageCount
=
res
.
Data
.
PageCount
;
}
});
},
//翻页
changePage
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
getList
();
},
//刷新页面
refreshPage
()
{
this
.
msg
.
pageIndex
=
1
;
this
.
getList
();
},
},
};
</
script
>
<
style
lang=
"sass"
>
@import
url('~assets/css/table.sass')
</
style
>
src/pages/exam/examlist.vue
View file @
94ea3ac4
<
style
>
<
style
>
.OtherCourseNum
{
.OtherCourseNum
{
display
:
inline-block
;
display
:
inline-block
;
width
:
25px
;
width
:
25px
;
height
:
25px
;
height
:
25px
;
text-align
:
center
;
text-align
:
center
;
line-height
:
25px
;
line-height
:
25px
;
border
:
1px
solid
#2961FE
;
border
:
1px
solid
#2961fe
;
border-radius
:
50%
;
border-radius
:
50%
;
cursor
:
pointer
;
cursor
:
pointer
;
color
:
#2961FE
;
color
:
#2961fe
;
}
}
.OCourseTable
{
.OCourseTable
{
width
:
400px
;
width
:
400px
;
text-align
:
center
;
text-align
:
center
;
}
}
.OCourseTable
tr
td
{
.OCourseTable
tr
td
{
height
:
40px
;
height
:
40px
;
}
}
.OCourseTable
tr
th
{
.OCourseTable
tr
th
{
height
:
40px
;
height
:
40px
;
background-color
:
rgb
(
238
,
238
,
239
);
background-color
:
rgb
(
238
,
238
,
239
);
}
}
.Exam_PaperName
{
.Exam_PaperName
{
width
:
300px
;
width
:
300px
;
display
:
inline
;
display
:
inline
;
overflow
:
hidden
;
overflow
:
hidden
;
white-space
:
nowrap
;
white-space
:
nowrap
;
text-overflow
:
ellipsis
;
text-overflow
:
ellipsis
;
}
}
.Exam_PaperName
i
{
font-size
:
18px
;
}
.Exam_PaperName
i
{
font-size
:
18px
;
}
</
style
>
</
style
>
<!--试卷库管理-->
<!--试卷库管理-->
<
template
>
<
template
>
...
@@ -44,35 +43,68 @@
...
@@ -44,35 +43,68 @@
<div
class=
"page-search row items-center"
>
<div
class=
"page-search row items-center"
>
<div
class=
"col row wrap q-mr-lg q-col-gutter-md"
>
<div
class=
"col row wrap q-mr-lg q-col-gutter-md"
>
<div
class=
"col-3"
>
<div
class=
"col-3"
>
<q-input
@
change=
"getList"
clearable
filled
v-model=
"msg.PaperName"
@
clear=
"getList"
maxlength=
"20"
<q-input
label=
"输入试卷名称"
/>
@
change=
"getList"
clearable
filled
v-model=
"msg.PaperName"
@
clear=
"getList"
maxlength=
"20"
label=
"输入试卷名称"
/>
</div>
</div>
</div>
</div>
<div
class=
"page-option"
>
<div
class=
"page-option"
></div>
</div>
</div>
</div>
<div
class=
"page-content"
>
<div
class=
"page-content"
>
<q-table
:pagination=
"msg"
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
<q-table
class=
"sticky-column-table sticky-right-column-table"
separator=
"none"
:data=
"dataList"
:columns=
"columns"
:pagination=
"msg"
row-key=
"name"
>
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
class=
"sticky-column-table sticky-right-column-table"
separator=
"none"
:data=
"dataList"
:columns=
"columns"
row-key=
"name"
>
<template
v-slot:top=
"props"
>
<template
v-slot:top=
"props"
>
<div
class=
"col-2 q-table__title"
>
考试管理
</div>
<div
class=
"col-2 q-table__title"
>
考试管理
</div>
<q-space
/>
<q-space
/>
</
template
>
</
template
>
<
template
v-slot:body-cell-StartTime=
"props"
>
<
template
v-slot:body-cell-StartTime=
"props"
>
<q-td
:props=
"props"
>
<q-td
:props=
"props"
>
{{
props
.
row
.
StartTime
}}
--
{{
props
.
row
.
EndTime
}}
{{
props
.
row
.
StartTime
}}
--
{{
props
.
row
.
EndTime
}}
</q-td>
</q-td>
</
template
>
</
template
>
<
template
v-slot:bottom
>
<
template
v-slot:bottom
>
<q-pagination
class=
"full-width justify-end"
v-model=
"msg.pageIndex"
color=
"primary"
:max=
"pageCount"
<q-pagination
:input=
"true"
@
input=
"changePage"
/>
class=
"full-width justify-end"
v-model=
"msg.pageIndex"
color=
"primary"
:max=
"pageCount"
:input=
"true"
@
input=
"changePage"
/>
</
template
>
</
template
>
<
template
v-slot:body-cell-optioned=
"props"
>
<
template
v-slot:body-cell-optioned=
"props"
>
<q-td
:props=
"props"
>
<q-td
:props=
"props"
>
<q-btn
flat
size=
"xs"
color=
"accent"
style=
"font-weight:400"
label=
"修改"
@
click=
"publishExam(props.row)"
/>
<q-btn
<q-btn
flat
size=
"xs"
color=
"accent"
style=
"font-weight:400"
label=
"考生管理"
/>
flat
size=
"xs"
color=
"accent"
style=
"font-weight: 400"
label=
"修改"
@
click=
"publishExam(props.row)"
/>
<q-btn
flat
size=
"xs"
color=
"accent"
style=
"font-weight: 400"
label=
"考生管理"
@
click=
"seeExamineeList(props.row)"
/>
</q-td>
</q-td>
</
template
>
</
template
>
</q-table>
</q-table>
...
@@ -80,124 +112,126 @@
...
@@ -80,124 +112,126 @@
</div>
</div>
</template>
</template>
<
script
>
<
script
>
import
{
import
{
queryPublishExamPage
}
from
"../../api/teacher/index"
;
queryPublishExamPage
//获取校区列表
}
from
'../../api/teacher/index'
;
export
default
{
//获取校区列表
components
:
{},
export
default
{
meta
:
{
components
:
{
title
:
"考卷管理"
,
},
data
()
{
return
{
data
:
[],
msg
:
{
pageIndex
:
1
,
pageSize
:
10
,
rowsPerPage
:
10
,
PaperName
:
""
,
//试卷名称
},
columns
:
[
{
name
:
"Id"
,
label
:
"编号"
,
field
:
"Id"
,
align
:
"left"
,
},
{
name
:
"PaperName"
,
label
:
"试卷名称"
,
field
:
"PaperName"
,
align
:
"left"
,
},
{
name
:
"CreateByName"
,
label
:
"创建人"
,
field
:
"CreateByName"
,
align
:
"left"
,
},
{
name
:
"StudentCount"
,
label
:
"考生人数"
,
field
:
"StudentCount"
,
align
:
"left"
,
},
{
name
:
"StartTime"
,
label
:
"考试时间"
,
field
:
"StartTime"
,
align
:
"left"
,
},
{
name
:
"ExamTimes"
,
label
:
"考试时长"
,
field
:
"ExamTimes"
,
align
:
"left"
,
},
{
name
:
"optioned"
,
label
:
"操作"
,
field
:
"Id"
,
},
],
pageCount
:
0
,
loading
:
false
,
dataList
:
[],
expandKeys
:
[],
isShowExamFolder
:
false
,
//是否显示新增文件夹
examObj
:
{},
//弹窗对象
};
},
created
()
{},
mounted
()
{
this
.
getList
();
},
methods
:
{
//修改考试相关
publishExam
(
item
)
{
this
.
OpenNewUrl
(
"/exam/paperPublish"
,
{
Id
:
item
.
Id
,
});
},
},
meta
:
{
//创建试卷
title
:
"考卷管理"
CreatePaper
()
{
this
.
OpenNewUrl
(
"/exam/paperCreate"
,
{});
},
},
data
()
{
//查看考生列表
return
{
seeExamineeList
(
item
)
{
data
:
[],
this
.
OpenNewUrl
(
"/exam/examineeManager"
,
{
msg
:
{
Id
:
item
.
Id
,
pageIndex
:
1
,
});
pageSize
:
10
,
rowsPerPage
:
10
,
PaperName
:
''
//试卷名称
},
columns
:
[{
name
:
'Id'
,
label
:
'编号'
,
field
:
'Id'
,
align
:
'left'
,
},
{
name
:
'PaperName'
,
label
:
'试卷名称'
,
field
:
'PaperName'
,
align
:
'left'
},
{
name
:
'CreateByName'
,
label
:
'创建人'
,
field
:
'CreateByName'
,
align
:
'left'
},
{
name
:
'StudentCount'
,
label
:
'考生人数'
,
field
:
'StudentCount'
,
align
:
'left'
},
{
name
:
'StartTime'
,
label
:
'考试时间'
,
field
:
'StartTime'
,
align
:
'left'
},
{
name
:
'ExamTimes'
,
label
:
'考试时长'
,
field
:
'ExamTimes'
,
align
:
'left'
},
{
name
:
'optioned'
,
label
:
'操作'
,
field
:
'Id'
}
],
pageCount
:
0
,
loading
:
false
,
dataList
:
[],
expandKeys
:
[],
isShowExamFolder
:
false
,
//是否显示新增文件夹
examObj
:
{},
//弹窗对象
}
},
},
created
()
{},
//翻页
mounted
()
{
changePage
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
getList
();
this
.
getList
();
},
},
methods
:
{
//获取菜单分页列表
//修改考试相关
getList
()
{
publishExam
(
item
)
{
this
.
loading
=
true
;
this
.
OpenNewUrl
(
'/exam/paperPublish'
,
{
this
.
dataList
=
[];
Id
:
item
.
Id
queryPublishExamPage
(
this
.
msg
)
});
.
then
((
res
)
=>
{
},
//创建试卷
CreatePaper
()
{
this
.
OpenNewUrl
(
'/exam/paperCreate'
,
{})
},
//翻页
changePage
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
getList
()
},
//获取菜单分页列表
getList
()
{
this
.
loading
=
true
;
this
.
dataList
=
[];
queryPublishExamPage
(
this
.
msg
).
then
(
res
=>
{
console
.
log
(
"res=>"
,
res
);
console
.
log
(
"res=>"
,
res
);
this
.
loading
=
false
;
this
.
loading
=
false
;
this
.
dataList
=
res
.
Data
.
PageData
;
this
.
dataList
=
res
.
Data
.
PageData
;
this
.
pageCount
=
res
.
Data
.
PageCount
;
this
.
pageCount
=
res
.
Data
.
PageCount
;
}).
catch
(()
=>
{
this
.
loading
=
false
})
})
},
.
catch
(()
=>
{
//刷新页面
this
.
loading
=
false
;
refreshPage
()
{
});
this
.
getList
();
},
},
//刷新页面
refreshPage
()
{
//关闭弹窗
this
.
getList
();
closeExamForm
()
{
},
this
.
isShowExamFolder
=
false
;
},
}
}
//关闭弹窗
closeExamForm
()
{
this
.
isShowExamFolder
=
false
;
},
},
};
</
script
>
</
script
>
<
style
lang=
"sass"
>
<
style
lang=
"sass"
>
@import
url('~assets/css/table.sass')
@import
url('~assets/css/table.sass')
</
style
>
</
style
>
src/pages/system/examConfig.vue
0 → 100644
View file @
94ea3ac4
This diff is collapsed.
Click to expand it.
src/pages/system/processSet.vue
View file @
94ea3ac4
...
@@ -98,10 +98,10 @@ export default {
...
@@ -98,10 +98,10 @@ export default {
name
:
"6"
,
name
:
"6"
,
label
:
"分拆"
,
label
:
"分拆"
,
},
},
//
{
{
//
name: "7",
name
:
"7"
,
//
label: "请假流程",
label
:
"请假流程"
,
//
},
},
],
],
tabCheck
:
"1"
,
tabCheck
:
"1"
,
};
};
...
...
src/router/routes.js
View file @
94ea3ac4
...
@@ -118,7 +118,11 @@ const routes = [{
...
@@ -118,7 +118,11 @@ const routes = [{
component
:
()
=>
component
:
()
=>
import
(
"pages/system/weChatConfig.vue"
)
import
(
"pages/system/weChatConfig.vue"
)
},
},
{
path
:
"/system/examConfig"
,
//考试设置
component
:
()
=>
import
(
"pages/system/examConfig.vue"
)
},
{
{
path
:
"/system/webkitManage"
,
//网站管理
path
:
"/system/webkitManage"
,
//网站管理
component
:
()
=>
component
:
()
=>
...
@@ -1068,6 +1072,11 @@ const routes = [{
...
@@ -1068,6 +1072,11 @@ const routes = [{
component
:
()
=>
component
:
()
=>
import
(
"pages/exam/paperPublish"
)
import
(
"pages/exam/paperPublish"
)
},
},
{
path
:
"/exam/examineeManager"
,
//试卷-考生管理
component
:
()
=>
import
(
"pages/exam/examineeManager"
)
},
{
{
path
:
"/teacher/testdatabase"
,
//题库查询
path
:
"/teacher/testdatabase"
,
//题库查询
component
:
()
=>
component
:
()
=>
...
@@ -1200,9 +1209,9 @@ const routes = [{
...
@@ -1200,9 +1209,9 @@ const routes = [{
component
:
()
=>
component
:
()
=>
import
(
"pages/enterprise/addchannelcode"
)
import
(
"pages/enterprise/addchannelcode"
)
},
},
],
],
},
},
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment