Commit 1f9b468f authored by 黄奎's avatar 黄奎

样式调整

parent 9763c0ec
<template> <template>
<div class="page-content" <div class="page-content" :class="[$q.platform.is.desktop?'':'']">
:class="[$q.platform.is.desktop?'':'']">
<q-table v-if="$q.platform.is.desktop" :pagination="pageMsg" :loading="loading" no-data-label="暂无相关数据" flat <q-table v-if="$q.platform.is.desktop" :pagination="pageMsg" :loading="loading" no-data-label="暂无相关数据" flat
class="sticky-column-table sticky-right-column-table" separator="none" :data="data" :columns="columns" class="sticky-column-table sticky-right-column-table" separator="none" :data="data" :columns="columns"
:visible-columns="visibleColumns" row-key="name"> :visible-columns="visibleColumns" row-key="name">
<template v-slot:top> <template v-slot:top>
<div class="q-table__title" <div class="q-table__title" :class="[$q.platform.is.desktop?'col-2':'col-12']">试听开课管理</div>
:class="[$q.platform.is.desktop?'col-2':'col-12']">试听开课管理</div>
<q-space /> <q-space />
</template> </template>
<template v-slot:body-cell-ReservationDate="props"> <template v-slot:body-cell-ReservationDate="props">
<q-td> <q-td>
...@@ -41,12 +38,8 @@ ...@@ -41,12 +38,8 @@
</template> </template>
</q-table> </q-table>
<template v-if="$q.platform.is.mobile"> <template v-if="$q.platform.is.mobile">
<q-card <q-card class="light-shadow q-pa-md bg-grey-1 rounded-borders q-mb-md" flat v-for="(x, index) in data"
class="light-shadow q-pa-md bg-grey-1 rounded-borders q-mb-md" :key="index">
flat
v-for="(x, index) in data"
:key="index"
>
<div class="row justify-between"> <div class="row justify-between">
<div>学生:<span class="text-blue-5">{{x.StuName}}</span></div> <div>学生:<span class="text-blue-5">{{x.StuName}}</span></div>
<div>试听日期:<span class="text-blue-5">{{timeFormatSeconds(x.ReservationDate)}}</span></div> <div>试听日期:<span class="text-blue-5">{{timeFormatSeconds(x.ReservationDate)}}</span></div>
...@@ -67,8 +60,8 @@ ...@@ -67,8 +60,8 @@
</div> </div>
</div> </div>
<div class="row justify-end"> <div class="row justify-end">
<q-btn label="修改" color="primary" flat @click="editVisitor(x)"/> <q-btn label="修改" color="primary" flat @click="editVisitor(x)" />
<q-btn label="删除" color="red-6" flat @click="DeleteVisitorReserve(x.Id)"/> <q-btn label="删除" color="red-6" flat @click="DeleteVisitorReserve(x.Id)" />
</div> </div>
</q-card> </q-card>
</template> </template>
...@@ -103,8 +96,7 @@ ...@@ -103,8 +96,7 @@
}, },
data() { data() {
return { return {
columns: [ columns: [{
{
name: 'StuName', name: 'StuName',
label: '学生名称', label: '学生名称',
align: 'left', align: 'left',
...@@ -161,7 +153,7 @@ ...@@ -161,7 +153,7 @@
], ],
//表格可见列 //表格可见列
visibleColumns: [ visibleColumns: [
'StuName','ReservationDate', 'Demand', 'ClassDateStr', 'TeacherName', 'LessonName', 'RoomName', 'TeacherId' 'StuName', 'ReservationDate', 'Demand', 'ClassDateStr', 'TeacherName', 'LessonName', 'RoomName', 'TeacherId'
], //可见列 ], //可见列
reserveObj: {}, reserveObj: {},
isShowReserve: false, isShowReserve: false,
...@@ -181,10 +173,10 @@ ...@@ -181,10 +173,10 @@
}, },
methods: { methods: {
//获得年月日时分秒 //获得年月日时分秒
//传入日期//例:2020-10-27T14:36:23 //传入日期//例:2020-10-27T14:36:23
timeFormatSeconds(time,type) { timeFormatSeconds(time, type) {
let timeStr=""; let timeStr = "";
if(time==='0001-01-01T00:00:00'){ if (time === '0001-01-01T00:00:00') {
return timeStr; return timeStr;
} }
var d = time ? new Date(time) : new Date(); var d = time ? new Date(time) : new Date();
...@@ -193,19 +185,19 @@ ...@@ -193,19 +185,19 @@
var day = d.getDate(); var day = d.getDate();
if (month < 10) month = '0' + month; if (month < 10) month = '0' + month;
if (day < 10) day = '0' + day; if (day < 10) day = '0' + day;
if(type==2){ if (type == 2) {
var hours = d.getHours(); var hours = d.getHours();
var min = d.getMinutes(); var min = d.getMinutes();
var seconds = d.getSeconds(); var seconds = d.getSeconds();
if (hours < 0) hours = '0' + hours; if (hours < 0) hours = '0' + hours;
if (min < 10) min = '0' + min; if (min < 10) min = '0' + min;
if (seconds < 10) seconds = '0' + seconds; if (seconds < 10) seconds = '0' + seconds;
timeStr+= ' ' + hours + ':' + min + ':' + seconds; timeStr += ' ' + hours + ':' + min + ':' + seconds;
} }
timeStr=year + '-' + month + '-' + day +timeStr; timeStr = year + '-' + month + '-' + day + timeStr;
return timeStr; return timeStr;
}, },
//编辑试听 //编辑试听
editVisitor(obj) { editVisitor(obj) {
this.reserveObj = obj this.reserveObj = obj
...@@ -250,7 +242,9 @@ return timeStr; ...@@ -250,7 +242,9 @@ return timeStr;
} }
} }
</script> </script>
<style lang="sass"> <style lang="sass">
@import url('~assets/css/table.sass') @import url('~assets/css/table.sass')
</style> </style>
...@@ -82,11 +82,8 @@ ...@@ -82,11 +82,8 @@
<q-card-actions align="right" class="bg-white q-mx-md "> <q-card-actions align="right" class="bg-white q-mx-md ">
<q-btn label="取消" flat color="grey-10" style="font-weight:400 !important" v-close-popup /> <q-btn label="取消" 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="$refs.stepper.previous()" color="primary" label="上一步" v-if="step > 1" />
<!-- <template v-if="mode == 3 && step == 2">
<q-btn label="保存" color="primary" @click="saveCourseForm" /> <template>
</template>
<template v-else>-->
<template >
<q-btn @click="next" color="primary" label="下一步" v-if="step < 3" /> <q-btn @click="next" color="primary" label="下一步" v-if="step < 3" />
<q-btn label="保存" color="primary" :loading="loading1" @click="saveOrderForm" v-if="step == 3" /> <q-btn label="保存" color="primary" :loading="loading1" @click="saveOrderForm" v-if="step == 3" />
</template> </template>
...@@ -97,25 +94,24 @@ ...@@ -97,25 +94,24 @@
</template> </template>
<script> <script>
import { import {
getClassPruductList, //获取日语培训列表 getClassPruductList, //获取日语培训列表
setClassOrder, //新增 修改订单
getOrderGuestRenewState getOrderGuestRenewState
} from "../../../api/sale/sale"; } from "../../../api/sale/sale";
import { import {
getSchoolDropdown, //获取校区列表 getSchoolDropdown, //获取校区列表
getTeacherDropDownList
} from "../../../api/school/index"; } from "../../../api/school/index";
import { import {
queryCourseDropdownList, queryCourseDropdownList,
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";
import vipcourse from "./transfer-order/vipcourse"; import vipcourse from "./transfer-order/vipcourse";
export default { export default {
props: { props: {
select: { select: {
type: Array, type: Array,
...@@ -180,7 +176,7 @@ export default { ...@@ -180,7 +176,7 @@ export default {
ClassNo: "", //班号 ClassNo: "", //班号
CourseSubject: "", //所属科目 CourseSubject: "", //所属科目
IsQuerySalePlat: 1, IsQuerySalePlat: 1,
SaleState:1,//显示正常的课程 SaleState: 1, //显示正常的课程
}, },
courseData: [], //课程列表 courseData: [], //课程列表
coursePageCount: 0, //课程页数 coursePageCount: 0, //课程页数
...@@ -193,13 +189,13 @@ export default { ...@@ -193,13 +189,13 @@ export default {
allClassList: [], allClassList: [],
loading1: false, //防止多次点击 loading1: false, //防止多次点击
mode: 1, mode: 1,
selectedCourseList: [],//多选课程 selectedCourseList: [], //多选课程
}; };
}, },
watch:{ watch: {
mode:{ mode: {
handler(n){ handler(n) {
this.selectedCourseList=[] this.selectedCourseList = []
} }
} }
}, },
...@@ -301,17 +297,15 @@ export default { ...@@ -301,17 +297,15 @@ export default {
this.saveObj = val[0]; this.saveObj = val[0];
this.saveObj.Unit_Price = this.saveObj.SellPrice; this.saveObj.Unit_Price = this.saveObj.SellPrice;
this.defaultCourse = val; this.defaultCourse = val;
this.saveObj.OrderCourseList =[]; this.saveObj.OrderCourseList = [];
this.saveObj.OrderCourseList.push(JSON.parse(JSON.stringify(this.saveObj))); this.saveObj.OrderCourseList.push(JSON.parse(JSON.stringify(this.saveObj)));
this.saveObj.TextbookFee=0; this.saveObj.TextbookFee = 0;
this.saveObj.CoursewareFee=0; this.saveObj.CoursewareFee = 0;
} else { } else {
this.saveObj = {}; this.saveObj = {};
this.saveObj.Unit_Price = 0; this.saveObj.Unit_Price = 0;
this.defaultCourse = []; this.defaultCourse = [];
} }
}, },
// 选择课程 // 选择课程
selectCourse(val) { selectCourse(val) {
...@@ -321,32 +315,28 @@ export default { ...@@ -321,32 +315,28 @@ export default {
} }
this.saveObj = {}; this.saveObj = {};
this.saveObj.Unit_Price = 0; this.saveObj.Unit_Price = 0;
this.saveObj.OrderCourseList =[]; this.saveObj.OrderCourseList = [];
if(this.selectedCourseList&&this.selectedCourseList.length>0){ if (this.selectedCourseList && this.selectedCourseList.length > 0) {
this.selectedCourseList.forEach((item,index) => { this.selectedCourseList.forEach((item, index) => {
if(index==0){ if (index == 0) {
this.saveObj = JSON.parse(JSON.stringify(item)); this.saveObj = JSON.parse(JSON.stringify(item));
this.saveObj.Unit_Price = item.SellPrice; this.saveObj.Unit_Price = item.SellPrice;
this.saveObj.PreferPrice = item.SellPrice; this.saveObj.PreferPrice = item.SellPrice;
} } else {
else{ this.saveObj.CourseName += "、" + item.CourseName
this.saveObj.CourseName+="、"+item.CourseName this.saveObj.SellPrice += Number(item.SellPrice)
this.saveObj.SellPrice+=Number(item.SellPrice) this.saveObj.Unit_Price += Number(item.SellPrice)
this.saveObj.Unit_Price+=Number(item.SellPrice) this.saveObj.TotalClassHours += Number(item.TotalClassHours)
this.saveObj.TotalClassHours+=Number(item.TotalClassHours) this.saveObj.DiscountMoney = 0; //number(item.DiscountMoney)
this.saveObj.DiscountMoney=0;//number(item.DiscountMoney) this.saveObj.LessPrice = 0;
this.saveObj.LessPrice=0; this.saveObj.TextbookFee += Number(item.TextbookFee)
this.saveObj.TextbookFee+=Number(item.TextbookFee) this.saveObj.PreferPrice += Number(item.SellPrice)
this.saveObj.PreferPrice +=Number(item.SellPrice) this.saveObj.CoursewareFee += Number(item.CoursewareFee)
this.saveObj.CoursewareFee+=Number(item.CoursewareFee)
} }
}); });
this.saveObj.OrderCourseList =[]; this.saveObj.OrderCourseList = [];
this.saveObj.OrderCourseList =this.selectedCourseList; this.saveObj.OrderCourseList = this.selectedCourseList;
} }
console.log("this.saveObj",this.saveObj);
console.log("this.selectedCourseList",this.selectedCourseList);
}, },
next() { next() {
if (this.step == 1 && this.mode <= 0) { if (this.step == 1 && this.mode <= 0) {
...@@ -370,7 +360,7 @@ export default { ...@@ -370,7 +360,7 @@ export default {
return; return;
} }
if ( if (
(this.mode == 2||this.mode == 3) && (this.mode == 2 || this.mode == 3) &&
(!this.saveObj.ClassId || this.saveObj.ClassId == 0) (!this.saveObj.ClassId || this.saveObj.ClassId == 0)
) { ) {
this.$q.notify({ this.$q.notify({
...@@ -436,15 +426,17 @@ export default { ...@@ -436,15 +426,17 @@ export default {
this.loading1 = false; 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>
...@@ -3,103 +3,54 @@ ...@@ -3,103 +3,54 @@
<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-4"> <div class="col-4">
<q-input <q-input @input="resetSearch" clearable filled v-model="msg.ClassName" label="课程名称" @clear="resetSearch"
@input="resetSearch" maxlength="20" />
clearable
filled
v-model="msg.ClassName"
label="课程名称"
@clear="resetSearch"
maxlength="20"
/>
</div> </div>
<!-- <div class="col-4">
<select-tree
:treeData="TreeCategoryList"
:defaultArray="returnString"
nodeKey="CateId"
:multiple="true"
labelKey="CateName"
childrenKey="ChildList"
tipText="课程系列"
@getChild="getChild"
></select-tree>
</div> -->
<div class="col-4"> <div class="col-4">
<q-select <q-select @input="resetSearch" filled v-model="msg.CourseSubject" :options="CourseSubjectList"
@input="resetSearch" option-label="SubjectName" option-value="Id" emit-value map-options label="所属科目" clearable />
filled
v-model="msg.CourseSubject"
:options="CourseSubjectList"
option-label="SubjectName"
option-value="Id"
emit-value
map-options
label="所属科目"
clearable
/>
</div> </div>
<div class="col-4"> </div>
<p class="yueke-title">已选:</p> </div>
<p class="yueke-CourseName" v-for="(item,index) in selection"> <div class="page-search row items-center">
<div class="col row wrap q-mr-lg q-col-gutter-md">
<div class="col-8">
<p class="yueke-title">已选课程:<font class="yueke-CourseName" v-for="(item,index) in selection"
:key="`s_`+index">
<span>{{index+1}}</span> <span>{{index+1}}</span>
{{item.CourseName}} {{item.CourseName}}
</font>
</p> </p>
</div> </div>
</div> </div>
</div> </div>
<!-- @update:selected="emitSel" single
:selected-rows-label="getSelectedString" <q-table :pagination="msg" :selection="mode==2?'multiple':'single'" :selected.sync="selection"
--> no-data-label="暂无相关数据" flat class="sticky-tow-column-table sticky-two-header-table" separator="none"
<q-table :data="dataList" :columns="columns" row-key="ClassId" @update:selected="emitSel"
:pagination="msg" :selected-rows-label="getSelectedString" table-class="table">
:selection="mode==2?'multiple':'single'"
:selected.sync="selection"
no-data-label="暂无相关数据"
flat
class="sticky-tow-column-table sticky-two-header-table"
separator="none"
:data="dataList"
:columns="columns"
row-key="ClassId"
@update:selected="emitSel"
:selected-rows-label="getSelectedString"
table-class="table"
>
<template v-slot:body-cell-CourseName="props"> <template v-slot:body-cell-CourseName="props">
<q-td :props="props"> <q-td :props="props">
{{ props.row.CourseName }} {{ props.row.CourseName }}
</q-td> </q-td>
</template> </template>
<template v-slot:bottom> <template v-slot:bottom>
<q-pagination <q-pagination class="full-width justify-end" v-model="msg.pageIndex" color="primary" :max="pageCount"
class="full-width justify-end" :input="true" @input="changePage" />
v-model="msg.pageIndex"
color="primary"
:max="pageCount"
:input="true"
@input="changePage"
/>
</template> </template>
</q-table> </q-table>
</div> </div>
</template> </template>
<script> <script>
import { import {
queryCoursePage,
queryCourseCategoryTree,
deleteCourseInfo,
querySaleplatList,
getCourseSubject getCourseSubject
} from "../../../../api/course/index"; } from "../../../../api/course/index";
import { import {
getClassPruductList //获取日语培训列表 getClassPruductList //获取日语培训列表
} from "../../../../api/sale/sale"; } from "../../../../api/sale/sale";
// import selectTree from "../../../../components/common/select-tree";
export default { export default {
components: { components: {
// selectTree
}, },
props: { props: {
select: { select: {
...@@ -114,8 +65,7 @@ export default { ...@@ -114,8 +65,7 @@ export default {
data() { data() {
return { return {
selection: [], selection: [],
columns: [ columns: [{
{
name: "CourseName", name: "CourseName",
label: "课程", label: "课程",
field: "CourseName", field: "CourseName",
...@@ -128,17 +78,10 @@ export default { ...@@ -128,17 +78,10 @@ export default {
align: "left", align: "left",
field: row => row.CourseSubjectName field: row => row.CourseSubjectName
}, },
// {
// name: "CateName",
// required: true,
// label: "系列",
// align: "left",
// field: row => row.CateName
// },
{ {
name: "SellPrice", name: "SellPrice",
required: true, required: true,
label: "直客价", label: "售价",
align: "left", align: "left",
field: row => row.SellPrice.toFixed(2) field: row => row.SellPrice.toFixed(2)
}, },
...@@ -147,23 +90,9 @@ export default { ...@@ -147,23 +90,9 @@ export default {
required: true, required: true,
label: "价格类型", label: "价格类型",
align: "left", align: "left",
field: row => row.SellPriceType == 1 ? '课程总价' : (row.SellPriceType==2?'课时单价':'') field: row => row.SellPriceType == 1 ? '课程总价' : (row.SellPriceType == 2 ? '课时单价' : '')
} }
], ],
// msg: {
// pageIndex: 1,
// pageSize: 10,
// rowsPerPage: 10,
// CourseName: "",
// QCateIds: "",
// IsQPrice: 1,
// Status: "0",
// Saleplat: 0,
// CourseSubject: "", //所属科目
// ClassScrollType :2
// },
msg: { msg: {
pageIndex: 1, pageIndex: 1,
pageSize: 8, pageSize: 8,
...@@ -179,15 +108,12 @@ export default { ...@@ -179,15 +108,12 @@ export default {
JoinEndTime: "", //报名截止日期结束 JoinEndTime: "", //报名截止日期结束
ClassNo: "", //班号 ClassNo: "", //班号
CourseSubject: "", //所属科目 CourseSubject: "", //所属科目
CourseName:"", CourseName: "",
ClassScrollType :2, ClassScrollType: 2,
IsQuerySalePlat:1, IsQuerySalePlat: 1,
QIsVipCourse:0, QIsVipCourse: 0,
}, },
CourseSubjectList: [], CourseSubjectList: [],
//课程分类树形列表
TreeCategoryList: [],
returnString: [], //默认值
dataList: [], dataList: [],
pageCount: 0 pageCount: 0
}; };
...@@ -196,64 +122,38 @@ export default { ...@@ -196,64 +122,38 @@ export default {
this.selection = this.select; this.selection = this.select;
this.getCourseList(); this.getCourseList();
this.queryCourseSubject(); this.queryCourseSubject();
// this.getCategorytree();
}, },
methods: { methods: {
// 多选 // 多选
getSelectedString () { getSelectedString() {
return this.selection.length === 0 ? '' : `${this.selection.length} record${this.selection.length > 1 ? 's' : ''} selected of ${this.dataList.length}` return this.selection.length === 0 ? '' :
`${this.selection.length} record${this.selection.length > 1 ? 's' : ''} selected of ${this.dataList.length}`
}, },
emitSel(val) { emitSel(val) {
this.$emit("select", val); this.$emit("select", val);
}, },
//获取课程分页列表 //获取课程分页列表
getCourseList() { getCourseList() {
if(this.mode==2){ if (this.mode == 2) {
this.msg.QIsVipCourse=1; this.msg.QIsVipCourse = 1;
}else if(this.mode==3){ } else if (this.mode == 3) {
this.msg.QIsVipCourse=2; this.msg.QIsVipCourse = 2;
} }
getClassPruductList(this.msg).then(res => { getClassPruductList(this.msg).then(res => {
this.dataList = res.Data.PageData; this.dataList = res.Data.PageData;
this.pageCount = res.Data.PageCount; this.pageCount = res.Data.PageCount;
}); });
}, },
// 课程翻页 // 课程翻页
changePage(val) { changePage(val) {
this.msg.pageIndex = val; this.msg.pageIndex = val;
this.getCourseList(); this.getCourseList();
}, },
//获取分页列表
// getCourseList() {
// this.loading = true;
// queryCoursePage(this.msg)
// .then(res => {
// this.loading = false;
// this.dataList = res.Data.PageData;
// this.pageCount = res.Data.PageCount;
// })
// .catch(() => {
// this.loading = false;
// });
// },
//重新查询 //重新查询
resetSearch() { resetSearch() {
this.msg.pageIndex = 1; this.msg.pageIndex = 1;
this.getCourseList(); this.getCourseList();
}, },
//翻页
// changePage(val) {
// this.msg.pageIndex = val;
// this.getCourseList();
// },
getCategorytree() {
this.TreeCategoryList = [];
var qMsg = {};
queryCourseCategoryTree(qMsg).then(res => {
this.TreeCategoryList = res.Data;
});
},
queryCourseSubject() { queryCourseSubject() {
getCourseSubject({}).then(res => { getCourseSubject({}).then(res => {
if (res.Code == 1) { if (res.Code == 1) {
...@@ -272,48 +172,53 @@ export default { ...@@ -272,48 +172,53 @@ export default {
this.getCourseList(); this.getCourseList();
} }
} }
}; };
</script> </script>
<style> <style>
.table { .table {
max-height: 400px; max-height: 400px;
} }
.table::-webkit-scrollbar { .table::-webkit-scrollbar {
width: 5px; width: 5px;
height: 5px; height: 5px;
} }
.table::-webkit-scrollbar-track { .table::-webkit-scrollbar-track {
background: #fff; background: #fff;
border-radius: 2px; border-radius: 2px;
} }
.table::-webkit-scrollbar-thumb { .table::-webkit-scrollbar-thumb {
background: #444; background: #444;
border-radius: 10px; border-radius: 10px;
} }
.table::-webkit-scrollbar-thumb:hover { .table::-webkit-scrollbar-thumb:hover {
background: #999; background: #999;
} }
.table::-webkit-scrollbar-corner { .table::-webkit-scrollbar-corner {
background: #204754; background: #204754;
} }
.yueke-title{
.yueke-title {
margin-top: 0; margin-top: 0;
margin-bottom: 0; margin-bottom: 0;
} }
.yueke-CourseName{
.yueke-CourseName {
margin-right: 5px; margin-right: 5px;
white-space:nowrap; white-space: nowrap;
overflow: hidden; overflow: hidden;
text-overflow:ellipsis; text-overflow: ellipsis;
margin-top: 5px; margin-top: 5px;
margin-bottom: 0; margin-bottom: 0;
} }
.yueke-CourseName span{
.yueke-CourseName span {
color: #2961fe; color: #2961fe;
} }
</style> </style>
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