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
32f66037
Commit
32f66037
authored
Oct 20, 2020
by
黄奎
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
页面修改
parent
333c48aa
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
746 additions
and
534 deletions
+746
-534
index.js
src/api/course/index.js
+14
-0
index.js
src/api/school/index.js
+208
-56
class-form.vue
src/components/school/classmanage/class-form.vue
+149
-0
classmanage.vue
src/pages/school/classmanage.vue
+109
-226
manager.vue
src/pages/school/manager.vue
+266
-252
No files found.
src/api/course/index.js
View file @
32f66037
...
@@ -71,6 +71,20 @@ export function queryCoursePage(data) {
...
@@ -71,6 +71,20 @@ export function queryCoursePage(data) {
})
})
}
}
/**
* 获取课程下拉列表
* @param {JSON对象} data
*/
export
function
queryCourseDropdownList
(
data
)
{
return
request
({
url
:
'/Course/GetCourseList'
,
method
:
'post'
,
data
})
}
/**
/**
* 获取课程详情
* 获取课程详情
* @param {JSON参数} data
* @param {JSON参数} data
...
...
src/api/school/index.js
View file @
32f66037
...
@@ -5,11 +5,11 @@ import request from '../../utils/request'
...
@@ -5,11 +5,11 @@ import request from '../../utils/request'
*
*
*/
*/
export
function
getSchoolPage
(
data
)
{
export
function
getSchoolPage
(
data
)
{
return
request
({
return
request
({
url
:
'/user/GetSchoolPageList'
,
url
:
'/user/GetSchoolPageList'
,
method
:
'post'
,
method
:
'post'
,
data
data
})
})
}
}
/**
/**
...
@@ -17,11 +17,11 @@ export function getSchoolPage(data) {
...
@@ -17,11 +17,11 @@ export function getSchoolPage(data) {
*
*
*/
*/
export
function
getSchoolDropdown
(
data
)
{
export
function
getSchoolDropdown
(
data
)
{
return
request
({
return
request
({
url
:
'/user/GetSchoolList'
,
url
:
'/user/GetSchoolList'
,
method
:
'post'
,
method
:
'post'
,
data
data
})
})
}
}
/**
/**
...
@@ -29,43 +29,54 @@ export function getSchoolDropdown(data) {
...
@@ -29,43 +29,54 @@ export function getSchoolDropdown(data) {
*
*
*/
*/
export
function
saveSchool
(
data
)
{
export
function
saveSchool
(
data
)
{
return
request
({
return
request
({
url
:
'/user/SetSchool'
,
url
:
'/user/SetSchool'
,
method
:
'post'
,
method
:
'post'
,
data
data
})
})
}
}
/**
/**
* 获取教师分页数据
* 获取教师分页数据
*/
*/
export
function
getTeacherPage
(
data
)
{
export
function
getTeacherPage
(
data
)
{
return
request
({
return
request
({
url
:
'/user/GetTeacherPageList'
,
url
:
'/user/GetTeacherPageList'
,
method
:
'post'
,
method
:
'post'
,
data
data
})
})
}
/**
* 获取讲师列表
*/
export
function
getTeacherDropDownList
(
data
)
{
return
request
({
url
:
'/user/GetTeacherList'
,
method
:
'post'
,
data
})
}
}
/**
/**
* 保存教师信息
* 保存教师信息
*/
*/
export
function
saveTeacher
(
data
)
{
export
function
saveTeacher
(
data
)
{
return
request
({
return
request
({
url
:
'/user/SetTeacher'
,
url
:
'/user/SetTeacher'
,
method
:
'post'
,
method
:
'post'
,
data
data
})
})
}
}
/**
/**
* 教师审核
* 教师审核
*/
*/
export
function
auditTeacher
(
data
)
{
export
function
auditTeacher
(
data
)
{
return
request
({
return
request
({
url
:
'/user/AuditTeacher'
,
url
:
'/user/AuditTeacher'
,
method
:
'post'
,
method
:
'post'
,
data
data
})
})
}
}
/**
/**
...
@@ -73,44 +84,56 @@ export function auditTeacher(data) {
...
@@ -73,44 +84,56 @@ export function auditTeacher(data) {
* @param {TId} data
* @param {TId} data
*/
*/
export
function
deleteTeacher
(
data
)
{
export
function
deleteTeacher
(
data
)
{
return
request
({
return
request
({
url
:
'/user/RemoveTeacher'
,
url
:
'/user/RemoveTeacher'
,
method
:
'post'
,
method
:
'post'
,
data
data
})
})
}
}
/**
/**
* 获取助教分页数据
* 获取助教分页数据
*/
*/
export
function
getAssistPage
(
data
)
{
export
function
getAssistPage
(
data
)
{
return
request
({
return
request
({
url
:
'/user/GetAssistPageList'
,
url
:
'/user/GetAssistPageList'
,
method
:
'post'
,
method
:
'post'
,
data
data
})
})
}
/**
* 获取助教下拉列表
* @param {JSON对象} data
*/
export
function
getAssistDropDownList
(
data
)
{
return
request
({
url
:
'/user/GetAssistList'
,
method
:
'post'
,
data
})
}
}
/**
/**
* 保存教师信息
* 保存教师信息
*/
*/
export
function
saveAssist
(
data
)
{
export
function
saveAssist
(
data
)
{
return
request
({
return
request
({
url
:
'/user/SetAssist'
,
url
:
'/user/SetAssist'
,
method
:
'post'
,
method
:
'post'
,
data
data
})
})
}
}
/**
/**
* 教师审核
* 教师审核
*/
*/
export
function
auditAssist
(
data
)
{
export
function
auditAssist
(
data
)
{
return
request
({
return
request
({
url
:
'/user/AuditAssist'
,
url
:
'/user/AuditAssist'
,
method
:
'post'
,
method
:
'post'
,
data
data
})
})
}
}
/**
/**
...
@@ -118,9 +141,138 @@ export function auditAssist(data) {
...
@@ -118,9 +141,138 @@ export function auditAssist(data) {
* @param {AId} data
* @param {AId} data
*/
*/
export
function
deleteAssist
(
data
)
{
export
function
deleteAssist
(
data
)
{
return
request
({
return
request
({
url
:
'/user/RemoveAssist'
,
url
:
'/user/RemoveAssist'
,
method
:
'post'
,
method
:
'post'
,
data
data
})
})
}
}
\ No newline at end of file
/**
* 获取班级分页列表
* @param {JSON数据} data
*/
export
function
getClassPage
(
data
)
{
return
request
({
url
:
'/Class/GetClassPageList'
,
method
:
'post'
,
data
})
}
/**
* 获取班级列表【下拉使用】
* @param {JSON数据} data
*/
export
function
getClassDropDownList
(
data
)
{
return
request
({
url
:
'/Class/GetClassList'
,
method
:
'post'
,
data
})
}
/**
* 新增修改班级
* @param {JSON数据} data
*/
export
function
saveClass
(
data
)
{
return
request
({
url
:
'/Class/SetClass'
,
method
:
'post'
,
data
})
}
/**
* 新增修改班级
* @param {JSON数据} data
*/
export
function
getClassInfo
(
data
)
{
return
request
({
url
:
'/Class/GetClass'
,
method
:
'post'
,
data
})
}
/**
* 删除班级
* @param {JSON数据} data
*/
export
function
deleteClass
(
data
)
{
return
request
({
url
:
'/Class/RemoveClass'
,
method
:
'post'
,
data
})
}
/**
* 获取学员分页列表
* @param {JSON数据} data
*/
export
function
getStudentPage
(
data
)
{
return
request
({
url
:
'/User/GetStudentPageList'
,
method
:
'post'
,
data
})
}
/**
* 获取学员下拉类表
*/
export
function
getStudentDorpDownList
(
data
)
{
return
request
({
url
:
'/User/GetStudentList'
,
method
:
'post'
,
data
})
}
/**
* 添加修改学员
*/
export
function
saveStudent
(
data
)
{
return
request
({
url
:
'/User/SetStudent'
,
method
:
'post'
,
data
})
}
/**
* 获取学员信息
*/
export
function
getStudentInfo
(
data
)
{
return
request
({
url
:
'/User/GetStudent'
,
method
:
'post'
,
data
})
}
/**
* 删除学员信息
*/
export
function
deleteStudent
(
data
)
{
return
request
({
url
:
'/User/RemoveStudent'
,
method
:
'post'
,
data
})
}
/**
* 更新学生禁用或启用
*/
export
function
UpdateStudentIsDisable
(
data
)
{
return
request
({
url
:
'/User/UpdateStudentIsDisable'
,
method
:
'post'
,
data
})
}
src/components/school/classmanage/class-form.vue
0 → 100644
View file @
32f66037
<
template
>
<q-dialog
v-model=
"persistent"
content-class=
"bg-grey-1"
persistent
transition-show=
"scale"
transition-hide=
"scale"
>
<q-card
style=
"width: 800px;max-width:900px;"
>
<q-card-section>
<div
class=
"text-h6"
>
{{
objOption
.
ClassId
==
0
?
'新增班级信息'
:
'修改班级信息'
}}
</div>
</q-card-section>
<q-card-section
class=
"q-pt-none scroll"
style=
"max-height: 70vh"
>
<div
class=
"text-caption q-mb-md q-px-xs text-grey-6"
>
基本资料
</div>
<div
class=
"row wrap"
>
<q-input
filled
stack-label
maxlength=
"20"
:dense=
"false"
v-model=
"objOption.ClassName"
ref=
"ClassName"
class=
"col-6 q-pr-lg q-pb-lg"
label=
"班级名称"
:rules=
"[val => !!val || '请填写班级名称']"
/>
<q-select
filled
stack-label
option-value=
"CourseId"
option-label=
"CourseName"
v-model=
"objOption.CouseId"
ref=
"CouseId"
:options=
"courseList"
label=
"所属课程"
:dense=
"false"
class=
"col-6 q-pb-lg"
emit-value
map-options
:rules=
"[val => !!val || '请选择所属课程']"
/>
<q-select
filled
stack-label
option-value=
"TId"
option-label=
"TeacherName"
v-model=
"objOption.Teacher_Id"
ref=
"Teacher_Id"
:options=
"teacherList"
label=
"讲师"
:dense=
"false"
class=
"col-6 q-pr-lg q-pb-lg"
emit-value
map-options
:rules=
"[val => !!val || '请选择讲师']"
/>
<q-select
filled
stack-label
option-value=
"AId"
option-label=
"AssistName"
v-model=
"objOption.Assist_Id"
ref=
"Assist_Id"
:options=
"assistList"
label=
"助教"
:dense=
"false"
class=
"col-6 q-pb-lg"
emit-value
map-options
:rules=
"[val => !!val || '请选择助教']"
/>
</div>
</q-card-section>
<q-separator
/>
<q-card-actions
align=
"right"
class=
"bg-white"
>
<q-btn
label=
"取消"
color=
"dark"
style=
"font-weight:400 !important"
@
click=
"closeSaveForm"
/>
<q-btn
label=
"立即提交"
color=
"accent"
class=
"q-px-md"
style=
"font-weight:400 !important"
:loading=
"saveLoading"
@
click=
"saveClassInfo"
/>
</q-card-actions>
</q-card>
</q-dialog>
</
template
>
<
script
>
import
{
getTeacherDropDownList
,
getAssistDropDownList
,
saveClass
,
getClassInfo
}
from
'../../../api/school/index'
import
{
queryCourseDropdownList
}
from
'../../../api/course/index'
export
default
{
props
:
{
saveObj
:
{
type
:
Object
,
default
:
null
}
},
data
()
{
return
{
persistent
:
true
,
objOption
:
{
ClassId
:
0
,
//班级编号
ClassName
:
''
,
//班级名称
CouseId
:
0
,
//所属课程
Teacher_Id
:
0
,
//讲师编号
Assist_Id
:
0
,
//助教编号
},
optionTitle
:
""
,
courseList
:
[],
teacherList
:
[],
assistList
:
[],
saveLoading
:
false
,
}
},
created
()
{
this
.
getCourseDropdown
();
this
.
getTeacherDropdown
();
this
.
getAssistantDropdown
();
},
mounted
()
{
this
.
initObj
()
},
methods
:
{
initObj
()
{
if
(
this
.
saveObj
)
{
this
.
optionTitle
=
"修改班级信息"
if
(
this
.
saveObj
.
ClassId
>
0
)
{
getClassInfo
({
ClassId
:
this
.
saveObj
.
ClassId
}).
then
(
res
=>
{
this
.
objOption
.
ClassId
=
res
.
Data
.
ClassId
;
this
.
objOption
.
ClassName
=
res
.
Data
.
ClassName
;
this
.
objOption
.
CouseId
=
res
.
Data
.
CouseId
;
this
.
objOption
.
Teacher_Id
=
res
.
Data
.
Teacher_Id
;
this
.
objOption
.
Assist_Id
=
res
.
Data
.
Assist_Id
;
this
.
$forceUpdate
();
})
}
}
else
{
this
.
optionTitle
=
"新增班级"
this
.
objOption
.
ClassId
=
0
;
this
.
objOption
.
ClassName
=
""
;
this
.
objOption
.
CouseId
=
0
;
this
.
objOption
.
Teacher_Id
=
0
;
this
.
objOption
.
Assist_Id
=
0
;
}
},
//获取课程下拉列表
getCourseDropdown
()
{
queryCourseDropdownList
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
courseList
=
res
.
Data
;
}
});
},
//获取讲师下拉列表
getTeacherDropdown
()
{
getTeacherDropDownList
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
teacherList
=
res
.
Data
;
}
})
},
//获取助教下拉列表
getAssistantDropdown
()
{
getAssistDropDownList
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
this
.
assistList
=
res
.
Data
;
}
});
},
closeSaveForm
()
{
this
.
$emit
(
'close'
)
this
.
persistent
=
false
},
saveClassInfo
()
{
this
.
saveLoading
=
true
saveClass
(
this
.
objOption
).
then
(
res
=>
{
this
.
saveLoading
=
false
this
.
$q
.
notify
({
icon
:
'iconfont icon-chenggong'
,
color
:
'accent'
,
timeout
:
2000
,
message
:
'数据保存成功!'
,
position
:
'top'
})
this
.
$emit
(
"success"
)
this
.
closeSaveForm
()
}).
catch
(()
=>
{
this
.
saveLoading
=
false
})
},
},
}
</
script
>
src/pages/school/classmanage.vue
View file @
32f66037
...
@@ -3,78 +3,56 @@
...
@@ -3,78 +3,56 @@
<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=
"resetSearch"
clearable
standout=
"bg-primary text-white"
v-model=
"msg.
Assist
Name"
<q-input
@
change=
"resetSearch"
clearable
standout=
"bg-primary text-white"
v-model=
"msg.
Class
Name"
label=
"班级名称"
/>
label=
"班级名称"
/>
</div>
</div>
<div
class=
"col-3"
>
<div
class=
"col-3"
>
<q-input
@
change=
"resetSearch"
clearable
standout=
"bg-primary text-white"
v-model=
"msg.
AssistTel
"
<q-input
@
change=
"resetSearch"
clearable
standout=
"bg-primary text-white"
v-model=
"msg.
CourseName
"
label=
"
助教电话
"
/>
label=
"
课程名称
"
/>
</div>
</div>
<div
class=
"col-3"
>
<div
class=
"col-3"
>
<q-
select
@
input=
"resetSearch"
clearable
filled
stack-label
option-value=
"SId"
option-label=
"S
Name"
<q-
input
@
change=
"resetSearch"
clearable
standout=
"bg-primary text-white"
v-model=
"msg.Teacher
Name"
v-model=
"schoolTemp"
ref=
"School_Id"
:options=
"schoolList"
label=
"所属校区"
:dense=
"false
"
/>
label=
"讲师名称
"
/>
</div>
</div>
<div
class=
"col-3"
>
<div
class=
"col-3"
>
<q-
select
@
input=
"resetSearch"
standout=
"bg-primary text-white"
v-model=
"msg.AuditStatus"
:options=
"AuditOpts
"
<q-
input
@
change=
"resetSearch"
clearable
standout=
"bg-primary text-white"
v-model=
"msg.AssistName
"
emit-value
map-options
label=
"审核状态
"
/>
label=
"助教名称
"
/>
</div>
</div>
</div>
</div>
<div
class=
"page-option"
>
<div
class=
"page-option"
>
<q-btn
color=
"accent"
class=
"q-mr-md"
icon=
"add"
label=
"新增助教"
@
click=
"addObj(null)"
/>
<q-btn
color=
"accent"
class=
"q-mr-md"
icon=
"add"
label=
"新增班级"
@
click=
"EditClass(null)"
/>
<q-btn-dropdown
outline
color=
"dark"
label=
"更多"
>
<q-list>
<q-item
clickable
v-close-popup
>
<q-item-section>
<q-item-label>
批量导入
</q-item-label>
</q-item-section>
</q-item>
<q-item
clickable
v-close-popup
>
<q-item-section>
<q-item-label>
批量导出
</q-item-label>
</q-item-section>
</q-item>
</q-list>
</q-btn-dropdown>
</div>
</div>
</div>
</div>
<div
class=
"page-content"
>
<div
class=
"page-content"
>
<q-table
:pagination=
"msg"
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
<q-table
:pagination=
"msg"
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
class=
"sticky-right-column-table sticky-tow-column-table"
separator=
"none"
title=
"班级信息"
:data=
"data"
class=
"sticky-right-column-table sticky-tow-column-table"
separator=
"none"
title=
"班级信息"
:data=
"data"
:columns=
"columns"
row-key=
"name"
>
:columns=
"columns"
row-key=
"name"
>
<template
v-slot:body-cell-
AssistIcon
=
"props"
>
<template
v-slot:body-cell-
TeacherHead
=
"props"
>
<q-td
auto-width
:props=
"props"
>
<q-td
auto-width
:props=
"props"
>
<q-avatar
size=
"md"
v-if=
"props.value"
>
<q-avatar
size=
"md"
v-if=
"props.value"
>
<img
:src=
"props.value"
/>
<img
:src=
"props.value"
/>
</q-avatar>
</q-avatar>
<q-avatar
size=
"md"
color=
"teal-10"
text-color=
"white"
v-if=
"!props.value"
>
<q-avatar
size=
"md"
color=
"teal-10"
text-color=
"white"
v-if=
"!props.value"
>
{{
props
.
row
.
Assist
Name
.
substring
(
0
,
1
)
}}
</q-avatar>
{{
props
.
row
.
Teacher
Name
.
substring
(
0
,
1
)
}}
</q-avatar>
</q-td>
</q-td>
</
template
>
</
template
>
<
template
v-slot:body-cell-
Assist
Name=
"props"
>
<
template
v-slot:body-cell-
Teacher
Name=
"props"
>
<q-td
:props=
"props"
>
<q-td
:props=
"props"
>
<div
class=
"text-blue cursor-pointer"
>
{{
props
.
value
}}
</div>
<div
class=
"text-blue cursor-pointer"
>
{{
props
.
value
}}
</div>
</q-td>
</q-td>
</
template
>
</
template
>
<
template
v-slot:body-cell-AuditStatus=
"props"
>
<
template
v-slot:body-cell-AssistIcon=
"props"
>
<q-td
auto-width
:props=
"props"
>
<q-avatar
size=
"md"
v-if=
"props.value"
>
<img
:src=
"props.value"
/>
</q-avatar>
<q-avatar
size=
"md"
color=
"teal-10"
text-color=
"white"
v-if=
"!props.value"
>
{{
props
.
row
.
AssistName
.
substring
(
0
,
1
)
}}
</q-avatar>
</q-td>
</
template
>
<
template
v-slot:body-cell-AssistName=
"props"
>
<q-td
:props=
"props"
>
<q-td
:props=
"props"
>
<q-badge
v-if=
"props.value==1"
color=
"dark"
label=
"审核中"
/>
<div
class=
"text-blue cursor-pointer"
>
{{
props
.
value
}}
</div>
<div
v-if=
"props.value==3"
>
<q-badge
color=
"warning"
class=
"cursor-pointer"
label=
"审核不通过"
/>
<q-popup-proxy>
<q-banner
class=
"bg-dark text-white"
>
{{
props
.
row
.
Remark
}}
</q-banner>
</q-popup-proxy>
</div>
<div
v-if=
"props.value==2"
>
<q-badge
v-if=
"props.value==2"
class=
"cursor-pointer"
color=
"primary"
label=
"审核通过"
/>
<q-popup-proxy>
<q-banner
class=
"bg-dark text-white"
>
{{
props
.
row
.
Remark
}}
</q-banner>
</q-popup-proxy>
</div>
</q-td>
</q-td>
</
template
>
</
template
>
<
template
v-slot:bottom
>
<
template
v-slot:bottom
>
...
@@ -84,206 +62,128 @@
...
@@ -84,206 +62,128 @@
<
template
v-slot:body-cell-optioned=
"props"
>
<
template
v-slot:body-cell-optioned=
"props"
>
<q-td
:props=
"props"
>
<q-td
:props=
"props"
>
<div
style=
"min-width:190px;width:100%"
>
<div
style=
"min-width:190px;width:100%"
>
<q-btn
v-if=
"props.row.AuditStatus==1"
flat
size=
"xs"
icon=
"iconfont icon-shenhe"
color=
"info"
<q-btn
flat
size=
"xs"
icon=
"iconfont icon-shanchu"
color=
"negative"
style=
"font-weight:400"
style=
"font-weight:400"
class=
"q-mr-xs"
label=
"审核"
@
click=
"showExamine(props.row)"
/>
class=
"q-mr-xs"
label=
"删除"
@
click=
"deleteClass(props.row)"
/>
<q-btn
v-if=
"props.row.AuditStatus==2"
flat
size=
"xs"
icon=
"iconfont icon-ziyuan"
color=
"warning"
style=
"font-weight:400"
class=
"q-mr-xs"
label=
"重置密码"
@
click=
"resetPw(props.row.AId)"
/>
<q-btn
v-if=
"props.row.AuditStatus==3"
flat
size=
"xs"
icon=
"iconfont icon-shanchu"
color=
"negative"
style=
"font-weight:400"
class=
"q-mr-xs"
label=
"删除"
@
click=
"deleteUser(props.row.AId)"
/>
<q-btn
flat
size=
"xs"
icon=
"edit"
color=
"accent"
style=
"font-weight:400"
label=
"编辑"
<q-btn
flat
size=
"xs"
icon=
"edit"
color=
"accent"
style=
"font-weight:400"
label=
"编辑"
@
click=
"
addObj
(props.row)"
/>
@
click=
"
EditClass
(props.row)"
/>
</div>
</div>
</q-td>
</q-td>
</
template
>
</
template
>
</q-table>
</q-table>
<assistant-form
v-if=
"persistent"
:save-obj=
"objOption"
@
close=
"closeSaveForm"
@
success=
"addAfterQuery"
>
<class-form
v-if=
"isShowEditClassForm"
:save-obj=
"classOption"
@
close=
"closeClassForm"
@
success=
"refreshPage"
>
</assistant-form>
</class-form>
<assistant-shenhe
v-if=
"persistentExamine"
:show-obj=
"objOption"
@
close=
"closeSaveForm"
@
success=
"addAfterQuery"
>
</assistant-shenhe>
</div>
</div>
</div>
</div>
</template>
</template>
<
script
>
<
script
>
import
{
import
{
getAssistPage
,
getClassPage
,
getSchoolDropdown
,
deleteClass
deleteAssist
}
from
'../../api/school/index'
}
from
'../../api/school/index'
import
{
import
classForm
from
'../../components/school/classmanage/class-form'
resetPassword
}
from
'../../api/users/user.js'
import
assistantForm
from
'../../components/school/assistant/assistant-form'
import
assistantShenhe
from
'../../components/school/assistant/assistant-shenhe'
export
default
{
export
default
{
meta
:
{
meta
:
{
title
:
"
助教
管理"
title
:
"
班级
管理"
},
},
components
:
{
components
:
{
assistantForm
,
classForm
assistantShenhe
},
},
data
()
{
data
()
{
return
{
return
{
currentUrl
:
""
,
currentUrl
:
""
,
columns
:
[{
columns
:
[{
name
:
'AssistIcon'
,
name
:
'ClassName'
,
label
:
''
,
field
:
'AssistIcon'
,
align
:
'left'
,
},
{
name
:
'AssistName'
,
required
:
true
,
required
:
true
,
label
:
'
助教
名称'
,
label
:
'
班级
名称'
,
align
:
'left'
,
align
:
'left'
,
field
:
row
=>
row
.
Assist
Name
field
:
row
=>
row
.
Class
Name
},
},
{
{
name
:
'
AssistTel
'
,
name
:
'
CourseName
'
,
label
:
'
助教电话
'
,
label
:
'
所属课程
'
,
field
:
'
AssistTel
'
,
field
:
'
CourseName
'
,
align
:
'left'
align
:
'left'
},
},
{
{
name
:
'
SName
'
,
name
:
'
TeacherHead
'
,
label
:
'
所属校区
'
,
label
:
''
,
field
:
'
SName
'
,
field
:
'
TeacherHead
'
,
align
:
'left'
,
align
:
'left'
,
},
},
{
{
name
:
'AuditStatus'
,
name
:
'TeacherName'
,
label
:
'审核状态'
,
label
:
'讲师'
,
field
:
'TeacherName'
,
align
:
'left'
,
align
:
'left'
,
field
:
'AuditStatus'
},
},
{
{
name
:
'
ClassCount
'
,
name
:
'
AssistIcon
'
,
label
:
'
带班数量
'
,
label
:
''
,
align
:
'left'
,
align
:
'left'
,
field
:
'
ClassCount
'
field
:
'
AssistIcon
'
},
},
{
{
name
:
'
OnlineClassCount
'
,
name
:
'
AssistName
'
,
label
:
'
网课产品
'
,
label
:
'
助教
'
,
align
:
'left'
,
align
:
'left'
,
field
:
'
OnlineClassCount
'
field
:
'
AssistName
'
},
},
{
{
name
:
'
OnlineOrder
Count'
,
name
:
'
Student
Count'
,
label
:
'
网课订单
'
,
label
:
'
学员数量
'
,
align
:
'left'
,
align
:
'left'
,
field
:
'OnlineOrderCount'
field
:
'StudentCount'
},
{
name
:
'JobCount'
,
label
:
'作业数量'
,
align
:
'left'
,
field
:
'JobCount'
},
},
{
{
name
:
'CreateTimeStr'
,
name
:
'CreateTimeStr'
,
label
:
'
入职
时间'
,
label
:
'
创建
时间'
,
align
:
'left'
,
align
:
'left'
,
field
:
'CreateTimeStr'
field
:
'CreateTimeStr'
},
},
{
{
name
:
'optioned'
,
name
:
'optioned'
,
label
:
'操作'
,
label
:
'操作'
,
field
:
'
A
Id'
field
:
'
Class
Id'
}
}
],
],
data
:
[],
data
:
[],
loading
:
true
,
loading
:
true
,
AuditOpts
:
[{
label
:
'全部'
,
value
:
'-1'
},
{
label
:
'审核中'
,
value
:
'1'
},
{
label
:
'审核通过'
,
value
:
'2'
},
{
label
:
'审核不通过'
,
value
:
'3'
}
],
msg
:
{
msg
:
{
pageIndex
:
1
,
pageIndex
:
1
,
pageSize
:
12
,
pageSize
:
12
,
rowsPerPage
:
12
,
rowsPerPage
:
12
,
ClassName
:
""
,
CourseName
:
""
,
AssistName
:
""
,
AssistName
:
""
,
AssistTel
:
""
,
TeacherName
:
""
,
AuditStatus
:
"-1"
,
School_Id
:
0
},
},
pageCount
:
0
,
pageCount
:
0
,
persistent
:
false
,
isShowEditClassForm
:
false
,
objOption
:
null
,
classOption
:
null
,
schoolList
:
[],
schoolTemp
:
null
,
persistentExamine
:
false
,
resetLoading
:
false
}
}
},
},
mounted
()
{
mounted
()
{
this
.
currentUrl
=
this
.
$route
.
path
this
.
currentUrl
=
this
.
$route
.
path
this
.
getSchool
()
this
.
queryClassPage
()
this
.
getAssistant
()
},
},
methods
:
{
methods
:
{
resetSearch
()
{
resetSearch
()
{
this
.
pageIndex
=
1
this
.
msg
.
pageIndex
=
1
;
//this.pageCount = 0
this
.
queryClassPage
();
this
.
loading
=
true
if
(
this
.
schoolTemp
)
{
this
.
msg
.
School_Id
=
this
.
schoolTemp
.
SId
}
else
{
this
.
msg
.
School_Id
=
0
}
this
.
getAssistant
()
},
},
resetPw
(
id
)
{
//删除班级
let
that
=
this
deleteClass
(
obj
)
{
let
that
=
this
;
this
.
$q
.
dialog
({
this
.
$q
.
dialog
({
title
:
"重置密码"
,
title
:
"删除班级"
,
message
:
"你正在进行重置密码行为,是否确认执行"
,
message
:
"你正在进行删除【"
+
obj
.
ClassName
+
"】行为,一旦执行无法找回,是否确认执行?"
,
persistent
:
true
,
isShowEditClassForm
:
true
,
cancel
:
{
label
:
"取消"
,
flat
:
true
},
ok
:
{
label
:
"确认重置"
,
flat
:
true
,
focus
:
true
}
}).
onOk
(()
=>
{
that
.
resetLoading
=
true
resetPassword
({
AccountType
:
3
,
AccountId
:
id
}).
then
(
res
=>
{
that
.
resetLoading
=
false
that
.
$q
.
dialog
({
title
:
"密码重置成功"
,
message
:
res
.
Message
,
persistent
:
true
,
ok
:
{
label
:
"确认"
,
flat
:
true
,
focus
:
true
}
})
}).
catch
(()
=>
{
that
.
resetLoading
=
false
});
});
},
deleteUser
(
id
)
{
let
that
=
this
this
.
$q
.
dialog
({
title
:
"删除助教"
,
message
:
"你正在进行删除助教行为,一旦执行无法找回,是否确认执行?"
,
persistent
:
true
,
cancel
:
{
cancel
:
{
label
:
"取消"
,
label
:
"取消"
,
flat
:
true
flat
:
true
...
@@ -294,41 +194,30 @@
...
@@ -294,41 +194,30 @@
focus
:
true
focus
:
true
}
}
}).
onOk
(()
=>
{
}).
onOk
(()
=>
{
that
.
resetLoading
=
true
var
delMsg
=
{
deleteAssist
({
ClassId
:
obj
.
ClassId
AId
:
id
};
}).
then
(
res
=>
{
that
.
deleteClass
(
delMsg
).
then
(
res
=>
{
this
.
$q
.
notify
({
if
(
res
.
Code
==
1
)
{
icon
:
'iconfont icon-chenggong'
,
that
.
$q
.
notify
({
color
:
'accent'
,
icon
:
'iconfont icon-chenggong'
,
timeout
:
2000
,
color
:
'accent'
,
message
:
'数据删除成功!'
,
timeout
:
2000
,
position
:
'top'
message
:
'操作成功'
,
})
position
:
'top'
this
.
getAssistant
()
})
that
.
queryClassPage
();
}
})
})
});
});
},
},
changePage
(
val
)
{
changePage
(
val
)
{
this
.
msg
.
Status
=
this
.
StatusTemp
?
this
.
StatusTemp
.
value
:
'-1'
this
.
msg
.
pageIndex
=
val
;
this
.
msg
.
pageIndex
=
1
this
.
queryClassPage
();
this
.
loading
=
true
this
.
getAssistant
()
},
},
getSchool
()
{
queryClassPage
()
{
getSchoolDropdown
({}).
then
(
res
=>
{
this
.
loading
=
true
this
.
schoolList
=
res
.
Data
getClassPage
(
this
.
msg
).
then
(
res
=>
{
if
(
this
.
msg
.
School_Id
!=
0
)
{
this
.
schoolTemp
=
this
.
schoolList
.
filter
(
x
=>
{
if
(
this
.
objOption
.
School_Id
==
x
.
SId
)
{
return
x
}
})[
0
]
}
})
},
getAssistant
()
{
getAssistPage
(
this
.
msg
).
then
(
res
=>
{
this
.
loading
=
false
this
.
loading
=
false
this
.
data
=
res
.
Data
.
PageData
this
.
data
=
res
.
Data
.
PageData
this
.
pageCount
=
res
.
Data
.
PageCount
this
.
pageCount
=
res
.
Data
.
PageCount
...
@@ -336,35 +225,29 @@
...
@@ -336,35 +225,29 @@
this
.
loading
=
false
this
.
loading
=
false
})
})
},
},
addAfterQuery
()
{
refreshPage
()
{
if
(
!
this
.
objOption
)
{
if
(
!
this
.
classOption
)
{
this
.
msg
=
{
this
.
msg
.
pageIndex
=
1
;
pageIndex
:
1
,
this
.
msg
.
ClassName
=
""
;
pageSize
:
12
,
this
.
msg
.
CourseName
=
""
;
rowsPerPage
:
12
,
this
.
msg
.
AssistName
=
""
;
TeacherName
:
""
,
this
.
msg
.
TeacherName
=
""
;
TeacherTel
:
""
,
AuditStatus
:
"-1"
,
IsShow
:
"-1"
}
}
}
this
.
getAssistant
()
this
.
queryClassPage
()
},
},
addObj
(
obj
)
{
EditClass
(
obj
)
{
if
(
obj
)
{
if
(
obj
)
{
this
.
obj
Option
=
obj
this
.
class
Option
=
obj
}
else
{
}
else
{
this
.
obj
Option
=
null
this
.
class
Option
=
null
}
}
this
.
persistent
=
true
this
.
isShowEditClassForm
=
true
},
},
showExamine
(
obj
)
{
showExamine
(
obj
)
{
this
.
objOption
=
obj
this
.
classOption
=
obj
;
this
.
persistentExamine
=
true
},
},
closeSaveForm
()
{
closeClassForm
()
{
this
.
persistent
=
false
this
.
isShowEditClassForm
=
false
this
.
persistentExamine
=
false
}
}
},
},
}
}
...
...
src/pages/school/manager.vue
View file @
32f66037
<
template
>
<
template
>
<div
class=
"page-body"
>
<div
class=
"page-body"
>
<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=
"resetSearch"
clearable
standout=
"bg-primary text-white"
v-model=
"msg.SName"
label=
"校区名称"
/>
<q-input
@
change=
"resetSearch"
clearable
standout=
"bg-primary text-white"
v-model=
"msg.SName"
label=
"校区名称"
/>
</div>
</div>
<div
class=
"col-3"
>
<div
class=
"col-3"
>
<q-select
@
input=
"resetSearch"
standout=
"bg-primary text-white"
v-model=
"StatusTemp"
:options=
"StatusOpts"
option-value=
"value"
option-label=
"label"
label=
"校区状态"
/>
<q-select
@
input=
"resetSearch"
standout=
"bg-primary text-white"
v-model=
"StatusTemp"
:options=
"StatusOpts"
</div
>
option-value=
"value"
option-label=
"label"
label=
"校区状态"
/
>
</div>
</div>
<div
class=
"page-option"
>
</div>
<!-- 原则上不能操作过三个按钮,建议不要使用查询按钮,增加用户操作次数 -->
<div
class=
"page-option"
>
<!--
<q-btn
color=
"primary"
outline
label=
"立即查询"
/>
-->
<!-- 原则上不能操作过三个按钮,建议不要使用查询按钮,增加用户操作次数 -->
<q-btn
color=
"accent"
class=
"q-mr-md"
icon=
"add"
label=
"新增校区"
@
click=
"initObj(null)"
/>
<!--
<q-btn
color=
"primary"
outline
label=
"立即查询"
/>
-->
<q-btn-dropdown
outline
color=
"dark"
label=
"更多"
>
<q-btn
color=
"accent"
class=
"q-mr-md"
icon=
"add"
label=
"新增校区"
@
click=
"initObj(null)"
/>
<q-list>
<q-btn-dropdown
outline
color=
"dark"
label=
"更多"
>
<q-item
clickable
v-close-popup
@
click=
"onItemClick"
>
<q-list>
<!--
<q-item-section
side
>
<q-item
clickable
v-close-popup
@
click=
"onItemClick"
>
<!--
<q-item-section
side
>
<q-icon
name=
"style"
/>
<q-icon
name=
"style"
/>
</q-item-section>
-->
</q-item-section>
-->
<q-item-section>
<q-item-section>
<q-item-label>
导出
</q-item-label>
<q-item-label>
导出
</q-item-label>
</q-item-section>
</q-item-section>
</q-item>
</q-item>
<q-item
clickable
v-close-popup
@
click=
"onItemClick"
>
<q-item
clickable
v-close-popup
@
click=
"onItemClick"
>
<q-item-section>
<q-item-section>
<q-item-label>
导入
</q-item-label>
<q-item-label>
导入
</q-item-label>
</q-item-section>
</q-item-section>
</q-item>
</q-item>
</q-list>
</q-list>
</q-btn-dropdown>
</q-btn-dropdown>
</div>
</div>
</div>
</div>
<div
class=
"page-content"
>
<div
class=
"page-content"
>
<q-table
:pagination=
"msg"
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
class=
"sticky-column-table"
separator=
"none"
title=
"校区信息"
:data=
"data"
:columns=
"columns"
row-key=
"name"
>
<q-table
:pagination=
"msg"
:loading=
"loading"
no-data-label=
"暂无相关数据"
flat
class=
"sticky-column-table"
<template
v-slot:body-cell-Status=
"props"
>
separator=
"none"
title=
"校区信息"
:data=
"data"
:columns=
"columns"
row-key=
"name"
>
<q-td
:props=
"props"
>
<template
v-slot:body-cell-Status=
"props"
>
<q-badge
:color=
"props.value==1?'negative':'primary'"
:label=
"props.value==1?'关闭':'正常'"
/>
<q-td
:props=
"props"
>
</q-td>
<q-badge
:color=
"props.value==1?'negative':'primary'"
:label=
"props.value==1?'关闭':'正常'"
/>
</
template
>
</q-td>
<
template
v-slot:body-cell-Remark=
"props"
>
</
template
>
<q-td
:props=
"props"
>
<
template
v-slot:body-cell-Remark=
"props"
>
<q-badge
color=
"grey-3 text-grey-10"
:label=
"props.value"
/>
<q-td
:props=
"props"
>
</q-td>
<q-badge
color=
"grey-3 text-grey-10"
:label=
"props.value"
/>
</
template
>
</q-td>
<
template
v-slot:body-cell-optioned=
"props"
>
</
template
>
<q-td
:props=
"props"
>
<
template
v-slot:body-cell-optioned=
"props"
>
<q-btn
flat
size=
"xs"
icon=
"edit"
color=
"accent"
style=
"font-family:perfectFont"
label=
"编辑"
@
click=
"initObj(props.value)"
/>
<q-td
:props=
"props"
>
</q-td>
<q-btn
flat
size=
"xs"
icon=
"edit"
color=
"accent"
style=
"font-family:perfectFont"
label=
"编辑"
</
template
>
@
click=
"initObj(props.value)"
/>
<
template
v-slot:bottom
>
</q-td>
<q-pagination
class=
"full-width justify-end"
v-model=
"msg.pageIndex"
color=
"primary"
:max=
"pageCount"
:input=
"true"
@
input=
"changePage"
/>
</
template
>
</
template
>
<
template
v-slot:bottom
>
</q-table>
<q-pagination
class=
"full-width justify-end"
v-model=
"msg.pageIndex"
color=
"primary"
:max=
"pageCount"
<q-dialog
v-model=
"persistent"
content-class=
"bg-grey-1"
persistent
transition-show=
"scale"
transition-hide=
"scale"
>
:input=
"true"
@
input=
"changePage"
/>
<q-card
style=
"width: 800px;max-width:900px;"
>
</
template
>
<q-card-section>
</q-table>
<div
class=
"text-h6"
>
{{objOption.SId==0?'新增校区':'修改校区'}}
</div>
<q-dialog
v-model=
"persistent"
content-class=
"bg-grey-1"
persistent
transition-show=
"scale"
</q-card-section>
transition-hide=
"scale"
>
<div
class=
"text-caption q-mb-lg q-px-md text-grey-6"
>
基本资料
</div>
<q-card
style=
"width: 800px;max-width:900px;"
>
<q-card-section
class=
"q-pt-none"
>
<q-card-section>
<div
class=
"row wrap"
>
<div
class=
"text-h6"
>
{{objOption.SId==0?'新增校区':'修改校区'}}
</div>
<q-input
filled
stack-label
maxlength=
"20"
:dense=
"false"
v-model=
"objOption.SName"
ref=
"SName"
class=
"col-6 q-pr-lg q-pb-lg"
label=
"校区名称"
:rules=
"[val => !!val || '请填写校区名称']"
/>
</q-card-section>
<q-input
filled
stack-label
maxlength=
"20"
:dense=
"false"
v-model=
"objOption.SAddress"
ref=
"SAddress"
class=
"col-6 q-pb-lg"
label=
"校区地址"
:rules=
"[val => !!val || '请填写校区地址']"
/>
<div
class=
"text-caption q-mb-lg q-px-md text-grey-6"
>
基本资料
</div>
<q-input
filled
stack-label
maxlength=
"20"
:dense=
"false"
v-model=
"objOption.SLinkMan"
ref=
"SLinkMan"
class=
"col-6 q-pr-lg q-pb-lg "
label=
"校区联系人"
:rules=
"[val => !!val || '请填写校区联系人']"
/>
<q-card-section
class=
"q-pt-none"
>
<q-input
filled
stack-label
maxlength=
"20"
:dense=
"false"
v-model=
"objOption.SLinkTel"
ref=
"SLinkTel"
class=
"col-6 q-pb-lg"
label=
"校区联系电话"
:rules=
"[val => !!val || '请填写校区联系电话']"
/>
<div
class=
"row wrap"
>
<q-input
filled
stack-label
maxlength=
"20"
:dense=
"false"
v-model=
"objOption.Remark"
class=
"col-6 q-pb-lg q-pr-lg"
label=
"校区备注"
/>
<q-input
filled
stack-label
maxlength=
"20"
:dense=
"false"
v-model=
"objOption.SName"
ref=
"SName"
<div
class=
"col-6"
>
class=
"col-6 q-pr-lg q-pb-lg"
label=
"校区名称"
:rules=
"[val => !!val || '请填写校区名称']"
/>
<q-toggle
size=
"md"
label=
"校区状态"
color=
"primary"
:false-value=
"1"
:true-value=
"0"
v-model=
"objOption.Status"
/>
<q-input
filled
stack-label
maxlength=
"20"
:dense=
"false"
v-model=
"objOption.SAddress"
ref=
"SAddress"
<div
class=
"text-grey-6 text-caption"
>
注意:关闭校区后,所有下属教师、学生将无法继续使用系统
</div>
class=
"col-6 q-pb-lg"
label=
"校区地址"
:rules=
"[val => !!val || '请填写校区地址']"
/>
</div>
<q-input
filled
stack-label
maxlength=
"20"
:dense=
"false"
v-model=
"objOption.SLinkMan"
ref=
"SLinkMan"
</div>
class=
"col-6 q-pr-lg q-pb-lg "
label=
"校区联系人"
:rules=
"[val => !!val || '请填写校区联系人']"
/>
</q-card-section>
<q-input
filled
stack-label
maxlength=
"20"
:dense=
"false"
v-model=
"objOption.SLinkTel"
ref=
"SLinkTel"
<q-separator
/>
class=
"col-6 q-pb-lg"
label=
"校区联系电话"
:rules=
"[val => !!val || '请填写校区联系电话']"
/>
<q-card-actions
align=
"right"
class=
"bg-white"
>
<q-input
filled
stack-label
maxlength=
"20"
:dense=
"false"
v-model=
"objOption.Remark"
<q-btn
label=
"取消"
color=
"dark"
style=
"font-weight:400 !important"
@
click=
"closeSaveForm"
/>
class=
"col-6 q-pb-lg q-pr-lg"
label=
"校区备注"
/>
<q-btn
label=
"立即提交"
color=
"accent q-px-md"
style=
"font-weight:400 !important"
:loading=
"saveLoading"
@
click=
"saveSchool"
/>
<div
class=
"col-6"
>
</q-card-actions>
<q-toggle
size=
"md"
label=
"校区状态"
color=
"primary"
:false-value=
"1"
:true-value=
"0"
</q-card>
v-model=
"objOption.Status"
/>
</q-dialog>
<div
class=
"text-grey-6 text-caption"
>
注意:关闭校区后,所有下属教师、学生将无法继续使用系统
</div>
</div>
</div>
</q-card-section>
<q-separator
/>
<q-card-actions
align=
"right"
class=
"bg-white"
>
<q-btn
label=
"取消"
color=
"dark"
style=
"font-weight:400 !important"
@
click=
"closeSaveForm"
/>
<q-btn
label=
"立即提交"
color=
"accent q-px-md"
style=
"font-weight:400 !important"
:loading=
"saveLoading"
@
click=
"saveSchool"
/>
</q-card-actions>
</q-card>
</q-dialog>
</div>
</div>
</div>
</div>
</template>
</template>
<
script
>
<
script
>
import
{
import
{
getSchoolPage
,
getSchoolPage
,
saveSchool
saveSchool
}
from
'../../api/school/index'
}
from
'../../api/school/index'
export
default
{
export
default
{
meta
:
{
meta
:
{
title
:
"校区管理"
title
:
"校区管理"
},
},
data
()
{
data
()
{
return
{
return
{
currentUrl
:
""
,
currentUrl
:
""
,
columns
:
[{
columns
:
[{
name
:
'SName'
,
name
:
'SName'
,
required
:
true
,
required
:
true
,
label
:
'学校名称'
,
label
:
'学校名称'
,
align
:
'left'
,
align
:
'left'
,
field
:
row
=>
row
.
SName
,
field
:
row
=>
row
.
SName
,
format
:
val
=>
`
${
val
}
`
,
format
:
val
=>
`
${
val
}
`
,
sortable
:
true
sortable
:
true
},
},
{
{
name
:
'GroupName'
,
name
:
'GroupName'
,
label
:
'所属机构'
,
label
:
'所属机构'
,
field
:
'GroupName'
,
field
:
'GroupName'
,
align
:
'left'
,
align
:
'left'
,
sortable
:
true
sortable
:
true
},
},
{
{
name
:
'SLinkMan'
,
name
:
'SLinkMan'
,
label
:
'负责人'
,
label
:
'负责人'
,
field
:
'SLinkMan'
,
field
:
'SLinkMan'
,
align
:
'left'
,
align
:
'left'
,
sortable
:
true
sortable
:
true
},
},
{
{
name
:
'SLinkTel'
,
name
:
'SLinkTel'
,
label
:
'负责人电话'
,
label
:
'负责人电话'
,
align
:
'left'
,
align
:
'left'
,
field
:
'SLinkTel'
field
:
'SLinkTel'
},
},
{
{
name
:
'Status'
,
name
:
'Status'
,
label
:
'状态'
,
label
:
'状态'
,
align
:
'left'
,
align
:
'left'
,
field
:
'Status'
field
:
'Status'
},
},
{
{
name
:
'CreateByName'
,
name
:
'CreateByName'
,
label
:
'创建人'
,
label
:
'创建人'
,
align
:
'left'
,
align
:
'left'
,
field
:
'CreateByName'
field
:
'CreateByName'
},
},
{
{
name
:
'CreateTimeStr'
,
name
:
'CreateTimeStr'
,
label
:
'建立时间'
,
label
:
'建立时间'
,
align
:
'left'
,
align
:
'left'
,
field
:
'CreateTimeStr'
field
:
'CreateTimeStr'
},
},
{
{
name
:
'Remark'
,
name
:
'Remark'
,
label
:
'备注'
,
label
:
'备注'
,
align
:
'left'
,
align
:
'left'
,
field
:
'Remark'
field
:
'Remark'
},
},
{
{
name
:
'optioned'
,
name
:
'optioned'
,
label
:
'操作'
,
label
:
'操作'
,
field
:
'SId'
field
:
'SId'
},
},
],
],
data
:
[],
data
:
[],
loading
:
true
,
loading
:
true
,
StatusOpts
:
[{
StatusOpts
:
[{
label
:
'全部'
,
label
:
'全部'
,
value
:
'-1'
value
:
'-1'
},
},
{
{
label
:
'开启'
,
label
:
'开启'
,
value
:
'0'
value
:
'0'
},
},
{
{
label
:
'关闭'
,
label
:
'关闭'
,
value
:
'1'
value
:
'1'
}
}
],
],
msg
:
{
msg
:
{
pageIndex
:
1
,
pageIndex
:
1
,
pageSize
:
13
,
pageSize
:
12
,
rowsPerPage
:
13
,
rowsPerPage
:
12
,
SName
:
""
,
SName
:
""
,
Status
:
'-1'
Status
:
'-1'
},
},
StatusTemp
:
{},
StatusTemp
:
{},
pageCount
:
0
,
pageCount
:
0
,
persistent
:
false
,
persistent
:
false
,
objOption
:
{},
objOption
:
{},
saveLoading
:
false
saveLoading
:
false
}
}
},
},
created
()
{
created
()
{
this
.
StatusTemp
=
this
.
StatusOpts
[
0
]
this
.
StatusTemp
=
this
.
StatusOpts
[
0
]
},
},
mounted
()
{
mounted
()
{
this
.
currentUrl
=
this
.
$route
.
path
this
.
currentUrl
=
this
.
$route
.
path
this
.
getSchool
()
this
.
getSchool
()
},
},
methods
:
{
methods
:
{
onItemClick
()
{
onItemClick
()
{
},
},
initObj
(
id
)
{
initObj
(
id
)
{
if
(
id
)
{
if
(
id
)
{
let
obj
=
this
.
data
.
filter
(
x
=>
{
let
obj
=
this
.
data
.
filter
(
x
=>
{
if
(
x
.
SId
==
id
)
{
if
(
x
.
SId
==
id
)
{
return
x
return
x
}
return
false
})
this
.
objOption
=
obj
[
0
]
}
else
{
this
.
objOption
=
{
SId
:
0
,
SName
:
""
,
SAddress
:
""
,
SLinkMan
:
""
,
SLinkTel
:
""
,
SDomain
:
""
,
SLogo
:
""
,
Remark
:
""
,
Status
:
'0'
}
}
}
this
.
persistent
=
true
return
false
},
})
resetSearch
()
{
this
.
objOption
=
obj
[
0
]
this
.
pageIndex
=
1
}
else
{
this
.
loading
=
true
this
.
objOption
=
{
this
.
msg
.
Status
=
this
.
StatusTemp
?
this
.
StatusTemp
.
value
:
'-1'
SId
:
0
,
this
.
getSchool
()
SName
:
""
,
},
SAddress
:
""
,
changePage
(
val
)
{
SLinkMan
:
""
,
this
.
msg
.
Status
=
this
.
StatusTemp
?
this
.
StatusTemp
.
value
:
'-1'
SLinkTel
:
""
,
this
.
msg
.
pageIndex
=
val
SDomain
:
""
,
this
.
loading
=
true
SLogo
:
""
,
this
.
getSchool
()
Remark
:
""
,
},
Status
:
'0'
getSchool
()
{
}
getSchoolPage
(
this
.
msg
).
then
(
res
=>
{
}
this
.
loading
=
false
this
.
persistent
=
true
this
.
data
=
res
.
Data
.
PageData
},
this
.
pageCount
=
res
.
Data
.
PageCount
resetSearch
()
{
}).
catch
(()
=>
{
this
.
msg
.
pageIndex
=
1
this
.
loading
=
false
this
.
loading
=
true
this
.
msg
.
Status
=
this
.
StatusTemp
?
this
.
StatusTemp
.
value
:
'-1'
this
.
getSchool
()
},
changePage
(
val
)
{
this
.
msg
.
Status
=
this
.
StatusTemp
?
this
.
StatusTemp
.
value
:
'-1'
this
.
msg
.
pageIndex
=
val
this
.
loading
=
true
this
.
getSchool
()
},
getSchool
()
{
getSchoolPage
(
this
.
msg
).
then
(
res
=>
{
this
.
loading
=
false
this
.
data
=
res
.
Data
.
PageData
this
.
pageCount
=
res
.
Data
.
PageCount
}).
catch
(()
=>
{
this
.
loading
=
false
})
},
closeSaveForm
()
{
this
.
persistent
=
false
},
saveSchool
()
{
this
.
saveLoading
=
true
this
.
$refs
.
SName
.
validate
()
this
.
$refs
.
SAddress
.
validate
()
this
.
$refs
.
SLinkMan
.
validate
()
this
.
$refs
.
SLinkTel
.
validate
()
if
(
!
this
.
$refs
.
SName
.
hasError
&&
!
this
.
$refs
.
SAddress
.
hasError
&&
!
this
.
$refs
.
SLinkMan
.
hasError
&&
!
this
.
$refs
.
SLinkTel
.
hasError
)
{
saveSchool
(
this
.
objOption
).
then
(
res
=>
{
this
.
saveLoading
=
false
this
.
$q
.
notify
({
icon
:
'iconfont icon-chenggong'
,
color
:
'accent'
,
timeout
:
2000
,
message
:
'数据保存成功!'
,
position
:
'top'
})
})
},
if
(
this
.
objOption
.
SId
==
0
)
{
closeSaveForm
()
{
this
.
msg
.
pageIndex
=
1
this
.
persistent
=
false
},
saveSchool
()
{
this
.
saveLoading
=
true
this
.
$refs
.
SName
.
validate
()
this
.
$refs
.
SAddress
.
validate
()
this
.
$refs
.
SLinkMan
.
validate
()
this
.
$refs
.
SLinkTel
.
validate
()
if
(
!
this
.
$refs
.
SName
.
hasError
&&
!
this
.
$refs
.
SAddress
.
hasError
&&
!
this
.
$refs
.
SLinkMan
.
hasError
&&
!
this
.
$refs
.
SLinkTel
.
hasError
)
{
saveSchool
(
this
.
objOption
).
then
(
res
=>
{
this
.
saveLoading
=
false
this
.
$q
.
notify
({
icon
:
'iconfont icon-chenggong'
,
color
:
'accent'
,
timeout
:
2000
,
message
:
'数据保存成功!'
,
position
:
'top'
})
if
(
this
.
objOption
.
SId
==
0
)
{
this
.
msg
.
pageIndex
=
1
}
this
.
getSchool
()
this
.
closeSaveForm
()
}).
catch
(()
=>
{
this
.
saveLoading
=
false
})
}
else
{
this
.
saveLoading
=
false
}
}
this
.
getSchool
()
this
.
closeSaveForm
()
}).
catch
(()
=>
{
this
.
saveLoading
=
false
})
}
else
{
this
.
saveLoading
=
false
}
}
}
},
},
}
}
</
script
>
</
script
>
<
style
lang=
"sass"
>
<
style
lang=
"sass"
>
@import
url('~assets/css/table.sass');
@import
url('~assets/css/table.sass');
</
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