Commit 9d07ffe0 authored by 黄奎's avatar 黄奎

111

parent 4d653d94
<style lang="scss" scoped>
.login-box {
position: fixed;
left: 0;
top: 0;
right: 0;
bottom: 0;
background: #ffffff;
padding: 100rpx 40rpx 40rpx 40rpx;
}
.login-content {
margin-bottom: 40rpx;
}
.login-buttom {
margin-top: 120rpx;
border-radius: 40rpx;
}
.u-input {
border-radius: 0;
border: 0;
border-bottom: 1rpx solid #F2F2F2;
}
.classSetting-content {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 81rpx;
padding: 30rpx 20rpx 20rpx 20rpx;
}
.classSetting-title {
border-radius: 20rpx;
background: #ffffff;
padding: 25rpx 20rpx;
}
.coontent-title {
width: 100%;
}
.title-left {
color: #666666;
font-size: 28rpx;
flex-shrink: 0;
width: 69px;
text-align: right;
margin-right: 100rpx;
}
.title-left text {
color: red;
margin-left: 5rpx;
}
.title-right {
color: #282828;
flex-grow: 1;
flex-wrap: wrap;
font-size: 28rpx;
text-align: right;
}
.title-right.rightNum {
margin-right: 10rpx;
}
.classSetting-module {
border-radius: 20rpx;
background: #ffffff;
padding: 10rpx 20rpx;
}
.module-title {
padding: 15rpx 0;
border-bottom: 1rpx solid #F9F9F9;
}
.module-title:last-child {
border: 0;
}
.choose {
flex-grow: 1;
text-align: right;
margin-right: 10rpx;
}
.choose.active {
color: #D2D2D2;
}
.classSetting-footer {
position: fixed;
left: 0;
right: 0;
bottom: 0;
padding: 20rpx 20rpx;
background: #ffffff;
border-top: #ffffff;
box-shadow: 0px 6px 29px 0px rgba(76, 76, 76, 0.2);
}
.text-right {
text-align: right;
}
.footer-title {
display: inline-block;
border: 1rpx solid #138CFD;
background: #138CFD;
color: #ffffff;
/* margin-left: 30rpx; */
padding: 5rpx 50rpx;
border-radius: 30rpx;
}
.footer-title.Cancel {
background: #ffffff;
color: #138CFD;
}
.footer-text {
flex: 1;
border: 1rpx solid #E9E9E9;
border-radius: 15rpx;
padding: 15rpx 0;
text-align: center;
}
.footer-text.right {
border: 1rpx solid #138CFD;
background: #138CFD;
color: #ffffff;
/* margin-left: 30rpx; */
}
.footer-text.right.active {
border: 1rpx solid rgba(19, 140, 253, .2);
background: rgba(19, 140, 253, .5);
}
.popup-title {
font-size: 30rpx;
text-align: center;
padding: 30rpx;
position: relative;
}
.popup-title.active {
color: #666666;
}
.popup-content {
flex-wrap: wrap;
padding: 0 20rpx;
}
.popup-text {
width: 300rpx;
padding: 10rpx 0;
border-radius: 12rpx;
background: #F8F8F8;
margin-bottom: 25rpx;
margin-right: 25rpx;
text-align: center;
}
.popup-text.active {
background: #E5F3FE;
color: #138CFD;
}
.popup-OuterFrame {
min-height: 500rpx;
}
.popup-add {
text-align: right;
padding: 20rpx;
position: absolute;
right: 0;
top: 10rpx;
}
.popup-list {
padding: 0 20rpx;
margin-bottom: 20rpx;
}
.popup-time {
background: #F8F8F8;
padding: 10rpx 20rpx;
border-radius: 5rpx;
flex: 1;
flex-shrink: 0;
}
.popup-time view:first-child {
font-size: 24rpx;
}
.popup-time:nth-child(2) {
margin-left: 10rpx;
margin-right: 10rpx;
}
.popup-time view {
flex-shrink: 0;
}
.popup-time text,
.popup-time input {
margin-left: 10rpx;
font-size: 26rpx;
}
.popup-time input {
width: 100rpx;
background: #ffffff;
padding: 0 10rpx;
border-radius: 5rpx;
}
.popup-time text.active {
color: #989898;
}
.time-h {
font-size: 22rpx;
color: #989898;
}
.popup-time-box {
padding: 20rpx;
border-top: 1rpx solid #F4F4F4;
color: #353535;
font-size: 28rpx;
}
.popup-time-box.active {
color: #989898;
}
.time-right.active {
color: #989898;
}
.time-right .num {
margin-right: 10rpx;
}
.popup-classroom {
padding: 20rpx;
border-top: 1rpx solid #F4F4F4;
}
.popup-classroom.active {
color: #138CFD;
}
.popup-footer {
padding: 20rpx;
border-top: 1rpx solid #F6F6F6;
}
</style>
<template>
<div>
</div>
<!--
<view class="classSetting-OuterFrame">
<view class="classSetting-content">
<scroll-view scroll-y="true" style="width:100%;height: 100%;">
<view class="classSetting-module" style="margin: 20rpx 0;">
<view class="coontent-title flex space-between">
<view class="title-left">试听成员</view>
<view class="title-right">
{{addMsg.VisitorName}}
</view>
</view>
<view class="coontent-title flex space-between" style="padding: 5px 0;">
<view class="title-left">试听需求</view>
<view class="title-right">
{{addMsg.Demand}}
</view>
</view>
<view class="coontent-title flex space-between">
<view class="title-left">试听时间</view>
<view class="title-right">
{{formatDate(addMsg.ReservationDate)}}
</view>
</view>
</view>
<view class="classSetting-module" style="margin: 20rpx 0;">
<view class="module-title flex space-between">
<view class="title-left">任课老师<text>*</text></view>
<view class="title-right flex space-between align-center" @click="dateSelection('6')">
<view class="choose" :class="{'active':!addMsg.TeacherName}">
{{addMsg.TeacherName?addMsg.TeacherName:'请选择'}}</view>
<uni-icons type="right" color="#CDCDCD" size="16" />
</view>
</view>
<view class="module-title flex space-between">
<view class="title-left">课程<text>*</text></view>
<view class="title-right flex space-between align-center" @click="dateSelection('9')">
<view class="choose" :class="{'active':!addMsg.LessonName}">{{addMsg.LessonName?addMsg.LessonName:'请选择'}}
</view>
<uni-icons type="right" color="#CDCDCD" size="16" />
</view>
</view>
<view class="module-title flex space-between">
<view class="title-left">上课教室<text>*</text></view>
<view class="title-right flex space-between align-center" @click="dateSelection('5')">
<view class="choose" :class="{'active':!addMsg.RoomName}">{{addMsg.RoomName?addMsg.RoomName:'请选择'}}</view>
<uni-icons type="right" color="#CDCDCD" size="16" />
</view>
</view>
<view class="module-title flex space-between">
<view class="title-left">上课日期<text>*</text></view>
<view class="title-right flex space-between align-center" @click.stop="dateSelection('1')">
<view class="choose" :class="{'active':!addMsg.ClassDate}">
{{addMsg.ClassDate ?addMsg.ClassDate:'请选择'}}
</view>
<uni-icons type="right" color="#CDCDCD" size="16" />
</view>
</view>
<view class="module-title flex space-between">
<view class="title-left">开始时间<text>*</text></view>
<view class="title-right flex space-between align-center" @click="dateSelection('7')">
<view class="choose" :class="{'active':!addMsg.ClassTime}">{{addMsg.ClassTime?addMsg.ClassTime:'请选择开始时间'}}
</view>
<uni-icons type="right" color="#CDCDCD" size="16" />
</view>
</view>
<view class="module-title flex space-between">
<view class="title-left">结束时间<text>*</text></view>
<view class="title-right flex space-between align-center" @click="dateSelection('8')">
<view class="choose" :class="{'active':!addMsg.EndTime}">{{addMsg.EndTime?addMsg.EndTime:'请选择结束时间'}}
</view>
<uni-icons type="right" color="#CDCDCD" size="16" />
</view>
</view>
</view>
</scroll-view>
</view>
<view class="classSetting-footer flex space-between">
<view></view>
<view v-if="loading" class="footer-text right" @click="save">立即提交</view>
<view v-else class="footer-text right active">立即提交</view>
</view>
<uni-datetime-picker ref="datetimePicker" type="date" :clear-icon="false" v-model="single" @maskClick="maskClick" />
<uni-popup ref="popupBottom" background-color="#fff" @change="changePopup">
<template v-if="singleType==5">
<view class="popup-title active">选择上课教室</view>
<view class="popup-OuterFrame">
<scroll-view scroll-y="true" style="width:100%;height: 500rpx;">
<view class="popup-classroom flex space-between" :class="{'active':item.checked}"
v-for="item in ClassRoomList" @click="clickClassroom(item,1)">
<text>{{item.RoomName}}</text>
<view class="list-right flex">
<uni-icons v-if="item.checked" type="checkmarkempty" color="#2889DD" size="16" />
</view>
</view>
</scroll-view>
</view>
</template>
<template v-if="singleType==6">
<view class="popup-title active">选择任课老师</view>
<view class="popup-OuterFrame">
<scroll-view scroll-y="true" style="width:100%;height: 500rpx;">
<view class="popup-classroom flex space-between" :class="{'active':item.checked}"
v-for="item in TeacherList" @click="clickClassroom(item,2)">
<text>{{item.TeacherName}}</text>
<view class="list-right flex">
<uni-icons v-if="item.checked" type="checkmarkempty" color="#2889DD" size="16" />
</view>
</view>
</scroll-view>
</view>
</template>
<template v-if="singleType==9">
<view class="popup-title active">选择课程</view>
<view class="popup-OuterFrame">
<scroll-view scroll-y="true" style="width:100%;height: 500rpx;">
<view class="popup-classroom flex space-between" :class="{'active':item.checked}" v-for="item in TrialList"
@click="clickClassroom(item,3)">
<text>{{item.LessonName}}</text>
<view class="list-right flex">
<uni-icons v-if="item.checked" type="checkmarkempty" color="#2889DD" size="16" />
</view>
</view>
</scroll-view>
</view>
</template>
</uni-popup>
<view class="login-box" v-show="popupShow">
<statusPrompt :isSuccessTitle="isSuccessTitle" :isSuccess="isSuccess"></statusPrompt>
</view>
<u-datetime-picker v-if="singleType==7" v-model="addMsg.ClassTime" :show="timeshow" @confirm='gettime'
@cancel='timeshow=false' mode="time" start="9:00" end="21:00"></u-datetime-picker>
<u-datetime-picker v-if="singleType==8" v-model="addMsg.EndTime" :show="timeshow" @confirm='gettime'
@cancel='timeshow=false' mode="time" start="9:00" end="21:00"></u-datetime-picker>
</view>
-->
</template>
<script>
// import {
// queryClassRoomList,
// setClassPlan,
// SetVisitorReserveClass,
// GetVisitorReserveById,
// GetTrialLessonList
// } from '@/api/classRollCall.js'
// import {
// getSchoolDropdown, //校区下拉
// queryCourseDropdownList, //课程下拉
// getClassDropDownList, //班级列表
// } from '@/api/student.js'
// import {
// getTeacherDropDownList
// } from '@/api/peer.js'
// import statusPrompt from '@/components/statusPrompt/index'
export default {
components: {
},
data() {
return {
title: '',
keywords: "",
status: "loadmore",
formData: {
age: ''
},
selectList: [{
name: '跳过节假日',
id: 1,
status: false
},
{
name: '检查上课冲突',
id: 2,
status: false
}
],
loading: true,
single: "", //日期
singleA: "", //开始日期
singleB: "", //结束日期
singleType: '', //存储按钮
ruleweek: '',
timeShow: false,
durationShow: false,
datetimesingle: "",
time: '',
duration: '',
timeType: '',
index: '',
EndTime: '',
classObj: null,
ClassRoomList: [],
TeacherList: [],
addMsg: {
Id: 0, //编号
Visitor_Id: 0, //访客编号
ReserveClassId: 0, //选中的班级编号
ClassDate: "", //预约日期
ClassTime: "9:00", //预约开始时间
EndTime: "21:00", //预约结束时间
TeacherId: 0, //教师编号
ClassRoomId: 0, //教室编号
ClassContent: "", //主讲内容
TrialLessonId: 0,
ReserveType: 0,
ClassPlanId: 0,
},
comChecked: {},
editUrl: false,
courseList: [],
timeshow: true,
Id: 0,
TrialList: [],
isSuccessTitle: '',
isSuccess: false,
popupShow: false,
}
},
onReady() {
},
onLoad(options) {
if (options.Id) {
this.Id = options.Id;
}
this.GetTeacherList()
this.getClassRoomList()
this.getCourseList()
this.GetTrialLesson()
},
onShow() {
if (this.Id) this.GetVisitorReserve()
},
computed: {},
mounted() {
},
methods: {
formatDate(value) {
if (value) {
const date = new Date(value);
return date.toLocaleDateString();
}
return value;
},
gettime(e) { //时间处理
if (this.singleType == '7') this.addMsg.ClassTime = e.value
if (this.singleType == '8') this.addMsg.EndTime = e.value
this.timeshow = false
this.$refs.popupBottom.close('bottom')
},
// 课程列表
getCourseList() {
queryCourseDropdownList({
IsQPrice: 1,
}).then((res) => {
if (res.Code == 1) {
this.courseList = res.Data;
var obj = {
CourseName: "请选择",
CourseId: 0,
};
this.courseList.unshift(obj);
}
});
},
// 选择老师 教室
clickClassroom(item, type) {
if (type == 1) {
this.ClassRoomList.forEach(i => {
return i.checked = false
})
this.addMsg.ClassRoomId = item.RoomId
this.addMsg.RoomName = item.RoomName
item.checked = !item.checked
}
if (type == 2) {
this.TeacherList.forEach(i => {
return i.checked = false
})
this.addMsg.TeacherId = item.TId
this.addMsg.TeacherName = item.TeacherName
item.checked = !item.checked
}
if (type == 3) {
this.TrialList.forEach(i => {
return i.checked = false
})
this.addMsg.TrialLessonId = item.Id
this.addMsg.LessonName = item.LessonName
item.checked = !item.checked
}
this.$refs.popupBottom.close('bottom')
},
// 获取日期
maskClick(e) {
let myDate = new Date();
let month
let data
if ((myDate.getMonth() + 1) < 10) {
month = '0' + (myDate.getMonth() + 1)
} else {
month = (myDate.getMonth() + 1)
}
if (myDate.getDate() < 10) {
data = '0' + myDate.getDate()
} else {
data = myDate.getDate()
}
let time = myDate.getFullYear() + '-' + month + '-' + data
if (e < time) {
uni.showToast({
title: '上课日期不能早于当前日期',
icon: 'none'
})
return
}
this.addMsg.ClassDate = e
},
// 关闭弹窗
changePopup() {
},
// 选择开始结束日期
dateSelection(type) {
this.singleType = type
if (type == '1') {
this.$refs.datetimePicker.show()
} else {
if (type == '6') {
this.TeacherList.forEach(item => {
if (item.TId === this.addMsg.TeacherId) {
item.checked = true
}
})
}
if (type == '7' || type == '8') {
this.timeshow = true
}
if (type == '9') {
this.TrialList.forEach(item => {
if (item.Id === this.addMsg.TrialLessonId) {
item.checked = true
}
})
}
if (type != '7' && type != '8') this.$refs.popupBottom.open('bottom')
}
},
// 保存
save() {
if (!this.addMsg.ClassDate) {
uni.showToast({
title: '请选择预约日期',
duration: 2000,
icon: "none",
});
return
}
if (!this.addMsg.ClassTime) {
uni.showToast({
title: '请选择开始时间',
duration: 2000,
icon: "none",
});
return
}
if (!this.addMsg.EndTime) {
uni.showToast({
title: '请选择结束时间',
duration: 2000,
icon: "none",
});
return
}
if (!this.addMsg.TeacherId) {
uni.showToast({
title: '请选择任课老师',
duration: 2000,
icon: "none",
});
return
}
if (!this.addMsg.TrialLessonId) {
uni.showToast({
title: '请选择课程',
duration: 2000,
icon: "none",
});
return
}
if (!this.addMsg.ClassRoomId) {
uni.showToast({
title: '请选择上课教室',
duration: 2000,
icon: "none",
});
return
}
this.loading = false
uni.showLoading()
SetVisitorReserveClass(this.addMsg).then(res => {
this.loading = true
this.popupShow = true
this.isSuccessTitle = '提交成功'
this.isSuccess = true
uni.hideLoading()
// uni.navigateTo({
// url:'/pages/classRollCall/rollCall?ClassId=' + this.addMsg.ClassId
// })
// uni.navigateBack({
// delta:this.editUrl?1:2
// })
}).catch(err => {
uni.showToast({
title: '提交失败,请稍后再试',
duration: 2000,
icon: "none",
});
this.loading = true
})
},
//获取教室下拉
getClassRoomList() {
queryClassRoomList({}).then(res => {
let addList = function (arr) {
arr.forEach(item => {
item.checked = false
});
};
addList(res.Data);
this.ClassRoomList = res.Data;
})
},
//获取教师下拉
GetTeacherList() {
getTeacherDropDownList({}).then(res => {
let addList = function (arr) {
arr.forEach(item => {
item.checked = false
});
};
addList(res.Data);
this.TeacherList = res.Data;
})
},
// 课程下拉
GetTrialLesson() {
uni.showLoading()
GetTrialLessonList({}).then(res => {
uni.hideLoading()
let addList = function (arr) {
arr.forEach(item => {
item.checked = false
});
};
addList(res.Data);
this.TrialList = res.Data;
})
},
GetVisitorReserve() {
uni.showLoading()
GetVisitorReserveById({
Id: this.Id
}).then(res => {
uni.hideLoading()
if (res.Data.length > 0) {
let Data = res.Data[0]
this.addMsg = {
Id: Data.Id, //编号
Visitor_Id: Data.Visitor_Id, //访客编号
ReserveClassId: Data.ReserveClassId, //选中的班级编号
ClassDate: Data.ClassDateStr, //预约日期
ClassTime: Data.ClassTime ? Data.ClassTime : '9:00', //预约开始时间
EndTime: Data.EndTime ? Data.EndTime : '12:00', //预约结束时间
TeacherId: Data.TeacherId, //教师编号
TeacherName: Data.TeacherName,
ClassRoomId: Data.ClassRoomId, //教室编号
RoomName: Data.RoomName,
ClassContent: Data.ClassContent, //主讲内容
TrialLessonId: Data.TrialLessonId,
LessonName: Data.LessonName,
ReserveType: Data.ReserveType,
ClassPlanId: Data.ClassPlanId,
VisitorName: Data.VisitorName,
Demand: Data.Demand,
ReservationDate: Data.ReservationDate,
}
this.ClassRoomList.forEach(i => {
console.log(i.RoomId, this.addMsg.ClassRoomId)
if (i.RoomId == this.addMsg.ClassRoomId) {
i.checked = true
}
})
this.TeacherList.forEach(i => {
console.log(i.TId, this.addMsg.TeacherId)
if (i.TId == this.addMsg.TeacherId) {
i.checked = true
}
})
this.TrialList.forEach(i => {
console.log(i.Id, this.addMsg.TrialLessonId)
if (i.Id == this.addMsg.TrialLessonId) {
i.checked = true
}
})
}
})
},
}
}
</script>
......@@ -2097,7 +2097,11 @@ const routes = [{
component: () =>
import("pages/koreaUpload.vue")
},
{
path: "/h5page/TrialClass", //韩国管 上传
component: () =>
import("pages/h5page/TrialClass.vue")
},
{
path: "/financial/financalDocument/PrintPage", //财务单据打印
......
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