master
董哲奇 1 month ago
parent 6bdd800fd4
commit b06e6fe0de

@ -65,6 +65,9 @@ export default {
roomSelect({ roomSelect({
deptId: this.deptId deptId: this.deptId
}).then(response => { }).then(response => {
response.data?.forEach(item=>{
item.roomId=item.roomId+''
})
this.roomOptions = response.data this.roomOptions = response.data
}) })
}, },

@ -44,7 +44,22 @@
<div v-else class="item"> <div v-else class="item">
<div class="item-name required">上课教师:</div> <div class="item-name required">上课教师:</div>
<div class="item-value"> <div class="item-value">
<staff-select v-model="form.teacherId" teacher="1" placeholder="请选择上课教师" /> <!-- <staff-select v-model="form.teacherId" teacher="1" placeholder="请选择上课教师" />-->
<el-select
v-model="form.teacherId"
filterable
allow-create
placeholder="选择上课教师"
clearable
default-first-option
>
<el-option
v-for="teacher in teacherOptions"
:key="teacher.userId"
:label="teacher.nickName"
:value="teacher.userId"
/>
</el-select>
</div> </div>
</div> </div>
<div v-if="form.attendType === 'rule'" class="item"> <div v-if="form.attendType === 'rule'" class="item">
@ -250,6 +265,7 @@ import { allDetailInfoById } from '@/api/school/sc/cla'
import moment from 'moment' import moment from 'moment'
import { searchCourseClaStudent } from '@/api/school/sc/student/course' import { searchCourseClaStudent } from '@/api/school/sc/student/course'
import { claTimeAttend } from '@/api/school/sc/student/course' import { claTimeAttend } from '@/api/school/sc/student/course'
import {select as teacherSelect} from "@/api/school/system/staff";
export default { export default {
components: { components: {
staffSelect, staffSelect,
@ -308,6 +324,7 @@ export default {
roomId: undefined, roomId: undefined,
classTheme: undefined classTheme: undefined
}, },
teacherOptions:[],
// //
claTimeAttendTypeOptions: [{ claTimeAttendTypeOptions: [{
dictValue: 'rule', dictValue: 'rule',
@ -414,8 +431,14 @@ export default {
this.getDictListByDictType('attend_status').then(response => { this.getDictListByDictType('attend_status').then(response => {
this.attendStatusOptions = response.data this.attendStatusOptions = response.data
}) })
this.getTeacherOptions()
}, },
methods: { methods: {
getTeacherOptions() {
teacherSelect().then(response => {
this.teacherOptions = response.data
})
},
resetData() { resetData() {
this.claInfo = { this.claInfo = {
claName: '', claName: '',

@ -83,7 +83,21 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="任课教师:" prop="teacherId"> <el-form-item label="任课教师:" prop="teacherId">
<staff-select v-model="form.teacherId" teacher="1" placeholder="请选择任课教师" /> <el-select
v-model="form.teacherId"
filterable
allow-create
placeholder="选择上课教师"
clearable
default-first-option
>
<el-option
v-for="teacher in teacherOptions"
:key="teacher.userId"
:label="teacher.nickName"
:value="teacher.userId"
/>
</el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
@ -112,6 +126,7 @@ import deptSelect from '@/components/system/dept/deptSelect'
import moment from 'moment' import moment from 'moment'
import { addTime, claTimeInfo, updateTime } from '@/api/school/sc/cla/claTime' import { addTime, claTimeInfo, updateTime } from '@/api/school/sc/cla/claTime'
import { getCla } from '@/api/school/sc/cla' import { getCla } from '@/api/school/sc/cla'
import {select as teacherSelect} from "@/api/school/system/staff";
export default { export default {
components: { components: {
@ -138,7 +153,8 @@ export default {
} }
}, },
// //
canChangeCla: true canChangeCla: true,
teacherOptions:[],
} }
}, },
computed: { computed: {
@ -162,8 +178,14 @@ export default {
watch: { watch: {
}, },
created() { created() {
this.getTeacherOptions()
}, },
methods: { methods: {
getTeacherOptions() {
teacherSelect().then(response => {
this.teacherOptions = response.data
})
},
afterNow(date) { afterNow(date) {
return moment(date).add(1, 'days').toDate().getTime() < new Date().getTime() return moment(date).add(1, 'days').toDate().getTime() < new Date().getTime()
}, },

@ -126,7 +126,21 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="任课教师:" prop="teacherId"> <el-form-item label="任课教师:" prop="teacherId">
<staff-select v-model="form.teacherId" teacher="1" placeholder="请选择任课教师" /> <el-select
v-model="form.teacherId"
filterable
allow-create
placeholder="选择上课教师"
clearable
default-first-option
>
<el-option
v-for="teacher in teacherOptions"
:key="teacher.userId"
:label="teacher.nickName"
:value="teacher.userId"
/>
</el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
@ -154,6 +168,7 @@ import staffSelect from '@/components/system/staff/staffSelect'
import roomSelect from '@/components/sc/base/roomSelect' import roomSelect from '@/components/sc/base/roomSelect'
import moment from 'moment' import moment from 'moment'
import { addRule, getRule, updateRule } from '@/api/school/sc/cla/claTimeRule' import { addRule, getRule, updateRule } from '@/api/school/sc/cla/claTimeRule'
import {select as teacherSelect} from "@/api/school/system/staff";
let that let that
export default { export default {
components: { components: {
@ -187,6 +202,7 @@ export default {
// //
form: { form: {
}, },
teacherOptions:[],
isIndeterminate: true, isIndeterminate: true,
checkAllWeekDay: false, checkAllWeekDay: false,
beginDatePickerOptions: { beginDatePickerOptions: {
@ -290,8 +306,14 @@ export default {
this.weekDayOptions = response.data this.weekDayOptions = response.data
}) })
that = this that = this
this.getTeacherOptions()
}, },
methods: { methods: {
getTeacherOptions() {
teacherSelect().then(response => {
this.teacherOptions = response.data
})
},
// //
repeatTypeFormat(row, column) { repeatTypeFormat(row, column) {
return this.selectDictLabel(this.repeatTypeOptions, row.repeatType) return this.selectDictLabel(this.repeatTypeOptions, row.repeatType)
@ -323,21 +345,23 @@ export default {
}, },
loadInfo(id) { loadInfo(id) {
this.loadingChange = true this.loadingChange = true
this.reset()
getRule(id).then(response => { getRule(id).then(response => {
this.loadingChange = false this.loadingChange = false
const date = response.data const date = response.data
date.weekDays = date.weekDay.split(',') date.deptId=date.deptId+''
date.weekDays = date.weekDay?.split(',')
if (date.startTime !== undefined && date.startTime.length > 5) { if (date.startTime !== undefined && date.startTime.length > 5) {
date.startTime = date.startTime.substr(0, 5) date.startTime = date.startTime.substr(0, 5)
} }
if (date.endTime !== undefined && date.endTime.length > 5) { if (date.endTime !== undefined && date.endTime.length > 5) {
date.endTime = date.endTime.substr(0, 5) date.endTime = date.endTime.substr(0, 5)
} }
if (date.onceDate !== undefined) { if (date.onceDate) {
date.chooseDate = date.onceDate.split(',') date.chooseDate = date.onceDate.split(',')
} }
this.form = date this.form = date
this.$refs['form'].resetFields() console.log(date)
this.open = true this.open = true
}).catch(() => { }).catch(() => {
this.loadingChange = false this.loadingChange = false
@ -348,11 +372,9 @@ export default {
this.$refs['form'].validate(valid => { this.$refs['form'].validate(valid => {
if (valid) { if (valid) {
this.loadingChange = true this.loadingChange = true
this.form.weekDay = this.form.weekDays.toString() this.form.weekDay = this.form.weekDays?.toString()
if (this.form.chooseDate !== undefined) { this.form.onceDate = this.form.chooseDate?.toString()
this.form.onceDate = this.form.chooseDate.toString() if (this.form.ruleId) {
}
if (this.form.ruleId !== undefined) {
updateRule(this.form).then(response => { updateRule(this.form).then(response => {
this.loadingChange = false this.loadingChange = false
if (response.respCode === '0000') { if (response.respCode === '0000') {

@ -93,6 +93,7 @@ export default {
queryParam.diffNowDay = this.diffNowDay queryParam.diffNowDay = this.diffNowDay
} }
searchRecentDayTimeList(queryParam).then(response => { searchRecentDayTimeList(queryParam).then(response => {
console.log(queryParam)
this.planClaTimeOptions = response.data this.planClaTimeOptions = response.data
if (this.planClaTimeOptions.length > 0) { if (this.planClaTimeOptions.length > 0) {
this.courseTimeId = this.planClaTimeOptions[0].courseTimeId this.courseTimeId = this.planClaTimeOptions[0].courseTimeId

@ -113,7 +113,8 @@ export default {
form: { form: {
courseCampus: undefined, courseCampus: undefined,
teachingMode: '1', teachingMode: '1',
partCampus: [] partCampus: [],
sale:'1',
}, },
// //
rules: { rules: {
@ -177,6 +178,7 @@ export default {
this.form.feeModeCycleList = feeModeCycleList this.form.feeModeCycleList = feeModeCycleList
this.form.feeModeCycle = feeModeCycle this.form.feeModeCycle = feeModeCycle
this.form.sale='1'
if (this.form.courseId !== undefined) { if (this.form.courseId !== undefined) {
updateCourse(this.form).then(response => { updateCourse(this.form).then(response => {

@ -35,9 +35,9 @@
> >
<el-option <el-option
v-for="teacher in teacherOptions" v-for="teacher in teacherOptions"
:key="teacher.staffId" :key="teacher.userId"
:label="teacher.staffName" :label="teacher.nickName"
:value="teacher.staffId" :value="teacher.userId"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
@ -178,9 +178,20 @@ export default {
}, },
created() { created() {
this.getTeacherOptions() this.getTeacherOptions()
this.getDictListByDictType('recruit_status').then(response => { this.recruitStatusOptions = [
this.recruitStatusOptions = response.data {
}) "dictLabel": "开放",
"dictValue": "1"
},
{
"dictLabel": "满班后停止",
"dictValue": "2"
},
{
"dictLabel": "停止",
"dictValue": "0"
}
]
}, },
methods: { methods: {
getTeacherOptions() { getTeacherOptions() {

@ -59,6 +59,9 @@ export default {
methods: { methods: {
campusList() { campusList() {
campusList().then(response => { campusList().then(response => {
response.data.forEach(item=>{
item.id=item.id+''
})
this.campusOptions = response.data this.campusOptions = response.data
}) })
}, },

@ -29,7 +29,7 @@
</el-select> </el-select>
</template> </template>
<script> <script>
import { listStaff } from '@/api/school/system/staff' import { select } from '@/api/school/system/staff'
export default { export default {
props: { props: {
clearable: { clearable: {
@ -71,7 +71,7 @@ export default {
methods: { methods: {
loadStaff: function() { loadStaff: function() {
if (this.pageNum === 1) { if (this.pageNum === 1) {
listStaff({ select({
pageNum: this.pageNum, pageNum: this.pageNum,
teacher: this.teacher teacher: this.teacher
}).then(response => { }).then(response => {
@ -84,7 +84,7 @@ export default {
} }
}) })
} else if (this.hasMoreData) { } else if (this.hasMoreData) {
listStaff({ select({
pageNum: this.pageNum pageNum: this.pageNum
}).then(response => { }).then(response => {
if (response.respCode === '0000') { if (response.respCode === '0000') {

@ -8,7 +8,22 @@
<cla-select v-model="queryParams.claId" :dept-id="queryParams.deptId" clearable placeholder="选择班级" @change="handleChangeCla" /> <cla-select v-model="queryParams.claId" :dept-id="queryParams.deptId" clearable placeholder="选择班级" @change="handleChangeCla" />
</el-form-item> </el-form-item>
<el-form-item label="任课教师:" prop="teacherId"> <el-form-item label="任课教师:" prop="teacherId">
<staff-select v-model="queryParams.teacherId" teacher="1" clearable placeholder="选择任课教师" @change="handleChangeTeacher" /> <el-select
v-model="queryParams.teacherId"
filterable
allow-create
placeholder="选择上课教师"
clearable
default-first-option
>
<el-option
v-for="teacher in teacherOptions"
:key="teacher.userId"
:label="teacher.nickName"
:value="teacher.userId"
/>
</el-select>
<!-- <staff-select v-model="queryParams.teacherId" teacher="1" clearable placeholder="选择任课教师" @change="handleChangeTeacher" />-->
</el-form-item> </el-form-item>
<el-form-item v-if="activeTab === 'table'" label="节假日:" prop="filterHoliday"> <el-form-item v-if="activeTab === 'table'" label="节假日:" prop="filterHoliday">
<el-radio-group v-model="queryParams.filterHoliday"> <el-radio-group v-model="queryParams.filterHoliday">
@ -152,6 +167,7 @@ import staffSelect from '@/components/system/staff/staffSelect'
import changeTimeRule from '@/components/sc/claTime/changeTimeRule' import changeTimeRule from '@/components/sc/claTime/changeTimeRule'
import claTimeCalendar from '@/components/sc/claTime/claTimeCalendar' import claTimeCalendar from '@/components/sc/claTime/claTimeCalendar'
import { listRule, delRule } from '@/api/school/sc/cla/claTimeRule' import { listRule, delRule } from '@/api/school/sc/cla/claTimeRule'
import {select as teacherSelect} from "@/api/school/system/staff";
export default { export default {
name: 'Rule', name: 'Rule',
components: { components: {
@ -205,6 +221,7 @@ export default {
filterHoliday: undefined, filterHoliday: undefined,
claDate: undefined claDate: undefined
}, },
teacherOptions:[],
activeTab: 'table' activeTab: 'table'
} }
}, },
@ -229,8 +246,14 @@ export default {
this.getDictListByDictType('week_day').then(response => { this.getDictListByDictType('week_day').then(response => {
this.weekDayOptions = response.data this.weekDayOptions = response.data
}) })
this.getTeacherOptions()
}, },
methods: { methods: {
getTeacherOptions() {
teacherSelect().then(response => {
this.teacherOptions = response.data
})
},
getList() { getList() {
this.loading = true this.loading = true
listRule(this.queryParams).then(response => { listRule(this.queryParams).then(response => {
@ -269,7 +292,7 @@ export default {
handleUpdate(row) { handleUpdate(row) {
this.$refs['changeTimeRule'].reset() this.$refs['changeTimeRule'].reset()
this.$refs['changeTimeRule'].open = true this.$refs['changeTimeRule'].open = true
this.$refs['changeTimeRule'].openUpdateByOldInfo(row.ruleId || this.ids) this.$refs['changeTimeRule'].loadInfo(row.ruleId || this.ids)
}, },
/** 删除按钮操作 */ /** 删除按钮操作 */
handleDelete(row) { handleDelete(row) {

@ -38,9 +38,9 @@
> >
<el-option <el-option
v-for="teacher in teacherOptions" v-for="teacher in teacherOptions"
:key="teacher.staffId" :key="teacher.userId"
:label="teacher.staffName" :label="teacher.nickName"
:value="teacher.staffId" :value="teacher.userId"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
@ -120,7 +120,7 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" prop="courseName" label="课程" show-overflow-tooltip /> <el-table-column align="center" prop="courseName" label="课程" show-overflow-tooltip />
<el-table-column align="center" width="110" prop="staffName" label="任课教师" /> <el-table-column align="center" width="110" prop="teacherName" label="任课教师" />
<el-table-column align="center" prop="capacity" label="人数"> <el-table-column align="center" prop="capacity" label="人数">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ scope.row.studentCnt }}/{{ scope.row.capacity }}</span> <span>{{ scope.row.studentCnt }}/{{ scope.row.capacity }}</span>

@ -235,7 +235,7 @@
</template> </template>
<script> <script>
import { listCourse, getCourse, delCourse, changeCourseSale, exportCourse } from '@/api/school/sc/course' import {changeCourseSale, delCourse, exportCourse, getCourse, listCourse} from '@/api/school/sc/course'
import addCourseComponents from '@/components/sc/course/addCourse' import addCourseComponents from '@/components/sc/course/addCourse'
import uploadImportExcel from '@/components/tool/impt/uploadImportExcel' import uploadImportExcel from '@/components/tool/impt/uploadImportExcel'
import {select as courseTypeSelect} from '@/api/school/sc/course/courseType' import {select as courseTypeSelect} from '@/api/school/sc/course/courseType'
@ -351,6 +351,9 @@ export default {
handleUpdate(row) { handleUpdate(row) {
getCourse(row.courseId || this.ids).then(response => { getCourse(row.courseId || this.ids).then(response => {
this.$refs.addCourseComponents.init() this.$refs.addCourseComponents.init()
response.data.partCampus=response.data.partCampus?.map(item => {
return parseInt(item)
})
this.$refs.addCourseComponents.form = response.data this.$refs.addCourseComponents.form = response.data
this.$refs.addCourseComponents.open = true this.$refs.addCourseComponents.open = true
this.$refs.addCourseComponents.title = '修改课程信息' this.$refs.addCourseComponents.title = '修改课程信息'

Loading…
Cancel
Save