Commit 0a210e4d authored by 罗超's avatar 罗超

1

parent 918c2e7a
...@@ -28,3 +28,47 @@ export function getStuList(data) { ...@@ -28,3 +28,47 @@ export function getStuList(data) {
data data
}) })
} }
//学管 获取预警枚举
export function getEarlyWarningEnum(data) {
return request({
url: '/Stu/GetGuestClassHoursEarlyWarningEnumList',
method: 'post',
data
})
}
//学管 获取类型枚举
export function getTypeEnum(data) {
return request({
url: '/Stu/GetOrderJoinTypeEnumEnumList',
method: 'post',
data
})
}
//学管 添加事件
export function addEvent(data) {
return request({
url: '/Stu/GetSetStudentEventLog',
method: 'post',
data
})
}
//学管 获取可补课课时,缺勤次数,请假次数分页信息
export function getClassCheckPageList(data) {
return request({
url: '/Stu/GetClassCheckPageList',
method: 'post',
data
})
}
//学管 获取事件记录分页信息
export function getEventLogPageList(data) {
return request({
url: '/Stu/GetStudentEventLogPageList',
method: 'post',
data
})
}
\ No newline at end of file
<template>
<q-dialog v-model="persistent" content-class="bg-grey-1" persistent transition-show="scale" transition-hide="scale">
<q-card style="width: 800px;max-width:900px;">
<q-card-section>
<div class="text-h6" v-if="this.msg.Id===0">添加事件</div>
<div class="text-h6" v-if="this.msg.Id>0">修改事件</div>
</q-card-section>
<q-card-section class="q-pt-none">
<div class="row ">
<div class="col-6 q-pr-lg">
<q-input filled v-model="msg.Title" label="标题" />
</div>
<div class="col-6">
<q-select @input="" standout="bg-primary text-white" v-model="msg.EventType" class="col-6"
option-label="Name" option-value="Id" :options="typeOpts" emit-value map-options label="类型" />
</div>
</div>
<q-input filled type="textarea" :rows="3" style="margin-top:20px;" stack-label maxlength="2000"
v-model="msg.EventContent" :dense="false" class="col-12 q-pb-lg" label="内容" />
<div class="row wrap" style="padding-top:20px">
<div style="display:flex;flex-wrap: wrap;">
<div v-if="msg.EventPicList&&msg.EventPicList.length>0" v-for="(item,index) in msg.EventPicList">
<div class="ItemImgDiv">
<q-img :src="item" spinner-color="white" style="height: 100%;height:100%" />
<q-btn size="7px" @click="deleteItemImg(index)" style="position:absolute;right:-5px;top:-5px;" round
color="red" icon="iconfont icon-guanbi1" />
</div>
</div>
<el-upload class="avatar-uploader addDutyMain" action="" :before-upload="uploadFile"
:show-file-list="false">
<i class="el-icon-plus avatar-uploader-icon"></i>
</el-upload>
</div>
</div>
</q-card-section>
<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="立即提交" color="accent q-px-md" style="font-weight:400 !important" :loading="saveLoading"
@click="save" />
</q-card-actions>
</q-card>
</q-dialog>
</template>
<script>
import {
UploadSelfFile,
} from '../../api/common/common'
import {
addEvent
} from '../../api/stuMan/index.js'
export default {
props: {
setObj: {
type: Object,
default: null
}
},
data() {
return {
persistent: true,
saveLoading: false,
msg: {
Id: 0,
StuId: 0,
School_Id: 0,
EventType: 2,
EventContent: "",
Title: "",
EventPicList: []
},
typeOpts: [{
Name: "处分",
Id: 1,
},
{
Name: "奖励",
Id: 2,
},
]
}
},
mounted() {
console.log(85, this.setObj)
if (this.setObj) {
if (this.setObj.Student_Id) {
this.msg.StuId = this.setObj.Student_Id
}
if (this.setObj.School_Id) {
this.msg.School_Id = this.setObj.School_Id
}
if (this.setObj.Id>0) {
this.msg.Id = this.setObj.Id
if (this.setObj.EventType) {
this.msg.EventType = this.setObj.EventType
}
if (this.setObj.Title) {
this.msg.Title = this.setObj.Title
}
if (this.setObj.EventContent) {
this.msg.EventContent = this.setObj.EventContent
}
if (this.setObj.EventPicList) {
this.msg.EventPicList = this.setObj.EventPicList
}
}else{
this.msg.Id =0
this.msg.EventType = 2
this.msg.Title = ""
this.msg.EventContent = ""
this.msg.EventPicList =[]
}
}else{
this.msg.Id =0
this.msg.EventType = 2
this.msg.Title = ""
this.msg.EventContent = ""
this.msg.EventPicList =[]
}
console.log(109, this.msg)
this.$forceUpdate();
},
methods: {
closeSaveForm() {
this.$emit('close')
this.persistent = false
},
save() {
console.log(89, this.msg)
this.saveLoading = true
addEvent(this.msg).then(res => {
this.saveLoading = false
if (res.Code === 1) {
this.$message.success("操作成功")
this.$emit("success")
this.persistent = false
} else {
this.$message.error(res.Message)
}
}).catch(err => {
this.saveLoading = false
})
},
uploadFile(files) {
UploadSelfFile('studentIcon', files, res => {
if (res.Code == 1) {
this.msg.EventPicList.push(res.FileUrl);
}
})
},
//删除图片
deleteItemImg(index) {
this.msg.EventPicList.splice(index, 1);
}
},
}
</script>
<style>
.avatar-uploader .el-upload {
border-radius: 6px;
cursor: pointer;
width: 100%;
height: 100%;
color: #8c939d;
position: relative;
overflow: hidden;
}
.addDutyMain {
display: inline-block;
width: 118px;
height: 118px;
font-size: 70px;
border: 1px dashed #d9d9d9;
line-height: 120px;
}
.ItemImgDiv {
width: 118px;
height: 118px;
position: relative;
margin: 0 10px 10px 0;
display: inline-block;
}
._delete_img {
position: absolute;
top: 0px;
height: 82px;
width: 143px;
line-height: 34px;
text-align: center;
background-color: rgba(2, 2, 2, 0.6);
display: inherit;
opacity: 0;
transition: all linear .5s
}
._delete_img i.iconfont {
display: inline-block;
width: 32px;
height: 32px;
border-radius: 50%;
color: #E95252 !important;
background-color: rgba(251, 251, 251, 0.9);
margin-top: 26px;
}
._upload_box ul li {
float: left;
height: 82px;
width: 143px;
padding: 0px 20px 20px 0;
text-align: center;
position: relative;
cursor: pointer;
margin-right: 10px;
}
._upload_box ul li img {
height: 82px;
width: 143px;
}
._upload_box ul li:hover ._delete_img {
opacity: 1;
}
._upload_tips {
font-size: 12px;
position: absolute;
top: 71%;
width: 100%;
left: 0;
text-align: center;
color: #949494;
}
</style>
<template>
<!-- 可补课时 -->
<q-dialog v-model="persistent" content-class="bg-grey-1" persistent transition-show="scale" transition-hide="scale">
<q-card style="width: 900px;max-width:900px;">
<q-card-section>
<div class="text-h6">事件记录</div>
</q-card-section>
<q-card-section class="q-pt-none">
<q-table :pagination="msg" :loading="loading" no-data-label="暂无相关数据" flat class="sticky-column-table "
separator="none" :data="data" :columns="columns" row-key="name">
<template v-slot:top="props">
<!-- <div class="col-2 q-table__title">可补课课时</div> -->
</template>
<template v-slot:body-cell-EventType="props">
<q-td :props="props">
<div v-if="props.row.EventType===1" style="color:#ff0000">处分</div>
<div v-if="props.row.EventType===2" style="color:#00ff00">奖励</div>
</q-td>
</template>
<template v-slot:body-cell-optioned="props">
<q-td :props="props">
<div>
<q-btn size="xs" color="accent" style="font-weight:400" label="修改"
@click="modify(props.row)" />
</div>
</q-td>
</template>
<template v-slot:bottom>
<q-pagination class="full-width justify-end" v-model="msg.pageIndex" color="primary" :max="pageCount"
:input="true" @input="changePage" />
</template>
</q-table>
</q-card-section>
<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="立即提交" color="accent q-px-md" style="font-weight:400 !important" :loading="saveLoading"
@click="save" /> -->
</q-card-actions>
</q-card>
</q-dialog>
</template>
<script>
import {
getEventLogPageList
} from '../../api/stuMan/index.js'
export default {
props: {
setObj: {
type: Object,
}
},
data() {
return {
persistent: true,
loading: false,
pageCount: 0,
msg: {
pageIndex: 1,
pageSize: 10,
rowsPerPage: 10,
StuId:0,
EventType:0
},
data: [],
columns: [
{
name: "Title",
label: "标题",
align: "left",
field: "Title",
},
{
name: "EventType",
label: "类型",
align: "left",
field: "EventType"
},
{
name: "EventContent",
label: "内容",
align: "left",
field: "EventContent",
required: true,
},
{
name: "CreateByName",
label: "创建人",
align: "left",
field: "CreateByName",
},
{
name: "CreateTime",
label: "创建时间",
align: "left",
field: "CreateTime",
},
{
name: "optioned",
label: "操作",
align: "left",
},
]
}
},
mounted() {
if (this.setObj) {
this.msg.StuId = this.setObj.Student_Id
}
this.getList();
},
methods: {
closeSaveForm() {
this.$emit('close')
this.persistent = false
},
getList() {
getEventLogPageList(this.msg).then(res => {
if (res.Code === 1) {
this.data = res.Data.PageData
this.pageCount = res.Data.PageCount
}
})
},
//重新查询
resetSearch() {
this.msg.pageIndex = 1;
this.getList();
},
//翻页
changePage(val) {
this.msg.pageIndex = val;
this.getList()
},
//修改
modify(item){
this.persistent = false
this.$emit('modify',item)
}
},
}
</script>
<style>
.avatar-uploader .el-upload {
border-radius: 6px;
cursor: pointer;
width: 100%;
height: 100%;
color: #8c939d;
position: relative;
overflow: hidden;
}
.addDutyMain {
display: inline-block;
width: 118px;
height: 118px;
font-size: 70px;
border: 1px dashed #d9d9d9;
line-height: 120px;
}
.ItemImgDiv {
width: 118px;
height: 118px;
position: relative;
margin: 0 10px 10px 0;
display: inline-block;
}
._delete_img {
position: absolute;
top: 0px;
height: 82px;
width: 143px;
line-height: 34px;
text-align: center;
background-color: rgba(2, 2, 2, 0.6);
display: inherit;
opacity: 0;
transition: all linear .5s
}
._delete_img i.iconfont {
display: inline-block;
width: 32px;
height: 32px;
border-radius: 50%;
color: #E95252 !important;
background-color: rgba(251, 251, 251, 0.9);
margin-top: 26px;
}
._upload_box ul li {
float: left;
height: 82px;
width: 143px;
padding: 0px 20px 20px 0;
text-align: center;
position: relative;
cursor: pointer;
margin-right: 10px;
}
._upload_box ul li img {
height: 82px;
width: 143px;
}
._upload_box ul li:hover ._delete_img {
opacity: 1;
}
._upload_tips {
font-size: 12px;
position: absolute;
top: 71%;
width: 100%;
left: 0;
text-align: center;
color: #949494;
}
</style>
<template>
<!-- 可补课时 -->
<q-dialog v-model="persistent" content-class="bg-grey-1" persistent transition-show="scale" transition-hide="scale">
<q-card style="width: 900px;max-width:900px;">
<q-card-section>
<div class="text-h6" v-if="type==1">可补课课时</div>
<div class="text-h6" v-if="type==2">缺勤次数</div>
<div class="text-h6" v-if="type==3">请假</div>
</q-card-section>
<q-card-section class="q-pt-none">
<q-table :pagination="msg" :loading="loading" no-data-label="暂无相关数据" flat class="sticky-column-table "
separator="none" :data="data" :columns="columns" row-key="name">
<template v-slot:top="props">
<!-- <div class="col-2 q-table__title">可补课课时</div> -->
</template>
<!-- <template v-slot:body-cell-ContractNo="props">
<q-td :props="props">
<div style="color:#f00;cursor:pointer;" @click="seeContract(props.row)">
{{props.row.ContractNo}}
</div>
</q-td>
</template> -->
<template v-slot:bottom>
<q-pagination class="full-width justify-end" v-model="msg.pageIndex" color="primary" :max="pageCount"
:input="true" @input="changePage" />
</template>
</q-table>
</q-card-section>
<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="立即提交" color="accent q-px-md" style="font-weight:400 !important" :loading="saveLoading"
@click="save" /> -->
</q-card-actions>
</q-card>
</q-dialog>
</template>
<script>
import {
getClassCheckPageList
} from '../../api/stuMan/index.js'
export default {
props: {
type: {
type: Number,
default: 1
},
setObj: {
type: Object,
}
},
data() {
return {
persistent: true,
loading: false,
pageCount: 0,
msg: {
pageIndex: 1,
pageSize: 10,
rowsPerPage: 10,
OrderGuestId: 0,
CheckStatus: 1,
MakeUpStatus: 2,
},
data: [],
columns: [
{
name: "GuestName",
label: "学生名称",
align: "left",
field: "GuestName",
},
{
name: "ClassName",
label: "班级名称",
align: "left",
field: "ClassName",
required: true,
},
{
name: "ClassNo",
label: "班号",
align: "left",
field: "ClassNo"
},
{
name: "CourseName",
label: "课程",
align: "left",
field: "CourseName",
},
{
name: "RoomName",
label: "教室",
align: "left",
field: "RoomName",
},
{
name: "TeacherName",
label: "教师",
align: "left",
field: "TeacherName",
},
{
name: "ClassDate",
label: "上课时间",
align: "left",
field: "ClassDate",
},
{
name: "TimeBucket",
label: "上课时间段",
align: "left",
field: "TimeBucket",
},
{
name: "CreateTime",
label: "签到时间",
align: "left",
field: "CreateTime",
},
]
}
},
mounted() {
if (this.setObj) {
this.msg.OrderGuestId = this.setObj.Student_Id
}
if (this.type === 1) {
//可补课时
this.msg.CheckStatus = 1
this.msg.MakeUpStatus = 2
} else if (this.type === 2) {
// 缺勤
this.msg.CheckStatus = 1
delete this.msg.MakeUpStatus
} else if (this.type === 3) {
// 请假
this.msg.CheckStatus = 2
delete this.msg.MakeUpStatus
}
this.getList();
},
methods: {
closeSaveForm() {
this.$emit('close')
this.persistent = false
},
getList() {
getClassCheckPageList(this.msg).then(res => {
console.log(83, res)
if (res.Code === 1) {
this.data = res.Data.PageData
this.pageCount = res.Data.PageCount
}
})
},
//重新查询
resetSearch() {
this.msg.pageIndex = 1;
this.getList();
},
//翻页
changePage(val) {
this.msg.pageIndex = val;
this.getList()
},
},
}
</script>
<style>
.avatar-uploader .el-upload {
border-radius: 6px;
cursor: pointer;
width: 100%;
height: 100%;
color: #8c939d;
position: relative;
overflow: hidden;
}
.addDutyMain {
display: inline-block;
width: 118px;
height: 118px;
font-size: 70px;
border: 1px dashed #d9d9d9;
line-height: 120px;
}
.ItemImgDiv {
width: 118px;
height: 118px;
position: relative;
margin: 0 10px 10px 0;
display: inline-block;
}
._delete_img {
position: absolute;
top: 0px;
height: 82px;
width: 143px;
line-height: 34px;
text-align: center;
background-color: rgba(2, 2, 2, 0.6);
display: inherit;
opacity: 0;
transition: all linear .5s
}
._delete_img i.iconfont {
display: inline-block;
width: 32px;
height: 32px;
border-radius: 50%;
color: #E95252 !important;
background-color: rgba(251, 251, 251, 0.9);
margin-top: 26px;
}
._upload_box ul li {
float: left;
height: 82px;
width: 143px;
padding: 0px 20px 20px 0;
text-align: center;
position: relative;
cursor: pointer;
margin-right: 10px;
}
._upload_box ul li img {
height: 82px;
width: 143px;
}
._upload_box ul li:hover ._delete_img {
opacity: 1;
}
._upload_tips {
font-size: 12px;
position: absolute;
top: 71%;
width: 100%;
left: 0;
text-align: center;
color: #949494;
}
</style>
...@@ -18,16 +18,16 @@ ...@@ -18,16 +18,16 @@
<div class="text-h6">高级查询</div> <div class="text-h6">高级查询</div>
</q-card-section> </q-card-section>
<div class="row q-mb-md"> <div class="row q-mb-md">
<q-input clearable standout="bg-primary text-white" class="col-12" v-model="msg.classId" label="班号" <q-input clearable standout="bg-primary text-white" class="col-12" v-model="msg.ClassNo" label="班号"
maxlength="20" /> maxlength="20" />
</div> </div>
<div class="row q-mb-md"> <div class="row q-mb-md">
<q-input clearable standout="bg-primary text-white" class="col-12" v-model="msg.orderId" label="订单号" <q-input clearable standout="bg-primary text-white" class="col-12" v-model="msg.OrderId" label="订单号"
maxlength="20" /> maxlength="20" />
</div> </div>
<div class="row q-mb-md"> <div class="row q-mb-md">
<q-select standout="bg-primary text-white" class="col-12" option-label="EmployeeName" option-value="Id" <q-select standout="bg-primary text-white" class="col-12" option-label="EmployeeName" option-value="Id"
v-model="msg.employee" :options="EmployeeList" emit-value use-input map-options label="业务员" clearable v-model="msg.EnterID" :options="EmployeeList" emit-value use-input map-options label="业务员" clearable
@filter="filterEmployee"> @filter="filterEmployee">
<template v-slot:no-option> <template v-slot:no-option>
<q-item> <q-item>
...@@ -41,26 +41,27 @@ ...@@ -41,26 +41,27 @@
<div class="Sysuser_Date row q-mb-md"> <div class="Sysuser_Date row q-mb-md">
<q-field filled class="col-12"> <q-field filled class="col-12">
 <template v-slot:control>  <template v-slot:control>
<el-date-picker v-model="msg.SelectStartTimeStr" type="date" placeholder="下单时间" value-format="yyyy-MM-dd" <el-date-picker v-model="dateList" value-format="yyyy-MM-dd" type="daterange" style="border:none;"
@change="">  range-separator="至"  start-placeholder="开始日期"  end-placeholder="结束日期">
</el-date-picker>      </el-date-picker>      
</template> </template>
</q-field> </q-field>
</div> </div>
<div class="row q-mb-md"> <div class="row q-mb-md">
<q-select standout="bg-primary text-white" v-model="msg.status" class="col-12" :options="statusOpts" option-label="name" option-value="Id" <q-select standout="bg-primary text-white" v-model="msg.EffectStatus" class="col-12" :options="statusOpts"
emit-value map-options label="状态" /> option-label="name" option-value="Id" emit-value map-options label="状态" />
</div> </div>
<div class="row q-mb-md"> <div class="row q-mb-md">
<q-select standout="bg-primary text-white" v-model="msg.type" class="col-12" :options="typeOpts" option-label="name" option-value="Id" <q-select standout="bg-primary text-white" v-model="msg.JoinType" class="col-12" :options="typeEnum"
emit-value map-options label="类型" /> option-label="Name" option-value="Id" emit-value map-options label="类型" />
</div> </div>
<div class="row q-mb-md"> <div class="row q-mb-md">
<q-select standout="bg-primary text-white" v-model="msg.warn" class="col-12" :options="warnOpts" option-label="name" option-value="Id" <q-select standout="bg-primary text-white" v-model="msg.EarlyWarning" class="col-12" :options="warnEnum"
emit-value map-options label="预警" /> option-label="Name" option-value="Id" emit-value map-options label="预警" />
</div> </div>
<q-card-section> <q-card-section>
<q-btn color="accent" label="查询" @click="query" style="float:right"></q-btn> <q-btn color="accent" label="查询" @click="query" style="float:right"></q-btn>
<q-btn text-color="accent q-mr-md" label="重置" @click="resetForm" style="float:right"></q-btn>
</q-card-section> </q-card-section>
</q-card> </q-card>
<div class="dialog-out-close" @click="closeEditOrder" <div class="dialog-out-close" @click="closeEditOrder"
...@@ -73,135 +74,99 @@ ...@@ -73,135 +74,99 @@
import { import {
queryEmployee queryEmployee
} from '../../api/users/user'; //获取员工 } from '../../api/users/user'; //获取员工
import {
getClassDropDownList
} from '../../api/school/index'; //获取校区列表
export default { export default {
name: "editOrder-form",
props: { props: {
typeEnum: {
type: Array
},
warnEnum: {
type: Array
},
saveQuery: {
type: Object,
default: null
}
}, },
data() { data() {
return { return {
showquery: true, showquery: true,
statusOpts:[ statusOpts: [{
{ name: "不限",
name:"未生效", Id: ""
Id:1
}, },
{ {
name:"正常", name: "未生效",
Id:2 Id: 0
}, },
{ {
name:"休学", name: "正常",
Id:3 Id: 1
}, },
{ {
name:"完课", name: "退学",
Id:4 Id: 2
}, },
],
typeOpts:[
{ {
name:"插班", name: "申请中",
Id:1 Id: 3
}, },
{ {
name:"转班", name: "驳回申请",
Id:2 Id: 4
}, },
{ {
name:"分拆", name: "停课",
Id:3 Id: 5
}, },
{ {
name:"正常", name: "停课申请中",
Id:4 Id: 6
}, },
],
warnOpts:[
{ {
name:"无", name: "完结的订单",
Id:1 Id: 7
}, },
{ {
name:"不足5课时", name: "转班申请中",
Id:2 Id: 8
},
{
name:"不足10课时",
Id:3
},
{
name:"不足15课时",
Id:4
},
{
name:"不足20课时",
Id:5
}, },
], ],
classList: [],
msg: { msg: {
classId:1, ClassNo: "",
orderId:"1", OrderId: 0,
employee:0, EnterID: 0,
status:1, EffectStatus: "",
type:1, JoinType: 0,
date:"", OrderTime: "",
warn:1, EndOrderTime: "",
EarlyWarning: 0,
chooseNum: 0, //选中几项
}, },
EmployeeList: [], //员工列表 EmployeeList: [], //员工列表
AllemployeeList: [], //所有员工列表 AllemployeeList: [], //所有员工列表
CourseList: [], //课程列表 dateList: [],
courseObj: {}, //选择的课程
Teacher_Id: 0,
ClassName: ''
} }
}, },
mounted() { mounted() {
this.getEmployee(); if (this.saveQuery) {
}, this.msg.ClassNo = this.saveQuery.ClassNo
methods: { this.msg.OrderId = this.saveQuery.OrderId
//获取课程信息 this.msg.EnterID = this.saveQuery.EnterID
getClassList(ClassId) { this.msg.EffectStatus = this.saveQuery.EffectStatus
this.OrderMsg.CourseId = ''; this.msg.JoinType = this.saveQuery.JoinType
this.CourseList = []; this.msg.EarlyWarning = this.saveQuery.EarlyWarning
let val = this.classList.find(x => x.ClassId == ClassId); this.msg.ClassNo = this.saveQuery.ClassNo
if (val) { if(this.saveQuery.OrderTime){
this.Teacher_Id = val.Teacher_Id; this.dateList[0] = this.saveQuery.OrderTime
this.ClassName = val.ClassName;
} }
var qMsg = { if(this.saveQuery.EndOrderTime){
ClassId: ClassId this.dateList[1] = this.saveQuery.EndOrderTime
};
queryChaClassInfo(qMsg).then(res => {
if (res.Code == 1) {
this.CourseList = res.Data.otherCourse;
} }
}); this.$forceUpdate()
},
//获取班级列表
getClass() {
getClassDropDownList({
IsAddDefault: 0,
IsQuerySurplus: 1
}).then(res => {
if (res.Code == 1) {
let tempArray = res.Data;
if (!tempArray) {
tempArray = [];
} }
tempArray.unshift({ this.getEmployee();
ClassId: 0,
ClassName: "不限"
})
this.classList = tempArray;
}
})
}, },
methods: {
//筛选员工 //筛选员工
filterEmployee(val, update) { filterEmployee(val, update) {
update(() => { update(() => {
...@@ -234,12 +199,54 @@ ...@@ -234,12 +199,54 @@
this.showquery = false; this.showquery = false;
this.$emit('close') this.$emit('close')
}, },
resetForm() {
this.msg = {
ClassNo: "",
OrderId: 0,
EnterID: 0,
EffectStatus: "",
JoinType: 0,
OrderTime: "",
EndOrderTime: "",
EarlyWarning: 0,
chooseNum: 0, //选中几项
}
this.dateList = []
},
query() { query() {
this.msg.chooseNum = 0
if (!this.dateList) {
this.dateList = []
}
if (this.dateList.length > 0) {
this.msg.chooseNum++
this.msg.OrderTime = this.dateList[0]
this.msg.EndOrderTime = this.dateList[1]
} else {
this.msg.OrderTime = ""
this.msg.EndOrderTime = ""
}
if (this.msg.ClassNo) {
this.msg.chooseNum++
}
if (this.msg.OrderId) {
this.msg.chooseNum++
}
if (this.msg.EnterID) {
this.msg.chooseNum++
}
if (this.msg.EffectStatus >= 0 && this.msg.EffectStatus !== "") {
this.msg.chooseNum++
}
if (this.msg.JoinType) {
this.msg.chooseNum++
}
if (this.msg.EarlyWarning) {
this.msg.chooseNum++
}
this.showquery = false; this.showquery = false;
this.$emit("success", this.msg) this.$emit("success", this.msg)
} }
} }
} }
</script> </script>
\ No newline at end of file
...@@ -37,24 +37,31 @@ ...@@ -37,24 +37,31 @@
.column-cell-class-name-test-lan-s .v-table-body-cell { .column-cell-class-name-test-lan-s .v-table-body-cell {
background-color: #9cf; background-color: #9cf;
} }
.color-red{
color:red; .color-red {
color: red;
} }
.color-green{
color:green; .color-green {
color: green;
} }
.color-black{
color:black !important; .color-black {
color: black !important;
} }
.border-b{
.border-b {
border-bottom: 1px solid #999; border-bottom: 1px solid #999;
} }
td .border-b:last-child{
border:none; td .border-b:last-child {
border: none;
} }
.orderCompleteStatistics td{
color:#000; .orderCompleteStatistics td {
color: #000;
} }
</style> </style>
<template> <template>
<div class="page_EasyReport My_table_tell page-body" v-loading="AALloading"> <div class="page_EasyReport My_table_tell page-body" v-loading="AALloading">
...@@ -100,7 +107,7 @@ ...@@ -100,7 +107,7 @@
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="业务员:"> <el-form-item label="业务员:">
<el-select v-model="msg.CreateBy" filterable > <el-select v-model="msg.CreateBy" filterable>
<el-option label="不限" :value="0"></el-option> <el-option label="不限" :value="0"></el-option>
<el-option v-for="item in EmployeeList" :label="item.EmployeeName" :key="item.Id" :value="item.Id"> <el-option v-for="item in EmployeeList" :label="item.EmployeeName" :key="item.Id" :value="item.Id">
{{item.EmployeeName}}</el-option> {{item.EmployeeName}}</el-option>
...@@ -134,7 +141,7 @@ ...@@ -134,7 +141,7 @@
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="账号:"> <el-form-item label="账号:">
<el-select v-model="msg.AccountId" filterable > <el-select v-model="msg.AccountId" filterable>
<el-option label="不限" :value="0"></el-option> <el-option label="不限" :value="0"></el-option>
<el-option v-for='item in accountList' :label='item.Name' :value='item.ID' :key='item.ID'></el-option> <el-option v-for='item in accountList' :label='item.Name' :value='item.ID' :key='item.ID'></el-option>
</el-select> </el-select>
...@@ -142,23 +149,23 @@ ...@@ -142,23 +149,23 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="下单时间:"> <el-form-item label="下单时间:">
<el-date-picker class="h34" v-model="datevalue" type="daterange" <el-date-picker class="h34" v-model="datevalue" type="daterange" value-format="yyyy-MM-dd"
value-format="yyyy-MM-dd" range-separator="至"></el-date-picker> range-separator="至"></el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="消费课时:"> <el-form-item label="消费课时:">
<el-date-picker class="h34" v-model="datevalue2" type="daterange" <el-date-picker class="h34" v-model="datevalue2" type="daterange" value-format="yyyy-MM-dd"
value-format="yyyy-MM-dd" range-separator="至"></el-date-picker> range-separator="至"></el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item > <el-form-item>
<!-- <button class="normalBtn " @click="getData()">查询</button> --> <!-- <button class="normalBtn " @click="getData()">查询</button> -->
<q-btn color="primary" size="11px" label="查询" @click="handleCurrentChange(1)" style="marginRight:10px"/> <q-btn color="primary" size="11px" label="查询" @click="handleCurrentChange(1)" style="marginRight:10px" />
<!-- <button class="normalBtn " @click="exportExcel">导出EXCEL</button> --> <!-- <button class="normalBtn " @click="exportExcel">导出EXCEL</button> -->
<q-btn color="primary" size="11px" label="导出EXCEL" @click="exportExcel"/> <q-btn color="primary" size="11px" label="导出EXCEL" @click="exportExcel" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
...@@ -169,7 +176,8 @@ ...@@ -169,7 +176,8 @@
<p class="easyUpdateTime" v-if="UpdateStaus==2">上次更新时间 {{UpdateStartTime}}<br />每日8点、12点、19点、22点数据更新~</p> --> <p class="easyUpdateTime" v-if="UpdateStaus==2">上次更新时间 {{UpdateStartTime}}<br />每日8点、12点、19点、22点数据更新~</p> -->
</div> </div>
<div style="width:100%; overflow-x:auto"> <div style="width:100%; overflow-x:auto">
<table :boeder="1" class="singeRowTable orderCompleteStatistics" style="width:3000px;border:1px solid #E6E6E6;" cellspacing="0" cellpadding="0"> <table :boeder="1" class="singeRowTable orderCompleteStatistics" style="width:3000px;border:1px solid #E6E6E6;"
cellspacing="0" cellpadding="0">
<tr> <tr>
<th colspan="15" style="border-right:1px solid #999;border-bottom:1px solid #999">合同信息</th> <th colspan="15" style="border-right:1px solid #999;border-bottom:1px solid #999">合同信息</th>
<th colspan="6" style="border-right:1px solid #999;border-bottom:1px solid #999">收款信息</th> <th colspan="6" style="border-right:1px solid #999;border-bottom:1px solid #999">收款信息</th>
...@@ -225,21 +233,22 @@ ...@@ -225,21 +233,22 @@
<td @click="goUrl3('/sale/orderStatistics',item.OrderId)"> <td @click="goUrl3('/sale/orderStatistics',item.OrderId)">
<template v-if="item.JoinType==3"> <template v-if="item.JoinType==3">
<el-tooltip class="item" effect="dark" content="续费订单" placement="top-start"> <el-tooltip class="item" effect="dark" content="续费订单" placement="top-start">
<span style="cursor: pointer;text-decoration: underline;color:red" > <span style="cursor: pointer;text-decoration: underline;color:red">
{{item.OrderId}} {{item.OrderId}}
</span> </span>
</el-tooltip> </el-tooltip>
</template> </template>
<template v-else-if="item.TargetJoinType==3"> <template v-else-if="item.TargetJoinType==3">
<el-tooltip class="item" effect="dark" content="已续费" placement="top-start"> <el-tooltip class="item" effect="dark" content="已续费" placement="top-start">
<span style="cursor: pointer;text-decoration: underline;color:green" > <span style="cursor: pointer;text-decoration: underline;color:green">
{{item.OrderId}} {{item.OrderId}}
</span> </span>
</el-tooltip> </el-tooltip>
</template> </template>
<template v-else-if="item.TargetJoinType==4"> <template v-else-if="item.TargetJoinType==4">
<el-tooltip class="item" effect="dark" :content="`已转班【${item.TargetClassName}】,关联订单号${item.TargetOrderId}`" placement="top-start"> <el-tooltip class="item" effect="dark"
<span style="cursor: pointer;text-decoration: underline;color:orange" > :content="`已转班【${item.TargetClassName}】,关联订单号${item.TargetOrderId}`" placement="top-start">
<span style="cursor: pointer;text-decoration: underline;color:orange">
{{item.OrderId}} {{item.OrderId}}
</span> </span>
</el-tooltip> </el-tooltip>
...@@ -247,97 +256,133 @@ ...@@ -247,97 +256,133 @@
<template v-else-if="item.TargetJoinType==1"> <template v-else-if="item.TargetJoinType==1">
<template v-if="item.JoinType==3"> <template v-if="item.JoinType==3">
<el-tooltip class="item" effect="dark" :content="`原订单${item.SourceOrderId}`" placement="top-start"> <el-tooltip class="item" effect="dark" :content="`原订单${item.SourceOrderId}`" placement="top-start">
<span style="cursor: pointer;text-decoration: underline;color:blue" > <span style="cursor: pointer;text-decoration: underline;color:blue">
{{item.OrderId}} {{item.OrderId}}
</span> </span>
</el-tooltip> </el-tooltip>
</template> </template>
<template v-else-if="item.JoinType==4"> <template v-else-if="item.JoinType==4">
<el-tooltip class="item" effect="dark" :content="`从【${item.SourceClassName}】转入,关联订单号${item.SourceOrderId}`" placement="top-start"> <el-tooltip class="item" effect="dark"
<span style="cursor: pointer;text-decoration: underline;color:blue" > :content="`从【${item.SourceClassName}】转入,关联订单号${item.SourceOrderId}`" placement="top-start">
<span style="cursor: pointer;text-decoration: underline;color:blue">
{{item.OrderId}} {{item.OrderId}}
</span> </span>
</el-tooltip> </el-tooltip>
</template> </template>
<template v-else> <template v-else>
<span style="cursor: pointer;text-decoration: underline;" > <span style="cursor: pointer;text-decoration: underline;">
{{item.OrderId}} {{item.OrderId}}
</span> </span>
</template> </template>
</template> </template>
<template v-else> <template v-else>
<span style="cursor: pointer;text-decoration: underline;" > <span style="cursor: pointer;text-decoration: underline;">
{{item.OrderId}} {{item.OrderId}}
</span> </span>
</template> </template>
</td> </td>
<td>{{item.CreateTime}}</td> <td>{{item.CreateTime}}</td>
<td @click="goUrl('/sale/contractManage',item.ContractNo)"><span style="cursor: pointer;text-decoration: underline;" >{{item.ContractNo}}</span></td> <td @click="goUrl('/sale/contractManage',item.ContractNo)"><span
<td @click="goUrl('/course/course',item.CourseName)"><span style="cursor: pointer;text-decoration: underline;" >{{item.CourseName}}</span></td> style="cursor: pointer;text-decoration: underline;">{{item.ContractNo}}</span></td>
<td >{{item.ClassNo}}</td> <td @click="goUrl('/course/course',item.CourseName)"><span
<td @click="goUrl2('/course/classManage',item.ClassName)"><div style="cursor: pointer;text-decoration: underline;" >{{item.ClassName}}</div></td> style="cursor: pointer;text-decoration: underline;">{{item.CourseName}}</span></td>
<td>{{item.ClassNo}}</td>
<td @click="goUrl2('/course/classManage',item.ClassName)">
<div style="cursor: pointer;text-decoration: underline;">{{item.ClassName}}</div>
</td>
<td>{{item.StudentName}}</td> <td>{{item.StudentName}}</td>
<td>{{item.CreateByName}}</td> <td>{{item.CreateByName}}</td>
<td>{{item.TotalClassHours}}</td> <td>{{item.TotalClassHours}}</td>
<td>{{item.TotalUnitPrice}}</td> <td>{{item.TotalUnitPrice}}</td>
<td>{{item.TotalCourseFee}}</td> <td>{{item.TotalCourseFee}}</td>
<td>{{item.TotalBookFee}}</td><!--教材费--> <td>{{item.TotalBookFee}}</td>
<td>{{item.TotalClassFee}}</td><!--课件费--> <!--教材费-->
<td>{{item.TotalDiscountMoney}}</td><!--优惠金额--------------------------> <td>{{item.TotalClassFee}}</td>
<td>{{item.TotalMoney}}</td><!--合同总金额--> <!--课件费-->
<td>{{item.TotalDiscountMoney}}</td>
<!--优惠金额-------------------------->
<td>{{item.TotalMoney}}</td>
<!--合同总金额-->
<!-- -收款信息(实收金额-- --> <!-- -收款信息(实收金额-- -->
<td> <td>
<div v-for="subitem in item.IncomeList" class="border-b"> <div v-for="subitem in item.IncomeList" class="border-b">
{{ subitem.FrID }} {{ subitem.FrID }}
</div> </div>
</td><!--单据号--> </td>
<!--单据号-->
<td> <td>
<div v-for="subitem in item.IncomeList" class="border-b"> <div v-for="subitem in item.IncomeList" class="border-b">
{{ subitem.TradeDate }} {{ subitem.TradeDate }}
</div> </div>
</td><!--收款日期--> </td>
<!--收款日期-->
<td> <td>
<div v-for="subitem in item.IncomeList" class="border-b"> <div v-for="subitem in item.IncomeList" class="border-b">
{{ subitem.Money }} {{ subitem.Money }}
</div> </div>
</td><!--收款金额--> </td>
<!--收款金额-->
<td> <td>
<div v-for="subitem in item.IncomeList" class="border-b"> <div v-for="subitem in item.IncomeList" class="border-b">
<div v-for="_subitem in subitem.TradeWayList"> <div v-for="_subitem in subitem.TradeWayList">
{{ _subitem.TypeName }} {{ _subitem.TypeName }}
</div> </div>
</div> </div>
</td><!--收款方式--> </td>
<!--收款方式-->
<td> <td>
<div v-for="subitem in item.IncomeList" class="border-b"> <div v-for="subitem in item.IncomeList" class="border-b">
<div v-for="_subitem in subitem.TradeWayList" > <div v-for="_subitem in subitem.TradeWayList">
{{ _subitem.Alias||'/' }} {{ _subitem.Alias||'/' }}
</div> </div>
</div> </div>
</td><!--收款账户--> </td>
<!--收款账户-->
<!-- ---- --> <!-- ---- -->
<td>{{item.PreferPrice}}</td><!--应收金额--> <td>{{item.PreferPrice}}</td>
<!--应收金额-->
<!-- -合同有效金额--- --> <!-- -合同有效金额--- -->
<td>{{item.EffectiveClassHours}}</td><!--有效课时--> <td>{{item.EffectiveClassHours}}</td>
<td>{{item.Income}}</td><!--有效金额--> <!--有效课时-->
<td>{{item.Income}}</td>
<!--有效金额-->
<!-- 消耗情况 --> <!-- 消耗情况 -->
<td>{{item.UseBookFee}}</td><!--教材费--> <td>{{item.UseBookFee}}</td>
<td>{{item.UseCoursewareFee}}</td><!--课件费--> <!--教材费-->
<td>{{item.Progress}}</td><!--上课进度--> <td>{{item.UseCoursewareFee}}</td>
<td>{{item.UseClassHours}}</td><!--已上课时--> <!--课件费-->
<td>{{item.Unit_Price}}</td><!--单价--> <td>{{item.Progress}}</td>
<td>{{item.UseCourseFee}}</td><!--已上课金额--> <!--上课进度-->
<td>{{item.Expend}}</td><!--退/付款金额--> <td>{{item.UseClassHours}}</td>
<!--已上课时-->
<td>{{item.Unit_Price}}</td>
<!--单价-->
<td>{{item.UseCourseFee}}</td>
<!--已上课金额-->
<td>{{item.Expend}}</td>
<!--退/付款金额-->
<!-- -剩余情况-- --> <!-- -剩余情况-- -->
<td>{{item.AdjustPrice}}</td><!--协调金额--> <td>{{item.AdjustPrice}}</td>
<td>{{item.SurplusCourseHours}}</td><!--剩余课时--> <!--协调金额-->
<td :class="{'color-red':item.SurplusMoney<0,'color-green':item.SurplusMoney>0&&item.SurplusMoney<500,'color-black':item.SurplusMoney==0||item.SurplusMoney>=500}">{{item.SurplusMoney}}</td><!--剩余金额--> <td>{{item.SurplusCourseHours}}</td>
<td><q-btn color="primary" style="width:80px;font-size:10px" label="协调金额" @click="show($event),AdjustPriceMsg.ContractId=item.Id,AdjustPriceMsg.AdjustPrice=item.AdjustPrice"/></td><!--操作--> <!--剩余课时-->
<td
:class="{'color-red':item.SurplusMoney<0,'color-green':item.SurplusMoney>0&&item.SurplusMoney<500,'color-black':item.SurplusMoney==0||item.SurplusMoney>=500}">
{{item.SurplusMoney}}</td>
<!--剩余金额-->
<td>
<q-btn color="primary" style="width:80px;font-size:10px" label="协调金额" v-if="from==1"
@click="show($event),AdjustPriceMsg.ContractId=item.Id,AdjustPriceMsg.AdjustPrice=item.AdjustPrice" />
<q-btn color="primary" style="width:80px;font-size:10px" label="查看明细" v-if="from==2" @click="seeClassUseDetail(item)" />
</td>
<!--操作-->
</tr> </tr>
</template> </template>
</table> </table>
<div class="noDataNotice" v-if="DataList.length<1"><i class="iconfont icon-kong"></i> <p>暂无数据</p></div> <div class="noDataNotice" v-if="DataList.length<1"><i class="iconfont icon-kong"></i>
<p>暂无数据</p>
</div>
</div> </div>
<!-- 对话框 --> <!-- 对话框 -->
<template> <template>
...@@ -348,18 +393,11 @@ ...@@ -348,18 +393,11 @@
<div class="text-h6" style="textAlign:center">设置协调金额</div> <div class="text-h6" style="textAlign:center">设置协调金额</div>
</q-card-section> </q-card-section>
<q-form @submit="onSubmit" class="q-gutter-md"> <q-form @submit="onSubmit" class="q-gutter-md">
<q-input <q-input filled ref="money" v-model="AdjustPriceMsg.AdjustPrice" label="协调金额" lazy-rules step="0.000001"
filled type="number" />
ref="money"
v-model="AdjustPriceMsg.AdjustPrice"
label="协调金额"
lazy-rules
step="0.000001"
type="number"
/>
<div style="display:flex; justify-content:flex-end"> <div style="display:flex; justify-content:flex-end">
<q-btn label="确认" type="Submit" color="primary" style="margin-right:10px"/> <q-btn label="确认" type="Submit" color="primary" style="margin-right:10px" />
<q-btn label="取消" text-color="primary" @click="hide"/> <q-btn label="取消" text-color="primary" @click="hide" />
</div> </div>
</q-form> </q-form>
</div> </div>
...@@ -368,13 +406,8 @@ ...@@ -368,13 +406,8 @@
</template> </template>
<div v-if="DataList.length>0"> <div v-if="DataList.length>0">
<el-pagination <el-pagination background @current-change="handleCurrentChange" :current-page.sync="msg.pageIndex"
background layout="total,prev, pager, next, jumper" :page-size='msg.pageSize' :total='total'>
@current-change="handleCurrentChange"
:current-page.sync="msg.pageIndex"
layout="total,prev, pager, next, jumper"
:page-size='msg.pageSize'
:total='total'>
</el-pagination> </el-pagination>
</div> </div>
</div> </div>
...@@ -383,8 +416,13 @@ ...@@ -383,8 +416,13 @@
import { import {
getSchoolDropdown, //获取校区列表 getSchoolDropdown, //获取校区列表
} from '../../api/school/index'; } from '../../api/school/index';
import { queryEmployee } from '../../api/users/user';//获取业务员 import {
import {getOrderCompleteStatisticsPageList,setContractAdjustPrice} from "../../api/report/index" queryEmployee
} from '../../api/users/user'; //获取业务员
import {
getOrderCompleteStatisticsPageList,
setContractAdjustPrice
} from "../../api/report/index"
import Vue from "vue"; import Vue from "vue";
import { import {
...@@ -397,27 +435,27 @@ ...@@ -397,27 +435,27 @@
export default { export default {
data() { data() {
return { return {
total:0, total: 0,
msg: { msg: {
pageIndex:1, pageIndex: 1,
pageSize:10, pageSize: 10,
OrderId:0,// 订单编号 OrderId: 0, // 订单编号
ContractNo:"",//合同编号 ContractNo: "", //合同编号
StudentName:"",//学生姓名 StudentName: "", //学生姓名
ClassName:"",//班级名称 ClassName: "", //班级名称
CourseName:"",//课程名称 CourseName: "", //课程名称
CreateBy:0,//业务员 CreateBy: 0, //业务员
FinanceId:0,//财务单据id FinanceId: 0, //财务单据id
TradeWay:0,//交易方式 TradeWay: 0, //交易方式
AccountId:0,//账号id AccountId: 0, //账号id
AccountType:0,//账户类型 AccountType: 0, //账户类型
StartTime:'',//下单时间 StartTime: '', //下单时间
EndTime:'', EndTime: '',
XFStartTime:'',//消费课时时间 XFStartTime: '', //消费课时时间
XFEndTime:'', XFEndTime: '',
}, },
datevalue:[], datevalue: [],
datevalue2:[], datevalue2: [],
data: [], data: [],
DataList: [], DataList: [],
UpdateStaus: 0, UpdateStaus: 0,
...@@ -429,22 +467,27 @@ ...@@ -429,22 +467,27 @@
AALloading: false, AALloading: false,
userId: -2, userId: -2,
EmployeeList:[],//业务员列表 EmployeeList: [], //业务员列表
AccList:[],//账户类型列表 AccList: [], //账户类型列表
BranchAccountList:[],//交易方式列表 BranchAccountList: [], //交易方式列表
accountList:[],//账号id列表 accountList: [], //账号id列表
AdjustPriceMsg:{ AdjustPriceMsg: {
ContractId:"",//合同id ContractId: "", //合同id
AdjustPrice:"",//协调金额 AdjustPrice: "", //协调金额
} },
from: 1, //来源页
} }
}, },
created() { created() {
let userInfo = this.getLocalStorage(); let userInfo = this.getLocalStorage();
this.userId = userInfo.EmployeeId; this.userId = userInfo.EmployeeId;
}, },
mounted() { mounted() {
if (this.$route.query.from) {
this.from = this.$route.query.from
this.$forceUpdate();
}
this.getData(); this.getData();
this.getCompanyList(); this.getCompanyList();
this.getEmployee(0); this.getEmployee(0);
...@@ -460,29 +503,27 @@ ...@@ -460,29 +503,27 @@
exportExcel: function () { exportExcel: function () {
EduDownLoad("/finance/OutToExcelOrderStudentClassHoursList", this.msg, "订单完成统计.xls") EduDownLoad("/finance/OutToExcelOrderStudentClassHoursList", this.msg, "订单完成统计.xls")
}, },
getData() {
getData(){
if (this.datevalue && this.datevalue.length > 0) { if (this.datevalue && this.datevalue.length > 0) {
this.msg.StartTime = this.datevalue[0]; this.msg.StartTime = this.datevalue[0];
this.msg.EndTime = this.datevalue[1]; this.msg.EndTime = this.datevalue[1];
}else{ } else {
this.msg.StartTime = ''; this.msg.StartTime = '';
this.msg.EndTime = ''; this.msg.EndTime = '';
} }
if (this.datevalue2 && this.datevalue2.length > 0) { if (this.datevalue2 && this.datevalue2.length > 0) {
this.msg.XFStartTime = this.datevalue2[0]; this.msg.XFStartTime = this.datevalue2[0];
this.msg.XFEndTime = this.datevalue2[1]; this.msg.XFEndTime = this.datevalue2[1];
}else{ } else {
this.msg.XFStartTime = ''; this.msg.XFStartTime = '';
this.msg.XFEndTime = ''; this.msg.XFEndTime = '';
} }
getOrderCompleteStatisticsPageList(this.msg).then((res)=>{ getOrderCompleteStatisticsPageList(this.msg).then((res) => {
res.Data.PageData.map((item)=>{ res.Data.PageData.map((item) => {
item.Progress=item.Progress+"%" item.Progress = item.Progress + "%"
}) })
this.DataList=res.Data.PageData this.DataList = res.Data.PageData
this.total=res.Data.Count this.total = res.Data.Count
}) })
}, },
getCompanyList() { getCompanyList() {
...@@ -505,9 +546,9 @@ ...@@ -505,9 +546,9 @@
var qMsg = { var qMsg = {
Dept_Id: 0 Dept_Id: 0
} }
qMsg.Dept_Id=id; qMsg.Dept_Id = id;
queryEmployee(qMsg).then(res => { queryEmployee(qMsg).then(res => {
if(res.Code==1){ if (res.Code == 1) {
this.EmployeeList = res.Data; this.EmployeeList = res.Data;
} }
}).catch(() => { }).catch(() => {
...@@ -619,15 +660,18 @@ ...@@ -619,15 +660,18 @@
} }
}, },
bodyCellSpan({ row, column, rowIndex }) { bodyCellSpan({
row,
column,
rowIndex
}) {
if (rowIndex === 1) { if (rowIndex === 1) {
if (column.field === "date") { if (column.field === "date") {
return { return {
rowspan: 1, rowspan: 1,
colspan: 2, colspan: 2,
}; };
} } else if (column.field === "hobby") {
else if (column.field === "hobby") {
return { return {
rowspan: 0, rowspan: 0,
colspan: 0, colspan: 0,
...@@ -659,14 +703,14 @@ ...@@ -659,14 +703,14 @@
if (this.$refs.money.hasError) { if (this.$refs.money.hasError) {
this.formHasError = true; this.formHasError = true;
} else { } else {
this.AdjustPriceMsg.ContractId=this.AdjustPriceMsg.ContractId.toString(); this.AdjustPriceMsg.ContractId = this.AdjustPriceMsg.ContractId.toString();
this.AdjustPriceMsg.AdjustPrice=this.AdjustPriceMsg.AdjustPrice.toString(); this.AdjustPriceMsg.AdjustPrice = this.AdjustPriceMsg.AdjustPrice.toString();
if(this.AdjustPriceMsg.AdjustPrice==''){ if (this.AdjustPriceMsg.AdjustPrice == '') {
this.AdjustPriceMsg.AdjustPrice=0; this.AdjustPriceMsg.AdjustPrice = 0;
} }
setContractAdjustPrice(this.AdjustPriceMsg).then((res)=>{ setContractAdjustPrice(this.AdjustPriceMsg).then((res) => {
this.$q.notify({ this.$q.notify({
type: "positive", type: "positive",
icon: "done", icon: "done",
...@@ -674,7 +718,7 @@ ...@@ -674,7 +718,7 @@
color: "positive", color: "positive",
message: res.Message, message: res.Message,
}); });
if(res.Code===1){ if (res.Code === 1) {
this.getData() this.getData()
} }
this.$refs.dialog.hide(); this.$refs.dialog.hide();
...@@ -682,24 +726,32 @@ ...@@ -682,24 +726,32 @@
} }
}, },
goUrl(path,Names){ goUrl(path, Names) {
let Name = encodeURI(Names) let Name = encodeURI(Names)
this.OpenNewUrl(path, { this.OpenNewUrl(path, {
Name: Name, Name: Name,
}); });
}, },
goUrl2(path,Names){//班级 goUrl2(path, Names) { //班级
let Name = encodeURI(Names) let Name = encodeURI(Names)
this.OpenNewUrl(path, { this.OpenNewUrl(path, {
ClassName: Name, ClassName: Name,
}); });
}, },
goUrl3(path,ID){//订单跳转 goUrl3(path, ID) { //订单跳转
this.OpenNewUrl(path, { this.OpenNewUrl(path, {
OrderId: ID, OrderId: ID,
}); });
}, },
seeClassUseDetail(item){
let obj={
StudentId:76,
TeacherId:0,
ClassId:16
}
console.log(752,item)
// this.OpenNewUrl("/teacher/studentsClassSee",obj)
}
} }
} }
......
...@@ -3,33 +3,33 @@ ...@@ -3,33 +3,33 @@
list-style-type: none; list-style-type: none;
} }
.activeType ul { .stuList ul {
padding: 0px; padding: 0px;
} }
.activeType li { .stuList li {
background: rgba(221, 222, 224, 0.2); background: rgba(221, 222, 224, 0.2);
border-radius: 4px; border-radius: 4px;
margin-top: 15px; margin-top: 15px;
} }
.activeType li .dline { .stuList li .dline {
display: table; display: table;
width: 100%; width: 100%;
display: flex; display: flex;
flex-direction: row; flex-direction: row;
} }
.activeType li .d1, .stuList li .d1,
.activeType li .d2, .stuList li .d2,
.activeType li .d3, .stuList li .d3,
.activeType li .d4, .stuList li .d4,
.activeType li .d5 { .stuList li .d5 {
width: 18%; width: 18%;
padding: 20px 20px 10px; padding: 20px 20px 10px;
} }
.activeType li .d7 { .stuList li .d7 {
flex: 1; flex: 1;
width: 1px; width: 1px;
display: flex; display: flex;
...@@ -38,19 +38,19 @@ ...@@ -38,19 +38,19 @@
justify-content: center; justify-content: center;
} }
.activeType li .d1 .di-title { .stuList li .d1 .di-title {
font-size: 16px; font-size: 16px;
color: #111111; color: #111111;
} }
.activeType li .d1 .di-c { .stuList li .d1 .di-c {
font-size: 14px; font-size: 14px;
display: flex; display: flex;
line-height: 28px; line-height: 28px;
color: #111111; color: #111111;
} }
.activeType li .d6 { .stuList li .d6 {
padding: 10px 20px; padding: 10px 20px;
width: 100%; width: 100%;
height: inherit; height: inherit;
...@@ -58,7 +58,7 @@ ...@@ -58,7 +58,7 @@
border-top: 1px solid #dddee0; border-top: 1px solid #dddee0;
} }
.activeType li .d6 .progress { .stuList li .d6 .progress {
width: 100%; width: 100%;
height: 5px; height: 5px;
position: absolute; position: absolute;
...@@ -66,41 +66,41 @@ ...@@ -66,41 +66,41 @@
bottom: 0; bottom: 0;
} }
.activeType li .d2 div { .stuList li .d2 div {
margin: 2px 0; margin: 2px 0;
font-size: 14px; font-size: 14px;
color: #111111; color: #111111;
} }
.activeType li .d2-n { .stuList li .d2-n {
font-size: 12px; font-size: 12px;
color: #999999; color: #999999;
margin-right: 20px; margin-right: 20px;
} }
.activeType li .d3 .d3-s { .stuList li .d3 .d3-s {
color: var(--q-color-negative); color: var(--q-color-negative);
font-weight: bold; font-weight: bold;
} }
.activeType li .d3 div { .stuList li .d3 div {
margin: 2px 0; margin: 2px 0;
font-size: 14px; font-size: 14px;
} }
.activeType li .d4 div { .stuList li .d4 div {
font-size: 14px; font-size: 14px;
color: #111111; color: #111111;
margin: 2px 0; margin: 2px 0;
} }
.activeType li .d5 div { .stuList li .d5 div {
font-size: 14px; font-size: 14px;
color: #111111; color: #111111;
margin: 2px 0; margin: 2px 0;
} }
.activeType .myCourseNName { .stuList .myCourseNName {
width: 25px; width: 25px;
height: 25px; height: 25px;
border-radius: 50%; border-radius: 50%;
...@@ -110,7 +110,7 @@ ...@@ -110,7 +110,7 @@
background-color: #004d40; background-color: #004d40;
} }
.activeType .app-image { .stuList .app-image {
background-position: center center; background-position: center center;
width: 50px; width: 50px;
height: 50px; height: 50px;
...@@ -131,6 +131,16 @@ ...@@ -131,6 +131,16 @@
background-color: transparent; background-color: transparent;
} }
.Sysuser_Date .el-range-editor .el-range-input {
width: 100%;
border: none;
background-color: transparent;
}
.el-picker-panel {
z-index: 99999 !important;
}
.syster_qDropdown .q-btn__wrapper { .syster_qDropdown .q-btn__wrapper {
padding: 0 3px; padding: 0 3px;
min-height: 0 !important; min-height: 0 !important;
...@@ -148,13 +158,13 @@ ...@@ -148,13 +158,13 @@
</style> </style>
<template> <template>
<div class="page-body activeType"> <div class="page-body stuList">
<div class="row q-mb-md"> <div class="row q-mb-md">
<q-space></q-space> <q-space></q-space>
<!-- <el-badge :value="11" style="float:right"> --> <!-- <el-badge :value="11" style="float:right"> -->
<div style="position:relative;"> <div style="position:relative;">
<q-btn color="accent" label="高级查询" @click="IsShowQuery=true"></q-btn> <q-btn color="accent" label="高级查询" @click="IsShowQuery=true"></q-btn>
<q-badge floating rounded color="red">11</q-badge> <q-badge floating rounded color="red">{{queryNum}}</q-badge>
</div> </div>
<!-- </el-badge> --> <!-- </el-badge> -->
...@@ -214,14 +224,86 @@ ...@@ -214,14 +224,86 @@
<template v-slot:top="props"> <template v-slot:top="props">
<div class="col-2 q-table__title">学员名单</div> <div class="col-2 q-table__title">学员名单</div>
</template> </template>
<template v-slot:body-cell-ContractNo="props">
<q-td :props="props">
<div style="color:#f00;cursor:pointer;" @click="seeContract(props.row)">
{{props.row.ContractNo}}
</div>
</q-td>
</template>
<template v-slot:body-cell-ClassName="props">
<q-td :props="props">
<div style="color:#f00;cursor:pointer;" @click="seeClassDetail(props.row)">
{{props.row.ClassName}}
</div>
</q-td>
</template>
<template v-slot:body-cell-OrderId="props">
<q-td :props="props">
<div style="color:#f00;cursor:pointer;" @click="showOrderDetail(props.row,1)">
{{props.row.OrderId}}
</div>
</q-td>
</template>
<template v-slot:body-cell-Income="props">
<q-td :props="props">
<div style="color:#f00;cursor:pointer;" @click="showOrderDetail(props.row,4)">
{{props.row.Income}}
</div>
</q-td>
</template>
<template v-slot:body-cell-Refund="props">
<q-td :props="props">
<div style="color:#f00;cursor:pointer;" @click="showOrderDetail(props.row,4)">
{{props.row.Refund}}
</div>
</q-td>
</template>
<template v-slot:body-cell-CompleteHours="props">
<q-td :props="props">
<div style="color:#f00;cursor:pointer;" @click="seeStudentsClassUse(props.row)">
{{props.row.CompleteHours}}
</div>
</q-td>
</template>
<template v-slot:body-cell-MakeUpHours="props">
<q-td :props="props">
<div style="color:#f00;cursor:pointer;" @click="showList(props.row,1)">
{{props.row.MakeUpHours}}
</div>
</q-td>
</template>
<template v-slot:body-cell-AbsenceNum="props">
<q-td :props="props">
<div style="color:#f00;cursor:pointer;" @click="showList(props.row,2)">
{{props.row.AbsenceNum}}
</div>
</q-td>
</template>
<template v-slot:body-cell-LeaveNum="props" >
<q-td :props="props">
<div style="color:#f00;cursor:pointer;" @click="showList(props.row,3)">
{{props.row.LeaveNum}}
</div>
</q-td>
</template>
<template v-slot:body-cell-EventlogNum="props">
<q-td :props="props">
<div style="color:#f00;cursor:pointer;" @click="showEventLog(props.row)">
{{props.row.EventlogNum}}
</div>
</q-td>
</template>
<template v-slot:body-cell-optioned="props"> <template v-slot:body-cell-optioned="props">
<q-td :props="props"> <q-td :props="props">
<div> <div>
<q-btn flat size="xs" color="accent" style="font-weight:400" label="停课" v-if="props.row.GuestState===1" @click="" /> <q-btn flat size="xs" color="accent" style="font-weight:400" label="停课" v-if="props.row.GuestState===1"
<q-btn flat size="xs" color="accent" style="font-weight:400" label="转班" @click="" /> @click="ShowStopLesson(props.row)" />
<q-btn flat size="xs" color="accent" style="font-weight:400" label="转班" v-if="props.row.GuestState===1"
@click="transferClass(props.row,1)" />
<q-btn-dropdown flat size="xs" color="dark" label="更多" style="margin-left:10px;"> <q-btn-dropdown flat size="xs" color="dark" label="更多" style="margin-left:10px;">
<q-list> <q-list>
<q-item clickable v-close-popup @click=""> <q-item clickable v-close-popup @click="showAddEvent(props.row)">
<q-item-section> <q-item-section>
<q-item-label>添加事件</q-item-label> <q-item-label>添加事件</q-item-label>
</q-item-section> </q-item-section>
...@@ -238,9 +320,25 @@ ...@@ -238,9 +320,25 @@
</q-table> </q-table>
</div> </div>
<!-- 高级查询 --> <!-- 高级查询 -->
<MoreQuery v-if="IsShowQuery" @close="closeruleset" :save-obj="typeObj" @success="morequery"> <MoreQuery v-if="IsShowQuery" :typeEnum="typeEnum" :warnEnum="warnEnum" :saveQuery="msg" @close="closeHandle"
@success="morequery">
</MoreQuery> </MoreQuery>
<!-- 停课申请 -->
<StopLesson-form v-if="isShowStopLesson" :setObj="stuObj" @success="resetSearch" @close="closeHandle" />
<!-- 转班申请 -->
<transferclass-form v-if="isShowTransferClass" :save-obj="orderObj" :ChangeType="ChangeType" @close="closeHandle"
@success="resetSearch"></transferclass-form>
<!-- 添加事件 -->
<AddEvent-form v-if="isShowAddEvent" :setObj="eventObj" @success="resetSearch" @close="closeHandle" />
<!-- 班级详情 -->
<classinfo-form v-if="isShowClassInfo" :seting-obj="eventObj" @close="closeHandle"
@success="refreshPage"/>
<!-- 订单详情 -->
<myOrder-form v-if="isShowmyorderForm" :save-obj="eventObj" @close="closeHandle"></myOrder-form>
<!-- 可补课课时,缺勤次数,请假次数 -->
<list v-if="isShowList" :type="showType" :set-obj="eventObj" @close="closeHandle"/>
<!-- 事件记录 -->
<eventLog v-if="isShowEventLog" :set-obj="eventObj" @modify="modifyEvent" @close="closeHandle"/>
</div> </div>
</template> </template>
<script> <script>
...@@ -251,15 +349,32 @@ ...@@ -251,15 +349,32 @@
import { import {
queryCourseDropdownList queryCourseDropdownList
} from '../../api/course/index' } from '../../api/course/index'
import {getStuList} from '../../api/stuMan/index.js' import {
getStuList,
getEarlyWarningEnum,
getTypeEnum,
} from '../../api/stuMan/index.js'
import MoreQuery from '../../components/stuMan/moreQuery.vue' import MoreQuery from '../../components/stuMan/moreQuery.vue'
import StopLessonForm from '../../components/teacher/stopLessonForm'
import transferclassForm from '../../components/sale/transferclass-form' //转班信息
import AddEventForm from '../../components/stuMan/addEvent-form.vue' //转班信息
import classinfoForm from '../../components/course/classinfo-form';//班级详情
import myOrderForm from '../../components/sale/myOrder-form';//订单详情
import list from '../../components/stuMan/makeUpHours.vue';//可补课课时,缺勤次数,请假次数
import eventLog from '../../components/stuMan/eventRecord.vue';//事件记录
export default { export default {
meta: { meta: {
title: "学员名单" title: "学员名单"
}, },
components: { components: {
MoreQuery MoreQuery,
StopLessonForm,
transferclassForm,
AddEventForm,
classinfoForm,
myOrderForm,
list,
eventLog,
}, },
data() { data() {
return { return {
...@@ -270,18 +385,18 @@ ...@@ -270,18 +385,18 @@
pageIndex: 1, pageIndex: 1,
pageSize: 10, pageSize: 10,
rowsPerPage: 10, rowsPerPage: 10,
School_Id:-1,//校区 School_Id: -1, //校区
CourseId:0,//课程 CourseId: 0, //课程
ClassId:0,//班级 ClassId: 0, //班级
GuestName:'',//学生姓名 GuestName: '', //学生姓名
ClassNo:'',//班号 ClassNo: '', //班号
OrderId:"",//订单号 OrderId: 0, //订单号
EnterID:0,//业务员 EnterID: 0, //业务员
EffectStatus:0,//状态 EffectStatus: "", //状态
JoinType:0,//类型 JoinType: 0, //类型
EarlyWarning:0,//预警 EarlyWarning: 0, //预警
OrderTime:"",//下单时间 OrderTime: "", //下单时间
EndOrderTime:"",//下单结束时间 EndOrderTime: "", //下单结束时间
}, },
pageCount: 0, pageCount: 0,
columns: [{ columns: [{
...@@ -292,134 +407,134 @@ ...@@ -292,134 +407,134 @@
required: true, required: true,
}, },
{ {
name: "Name", name: "GuestName",
label: "姓名", label: "姓名",
align: "left", align: "left",
field: "GuestName", field: "GuestName",
required: true, required: true,
}, },
{ {
name: "ActivityTypeName", name: "Mobile",
label: "电话", label: "电话",
align: "left", align: "left",
field: "Mobile" field: "Mobile"
}, },
{ {
name: "ActivityTime", name: "ContractNo",
label: "合同编号", label: "合同编号",
align: "left", align: "left",
field: "ContractNo", field: "ContractNo",
}, },
{ {
name: "AgeAndPeopleNum", name: "ClassName",
label: "班级", label: "班级",
align: "left", align: "left",
field: "ClassName", field: "ClassName",
}, },
{ {
name: "activePrice", name: "CourseName",
label: "课程", label: "课程",
align: "left", align: "left",
field: "CourseName", field: "CourseName",
}, },
{ {
name: "LocationName", name: "TeacherName",
label: "老师", label: "老师",
align: "left", align: "left",
field: "TeacherName", field: "TeacherName",
}, },
{ {
name: "activeStutes", name: "OrderId",
label: "订单号", label: "订单号",
align: "left", align: "left",
field: "OrderId", field: "OrderId",
}, },
{ {
name: "activeStutes", name: "OrderTime",
label: "报名时间", label: "报名时间",
align: "left", align: "left",
field: "OrderTime", field: "OrderTime",
}, },
{ {
name: "activeStutes", name: "EnterName",
label: "业务员", label: "业务员",
field: "EnterName", field: "EnterName",
align: "left" align: "left"
}, },
{ {
name: "activeStutes", name: "PreferPrice",
label: "应收金额", label: "应收金额",
field: "PreferPrice", field: "PreferPrice",
align: "left" align: "left"
}, },
{ {
name: "activeStutes", name: "Income",
label: "实收金额", label: "实收金额",
field: "Income", field: "Income",
align: "left" align: "left"
}, },
{ {
name: "activeStutes", name: "Refund",
label: "退款金额", label: "退款金额",
field: "Refund", field: "Refund",
align: "left" align: "left"
}, },
{ {
name: "activeStutes", name: "TotalHours",
label: "课程总课时", label: "课程总课时",
field: "TotalHours", field: "TotalHours",
align: "left" align: "left"
}, },
{ {
name: "activeStutes", name: "ValidClassHours",
label: "有效课时", label: "有效课时",
field: "ValidClassHours", field: "ValidClassHours",
align: "left" align: "left"
}, },
{ {
name: "activeStutes", name: "CompleteHours",
label: "消耗课时", label: "消耗课时",
field: "CompleteHours", field: "CompleteHours",
align: "left" align: "left"
}, },
{ {
name: "activeStutes", name: "SurplusHours",
label: "剩余课时", label: "剩余课时",
field: "SurplusHours", field: "SurplusHours",
align: "left" align: "left"
}, },
{ {
name: "activeStutes", name: "MakeUpHours",
label: "可补课课时", label: "可补课课时",
field: "MakeUpHours", field: "MakeUpHours",
align: "left" align: "left"
}, },
{ {
name: "activeStutes", name: "AbsenceNum",
label: "缺勤次数", label: "缺勤次数",
field: "AbsenceNum", field: "AbsenceNum",
align: "left" align: "left"
}, },
{ {
name: "activeStutes", name: "LeaveNum",
label: "请假次数", label: "请假次数",
field: "LeaveNum", field: "LeaveNum",
align: "left" align: "left"
}, },
{ {
name: "activeStutes", name: "EventlogNum",
label: "事件记录", label: "事件记录",
field: "EventlogNum", field: "EventlogNum",
align: "left" align: "left"
}, },
{ {
name: "activeStutes", name: "GuestStateStr",
label: "状态", label: "状态",
field: "GuestStateStr", field: "GuestStateStr",
align: "left" align: "left"
}, },
{ {
name: "activeStutes", name: "JoinTypeStr",
label: "类型", label: "类型",
field: "JoinTypeStr", field: "JoinTypeStr",
align: "left" align: "left"
...@@ -431,8 +546,6 @@ ...@@ -431,8 +546,6 @@
align: "left" align: "left"
} }
], ],
showForm: false,
typeObj: {},
SchoolList: [], SchoolList: [],
CourseList: [], CourseList: [],
AllCourseList: [], AllCourseList: [],
...@@ -446,12 +559,29 @@ ...@@ -446,12 +559,29 @@
MoreStatus: "1,2,3", MoreStatus: "1,2,3",
IsQuerySurplusPlan: 0 IsQuerySurplusPlan: 0
}, },
typeEnum: [],
warnEnum: [],
queryNum: 0, //高级查询个数
isShowStopLesson: false,
stuObj: {}, //停课
isShowTransferClass: false, //是否显示转班
orderObj: {}, //转班
ChangeType: 1, //1-转班 2-分拆
isShowAddEvent: false, //是否显示添加事件
eventObj: {},
isShowClassInfo:false,//是否显示班级详情
isShowmyorderForm: false, //是否显示订单详情
isShowList:false,//是否显示可补课课时,缺勤次数,请假次数
showType:1,
isShowEventLog:false,//是否显示事件记录
} }
}, },
mounted() { mounted() {
this.getSchool(); this.getSchool();
this.getCourseList(); this.getCourseList();
this.getClass(); this.getClass();
this.getTypeEnum();
this.getEarlyWarningEnum();
this.getList(); this.getList();
}, },
methods: { methods: {
...@@ -534,52 +664,36 @@ ...@@ -534,52 +664,36 @@
this.resetSearch(); this.resetSearch();
}, },
getList() { getList() {
// this.loading = true; this.loading = true;
getStuList(this.msg).then(res=>{ getStuList(this.msg).then(res => {
console.log(535,res) this.loading = false
if(res.Code===1){ if (res.Code === 1) {
this.data=res.Data.PageData this.data = res.Data.PageData
this.pageCount=res.Data.PageCount this.pageCount = res.Data.PageCount
} }
}).catch(err => {
this.loading = false;
}) })
}, },
delActive(item) { //显示停课弹窗
let that = this; ShowStopLesson(item) {
that.Confirm("是否删除?", function () { this.isShowStopLesson = true;
that.apipostDS( this.stuObj = item
"/api/Education/RemoveActivity", {
Id: item.Id,
Status: 1
},
res => {
if (res.data.resultCode == 1) {
that.Success(res.data.message);
that.getList();
} else {
that.Error(res.data.message);
}
},
);
})
},
//刷新页面
refreshPage() {
this.showForm = false;
this.getList();
},
//显示修改
editQuotation(item) {
this.showForm = true;
if (item) {
this.typeObj = item;
} else {
this.typeObj = {};
}
}, },
// 高级查询 // 高级查询
morequery(val) { morequery(val) {
console.log(418, val) this.IsShowQuery = false
this.IsShowQuery = false; this.queryNum = val.chooseNum
this.msg.ClassNo = val.ClassNo
this.msg.OrderId = val.OrderId
this.msg.EnterID = val.EnterID
this.msg.EffectStatus = val.EffectStatus
this.msg.JoinType = val.JoinType
this.msg.EarlyWarning = val.EarlyWarning
this.msg.OrderTime = val.OrderTime
this.msg.EndOrderTime = val.EndOrderTime
this.resetSearch();
}, },
//重新查询 //重新查询
resetSearch() { resetSearch() {
...@@ -592,10 +706,21 @@ ...@@ -592,10 +706,21 @@
this.getList() this.getList()
}, },
//关闭弹窗 //关闭弹窗
closeruleset() { closeHandle() {
this.showForm = false;
this.IsShowQuery = false; this.IsShowQuery = false;
this.isShowStopLesson = false;
this.isShowTransferClass = false;
this.isShowAddEvent = false;
this.isShowClassInfo=false;
this.isShowmyorderForm=false;
this.isShowList=false;
this.isShowEventLog=false;
this.isShowEventLog=false;
},
//刷新页面
refreshPage() {
this.closeHandle();
this.getList();
}, },
goUrl(url, item) { goUrl(url, item) {
if (item) { if (item) {
...@@ -623,6 +748,76 @@ ...@@ -623,6 +748,76 @@
} }
}) })
}, },
getTypeEnum() {
getTypeEnum({}).then(res => {
if (res.Code === 1) {
res.Data.unshift({
Name: "不限",
Id: 0
})
this.typeEnum = res.Data
}
})
},
getEarlyWarningEnum() {
getEarlyWarningEnum({}).then(res => {
if (res.Code === 1) {
this.warnEnum = res.Data
}
})
},
//转班
transferClass(item, type) {
this.orderObj = item;
this.ChangeType = type;
this.isShowTransferClass = true;
},
//显示添加事件
showAddEvent(item) {
let newitem=JSON.parse(JSON.stringify(item))
newitem.Id=0
this.eventObj = newitem
this.isShowAddEvent = true;
},
//查看合同
seeContract(item){
this.OpenNewUrl("/contractView",{ContractId:item.ContractId})
},
//查看课时消耗
seeStudentsClassUse(item){
let obj={
StudentId:item.Id,
TeacherId:item.Teacher_Id,
ClassId:item.ClassId
}
this.OpenNewUrl("/teacher/studentsClassSee",obj)
},
//查看班级详情
seeClassDetail(item){
this.eventObj=item
this.isShowClassInfo=true
},
//查看订单详情
showOrderDetail(item,tab){
item.tab = tab
this.eventObj=item
this.isShowmyorderForm=true
},
showList(item,type){
this.eventObj=item
this.showType=type
this.isShowList=true
},
showEventLog(item){
this.eventObj=item
this.isShowEventLog=true
},
// 修改事件
modifyEvent(val){
this.closeHandle();
this.eventObj=val
this.isShowAddEvent=true
}
} }
} }
......
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