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
def45b0b
Commit
def45b0b
authored
Nov 08, 2023
by
zhaopanyu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
zpy 11/8
parent
46e7b51b
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
943 additions
and
281 deletions
+943
-281
ruoyi-ui/src/api/smartSchool/awardsDisciplinary/studentViolation/disciplinaryManagemen.js
+7
-0
ruoyi-ui/src/views/smartSchool/awardsDisciplinary/studentViolation/ViolationDiscipline/index.vue
+419
-115
ruoyi-ui/src/views/smartSchool/awardsDisciplinary/studentViolation/disciplinaryManagemen/index.vue
+115
-28
ruoyi-ui/src/views/smartSchool/awardsDisciplinary/studentViolation/violationDisciplineentry/index.vue
+400
-137
ruoyi-ui/src/views/whitePage.vue
+2
-1
No files found.
ruoyi-ui/src/api/smartSchool/awardsDisciplinary/studentViolation/disciplinaryManagemen.js
View file @
def45b0b
...
...
@@ -86,3 +86,10 @@ export function listDisciplinetg(query) {
params
:
query
,
});
}
//获取教师下拉框
export
function
getTeacher
()
{
return
request
({
url
:
"/schoolLabCompetition/getTeacher"
,
method
:
"get"
,
});
}
ruoyi-ui/src/views/smartSchool/awardsDisciplinary/studentViolation/ViolationDiscipline/index.vue
View file @
def45b0b
...
...
@@ -2,89 +2,125 @@
<div
class=
"app-container"
>
<el-form
:model=
"queryForm"
ref=
"queryForm"
size=
"small"
:inline=
"true"
label-width=
"68px"
>
<el-form-item
label=
"学年"
>
<el-input
v-model=
"
form.className
"
placeholder=
"请输入"
clearable
></el-input>
<el-input
v-model=
"
queryForm.schoolYear
"
placeholder=
"请输入"
clearable
></el-input>
</el-form-item>
<el-form-item
label=
"学期"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
</el-form-item>
<el-form-item
label=
"届别"
prop=
"level"
>
<el-select
v-model=
"queryForm.sub"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.lab_sub"
:key=
"dict.value"
:label=
"dict.label"
<el-select
v-model=
"queryForm.semester"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.semester"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"年级"
prop=
"level"
>
<el-select
v-model=
"queryForm.sub"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.lab_sub"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
<el-form-item
label=
"届别"
prop=
"gradeYear"
>
<el-input
v-model=
"queryForm.gradeYear"
placeholder=
"请输入"
clearable
></el-input>
</el-form-item>
<el-form-item
label=
"年级"
prop=
"gradeId"
>
<el-select
v-model=
"queryForm.gradeId"
placeholder=
"请选择"
clearable
:style=
"
{ width: '100%' }"
@change="handleChange">
<el-option
v-for=
"(item, index) in gradeList"
:key=
"index"
:label=
"item.gradeName"
:value=
"item.gradeId"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"班级"
prop=
"
level
"
>
<el-select
v-model=
"queryForm.
sub"
placeholder=
"请选择"
clearable
style=
"width: 100%;
"
>
<el-option
v-for=
"
dict in dict.type.lab_sub"
:key=
"dict.value"
:label=
"dict.label
"
:value=
"
dict.value"
/
>
<el-form-item
label=
"班级"
prop=
"
classId
"
>
<el-select
v-model=
"queryForm.
classId"
placeholder=
"请选择级部"
clearable
:style=
"
{ width: '100%' }
">
<el-option
v-for=
"
(item, index) in classList"
:key=
"index"
:label=
"item.classValue
"
:value=
"
item.classId"
></el-option
>
</el-select>
</el-form-item>
<el-form-item
label=
"班级类型"
>
<el-select
v-model=
"queryForm.
gradeId"
placeholder=
"请选择级部"
clearable
>
<el-option
v-for=
"
(item, index) in gradeLists"
:key=
"index"
:label=
"item.gradeName
"
:value=
"
item.id"
></el-option
>
<el-select
v-model=
"queryForm.
classType"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"
dict in dict.type.grade_type"
:key=
"dict.value"
:label=
"dict.label
"
:value=
"
dict.value"
/
>
</el-select>
</el-form-item>
<el-form-item
label=
"姓名"
>
<el-select
v-model=
"queryForm.gradeId"
placeholder=
"请选择级部"
clearable
>
<el-option
v-for=
"(item, index) in gradeLists"
:key=
"index"
:label=
"item.gradeName"
:value=
"item.id"
></el-option>
</el-select>
<el-input
v-model=
"queryForm.name"
placeholder=
"请输入"
clearable
></el-input>
</el-form-item>
<el-form-item
label=
"性别"
>
<el-select
v-model=
"queryForm.
gradeId"
placeholder=
"请选择级部"
clearable
>
<el-option
v-for=
"
(item, index) in gradeLists"
:key=
"index"
:label=
"item.gradeName
"
:value=
"
item.id"
></el-option
>
<el-select
v-model=
"queryForm.
sex"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"
dict in dict.type.sys_user_sex"
:key=
"dict.value"
:label=
"dict.label
"
:value=
"
dict.value"
/
>
</el-select>
</el-form-item>
<el-form-item
label=
"身份证号"
>
<el-input
v-model=
"
form.className
"
placeholder=
"请输入"
clearable
></el-input>
<el-input
v-model=
"
queryForm.idCard
"
placeholder=
"请输入"
clearable
></el-input>
</el-form-item>
<el-form-item
label=
"班主任"
>
<el-input
v-model=
"
form.className
"
placeholder=
"请输入"
clearable
></el-input>
<el-input
v-model=
"
queryForm.classTeacher
"
placeholder=
"请输入"
clearable
></el-input>
</el-form-item>
<el-form-item
label=
"违纪类别"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-select
v-model=
"queryForm.violateType"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.violate_type"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"违纪次数"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-select
v-model=
"queryForm.violateNum"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.violate_num"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"处分结果"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-select
v-model=
"queryForm.punishResult"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.punish_result"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"处分时间"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-date-picker
v-model=
"queryForm.punishTime"
type=
"date"
value-format=
"yyyy-MM-dd"
placeholder=
"请选择"
clearable
>
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button
type=
"primary"
icon=
"el-icon-search"
size=
"mini"
@
click=
"getList"
>
搜索
</el-button>
<el-button
icon=
"el-icon-refresh"
size=
"mini"
@
click=
"resetQuery"
>
重置
</el-button>
</el-form-item>
<el-row
:gutter=
"10"
class=
"mb8"
>
<el-button
type=
"primary"
icon=
"el-icon-plus"
size=
"mini"
@
click=
"handleAdd"
>
新增
</el-button>
</el-row>
</el-form>
<el-table
:data=
"tableData"
:default-sort=
"
{ prop: 'time', order: 'ascending' }" border style="width: 100%">
<el-table-column
align=
"center"
type=
"index"
label=
"序号"
width=
"55"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"学年"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"学期"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"届别"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"年级"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"班级"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"班级类型"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"姓名"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"性别"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"身份证号"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"班主任"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"级部主任"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"违纪类别"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"违纪次数"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"处分结果"
/>
<el-table-column
align=
"center"
prop=
"time"
sortable
label=
"处分时间"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"备注"
/>
<el-table-column
align=
"center"
fixed=
"right"
label=
"操作"
width=
"150"
>
<el-table-column
align=
"center"
prop=
"schoolYear"
sortable
label=
"学年"
/>
<el-table-column
align=
"center"
prop=
"semester"
sortable
label=
"学期"
>
<template
slot-scope=
"
{ row }">
<div>
{{
selectDictLabel
(
dict
.
type
.
semester
,
row
.
semester
)
}}
</div>
</
template
>
</el-table-column>
<el-table-column
align=
"center"
prop=
"gradeYear"
sortable
label=
"届别"
/>
<el-table-column
align=
"center"
prop=
"gradeName"
sortable
label=
"年级"
/>
<el-table-column
align=
"center"
prop=
"className"
sortable
label=
"班级"
/>
<el-table-column
align=
"center"
prop=
"classType"
sortable
label=
"班级类型"
width=
"100"
>
<
template
slot-scope=
"{ row }"
>
<div>
{{
selectDictLabel
(
dict
.
type
.
grade_type
,
row
.
classType
)
}}
</div>
</
template
>
</el-table-column>
<el-table-column
align=
"center"
prop=
"name"
sortable
label=
"姓名"
/>
<el-table-column
align=
"center"
prop=
"sex"
sortable
label=
"性别"
>
<
template
slot-scope=
"{ row }"
>
<div>
{{
selectDictLabel
(
dict
.
type
.
sys_user_sex
,
row
.
sex
)
}}
</div>
</
template
>
</el-table-column>
<el-table-column
align=
"center"
prop=
"idCard"
sortable
label=
"身份证号"
width=
"180"
/>
<el-table-column
align=
"center"
prop=
"classTeacher"
sortable
label=
"班主任"
width=
"100"
/>
<el-table-column
align=
"center"
prop=
"gradeDirector"
sortable
label=
"级部主任"
width=
"100"
/>
<el-table-column
align=
"center"
prop=
"violateType"
sortable
label=
"违纪类别"
width=
"100"
>
<
template
slot-scope=
"{ row }"
>
<div>
{{
selectDictLabel
(
dict
.
type
.
violate_type
,
row
.
violateType
)
}}
</div>
</
template
>
</el-table-column>
<el-table-column
align=
"center"
prop=
"violateNum"
sortable
label=
"违纪次数"
width=
"100"
>
<
template
slot-scope=
"{ row }"
>
<div>
{{
selectDictLabel
(
dict
.
type
.
violate_num
,
row
.
violateNum
)
}}
</div>
</
template
>
</el-table-column>
<el-table-column
align=
"center"
prop=
"punishResult"
sortable
label=
"处分结果"
width=
"100"
>
<
template
slot-scope=
"{ row }"
>
<div>
{{
selectDictLabel
(
dict
.
type
.
punish_result
,
row
.
punishResult
)
}}
</div>
</
template
>
</el-table-column>
<el-table-column
align=
"center"
prop=
"punishTime"
sortable
label=
"处分时间"
width=
"100"
/>
<el-table-column
align=
"center"
prop=
"remark"
sortable
label=
"备注"
/>
<el-table-column
align=
"center"
fixed=
"right"
label=
"操作"
width=
"200"
>
<
template
slot-scope=
"scope"
>
<el-button
@
click=
"handleLook(scope.row)"
type=
"text"
size=
"small"
>
查看
</el-button>
</
template
>
...
...
@@ -93,23 +129,26 @@
<pagination
v-show=
"total > 0"
:total=
"total"
:page
.
sync=
"queryForm.pageNum"
:limit
.
sync=
"queryForm.pageSize"
@
pagination=
"getList"
/>
<!-- 查看
-->
<!-- 查看-->
<el-dialog
title=
"详细信息"
:visible
.
sync=
"dialogTableVisible"
width=
"1100px"
>
<el-form
:model=
"form"
ref=
"form"
size=
"small"
label-width=
"120px"
>
<el-form
:model=
"form"
ref=
"form"
size=
"small"
label-width=
"120px"
:disabled=
"isEdit"
:rules=
"rules"
>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"学年"
>
<el-input
v-model=
"form.
className
"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"学年"
prop=
"schoolYear"
>
<el-input
v-model=
"form.
schoolYear
"
placeholder=
"请输入"
clearable
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"学期"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"学期"
prop=
"semester"
>
<el-select
v-model=
"form.semester"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.semester"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"届别"
>
<el-input
v-model=
"form.
className
"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"届别"
prop=
"gradeYear"
>
<el-input
v-model=
"form.
gradeYear
"
placeholder=
"请输入"
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
...
...
@@ -118,84 +157,115 @@
</el-row>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"年级"
prop=
"startTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"年级"
prop=
"gradeId"
>
<el-select
v-model=
"form.gradeId"
placeholder=
"请选择"
clearable
:style=
"{ width: '100%' }"
@
change=
"getClasslist(form.gradeId)"
>
<el-option
v-for=
"(item, index) in gradeList"
:key=
"index"
:label=
"item.gradeName"
:value=
"item.gradeId"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"班级"
prop=
"endTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"班级"
prop=
"className"
>
<el-select
v-model=
"form.className"
placeholder=
"请选择级部"
clearable
:style=
"{ width: '100%' }"
>
<el-option
v-for=
"(item, index) in classList"
:key=
"index"
:label=
"item.classValue"
:value=
"item.classId"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"班级类型"
prop=
"endTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"班级类型"
prop=
"classType"
>
<el-select
v-model=
"form.classType"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.grade_type"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"姓名"
prop=
"
startTi
me"
>
<el-input
v-model=
"form.
classN
ame"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"姓名"
prop=
"
na
me"
>
<el-input
v-model=
"form.
n
ame"
placeholder=
"请输入"
clearable
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"性别"
prop=
"endTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"身份证号"
prop=
"idCard"
>
<el-input
v-model=
"form.idCard"
@
blur=
"handleIdCardBlur"
maxlength=
"18"
placeholder=
"请输入"
clearable
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"身份证号"
prop=
"endTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"性别"
prop=
"sex"
>
<el-select
v-model=
"form.sex"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.sys_user_sex"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"班主任"
prop=
"startTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"班主任"
prop=
"classTeacherId"
>
<el-select
v-model=
"form.classTeacherId"
placeholder=
"请选择"
:style=
"{ width: '100%' }"
>
<el-option
v-for=
"item in deptOptions"
:key=
"item.userId"
:label=
"item.userName"
:value=
"item.userId"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"级部主任"
prop=
"endTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"级部主任"
prop=
"gradeDirectorId"
>
<el-select
v-model=
"form.gradeDirectorId"
placeholder=
"请选择"
:style=
"{ width: '100%' }"
>
<el-option
v-for=
"item in deptOptions"
:key=
"item.userId"
:label=
"item.userName"
:value=
"item.userId"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"违纪类别"
prop=
"endTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"违纪类别"
prop=
"violateType"
>
<el-select
v-model=
"form.violateType"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.violate_type"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"违纪次数"
prop=
"startTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"违纪次数"
prop=
"violateNum"
>
<el-select
v-model=
"form.violateNum"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.violate_num"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"处分结果"
prop=
"endTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"处分结果"
prop=
"punishResult"
>
<el-select
v-model=
"form.punishResult"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.punish_result"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"处分时间"
prop=
"endTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"处分时间"
prop=
"punishTime"
>
<el-date-picker
v-model=
"form.punishTime"
type=
"date"
value-format=
"yyyy-MM-dd"
placeholder=
"请选择"
clearable
:style=
"{ width: '100%' }"
>
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"24"
>
<el-form-item
label=
"备注"
prop=
"endTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"备注"
prop=
"remark"
>
<el-input
v-model=
"form.remark"
placeholder=
"请输入"
clearable
type=
"textarea"
:rows=
"2"
></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
style=
"text-align: center;"
>
<el-button
type=
"primary"
@
click=
"submitForm"
>
确 定
</el-button>
<el-button
@
click=
"cancelDialog"
>
取 消
</el-button>
<el-button
@
click=
"cancelDialog"
>
取 消
</el-button>
</div>
</el-dialog>
...
...
@@ -204,29 +274,48 @@
<
script
>
// import {
// getList,
// getSemester,
// getTeacherxq,
// getGradelist
// } from '@/api/smartSchool/laboratoryManagement/leadlaboratoryCompletion'
import
{
listDiscipline
,
// 查看学生违纪列表(管理员)
listDisciplinegr
,
//查看学生违纪列表(个人)
getDiscipline
,
//查看详情
addDiscipline
,
// 新增学生违纪(管理员)
addDisciplinegr
,
// 新增学生违纪(个人)
updateDiscipline
,
// 编辑学生违纪
delDiscipline
,
// 删除学生违纪
subApply
,
//提交
getGrade
,
// 获取最新三个年级
getClassList
,
// 根据年级获取班级,
listDisciplinetg
,
//查看已通过
getTeacher
,
//获取教师
}
from
'@/api/smartSchool/awardsDisciplinary/studentViolation/disciplinaryManagemen'
import
{
checkIdcard
}
from
'@/utils/utilLibrary/validate'
export
default
{
name
:
'index'
,
dicts
:
[
'
experiment_classify'
,
'lab_sub
'
],
dicts
:
[
'
violate_type'
,
'violate_num'
,
'punish_result'
,
'sys_user_sex'
,
'grade_type'
,
'semester
'
],
data
()
{
return
{
queryForm
:
{
pageNum
:
1
,
pageSize
:
10
,
schoolYear
:
""
,
semester
:
""
,
gradeYear
:
""
,
gradeId
:
""
,
classId
:
""
,
classType
:
""
,
name
:
""
,
sex
:
""
,
idCard
:
""
,
classTeacher
:
""
,
violateType
:
""
,
violateNum
:
""
,
punishResult
:
""
,
punishTime
:
""
,
},
isEdit
:
false
,
gradeLists
:
[],
//表格数据
tableData
:
[
{
grade
:
'111'
,
time
:
'2023-12-12'
},
{
grade
:
'111'
,
time
:
'2023-12-13'
},
{
grade
:
'111'
,
time
:
'2023-12-14'
},
{
grade
:
'111'
,
time
:
'2023-12-15'
},
],
//查看弹窗表格
...
...
@@ -234,38 +323,198 @@ export default {
form
:
{
pageNum
:
1
,
pageSize
:
10
,
schoolYear
:
""
,
semester
:
""
,
gradeYear
:
""
,
gradeId
:
""
,
classId
:
""
,
classType
:
""
,
name
:
""
,
sex
:
""
,
idCard
:
""
,
classTeacherId
:
""
,
gradeDirectorId
:
""
,
violateType
:
""
,
violateNum
:
""
,
punishResult
:
""
,
punishTime
:
""
,
remark
:
""
,
},
//弹窗
dialogTableVisible
:
false
,
total
:
0
,
gradeList
:
[],
classList
:
[],
deptOptions
:
[],
rules
:
{
schoolYear
:
[
{
required
:
true
,
message
:
"学年不能为空"
,
trigger
:
"change"
}
],
semester
:
[
{
required
:
true
,
message
:
"学期不能为空"
,
trigger
:
"change"
}
],
gradeYear
:
[
{
required
:
true
,
message
:
"届别不能为空"
,
trigger
:
"change"
}
],
sex
:
[
{
required
:
true
,
message
:
"性别不能为空"
,
trigger
:
"change"
}
],
gradeId
:
[
{
required
:
true
,
message
:
"年级不能为空"
,
trigger
:
"change"
}
],
classId
:
[
{
required
:
true
,
message
:
"班级不能为空"
,
trigger
:
"change"
}
],
name
:
[
{
required
:
true
,
message
:
"姓名不能为空"
,
trigger
:
"change"
}
],
idCard
:
[{
required
:
true
,
validator
:
checkIdcard
,
trigger
:
'blur'
}],
classTeacherId
:
[
{
required
:
true
,
message
:
"班主任不能为空"
,
trigger
:
"change"
}
],
gradeDirectorId
:
[
{
required
:
true
,
message
:
"级部主任不能为空"
,
trigger
:
"change"
}
],
violateNum
:
[
{
required
:
true
,
message
:
"违纪次数不能为空"
,
trigger
:
"change"
}
],
violateType
:
[
{
required
:
true
,
message
:
"违纪类别不能为空"
,
trigger
:
"change"
}
],
punishResult
:
[
{
required
:
true
,
message
:
"处分结果不能为空"
,
trigger
:
"change"
}
],
punishTime
:
[
{
required
:
true
,
message
:
"处分时间不能为空"
,
trigger
:
"change"
}
],
},
}
},
created
()
{
this
.
getList
();
this
.
getGradelist
();
this
.
getTeacher
();
},
methods
:
{
handleAdd
()
{
this
.
reset
();
this
.
isEdit
=
false
;
this
.
dialogTableVisible
=
true
;
},
handleEdit
()
{
this
.
dialogTableVisible
=
true
;
handleIdCardBlur
()
{
this
.
form
.
sex
=
this
.
getGenderFromIdCard
(
this
.
form
.
idCard
);
// 调用获取性别的方法
},
getGenderFromIdCard
(
idCard
)
{
const
lastDigit
=
parseInt
(
idCard
.
charAt
(
idCard
.
length
-
2
));
// 获取倒数第二位数字
return
lastDigit
%
2
===
0
?
'女'
:
'男'
;
// 奇数表示男性,偶数表示女性
},
//修改
handleEdit
(
row
)
{
console
.
log
(
row
);
const
id
=
row
.
id
||
this
.
ids
;
getDiscipline
(
id
).
then
((
response
)
=>
{
this
.
form
=
response
.
data
;
this
.
isEdit
=
false
;
this
.
dialogTableVisible
=
true
;
}).
catch
(
error
=>
{
this
.
$modal
.
closeLoading
();
})
},
//查看
handleLook
(
row
)
{
console
.
log
(
row
);
const
id
=
row
.
id
||
this
.
ids
;
getDiscipline
(
id
).
then
((
response
)
=>
{
this
.
form
=
response
.
data
;
this
.
isEdit
=
true
;
this
.
dialogTableVisible
=
true
;
``
}).
catch
(
error
=>
{
this
.
$modal
.
closeLoading
();
})
},
cancelDialog
()
{
this
.
dialogTableVisible
=
false
;
},
reset
()
{
this
.
form
=
{
pageNum
:
1
,
pageSize
:
10
,
schoolYear
:
""
,
semester
:
""
,
gradeYear
:
""
,
gradeId
:
""
,
classId
:
""
,
classType
:
""
,
name
:
""
,
sex
:
""
,
idCard
:
""
,
classTeacher
:
""
,
gradeDirector
:
""
,
violateType
:
""
,
violateNum
:
""
,
punishResult
:
""
,
punishTime
:
""
,
remark
:
""
,
},
this
.
resetForm
(
'form'
)
},
//审核
handleExamine
()
{
handleExamine
(
row
)
{
console
.
log
(
row
,
'row'
);
this
.
$confirm
(
'确认要提交申请?'
,
'提示'
,
{
confirmButtonText
:
'同意'
,
cancelButtonText
:
'不同意'
,
confirmButtonClass
:
'custom-blue-button'
,
cancelButtonClass
:
'custom-blue-button'
})
.
then
(()
=>
{
// 弹出确认框,用户点击同意后执行的逻辑
const
params
=
{
id
:
row
.
id
,
auditState
:
'2'
// 表示同意
};
subApply
(
params
).
then
(
res
=>
{
if
(
res
.
code
==
200
)
{
this
.
$message
({
type
:
'success'
,
message
:
'提交成功!'
});
this
.
getList
();
}
});
})
.
catch
(()
=>
{
// 用户点击不同意或者取消后执行的逻辑
const
params
=
{
id
:
row
.
id
,
auditState
:
'3'
// 表示不同意
};
subApply
(
params
).
then
(
res
=>
{
if
(
res
.
code
==
200
)
{
this
.
$message
({
type
:
'info'
,
message
:
'已取消审核'
});
}
});
});
},
// 删除
handleDelete
(
row
)
{
this
.
$modal
.
confirm
(
`是否确认删除此数据?`
).
then
(()
=>
{
this
.
loading
=
true
;
return
del
Area
(
row
.
id
);
return
del
Discipline
(
row
.
id
);
}).
then
(()
=>
{
this
.
getList
();
this
.
loading
=
false
;
...
...
@@ -277,8 +526,7 @@ export default {
getList
()
{
getList
(
this
.
queryForm
)
listDisciplinetg
(
this
.
queryForm
)
.
then
(
response
=>
{
this
.
tableData
=
response
.
rows
;
console
.
log
(
'response'
,
response
);
...
...
@@ -290,29 +538,85 @@ export default {
console
.
log
(
error
);
});
},
//查询级部搜索
//获取教师下拉框
getTeacher
()
{
getTeacher
().
then
(
response
=>
{
this
.
deptOptions
=
response
.
data
;
console
.
log
(
this
.
deptOptions
,
' this.deptOptions '
);
});
},
//确定按钮
submitForm
:
function
()
{
this
.
$refs
[
'form'
].
validate
(
valid
=>
{
if
(
valid
)
{
if
(
this
.
form
.
id
!=
null
)
{
updateDiscipline
(
this
.
form
).
then
(({
code
})
=>
{
console
.
log
(
this
.
form
,
'this.form'
);
if
(
code
==
200
)
{
this
.
$modal
.
msgSuccess
(
'修改成功'
)
this
.
dialogTableVisible
=
false
this
.
getList
()
}
}).
catch
(()
=>
{
this
.
$modal
.
msgError
(
"修改失败"
);
});
}
else
{
addDiscipline
(
this
.
form
).
then
(
response
=>
{
console
.
log
(
this
.
form
,
'this.form'
);
this
.
$modal
.
msgSuccess
(
'新增成功'
)
this
.
dialogTableVisible
=
false
this
.
getList
()
}).
catch
(()
=>
{
this
.
$modal
.
msgError
(
"新增失败"
);
});
}
}
});
},
// 获取最新三个年级
getGradelist
()
{
getGrade
list
().
then
(
response
=>
{
getGrade
().
then
(
response
=>
{
this
.
loading
=
false
;
this
.
gradeLists
=
response
.
data
;
this
.
gradeList
=
response
.
data
;
this
.
getClasslist
()
console
.
log
(
"this.gradeList"
,
this
.
gradeList
);
});
},
handleChange
(
selectedGrade
)
{
console
.
log
(
selectedGrade
,
'selectedGrade'
);
this
.
getClasslist
(
selectedGrade
);
// 传递选择的年级id作为参数
},
// 根据年级获取班级
getClasslist
(
selectedGrade
)
{
const
query
=
{
gradeId
:
selectedGrade
};
// 创建包含gradeId的对象
getClassList
(
query
).
then
(
response
=>
{
this
.
loading
=
false
;
this
.
classList
=
response
.
data
;
console
.
log
(
"this.classList"
,
this
.
classList
);
});
},
resetQuery
()
{
this
.
queryForm
=
{
pageNum
:
1
,
pageSize
:
10
,
schoolYear
:
""
,
semester
:
""
,
sub
:
""
,
grade
:
""
,
experimentName
:
""
,
};
this
.
getList
();
gradeYear
:
""
,
gradeId
:
""
,
classId
:
""
,
classType
:
""
,
name
:
""
,
sex
:
""
,
idCard
:
""
,
classTeacher
:
""
,
violateType
:
""
,
violateNum
:
""
,
punishResult
:
""
,
punishTime
:
""
,
},
this
.
getList
();
},
...
...
ruoyi-ui/src/views/smartSchool/awardsDisciplinary/studentViolation/disciplinaryManagemen/index.vue
View file @
def45b0b
...
...
@@ -22,7 +22,7 @@
</el-form-item>
<el-form-item
label=
"班级"
prop=
"classId"
>
<el-select
v-model=
"queryForm.classId"
placeholder=
"请选择级部"
clearable
:style=
"
{ width: '100%' }">
<el-option
v-for=
"(item, index) in classList"
:key=
"index"
:label=
"item.class
Nam
e"
<el-option
v-for=
"(item, index) in classList"
:key=
"index"
:label=
"item.class
Valu
e"
:value=
"item.classId"
></el-option>
</el-select>
</el-form-item>
...
...
@@ -88,7 +88,7 @@
</el-table-column>
<el-table-column
align=
"center"
prop=
"gradeYear"
sortable
label=
"届别"
/>
<el-table-column
align=
"center"
prop=
"gradeName"
sortable
label=
"年级"
/>
<el-table-column
align=
"center"
prop=
"className
"
sortable
label=
"班级"
/>
<el-table-column
align=
"center"
prop=
"className"
sortable
label=
"班级"
/>
<el-table-column
align=
"center"
prop=
"classType"
sortable
label=
"班级类型"
width=
"100"
>
<
template
slot-scope=
"{ row }"
>
<div>
{{
selectDictLabel
(
dict
.
type
.
grade_type
,
row
.
classType
)
}}
</div>
...
...
@@ -120,12 +120,23 @@
</el-table-column>
<el-table-column
align=
"center"
prop=
"punishTime"
sortable
label=
"处分时间"
width=
"100"
/>
<el-table-column
align=
"center"
prop=
"remark"
sortable
label=
"备注"
/>
<el-table-column
align=
"center"
fixed=
"right"
label=
"操作"
width=
"
15
0"
>
<el-table-column
align=
"center"
fixed=
"right"
label=
"操作"
width=
"
20
0"
>
<
template
slot-scope=
"scope"
>
<el-button
@
click=
"handleEdit(scope.row)"
type=
"text"
size=
"small"
>
修改
</el-button>
<el-button
@
click=
"handleLook(scope.row)"
type=
"text"
size=
"small"
>
查看
</el-button>
<el-button
@
click=
"handleDelete(scope.row)"
type=
"text"
size=
"small"
>
删除
</el-button>
<el-button
@
click=
"handleExamine(scope.row)"
type=
"text"
size=
"small"
>
审核
</el-button>
<div>
<el-button
v-if=
"['1', '3'].includes(scope.row.auditState)"
@
click=
"handleExamine(scope.row)"
type=
"text"
size=
"small"
>
审核
</el-button>
<el-button
v-if=
"['1', '3'].includes(scope.row.auditState)"
@
click=
"handleEdit(scope.row)"
type=
"text"
size=
"small"
>
编辑
</el-button>
<el-button
v-if=
"['1', '3'].includes(scope.row.auditState)"
@
click=
"handleDelete(scope.row)"
type=
"text"
size=
"small"
>
删除
</el-button>
</div>
<div>
<el-button
v-if=
"scope.row.auditState === '2'"
@
click=
"handleEdit(scope.row)"
type=
"text"
size=
"small"
>
编辑
</el-button>
<el-button
@
click=
"handleLook(scope.row)"
type=
"text"
size=
"small"
>
查看
</el-button>
<el-button
v-if=
"scope.row.auditState === '2'"
@
click=
"handleDelete(scope.row)"
type=
"text"
size=
"small"
>
删除
</el-button>
</div>
</
template
>
</el-table-column>
</el-table>
...
...
@@ -134,7 +145,7 @@
<!-- 新增/编辑弹框 -->
<el-dialog
title=
"详细信息"
:visible
.
sync=
"dialogTableVisible"
width=
"1100px"
>
<el-form
:model=
"form"
ref=
"form"
size=
"small"
label-width=
"120px"
>
<el-form
:model=
"form"
ref=
"form"
size=
"small"
label-width=
"120px"
:disabled=
"isEdit"
:rules=
"rules"
>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"学年"
prop=
"schoolYear"
>
...
...
@@ -143,7 +154,10 @@
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"学期"
prop=
"semester"
>
<el-input
v-model=
"form.semester"
placeholder=
"请输入"
clearable
></el-input>
<el-select
v-model=
"form.semester"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.semester"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
...
...
@@ -163,14 +177,12 @@
<el-option
v-for=
"(item, index) in gradeList"
:key=
"index"
:label=
"item.gradeName"
:value=
"item.gradeId"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"班级"
prop=
"class
Id
"
>
<el-select
v-model=
"form.class
Id
"
placeholder=
"请选择级部"
clearable
:style=
"{ width: '100%' }"
>
<el-option
v-for=
"(item, index) in classList"
:key=
"index"
:label=
"item.class
Nam
e"
<el-form-item
label=
"班级"
prop=
"class
Name
"
>
<el-select
v-model=
"form.class
Name
"
placeholder=
"请选择级部"
clearable
:style=
"{ width: '100%' }"
>
<el-option
v-for=
"(item, index) in classList"
:key=
"index"
:label=
"item.class
Valu
e"
:value=
"item.classId"
></el-option>
</el-select>
</el-form-item>
...
...
@@ -191,6 +203,12 @@
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"身份证号"
prop=
"idCard"
>
<el-input
v-model=
"form.idCard"
@
blur=
"handleIdCardBlur"
maxlength=
"18"
placeholder=
"请输入"
clearable
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"性别"
prop=
"sex"
>
<el-select
v-model=
"form.sex"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.sys_user_sex"
:key=
"dict.value"
:label=
"dict.label"
...
...
@@ -198,21 +216,22 @@
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"身份证号"
prop=
"idCard"
>
<el-input
v-model=
"form.idCard"
placeholder=
"请输入"
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"班主任"
prop=
"classTeacher"
>
<el-input
v-model=
"form.classTeacher"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"班主任"
prop=
"classTeacherId"
>
<el-select
v-model=
"form.classTeacherId"
placeholder=
"请选择"
:style=
"{ width: '100%' }"
>
<el-option
v-for=
"item in deptOptions"
:key=
"item.userId"
:label=
"item.userName"
:value=
"item.userId"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"级部主任"
prop=
"gradeDirector"
>
<el-input
v-model=
"form.gradeDirector"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"级部主任"
prop=
"gradeDirectorId"
>
<el-select
v-model=
"form.gradeDirectorId"
placeholder=
"请选择"
:style=
"{ width: '100%' }"
>
<el-option
v-for=
"item in deptOptions"
:key=
"item.userId"
:label=
"item.userName"
:value=
"item.userId"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
...
...
@@ -261,7 +280,7 @@
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
style=
"text-align: center;"
>
<el-button
type=
"primary"
@
click=
"submitForm"
>
确 定
</el-button>
<el-button
@
click=
"cancelDialog"
>
取 消
</el-button>
<el-button
@
click=
"cancelDialog"
>
取 消
</el-button>
</div>
</el-dialog>
...
...
@@ -281,8 +300,10 @@ import {
subApply
,
//提交
getGrade
,
// 获取最新三个年级
getClassList
,
// 根据年级获取班级,
listDisciplinetg
//查看已通过
listDisciplinetg
,
//查看已通过
getTeacher
,
//获取教师
}
from
'@/api/smartSchool/awardsDisciplinary/studentViolation/disciplinaryManagemen'
import
{
checkIdcard
}
from
'@/utils/utilLibrary/validate'
export
default
{
name
:
'index'
,
dicts
:
[
'violate_type'
,
'violate_num'
,
'punish_result'
,
'sys_user_sex'
,
'grade_type'
,
'semester'
],
...
...
@@ -305,6 +326,7 @@ export default {
punishTime
:
""
,
},
isEdit
:
false
,
gradeLists
:
[],
//表格数据
tableData
:
[
...
...
@@ -325,8 +347,8 @@ export default {
name
:
""
,
sex
:
""
,
idCard
:
""
,
classTeacher
:
""
,
gradeDirector
:
""
,
classTeacher
Id
:
""
,
gradeDirector
Id
:
""
,
violateType
:
""
,
violateNum
:
""
,
punishResult
:
""
,
...
...
@@ -339,26 +361,83 @@ export default {
total
:
0
,
gradeList
:
[],
classList
:
[],
deptOptions
:
[],
rules
:
{
schoolYear
:
[
{
required
:
true
,
message
:
"学年不能为空"
,
trigger
:
"change"
}
],
semester
:
[
{
required
:
true
,
message
:
"学期不能为空"
,
trigger
:
"change"
}
],
gradeYear
:
[
{
required
:
true
,
message
:
"届别不能为空"
,
trigger
:
"change"
}
],
sex
:
[
{
required
:
true
,
message
:
"性别不能为空"
,
trigger
:
"change"
}
],
gradeId
:
[
{
required
:
true
,
message
:
"年级不能为空"
,
trigger
:
"change"
}
],
classId
:
[
{
required
:
true
,
message
:
"班级不能为空"
,
trigger
:
"change"
}
],
name
:
[
{
required
:
true
,
message
:
"姓名不能为空"
,
trigger
:
"change"
}
],
idCard
:
[{
required
:
true
,
validator
:
checkIdcard
,
trigger
:
'blur'
}],
classTeacherId
:
[
{
required
:
true
,
message
:
"班主任不能为空"
,
trigger
:
"change"
}
],
gradeDirectorId
:
[
{
required
:
true
,
message
:
"级部主任不能为空"
,
trigger
:
"change"
}
],
violateNum
:
[
{
required
:
true
,
message
:
"违纪次数不能为空"
,
trigger
:
"change"
}
],
violateType
:
[
{
required
:
true
,
message
:
"违纪类别不能为空"
,
trigger
:
"change"
}
],
punishResult
:
[
{
required
:
true
,
message
:
"处分结果不能为空"
,
trigger
:
"change"
}
],
punishTime
:
[
{
required
:
true
,
message
:
"处分时间不能为空"
,
trigger
:
"change"
}
],
},
}
},
created
()
{
this
.
getList
();
this
.
getGradelist
();
this
.
getTeacher
();
},
methods
:
{
handleAdd
()
{
this
.
reset
();
this
.
isEdit
=
false
;
this
.
dialogTableVisible
=
true
;
},
handleIdCardBlur
()
{
this
.
form
.
sex
=
this
.
getGenderFromIdCard
(
this
.
form
.
idCard
);
// 调用获取性别的方法
},
getGenderFromIdCard
(
idCard
)
{
const
lastDigit
=
parseInt
(
idCard
.
charAt
(
idCard
.
length
-
2
));
// 获取倒数第二位数字
return
lastDigit
%
2
===
0
?
'女'
:
'男'
;
// 奇数表示男性,偶数表示女性
},
//修改
handleEdit
(
row
)
{
console
.
log
(
row
);
const
id
=
row
.
id
||
this
.
ids
;
getDiscipline
(
id
).
then
((
response
)
=>
{
this
.
form
=
response
.
data
;
this
.
isEdit
=
false
;
this
.
dialogTableVisible
=
true
;
}).
catch
(
error
=>
{
this
.
$modal
.
closeLoading
();
})
...
...
@@ -370,7 +449,8 @@ export default {
const
id
=
row
.
id
||
this
.
ids
;
getDiscipline
(
id
).
then
((
response
)
=>
{
this
.
form
=
response
.
data
;
this
.
dialogTableVisible
=
true
;
this
.
isEdit
=
true
;
this
.
dialogTableVisible
=
true
;
``
}).
catch
(
error
=>
{
this
.
$modal
.
closeLoading
();
})
...
...
@@ -474,6 +554,13 @@ export default {
console
.
log
(
error
);
});
},
//获取教师下拉框
getTeacher
()
{
getTeacher
().
then
(
response
=>
{
this
.
deptOptions
=
response
.
data
;
console
.
log
(
this
.
deptOptions
,
' this.deptOptions '
);
});
},
//确定按钮
submitForm
:
function
()
{
this
.
$refs
[
'form'
].
validate
(
valid
=>
{
...
...
ruoyi-ui/src/views/smartSchool/awardsDisciplinary/studentViolation/violationDisciplineentry/index.vue
View file @
def45b0b
...
...
@@ -2,64 +2,73 @@
<div
class=
"app-container"
>
<el-form
:model=
"queryForm"
ref=
"queryForm"
size=
"small"
:inline=
"true"
label-width=
"68px"
>
<el-form-item
label=
"学年"
>
<el-input
v-model=
"
form.className
"
placeholder=
"请输入"
clearable
></el-input>
<el-input
v-model=
"
queryForm.schoolYear
"
placeholder=
"请输入"
clearable
></el-input>
</el-form-item>
<el-form-item
label=
"学期"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
</el-form-item>
<el-form-item
label=
"届别"
prop=
"level"
>
<el-select
v-model=
"queryForm.sub"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.lab_sub"
:key=
"dict.value"
:label=
"dict.label"
<el-select
v-model=
"queryForm.semester"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.semester"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"年级"
prop=
"level"
>
<el-select
v-model=
"queryForm.sub"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.lab_sub"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
<el-form-item
label=
"届别"
prop=
"gradeYear"
>
<el-input
v-model=
"queryForm.gradeYear"
placeholder=
"请输入"
clearable
></el-input>
</el-form-item>
<el-form-item
label=
"年级"
prop=
"gradeId"
>
<el-select
v-model=
"queryForm.gradeId"
placeholder=
"请选择"
clearable
:style=
"
{ width: '100%' }"
@change="handleChange">
<el-option
v-for=
"(item, index) in gradeList"
:key=
"index"
:label=
"item.gradeName"
:value=
"item.gradeId"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"班级"
prop=
"
level
"
>
<el-select
v-model=
"queryForm.
sub"
placeholder=
"请选择"
clearable
style=
"width: 100%;
"
>
<el-option
v-for=
"
dict in dict.type.lab_sub"
:key=
"dict.value"
:label=
"dict.label
"
:value=
"
dict.value"
/
>
<el-form-item
label=
"班级"
prop=
"
classId
"
>
<el-select
v-model=
"queryForm.
classId"
placeholder=
"请选择级部"
clearable
:style=
"
{ width: '100%' }
">
<el-option
v-for=
"
(item, index) in classList"
:key=
"index"
:label=
"item.classValue
"
:value=
"
item.classId"
></el-option
>
</el-select>
</el-form-item>
<el-form-item
label=
"班级类型"
>
<el-select
v-model=
"queryForm.
gradeId"
placeholder=
"请选择级部"
clearable
>
<el-option
v-for=
"
(item, index) in gradeLists"
:key=
"index"
:label=
"item.gradeName
"
:value=
"
item.id"
></el-option
>
<el-select
v-model=
"queryForm.
classType"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"
dict in dict.type.grade_type"
:key=
"dict.value"
:label=
"dict.label
"
:value=
"
dict.value"
/
>
</el-select>
</el-form-item>
<el-form-item
label=
"姓名"
>
<el-select
v-model=
"queryForm.gradeId"
placeholder=
"请选择级部"
clearable
>
<el-option
v-for=
"(item, index) in gradeLists"
:key=
"index"
:label=
"item.gradeName"
:value=
"item.id"
></el-option>
</el-select>
<el-input
v-model=
"queryForm.name"
placeholder=
"请输入"
clearable
></el-input>
</el-form-item>
<el-form-item
label=
"性别"
>
<el-select
v-model=
"queryForm.
gradeId"
placeholder=
"请选择级部"
clearable
>
<el-option
v-for=
"
(item, index) in gradeLists"
:key=
"index"
:label=
"item.gradeName
"
:value=
"
item.id"
></el-option
>
<el-select
v-model=
"queryForm.
sex"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"
dict in dict.type.sys_user_sex"
:key=
"dict.value"
:label=
"dict.label
"
:value=
"
dict.value"
/
>
</el-select>
</el-form-item>
<el-form-item
label=
"身份证号"
>
<el-input
v-model=
"
form.className
"
placeholder=
"请输入"
clearable
></el-input>
<el-input
v-model=
"
queryForm.idCard
"
placeholder=
"请输入"
clearable
></el-input>
</el-form-item>
<el-form-item
label=
"班主任"
>
<el-input
v-model=
"
form.className
"
placeholder=
"请输入"
clearable
></el-input>
<el-input
v-model=
"
queryForm.classTeacher
"
placeholder=
"请输入"
clearable
></el-input>
</el-form-item>
<el-form-item
label=
"违纪类别"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-select
v-model=
"queryForm.violateType"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.violate_type"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"违纪次数"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-select
v-model=
"queryForm.violateNum"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.violate_num"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"处分结果"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-select
v-model=
"queryForm.punishResult"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.punish_result"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"处分时间"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-date-picker
v-model=
"queryForm.punishTime"
type=
"date"
value-format=
"yyyy-MM-dd"
placeholder=
"请选择"
clearable
>
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button
type=
"primary"
icon=
"el-icon-search"
size=
"mini"
@
click=
"getList"
>
搜索
</el-button>
...
...
@@ -71,28 +80,57 @@
</el-form>
<el-table
:data=
"tableData"
:default-sort=
"
{ prop: 'time', order: 'ascending' }" border style="width: 100%">
<el-table-column
align=
"center"
type=
"index"
label=
"序号"
width=
"55"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"学年"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"学期"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"届别"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"年级"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"班级"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"班级类型"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"姓名"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"性别"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"身份证号"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"班主任"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"级部主任"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"违纪类别"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"违纪次数"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"处分结果"
/>
<el-table-column
align=
"center"
prop=
"time"
sortable
label=
"处分时间"
/>
<el-table-column
align=
"center"
prop=
"grade"
sortable
label=
"备注"
/>
<el-table-column
align=
"center"
prop=
"schoolYear"
sortable
label=
"学年"
/>
<el-table-column
align=
"center"
prop=
"semester"
sortable
label=
"学期"
>
<template
slot-scope=
"
{ row }">
<div>
{{
selectDictLabel
(
dict
.
type
.
semester
,
row
.
semester
)
}}
</div>
</
template
>
</el-table-column>
<el-table-column
align=
"center"
prop=
"gradeYear"
sortable
label=
"届别"
/>
<el-table-column
align=
"center"
prop=
"gradeName"
sortable
label=
"年级"
/>
<el-table-column
align=
"center"
prop=
"className"
sortable
label=
"班级"
/>
<el-table-column
align=
"center"
prop=
"classType"
sortable
label=
"班级类型"
width=
"100"
>
<
template
slot-scope=
"{ row }"
>
<div>
{{
selectDictLabel
(
dict
.
type
.
grade_type
,
row
.
classType
)
}}
</div>
</
template
>
</el-table-column>
<el-table-column
align=
"center"
prop=
"name"
sortable
label=
"姓名"
/>
<el-table-column
align=
"center"
prop=
"sex"
sortable
label=
"性别"
>
<
template
slot-scope=
"{ row }"
>
<div>
{{
selectDictLabel
(
dict
.
type
.
sys_user_sex
,
row
.
sex
)
}}
</div>
</
template
>
</el-table-column>
<el-table-column
align=
"center"
prop=
"idCard"
sortable
label=
"身份证号"
width=
"180"
/>
<el-table-column
align=
"center"
prop=
"classTeacher"
sortable
label=
"班主任"
width=
"100"
/>
<el-table-column
align=
"center"
prop=
"gradeDirector"
sortable
label=
"级部主任"
width=
"100"
/>
<el-table-column
align=
"center"
prop=
"violateType"
sortable
label=
"违纪类别"
width=
"100"
>
<
template
slot-scope=
"{ row }"
>
<div>
{{
selectDictLabel
(
dict
.
type
.
violate_type
,
row
.
violateType
)
}}
</div>
</
template
>
</el-table-column>
<el-table-column
align=
"center"
prop=
"violateNum"
sortable
label=
"违纪次数"
width=
"100"
>
<
template
slot-scope=
"{ row }"
>
<div>
{{
selectDictLabel
(
dict
.
type
.
violate_num
,
row
.
violateNum
)
}}
</div>
</
template
>
</el-table-column>
<el-table-column
align=
"center"
prop=
"punishResult"
sortable
label=
"处分结果"
width=
"100"
>
<
template
slot-scope=
"{ row }"
>
<div>
{{
selectDictLabel
(
dict
.
type
.
punish_result
,
row
.
punishResult
)
}}
</div>
</
template
>
</el-table-column>
<el-table-column
align=
"center"
prop=
"punishTime"
sortable
label=
"处分时间"
width=
"100"
/>
<el-table-column
align=
"center"
prop=
"remark"
sortable
label=
"备注"
/>
<el-table-column
align=
"center"
fixed=
"right"
label=
"操作"
width=
"150"
>
<
template
slot-scope=
"scope"
>
<el-button
@
click=
"handleEdit(scope.row)"
type=
"text"
size=
"small"
>
修改
</el-button>
<el-button
@
click=
"handleLook(scope.row)"
type=
"text"
size=
"small"
>
查看
</el-button>
<el-button
@
click=
"handleDelete(scope.row)"
type=
"text"
size=
"small"
>
删除
</el-button>
<el-button
@
click=
"handleExamine(scope.row)"
type=
"text"
size=
"small"
>
审核
</el-button>
<div
v-if=
"scope.row.auditState === '0'"
>
<el-button
@
click=
"handleExamine(scope.row)"
type=
"text"
size=
"small"
>
提交
</el-button>
<el-button
@
click=
"handleEdit(scope.row)"
type=
"text"
size=
"small"
>
编辑
</el-button>
<el-button
@
click=
"handleDelete(scope.row)"
type=
"text"
size=
"small"
>
删除
</el-button>
</div>
<div
v-else
>
<el-button
@
click=
"handleEdit(scope.row)"
type=
"text"
size=
"small"
>
编辑
</el-button>
<el-button
@
click=
"handleDelete(scope.row)"
type=
"text"
size=
"small"
>
删除
</el-button>
</div>
</
template
>
</el-table-column>
</el-table>
...
...
@@ -101,21 +139,24 @@
<!-- 新增/编辑弹框 -->
<el-dialog
title=
"详细信息"
:visible
.
sync=
"dialogTableVisible"
width=
"1100px"
>
<el-form
:model=
"form"
ref=
"form"
size=
"small"
label-width=
"120px"
>
<el-form
:model=
"form"
ref=
"form"
size=
"small"
label-width=
"120px"
:disabled=
"isEdit"
:rules=
"rules"
>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"学年"
>
<el-input
v-model=
"form.
className
"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"学年"
prop=
"schoolYear"
>
<el-input
v-model=
"form.
schoolYear
"
placeholder=
"请输入"
clearable
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"学期"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"学期"
prop=
"semester"
>
<el-select
v-model=
"form.semester"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.semester"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"届别"
>
<el-input
v-model=
"form.
className
"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"届别"
prop=
"gradeYear"
>
<el-input
v-model=
"form.
gradeYear
"
placeholder=
"请输入"
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
...
...
@@ -124,76 +165,108 @@
</el-row>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"年级"
prop=
"startTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"年级"
prop=
"gradeId"
>
<el-select
v-model=
"form.gradeId"
placeholder=
"请选择"
clearable
:style=
"{ width: '100%' }"
@
change=
"getClasslist(form.gradeId)"
>
<el-option
v-for=
"(item, index) in gradeList"
:key=
"index"
:label=
"item.gradeName"
:value=
"item.gradeId"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"班级"
prop=
"endTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"班级"
prop=
"classId"
>
<el-select
v-model=
"form.classId"
placeholder=
"请选择级部"
clearable
:style=
"{ width: '100%' }"
>
<el-option
v-for=
"(item, index) in classList"
:key=
"index"
:label=
"item.classValue"
:value=
"item.classId"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"班级类型"
prop=
"endTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"班级类型"
prop=
"classType"
>
<el-select
v-model=
"form.classType"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.grade_type"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"姓名"
prop=
"
startTi
me"
>
<el-input
v-model=
"form.
classN
ame"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"姓名"
prop=
"
na
me"
>
<el-input
v-model=
"form.
n
ame"
placeholder=
"请输入"
clearable
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"性别"
prop=
"endTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"身份证号"
prop=
"idCard"
>
<el-input
v-model=
"form.idCard"
@
blur=
"handleIdCardBlur"
maxlength=
"18"
placeholder=
"请输入"
clearable
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"身份证号"
prop=
"endTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"性别"
prop=
"sex"
>
<el-select
v-model=
"form.sex"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.sys_user_sex"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"班主任"
prop=
"startTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"班主任"
prop=
"classTeacherId"
>
<el-select
v-model=
"form.classTeacherId"
placeholder=
"请选择"
:style=
"{ width: '100%' }"
>
<el-option
v-for=
"item in deptOptions"
:key=
"item.userId"
:label=
"item.userName"
:value=
"item.userId"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"级部主任"
prop=
"endTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"级部主任"
prop=
"gradeDirectorId"
>
<el-select
v-model=
"form.gradeDirectorId"
placeholder=
"请选择"
:style=
"{ width: '100%' }"
>
<el-option
v-for=
"item in deptOptions"
:key=
"item.userId"
:label=
"item.userName"
:value=
"item.userId"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"违纪类别"
prop=
"endTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"违纪类别"
prop=
"violateType"
>
<el-select
v-model=
"form.violateType"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.violate_type"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"8"
>
<el-form-item
label=
"违纪次数"
prop=
"startTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"违纪次数"
prop=
"violateNum"
>
<el-select
v-model=
"form.violateNum"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.violate_num"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"处分结果"
prop=
"endTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"处分结果"
prop=
"punishResult"
>
<el-select
v-model=
"form.punishResult"
placeholder=
"请选择"
clearable
style=
"width: 100%;"
>
<el-option
v-for=
"dict in dict.type.punish_result"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"处分时间"
prop=
"endTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"处分时间"
prop=
"punishTime"
>
<el-date-picker
v-model=
"form.punishTime"
type=
"date"
value-format=
"yyyy-MM-dd"
placeholder=
"请选择"
clearable
:style=
"{ width: '100%' }"
>
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"24"
>
<el-form-item
label=
"备注"
prop=
"endTime"
>
<el-input
v-model=
"form.className"
placeholder=
"请输入"
clearable
></el-input>
<el-form-item
label=
"备注"
prop=
"remark"
>
<el-input
v-model=
"form.remark"
placeholder=
"请输入"
clearable
type=
"textarea"
:rows=
"2"
></el-input>
</el-form-item>
</el-col>
</el-row>
...
...
@@ -201,37 +274,57 @@
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
style=
"text-align: center;"
>
<el-button
type=
"primary"
@
click=
"submitForm"
>
确 定
</el-button>
<el-button
@
click=
"cancelDialog"
>
取 消
</el-button>
<el-button
@
click=
"cancelDialog"
>
取 消
</el-button>
</div>
</el-dialog>
</div>
</template>
<
script
>
// import {
// getList,
// getSemester,
// getTeacherxq,
// getGradelist
// } from '@/api/smartSchool/laboratoryManagement/leadlaboratoryCompletion'
import
{
listDiscipline
,
// 查看学生违纪列表(管理员)
listDisciplinegr
,
//查看学生违纪列表(个人)
getDiscipline
,
//查看详情
addDiscipline
,
// 新增学生违纪(管理员)
addDisciplinegr
,
// 新增学生违纪(个人)
updateDiscipline
,
// 编辑学生违纪
delDiscipline
,
// 删除学生违纪
subApply
,
//提交
getGrade
,
// 获取最新三个年级
getClassList
,
// 根据年级获取班级,
listDisciplinetg
,
//查看已通过
getTeacher
,
//获取教师
}
from
'@/api/smartSchool/awardsDisciplinary/studentViolation/disciplinaryManagemen'
import
{
checkIdcard
}
from
'@/utils/utilLibrary/validate'
export
default
{
name
:
'index'
,
dicts
:
[
'
experiment_classify'
,
'lab_sub
'
],
dicts
:
[
'
violate_type'
,
'violate_num'
,
'punish_result'
,
'sys_user_sex'
,
'grade_type'
,
'semester
'
],
data
()
{
return
{
queryForm
:
{
pageNum
:
1
,
pageSize
:
10
,
schoolYear
:
""
,
semester
:
""
,
gradeYear
:
""
,
gradeId
:
""
,
classId
:
""
,
classType
:
""
,
name
:
""
,
sex
:
""
,
idCard
:
""
,
classTeacher
:
""
,
violateType
:
""
,
violateNum
:
""
,
punishResult
:
""
,
punishTime
:
""
,
},
isEdit
:
false
,
gradeLists
:
[],
//表格数据
tableData
:
[
{
grade
:
'111'
,
time
:
'2023-12-12'
},
{
grade
:
'111'
,
time
:
'2023-12-13'
},
{
grade
:
'111'
,
time
:
'2023-12-14'
},
{
grade
:
'111'
,
time
:
'2023-12-15'
},
],
//查看弹窗表格
...
...
@@ -239,61 +332,176 @@ export default {
form
:
{
pageNum
:
1
,
pageSize
:
10
,
schoolYear
:
""
,
semester
:
""
,
gradeYear
:
""
,
gradeId
:
""
,
classId
:
""
,
classType
:
""
,
name
:
""
,
sex
:
""
,
idCard
:
""
,
classTeacherId
:
""
,
gradeDirectorId
:
""
,
violateType
:
""
,
violateNum
:
""
,
punishResult
:
""
,
punishTime
:
""
,
remark
:
""
,
},
//弹窗
dialogTableVisible
:
false
,
total
:
0
,
gradeList
:
[],
classList
:
[],
deptOptions
:
[],
rules
:
{
schoolYear
:
[
{
required
:
true
,
message
:
"学年不能为空"
,
trigger
:
"change"
}
],
semester
:
[
{
required
:
true
,
message
:
"学期不能为空"
,
trigger
:
"change"
}
],
gradeYear
:
[
{
required
:
true
,
message
:
"届别不能为空"
,
trigger
:
"change"
}
],
sex
:
[
{
required
:
true
,
message
:
"性别不能为空"
,
trigger
:
"change"
}
],
gradeId
:
[
{
required
:
true
,
message
:
"年级不能为空"
,
trigger
:
"change"
}
],
classId
:
[
{
required
:
true
,
message
:
"班级不能为空"
,
trigger
:
"change"
}
],
name
:
[
{
required
:
true
,
message
:
"姓名不能为空"
,
trigger
:
"change"
}
],
idCard
:
[{
required
:
true
,
validator
:
checkIdcard
,
trigger
:
'blur'
}],
classTeacherId
:
[
{
required
:
true
,
message
:
"班主任不能为空"
,
trigger
:
"change"
}
],
gradeDirectorId
:
[
{
required
:
true
,
message
:
"级部主任不能为空"
,
trigger
:
"change"
}
],
violateNum
:
[
{
required
:
true
,
message
:
"违纪次数不能为空"
,
trigger
:
"change"
}
],
violateType
:
[
{
required
:
true
,
message
:
"违纪类别不能为空"
,
trigger
:
"change"
}
],
punishResult
:
[
{
required
:
true
,
message
:
"处分结果不能为空"
,
trigger
:
"change"
}
],
punishTime
:
[
{
required
:
true
,
message
:
"处分时间不能为空"
,
trigger
:
"change"
}
],
},
}
},
created
()
{
this
.
getList
();
this
.
getGradelist
();
this
.
getTeacher
();
},
methods
:
{
handleAdd
()
{
this
.
reset
();
this
.
isEdit
=
false
;
this
.
dialogTableVisible
=
true
;
},
handleEdit
()
{
this
.
dialogTableVisible
=
true
;
handleIdCardBlur
()
{
this
.
form
.
sex
=
this
.
getGenderFromIdCard
(
this
.
form
.
idCard
);
// 调用获取性别的方法
},
getGenderFromIdCard
(
idCard
)
{
const
lastDigit
=
parseInt
(
idCard
.
charAt
(
idCard
.
length
-
2
));
// 获取倒数第二位数字
return
lastDigit
%
2
===
0
?
'女'
:
'男'
;
// 奇数表示男性,偶数表示女性
},
//修改
handleEdit
(
row
)
{
console
.
log
(
row
);
const
id
=
row
.
id
||
this
.
ids
;
getDiscipline
(
id
).
then
((
response
)
=>
{
this
.
form
=
response
.
data
;
this
.
isEdit
=
false
;
this
.
dialogTableVisible
=
true
;
}).
catch
(
error
=>
{
this
.
$modal
.
closeLoading
();
})
},
//查看
handleLook
(
row
)
{
console
.
log
(
row
);
const
id
=
row
.
id
||
this
.
ids
;
getDiscipline
(
id
).
then
((
response
)
=>
{
this
.
form
=
response
.
data
;
this
.
isEdit
=
true
;
this
.
dialogTableVisible
=
true
;
``
}).
catch
(
error
=>
{
this
.
$modal
.
closeLoading
();
})
},
cancelDialog
()
{
this
.
dialogTableVisible
=
false
;
},
//审核
reset
()
{
this
.
form
=
{
pageNum
:
1
,
pageSize
:
10
,
schoolYear
:
""
,
semester
:
""
,
gradeYear
:
""
,
gradeId
:
""
,
classId
:
""
,
classType
:
""
,
name
:
""
,
sex
:
""
,
idCard
:
""
,
classTeacher
:
""
,
gradeDirector
:
""
,
violateType
:
""
,
violateNum
:
""
,
punishResult
:
""
,
punishTime
:
""
,
remark
:
""
,
},
this
.
resetForm
(
'form'
)
},
//审核
handleExamine
(
row
)
{
this
.
$confirm
(
'确认要提交申请?'
,
'提示'
,
{
confirmButtonText
:
'确定'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
})
.
then
(()
=>
{
submitApply
(
row
,
row
.
id
).
then
(
res
=>
{
if
(
res
.
code
==
200
)
{
this
.
$message
({
type
:
'success'
,
message
:
'提交成功!'
})
this
.
getList
()
}
})
const
ids
=
row
.
id
||
this
.
ids
;
this
.
$modal
.
confirm
(
"是否提交该活动?"
)
.
then
(
function
()
{
const
params
=
{
id
:
row
.
id
,
auditState
:
'1'
// 表示同意
};
return
subApply
(
params
);
})
.
catch
(()
=>
{
this
.
$message
({
type
:
'info'
,
message
:
'已取消提交'
})
.
then
(()
=>
{
this
.
getList
();
this
.
$modal
.
msgSuccess
(
"提交成功"
);
})
.
catch
((
err
)
=>
{
console
.
error
(
err
);
});
},
// 删除
handleDelete
(
row
)
{
this
.
$modal
.
confirm
(
`是否确认删除此数据?`
).
then
(()
=>
{
this
.
loading
=
true
;
return
del
Area
(
row
.
id
);
return
del
Discipline
(
row
.
id
);
}).
then
(()
=>
{
this
.
getList
();
this
.
loading
=
false
;
...
...
@@ -305,8 +513,7 @@ export default {
getList
()
{
getList
(
this
.
queryForm
)
listDisciplinegr
(
this
.
queryForm
)
.
then
(
response
=>
{
this
.
tableData
=
response
.
rows
;
console
.
log
(
'response'
,
response
);
...
...
@@ -318,29 +525,85 @@ export default {
console
.
log
(
error
);
});
},
//查询级部搜索
//获取教师下拉框
getTeacher
()
{
getTeacher
().
then
(
response
=>
{
this
.
deptOptions
=
response
.
data
;
console
.
log
(
this
.
deptOptions
,
' this.deptOptions '
);
});
},
//确定按钮
submitForm
:
function
()
{
this
.
$refs
[
'form'
].
validate
(
valid
=>
{
if
(
valid
)
{
if
(
this
.
form
.
id
!=
null
)
{
updateDiscipline
(
this
.
form
).
then
(({
code
})
=>
{
console
.
log
(
this
.
form
,
'this.form'
);
if
(
code
==
200
)
{
this
.
$modal
.
msgSuccess
(
'修改成功'
)
this
.
dialogTableVisible
=
false
this
.
getList
()
}
}).
catch
(()
=>
{
this
.
$modal
.
msgError
(
"修改失败"
);
});
}
else
{
addDisciplinegr
(
this
.
form
).
then
(
response
=>
{
console
.
log
(
this
.
form
,
'this.form'
);
this
.
$modal
.
msgSuccess
(
'新增成功'
)
this
.
dialogTableVisible
=
false
this
.
getList
()
}).
catch
(()
=>
{
this
.
$modal
.
msgError
(
"新增失败"
);
});
}
}
});
},
// 获取最新三个年级
getGradelist
()
{
getGrade
list
().
then
(
response
=>
{
getGrade
().
then
(
response
=>
{
this
.
loading
=
false
;
this
.
gradeLists
=
response
.
data
;
this
.
gradeList
=
response
.
data
;
this
.
getClasslist
()
console
.
log
(
"this.gradeList"
,
this
.
gradeList
);
});
},
handleChange
(
selectedGrade
)
{
console
.
log
(
selectedGrade
,
'selectedGrade'
);
this
.
getClasslist
(
selectedGrade
);
// 传递选择的年级id作为参数
},
// 根据年级获取班级
getClasslist
(
selectedGrade
)
{
const
query
=
{
gradeId
:
selectedGrade
};
// 创建包含gradeId的对象
getClassList
(
query
).
then
(
response
=>
{
this
.
loading
=
false
;
this
.
classList
=
response
.
data
;
console
.
log
(
"this.classList"
,
this
.
classList
);
});
},
resetQuery
()
{
this
.
queryForm
=
{
pageNum
:
1
,
pageSize
:
10
,
schoolYear
:
""
,
semester
:
""
,
sub
:
""
,
grade
:
""
,
experimentName
:
""
,
};
this
.
getList
();
gradeYear
:
""
,
gradeId
:
""
,
classId
:
""
,
classType
:
""
,
name
:
""
,
sex
:
""
,
idCard
:
""
,
classTeacher
:
""
,
violateType
:
""
,
violateNum
:
""
,
punishResult
:
""
,
punishTime
:
""
,
},
this
.
getList
();
},
...
...
ruoyi-ui/src/views/whitePage.vue
View file @
def45b0b
...
...
@@ -29,7 +29,8 @@ export default {
// 获取code
getCode
()
{
dd
.
getAuthCode
({
corpId
:
'dingaa3937ff8b7dd267f2c783f7214b6d69'
,
// corpId: 'dingaa3937ff8b7dd267f2c783f7214b6d69',
corpId
:
'dingccea40788226c988f2c783f7214b6d69'
,
success
:
(
res
)
=>
{
console
.
log
(
'获取新的免登码成功'
,
res
);
const
code
=
res
.
code
...
...
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