Commit 3e749111 authored by 黄奎's avatar 黄奎

页面修改

parent 6d5d8738
...@@ -32,9 +32,6 @@ ...@@ -32,9 +32,6 @@
data() { data() {
return { return {
persistent: true, persistent: true,
msg: {
},
baseObj: {}, baseObj: {},
} }
}, },
......
<template> <template>
<q-dialog <q-dialog v-model="persistent" full-height maximized position="right" persistent @hide="closeCutomer"
v-model="persistent" transition-show="slide-left">
full-height
maximized
position="right"
persistent
@hide="closeCutomer"
transition-show="slide-left"
>
<div class="customMain"> <div class="customMain">
<div class="custom_Top"> <div class="custom_Top">
<div class="custom_HLeft"> <div class="custom_HLeft">
<div class="nameplate_avatar"> <div class="nameplate_avatar">
<img <img v-if="baseObj.StuIcon" style="width:100%;height:100%;" :src="baseObj.StuIcon" alt />
v-if="baseObj.StuIcon"
style="width:100%;height:100%;"
:src="baseObj.StuIcon"
alt
/>
<div class="student_Name" v-else> <div class="student_Name" v-else>
<span v-if="baseObj.StuName">{{ <span v-if="baseObj.StuName">{{
baseObj.StuName.substring(0, 1) baseObj.StuName.substring(0, 1)
...@@ -28,51 +16,38 @@ ...@@ -28,51 +16,38 @@
<div class="F_16">{{ baseObj.StuName }}</div> <div class="F_16">{{ baseObj.StuName }}</div>
</div> </div>
</div> </div>
</div> </div>
<div class="custom_Bottom"> <div class="custom_Bottom">
<div class="detail-travel"> <div class="detail-travel">
<div class="detail_first"> <div class="detail_first">
<div class="operate_Content" style="flex:1;"> <div class="operate_Content" style="flex:1;">
<div class="detail_Main"> <div class="detail_Main">
<!-- 操作 --> <!-- 操作 -->
<template > <template>
<div class="operate_Content" style="margin-top:20px;"> <div class="operate_Content" style="margin-top:20px;">
<div style="display:flex;flex:1;flex-direction: column;overflow:hidden;">
<div style="display:flex;flex:1;flex-direction: column;overflow:hidden;"> <div class="TimeLineDiv">
<div class="TimeLineDiv"> <q-timeline color="primary">
<q-timeline color="primary"> <q-timeline-entry v-for="(tItem, tIndex) in dataList" :key="tIndex">
<q-timeline-entry v-for="(tItem, tIndex) in dataList" :key="tIndex"> <template v-slot:title>
<template v-slot:title> <div class="visit_Cont">
<div class="visit_Cont"> <div class="Log_Content" v-html="tItem.Remark"></div>
<div class="Log_Content" v-html="tItem.Remark"></div> </div>
</template>
</div> <template v-slot:subtitle>
</template> <div class="Time_TopList">
<template v-slot:subtitle> <div>{{ tItem.CreateTime }}</div>
<div class="Time_TopList"> <div>{{ tItem.CreateByName }}</div>
<div>{{ tItem.CreateTime }}</div> </div>
<div>{{ tItem.CreateByName }}</div> </template>
</div> </q-timeline-entry>
</template> </q-timeline>
</q-timeline-entry> </div>
</q-timeline> </div>
</div> <div style="margin-bottom:20px;">
</div> <q-pagination class="full-width justify-end" v-model="msg.pageIndex" color="primary"
<div style="margin-bottom:20px;"> :max="page_Count" input @input="changePage" />
<q-pagination </div>
class="full-width justify-end"
v-model="msg.pageIndex"
color="primary"
:max="page_Count"
input
@input="changePage"
/>
</div>
</div> </div>
</template> </template>
</div> </div>
...@@ -87,381 +62,361 @@ ...@@ -87,381 +62,361 @@
</q-dialog> </q-dialog>
</template> </template>
<script> <script>
import { queryEmployee } from "../../../api/users/user"; import {
import { ForwardStudent ,queryStudentFollowPage} from "../../../api/customerstudent/customerstudent"; queryEmployee
import { } from "../../../api/users/user";
getStudentInfo, //获取学员客户信息 import {
queryStuStageList //获取客户阶段列表 ForwardStudent,
} from "../../../api/school/index"; queryStudentFollowPage
import studentGenjin from "../student/student-genjin"; } from "../../../api/customerstudent/customerstudent";
import { SetStudentAssistBatch } from "../../../api/sale/sale"; import {
export default { getStudentInfo, //获取学员客户信息
meta: { queryStuStageList //获取客户阶段列表
title: "学员管理" } from "../../../api/school/index";
}, import studentGenjin from "../student/student-genjin";
components: { import {
studentGenjin, SetStudentAssistBatch
}, } from "../../../api/sale/sale";
props: { export default {
saveObj: { meta: {
type: Object, title: "学员管理"
default: null
}, },
isJudgeTrans: { components: {
type: Number, studentGenjin,
default: null
}, },
BelongType: { props: {
type: Number, saveObj: {
default: null type: Object,
} default: null
},
data() {
return {
persistent: true,
ckedTab: "1",
secondType: 1,
pushing: false,
msg: {
pageIndex: 1,
pageSize: 12,
StuId: 0
},
baseObj: {},
transMsg: {
StuId: 1,
CreateBy: ""
}, },
//员工列表
employeeList: [],
myEmployeeList: [],
isShowTrans: false,
customStateList: [],
stateId: 0,
stuData: {},
userInfo: {},
dataList: [],
page_Count:0,
};
},
created() {
this.msg.StuId = this.saveObj.StuId;
this.msg.STime = this.saveObj.STime?this.saveObj.STime:'';
this.msg.ETime = this.saveObj.ETime?this.saveObj.ETime:'';
this.getList()
this.userInfo = this.getLocalStorage();
},
mounted() {
this.baseObj = this.saveObj;
this.baseObj.IsHaveCurseManager = false;
if (this.baseObj.AssistList && this.baseObj.AssistList.length > 0) {
this.baseObj.AssistList.forEach(x => {
if (x.AssistType == 2) {
this.baseObj.IsHaveCurseManager = true;
}
});
}
},
methods: {
getList() {
queryStudentFollowPage(this.msg)
.then(res => {
if (res.Code == 1) {
this.dataList = res.Data.PageData;
this.page_Count = res.Data.PageCount;
}
})
.catch(() => {});
}, },
changePage(val) { data() {
this.msg.pageIndex = val; return {
this.getList(); persistent: true,
msg: {
pageIndex: 1,
pageSize: 12,
StuId: 0
},
baseObj: {},
userInfo: {},
dataList: [],
page_Count: 0,
};
}, },
created() {
this.msg.StuId = this.saveObj.StuId;
closeCutomer() { this.msg.STime = this.saveObj.STime ? this.saveObj.STime : '';
this.$emit("close"); this.msg.ETime = this.saveObj.ETime ? this.saveObj.ETime : '';
this.getList()
this.userInfo = this.getLocalStorage();
}, },
mounted() {
this.baseObj = this.saveObj;
} this.baseObj.IsHaveCurseManager = false;
}; if (this.baseObj.AssistList && this.baseObj.AssistList.length > 0) {
this.baseObj.AssistList.forEach(x => {
if (x.AssistType == 2) {
this.baseObj.IsHaveCurseManager = true;
}
});
}
},
methods: {
getList() {
queryStudentFollowPage(this.msg)
.then(res => {
if (res.Code == 1) {
this.dataList = res.Data.PageData;
this.page_Count = res.Data.PageCount;
}
})
.catch(() => {});
},
changePage(val) {
this.msg.pageIndex = val;
this.getList();
},
closeCutomer() {
this.$emit("close");
},
}
};
</script> </script>
<style scoped> <style scoped>
.custom_RModel { .custom_RModel {
width: 500px; width: 500px;
height: 100%; height: 100%;
} }
.customMain { .customMain {
width: 600px !important; width: 600px !important;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
height: 100 vh; height: 100 vh;
padding: 15px 17px 0 17px; padding: 15px 17px 0 17px;
background-color: #f4f4f6; background-color: #f4f4f6;
} }
.custom_Top { .custom_Top {
width: 100%; width: 100%;
padding: 22px; padding: 22px;
background: #fff; background: #fff;
border-radius: 8px; border-radius: 8px;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
} }
.custom_HLeft { .custom_HLeft {
display: flex; display: flex;
} }
.nameplate_avatar { .nameplate_avatar {
width: 60px; width: 60px;
height: 60px; height: 60px;
flex-shrink: 0; flex-shrink: 0;
margin-right: 14px; margin-right: 14px;
border-radius: 5px; border-radius: 5px;
overflow: hidden; overflow: hidden;
} }
.F_16 { .F_16 {
font-size: 16px; font-size: 16px;
} }
.Name_List { .Name_List {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
justify-content: space-around; justify-content: space-around;
overflow: hidden; overflow: hidden;
} }
.wechat_Name { .wechat_Name {
color: #9999a8; color: #9999a8;
display: flex; display: flex;
font-size: 14px; font-size: 14px;
} }
.custom_Bottom { .custom_Bottom {
margin-top: 17px; margin-top: 17px;
flex: 1; flex: 1;
display: flex; display: flex;
margin-top: 17px; margin-top: 17px;
overflow: hidden; overflow: hidden;
} }
.detail-info { .detail-info {
flex-shrink: 0; flex-shrink: 0;
box-sizing: border-box; box-sizing: border-box;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
width: 350px; width: 350px;
height: 100%; height: 100%;
padding: 28px 0; padding: 28px 0;
margin-right: 13px; margin-right: 13px;
background: #fff; background: #fff;
border-radius: 8px 8px 0 0; border-radius: 8px 8px 0 0;
overflow: auto; overflow: auto;
} }
.detail-info::-webkit-scrollbar { .detail-info::-webkit-scrollbar {
display: none; display: none;
} }
.detail-travel { .detail-travel {
width: 100%; width: 100%;
flex-grow: 1; flex-grow: 1;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
padding-top: 28px; padding-top: 28px;
background: #fff; background: #fff;
border-radius: 8px 8px 0 0; border-radius: 8px 8px 0 0;
overflow: hidden; overflow: hidden;
} }
.edit_bar { .edit_bar {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
padding: 12px 22px; padding: 12px 22px;
} }
.edit_info_wrap { .edit_info_wrap {
padding: 0 22px 12px; padding: 0 22px 12px;
} }
.custom_Line { .custom_Line {
width: calc(100% - 44px); width: calc(100% - 44px);
margin: 16px 22px; margin: 16px 22px;
border-bottom: 1px solid #d7d7d7; border-bottom: 1px solid #d7d7d7;
} }
.custom_Edit { .custom_Edit {
display: flex; display: flex;
justify-content: center; justify-content: center;
align-items: center; align-items: center;
width: 78px; width: 78px;
height: 26px; height: 26px;
margin-right: 3px; margin-right: 3px;
border: 1px dashed #858598; border: 1px dashed #858598;
border-radius: 4px; border-radius: 4px;
font-size: 12px; font-size: 12px;
cursor: pointer; cursor: pointer;
} }
.tripTypeContent { .tripTypeContent {
display: flex; display: flex;
overflow-x: auto; overflow-x: auto;
white-space: nowrap; white-space: nowrap;
} }
.StuCkedType { .StuCkedType {
color: #3470ff; color: #3470ff;
font-weight: 700; font-weight: 700;
} }
.tripTypeContent div { .tripTypeContent div {
margin-right: 20px; margin-right: 20px;
cursor: pointer; cursor: pointer;
} }
.q-timeline__title { .q-timeline__title {
margin-bottom: 5px; margin-bottom: 5px;
} }
.customUpdateTime { .customUpdateTime {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
font-size: 14px; font-size: 14px;
color: #9696a6; color: #9696a6;
} }
.q-timeline__subtitle { .q-timeline__subtitle {
opacity: 1; opacity: 1;
font-weight: normal; font-weight: normal;
} }
.follow_Component { .follow_Component {
padding: 0 22px; padding: 0 22px;
margin-top: 10px; margin-top: 10px;
width: 100%; width: 100%;
background-color: #f6f6f6; background-color: #f6f6f6;
border-radius: 5px; border-radius: 5px;
} }
.detail_first { .detail_first {
margin: 0 22px; margin: 0 22px;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
height: 100%; height: 100%;
} }
.detail_Main { .detail_Main {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
width: 100%; width: 100%;
height: 100%; height: 100%;
} }
.student_Name { .student_Name {
width: 100%; width: 100%;
height: 100%; height: 100%;
background: #004d40; background: #004d40;
color: #fff; color: #fff;
text-align: center; text-align: center;
line-height: 60px; line-height: 60px;
font-size: 20px; font-size: 20px;
} }
.TimeLineDiv { .TimeLineDiv {
height: 620px; height: 620px;
flex: 1; flex: 1;
height: 100%; height: 100%;
padding-right: 20px; padding-right: 20px;
} }
.Time_TopList { .Time_TopList {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
} }
.visit_Cont { .visit_Cont {
font-size: 14px; font-size: 14px;
} }
.visit_delete { .visit_delete {
font-size: 14px; font-size: 14px;
cursor: pointer; cursor: pointer;
width: 30px; width: 30px;
} }
.operate_Content { .operate_Content {
overflow: auto; overflow: auto;
/* padding-right: 20px; */ /* padding-right: 20px; */
} }
.operate_Content::-webkit-scrollbar { .operate_Content::-webkit-scrollbar {
width: 6px; width: 6px;
height: 8px; height: 8px;
} }
.operate_Content::-webkit-scrollbar-thumb { .operate_Content::-webkit-scrollbar-thumb {
border-radius: 4px; border-radius: 4px;
-webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2); -webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
background: #c9c9c9; background: #c9c9c9;
} }
.operate_Content::-webkit-scrollbar-thumb { .operate_Content::-webkit-scrollbar-thumb {
-webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2); -webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
border-radius: 4px; border-radius: 4px;
background: #ededed; background: #ededed;
} }
.Log_Content { .Log_Content {
padding: 10px; padding: 10px;
border-radius: 5px; border-radius: 5px;
background-color: #f4f4f6; background-color: #f4f4f6;
color: #818194; color: #818194;
line-height: 2; line-height: 2;
margin-top: 10px; margin-top: 10px;
word-break: break-all; word-break: break-all;
} }
.stu_ComFeed { .stu_ComFeed {
color: #3470ff; color: #3470ff;
cursor: pointer; cursor: pointer;
margin-left: 20px; margin-left: 20px;
} }
.StuCom_Remark { .StuCom_Remark {
display: flex; display: flex;
} }
.StuCom_Inner { .StuCom_Inner {
width: 100%; width: 100%;
} }
.StuCom_Left { .StuCom_Left {
flex-shrink: 0; flex-shrink: 0;
width: 57px; width: 57px;
text-align-last: justify; text-align-last: justify;
} }
.Stu_OrderId { .Stu_OrderId {
color: #2961fe; color: #2961fe;
font-weight: bold; font-weight: bold;
text-decoration: underline; text-decoration: underline;
cursor: pointer; cursor: pointer;
} }
.Stu_HtLeft { .Stu_HtLeft {
width: 57px; width: 57px;
display: inline-block; display: inline-block;
text-align-last: justify; text-align-last: justify;
} }
.fullscreen { .fullscreen {
z-index: 3000; z-index: 3000;
} }
</style> </style>
\ No newline at end of file
...@@ -151,6 +151,7 @@ ...@@ -151,6 +151,7 @@
type: Object, type: Object,
default: null default: null
}, },
//是否显示转交
isJudgeTrans: { isJudgeTrans: {
type: Number, type: Number,
default: null default: null
...@@ -554,7 +555,6 @@ ...@@ -554,7 +555,6 @@
.operate_Content { .operate_Content {
overflow: auto; overflow: auto;
/* padding-right: 20px; */
} }
.operate_Content::-webkit-scrollbar { .operate_Content::-webkit-scrollbar {
......
<template> <template>
<div class="transfer-order"> <div class="transfer-order">
<q-dialog <q-dialog v-model="persistent" persistent content-class="bg-grey-1" transition-show="scale" transition-hide="scale"
v-model="persistent" @hide="$emit('close')">
persistent
content-class="bg-grey-1"
transition-show="scale"
transition-hide="scale"
@hide="$emit('close')"
>
<q-card style="width: 800px;max-width:800px;"> <q-card style="width: 800px;max-width:800px;">
<q-card-section class="row items-center q-pb-none"> <q-card-section class="row items-center q-pb-none">
<div class="text-h6">转订单</div> <div class="text-h6">转订单</div>
...@@ -24,57 +18,23 @@ ...@@ -24,57 +18,23 @@
<div class="page-search row items-center"> <div class="page-search row items-center">
<div class="col row wrap q-mr-lg q-col-gutter-md"> <div class="col row wrap q-mr-lg q-col-gutter-md">
<div class="col-3"> <div class="col-3">
<q-select <q-select @input="resetSearch" filled option-value="SId" option-label="SName"
@input="resetSearch" v-model="courseMsg.School_Id" :options="schoolList" emit-value map-options label="关联校区"
filled clearable />
option-value="SId"
option-label="SName"
v-model="courseMsg.School_Id"
:options="schoolList"
emit-value
map-options
label="关联校区"
clearable
/>
</div> </div>
<div class="col-3"> <div class="col-3">
<q-input <q-input @change="resetSearch" clearable filled v-model="courseMsg.ClassNo" label="班号"
@change="resetSearch" @clear="resetSearch" maxlength="20" />
clearable
filled
v-model="courseMsg.ClassNo"
label="班号"
@clear="resetSearch"
maxlength="20"
/>
</div> </div>
<div class="col-6"> <div class="col-6">
<q-input <q-input @change="resetSearch" clearable filled v-model="courseMsg.ClassName" label="班级名称"
@change="resetSearch" @clear="resetSearch" maxlength="20" />
clearable
filled
v-model="courseMsg.ClassName"
label="班级名称"
@clear="resetSearch"
maxlength="20"
/>
</div> </div>
<div class="col-6"> <div class="col-6">
<q-select <q-select @input="resetSearch" @filter="filterCourseFn" use-input filled option-value="CourseId"
@input="resetSearch" option-label="CourseName" v-model="courseMsg.CouseId" :options="myClassList" emit-value
@filter="filterCourseFn" map-options label="学习课程" clearable>
use-input
filled
option-value="CourseId"
option-label="CourseName"
v-model="courseMsg.CouseId"
:options="myClassList"
emit-value
map-options
label="学习课程"
clearable
>
<template v-slot:no-option> <template v-slot:no-option>
<q-item> <q-item>
<q-item-section class="text-grey"> <q-item-section class="text-grey">
...@@ -84,31 +44,15 @@ ...@@ -84,31 +44,15 @@
</template> </template>
</q-select> </q-select>
</div> </div>
<div class="col-6"> <div class="col-6">
<div class="col-3 Sysuser_Date"> <div class="col-3 Sysuser_Date">
<q-field filled> <q-field filled>
<template v-slot:control> <template v-slot:control>
<el-date-picker <el-date-picker v-model="courseMsg.StartTime" type="date" placeholder="开学日期" size="small"
v-model="courseMsg.StartTime" style="width:47%;" @change="resetSearch" clear-icon="iconfont icon-guanbi">
type="date" </el-date-picker>
placeholder="开学日期" <el-date-picker v-model="courseMsg.EndTime" type="date" placeholder="结束日期" size="small"
size="small" style="width:47%;" @change="resetSearch" clear-icon="iconfont icon-guanbi">
style="width:47%;"
@change="resetSearch"
clear-icon="iconfont icon-guanbi"
>
</el-date-picker
>
<el-date-picker
v-model="courseMsg.EndTime"
type="date"
placeholder="结束日期"
size="small"
style="width:47%;"
@change="resetSearch"
clear-icon="iconfont icon-guanbi"
>
</el-date-picker> </el-date-picker>
</template> </template>
</q-field> </q-field>
...@@ -116,60 +60,25 @@ ...@@ -116,60 +60,25 @@
</div> </div>
</div> </div>
</div> </div>
<Course <Course :dataList="courseData" @select="selectClass" :select="defaultCourse"></Course>
:dataList="courseData" <q-pagination class="full-width justify-end" v-model="courseMsg.pageIndex" color="primary"
@select="selectClass" :max="coursePageCount" :input="true" @input="changePage" />
:select="defaultCourse"
></Course>
<q-pagination
class="full-width justify-end"
v-model="courseMsg.pageIndex"
color="primary"
:max="coursePageCount"
:input="true"
@input="changePage"
/>
</template> </template>
<template v-if="mode == 2"> <template v-if="mode == 2">
<yueke @select="selectCourse" :select="defaultCourse"></yueke> <yueke @select="selectCourse" :select="defaultCourse"></yueke>
</template> </template>
</q-step> </q-step>
<q-step :name="3" title="确认" icon="settings" :done="step > 3"> <q-step :name="3" title="确认" icon="settings" :done="step > 3">
<orderForm <orderForm ref="orderForm" :mode="mode" :schoolList="schoolList" :save-obj="saveObj" :stuData="stuData"
ref="orderForm" :modityOrderType="1" @success="$emit('close')" @cancelloading="cancelloading"></orderForm>
:mode="mode"
:schoolList="schoolList"
:save-obj="saveObj"
:stuData="stuData"
:modityOrderType="1"
@success="$emit('close')"
@cancelloading="cancelloading"
></orderForm>
</q-step> </q-step>
</q-stepper> </q-stepper>
</q-card-section> </q-card-section>
<q-card-actions align="right" class="bg-white q-mx-md "> <q-card-actions align="right" class="bg-white q-mx-md ">
<q-btn <q-btn label="取消" flat color="grey-10" style="font-weight:400 !important" v-close-popup />
label="取消" <q-btn @click="$refs.stepper.previous()" color="primary" label="上一步" v-if="step > 1" />
flat
color="grey-10"
style="font-weight:400 !important"
v-close-popup
/>
<q-btn
@click="$refs.stepper.previous()"
color="primary"
label="上一步"
v-if="step > 1"
/>
<q-btn @click="next" color="primary" label="下一步" v-if="step < 3" /> <q-btn @click="next" color="primary" label="下一步" v-if="step < 3" />
<q-btn <q-btn label="保存" color="primary" :loading="loading1" @click="saveOrderForm" v-if="step == 3" />
label="保存"
color="primary"
:loading="loading1"
@click="saveOrderForm"
v-if="step == 3"
/>
</q-card-actions> </q-card-actions>
</q-card> </q-card>
</q-dialog> </q-dialog>
...@@ -177,306 +86,306 @@ ...@@ -177,306 +86,306 @@
</template> </template>
<script> <script>
import { import {
getClassPruductList, //获取日语培训列表 getClassPruductList, //获取日语培训列表
setClassOrder, //新增 修改订单 setClassOrder, //新增 修改订单
getOrderGuestRenewState getOrderGuestRenewState
} from "../../../api/sale/sale"; } from "../../../api/sale/sale";
import { import {
getSchoolDropdown, //获取校区列表 getSchoolDropdown, //获取校区列表
getTeacherDropDownList getTeacherDropDownList
} from "../../../api/school/index"; } from "../../../api/school/index";
import { import {
queryCourseDropdownList, queryCourseDropdownList,
getCourseSubject getCourseSubject
} from "../../../api/course/index"; } from "../../../api/course/index";
import Mode from "./transfer-order/tickMode"; import Mode from "./transfer-order/tickMode";
import Course from "./transfer-order/courselist"; import Course from "./transfer-order/courselist";
import orderForm from "./transfer-order/order-form"; import orderForm from "./transfer-order/order-form";
import yueke from "./transfer-order/yueke"; import yueke from "./transfer-order/yueke";
export default { export default {
props: { props: {
select: { select: {
type: Array, type: Array,
default: () => [] default: () => []
} }
},
components: {
Course,
Mode,
orderForm,
yueke
},
data() {
return {
persistent: true,
step: 1,
stuData: {}, //学生是否续费
OrderMsg: {
ClassId: 0, //班级编号
GuestNum: 0, //人数
B2CRatio: 0,
B2CReNewRatio: 0,
CustomerId: 0, //市场专员
Unit_Price: 0,
PreferPrice: 0,
OrderSource: 0,
SaleRemark: "",
Class_Price: 0, //单价
OrderId: 0,
OrderType: 0, //订单类型(1-班级课程订单,2-留学就业订单)
SourceId: 0, //来源编号
HelpEnterId: 0, //协助老师编号
GeneralOccupation: "", //一般同行
EduOccupation: "", //教育同行
IsLessPrice: 0, //是否少价 0 不少 1 少
LessPrice: 0, //少价金额
PerLessMoney: 0, //每人少价金额
OrderNature: 1, //订单性质
OldPreferPrice: 0, //原实际应收
IsChaBan: 0, //是否插班报入(1-是)
CourseId: "", //课程编号
StartClassHours: 0, //已上课时
EffectTime: "", //生效时间
UpOrderId: 0, //前置订单编号
JoinType: 1, //订单报入类型
DiscountMoney: 0, //优惠金额
PerDiscountMoney: 0 //每人优惠金额
},
courseMsg: {
pageIndex: 1,
pageSize: 8,
ClassName: "", //班级名称
StartTime: "", //开始时间
EndTime: "", //结束时间
School_Id: "", //关联校区
CouseId: 0, //课程id
Teacher_Id: 0, //教师id
Q_CanApply: "0", //是否可以报名 1是
JoinStartTime: "", //报名截止日期开始
JoinEndTime: "", //报名截止日期结束
ClassNo: "", //班号
CourseSubject: "" //所属科目
},
courseData: [], //课程列表
coursePageCount: 0, //课程页数
saveObj: {}, //所选课程
defaultCourse: [], //默认课程
//关联校区列表
schoolList: [],
ClassList: [], //关联课程下拉数据
myClassList: [],
allClassList: [],
loading1: false, //防止多次点击
mode: 1
};
},
mounted() {
let nowDay = new Date();
var year = nowDay.getFullYear(); //年
var month = nowDay.getMonth() + 1; //月
var day = nowDay.getDate(); //日
var currentDay = year + "-" + month + "-" + day;
this.courseMsg.StartTime = currentDay;
this.getOrderGuestRenewState();
this.getCourseList();
this.getSchool();
this.CourseList();
},
methods: {
getOrderGuestRenewState() {
const ids = this.select.map(e => e.StuId).toString();
getOrderGuestRenewState({
StuIds: ids
}).then(res => {
this.stuData = res.Data;
});
},
//获取课程分页列表
getCourseList() {
getClassPruductList(this.courseMsg).then(res => {
this.courseData = res.Data.PageData;
this.coursePageCount = res.Data.PageCount;
this.courseData.forEach(x => {
if (x.ClassStyle == 1) {
let weekList = [
//定义一个数组
{
id: 7,
select: false
},
{
id: 1,
select: false
},
{
id: 2,
select: false
},
{
id: 3,
select: false
},
{
id: 4,
select: false
},
{
id: 5,
select: false
},
{
id: 6,
select: false
}
];
weekList.forEach(j => {
x.ClassPlanList.forEach(z => {
if (j.id == z.WeekDay) {
j.select = true;
}
});
});
x.weeks = weekList;
} else if (x.ClassStyle == 2) {
let data = [];
for (let i = 0; i < 31; i++) {
let obj = {
name: i + 1,
select: false
};
x.ClassPlanList.forEach(j => {
if (j.WeekDay == i + 1) {
obj.select = true;
}
});
data.push(obj);
}
x.month = data;
}
});
});
}, },
// 课程翻页 components: {
changePage(val) { Course,
this.courseMsg.pageIndex = val; Mode,
this.getCourseList(); orderForm,
yueke
}, },
// 选择班级 data() {
selectClass(val) { return {
if (val.length > 0) { persistent: true,
this.saveObj = val[0]; step: 1,
this.saveObj.Unit_Price = this.saveObj.SellPrice; stuData: {}, //学生是否续费
this.defaultCourse = val; OrderMsg: {
}else{ ClassId: 0, //班级编号
this.saveObj = {}; GuestNum: 0, //人数
this.saveObj.Unit_Price = 0; B2CRatio: 0,
this.defaultCourse = []; B2CReNewRatio: 0,
} CustomerId: 0, //市场专员
Unit_Price: 0,
PreferPrice: 0,
OrderSource: 0,
SaleRemark: "",
Class_Price: 0, //单价
OrderId: 0,
OrderType: 0, //订单类型(1-班级课程订单,2-留学就业订单)
SourceId: 0, //来源编号
HelpEnterId: 0, //协助老师编号
GeneralOccupation: "", //一般同行
EduOccupation: "", //教育同行
IsLessPrice: 0, //是否少价 0 不少 1 少
LessPrice: 0, //少价金额
PerLessMoney: 0, //每人少价金额
OrderNature: 1, //订单性质
OldPreferPrice: 0, //原实际应收
IsChaBan: 0, //是否插班报入(1-是)
CourseId: "", //课程编号
StartClassHours: 0, //已上课时
EffectTime: "", //生效时间
UpOrderId: 0, //前置订单编号
JoinType: 1, //订单报入类型
DiscountMoney: 0, //优惠金额
PerDiscountMoney: 0 //每人优惠金额
},
courseMsg: {
pageIndex: 1,
pageSize: 8,
ClassName: "", //班级名称
StartTime: "", //开始时间
EndTime: "", //结束时间
School_Id: "", //关联校区
CouseId: 0, //课程id
Teacher_Id: 0, //教师id
Q_CanApply: "0", //是否可以报名 1是
JoinStartTime: "", //报名截止日期开始
JoinEndTime: "", //报名截止日期结束
ClassNo: "", //班号
CourseSubject: "" //所属科目
},
courseData: [], //课程列表
coursePageCount: 0, //课程页数
saveObj: {}, //所选课程
defaultCourse: [], //默认课程
//关联校区列表
schoolList: [],
ClassList: [], //关联课程下拉数据
myClassList: [],
allClassList: [],
loading1: false, //防止多次点击
mode: 1
};
}, },
// 选择课程 mounted() {
selectCourse(val) { let nowDay = new Date();
if (val.length > 0) { var year = nowDay.getFullYear(); //年
this.saveObj = val[0]; var month = nowDay.getMonth() + 1; //月
this.saveObj.Unit_Price = this.saveObj.SellPrice; var day = nowDay.getDate(); //日
this.defaultCourse = val; var currentDay = year + "-" + month + "-" + day;
}else{ this.courseMsg.StartTime = currentDay;
this.saveObj = {}; this.getOrderGuestRenewState();
this.saveObj.Unit_Price = 0; this.getCourseList();
this.defaultCourse = []; this.getSchool();
} this.CourseList();
}, },
next() { methods: {
if (this.step == 1 && this.mode <= 0) { getOrderGuestRenewState() {
this.$q.notify({ const ids = this.select.map(e => e.StuId).toString();
type: "negative", getOrderGuestRenewState({
position: "top", StuIds: ids
message: `请选择上课模式` }).then(res => {
this.stuData = res.Data;
}); });
return; },
} //获取课程分页列表
if (this.step == 2) { getCourseList() {
if ( getClassPruductList(this.courseMsg).then(res => {
this.mode == 1 && this.courseData = res.Data.PageData;
(!this.saveObj.ClassId || this.saveObj.ClassId == 0) this.coursePageCount = res.Data.PageCount;
) { this.courseData.forEach(x => {
this.$q.notify({ if (x.ClassStyle == 1) {
type: "negative", let weekList = [
position: "top", //定义一个数组
message: `请选择班级` {
id: 7,
select: false
},
{
id: 1,
select: false
},
{
id: 2,
select: false
},
{
id: 3,
select: false
},
{
id: 4,
select: false
},
{
id: 5,
select: false
},
{
id: 6,
select: false
}
];
weekList.forEach(j => {
x.ClassPlanList.forEach(z => {
if (j.id == z.WeekDay) {
j.select = true;
}
});
});
x.weeks = weekList;
} else if (x.ClassStyle == 2) {
let data = [];
for (let i = 0; i < 31; i++) {
let obj = {
name: i + 1,
select: false
};
x.ClassPlanList.forEach(j => {
if (j.WeekDay == i + 1) {
obj.select = true;
}
});
data.push(obj);
}
x.month = data;
}
}); });
return; });
},
// 课程翻页
changePage(val) {
this.courseMsg.pageIndex = val;
this.getCourseList();
},
// 选择班级
selectClass(val) {
if (val.length > 0) {
this.saveObj = val[0];
this.saveObj.Unit_Price = this.saveObj.SellPrice;
this.defaultCourse = val;
} else {
this.saveObj = {};
this.saveObj.Unit_Price = 0;
this.defaultCourse = [];
}
},
// 选择课程
selectCourse(val) {
if (val.length > 0) {
this.saveObj = val[0];
this.saveObj.Unit_Price = this.saveObj.SellPrice;
this.defaultCourse = val;
} else {
this.saveObj = {};
this.saveObj.Unit_Price = 0;
this.defaultCourse = [];
} }
if ( },
this.mode == 2 && next() {
(!this.saveObj.ClassId || this.saveObj.ClassId == 0) if (this.step == 1 && this.mode <= 0) {
) {
this.$q.notify({ this.$q.notify({
type: "negative", type: "negative",
position: "top", position: "top",
message: `请选择课程` message: `请选择上课模式`
}); });
return; return;
} }
} if (this.step == 2) {
this.$refs.stepper.next(); if (
}, this.mode == 1 &&
//获取校区列表 (!this.saveObj.ClassId || this.saveObj.ClassId == 0)
getSchool() { ) {
getSchoolDropdown({}).then(res => { this.$q.notify({
if (res.Code == 1) { type: "negative",
this.schoolList = res.Data; position: "top",
} message: `请选择班级`
}); });
}, return;
//获取课程 }
CourseList() { if (
queryCourseDropdownList({}).then(res => { this.mode == 2 &&
if (res.Code == 1) { (!this.saveObj.ClassId || this.saveObj.ClassId == 0)
this.ClassList = res.Data; ) {
this.ClassList.unshift({ this.$q.notify({
CourseId: 0, type: "negative",
CourseName: "不限" position: "top",
}); message: `请选择课程`
this.myClassList = this.ClassList; });
this.allClassList = res.Data; return;
} }
});
},
//课程筛选
filterCourseFn(val, update, abort) {
update(() => {
if (val === "") {
this.myClassList = JSON.parse(JSON.stringify(this.allClassList));
} else {
const needle = val.toLowerCase();
this.myClassList = this.allClassList.filter(
v => v.CourseName.toLowerCase().indexOf(needle) > -1
);
} }
}); this.$refs.stepper.next();
}, },
resetSearch() { //获取校区列表
this.courseMsg.pageIndex = 1; getSchool() {
this.getCourseList(); getSchoolDropdown({}).then(res => {
}, if (res.Code == 1) {
saveOrderForm() { this.schoolList = res.Data;
this.loading1 = true; }
this.$refs.orderForm.saveOrderInfo(); });
}, },
cancelloading() { //获取课程
this.loading1 = false; CourseList() {
queryCourseDropdownList({}).then(res => {
if (res.Code == 1) {
this.ClassList = res.Data;
this.ClassList.unshift({
CourseId: 0,
CourseName: "不限"
});
this.myClassList = this.ClassList;
this.allClassList = res.Data;
}
});
},
//课程筛选
filterCourseFn(val, update, abort) {
update(() => {
if (val === "") {
this.myClassList = JSON.parse(JSON.stringify(this.allClassList));
} else {
const needle = val.toLowerCase();
this.myClassList = this.allClassList.filter(
v => v.CourseName.toLowerCase().indexOf(needle) > -1
);
}
});
},
resetSearch() {
this.courseMsg.pageIndex = 1;
this.getCourseList();
},
saveOrderForm() {
this.loading1 = true;
this.$refs.orderForm.saveOrderInfo();
},
cancelloading() {
this.loading1 = false;
}
} }
} };
};
</script> </script>
<style scoped> <style scoped>
/deep/.el-input__inner { /deep/.el-input__inner {
background-color: transparent; background-color: transparent;
border: none; border: none;
} }
/deep/.q-stepper__step-inner { /deep/.q-stepper__step-inner {
padding: 0 24px; padding: 0 24px;
} }
</style> </style>
\ No newline at end of file
...@@ -881,7 +881,6 @@ ...@@ -881,7 +881,6 @@
if (res.Code == 1) { if (res.Code == 1) {
this.TransListData = res.Data; this.TransListData = res.Data;
this.MyTransListData = res.Data; this.MyTransListData = res.Data;
console.log(res,'数据');
} }
}); });
}, },
......
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