This commit is contained in:
PQZ 2025-02-08 14:50:36 +08:00
parent 30649ec38a
commit 6c473f67d3

View File

@ -1,7 +1,7 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<!-- 对话框(添加 / 修改) --> <!-- 对话框(添加 / 修改) -->
<el-dialog :title="dialogTitle" :visible.sync="dialogVisible" width="45%" v-dialogDrag append-to-body> <el-dialog :title="dialogTitle" :visible.sync="dialogVisible" width="50%" v-dialogDrag append-to-body>
<el-form ref="formRef" :model="formData" :rules="formRules" v-loading="formLoading" label-width="100px"> <el-form ref="formRef" :model="formData" :rules="formRules" v-loading="formLoading" label-width="100px">
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
@ -32,7 +32,19 @@
<el-input-number v-model="formData.price" placeholder="请输入价格" :precision="2" :step="0.1" ></el-input-number> <el-input-number v-model="formData.price" placeholder="请输入价格" :precision="2" :step="0.1" ></el-input-number>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="订金" prop="reserveMoney">
<el-input-number v-model="formData.reserveMoney" placeholder="请输入订金" :precision="2" :step="0.1" ></el-input-number>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="优惠" prop="favour">
<el-input-number v-model="formData.favour" placeholder="请输入订金" :precision="2" :step="0.1" :max="1"></el-input-number>
</el-form-item>
</el-col>
</el-row> </el-row>
<el-row> <el-row>
@ -59,15 +71,12 @@
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="12"> <el-col>
<el-form-item label="订金" prop="reserveMoney"> <el-form-item label="教练">
<el-input-number v-model="formData.reserveMoney" placeholder="请输入订金" :precision="2" :step="0.1" ></el-input-number> <el-button size="small" type="primary" @click="openCoachDraw">选择</el-button>
</el-form-item> <span v-if="formData.coachListText !== ''">{{formData.coachListText}}</span>
</el-col>
<el-col :span="12">
<el-form-item label="优惠" prop="favour">
<el-input-number v-model="formData.favour" placeholder="请输入订金" :precision="2" :step="0.1" :max="1"></el-input-number>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -92,12 +101,32 @@
<el-button type="primary" @click="submitForm" :disabled="formLoading"> </el-button> <el-button type="primary" @click="submitForm" :disabled="formLoading"> </el-button>
<el-button @click="dialogVisible = false"> </el-button> <el-button @click="dialogVisible = false"> </el-button>
</div> </div>
</el-dialog> </el-dialog>
<el-drawer
title="选择教练"
:visible.sync="drawerOpen"
:before-close="handleClose">
<el-row>
<el-col v-for="(item,index) in initCoachList" :span="8">
<el-card >
<div slot="header" class="clearfix">
<span>{{item.name}}</span>
</div>
<el-checkbox-group v-model="item.checkedSubject" @change="handleCheckedChange($event,index)">
<el-checkbox v-for="subject in subjectList" :label="subject" :key="subject">科目{{subject}}</el-checkbox>
</el-checkbox-group>
</el-card>
</el-col>
</el-row>
</el-drawer>
</div> </div>
</template> </template>
<script> <script>
import * as DlDriveSchoolCourseApi from '@/views/drivingSchool/schoolCourse/courseApi'; import * as DlDriveSchoolCourseApi from '@/views/drivingSchool/schoolCourse/courseApi';
import {listCoach} from "../../drivingSchoolCar/api/car";
export default { export default {
name: "DlDriveSchoolCourseForm", name: "DlDriveSchoolCourseForm",
components: {}, components: {},
@ -105,10 +134,12 @@ export default {
return { return {
// //
dialogTitle: "", dialogTitle: "",
drawerOpen: false,
// //
dialogVisible: false, dialogVisible: false,
// 12 // 12
formLoading: false, formLoading: false,
chooed:[],
// //
formData: { formData: {
tittle: undefined, tittle: undefined,
@ -121,7 +152,12 @@ export default {
remark: undefined, remark: undefined,
reserveMoney: undefined, reserveMoney: undefined,
favour: undefined, favour: undefined,
coachList:[],
coachListText:'',
}, },
//
initCoachList:[],
subjectList:['1','2','3','4'],
// //
formRules: { formRules: {
type: [{ required: true, message: '驾证类型不能为空', trigger: 'blur' }], type: [{ required: true, message: '驾证类型不能为空', trigger: 'blur' }],
@ -138,6 +174,7 @@ export default {
async open(id) { async open(id) {
this.dialogVisible = true; this.dialogVisible = true;
this.reset(); this.reset();
this.getCoachList()
// //
if (id) { if (id) {
this.formLoading = true; this.formLoading = true;
@ -151,6 +188,54 @@ export default {
} }
this.title = "新增驾校课程分类"; this.title = "新增驾校课程分类";
}, },
openCoachDraw(){
this.drawerOpen = true
},
handleClose(){
this.drawerOpen = false
this.formData.coachList = []
this.formData.coachListText = ''
const saveCoachList = []
let coachText = ''
this.initCoachList.map(item => {
if (item.checkedSubject.length > 0) {
coachText = coachText+item.name+'['
item.checkedSubject.forEach(subject => {
const coachInfo = {
coachId: item.id,
coachName: item.name,
coachPhone: item.phone,
subject: subject
};
coachText = coachText + '科目'+subject + ' '
saveCoachList.push(coachInfo);
});
coachText = coachText + ']'
}
});
this.formData.coachListText = coachText
console.log(coachText)
this.formData.coachList = saveCoachList
},
handleCheckedChange(e,index){
this.$forceUpdate()
},
/** 查询教练信息(不分页)*/
getCoachList(){
listCoach({}).then(res => {
this.initCoachList = res.data;
this.initCoachList.map((item,index) =>{
item.checkedSubject=[]
this.$set(this.initCoachList,index,item)
})
})
},
/** 提交按钮 */ /** 提交按钮 */
async submitForm() { async submitForm() {
// //