Commit 5c83e269 authored by 罗超's avatar 罗超

Merge branch 'master' of http://gitlab.oytour.com/luochao/confucius into master

parents e138ef6c 2ac5f55e
...@@ -128,21 +128,33 @@ export function saveStudentVisit(data) { ...@@ -128,21 +128,33 @@ export function saveStudentVisit(data) {
* @param {JSON参数} data * @param {JSON参数} data
*/ */
export function queryStudentVisit(data) { export function queryStudentVisit(data) {
return request({ return request({
url: '/CustomerStudent/GetStudentVisit', url: '/CustomerStudent/GetStudentVisit',
method: 'post', method: 'post',
data data
}) })
} }
/** /**
* 跟进编号删除学员到访信息 * 跟进编号删除学员到访信息
* @param {JSON参数} data * @param {JSON参数} data
*/ */
export function deleteStudentVisit(data) { export function deleteStudentVisit(data) {
return request({ return request({
url: '/CustomerStudent/RemoveStudentVisit', url: '/CustomerStudent/RemoveStudentVisit',
method: 'post', method: 'post',
data data
}) })
} }
\ No newline at end of file
/**
* 获取学员日志分页列表
* @param {JSON参数} data
*/
export function queryStudentLogPage(data) {
return request({
url: '/CustomerStudent/GetStudentLogPage',
method: 'post',
data
})
}
\ No newline at end of file
...@@ -172,6 +172,17 @@ export function queryCustomerFinishtaskDetailsPage(data) { ...@@ -172,6 +172,17 @@ export function queryCustomerFinishtaskDetailsPage(data) {
data data
}) })
} }
/**
* 设置同业提现状态
*
*/
export function setCustomerRemitState(data) {
return request({
url: '/B2BRemit/SetCustomerRemitState',
method: 'post',
data
})
}
/** /**
* 奖品兑换 * 奖品兑换
......
...@@ -119,7 +119,7 @@ ...@@ -119,7 +119,7 @@
<div class="info_item"> <div class="info_item">
<div class="item_label">创建人</div> <div class="item_label">创建人</div>
<div class="item_value"> <div class="item_value">
<q-select filled v-model="customObj.CreateBy" :options="employeeList" option-label="EmployeeName" <q-select filled v-model="customObj.CreateBy" @filter="filterEmployee" use-input :options="myEmployeeList" option-label="EmployeeName"
option-value="Id" emit-value map-options /> option-value="Id" emit-value map-options />
</div> </div>
</div> </div>
...@@ -215,6 +215,7 @@ ...@@ -215,6 +215,7 @@
goalsList: [], goalsList: [],
//员工列表 //员工列表
employeeList: [], employeeList: [],
myEmployeeList: []
} }
}, },
created() { created() {
...@@ -251,8 +252,17 @@ ...@@ -251,8 +252,17 @@
IsLeave: 1 IsLeave: 1
}).then(res => { }).then(res => {
this.employeeList = res.Data; this.employeeList = res.Data;
this.myEmployeeList = res.Data;
}) })
}, },
//筛选员工
filterEmployee(val, update, abort){
update(() => {
this.myEmployeeList = this.employeeList.filter(
v => v.EmployeeName.indexOf(val) > -1
);
});
},
//获取日语基础列表 //获取日语基础列表
getBasicList() { getBasicList() {
getGuestBasicsEnumList({}).then(res => { getGuestBasicsEnumList({}).then(res => {
......
<style>
.TimeLineDiv {
margin-top: 20px;
overflow: auto;
height:620px;
flex: 1;
height: 100%;
padding-right: 20px;
}
</style>
<template> <template>
<div> 我是记录 <div>
<!-- <div style="display:flex;flex:1;flex-direction: column;overflow:hidden;"> <div style="display:flex;flex:1;flex-direction: column;overflow:hidden;">
<div class="TimeLineDiv"> <div class="TimeLineDiv">
<q-timeline color="primary"> <q-timeline color="primary">
<q-timeline-entry v-for="(tItem,tIndex) in data.tripDataList" :key="tIndex"> <q-timeline-entry v-for="(tItem,tIndex) in logData" :key="tIndex">
<template v-slot:title> <template v-slot:title>
<div style="font-size:14px;">{{ tItem.Description }}</div> <div class="visit_Cont">
<div>{{tItem.LogTitle}}</div>
<div>{{tItem.LogContent}}</div>
</div>
</template> </template>
<template v-slot:subtitle> <template v-slot:subtitle>
<div class="customUpdateTime"> <div class="Time_TopList">
<div>{{ tItem.UpdateTime }}</div> <div>{{ tItem.CreateTimeStr }}</div>
<div>{{ tItem.UpdateByName }}</div> <div>{{ tItem.CreateByName }}</div>
</div> </div>
</template> </template>
<div>
<div>{{ tItem.Remark }}</div>
<div class="img_box">
<img v-for="(e,i) in tItem.ImageList" :key="i" :src="e" class="img" />
</div>
<div class="file_box">
<div v-for="(e,i) in tItem.FileList" :key="i" class="flex items-center file_name">附件:<span
style="color:#000">{{ e.FileName }}</span>
<div class="del_btn" @click="DownLoadFileByUrl(e.FileUrl,e.FileName)">下载</div>
</div>
</div>
</div>
</q-timeline-entry> </q-timeline-entry>
</q-timeline> </q-timeline>
</div> </div>
</div> </div>
<div style="margin:20px 0;"> <div style="margin:20px 0;">
<q-pagination class="full-width justify-end" v-model="customTripMsg.pageIndex" color="primary" <q-pagination class="full-width justify-end" v-model="customMsg.pageIndex" color="primary" :max="pageCount" input
:max="data.TripPageCount" input @update:model-value="changePage" /> @input="changePage" />
</div> --> </div>
</div> </div>
</template> </template>
<script> <script>
import {
queryStudentLogPage, //日志记录
} from '../../../api/customerstudent/customerstudent';
export default { export default {
props: {
saveObj: {
type: Object,
default: null
}
},
meta: { meta: {
title: "" title: ""
}, },
components: { components: {
},
props: {
}, },
data() { data() {
return { return {
customMsg: {
pageIndex: 1,
pageSize: 10,
StuId: 0,
},
pageCount: 0,
//日志记录信息
logData: [],
}
},
created() {
if (this.saveObj && this.saveObj.StuId > 0) {
this.customMsg.StuId = this.saveObj.StuId;
} }
}, },
mounted() {}, mounted() {
this.getStuLogPage();
},
methods: { methods: {
getStuLogPage() {
queryStudentLogPage(this.customMsg).then(res => {
console.log("res", res);
if (res.Code == 1) {
this.logData = res.Data.PageData
this.pageCount = res.Data.PageCount
}
});
},
changePage(val){
this.customMsg.pageIndex = val;
this.getStuLogPage();
}
}, },
} }
</script>
</script> \ No newline at end of file
...@@ -3,12 +3,13 @@ ...@@ -3,12 +3,13 @@
</style> </style>
<template> <template>
<div> <div>
<div style="overflow:auto;margin-top:30px;"> <q-btn label="新增" color="accent q-mb-lg" size="sm" @click="isShowAdd=true" />
<div class="row wrap"> <q-btn label="取消" style="margin-left:20px;" v-if="isShowAdd" flat color="grey-10 q-mb-lg" size="sm"
<q-select filled option-value="SId" class="col-6 q-pb-lg" option-label="SName" v-model="VisitMsg.School_Id" @click="isShowAdd=false" />
:options="schoolList" emit-value map-options label="到访校区" /> <template v-if="isShowAdd">
</div>
<div class="row wrap"> <div class="row wrap">
<q-select filled option-value="SId" class="col-6 q-pb-lg q-pr-lg" option-label="SName"
v-model="VisitMsg.School_Id" :options="schoolList" emit-value map-options label="到访校区" />
<q-input filled v-model="VisitMsg.Date" class="col-6 q-pb-lg" mask="date" label="日期"> <q-input filled v-model="VisitMsg.Date" class="col-6 q-pb-lg" mask="date" label="日期">
<template v-slot:append> <template v-slot:append>
<q-icon name="event" class="cursor-pointer"> <q-icon name="event" class="cursor-pointer">
...@@ -20,7 +21,7 @@ ...@@ -20,7 +21,7 @@
</q-input> </q-input>
</div> </div>
<div class="row warp"> <div class="row warp">
<q-input filled mask="time" v-model="VisitMsg.VisitTime" :rules="['time']" class="col-6 q-pb-lg"> <q-input filled mask="time" v-model="VisitMsg.VisitTime" :rules="['time']" class="col-6 q-pb-lg q-pr-lg">
<template v-slot:append> <template v-slot:append>
<q-icon name="access_time" class="cursor-pointer"> <q-icon name="access_time" class="cursor-pointer">
<q-popup-proxy transition-show="scale" transition-hide="scale"> <q-popup-proxy transition-show="scale" transition-hide="scale">
...@@ -33,19 +34,51 @@ ...@@ -33,19 +34,51 @@
</q-icon> </q-icon>
</template> </template>
</q-input> </q-input>
<q-select filled v-model="VisitMsg.ReceptionPersion" @filter="filterEmployee" class="col-6 q-pb-lg"
:options="myEmployeeList" option-label="EmployeeName" use-input option-value="Id" emit-value map-options
label="接待人" />
</div> </div>
<div class="row wrap"> <div class="row wrap">
<q-input filled v-model="VisitMsg.ReceptionPersion" class="col-6 q-pb-lg" label="接待人"></q-input> <q-input filled v-model="VisitMsg.Remark" :rows="3" type="textarea" class="col-12 q-pb-lg" label="备注">
</div> </q-input>
<div class="row wrap">
<q-input filled v-model="VisitMsg.ReceptionPersion" type="textarea" class="col-6 q-pb-lg" label="备注"></q-input>
</div> </div>
<div class="row wrap"> <div class="row wrap">
<q-input filled v-model="VisitMsg.Feedback" type="textarea" class="col-6 q-pb-lg" label="反馈"></q-input> <q-input filled v-model="VisitMsg.Feedback" :rows="3" type="textarea" class="col-12 q-pb-lg" label="反馈">
</q-input>
</div> </div>
<div class="row wrap" style="margin-bottom:10px;"> <div class="row wrap" style="margin-bottom:10px;">
<q-btn label="保存" color="accent q-mb-lg" style="width:200px;" @click="saveVisit()" /> <q-btn label="保存" color="accent q-mb-lg" size="md" @click="saveVisit()" />
</div> </div>
</template>
<div style="display:flex;flex:1;flex-direction: column;overflow:hidden;">
<div class="TimeLineDiv">
<q-timeline color="primary">
<q-timeline-entry v-for="(tItem,tIndex) in dataList" :key="tIndex">
<template v-slot:title>
<div class="visit_Cont">
<div>到访校区:{{tItem.SchoolName}}</div>
<div>接待人:{{tItem.ReceptionPersionName}}</div>
<div>备注:{{tItem.Remark}}</div>
<div>反馈:{{tItem.Feedback}}</div>
<div @click="delVisit(tItem.Id)" class="visit_delete">删除</div>
</div>
</template>
<template v-slot:subtitle>
<div class="Time_TopList">
<div>
<span style="margin-right:20px;">{{ tItem.Date }}</span>
<span>{{tItem.VisitTime}}</span>
</div>
<div>{{ tItem.CreateBy }}</div>
</div>
</template>
</q-timeline-entry>
</q-timeline>
</div>
</div>
<div style="margin:20px 0;">
<q-pagination class="full-width justify-end" v-model="msg.pageIndex" color="primary" :max="page_Count" input
@input="changePage" />
</div> </div>
</div> </div>
</template> </template>
...@@ -53,6 +86,15 @@ ...@@ -53,6 +86,15 @@
import { import {
getSchoolDropdown, //获取校区列表 getSchoolDropdown, //获取校区列表
} from '../../../api/school/index'; } from '../../../api/school/index';
import {
queryStudentVisitPage, //获取到访列表
saveStudentVisit,
deleteStudentVisit
} from '../../../api/customerstudent/customerstudent';
import {
queryEmployee
} from '../../../api/users/user'
export default { export default {
meta: { meta: {
title: "" title: ""
...@@ -61,29 +103,50 @@ ...@@ -61,29 +103,50 @@
}, },
props: { props: {
saveObj: {
type: Object,
default: null
}
}, },
data() { data() {
return { return {
schoolList:[], schoolList: [],
//到访msg //到访msg
VisitMsg:{ VisitMsg: {
Id:0, //到访编号 Id: 0, //到访编号
StuId:0, //学员编号 StuId: 0, //学员编号
School_Id:0, //到访校区 School_Id: 0, //到访校区
Date:'', //日期 Date: '', //日期
VisitTime:'', //到访时间 VisitTime: '', //到访时间
ReceptionPersion:'', //接待人 ReceptionPersion: '', //接待人
Remark:'', //备注 Remark: '', //备注
Feedback:'' //反馈 Feedback: '' //反馈
} },
msg: {
pageIndex: 1,
pageSize: 12,
StuId: 0,
},
isShowAdd: false,
dataList: [],
page_Count: 0,
//员工列表
employeeList: [],
myEmployeeList: []
}
},
created() {
if (this.saveObj && this.saveObj.StuId) {
this.msg.StuId = this.saveObj.StuId;
} }
}, },
mounted() { mounted() {
this.getSchool(); this.getSchool();
this.getEmployeeList();
this.getList();
}, },
methods: { methods: {
//获取校区列表 //获取校区列表
getSchool() { getSchool() {
getSchoolDropdown({}).then(res => { getSchoolDropdown({}).then(res => {
if (res.Code == 1) { if (res.Code == 1) {
...@@ -95,7 +158,93 @@ ...@@ -95,7 +158,93 @@
} }
}) })
}, },
//获取员工列表
getEmployeeList() {
queryEmployee({
IsLeave: 1
}).then(res => {
this.employeeList = res.Data;
this.myEmployeeList = this.ClassList;
})
},
//下拉搜索
filterEmployee(val, update, abort) {
update(() => {
this.myEmployeeList = this.employeeList.filter(
v => v.EmployeeName.indexOf(val) > -1
);
});
},
//获取到访分页
getList() {
queryStudentVisitPage(this.msg).then(res => {
if (res.Code == 1) {
this.dataList = res.Data.PageData;
this.page_Count = res.Data.PageCount;
}
}).catch(() => {
})
},
//保存数据
saveVisit() {
this.VisitMsg.StuId = this.saveObj.StuId;
saveStudentVisit(this.VisitMsg).then(res => {
if (res.Code == 1) {
this.$q.notify({
icon: 'iconfont icon-chenggong',
color: 'accent',
timeout: 2000,
message: '数据保存成功!',
position: 'top'
})
this.getList();
this.clearMsg();
}
}).catch(() => {
})
},
//清除数据
clearMsg() {
this.VisitMsg.Id = 0;
this.VisitMsg.StuId = 0;
this.VisitMsg.School_Id = 0;
this.VisitMsg.Date = '';
this.VisitMsg.VisitTime = '';
this.VisitMsg.ReceptionPersion = '';
this.VisitMsg.Remark = '';
this.VisitMsg.Feedback = '';
this.isShowAdd = false;
},
//删除到访
delVisit(Id) {
let that = this
this.$q.dialog({
title: '提示信息',
message: '是否确定删除?',
cancel: true,
persistent: true,
ok: "确定",
cancel: "取消",
}).onOk(() => {
deleteStudentVisit({
Id: Id
}).then((res) => {
that.$q.notify({
icon: 'iconfont icon-chenggong',
timeout: 2000,
message: res.Message,
position: 'top'
})
that.getList()
})
}).onCancel(() => {});
},
changePage(val) {
this.msg.pageIndex = val;
this.getList();
}
}, },
} }
</script>
</script> \ No newline at end of file
...@@ -3,31 +3,71 @@ ...@@ -3,31 +3,71 @@
</style> </style>
<template> <template>
<div> <div>
<div style="margin-top:30px;"> <div class="row wrap">
<div class="row wrap"> <q-btn label="新增" color="accent q-mb-lg" size="sm" @click="isShowAdd=true" />
<q-input filled class="col-6 q-pb-lg" label="地点"></q-input> <q-btn label="取消" style="margin-left:20px;" v-if="isShowAdd" flat color="grey-10 q-mb-lg" size="sm" @click="isShowAdd=false" />
</div> </div>
<template v-if="isShowAdd">
<div class="row wrap"> <div class="row wrap">
<q-input filled class="col-6 q-pb-lg" mask="date" label="日期"> <q-input filled class="col-6 q-pb-lg q-pr-lg" v-model="yueMsg.AppointmentPoint" label="约访地点"></q-input>
<q-input filled class="col-6 q-pb-lg" v-model="yueMsg.AppointmentTime" mask="date" label="约访时间">
<template v-slot:append> <template v-slot:append>
<q-icon name="event" class="cursor-pointer"> <q-icon name="event" class="cursor-pointer">
<q-popup-proxy ref="qDateProxy1" transition-show="scale" transition-hide="scale"> <q-popup-proxy ref="qDateProxy1" transition-show="scale" transition-hide="scale">
<q-date @input="() => $refs.qDateProxy1.hide()" /> <q-date v-model="yueMsg.AppointmentTime" @input="() => $refs.qDateProxy1.hide()" />
</q-popup-proxy> </q-popup-proxy>
</q-icon> </q-icon>
</template> </template>
</q-input> </q-input>
</div> </div>
<div class="row wrap"> <div class="row wrap">
<q-input filled type="textarea" class="col-6 q-pb-lg" label="目的"></q-input> <q-input filled v-model="yueMsg.Remark" :rows="3" type="textarea" class="col-12 q-pb-lg" label="备注">
</q-input>
</div> </div>
<div class="row wrap"> <div class="row wrap">
<q-btn label="保存" color="accent q-mb-lg" style="width:200px;" @click="saveYuefang()" /> <q-input filled v-model="yueMsg.Feedback" :rows="3" type="textarea" class="col-12 q-pb-lg" label="反馈">
</q-input>
</div>
<div class="row wrap" style="margin-bottom:10px;">
<q-btn label="保存" color="accent q-mb-lg" size="md" @click="savePoint()" />
</div>
</template>
<div style="display:flex;flex:1;flex-direction: column;overflow:hidden;">
<div class="TimeLineDiv">
<q-timeline color="primary">
<q-timeline-entry v-for="(tItem,tIndex) in dataList" :key="tIndex">
<template v-slot:title>
<div class="visit_Cont">
<div>约访地点:{{tItem.AppointmentPoint}}</div>
<div>接待人:{{tItem.ReceptionPersion}}</div>
<div>备注:{{tItem.Remark}}</div>
<div>反馈:{{tItem.Feedback}}</div>
<div @click="delVisit(tItem.Id)" class="visit_delete">删除</div>
</div>
</template>
<template v-slot:subtitle>
<div class="Time_TopList">
<div>{{ tItem.AppointmentTime }}</div>
</div>
</template>
</q-timeline-entry>
</q-timeline>
</div> </div>
</div> </div>
<div style="margin:20px 0;">
<q-pagination class="full-width justify-end" v-model="msg.pageIndex" color="primary" :max="page_Count" input
@input="changePage" />
</div>
</div> </div>
</template> </template>
<script> <script>
import {
saveStudentAppointment,
queryStudentAppointmentPage,
deleteStudentAppointment
} from '../../../api/customerstudent/customerstudent';
export default { export default {
meta: { meta: {
title: "" title: ""
...@@ -36,21 +76,103 @@ ...@@ -36,21 +76,103 @@
}, },
props: { props: {
saveObj: {
type: Object,
default: null
}
}, },
data() { data() {
return { return {
isShowAdd: false,
yueMsg: {
Id: 0, //约访编号
StuId: 0, //学员编号
AppointmentPoint: '', //约访地点
AppointmentTime: '', //约访时间
Remark: '', //备注
Feedback: '' //反馈
},
msg: {
pageIndex: 1,
pageSize: 12
},
dataList:[],
page_Count:0
} }
}, },
mounted() { mounted() {
this.getList();
}, },
methods: { methods: {
//保存 //保存约访
saveYuefang() { savePoint() {
this.yueMsg.StuId = this.saveObj.StuId;
saveStudentAppointment(this.yueMsg).then(res => {
if (res.Code == 1) {
this.$q.notify({
icon: 'iconfont icon-chenggong',
color: 'accent',
timeout: 2000,
message: '数据保存成功!',
position: 'top'
})
this.getList();
this.clearMsg();
}
}).catch(() => {
})
}, },
}, //获取数据
getList(){
queryStudentAppointmentPage(this.msg).then(res => {
if (res.Code == 1) {
this.dataList = res.Data.PageData;
this.page_Count = res.Data.PageCount;
}
}).catch(() => {
})
},
//清除数据
clearMsg() {
this.yueMsg.Id = 0;
this.yueMsg.StuId = 0;
this.yueMsg.AppointmentPoint = '';
this.yueMsg.AppointmentTime = '';
this.yueMsg.Remark = '';
this.yueMsg.Feedback = '';
this.isShowAdd = false;
},
//删除到访
delVisit(Id) {
let that = this
this.$q.dialog({
title: '提示信息',
message: '是否确定删除?',
cancel: true,
persistent: true,
ok: "确定",
cancel: "取消",
}).onOk(() => {
deleteStudentAppointment({
Id: Id
}).then((res) => {
that.$q.notify({
icon: 'iconfont icon-chenggong',
timeout: 2000,
message: res.Message,
position: 'top'
})
that.getList()
})
}).onCancel(() => {});
},
changePage(val) {
this.msg.pageIndex = val;
this.getList();
}
}
} }
</script> </script>
...@@ -32,7 +32,7 @@ ...@@ -32,7 +32,7 @@
<q-tab name="3" label="订单" /> <q-tab name="3" label="订单" />
<q-tab name="4" label="合同" /> <q-tab name="4" label="合同" />
</q-tabs> </q-tabs>
<div style="flex:1;overflow:hidden;"> <div class="operate_Content" style="flex:1;" >
<div class="detail_Main"> <div class="detail_Main">
<div class="tripTypeContent" style="flex-shrink:0" v-if="ckedTab==2"> <div class="tripTypeContent" style="flex-shrink:0" v-if="ckedTab==2">
<div v-for="(qItem,qIndex) in visitList" :key="qIndex" <div v-for="(qItem,qIndex) in visitList" :key="qIndex"
...@@ -41,15 +41,15 @@ ...@@ -41,15 +41,15 @@
</div> </div>
<!-- 记录 --> <!-- 记录 -->
<template v-if="ckedTab==1"> <template v-if="ckedTab==1">
<student-record></student-record> <student-record :save-obj="baseObj"></student-record>
</template> </template>
<!-- 操作 --> <!-- 操作 -->
<template v-if="ckedTab==2"> <template v-if="ckedTab==2">
<div style="overflow:auto;"> <div class="operate_Content">
<student-visit v-if="secondType==1"></student-visit> <student-visit :save-obj="baseObj" :StuId="baseObj.StuId" v-if="secondType==1"></student-visit>
<student-yuefang v-if="secondType==2"></student-yuefang> <student-yuefang :save-obj="baseObj" v-if="secondType==2"></student-yuefang>
<student-genjin v-if="secondType==3"></student-genjin> <student-genjin :save-obj="baseObj" v-if="secondType==3"></student-genjin>
<student-hetong v-if="secondType==4"></student-hetong> <student-hetong :save-obj="baseObj" v-if="secondType==4"></student-hetong>
</div> </div>
</template> </template>
<!-- 订单 --> <!-- 订单 -->
...@@ -100,7 +100,7 @@ ...@@ -100,7 +100,7 @@
data() { data() {
return { return {
persistent: true, persistent: true,
ckedTab: 1, ckedTab: '1',
secondType:1, secondType:1,
visitList:[{ visitList:[{
Name:'到访', Name:'到访',
...@@ -146,7 +146,7 @@ ...@@ -146,7 +146,7 @@
} }
</script> </script>
<style lang="scss" scoped> <style>
.custom_RModel { .custom_RModel {
width: 500px; width: 500px;
height: 100%; height: 100%;
...@@ -315,13 +315,6 @@ ...@@ -315,13 +315,6 @@
border-radius: 5px; border-radius: 5px;
} }
.q-textarea .q-field__native {
padding-top: 0;
}
.editer_input .q-field__native {
height: 50px;
}
.detail_first { .detail_first {
margin: 0 22px; margin: 0 22px;
...@@ -336,39 +329,8 @@ ...@@ -336,39 +329,8 @@
width: 100%; width: 100%;
height: 100%; height: 100%;
padding-top: 10px; padding-top: 10px;
overflow: hidden;
}
.img_box {
margin-top: 10px;
.img {
width: 100px;
height: 100px;
object-fit: cover;
box-shadow: 0px 10px 30px 0px rgba(36, 36, 36, 0.2);
margin: 5px;
border-radius: 10px;
}
} }
.file_box {
margin-top: 10px;
.file_name {
font-size: 14px;
color: #9696A6;
margin: 3px 0;
.del_btn {
margin-left: 10px;
padding-left: 5px;
border-left: 1px solid var(--q-primary);
color: var(--q-primary);
cursor: pointer;
}
}
}
.student_Name{ .student_Name{
width:100%; width:100%;
height:100%; height:100%;
...@@ -378,4 +340,42 @@ ...@@ -378,4 +340,42 @@
line-height: 60px; line-height: 60px;
font-size:20px; font-size:20px;
} }
.TimeLineDiv {
overflow: auto;
height:620px;
flex: 1;
height: 100%;
padding-right: 20px;
}
.Time_TopList{
display: flex;
justify-content: space-between;
}
.visit_Cont{
font-size:14px;
}
.visit_delete{
color:#3470ff;
font-size:14px;
cursor: pointer;
}
.operate_Content{
overflow: auto;
margin-top: 30px;
padding-right:20px;
}
.operate_Content::-webkit-scrollbar{
width: 6px;
height: 8px;
}
.operate_Content::-webkit-scrollbar-thumb {
border-radius: 4px;
-webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
background: #c9c9c9;
}
.operate_Content::-webkit-scrollbar-thumb {
-webkit-box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
border-radius: 4px;
background: #EDEDED;
}
</style> </style>
...@@ -72,10 +72,10 @@ ...@@ -72,10 +72,10 @@
</template> </template>
<template v-slot:body-cell-AuditStatus="props"> <template v-slot:body-cell-AuditStatus="props">
<q-td :props="props"> <q-td :props="props">
<span v-if="props.row.Type == 1">申请中</span> <span v-if="props.row.AuditStatus == 1">申请中</span>
<span v-if="props.row.Type == 2">待打款</span> <span v-if="props.row.AuditStatus == 2">待打款</span>
<span v-if="props.row.Type == 3">已打款</span> <span v-if="props.row.AuditStatus == 3">已打款</span>
<span v-if="props.row.Type == 4">拒绝</span> <span v-if="props.row.AuditStatus == 4">拒绝</span>
</q-td> </q-td>
</template> </template>
<template v-slot:body-cell-TimeStr="props"> <template v-slot:body-cell-TimeStr="props">
...@@ -107,7 +107,7 @@ ...@@ -107,7 +107,7 @@
</q-td> </q-td>
</template> </template>
<template v-slot:body-cell-optioned="props"> <template v-slot:body-cell-optioned="props">
<q-td :props="props" style="width:200px;" > <q-td :props="props" style="width:100px;" >
<q-btn <q-btn
v-if="props.row.AuditStatus==1" v-if="props.row.AuditStatus==1"
flat flat
...@@ -115,19 +115,10 @@ ...@@ -115,19 +115,10 @@
icon="edit" icon="edit"
color="done" color="done"
style="font-weight:400" style="font-weight:400"
label="审核通过" label="审核"
@click="operation(props.row,1)" @click="operation(props.row)"
/>
<q-btn
v-if="props.row.AuditStatus==1"
flat
size="xs"
icon="highlight_off"
style="font-weight:400;color: red;"
label="审核驳回"
@click="operation(props.row,2)"
/> />
</q-td> </q-td>
</template> </template>
...@@ -144,12 +135,31 @@ ...@@ -144,12 +135,31 @@
@input="changePage" @input="changePage"
/> />
</div> </div>
<q-dialog v-model="isShow" persistent>
<q-card style="width: 520px; max-width: 80vw;">
<q-card-section>
<div class="text-h6">提现审核</div>
</q-card-section>
<q-separator />
<q-card-section class="q-pt-none" style="margin-top: 15px;padding:10px 20px;">
<q-radio v-model="remitMsg.State" val="1" label="审核通过" />
<q-radio v-model="remitMsg.State" val="2" label="审核驳回" />
<q-input filled clearable v-model="remitMsg.Remark" label="备注"
style="margin-top: 20px;" type="textarea"/>
</q-card-section>
<q-separator />
<q-card-actions align="right" class="bg-white">
<q-btn class="q-mr-md" label="取消" @click="isShow = false" />
<q-btn color="accent" class="q-mr-md" label="确定" @click="submit()" />
</q-card-actions>
</q-card>
</q-dialog>
</div> </div>
</template> </template>
<script> <script>
import { import {
getCustomerRemitPageList, getCustomerRemitPageList,
RemoveCustomer setCustomerRemitState
} from '../../api/sale/peemanagement'; } from '../../api/sale/peemanagement';
export default { export default {
...@@ -162,6 +172,7 @@ export default { ...@@ -162,6 +172,7 @@ export default {
data() { data() {
return { return {
pageCount: 0, pageCount: 0,
isShow:false,
msg: { msg: {
pageIndex: 1, pageIndex: 1,
pageSize: 12, pageSize: 12,
...@@ -299,8 +310,24 @@ export default { ...@@ -299,8 +310,24 @@ export default {
}, },
operation(row,type){ operation(row,type){
this.remitMsg.RemitId = row.Id; this.remitMsg.RemitId = row.Id;
this.remitMsg.State = row.type; this.remitMsg.State = '1';
this.remitMsg.Remark = '' this.remitMsg.Remark = '';
this.isShow = true
},
submit(){
setCustomerRemitState(this.remitMsg).then(res => {
this.$q.notify({
icon: 'iconfont icon-chenggong',
color: 'accent',
timeout: 2000,
message: '操作成功',
position: 'top'
})
this.isShow = false
this.getList();
}).catch(() => {
})
} }
} }
} }
......
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