Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
D
dd_school
Overview
Overview
Details
Activity
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wangqi
dd_school
Commits
47f8e8f8
Commit
47f8e8f8
authored
Aug 04, 2023
by
zhaopanyu
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of 49.232.152.146:xhxy/smart_school
parents
765dbe05
ca7a53bf
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
307 additions
and
254 deletions
+307
-254
ruoyi-ui/src/api/smartSchool/gradeWork/courseSelection/courseSelection.js
+20
-0
ruoyi-ui/src/api/smartSchool/gradeWork/courseSelection/performance.js
+10
-0
ruoyi-ui/src/api/smartSchool/gradeWork/courseSelection/taskPublishing.js
+11
-0
ruoyi-ui/src/utils/index.js
+6
-6
ruoyi-ui/src/views/smartSchool/gradeWork/courseSelection/courseSelectionsituation/index.vue
+82
-20
ruoyi-ui/src/views/smartSchool/gradeWork/courseSelection/performance/index.vue
+82
-29
ruoyi-ui/src/views/smartSchool/gradeWork/courseSelection/springView/index.vue
+14
-112
ruoyi-ui/src/views/smartSchool/gradeWork/courseSelection/taskPublishing/index.vue
+82
-87
No files found.
ruoyi-ui/src/api/smartSchool/gradeWork/courseSelection/courseSelection.js
0 → 100644
View file @
47f8e8f8
import
request
from
"@/utils/request"
;
// 获取选课列表
export
function
courseSelectionList
(
query
)
{
return
request
({
url
:
"/curricula/student/list"
,
method
:
"get"
,
params
:
query
,
});
}
/** 春季选课情况API **/
// 获取春季选课情况列表
export
function
courseSelectionSpringList
(
query
)
{
return
request
({
url
:
"/curricula/student/listCj"
,
method
:
"get"
,
params
:
query
,
});
}
ruoyi-ui/src/api/smartSchool/gradeWork/courseSelection/performance.js
0 → 100644
View file @
47f8e8f8
import
request
from
"@/utils/request"
;
// 获取成绩列表
export
function
performanceList
(
query
)
{
return
request
({
url
:
"/curricula/studentScore/list"
,
method
:
"get"
,
params
:
query
,
});
}
ruoyi-ui/src/api/smartSchool/gradeWork/courseSelection/taskPublishing.js
View file @
47f8e8f8
...
@@ -40,3 +40,14 @@ export function getDept(data) {
...
@@ -40,3 +40,14 @@ export function getDept(data) {
data
:
data
,
data
:
data
,
});
});
}
}
/***
* 公共接口
* */
//获取班级列表信息
export
function
classList
(
data
)
{
return
request
({
url
:
`/curricula/variable/selectClass?grade=
${
data
}
`
,
method
:
"get"
,
});
}
ruoyi-ui/src/utils/index.js
View file @
47f8e8f8
...
@@ -5,12 +5,12 @@ import { parseTime } from './ruoyi'
...
@@ -5,12 +5,12 @@ import { parseTime } from './ruoyi'
*/
*/
export
function
formatDate
(
cellValue
)
{
export
function
formatDate
(
cellValue
)
{
if
(
cellValue
==
null
||
cellValue
==
""
)
return
""
;
if
(
cellValue
==
null
||
cellValue
==
""
)
return
""
;
var
date
=
new
Date
(
cellValue
)
var
date
=
new
Date
(
cellValue
)
var
year
=
date
.
getFullYear
()
var
year
=
date
.
getFullYear
()
var
month
=
date
.
getMonth
()
+
1
<
10
?
'0'
+
(
date
.
getMonth
()
+
1
)
:
date
.
getMonth
()
+
1
var
month
=
date
.
getMonth
()
+
1
<
10
?
'0'
+
(
date
.
getMonth
()
+
1
)
:
date
.
getMonth
()
+
1
var
day
=
date
.
getDate
()
<
10
?
'0'
+
date
.
getDate
()
:
date
.
getDate
()
var
day
=
date
.
getDate
()
<
10
?
'0'
+
date
.
getDate
()
:
date
.
getDate
()
var
hours
=
date
.
getHours
()
<
10
?
'0'
+
date
.
getHours
()
:
date
.
getHours
()
var
hours
=
date
.
getHours
()
<
10
?
'0'
+
date
.
getHours
()
:
date
.
getHours
()
var
minutes
=
date
.
getMinutes
()
<
10
?
'0'
+
date
.
getMinutes
()
:
date
.
getMinutes
()
var
minutes
=
date
.
getMinutes
()
<
10
?
'0'
+
date
.
getMinutes
()
:
date
.
getMinutes
()
var
seconds
=
date
.
getSeconds
()
<
10
?
'0'
+
date
.
getSeconds
()
:
date
.
getSeconds
()
var
seconds
=
date
.
getSeconds
()
<
10
?
'0'
+
date
.
getSeconds
()
:
date
.
getSeconds
()
return
year
+
'-'
+
month
+
'-'
+
day
+
' '
+
hours
+
':'
+
minutes
+
':'
+
seconds
return
year
+
'-'
+
month
+
'-'
+
day
+
' '
+
hours
+
':'
+
minutes
+
':'
+
seconds
}
}
...
@@ -330,7 +330,7 @@ export function makeMap(str, expectsLowerCase) {
...
@@ -330,7 +330,7 @@ export function makeMap(str, expectsLowerCase) {
?
val
=>
map
[
val
.
toLowerCase
()]
?
val
=>
map
[
val
.
toLowerCase
()]
:
val
=>
map
[
val
]
:
val
=>
map
[
val
]
}
}
export
const
exportDefault
=
'export default '
export
const
exportDefault
=
'export default '
export
const
beautifierConf
=
{
export
const
beautifierConf
=
{
...
@@ -387,4 +387,4 @@ export function camelCase(str) {
...
@@ -387,4 +387,4 @@ export function camelCase(str) {
export
function
isNumberStr
(
str
)
{
export
function
isNumberStr
(
str
)
{
return
/^
[
+-
]?(
0|
([
1-9
]\d
*
))(\.\d
+
)?
$/g
.
test
(
str
)
return
/^
[
+-
]?(
0|
([
1-9
]\d
*
))(\.\d
+
)?
$/g
.
test
(
str
)
}
}
ruoyi-ui/src/views/smartSchool/gradeWork/courseSelection/courseSelectionsituation/index.vue
View file @
47f8e8f8
...
@@ -2,18 +2,18 @@
...
@@ -2,18 +2,18 @@
<div
class=
"app-container"
>
<div
class=
"app-container"
>
<el-form
:model=
"queryParams"
ref=
"queryForm"
size=
"small"
:inline=
"true"
label-width=
"80px"
>
<el-form
:model=
"queryParams"
ref=
"queryForm"
size=
"small"
:inline=
"true"
label-width=
"80px"
>
<el-form-item
label=
"学生姓名"
prop=
"userName"
>
<el-form-item
label=
"学生姓名"
prop=
"userName"
>
<el-input
v-model=
"queryParams.student"
placeholder=
"请输入学生姓名"
clearable
/>
<el-input
v-model=
"queryParams.student
Name
"
placeholder=
"请输入学生姓名"
clearable
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"课程类型"
prop=
"userName"
>
<el-form-item
label=
"课程类型"
prop=
"userName"
>
<el-select
v-model=
"queryParams.courseType"
placeholder=
"请选择课程类型"
>
<el-select
v-model=
"queryParams.courseType"
placeholder=
"请选择课程类型"
>
<el-option
v-for=
"(item,index) in
courseTypeList
"
:key=
"index"
<el-option
v-for=
"(item,index) in
dict.type.course_type
"
:key=
"index"
:label=
"item
"
:value=
"item
"
></el-option>
:label=
"item
.label"
:value=
"item.value
"
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"选课状态"
prop=
"userName"
>
<el-form-item
label=
"选课状态"
prop=
"userName"
>
<el-select
v-model=
"queryParams.
selectionStatus
"
placeholder=
"请选择选课状态"
>
<el-select
v-model=
"queryParams.
curriculaState
"
placeholder=
"请选择选课状态"
>
<el-option
v-for=
"(item,index) in
selectionStatusList
"
:key=
"index"
<el-option
v-for=
"(item,index) in
dict.type.curricula_state
"
:key=
"index"
:label=
"item
"
:value=
"item
"
></el-option>
:label=
"item
.label"
:value=
"item.value
"
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item>
<el-form-item>
...
@@ -28,13 +28,36 @@
...
@@ -28,13 +28,36 @@
</div>
</div>
<el-table
v-loading=
"loading"
:data=
"courseSelectionData"
stripe
>
<el-table
v-loading=
"loading"
:data=
"courseSelectionData"
stripe
>
<el-table-column
label=
"序号"
type=
"index"
width=
"55"
align=
"center"
/>
<el-table-column
label=
"序号"
type=
"index"
width=
"55"
align=
"center"
/>
<el-table-column
label=
"学生姓名"
align=
"center"
prop=
"deviceNum"
/>
<el-table-column
label=
"学生姓名"
align=
"center"
prop=
"studentName"
/>
<el-table-column
label=
"身份证号"
align=
"center"
prop=
"teacherCode"
/>
<el-table-column
label=
"身份证号"
align=
"center"
prop=
"idCard"
/>
<el-table-column
label=
"学号"
align=
"center"
prop=
"userName"
/>
<el-table-column
label=
"学号"
align=
"center"
prop=
"studentNumber"
/>
<el-table-column
label=
"课程类型"
align=
"center"
prop=
"orgname"
/>
<el-table-column
label=
"课程类型"
align=
"center"
prop=
"courseType"
>
<el-table-column
label=
"选课时间"
align=
"center"
prop=
"orgname"
/>
<!-- 1春季选课 2夏季选课 3艺体 -->
<el-table-column
label=
"选课状态"
align=
"center"
prop=
"orgname"
/>
<template
slot-scope=
"
{ row }">
<el-table-column
label=
"已选专业/课程"
align=
"center"
prop=
"orgname"
/>
<div>
{{
selectDictLabel
(
dict
.
type
.
course_type
,
row
.
courseType
)
}}
</div>
</
template
>
</el-table-column>
<el-table-column
label=
"选课时间"
align=
"center"
prop=
"curriculaTime"
/>
<el-table-column
label=
"选课状态"
align=
"center"
prop=
"curriculaState"
>
<
template
slot-scope=
"{ row }"
>
<div>
{{
selectDictLabel
(
dict
.
type
.
curricula_state
,
row
.
curriculaState
)
}}
</div>
</
template
>
</el-table-column>
<el-table-column
label=
"已选专业/课程"
align=
"center"
prop=
"orgname"
>
<!--
1春季:专业--专业类别 professional_category
2夏季:课程--学生选科 section_type
3艺体:科目+课程 -- 艺体科目 art_subject
-->
<
template
slot-scope=
"{ row }"
>
<div
v-if=
"row.courseType == 1"
>
{{
selectDictLabel
(
dict
.
type
.
professional_category
,
row
.
selectedMajorName
)
}}
</div>
<div
v-else-if=
"row.courseType == 2"
>
{{
selectDictLabel
(
dict
.
type
.
section_type
,
row
.
selectedCourse
)
}}
</div>
<div
v-else-if=
"row.courseType == 3"
>
{{
selectDictLabel
(
dict
.
type
.
art_subject
,
row
.
selectedSubject
)
}}
{{
selectDictLabel
(
dict
.
type
.
section_type
,
row
.
selectedCourse
)
}}
</div>
</
template
>
</el-table-column>
</el-table>
</el-table>
<pagination
ref=
"pageBlock"
v-show=
"total > 0"
:total=
"total"
<pagination
ref=
"pageBlock"
v-show=
"total > 0"
:total=
"total"
:page
.
sync=
"queryParams.pageNum"
:limit
.
sync=
"queryParams.pageSize"
@
pagination=
"getList"
/>
:page
.
sync=
"queryParams.pageNum"
:limit
.
sync=
"queryParams.pageSize"
@
pagination=
"getList"
/>
...
@@ -42,32 +65,71 @@
...
@@ -42,32 +65,71 @@
</template>
</template>
<
script
>
<
script
>
import
{
courseSelectionList
}
from
"../../../../../api/smartSchool/gradeWork/courseSelection/courseSelection"
;
export
default
{
export
default
{
dicts
:
[
'curricula_state'
,
'course_type'
,
'professional_category'
,
'section_type'
,
'art_subject'
],
data
(){
data
(){
return
{
return
{
queryParams
:{
queryParams
:{
student
:
''
,
curriculaId
:
''
,
studentName
:
''
,
courseType
:
''
,
courseType
:
''
,
selectionStatus
:
''
,
curriculaState
:
''
,
pageNum
:
1
,
pageNum
:
1
,
pageSize
:
10
,
pageSize
:
10
,
},
},
courseTypeList
:[
1
,
2
,
3
],
//课程类型
selectionStatusList
:[
1
,
2
,
3
],
//选课状态
courseSelectionData
:[],
courseSelectionData
:[],
loading
:
false
,
loading
:
false
,
total
:
0
,
total
:
0
,
}
}
},
},
mounted
()
{
this
.
getList
()
},
methods
:{
methods
:{
//获取数据信息
//获取数据信息
getList
(){
getList
(){
this
.
loading
=
true
this
.
queryParams
.
curriculaId
=
this
.
$route
.
query
.
id
courseSelectionList
({...
this
.
queryParams
}).
then
(
res
=>
{
if
(
res
.
code
==
200
){
this
.
courseSelectionData
=
res
.
rows
this
.
total
=
res
.
total
this
.
loading
=
false
}
})
},
},
//重置
//重置
resetQuery
(){},
resetQuery
(){
this
.
queryParams
=
{
curriculaId
:
''
,
studentName
:
''
,
courseType
:
''
,
curriculaState
:
''
,
pageNum
:
1
,
pageSize
:
10
,
}
this
.
getList
()
},
//导出
//导出
exportRecord
(){}
exportRecord
(){
let
data
=
{
curriculaId
:
this
.
queryParams
.
curriculaId
,
studentName
:
this
.
queryParams
.
studentName
,
courseType
:
this
.
queryParams
.
courseType
,
curriculaState
:
this
.
queryParams
.
curriculaState
,
}
this
.
download
(
"curricula/student/export"
,
{
...
data
,
},
`学生选课信息_
${
new
Date
().
getTime
()}
.xlsx`
);
},
}
}
}
}
...
...
ruoyi-ui/src/views/smartSchool/gradeWork/courseSelection/performance/index.vue
View file @
47f8e8f8
<
template
>
<
template
>
<div
class=
"app-container"
>
<div
class=
"app-container"
>
<el-form
:model=
"queryParams"
ref=
"queryForm"
size=
"small"
:inline=
"true"
label-width=
"80px"
>
<el-form
:model=
"queryParams"
ref=
"queryForm"
size=
"small"
:inline=
"true"
label-width=
"80px"
>
<el-form-item
label=
"学生姓名"
prop=
"
user
Name"
>
<el-form-item
label=
"学生姓名"
prop=
"
student
Name"
>
<el-input
v-model=
"queryParams.student"
placeholder=
"请输入学生姓名"
clearable
/>
<el-input
v-model=
"queryParams.student
Name
"
placeholder=
"请输入学生姓名"
clearable
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"考试类型"
prop=
"
userNam
e"
>
<el-form-item
label=
"考试类型"
prop=
"
examTyp
e"
>
<el-select
v-model=
"queryParams.examType"
placeholder=
"请选择考试类型"
>
<el-select
v-model=
"queryParams.examType"
placeholder=
"请选择考试类型"
>
<el-option
v-for=
"(item,index) in
examTypeList
"
:key=
"index"
<el-option
v-for=
"(item,index) in
dict.type.exam_type
"
:key=
"index"
:label=
"item
"
:value=
"item
"
></el-option>
:label=
"item
.label"
:value=
"item.value
"
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"班级"
prop=
"
user
Name"
>
<el-form-item
label=
"班级"
prop=
"
class
Name"
>
<el-select
v-model=
"queryParams.class
"
placeholder=
"请选择
班级"
>
<el-select
v-model=
"queryParams.class
Name"
placeholder=
"请选择学生
班级"
>
<el-option
v-for=
"(item,index) in classList"
:key=
"index"
<el-option
v-for=
"(item,index) in classList"
:key=
"index"
:label=
"item
"
:value=
"item
"
></el-option>
:label=
"item
.className"
:value=
"item.classId
"
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item>
<el-form-item>
...
@@ -34,15 +34,31 @@
...
@@ -34,15 +34,31 @@
<el-table
v-loading=
"loading"
:data=
"achievementData"
stripe
@
selection-change=
"handleSelectionChange"
>
<el-table
v-loading=
"loading"
:data=
"achievementData"
stripe
@
selection-change=
"handleSelectionChange"
>
<el-table-column
type=
"selection"
width=
"55"
></el-table-column>
<el-table-column
type=
"selection"
width=
"55"
></el-table-column>
<el-table-column
fixed=
"left"
label=
"序号"
type=
"index"
width=
"55"
align=
"center"
/>
<el-table-column
fixed=
"left"
label=
"序号"
type=
"index"
width=
"55"
align=
"center"
/>
<el-table-column
fixed=
"left"
label=
"学生姓名"
align=
"center"
prop=
"deviceNum"
/>
<el-table-column
fixed=
"left"
label=
"学生姓名"
align=
"center"
prop=
"studentName"
/>
<el-table-column
fixed=
"left"
label=
"学号"
align=
"center"
prop=
"userName"
/>
<el-table-column
fixed=
"left"
label=
"学号"
align=
"center"
prop=
"studentNumber"
/>
<el-table-column
fixed=
"left"
label=
"身份证号"
align=
"center"
prop=
"teacherCode"
/>
<el-table-column
fixed=
"left"
label=
"身份证号"
align=
"center"
prop=
"idCard"
/>
<el-table-column
fixed=
"left"
label=
"班级"
align=
"center"
prop=
"orgname"
/>
<el-table-column
fixed=
"left"
label=
"班级"
align=
"center"
prop=
"className"
/>
<el-table-column
fixed=
"left"
label=
"考试类型"
align=
"center"
prop=
"orgname"
/>
<el-table-column
fixed=
"left"
label=
"考试类型"
align=
"center"
prop=
"examType"
/>
<el-table-column
label=
"总成绩"
align=
"center"
prop=
"orgname"
/>
<el-table-column
label=
"总成绩"
align=
"center"
prop=
"totalScore"
/>
<el-table-column
label=
"学校排名"
align=
"center"
prop=
"orgname"
/>
<el-table-column
label=
"学校排名"
align=
"center"
prop=
"ranking"
/>
<el-table-column
label=
"语文"
align=
"center"
prop=
"orgname"
/>
<el-table-column
label=
"语文"
align=
"center"
prop=
"language"
/>
<el-table-column
label=
"学校排名"
align=
"center"
prop=
"orgname"
/>
<el-table-column
label=
"学校排名"
align=
"center"
prop=
"ywRanking"
/>
<el-table-column
label=
"数学"
align=
"center"
prop=
"math"
/>
<el-table-column
label=
"学校排名"
align=
"center"
prop=
"sxRanking"
/>
<el-table-column
label=
"英语"
align=
"center"
prop=
"english"
/>
<el-table-column
label=
"学校排名"
align=
"center"
prop=
"yyRanking"
/>
<el-table-column
label=
"政治"
align=
"center"
prop=
"politics"
/>
<el-table-column
label=
"学校排名"
align=
"center"
prop=
"zzRanking"
/>
<el-table-column
label=
"地理"
align=
"center"
prop=
"geography"
/>
<el-table-column
label=
"学校排名"
align=
"center"
prop=
"dlRanking"
/>
<el-table-column
label=
"历史"
align=
"center"
prop=
"history"
/>
<el-table-column
label=
"学校排名"
align=
"center"
prop=
"lsRanking"
/>
<el-table-column
label=
"物理"
align=
"center"
prop=
"physics"
/>
<el-table-column
label=
"学校排名"
align=
"center"
prop=
"wlRanking"
/>
<el-table-column
label=
"化学"
align=
"center"
prop=
"chemistry"
/>
<el-table-column
label=
"学校排名"
align=
"center"
prop=
"hxRanking"
/>
<el-table-column
label=
"生物"
align=
"center"
prop=
"biology"
/>
<el-table-column
label=
"学校排名"
align=
"center"
prop=
"swRanking"
/>
<el-table-column
fixed=
"right"
label=
"操作"
align=
"center"
prop=
"orgname"
width=
"150"
>
<el-table-column
fixed=
"right"
label=
"操作"
align=
"center"
prop=
"orgname"
width=
"150"
>
<template
slot-scope=
"
{ row }">
<template
slot-scope=
"
{ row }">
<el-button
type=
"text"
size=
"small"
>
删除
</el-button>
<el-button
type=
"text"
size=
"small"
>
删除
</el-button>
...
@@ -108,9 +124,8 @@
...
@@ -108,9 +124,8 @@
<el-col
:span=
"12"
>
<el-col
:span=
"12"
>
<el-form-item
label=
"考试类型"
>
<el-form-item
label=
"考试类型"
>
<el-select
v-model=
"achievementForm.id"
filterable
placeholder=
"请选择考试类型"
class=
"selectWidth"
>
<el-select
v-model=
"achievementForm.id"
filterable
placeholder=
"请选择考试类型"
class=
"selectWidth"
>
<el-option
v-for=
"(item,index) in examTypeList"
:key=
"index"
<el-option
v-for=
"(item,index) in dict.type.exam_type"
:key=
"index"
:label=
"item"
:value=
"item"
>
:label=
"item.label"
:value=
"item.value"
></el-option>
</el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
...
@@ -247,25 +262,25 @@
...
@@ -247,25 +262,25 @@
<
script
>
<
script
>
import
{
getToken
}
from
"@/utils/auth"
;
import
{
getToken
}
from
"@/utils/auth"
;
import
{
performanceList
}
from
"../../../../../api/smartSchool/gradeWork/courseSelection/performance"
;
import
{
classList
}
from
"../../../../../api/smartSchool/gradeWork/courseSelection/taskPublishing"
;
export
default
{
export
default
{
dicts
:
[
'exam_type'
],
data
(){
data
(){
return
{
return
{
queryParams
:{
queryParams
:{
student
:
''
,
curriculaId
:
''
,
studentName
:
''
,
examType
:
''
,
examType
:
''
,
class
:
''
,
class
Name
:
''
,
pageNum
:
1
,
pageNum
:
1
,
pageSize
:
10
,
pageSize
:
10
,
},
},
examTypeList
:[
1
,
2
,
3
,
4
],
// 考试类型
classList
:[
1
,
2
,
3
,
4
],
// 班级
loading
:
false
,
loading
:
false
,
total
:
0
,
total
:
0
,
isMultiple
:
false
,
// table是否有选择
isMultiple
:
false
,
// table是否有选择
achievementData
:[
achievementData
:[],
// table数据
{
orgname
:
'111111'
}
],
// table数据
dialogVisible
:
false
,
// 新增编辑弹出框
dialogVisible
:
false
,
// 新增编辑弹出框
upload
:
{
upload
:
{
// 是否显示弹出层(用户导入)
// 是否显示弹出层(用户导入)
...
@@ -286,15 +301,50 @@ export default {
...
@@ -286,15 +301,50 @@ export default {
id
:
''
,
id
:
''
,
},
},
studentID
:[
1
,
2
,
3
,
4
,
5
],
// 学号list
studentID
:[
1
,
2
,
3
,
4
,
5
],
// 学号list
classList
:[],
// 班级list
}
}
},
},
mounted
()
{
this
.
getClassList
()
this
.
getList
()
},
methods
:{
methods
:{
//获取班级下拉框数据
getClassList
(){
let
grade
=
this
.
$route
.
query
.
grade
classList
(
grade
).
then
(
res
=>
{
if
(
res
.
code
==
200
){
this
.
classList
=
res
.
data
}
})
},
//获取数据信息
//获取数据信息
getList
(){
getList
(){
this
.
loading
=
true
this
.
queryParams
.
curriculaId
=
this
.
$route
.
query
.
id
performanceList
({...
this
.
queryParams
}).
then
(
res
=>
{
if
(
res
.
code
==
200
){
this
.
achievementData
=
res
.
rows
this
.
total
=
res
.
total
this
.
loading
=
false
}
})
},
},
//重置
//重置
resetQuery
(){},
resetQuery
(){
this
.
queryParams
=
{
curriculaId
:
''
,
studentName
:
''
,
examType
:
''
,
className
:
''
,
pageNum
:
1
,
pageSize
:
10
,
}
this
.
getList
()
},
//新增成绩
//新增成绩
handleOption
(
type
,
item
){
handleOption
(
type
,
item
){
if
(
type
==
0
){
if
(
type
==
0
){
...
@@ -304,6 +354,7 @@ export default {
...
@@ -304,6 +354,7 @@ export default {
}
}
this
.
dialogVisible
=
true
this
.
dialogVisible
=
true
},
},
//批量删除
//批量删除
handleDelete
(){
handleDelete
(){
this
.
$confirm
(
'此操作将永久删除选中数据, 是否继续?'
,
'提示'
,
{
this
.
$confirm
(
'此操作将永久删除选中数据, 是否继续?'
,
'提示'
,
{
...
@@ -322,6 +373,7 @@ export default {
...
@@ -322,6 +373,7 @@ export default {
});
});
});
});
},
},
//table点击事件
//table点击事件
handleSelectionChange
(
val
)
{
handleSelectionChange
(
val
)
{
console
.
log
(
"val"
,
val
)
console
.
log
(
"val"
,
val
)
...
@@ -336,6 +388,7 @@ export default {
...
@@ -336,6 +388,7 @@ export default {
`成绩管理数据导入_template_
${
new
Date
().
getTime
()}
.xlsx`
`成绩管理数据导入_template_
${
new
Date
().
getTime
()}
.xlsx`
);
);
},
},
// 文件上传中处理
// 文件上传中处理
handleFileUploadProgress
(
event
,
file
,
fileList
)
{
handleFileUploadProgress
(
event
,
file
,
fileList
)
{
this
.
upload
.
isUploading
=
true
;
this
.
upload
.
isUploading
=
true
;
...
...
ruoyi-ui/src/views/smartSchool/gradeWork/courseSelection/springView/index.vue
View file @
47f8e8f8
...
@@ -2,8 +2,7 @@
...
@@ -2,8 +2,7 @@
<div
class=
"app-container"
>
<div
class=
"app-container"
>
<el-form
:model=
"queryForm"
ref=
"queryForm"
size=
"small"
:inline=
"true"
label-width=
"80px"
>
<el-form
:model=
"queryForm"
ref=
"queryForm"
size=
"small"
:inline=
"true"
label-width=
"80px"
>
<el-form-item
prop=
"studentsName"
label=
"学生姓名"
>
<el-form-item
prop=
"studentsName"
label=
"学生姓名"
>
<el-input
clearable
v-model=
"queryForm.studentsName"
placeholder=
"学生姓名"
<el-input
clearable
v-model=
"queryForm.studentsName"
placeholder=
"学生姓名"
></el-input>
@
keyup
.
enter
.
native=
"handleQuery"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
prop=
"classId"
label=
"班级"
>
<el-form-item
prop=
"classId"
label=
"班级"
>
<el-select
v-model=
"queryForm.classId"
placeholder=
"班级"
clearable
>
<el-select
v-model=
"queryForm.classId"
placeholder=
"班级"
clearable
>
...
@@ -18,13 +17,12 @@
...
@@ -18,13 +17,12 @@
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item>
<el-form-item>
<el-button
type=
"primary"
icon=
"el-icon-search"
size=
"mini"
@
click=
"getList"
>
搜索
</el-button>
<el-button
type=
"primary"
icon=
"el-icon-search"
size=
"mini"
@
click=
"handleQuery"
>
搜索
</el-button>
<el-button
icon=
"el-icon-refresh"
size=
"mini"
@
click=
"resetQuery"
>
重置
</el-button>
<el-button
icon=
"el-icon-refresh"
size=
"mini"
@
click=
"resetQuery"
>
重置
</el-button>
<el-button
type=
"warning"
icon=
"el-icon-upload2"
size=
"mini"
@
click=
"handleExport"
>
导出
</el-button>
<el-button
type=
"warning"
icon=
"el-icon-upload2"
size=
"mini"
@
click=
"handleExport"
>
导出
</el-button>
</el-form-item>
</el-form-item>
</el-form>
</el-form>
<!-- 表单信息 -->
<!-- 表单信息 -->
<el-table
border
v-loading=
"loading"
:row-style=
"
{ height: '35px' }" :cell-style="{ padding: '0' }"
<el-table
border
v-loading=
"loading"
:row-style=
"
{ height: '35px' }" :cell-style="{ padding: '0' }"
:data="studentsList" style="font-size: 14px" stripe>
:data="studentsList" style="font-size: 14px" stripe>
...
@@ -35,8 +33,6 @@
...
@@ -35,8 +33,6 @@
<el-table-column
label=
"课程类型"
prop=
"kclx"
align=
"center"
/>
<el-table-column
label=
"课程类型"
prop=
"kclx"
align=
"center"
/>
<el-table-column
label=
"选课时间"
prop=
"xksj"
align=
"center"
/>
<el-table-column
label=
"选课时间"
prop=
"xksj"
align=
"center"
/>
<el-table-column
label=
"已选专业"
prop=
"yxzy"
align=
"center"
/>
<el-table-column
label=
"已选专业"
prop=
"yxzy"
align=
"center"
/>
</el-table>
</el-table>
<pagination
v-show=
"total > 0"
:total=
"total"
:page
.
sync=
"queryForm.pageNum"
:limit
.
sync=
"queryForm.pageSize"
<pagination
v-show=
"total > 0"
:total=
"total"
:page
.
sync=
"queryForm.pageNum"
:limit
.
sync=
"queryForm.pageSize"
@
pagination=
"getList"
/>
@
pagination=
"getList"
/>
...
@@ -56,134 +52,40 @@ export default {
...
@@ -56,134 +52,40 @@ export default {
return
{
return
{
majorList
:
[],
majorList
:
[],
classList
:
[],
classList
:
[],
// 查询表单
queryForm
:
{
// 查询表单
queryForm
:
{
studentsName
:
''
,
studentsName
:
''
,
classId
:
''
,
classId
:
''
,
selectedMajor
:
''
,
majorId
:
''
,
pageNum
:
1
,
pageNum
:
1
,
pageSize
:
10
pageSize
:
10
},
},
// 遮罩层
loading
:
false
,
// 遮罩层
loading
:
false
,
total
:
0
,
total
:
0
,
// 信息列表
studentsList
:
[],
// 信息列表
studentsList
:
[
{
id
:
1
,
bj
:
'一班'
,
xsxm
:
'张三'
,
xh
:
'2018001'
,
sfzh
:
'123456789012345678'
,
kclx
:
'春季选课'
,
xksj
:
'2020-09-01'
,
yxzy
:
'会计 护理 幼师 机电 电子商务 导游'
},
{
id
:
2
,
bj
:
'一班'
,
xsxm
:
'张三'
,
xh
:
'2018001'
,
sfzh
:
'123456789012345678'
,
kclx
:
'春季选课'
,
xksj
:
'2020-09-01'
,
yxzy
:
'会计 护理 幼师 机电 电子商务 导游'
},
{
id
:
3
,
bj
:
'一班'
,
xsxm
:
'张三'
,
xh
:
'2018001'
,
sfzh
:
'123456789012345678'
,
kclx
:
'春季选课'
,
xksj
:
'2020-09-01'
,
yxzy
:
'会计 护理 幼师 机电 电子商务 导游'
}
],
// 新增/编辑表单
postForm
:
{
},
// 查看表格
lookTable
:
[],
options
:
[],
// 是否显示弹出层
open
:
false
,
// 查看弹窗
openLook
:
false
,
// 校验规则
rules
:
{
},
// 弹出层标题
title
:
''
,
// 是否禁用删除按钮--项目明细
multiple
:
false
,
// 选中数据的值数组
selectItems
:
[],
// 科室列表
deptOptions
:
[],
}
}
},
},
created
()
{
created
()
{
this
.
getList
();
this
.
getList
();
// 获取科室信息
},
},
methods
:
{
methods
:
{
// 获取列表
// 获取列表
// getList() {
getList
()
{
// getksBudgetList(this.queryForm).then(response => {
// this.loading = false;
// this.studentsList = response.rows;
// console.log(111, response.rows);
// this.total = response.total;
// }).catch(err => {
// this.loading = false;
// })
// },
// 搜索按钮
handleQuery
()
{
this
.
getList
();
},
},
// 重置按钮
// 重置按钮
resetQuery
()
{
resetQuery
()
{
this
.
queryForm
=
{
this
.
queryForm
=
{
pageNum
:
1
,
pageNum
:
1
,
pageSize
:
10
pageSize
:
10
};
};
this
.
resetForm
(
"queryForm"
);
this
.
handleQuery
();
},
},
// 重置
reset
()
{
this
.
postForm
=
{
}
this
.
resetForm
(
'postForm'
);
},
// 取消按钮
cancel
()
{
this
.
open
=
false
;
this
.
openLook
=
false
;
this
.
reset
();
this
.
resetForm
(
'postForm'
);
},
// 导出
// 导出
handleExport
()
{
handleExport
()
{
this
.
download
(
'/departmentBudgetProjectmx/export'
,
{
this
.
download
(
'/departmentBudgetProjectmx/export'
,
{
...
...
ruoyi-ui/src/views/smartSchool/gradeWork/courseSelection/taskPublishing/index.vue
View file @
47f8e8f8
...
@@ -21,50 +21,37 @@
...
@@ -21,50 +21,37 @@
</el-row>
</el-row>
<!-- 列表 -->
<!-- 列表 -->
<div>
<div
class=
"listBlock"
>
<el-row>
<div
class=
"itemBlock"
v-for=
"(task, index) in tasks"
:key=
"index"
>
<el-col
:span=
"24"
>
<!-- 任务详细信息 -->
<el-card
v-for=
"(task, index) in tasks"
:key=
"index"
class=
"task-card"
>
<div
class=
"task-info"
>
<!-- 任务详细信息 -->
<div
class=
"task-name"
>
{{
task
.
taskName
}}
</div>
<div
class=
"task-info"
>
<!-- 右上角显示已选人数/全部人数 -->
<div
class=
"left"
>
<div
class=
"task-count"
>
<div
class=
"task-name"
>
<div
class=
"count"
>
<div>
{{
task
.
taskName
}}
</div>
{{
task
.
yxrs
}}
/
{{
task
.
zrs
}}
</div>
</div>
<div
class=
"task-level"
>
<div
class=
"sun"
>
已选人数/总人数
</div>
<span>
级部:
{{
task
.
grade
}}
</span>
</div>
<span>
创建人:
{{
task
.
createBy
}}
</span>
</div>
</div>
<div
class=
"task-level"
>
<div
class=
"task-time"
>
<span>
级部:
{{
task
.
grade
}}
</span>
<div>
创建时间:
{{
task
.
createTime
}}
</div>
<span>
创建人:
{{
task
.
createBy
}}
</span>
</div>
</div>
</div>
<div
class=
"task-time"
>
<div>
创建时间:
{{
task
.
createTime
}}
</div>
<div
class=
"right"
>
</div>
<!-- 右上角显示已选人数/全部人数 -->
<!-- 按钮 -->
<div
class=
"task-count"
>
<div
class=
"task-buttons"
>
<div
class=
"count"
>
<el-button
size=
"mini"
icon=
"el-icon-edit"
round
@
click=
"handleUpdate(task)"
>
修改
</el-button>
{{
task
.
yxrs
}}
/
{{
task
.
zrs
}}
<el-button
type=
"primary"
size=
"small"
round
@
click=
"performance(task.id,task.grade)"
>
成绩管理
</el-button>
</div>
<el-button
type=
"success"
size=
"small"
round
@
click=
"courseSelectionsituation(task.id)"
>
选课情况
</el-button>
<div
class=
"sun"
>
已选人数/总人数
</div>
<el-button
type=
"warning"
size=
"small"
round
@
click=
"springView(task.id)"
>
春季选课情况
</el-button>
</div>
<el-button
type=
"danger"
size=
"small"
round
@
click=
"artisticView()"
>
艺体选课情况
</el-button>
<!-- 右下角按钮 -->
<el-button
class=
"purpleBtn"
size=
"small"
round
@
click=
"summerViewing()"
>
夏季选课情况
</el-button>
<div
class=
"task-buttons"
>
<el-button
class=
"rowBtn"
size=
"small"
round
@
click=
"secondaryDivision()"
>
夏季二次选课
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"handleUpdate(task)"
>
修改
</div>
</el-button>
</div>
<el-button
type=
"text"
size=
"small"
icon=
"el-icon-edit"
@
click=
"performance()"
>
成绩管理
</el-button>
<el-button
type=
"text"
size=
"small"
@
click=
"courseSelectionsituation()"
>
选课情况
</el-button>
<el-button
type=
"text"
size=
"small"
@
click=
"springView()"
>
春季选课情况
</el-button>
<el-button
type=
"text"
size=
"small"
@
click=
"artisticView()"
>
艺体选课情况
</el-button>
<el-button
type=
"text"
size=
"small"
@
click=
"summerViewing()"
>
夏季选课情况
</el-button>
<el-button
type=
"text"
size=
"small"
@
click=
"secondaryDivision()"
>
夏季二次选课
</el-button>
</div>
</div>
</div>
</el-card>
</el-col>
</el-row>
</div>
</div>
<!-- 新增/修改弹窗 -->
<!-- 新增/修改弹窗 -->
<el-dialog
:title=
"title"
:visible
.
sync=
"open"
width=
"900px"
append-to-body
>
<el-dialog
:title=
"title"
:visible
.
sync=
"open"
width=
"900px"
append-to-body
>
...
@@ -108,8 +95,6 @@
...
@@ -108,8 +95,6 @@
</
template
>
</
template
>
<
script
>
<
script
>
import
{
dataCurricula
,
addCurricula
,
updateCurricula
,
getCurricula
,
getDept
}
import
{
dataCurricula
,
addCurricula
,
updateCurricula
,
getCurricula
,
getDept
}
from
"@/api/smartSchool/gradeWork/courseSelection/taskPublishing.js"
;
from
"@/api/smartSchool/gradeWork/courseSelection/taskPublishing.js"
;
export
default
{
export
default
{
...
@@ -179,30 +164,32 @@ export default {
...
@@ -179,30 +164,32 @@ export default {
this
.
title
=
"新增任务发布"
;
this
.
title
=
"新增任务发布"
;
},
},
// 成绩管理按钮
// 成绩管理按钮 grade级部 ID任务ID
performance
()
{
performance
(
id
,
grade
)
{
console
.
log
(
"grade"
,
grade
)
this
.
$router
.
push
({
this
.
$router
.
push
({
path
:
"/gradeWork/courseSelection/performance"
,
path
:
"/gradeWork/courseSelection/performance"
,
query
:
{
query
:
{
// id: this.task.id
id
,
grade
}
}
});
});
},
},
// 选课情况按钮
// 选课情况按钮
courseSelectionsituation
()
{
courseSelectionsituation
(
id
)
{
this
.
$router
.
push
({
this
.
$router
.
push
({
path
:
"/gradeWork/courseSelection/courseSelectionsituation"
,
path
:
"/gradeWork/courseSelection/courseSelectionsituation"
,
query
:
{
query
:
{
// id: this.task.
id
id
}
}
});
});
},
},
// 春季选课按钮
// 春季选课按钮
springView
()
{
springView
(
id
)
{
this
.
$router
.
push
({
this
.
$router
.
push
({
path
:
"/gradeWork/courseSelection/springView"
,
path
:
"/gradeWork/courseSelection/springView"
,
query
:
{
query
:
{
// id: this.task.
id
id
}
}
});
});
},
},
...
@@ -320,59 +307,68 @@ export default {
...
@@ -320,59 +307,68 @@ export default {
</
script
>
</
script
>
<
style
lang=
"scss"
scoped
>
<
style
lang=
"scss"
scoped
>
.listBlock
{
display
:
flex
;
flex-direction
:
row
;
align-items
:
flex-start
;
flex-wrap
:
wrap
;
}
.itemBlock
{
width
:
49%
;
padding
:
15px
20px
5px
20px
;
margin
:
0
1.5%
1.5%
0
;
border-radius
:
20px
;
box-shadow
:
0
2px
12px
0
rgba
(
0
,
0
,
0
,
0.1
);
}
.listBlock
.itemBlock
:nth-child
(
2n
)
{
margin-right
:
0px
!important
;
}
.purpleBtn
{
color
:
#FFFFFF
;
background-color
:
#B66D93
;
border
:
1px
solid
#B66D93
;
}
.rowBtn
{
color
:
#FFFFFF
;
background-color
:
#D3C1B1
;
border
:
1px
solid
#D3C1B1
;
}
.task-name
{
.task-name
{
color
:
rgba
(
136
,
136
,
136
,
1
);
color
:
#777
;
font-size
:
42px
;
font-size
:
38px
;
text-align
:
left
;
font-weight
:
500
;
font-family
:
SourceHanSansSC-regular
;
text-align
:
left
;
margin-bottom
:
40px
;
}
}
.task-level
{
.task-level
{
margin-bottom
:
10
px
;
margin-bottom
:
6
px
;
color
:
rgba
(
108
,
108
,
108
,
1
);
color
:
rgba
(
108
,
108
,
108
,
1
);
font-size
:
13px
;
font-size
:
13px
;
text-align
:
left
;
text-align
:
left
;
font-family
:
SourceHanSansSC-regular
;
}
}
.task-level
>
span
{
.task-level
>
span
{
margin-right
:
25px
;
margin-right
:
25px
;
}
}
.task-time
{
.task-time
{
color
:
rgba
(
108
,
108
,
108
,
1
);
color
:
rgba
(
108
,
108
,
108
,
1
);
font-size
:
13px
;
font-size
:
13px
;
text-align
:
left
;
text-align
:
left
;
font-family
:
SourceHanSansSC-regular
;
}
}
.task-info
{
.task-info
{
display
:
flex
;
display
:
flex
;
flex-direction
:
row
;
flex-direction
:
row
;
justify-content
:
space-between
;
align-items
:
center
;
}
justify-content
:
space-between
;
padding-bottom
:
15px
;
.right
{
margin-top
:
1.5rem
;
display
:
flex
;
flex-direction
:
column
;
margin-top
:
12px
;
}
}
.task-count
{
.task-count
{
margin-left
:
50%
;
text-align
:
center
;
//
margin-top
:
-
10px
;
padding-right
:
10px
;
}
}
.task-count
>
.count
{
.task-count
>
.count
{
color
:
rgba
(
90
,
123
,
244
,
1
);
color
:
rgba
(
90
,
123
,
244
,
1
);
font-size
:
38px
;
font-size
:
38px
;
font-weight
:
bold
;
font-weight
:
bold
;
//
text-align
:
center
;
margin-right
:
2%
;
font-family
:
PMZDBiaoTi-regular
;
}
}
.task-count
>
.sun
{
.task-count
>
.sun
{
...
@@ -380,19 +376,18 @@ export default {
...
@@ -380,19 +376,18 @@ export default {
font-size
:
18px
;
font-size
:
18px
;
text-align
:
left
;
text-align
:
left
;
font-weight
:
bold
;
font-weight
:
bold
;
font-family
:
SourceHanSansSC-regular
;
}
}
.task-buttons
{
.task-buttons
{
margin-top
:
20px
;
margin-top
:
20px
;
}
}
.
el-card
{
.
task-buttons
button
{
margin-bottom
:
2
0px
;
margin-bottom
:
1
0px
;
}
}
.
left
{
.
el-card
{
margin-
left
:
3
0px
;
margin-
bottom
:
2
0px
;
}
}
</
style
>
</
style
>
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