Commit 2474dc99 authored by 黄奎's avatar 黄奎

页面修改

parent b399b1db
<template> <template>
<div class="b2bcustomer"> <div class="b2bcustomer">
<div class="full-width flex no-wrap items-center q-mb-sm"> <div class="full-width flex no-wrap items-center q-mb-sm">
<q-tabs <q-tabs v-model="msg.StuStage" active-color="primary" dense outside-arrows align="left" style="width:70%"
v-model="msg.StuStage" @input="getStudent">
active-color="primary" <q-tab v-for="(item, index) in stagelist" :key="index" :name="item.StuStage">
dense
outside-arrows
align="left"
style="width:70%"
@input="getStudent"
>
<q-tab
v-for="(item, index) in stagelist"
:key="index"
:name="item.StuStage"
>
{{ item.StuStageName }}({{ item.StuNum }}) {{ item.StuStageName }}({{ item.StuNum }})
</q-tab> </q-tab>
</q-tabs> </q-tabs>
<q-input <q-input outlined dense v-model="msg.StuName" label="昵称" @input="getStudent" />
outlined
dense
v-model="msg.StuName"
label="昵称"
@input="getStudent"
/>
</div> </div>
<q-table <q-table :pagination="msg" :loading="loading" no-data-label="暂无相关数据" flat class="sticky-tow-column-table"
:pagination="msg" separator="none" :data="list" :columns="columns" row-key="Id">
:loading="loading"
no-data-label="暂无相关数据"
flat
class="sticky-tow-column-table"
separator="none"
:data="list"
:columns="columns"
row-key="Id"
>
<!-- <template v-slot:body-cell-StuIcon="props">
<q-td auto-width :props="props">
<q-avatar size="md" v-if="props.value">
<img :src="props.value" />
</q-avatar>
<q-avatar
size="md"
color="teal-10"
text-color="white"
v-if="!props.value"
>
{{ props.row.StuName.substring(0, 1) }}</q-avatar
>
</q-td>
</template> -->
<template v-slot:body-cell-StuName="props"> <template v-slot:body-cell-StuName="props">
<q-td :props="props"> <q-td :props="props">
<div class="text-blue cursor-pointer" @click="getStuRight(props.row)"> <div class="text-blue cursor-pointer" @click="getStuRight(props.row)">
...@@ -61,49 +21,32 @@ ...@@ -61,49 +21,32 @@
</template> </template>
<template v-slot:body-cell-StuSex="props"> <template v-slot:body-cell-StuSex="props">
<q-td :props="props"> <q-td :props="props">
<q-badge <q-badge :color="props.value == 1 ? 'negative' : 'primary'" :label="props.value == 1 ? '女' : '男'" />
:color="props.value == 1 ? 'negative' : 'primary'"
:label="props.value == 1 ? '女' : '男'"
/>
</q-td> </q-td>
</template> </template>
<template v-slot:body-cell-Status="props"> <template v-slot:body-cell-Status="props">
<q-td :props="props"> <q-td :props="props">
<q-toggle <q-toggle size="md" color="primary" :false-value="1" :true-value="0" v-model="props.row.Status"
size="md" title="注意:关闭后,学员将无法正常使用." @input="deleteStudentInfo(props.row)" />
color="primary"
:false-value="1"
:true-value="0"
v-model="props.row.Status"
title="注意:关闭后,学员将无法正常使用."
@input="deleteStudentInfo(props.row)"
/>
</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>
<stuDetail <stuDetail v-if="isShowStuRight" :save-obj="stuOption" @close="closeStuForm"></stuDetail>
v-if="isShowStuRight"
:save-obj="stuOption"
@close="closeStuForm"
></stuDetail>
</div> </div>
</template> </template>
<script> <script>
import { getStudentPage } from "../../../api/school"; import {
import { getCustomerStuStageStatistics } from "../../../api/sale/peemanagement"; getStudentPage
import stuDetail from "../../../components/school/student/studentRight-form"; } from "../../../api/school";
export default { import {
getCustomerStuStageStatistics
} from "../../../api/sale/peemanagement";
import stuDetail from "../../../components/school/student/studentRight-form";
export default {
components: { components: {
stuDetail stuDetail
}, },
...@@ -119,12 +62,6 @@ export default { ...@@ -119,12 +62,6 @@ export default {
list: [], list: [],
pageCount: 0, pageCount: 0,
columns: [ columns: [
// {
// name: "StuIcon",
// label: "",
// field: "StuIcon",
// align: "left"
// },
{ {
name: "StuName", name: "StuName",
required: true, required: true,
...@@ -168,12 +105,6 @@ export default { ...@@ -168,12 +105,6 @@ export default {
field: "CreateTimeStr", field: "CreateTimeStr",
align: "left" align: "left"
} }
// {
// name: "CreateByName",
// label: "负责人",
// align: "left",
// field: "CreateByName"
// }
], ],
msg: { msg: {
pageIndex: 1, pageIndex: 1,
...@@ -193,7 +124,7 @@ export default { ...@@ -193,7 +124,7 @@ export default {
}, },
methods: { methods: {
getStudent() { getStudent() {
this.msg.CustomerId = this.Id; this.msg.CategoryId = this.Id;
this.loading = true; this.loading = true;
getStudentPage(this.msg) getStudentPage(this.msg)
.then(res => { .then(res => {
...@@ -206,7 +137,9 @@ export default { ...@@ -206,7 +137,9 @@ export default {
}); });
}, },
getStage() { getStage() {
getCustomerStuStageStatistics({ CustomerId: this.Id }).then(res => { getCustomerStuStageStatistics({
CategoryId: this.Id
}).then(res => {
this.stagelist = res.Data; this.stagelist = res.Data;
const total = res.Data.reduce((pre, cur) => { const total = res.Data.reduce((pre, cur) => {
return cur.StuNum + pre; return cur.StuNum + pre;
...@@ -240,25 +173,29 @@ export default { ...@@ -240,25 +173,29 @@ export default {
this.getStudent(); this.getStudent();
this.getStage(); this.getStage();
} }
}; };
</script> </script>
<style lang="scss"> <style lang="scss">
.b2bcustomer ::-webkit-scrollbar { .b2bcustomer ::-webkit-scrollbar {
width: 5px; width: 5px;
height: 5px; height: 5px;
} }
.b2bcustomer ::-webkit-scrollbar-track {
.b2bcustomer ::-webkit-scrollbar-track {
background: #fff; background: #fff;
border-radius: 2px; border-radius: 2px;
} }
.b2bcustomer ::-webkit-scrollbar-thumb {
.b2bcustomer ::-webkit-scrollbar-thumb {
background: #444; background: #444;
border-radius: 10px; border-radius: 10px;
} }
.b2bcustomer ::-webkit-scrollbar-thumb:hover {
.b2bcustomer ::-webkit-scrollbar-thumb:hover {
background: #999; background: #999;
} }
.b2bcustomer ::-webkit-scrollbar-corner {
.b2bcustomer ::-webkit-scrollbar-corner {
background: #204754; background: #204754;
} }
</style> </style>
\ No newline at end of file
...@@ -2,15 +2,7 @@ ...@@ -2,15 +2,7 @@
<div class=" myOrder q-pb-lg"> <div class=" myOrder q-pb-lg">
<div class="row q-my-xs"> <div class="row q-my-xs">
<div class="col-6"> <div class="col-6">
<q-input <q-input @input="resetSearch" clearable filled v-model="msg.OrderId" label="订单号" dense maxlength="10" />
@input="resetSearch"
clearable
filled
v-model="msg.OrderId"
label="订单号"
dense
maxlength="10"
/>
</div> </div>
</div> </div>
<div class="row wrap q-gutter-xs q-my-xs" v-if="data.Statistics"> <div class="row wrap q-gutter-xs q-my-xs" v-if="data.Statistics">
...@@ -39,50 +31,39 @@ ...@@ -39,50 +31,39 @@
</div> </div>
<div style="width:100%;overflow:auto"> <div style="width:100%;overflow:auto">
<orderlist <orderlist :dataList="data.List" :authObj="authObj" @success="refreshClassOrder" :modityOrderType="3"
:dataList="data.List" ref="orderL">
:authObj="authObj"
@success="refreshClassOrder"
:modityOrderType="3"
ref="orderL"
>
</orderlist> </orderlist>
<div class="row" style="justify-content: flex-end;padding: 5px 20px"> <div class="row" style="justify-content: flex-end;padding: 5px 20px">
<q-pagination <q-pagination v-model="msg.pageIndex" :max="pageCount" @input="changePage" class="full-width justify-end"
v-model="msg.pageIndex" color="primary" :input="true">
:max="pageCount"
@input="changePage"
class="full-width justify-end"
color="primary"
:input="true"
>
</q-pagination> </q-pagination>
</div> </div>
</div> </div>
<classinfo-form <classinfo-form v-if="isShowClassInfo" :seting-obj="classObjOption" @close="closeClass"
v-if="isShowClassInfo" @success="refreshClassOrder">
:seting-obj="classObjOption"
@close="closeClass"
@success="refreshClassOrder"
>
</classinfo-form> </classinfo-form>
</div> </div>
</template> </template>
<script> <script>
import { import {
getMyOrderStatisticsPageList, //获取订单列表 getMyOrderStatisticsPageList, //获取订单列表
getOrderStateEnumList //订单状态 getOrderStateEnumList //订单状态
} from "../../../api/sale/sale"; } from "../../../api/sale/sale";
import { import {
queryCourseDropdownList, queryCourseDropdownList,
getCourseSubject getCourseSubject
} from "../../../api/course/index"; } from "../../../api/course/index";
import myOrderForm from "../../../components/sale/myOrder-form"; import myOrderForm from "../../../components/sale/myOrder-form";
import classinfoForm from "../../../components/course/classinfo-form"; import classinfoForm from "../../../components/course/classinfo-form";
import orderlist from "./b2bOrderlist"; import orderlist from "./b2bOrderlist";
import { queryEmployee } from "../../../api/users/user"; import {
import { EduDownLoad } from "../../../api/common/common"; queryEmployee
export default { } from "../../../api/users/user";
import {
EduDownLoad
} from "../../../api/common/common";
export default {
props: { props: {
Id: { Id: {
type: Number, type: Number,
...@@ -121,7 +102,8 @@ export default { ...@@ -121,7 +102,8 @@ export default {
ClassNo: "", //班号 ClassNo: "", //班号
HelpEnterId: "", //关联教师 HelpEnterId: "", //关联教师
CourseSubject: "", //所属科目 CourseSubject: "", //所属科目
CustomerId: 0 CustomerId: 0,
CategoryId: 0,
}, },
//订单状态 //订单状态
OrderStateList: [], OrderStateList: [],
...@@ -142,85 +124,13 @@ export default { ...@@ -142,85 +124,13 @@ export default {
isShowBackClass: false, //不显示退课 isShowBackClass: false, //不显示退课
isShowRenewClass: false //不显示续课 isShowRenewClass: false //不显示续课
}, },
EmployeeList: [], //业务员
AllemployeeList: [],
TeacherList: [], //关联教师
AllTeacherList: [],
CourseSubjectList: [] //科目列表
}; };
}, },
created() { created() {},
if (this.$route.query.OrderId) {
this.msg.OrderId = this.$route.query.OrderId;
}
// let nowDay = new Date();
// var year = nowDay.getFullYear(); //年
// var month = nowDay.getMonth() + 1; //月
// var day = nowDay.getDate(); //日
// var currentDay = year + '-' + month + '-' + day;
// this.msg.StartTime = currentDay
// if (this.$route.query.StartTime) {
// this.msg.StartTime = this.$route.query.StartTime + '-01';
// }
// if (this.$route.query.EndTime) {
// this.msg.EndTime = this.$route.query.EndTime + '-01';
// }
if (this.$route.query.EnterID) {
this.msg.EnterID = Number(this.$route.query.EnterID);
}
if (this.$route.query.ClassName) {
this.msg.ClassName = decodeURI(this.$route.query.ClassName);
}
this.queryCourseSubject();
this.getOrderState();
this.getCourseList();
},
mounted() { mounted() {
this.getList(); this.getList();
this.getEmployee(0);
this.getglteacher();
}, },
methods: { methods: {
queryCourseSubject() {
getCourseSubject({}).then(res => {
if (res.Code == 1) {
this.CourseSubjectList = res.Data;
}
});
},
//订单状态
getOrderState() {
getOrderStateEnumList({}).then(res => {
if (res.Code == 1) {
var tempArray = res.Data;
if (!tempArray) {
tempArray = [];
}
tempArray.unshift({
Id: 0,
Name: "不限"
});
this.OrderStateList = tempArray;
}
});
},
//获取课程
getCourseList() {
queryCourseDropdownList({}).then(res => {
if (res.Code == 1) {
var tempArray = res.Data;
if (!tempArray) {
tempArray = [];
}
tempArray.unshift({
CourseId: 0,
CourseName: "不限"
});
this.CourseList = tempArray;
}
});
},
//翻页 //翻页
changePage(val) { changePage(val) {
if (this.showone == true) { if (this.showone == true) {
...@@ -236,27 +146,13 @@ export default { ...@@ -236,27 +146,13 @@ export default {
}, },
//获取菜单分页列表 //获取菜单分页列表
getList() { getList() {
// if (this.dateList && this.dateList.length > 0) { this.msg.CategoryId = this.Id;
// this.msg.StartTime = this.dateList[0];
// this.msg.EndTime = this.dateList[1];
// } else {
// this.msg.StartTime = '';
// this.msg.EndTime = '';
// }
if (this.dateList2 && this.dateList2.length > 0) {
this.msg.OPStartTime = this.dateList2[0];
this.msg.OPEndTime = this.dateList2[1];
} else {
this.msg.OPStartTime = "";
this.msg.OPEndTime = "";
}
this.msg.CustomerId = this.Id;
let msg = JSON.parse(JSON.stringify(this.msg)); let msg = JSON.parse(JSON.stringify(this.msg));
if (msg.OrderId == "" || msg.OrderId == null) { if (msg.OrderId == "" || msg.OrderId == null) {
msg.OrderId = 0; msg.OrderId = 0;
} }
this.loading = true; this.loading = true;
console.log("msg",msg);
getMyOrderStatisticsPageList(msg) getMyOrderStatisticsPageList(msg)
.then(res => { .then(res => {
this.data = res.Data.PageData; this.data = res.Data.PageData;
...@@ -288,108 +184,35 @@ export default { ...@@ -288,108 +184,35 @@ export default {
closeClass() { closeClass() {
this.isShowClassInfo = false; this.isShowClassInfo = false;
}, },
getglteacher() {
var qMsg = {
AccountTypeStr: 2
};
queryEmployee(qMsg).then(res => {
if (res.Code == 1) {
this.TeacherList = res.Data;
let obj = {
Id: "",
EmployeeName: "不限"
};
this.TeacherList.unshift(obj);
this.AllTeacherList = JSON.parse(JSON.stringify(this.TeacherList));
} }
});
},
//筛选关联老师
filterFn3(val, update) {
update(() => {
if (val === "") {
this.TeacherList = JSON.parse(JSON.stringify(this.AllTeacherList));
} else {
const needle = val.toLowerCase();
this.TeacherList = this.AllTeacherList.filter(
v => v.EmployeeName.toLowerCase().indexOf(needle) > -1
);
}
});
},
//业务员
getEmployee(id) {
var qMsg = {
Dept_Id: 0
}; };
qMsg.Dept_Id = id;
queryEmployee(qMsg)
.then(res => {
if (res.Code == 1) {
this.EmployeeList = res.Data;
let obj = {
Id: "",
EmployeeName: "不限"
};
this.EmployeeList.unshift(obj);
this.AllemployeeList = JSON.parse(
JSON.stringify(this.EmployeeList)
);
}
})
.catch(() => {});
},
//筛选业务员
filterFn2(val, update) {
update(() => {
if (val === "") {
this.EmployeeList = JSON.parse(JSON.stringify(this.AllemployeeList));
} else {
const needle = val.toLowerCase();
this.EmployeeList = this.AllemployeeList.filter(
v => v.EmployeeName.toLowerCase().indexOf(needle) > -1
);
}
});
},
goexport() {
//导出
var msg = JSON.parse(JSON.stringify(this.msg));
EduDownLoad(
"/order/GetOrderPageListStatisticsToExcel",
msg,
"订单列表.xls"
);
}
}
};
</script> </script>
<style scoped> <style scoped>
li { li {
list-style-type: none; list-style-type: none;
} }
.myOrder ul { .myOrder ul {
padding: 0px; padding: 0px;
} }
.myOrder .price-popup { .myOrder .price-popup {
border-radius: 4px; border-radius: 4px;
} }
.myOrder .el-range-editor .el-range-input { .myOrder .el-range-editor .el-range-input {
background: transparent; background: transparent;
} }
.myOrder .el-range-editor.el-input__inner { .myOrder .el-range-editor.el-input__inner {
background-color: transparent; background-color: transparent;
} }
.myOrder .q-mb-md { .myOrder .q-mb-md {
margin-bottom: 0; margin-bottom: 0;
} }
.myOrder .stics { .myOrder .stics {
padding: 5px 10px; padding: 5px 10px;
background: #dddee0; background: #dddee0;
border-radius: 4px; border-radius: 4px;
...@@ -397,34 +220,34 @@ li { ...@@ -397,34 +220,34 @@ li {
color: #000000; color: #000000;
font-weight: bold; font-weight: bold;
white-space: nowrap; white-space: nowrap;
} }
.myOrder .stics .stics-name { .myOrder .stics .stics-name {
color: #2d2d2d; color: #2d2d2d;
font-weight: 600; font-weight: 600;
margin-right: 10px; margin-right: 10px;
} }
.myOrder .tis { .myOrder .tis {
margin: 10px 0; margin: 10px 0;
align-items: center; align-items: center;
} }
.myOrder .tis .tis-k { .myOrder .tis .tis-k {
width: 10px; width: 10px;
height: 10px; height: 10px;
margin-right: 8px; margin-right: 8px;
} }
.myOrder .tis span { .myOrder .tis span {
font-size: 14px; font-size: 14px;
color: #2d2d2d; color: #2d2d2d;
font-weight: 600; font-weight: 600;
margin-right: 20px; margin-right: 20px;
} }
.myOrder .el-input__inner { .myOrder .el-input__inner {
border: none !important; border: none !important;
background: transparent !important; background: transparent !important;
} }
</style> </style>
\ No newline at end of file
...@@ -109,7 +109,7 @@ ...@@ -109,7 +109,7 @@
"QQ", "QQ",
"WeChatNo", "WeChatNo",
], ],
tabCheck: 1, tabCheck: 2,
//审核状态列表 //审核状态列表
ApproveStateList: [ ApproveStateList: [
{ {
......
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