Commit 16118b10 authored by zhengke's avatar zhengke

修改

parent a5551d55
...@@ -172,3 +172,16 @@ export function GetReserveClassPage(data) { ...@@ -172,3 +172,16 @@ export function GetReserveClassPage(data) {
}) })
} }
/**
* 设置约课信息
* @param {JSON参数} data
*/
export function SetVisitorReserve(data) {
return request({
url: '/VisitorReserve/SetVisitorReserve',
method: 'post',
data
})
}
...@@ -24,7 +24,7 @@ ...@@ -24,7 +24,7 @@
<div style="margin-bottom:20px;"> <div style="margin-bottom:20px;">
<div class="Appoint_Line"></div>预约申请 <div class="Appoint_Line"></div>预约申请
</div> </div>
<q-input filled v-model="addMsg.ClassDate" class="col-6 q-pb-lg" mask="date" label="预约日期"> <q-input filled v-model="addMsg.ClassDate" class="col-6 q-pb-lg" :rules="[val => !!val || '请选择预约日期']" ref="ClassDate" mask="date" label="预约日期">
<template v-slot:append> <template v-slot:append>
<q-icon name="event" class="cursor-pointer"> <q-icon name="event" class="cursor-pointer">
<q-popup-proxy ref="qDateProxy1" transition-show="scale" transition-hide="scale"> <q-popup-proxy ref="qDateProxy1" transition-show="scale" transition-hide="scale">
...@@ -36,28 +36,25 @@ ...@@ -36,28 +36,25 @@
<div class="Sysuser_Date"> <div class="Sysuser_Date">
<q-field filled class="q-pb-lg"> <q-field filled class="q-pb-lg">
  <template v-slot:control>   <template v-slot:control>
<el-time-select v-model="addMsg.ClassTime" style="width:100%" :picker-options="{ <el-time-select v-model="addMsg.ClassTime" ref="ClassTime" style="width:100%" :picker-options="{
start: '00:00', start: '09:00',
step: '00:15', step: '00:15',
end: '23:59' end: '21:00'
}" placeholder="预约时间"> }" placeholder="预约时间">
</el-time-select> </el-time-select>
</template> </template>
</q-field> </q-field>
</div> </div>
<q-input v-model="addMsg.ClassContent" class="q-pb-lg" filled type="textarea" placeholder="主讲内容" /> <q-input v-model="addMsg.ClassContent" ref="ClassContent" class="q-pb-lg" :rules="[val => !!val || '请输入主讲内容']" filled type="textarea" placeholder="主讲内容" />
<div style="display:flex;align-items:center;"> <div style="display:flex;align-items:center;">
<q-select filled stack-label option-value="TId" style="width:90%" option-label="TeacherName" <q-select filled stack-label option-value="TId" style="width:90%" option-label="TeacherName"
v-model="addMsg.TeacherId" ref="TeacherId" :options="TeacherList" label="教师团队" :dense="false" v-model="addMsg.TeacherId" ref="TeacherId" :options="TeacherList" label="选择教师" :dense="false"
class="col-6 q-pb-lg" emit-value map-options multiple /> class="col-6 q-pb-lg" emit-value map-options />
<div style="margin:-20px 0 0 9px" @click="isShowTeacher=true">选择</div> <div style="margin:-20px 0 0 9px" @click="isShowTeacher=true">选择</div>
</div> </div>
<q-select filled stack-label option-value="RoomId" option-label="RoomName" v-model="addMsg.ClassRoomId" <q-select filled stack-label option-value="RoomId" option-label="RoomName" v-model="addMsg.ClassRoomId"
ref="ClassRoomId" :options="ClassRoomList" label="关联教室" :dense="false" class="col-6 q-pb-lg" emit-value ref="ClassRoomId" :options="ClassRoomList" label="关联教室" :dense="false" class="col-6 q-pb-lg" emit-value
map-options /> map-options />
<!-- <q-select filled stack-label option-value="Id" option-label="Name" v-model="addMsg.Visitor_Id" ref="customer"
:options="customerList" label="客户" :dense="false" class="col-6 q-pb-lg" emit-value map-options />
<q-input v-model="addMsg.remark" class="q-pb-lg" filled type="textarea" placeholder="备注" /> -->
</div> </div>
<q-card-actions align="right" class="bg-white"> <q-card-actions align="right" class="bg-white">
<q-btn label="取消" flat color="grey-10" size="sm" style="font-weight:400 !important" @click="closeAppointForm" /> <q-btn label="取消" flat color="grey-10" size="sm" style="font-weight:400 !important" @click="closeAppointForm" />
...@@ -69,7 +66,7 @@ ...@@ -69,7 +66,7 @@
style="height:40px !important;border-top-left-radius: 4px !important;border-bottom-left-radius: 4px !important;"> style="height:40px !important;border-top-left-radius: 4px !important;border-bottom-left-radius: 4px !important;">
<q-icon name="iconfont icon-jujue1" size="26px" /> <q-icon name="iconfont icon-jujue1" size="26px" />
</div> </div>
<audition-form v-if="isShowTeacher" @close="closeAuditForm"></audition-form> <audition-form v-if="isShowTeacher" @close="closeAuditForm" @getchildInfo="getchildInfo"></audition-form>
</q-dialog> </q-dialog>
</template> </template>
...@@ -78,6 +75,9 @@ ...@@ -78,6 +75,9 @@
getTeacherDropDownList, getTeacherDropDownList,
queryClassRoomList queryClassRoomList
} from "../../api/school/index"; } from "../../api/school/index";
import {
SetVisitorReserve
} from "../../api/scheduling/schedu";
import auditionForm from '../schedul/audition-form' import auditionForm from '../schedul/audition-form'
export default { export default {
props: { props: {
...@@ -155,7 +155,33 @@ ...@@ -155,7 +155,33 @@
if(this.saveObj){ if(this.saveObj){
this.addMsg.Visitor_Id = this.saveObj.Id; this.addMsg.Visitor_Id = this.saveObj.Id;
} }
console.log(this.addMsg,'addMsg');
this.$refs.ClassDate.validate();
this.$refs.ClassContent.validate();
if (!this.$refs.ClassDate.hasError && !this.$refs.ClassContent.hasError){
SetVisitorReserve(this.addMsg).then(res => {
if (res.Code == 1) {
this.$q.notify({
icon: 'iconfont icon-chenggong',
color: 'accent',
timeout: 2000,
message: '数据保存成功!',
position: 'top'
})
this.$emit('success');
this.closeAppointForm();
}
})
}
},
//子组件选中传值
getchildInfo(obj){
console.log(obj,'来了');
this.addMsg.TeacherId = obj.TeacherId;
this.addMsg.ClassRoomId = obj.ClassRoomId;
this.addMsg.ReserveClassId = obj.ReserveClassId;
} }
} }
} }
......
...@@ -8,70 +8,79 @@ ...@@ -8,70 +8,79 @@
<div class="col-2 q-table__title">人员信息</div> <div class="col-2 q-table__title">人员信息</div>
<q-space /> <q-space />
<div class="page-option"> <div class="page-option">
<q-btn color="accent" size="sm" class="q-mr-md" label="试听预约" /> <q-btn color="accent" size="sm" class="q-mr-md" label="预约班级信息" />
</div> </div>
</template> </template>
<template v-slot:body-cell-Id="props"> <template v-slot:body-cell-Id="props">
<q-td :props="props"> <q-td :props="props">
<q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" label="报入" /> <q-btn flat size="xs" icon="edit" color="accent" @click="getStuInfo(props.row)" style="font-weight:400" label="报入" />
</q-td> </q-td>
</template> </template>
<!-- <template v-slot:bottom> <template v-slot:bottom>
<q-pagination class="full-width justify-end" v-model="msg.pageIndex" color="primary" :max="pageCount" <q-pagination class="full-width justify-end" v-model="msg.pageIndex" color="primary" :max="PageCount"
:input="true" @input="changePage" /> :input="true" @input="changePage" />
</template> --> </template>
</q-table> </q-table>
</q-card-section> </q-card-section>
<q-separator /> <q-separator />
<q-card-actions align="right" class="bg-white"> <q-card-actions align="right" class="bg-white">
<q-btn label="取消" flat color="grey-10" style="font-weight:400 !important" @click="closeSaveForm" /> <q-btn label="取消" flat color="grey-10" style="font-weight:400 !important" @click="closeSaveForm" />
<q-btn label="立即提交" color="accent q-px-md" style="font-weight:400 !important" @click="savePlan" />
</q-card-actions> </q-card-actions>
</q-card> </q-card>
</q-dialog> </q-dialog>
</template> </template>
<script> <script>
import {
GetReserveClassPage
} from '../../api/scheduling/schedu'
export default { export default {
components: {}, components: {},
data() { data() {
return { return {
persistent: true, persistent: true,
loading: false, loading: false,
msg: {
pageIndex:1,
pageSize:10,
StartClassDate:''
},
PageCount:0,
columns: [{ columns: [{
name: 'Teacher', name: 'TeacherName',
label: '老师', label: '老师',
field: 'Teacher', field: 'TeacherName',
align: 'left' align: 'left'
}, },
{ {
name: 'Time', name: 'ClassDateStr',
field: 'Time', field: 'ClassDateStr',
label: '时间', label: '日期',
align: 'left', align: 'left',
}, },
{ {
name: 'date', name: 'ClassTime',
field: 'date', field: 'ClassTime',
label: '日期', label: '时间',
align: 'left' align: 'left'
}, },
{ {
name: 'classroom', name: 'RoomName',
label: '教室', label: '教室',
field: 'classroom', field: 'RoomName',
align: 'left' align: 'left'
}, },
{ {
name: 'peopleNum', name: 'RoomNum',
label: '人数', label: '人数',
field: 'peopleNum', field: 'RoomNum',
align: 'left' align: 'left'
}, },
{ {
name: 'content', name: 'ClassContent',
label: '主讲内容', label: '主讲内容',
field: 'content', field: 'ClassContent',
align: 'left' align: 'left'
}, },
{ {
...@@ -79,18 +88,49 @@ ...@@ -79,18 +88,49 @@
label: '操作', label: '操作',
} }
], ],
dataList:[] dataList:[],
StuObj:{}
} }
}, },
created() {}, created() {},
mounted() {}, mounted() {
var day = new Date();
this.msg.StartClassDate = day.getFullYear()+"-" + (day.getMonth()+1) + "-" + day.getDate();
this.getList();
},
methods: { methods: {
closeSaveForm() { closeSaveForm() {
this.$emit('close') this.$emit('close')
this.persistent = false this.persistent = false
}, },
savePlan() { //重新查询
resetSearch() {
this.msg.pageIndex = 1;
this.getList();
},
changePage(val) {
this.msg.pageIndex = val;
this.getList()
},
//获取课程系列分页列表
getList() {
GetReserveClassPage(this.msg).then(res => {
console.log(res,'数据');
if(res.Code==1){
this.dataList = res.Data.PageData;
this.PageCount = res.Data.PageCount;
}
})
},
//点击报入
getStuInfo(item){
if(item){
this.StuObj.ClassRoomId = item.ClassRoomId;
this.StuObj.TeacherId = item.TeacherId;
this.StuObj.ReserveClassId = item.ReserveClassId;
}
this.$emit('getchildInfo',this.StuObj);
this.closeSaveForm();
} }
}, },
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment