Commit 09607817 authored by 黄奎's avatar 黄奎
parents 1bc2b433 fc4750ee
......@@ -216,4 +216,26 @@ export function getCustomerStuStageStatistics(data) {
method: 'post',
data
})
}
/**
* 获取同业佣金/幸福存折明细
*
*/
export function getCustomerCommissionPassbook(data) {
return request({
url: '/B2BCustomer/GetCustomerCommissionPassbook',
method: 'post',
data
})
}
/**
* 同业转交
*
*/
export function setCustomerCareOf(data) {
return request({
url: 'B2BCustomer/SetCustomerCareOf',
method: 'post',
data
})
}
\ No newline at end of file
<template>
<q-dialog v-model="persistent" maximized full-height seamless position="right" @hide="closeAuditCustomerForm">
<q-dialog
v-model="persistent"
maximized
full-height
seamless
position="right"
@hide="closeAuditCustomerForm"
>
<div class="info-content-component">
<div class="info-head flex items-center">
<div class="flex items-center">
<q-img :src="detailData.WeChatPhoto" :ratio="1" width="60px" class="q-mr-md"/>
<q-img
:src="detailData.WeChatPhoto"
:ratio="1"
width="60px"
class="q-mr-md"
/>
<div>
<div class="text-weight-thin" style="font-size:10px">
微信名
</div>
<div class="text-h6">
{{detailData.WeChatName}}
</div>
<div class="text-weight-thin" style="font-size:10px">
微信名
</div>
<div class="text-h6">
{{ detailData.WeChatName }}
</div>
</div>
</div>
<q-space />
<q-btn color="accent" size="sm" class="q-mr-md" icon="swap_horiz" label="转移" />
<q-btn
color="accent"
size="sm"
label="转交"
icon="swap_horiz"
@click="isShowTrans = true"
>
<q-popup-proxy :offset="[10, 10]">
<q-banner v-if="isShowTrans">
<q-select
style="margin-top:20px;"
filled
v-model="TransferMsg.EmpId"
@filter="filterEmployee"
use-input
:options="myEmployeeList"
option-label="EmployeeName"
option-value="Id"
emit-value
map-options
:rules="[val => !!val || '请选择接收人']"
ref="transfer"
/>
<q-btn
label="保存"
style="float:right;margin-top:15px"
color="accent q-mb-lg"
size="sm"
@click="saveTransForm"
/>
</q-banner>
</q-popup-proxy>
</q-btn>
</div>
<div class="info-content">
<div class="detail-info">
<baseInfo :Data="detailData" @confirm="saveBaseInfo"></baseInfo>
</div>
<div class="detail-log">
<right :Id="rowId"></right>
<right :Id="rowId" :tabId="tabId"></right>
</div>
</div>
</div>
<div class="dialog-out-close" @click="closeAuditCustomerForm"
style="height:40px !important;border-top-left-radius: 4px !important;border-bottom-left-radius: 4px !important;">
<div
class="dialog-out-close"
@click="closeAuditCustomerForm"
style="height:40px !important;border-top-left-radius: 4px !important;border-bottom-left-radius: 4px !important;"
>
<q-icon name="iconfont icon-jujue1" size="26px" />
</div>
</q-dialog>
</template>
<script>
import {
GetCustomer,
SetCustomer
} from "../../../api/sale/peemanagement";
import baseInfo from './baseInfo.vue'
import right from './conRight.vue'
export default {
components: {
baseInfo,
right
import { GetCustomer, SetCustomer } from "../../../api/sale/peemanagement";
import { setCustomerCareOf } from "../../../api/sale/peemanagement";
import baseInfo from "./baseInfo.vue";
import right from "./conRight.vue";
export default {
components: {
baseInfo,
right
},
props: {
rowId: {
type: Number,
default: 0
},
props: {
rowId: {
type: Number,
default: 0
},
auth: {
type: Object,
default: null
}
},
data() {
return {
persistent: true,
detailData: {
CustomerId: 0,
CustomerName: "",
ContactNumber: "",
Sex: 1,
Fax: "",
QQ: "",
Email: "",
Address: "",
Account: "",
Remark: "",
OpenId: "",
UnionId: "",
WeChatName: "",
WeChatPhoto: "",
CustomerType: 1,
EnterpriseName: "",
},
}
auth: {
type: Object,
default: null
},
mounted() {
this.initObj()
empList:{
type:Array,
default:()=>[]
},
methods: {
//关闭弹窗
closeAuditCustomerForm() {
this.$emit('close');
this.persistent = false;
tabId:{
type:Number,
default:1
}
},
data() {
return {
persistent: true,
detailData: {
CustomerId: 0,
CustomerName: "",
ContactNumber: "",
Sex: 1,
Fax: "",
QQ: "",
Email: "",
Address: "",
Account: "",
Remark: "",
OpenId: "",
UnionId: "",
WeChatName: "",
WeChatPhoto: "",
CustomerType: 1,
EnterpriseName: ""
},
//初始化表单
initObj() {
if (this.rowId > 0) {
let msg = {
CustomerId: this.rowId
}
GetCustomer(msg).then(res => {
if (res.Code == 1) {
let tempData = res.Data;
this.detailData.CustomerId = tempData.CustomerId;
this.detailData.CustomerName = tempData.CustomerName;
this.detailData.ContactNumber = tempData.ContactNumber;
this.detailData.Sex = tempData.Sex;
this.detailData.Fax = tempData.Fax;
this.detailData.QQ = tempData.QQ;
this.detailData.Email = tempData.Email;
this.detailData.Address = tempData.Address;
this.detailData.Account = tempData.Account;
this.detailData.Remark = tempData.Remark;
this.detailData.OpenId = tempData.OpenId;
this.detailData.UnionId = tempData.UnionId;
this.detailData.WeChatName = tempData.WeChatName;
this.detailData.WeChatPhoto = tempData.WeChatPhoto;
this.detailData.CustomerType = tempData.CustomerType;
this.detailData.EnterpriseName = tempData.EnterpriseName;
}
})
} else {
this.detailData.CustomerId = 0;
this.detailData.CustomerName = '';
this.detailData.ContactNumber = '';
this.detailData.Sex = 1;
this.detailData.Fax = '';
this.detailData.QQ = '';
this.detailData.Email = '';
this.detailData.Address = '';
this.detailData.Account = '';
this.detailData.Remark = '';
this.detailData.OpenId = '';
this.detailData.UnionId = '';
this.detailData.WeChatName = '';
this.detailData.WeChatPhoto = '';
this.detailData.CustomerType = 1;
this.detailData.EnterpriseName = '';
}
//员工列表
employeeList: [],
myEmployeeList: [],
isShowTrans: false,
TransferMsg: {
CustomerIds: "",
EmpId: ""
},
saveBaseInfo(obj){
this.detailData[obj.field]=obj.val
SetCustomer(this.detailData).then(res => {
if (res.Code == 1) {
this.$q.notify({
icon: "iconfont icon-chenggong",
color: "accent",
timeout: 2000,
message: "数据保存成功!",
position: "top",
});
this.$emit("success");
}
})
};
},
mounted() {
this.initObj();
this.employeeList=this.empList
this.myEmployeeList=this.empList
},
methods: {
//关闭弹窗
closeAuditCustomerForm() {
this.$emit("close");
this.persistent = false;
},
//初始化表单
initObj() {
if (this.rowId > 0) {
let msg = {
CustomerId: this.rowId
};
GetCustomer(msg).then(res => {
if (res.Code == 1) {
let tempData = res.Data;
this.detailData.CustomerId = tempData.CustomerId;
this.detailData.CustomerName = tempData.CustomerName;
this.detailData.ContactNumber = tempData.ContactNumber;
this.detailData.Sex = tempData.Sex;
this.detailData.Fax = tempData.Fax;
this.detailData.QQ = tempData.QQ;
this.detailData.Email = tempData.Email;
this.detailData.Address = tempData.Address;
this.detailData.Account = tempData.Account;
this.detailData.Remark = tempData.Remark;
this.detailData.OpenId = tempData.OpenId;
this.detailData.UnionId = tempData.UnionId;
this.detailData.WeChatName = tempData.WeChatName;
this.detailData.WeChatPhoto = tempData.WeChatPhoto;
this.detailData.CustomerType = tempData.CustomerType;
this.detailData.EnterpriseName = tempData.EnterpriseName;
}
});
} else {
this.detailData.CustomerId = 0;
this.detailData.CustomerName = "";
this.detailData.ContactNumber = "";
this.detailData.Sex = 1;
this.detailData.Fax = "";
this.detailData.QQ = "";
this.detailData.Email = "";
this.detailData.Address = "";
this.detailData.Account = "";
this.detailData.Remark = "";
this.detailData.OpenId = "";
this.detailData.UnionId = "";
this.detailData.WeChatName = "";
this.detailData.WeChatPhoto = "";
this.detailData.CustomerType = 1;
this.detailData.EnterpriseName = "";
}
},
saveBaseInfo(obj) {
this.detailData[obj.field] = obj.val;
SetCustomer(this.detailData).then(res => {
if (res.Code == 1) {
this.$q.notify({
icon: "iconfont icon-chenggong",
color: "accent",
timeout: 2000,
message: "数据保存成功!",
position: "top"
});
this.$emit("success");
}
});
},
//同业转交
saveTransForm() {
this.$refs.transfer.validate();
if (this.$refs.transfer.hasError) return;
this.TransferMsg.CustomerIds = this.rowId
setCustomerCareOf(this.TransferMsg).then(res => {
this.$q.notify({
icon: "iconfont icon-chenggong",
color: "accent",
timeout: 2000,
message: "转交成功",
position: "top"
});
this.isShowTrans = false;
});
},
//筛选员工
filterEmployee(val, update, abort) {
update(() => {
this.myEmployeeList = this.employeeList.filter(
v => v.EmployeeName.indexOf(val) > -1
);
});
}
}
};
</script>
<style lang="scss" scoped>
.info-content-component {
.info-content-component {
display: flex;
flex-direction: column;
width: 1010px;
padding: 15px 17px;
background-color: #f4f4f6;
overflow: auto;
box-sizing: border-box;
.info-head {
background-color: #fff;
border-radius: 8px;
padding: 22px;
}
.info-content {
flex: 1;
display: flex;
flex-direction: column;
width: 1010px;
padding: 15px 17px;
background-color: #f4f4f6;
overflow: auto;
box-sizing: border-box;
margin-top: 17px;
overflow: hidden;
.info-head {
.detail-info {
flex-shrink: 0;
box-sizing: border-box;
display: flex;
flex-direction: column;
width: 350px;
height: 100%;
margin-right: 13px;
background-color: #fff;
border-radius: 8px;
padding: 22px;
border-radius: 8px 8px 0 0;
}
.info-content {
flex: 1;
.detail-log {
width: 100%;
flex-grow: 1;
display: flex;
margin-top: 17px;
flex-direction: column;
background-color: #fff;
border-radius: 8px 8px 0 0;
overflow: hidden;
.detail-info {
flex-shrink: 0;
box-sizing: border-box;
display: flex;
flex-direction: column;
width: 350px;
height: 100%;
margin-right: 13px;
background-color: #fff;
border-radius: 8px 8px 0 0;
}
.detail-log {
width: 100%;
flex-grow: 1;
display: flex;
flex-direction: column;
background-color: #fff;
border-radius: 8px 8px 0 0;
overflow: hidden;
}
}
}
}
</style>
<!--订单列表-->
<template>
<div class="classorder">
<div class="b2bclassorder">
<q-table
:pagination="msg"
:loading="loading"
no-data-label="暂无相关数据"
flat
class="sticky-tow-column-table"
class="sticky-column-table"
separator="none"
:data="dataList"
:columns="columns"
row-key="Id"
>
<!-- <template v-slot:body-cell-StuIcon="props">
<template v-slot:body-cell-OrderId="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
>
<div style="color:var(--q-color-primary)" @click="goOrderdetails(props.row,1)">
{{ props.row.OrderId}}
</div>
</q-td>
</template> -->
</template>
<template v-slot:body-cell-GuestList="props">
<q-td auto-width :props="props">
<div class="q-ma-xs" v-for="(item,index) in props.row.GuestList" :key="index">
{{item.GuestName}}
</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"
/>
<div style="height:1px"></div>
</template>
</q-table>
<!--修改课程订单-->
......@@ -86,7 +77,7 @@
</viewquotation-form>
<!--合同信息-->
<eduinfo-form v-if="isShowEduForm" :seting-obj="eduObj" @close="closeEdudia" @success="refreshPage">
<eduinfo-form v-if="isShowEduForm" :seting-obj="eduObj" @close="closeEdudia" @success="refreshPage" style="margin:0">
</eduinfo-form>
<div v-if="isShowContract" class="_show_img_box" @click="(isShowContract = false), (imgViewList = [])">
<div style="
......@@ -157,7 +148,7 @@
//正常订单
dataList: {
type: Array,
default: null
default: ()=>[]
},
//取消订单
cancelList: {
......@@ -251,63 +242,56 @@
imgViewUrl: '',
imgViewList: [],
initialIndex: 0,
loading:false,
columns: [
{
name: "StuIcon",
label: "",
field: "StuIcon",
name: "OrderId",
label: "订单号",
field: "OrderId",
align: "left"
},
{
name: "StuName",
required: true,
label: "昵称",
name: "ClassName",
label: "班级",
align: "left",
field: row => row.StuName
field: "ClassName"
},
{
name: "StuSex",
label: "性别",
field: "StuSex",
name: "CourseName",
label: "课程",
field: "CourseName",
align: "left"
},
{
name: "StuBirthStr",
label: "出生日期",
field: "StuBirthStr",
align: "left"
name: "PreferPrice",
label: "应收",
field: "PreferPrice",
align: "left",
},
{
name: "StuTel",
label: "手机号码",
field: "StuTel",
name: "DiscountMoney",
label: "实收",
field: "DiscountMoney",
align: "left"
},
{
name: "CreateTypeStr",
label: "客户来源",
field: "CreateTypeStr",
name: "OrderStateName",
label: "状态",
field: "OrderStateName",
align: "left"
},
{
name: "StuStageName",
label: "客户阶段",
field: "StuStageName",
name: "GuestList",
label: "学生名单",
field: "GuestList",
align: "left"
},
{
name: "CreateTimeStr",
label: "创建时间",
field: "CreateTimeStr",
align: "left"
}
// {
// name: "CreateByName",
// label: "负责人",
// align: "left",
// field: "CreateByName"
// }
],
],
msg:{
pageIndex: 1,
pageSize: 10,
rowsPerPage: 10,
},
}
},
created() {
......@@ -966,27 +950,27 @@
list-style-type: none;
}
.classorder ul {
.b2bclassorder ul {
padding: 0px
}
.classorder .price-popup {
.b2bclassorder .price-popup {
border-radius: 4px;
}
.classorder .el-range-editor .el-range-input {
.b2bclassorder .el-range-editor .el-range-input {
background: none;
}
.classorder .el-range-editor.el-input__inner {
.b2bclassorder .el-range-editor.el-input__inner {
background-color: transparent;
}
.classorder .q-mb-md {
.b2bclassorder .q-mb-md {
margin-bottom: 0;
}
.classorder .stics {
.b2bclassorder .stics {
padding: 10px 20px;
background: #DDDEE0;
border-radius: 4px;
......@@ -995,84 +979,31 @@
font-weight: bold
}
.classorder .stics .stics-name {
.b2bclassorder .stics .stics-name {
color: #2D2D2D;
font-weight: 600;
margin-right: 10px
}
.classorder .tis {
.b2bclassorder .tis {
margin: 10px 0;
align-items: center
}
.classorder .tis .tis-k {
.b2bclassorder .tis .tis-k {
width: 10px;
height: 10px;
margin-right: 8px
}
.classorder .tis span {
.b2bclassorder .tis span {
font-size: 14px;
color: #2D2D2D;
font-weight: 600;
margin-right: 20px
}
.classorder table {
padding: 10px 0;
width: 100%;
background-color: #ededed;
border-collapse: collapse;
border: 1px solid #d2d2d2;
font-size: 12px;
}
.classorder table th {
background-color: #ededed;
height: 34px;
text-indent: 15px;
}
.classorder table td {
background-color: #ffffff;
padding: 9px 15px;
color: #333333;
border: 1px solid rgba(138, 138, 138, 0.09);
text-align: center;
}
.classorder table ._color_666 {
color: #666666;
}
.classorder table tr._color_666 th {
padding: 9px 15px;
}
.classorder table th {
background-color: #ededed;
height: 34px;
text-indent: 15px;
}
.classorder table td {
background-color: #ffffff;
padding: 9px 15px;
color: #333333;
/*border: 1px solid #d2d2d2;*/
}
.classorder table ._color_666 {
color: #666666;
}
.classorder table tr._color_666 th {
padding: 9px 15px;
}
.classorder .enrollTotalSearchTable {
.b2bclassorder .enrollTotalSearchTable {
width: 100%;
font-size: 14px;
color: #333;
......@@ -1081,38 +1012,38 @@
border-collapse: collapse;
}
.classorder .enrollTotalSearchTable tr {
.b2bclassorder .enrollTotalSearchTable tr {
/* border-bottom: 2px solid #333; */
}
.classorder .enrollTotalSearchTable tr th {
.b2bclassorder .enrollTotalSearchTable tr th {
background: #DDDEE0;
height: 30px;
font-size: 12px;
text-align: center;
}
.classorder .enrollTotalSearchTable tr {
.b2bclassorder .enrollTotalSearchTable tr {
background: #fff;
text-align: left;
}
.classorder .enrollTotalSearchTable tbody tr:last-child {
.b2bclassorder .enrollTotalSearchTable tbody tr:last-child {
border-bottom: 2px solid #333;
}
.classorder .enrollTotalSearchTable tr:first-child td:first-child {
.b2bclassorder .enrollTotalSearchTable tr:first-child td:first-child {
border-bottom: 2px solid #333;
}
.classorder .enrollTotalSearchTable tr td {
.b2bclassorder .enrollTotalSearchTable tr td {
height: 66px;
padding: 10px;
/*border-top: 1px solid #cccccc;*/
/*border-left: 1px solid #cccccc;*/
}
.classorder .enrollTotalSearchTable tr td>img {
.b2bclassorder .enrollTotalSearchTable tr td>img {
width: 32px;
height: 32px;
border-radius: 16px;
......@@ -1120,16 +1051,16 @@
margin-right: 5px;
}
.classorder .enrollTotalSearchTable tr td p {
.b2bclassorder .enrollTotalSearchTable tr td p {
line-height: 20px;
}
.classorder .remarks {
.b2bclassorder .remarks {
font-size: 14px;
color: #2D2D2D;
}
.classorder .remarks-b {
.b2bclassorder .remarks-b {
width: 100%;
height: 94px;
background: #F0F5FB;
......@@ -1145,18 +1076,18 @@
-webkit-box-orient: vertical;
}
.classorder .remarks-b-b {
.b2bclassorder .remarks-b-b {
text-align: right;
position: absolute;
right: 0px;
bottom: 0px
}
.classorder .on-left {
.b2bclassorder .on-left {
margin-right: 5px;
}
.classorder .finance {
.b2bclassorder .finance {
padding: 1px 10px;
align-items: center;
justify-content: center;
......@@ -1164,7 +1095,7 @@
margin: 5px 3px 3px 0;
}
.classorder .order_OfferId {
.b2bclassorder .order_OfferId {
font-size: 18px;
color: #2961FE;
margin-bottom: 10px;
......@@ -1196,7 +1127,7 @@
overflow-y: auto;
}
.classorder .redstyle {
.b2bclassorder .redstyle {
color: var(--q-color-negative);
}
......@@ -1207,3 +1138,26 @@
}
</style>
<style lang="scss">
.b2bclassorder ::-webkit-scrollbar {
width: 5px;
height: 5px;
}
.b2bclassorder ::-webkit-scrollbar-track {
background: #fff;
border-radius: 2px;
}
.b2bclassorder ::-webkit-scrollbar-thumb {
background: #444;
border-radius: 10px;
}
.b2bclassorder ::-webkit-scrollbar-thumb:hover {
background: #999;
}
.b2bclassorder ::-webkit-scrollbar-corner {
background: #204754;
}
.b2bclassorder .q-table__bottom {
min-height:0px;
}
</style>
\ No newline at end of file
......@@ -79,21 +79,6 @@
<span>企业/学校名称</span>
<span>{{Data.EnterpriseName}}</span>
</div>
<!-- 账号 -->
<!-- <div class="q-my-sm" v-if="editField=='Account'">
<div class="flex justify-between items-center q-mb-sm">
<span>账号</span>
<div>
<q-btn size="sm" text-color="primary" label="取消" @click="showEdit('')"></q-btn>
<q-btn size="sm" color="primary" label="确定" class="q-ml-sm" @click="save('Account',Data.Account)"></q-btn>
</div>
</div>
<q-input outlined dense v-model="Data.Account" :rules="[val => !!val || '请输入账号']"></q-input>
</div>
<div class="flex justify-between items-center q-my-lg" v-else @click="showEdit('Account')">
<span>账号</span>
<span>{{Data.Account}}</span>
</div> -->
<!-- 详细地址 -->
<div class="q-my-sm" v-if="editField=='Address'">
<div class="flex justify-between items-center q-mb-sm">
......
<template>
<div class="q-pa-md">
<q-tabs
v-model="tabs"
active-color="primary"
align="left"
style="width:350px;margin-bottom:20px;"
>
<q-tab :name="1" label="操作日志" />
<q-tab :name="2" label="客户" />
<q-tab :name="3" label="订单" />
<q-tab :name="4" label="幸福存折" />
</q-tabs>
<div class="q-mb-lg">
<log :Id="Id" v-if="tabs===1"></log>
<customer :Id="Id" v-if="tabs===2"></customer>
<order :Id="Id" v-if="tabs===3"></order>
</div>
<q-tabs
v-model="tabs"
active-color="primary"
align="left"
style="width:400px;"
>
<q-tab :name="1" label="操作日志" />
<q-tab :name="2" label="客户" />
<q-tab :name="3" label="订单" />
<q-tab :name="4" label="返佣" />
<q-tab :name="5" label="幸福存折" />
</q-tabs>
<div class="q-mb-lg">
<log :Id="Id" v-if="tabs === 1"></log>
<customer :Id="Id" v-if="tabs === 2"></customer>
<order :Id="Id" v-if="tabs === 3"></order>
<rakeback :Id="Id" v-if="tabs === 4" :type="type"></rakeback>
<passbook :Id="Id" v-if="tabs === 5" :type="type"></passbook>
</div>
</div>
</template>
<script>
import log from './log.vue'
import customer from './customer'
import order from './order'
export default {
components: {log,customer,order},
props: {
Id: {
type: Number,
default: 0
}
import log from "./log.vue";
import customer from "./customer";
import order from "./order";
import passbook from "./passbook";
import rakeback from "./rakeback";
export default {
components: { log, customer, order, rakeback, passbook },
props: {
Id: {
type: Number,
default: 0
},
data() {
return {
tabs:1,
}
},
created() {},
mounted() {
},
methods: {
},
}
tabId: {
type: Number,
default: 1
}
},
data() {
return {
tabs: 1,
type: 1
};
},
mounted() {
this.tabs=this.tabId
},
};
</script>
......@@ -37,7 +37,7 @@
:columns="columns"
row-key="Id"
>
<template v-slot:body-cell-StuIcon="props">
<!-- <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" />
......@@ -51,7 +51,7 @@
{{ props.row.StuName.substring(0, 1) }}</q-avatar
>
</q-td>
</template>
</template> -->
<template v-slot:body-cell-StuName="props">
<q-td :props="props">
<div class="text-blue cursor-pointer" @click="getStuRight(props.row)">
......@@ -119,12 +119,12 @@ export default {
list: [],
pageCount: 0,
columns: [
{
name: "StuIcon",
label: "",
field: "StuIcon",
align: "left"
},
// {
// name: "StuIcon",
// label: "",
// field: "StuIcon",
// align: "left"
// },
{
name: "StuName",
required: true,
......@@ -217,7 +217,6 @@ export default {
StuNum: total
};
this.stagelist.unshift(obj);
console.log("tag", this.stagelist);
});
},
changePage(val) {
......
<template>
<div class=" myOrder q-pb-lg">
<div class="row wrap q-gutter-xs" v-if="data.Statistics">
<div class="col-3 stics">
<div class="row wrap q-gutter-xs q-my-xs" v-if="data.Statistics">
<div class=" stics">
<span class="stics-name">应收款</span>
<span>{{
data.Statistics.PreferPrice ? data.Statistics.PreferPrice : 0
}}</span>
</div>
<div class="col-3 stics">
<div class=" stics">
<span class="stics-name">实收款</span>
<span>{{ data.Statistics.Income }}</span>
</div>
<div class="col-3 stics">
<div class=" stics">
<span class="stics-name">待收款</span>
<span style="color: #F72E52">{{ data.Statistics.DueInMoney }}</span>
</div>
<div class="col-3 stics">
<div class=" stics">
<span class="stics-name">收客人数</span>
<span style="color:#2961FE;">{{ data.Statistics.GuestNum }}</span>
</div>
<div class="col-3 stics">
<div class=" stics">
<span class="stics-name">取消人数</span>
<span>{{ data.Statistics.CancelNum }}</span>
</div>
<div class="col-3 stics">
<div class=" stics">
<span class="stics-name">提成金额</span>
<span>{{ data.Statistics.CommissionMoney }}</span>
</div>
<div class="col-3 stics">
<div class=" stics">
<span class="stics-name">额外奖励</span>
<span>{{ data.Statistics.ExtraRewardMoney }}</span>
</div>
</div>
<div class="row col" style="justify-content: flex-end">
<div class="row tis">
<div class="tis-k" style="background: #2961FE"></div>
<span>已打单</span>
</div>
<div class="row tis">
<div class="tis-k" style="background: #02C499"></div>
<span>平台出纳已审核</span>
</div>
<div class="row tis">
<div class="tis-k" style="background: #F28C1D"></div>
<span>银行出纳已审核</span>
</div>
<div class="row tis">
<div class="tis-k" style="background: #3FC4FF"></div>
<span>已通过</span>
</div>
</div>
<div style="width:100%;overflow:auto">
<orderlist
:dataList="data.List"
......@@ -404,7 +387,7 @@ li {
}
.myOrder .stics {
padding: 10px 20px;
padding:5px 10px ;
background: #dddee0;
border-radius: 4px;
font-size: 14px;
......
<template>
<div class="passbook">
<div class="row wrap q-gutter-xs q-my-xs">
<div class="stics">
<span class="stics-name">累计</span>
<span>{{ data.TotalMoney }}</span>
</div>
<div class=" stics">
<span class="stics-name">已提现</span>
<span style="color: #F72E52">{{ data.RemitMoney }}</span>
</div>
<div class=" stics">
<span class="stics-name">可提现</span>
<span style="color:#2961FE;">{{ data.SurplusMoney }}</span>
</div>
<div class=" stics">
<span class="stics-name">未结算</span>
<span>{{ data.NotSettlementMoney }}</span>
</div>
</div>
<q-table
:pagination="msg"
:loading="loading"
no-data-label="暂无相关数据"
flat
class="sticky-column-table"
separator="none"
:data="dataList"
:columns="columns"
row-key="name"
>
<template v-slot:body-cell-ClassName="props">
<q-td :props="props" style="padding-right: 0px">
{{ props.row.ClassName }}{{ props.row.ClassNo }}
</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>
</div>
</template>
<script>
import {
getCustomerCommissionPassbook,
GetCustomerBalanceDetailPage
} from "../../../api/sale/peemanagement";
export default {
props: {
type: {
//1返佣 2幸福存折
type: Number,
default: 1
},
Id: {
//1返佣 2幸福存折
type: Number,
default: 0
}
},
data() {
return {
loading: false,
msg: {
CustomerId: 0,
pageIndex: 1,
pageSize: 10,
rowsPerPage: 10,
RebateType: 2,
Description: ""
},
pageCount: 0,
data:{},
dataList: [],
columns: [
{
name: "BalanceTypeStr",
label: "类型",
field: "BalanceTypeStr",
align: "left"
},
{
name: "Money",
label: "变更金额",
align: "left",
field: "Money"
},
{
name: "Description",
label: "变更详情",
field: "Description",
align: "left"
},
{
name: "ClassName",
label: "班级信息",
field: "ClassName",
align: "left"
},
{
name: "OrderId",
label: "订单编号",
field: "OrderId",
align: "left"
},
{
name: "PeopleNum",
label: "订单人数",
field: "PeopleNum",
align: "left"
},
{
name: "BalanceStateStr",
label: "返佣",
field: "BalanceStateStr",
align: "left"
},
{
name: "RemitStr",
label: "提现",
field: "RemitStr",
align: "left"
},
{
name: "UpdateTimeStr",
label: "更新时间",
field: "UpdateTimeStr",
align: "left"
}
]
};
},
mounted() {
this.getData();
this.getList();
},
methods: {
getData() {
const msg = {
CustomerId: this.Id,
Type: this.type
};
getCustomerCommissionPassbook(msg).then(res => {
console.log(29, res);
this.data=res.Data
});
},
//获取数据
getList() {
this.loading = true;
GetCustomerBalanceDetailPage(this.msg)
.then(res => {
this.loading = false;
if (res.Code == 1) {
console.log(30, res);
this.dataList = res.Data.PageData;
this.pageCount = res.Data.PageCount;
}
})
.catch(() => {
this.loading = false;
});
},
changePage(val) {
this.msg.pageIndex = val;
this.getList();
}
}
};
</script>
<style>
.passbook ::-webkit-scrollbar {
width: 5px;
height: 5px;
}
.passbook ::-webkit-scrollbar-track {
background: #fff;
border-radius: 2px;
}
.passbook ::-webkit-scrollbar-thumb {
background: #444;
border-radius: 10px;
}
.passbook ::-webkit-scrollbar-thumb:hover {
background: #999;
}
.passbook ::-webkit-scrollbar-corner {
background: #204754;
}
.passbook .stics {
padding: 5px 10px;
background: #dddee0;
border-radius: 4px;
font-size: 14px;
color: #000000;
font-weight: bold;
white-space: nowrap;
}
.passbook .stics-name {
color: #2d2d2d;
font-weight: 600;
margin-right: 10px;
}
</style>
<template>
<div class="passbook">
<div class="row wrap q-gutter-xs q-my-xs ">
<div class="stics">
<span class="stics-name">累计</span>
<span>{{ data.TotalMoney }}</span>
</div>
<div class=" stics">
<span class="stics-name">已提现</span>
<span style="color: #F72E52">{{ data.RemitMoney }}</span>
</div>
<div class=" stics">
<span class="stics-name">可提现</span>
<span style="color:#2961FE;">{{ data.SurplusMoney }}</span>
</div>
<div class=" stics">
<span class="stics-name">未结算</span>
<span>{{ data.NotSettlementMoney }}</span>
</div>
</div>
<q-table
:pagination="msg"
:loading="loading"
no-data-label="暂无相关数据"
flat
class="sticky-column-table"
separator="none"
:data="dataList"
:columns="columns"
row-key="name"
>
<template v-slot:body-cell-ClassName="props">
<q-td :props="props" style="padding-right: 0px">
{{ props.row.ClassName }}{{ props.row.ClassNo }}
</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>
</div>
</template>
<script>
import {
getCustomerCommissionPassbook,
GetCustomerBalanceDetailPage
} from "../../../api/sale/peemanagement";
export default {
props: {
type: {
//1返佣 2幸福存折
type: Number,
default: 1
},
Id: {
//1返佣 2幸福存折
type: Number,
default: 0
}
},
data() {
return {
loading: false,
msg: {
CustomerId: 0,
pageIndex: 1,
pageSize: 10,
rowsPerPage: 10,
RebateType: 2,
Description: ""
},
pageCount: 0,
data: {},
dataList: [],
columns: [
{
name: "BalanceTypeStr",
label: "类型",
field: "BalanceTypeStr",
align: "left"
},
{
name: "Money",
label: "变更金额",
align: "left",
field: "Money"
},
{
name: "Description",
label: "变更详情",
field: "Description",
align: "left"
},
{
name: "ClassName",
label: "班级信息",
field: "ClassName",
align: "left"
},
{
name: "OrderId",
label: "订单编号",
field: "OrderId",
align: "left"
},
{
name: "PeopleNum",
label: "订单人数",
field: "PeopleNum",
align: "left"
},
{
name: "BalanceStateStr",
label: "返佣",
field: "BalanceStateStr",
align: "left"
},
{
name: "RemitStr",
label: "提现",
field: "RemitStr",
align: "left"
},
{
name: "UpdateTimeStr",
label: "更新时间",
field: "UpdateTimeStr",
align: "left"
}
]
};
},
mounted() {
this.getData();
this.getList();
},
methods: {
getData() {
const msg = {
CustomerId: this.Id,
Type: this.type
};
getCustomerCommissionPassbook(msg).then(res => {
console.log(29, res);
this.data = res.Data;
});
},
//获取数据
getList() {
this.loading = true;
GetCustomerBalanceDetailPage(this.msg)
.then(res => {
this.loading = false;
if (res.Code == 1) {
this.dataList = res.Data.PageData;
this.pageCount = res.Data.PageCount;
}
})
.catch(() => {
this.loading = false;
});
},
changePage(val) {
this.msg.pageIndex = val;
this.getList();
}
}
};
</script>
<style>
.passbook ::-webkit-scrollbar {
width: 5px;
height: 5px;
}
.passbook ::-webkit-scrollbar-track {
background: #fff;
border-radius: 2px;
}
.passbook ::-webkit-scrollbar-thumb {
background: #444;
border-radius: 10px;
}
.passbook ::-webkit-scrollbar-thumb:hover {
background: #999;
}
.passbook ::-webkit-scrollbar-corner {
background: #204754;
}
.passbook .stics {
padding: 5px 10px;
background: #dddee0;
border-radius: 4px;
font-size: 14px;
color: #000000;
font-weight: bold;
white-space: nowrap;
}
.passbook .stics-name {
color: #2d2d2d;
font-weight: 600;
margin-right: 10px;
}
</style>
<style lang="scss">
.b2bcustomlist .q-table__bottom {
min-height: 0;
}
.CustomerName{
cursor: pointer;
color:var(--q-color-primary) ;
}
.b2bcustomlist .q-table__bottom {
min-height: 0;
}
.CustomerName {
cursor: pointer;
color: var(--q-color-primary);
}
</style>
<template>
<div class="b2bcustomlist">
<q-table :pagination="pageMsg" :loading="loading" no-data-label="暂无相关数据" flat selection ="multiple" :selected.sync="selection"
class="sticky-column-table sticky-right-column-table " separator="none" :data="dataList" :columns="columns"
row-key="CustomerId">
<q-table
:pagination="pageMsg"
:loading="loading"
no-data-label="暂无相关数据"
flat
selection="multiple"
:selected.sync="selection"
class="sticky-column-table sticky-right-column-table "
separator="none"
:data="dataList"
:columns="columns"
row-key="CustomerId"
>
<template v-slot:top="props">
<q-space />
<div class="page-option" v-if="authObj.isShowEdit">
<q-btn color="accent" size="sm" class="q-mr-md" icon="add" @click="EditCustom(null)" label="新增客户" />
<q-btn color="accent" size="sm" class="q-mr-md" icon="swap_horiz" :disable ="selection.length==0" label="转移" />
<q-btn
color="accent"
size="sm"
class="q-mr-md"
icon="add"
@click="EditCustom(null)"
label="新增客户"
/>
<q-btn
color="accent"
size="sm"
label="转交"
:disable="selection.length == 0"
icon="swap_horiz"
@click="isShowTrans = true"
>
<q-popup-proxy :offset="[10, 10]">
<q-banner v-if="isShowTrans">
<q-select
style="margin-top:20px;"
filled
v-model="TransferMsg.EmpId"
@filter="filterEmployee"
use-input
:options="myEmployeeList"
option-label="EmployeeName"
option-value="Id"
emit-value
map-options
:rules="[val => !!val || '请选择接收人']"
ref="transfer"
/>
<q-btn
label="保存"
style="float:right;margin-top:15px"
color="accent q-mb-lg"
size="sm"
@click="saveTransForm"
/>
</q-banner>
</q-popup-proxy>
</q-btn>
</div>
</template>
<template v-slot:body-cell-CustomerName="props">
<q-td>
<div class="CustomerName" @click="showDetail(props.row)">
{{props.row.CustomerName}}
{{ props.row.CustomerName }}
</div>
</q-td>
</template>
<template v-slot:body-cell-StuNum="props">
<q-td>
<div class="CustomerName" @click="showDetail(props.row,2)">
{{ props.row.StuNum }}
</div>
</q-td>
</template>
<template v-slot:body-cell-OrderNum="props">
<q-td>
<div class="CustomerName" @click="showDetail(props.row,3)">
{{ props.row.OrderNum }}
</div>
</q-td>
</template>
<template v-slot:body-cell-CustomerType="props">
<q-td>
<div v-if="props.row.CustomerType===1">企业</div>
<div v-if="props.row.CustomerType===2">学校</div>
<div v-if="props.row.CustomerType === 1">企业</div>
<div v-if="props.row.CustomerType === 2">学校</div>
</q-td>
</template>
<template v-slot:body-cell-optioned="props">
<q-td :props="props" style="width:200px;">
<q-btn flat v-if="(props.row.ApproveState==0||props.row.ApproveState==2)&&authObj.isShowAudit" size="xs"
icon="edit" color="accent" style="font-weight:400" label="客户审批" @click="AuditCustomer(props.row,1)" />
<q-btn flat size="xs"
icon="edit" color="accent" style="font-weight:400" label="编辑" @click="EditCustom(props.row)" />
<q-btn flat v-if="props.row.ApproveState==0 && AuthorityObj.isShowEdit" size="xs" icon="delete"
color="negative" style="font-weight:400" label="删除" @click="RemoveCustomer(props.row)" />
<q-btn flat v-if="AuthorityObj.isShowBankBook" size="xs" icon="edit" color="accent" style="font-weight:400"
label="幸福存折" @click="gohappyPassbook(props.row)" />
<q-btn flat v-if="AuthorityObj.isShowRebate" size="xs" icon="edit" color="accent" style="font-weight:400"
label="返佣管理" @click="gohappyCommisson(props.row)" />
<q-td :props="props">
<q-btn
flat
v-if="
(props.row.ApproveState == 0 || props.row.ApproveState == 2) &&
authObj.isShowAudit
"
size="xs"
icon="edit"
color="accent"
style="font-weight:400"
label="客户审批"
@click="AuditCustomer(props.row, 1)"
/>
<!-- <q-btn flat size="xs"
icon="edit" color="accent" style="font-weight:400" label="编辑" @click="EditCustom(props.row)" /> -->
<q-btn
flat
v-if="props.row.ApproveState == 0 && AuthorityObj.isShowEdit"
size="xs"
icon="delete"
color="negative"
style="font-weight:400"
label="删除"
@click="RemoveCustomer(props.row)"
/>
<!-- <q-btn
flat
v-if="AuthorityObj.isShowBankBook"
size="xs"
icon="edit"
color="accent"
style="font-weight:400"
label="幸福存折"
@click="gohappyPassbook(props.row)"
/>
<q-btn
flat
v-if="AuthorityObj.isShowRebate"
size="xs"
icon="edit"
color="accent"
style="font-weight:400"
label="返佣管理"
@click="gohappyCommisson(props.row)"
/> -->
</q-td>
</template>
<template v-slot:bottom>
<div></div>
</template>
</q-table>
<customerEdit-form v-if="isShowCustomForm" :customerObj="customerObj" @close="closeCustomForm"
@success="refreshQuestion">
<customerEdit-form
v-if="isShowCustomForm"
:customerObj="customerObj"
@close="closeCustomForm"
@success="refreshQuestion"
>
</customerEdit-form>
<customerReview-form v-if="isShowRightForm" :customerObj="customerObj" @close="closeCustomForm"
@success="refreshQuestion"></customerReview-form>
<customerInfo v-if="isShowDetailForm" :rowId="curRowId" @close="closeCustomForm" :auth="AuthorityObj"
@success="refreshQuestion"></customerInfo>
<customerReview-form
v-if="isShowRightForm"
:customerObj="customerObj"
@close="closeCustomForm"
@success="refreshQuestion"
></customerReview-form>
<customerInfo
v-if="isShowDetailForm"
:rowId="curRowId"
:tabId="tabId"
:empList="employeeList"
@close="closeCustomForm"
:auth="AuthorityObj"
@success="refreshQuestion"
></customerInfo>
</div>
</template>
<script>
import customerEditForm from '../sale/customerEdit-form';
import customerReviewForm from '../sale/customerReview-form';
import customerInfo from './b2bcustomerinfo/b2bCustomerInfo.vue';
export default {
props: {
dataList: {
type: Array,
default: null
},
authObj: {
type: Object,
default: null
}
import { queryEmployee } from "../../api/users/user";
import { setCustomerCareOf } from "../../api/sale/peemanagement";
import customerEditForm from "../sale/customerEdit-form";
import customerReviewForm from "../sale/customerReview-form";
import customerInfo from "./b2bcustomerinfo/b2bCustomerInfo.vue";
export default {
props: {
dataList: {
type: Array,
default: null
},
components: {
customerEditForm,
customerReviewForm,
customerInfo
authObj: {
type: Object,
default: null
},
data() {
return {
columns: [
{
name: 'CustomerName',
label: '同业名称',
field: 'CustomerName',
align: 'left'
},
{
name: 'CustomerType',
label: '类型',
field: 'CustomerType',
align: 'left'
},
{
name: 'EnterpriseName',
label: '企业/学校名称',
field: 'EnterpriseName',
align: 'left'
},
{
name: 'ContactNumber',
label: '电话',
field: 'ContactNumber',
align: 'left',
},
{
name: 'StuNum',
label: '客户数量',
field: 'StuNum',
align: 'left'
},
{
name: 'OrderNum',
label: '订单数量',
field: 'OrderNum',
align: 'left'
},
{
name: 'OrderSales',
label: '交易额',
field: 'OrderSales',
align: 'left'
},
{
name: 'ApproveStateStr',
label: '审核状态',
field: 'ApproveStateStr',
align: 'left'
},
{
name: 'CreateTimeStr',
label: '加入时间',
field: 'CreateTimeStr',
align: 'left'
},
{
name: 'optioned',
label: '操作',
field: 'QuestionId'
}
],
pageMsg: {
rowsPerPage: 12,
empList:{
type:Array,
default:()=>[]
}
},
components: {
customerEditForm,
customerReviewForm,
customerInfo
},
data() {
return {
columns: [
{
name: "CustomerName",
label: "同业名称",
field: "CustomerName",
align: "left"
},
loading: false,
isShowCustomForm: false,
isShowRightForm: false,
customerObj: null, //传入参数
isShowDetailForm:false,
curRowId:0,
//权限设置
AuthorityObj: {
isShowEdit: false, //是否显示新增修改按钮
isShowAudit: false, //是否显示审批
isShowBankBook: false, //是否显示幸福存折
isShowRebate: false, //是否显示返佣
{
name: "CustomerType",
label: "类型",
field: "CustomerType",
align: "left"
},
{
name: "EnterpriseName",
label: "企业/学校名称",
field: "EnterpriseName",
align: "left"
},
{
name: "ContactNumber",
label: "电话",
field: "ContactNumber",
align: "left"
},
{
name: "StuNum",
label: "客户数量",
field: "StuNum",
align: "left"
},
{
name: "OrderNum",
label: "订单数量",
field: "OrderNum",
align: "left"
},
{
name: "OrderSales",
label: "交易额",
field: "OrderSales",
align: "left"
},
{
name: "ApproveStateStr",
label: "审核状态",
field: "ApproveStateStr",
align: "left"
},
selection:[]
}
},
created() {
this.initAuth();
},
mounted() {},
methods: {
//初始化权限
initAuth() {
if (this.authObj) {
if (this.authObj.isShowEdit != null && this.authObj.isShowEdit) {
this.AuthorityObj.isShowEdit = this.authObj.isShowEdit;
}
if (this.authObj.isShowAudit != null && this.authObj.isShowAudit) {
this.AuthorityObj.isShowAudit = this.authObj.isShowAudit;
}
if (this.authObj.isShowBankBook != null && this.authObj.isShowBankBook) {
this.AuthorityObj.isShowBankBook = this.authObj.isShowBankBook;
}
if (this.authObj.isShowRebate != null && this.authObj.isShowRebate) {
this.AuthorityObj.isShowRebate = this.authObj.isShowRebate;
}
}
},
//新增或者修改客户
EditCustom(obj) {
if (obj) {
this.customerObj = obj
} else {
this.customerObj = null
}
this.isShowCustomForm = true
},
//客户审核
AuditCustomer(obj, Type) {
if (obj) {
this.customerObj = obj
this.customerObj.Type = Type;
} else {
this.customerObj = null
{
name: "CreateTimeStr",
label: "加入时间",
field: "CreateTimeStr",
align: "left"
},
{
name: "optioned",
label: "操作",
field: "QuestionId"
}
this.isShowRightForm = true
],
pageMsg: {
rowsPerPage: 12
},
//客户详情
showDetail(row) {
this.curRowId=row.CustomerId
this.isShowDetailForm = true
loading: false,
isShowCustomForm: false,
isShowRightForm: false,
customerObj: null, //传入参数
isShowDetailForm: false,
curRowId: 0,
//权限设置
AuthorityObj: {
isShowEdit: false, //是否显示新增修改按钮
isShowAudit: false, //是否显示审批
isShowBankBook: false, //是否显示幸福存折
isShowRebate: false //是否显示返佣
},
//删除客户
RemoveCustomer(obj) {
let that = this;
var message = "您正在进行删除【" + obj.CustomerName + "】行为,一旦执行无法找回,是否确认执行?";;
this.$q.dialog({
selection: [],
tabId:1,
TransferMsg: {
CustomerIds: "",
EmpId: ""
},
//员工列表
employeeList: [],
myEmployeeList: [],
isShowTrans: false
};
},
created() {
this.initAuth();
this.getEmployeeList();
},
mounted() {},
methods: {
//初始化权限
initAuth() {
if (this.authObj) {
if (this.authObj.isShowEdit != null && this.authObj.isShowEdit) {
this.AuthorityObj.isShowEdit = this.authObj.isShowEdit;
}
if (this.authObj.isShowAudit != null && this.authObj.isShowAudit) {
this.AuthorityObj.isShowAudit = this.authObj.isShowAudit;
}
if (
this.authObj.isShowBankBook != null &&
this.authObj.isShowBankBook
) {
this.AuthorityObj.isShowBankBook = this.authObj.isShowBankBook;
}
if (this.authObj.isShowRebate != null && this.authObj.isShowRebate) {
this.AuthorityObj.isShowRebate = this.authObj.isShowRebate;
}
}
},
//新增或者修改客户
EditCustom(obj) {
if (obj) {
this.customerObj = obj;
} else {
this.customerObj = null;
}
this.isShowCustomForm = true;
},
//客户审核
AuditCustomer(obj, Type) {
if (obj) {
this.customerObj = obj;
this.customerObj.Type = Type;
} else {
this.customerObj = null;
}
this.isShowRightForm = true;
},
//客户详情
showDetail(row,tabId=1) {
this.curRowId = row.CustomerId;
this.tabId=tabId
this.isShowDetailForm = true;
},
//删除客户
RemoveCustomer(obj) {
let that = this;
var message =
"您正在进行删除【" +
obj.CustomerName +
"】行为,一旦执行无法找回,是否确认执行?";
this.$q
.dialog({
title: "删除客户",
message: message,
isShowEditClassRoomForm: true,
......@@ -226,45 +364,79 @@
flat: true,
focus: true
}
}).onOk(() => {
})
.onOk(() => {
var delMsg = {
CustomerId: obj.CustomerId,
CustomerId: obj.CustomerId
};
RemoveCustomer(delMsg).then(res => {
if (res.Code == 1) {
that.$q.notify({
icon: 'iconfont icon-chenggong',
color: 'accent',
icon: "iconfont icon-chenggong",
color: "accent",
timeout: 2000,
message: '操作成功',
position: 'top'
})
message: "操作成功",
position: "top"
});
that.refreshQuestion();
}
})
});
},
//关闭弹窗
closeCustomForm() {
this.isShowCustomForm = false;
this.isShowRightForm = false;
this.isShowDetailForm = false;
},
refreshQuestion() {
this.$emit('success');
},
//跳转到幸福存折
gohappyPassbook(item) {
this.OpenNewUrl('/sale/happyPassbook', {
CustomerId: item.CustomerId,
});
});
},
//跳转到返佣管理
gohappyCommisson(item) {
this.OpenNewUrl('/sale/commsionManagement', {
CustomerId: item.CustomerId,
},
//关闭弹窗
closeCustomForm() {
this.isShowCustomForm = false;
this.isShowRightForm = false;
this.isShowDetailForm = false;
},
refreshQuestion() {
this.$emit("success");
},
//跳转到幸福存折
// gohappyPassbook(item) {
// this.OpenNewUrl("/sale/happyPassbook", {
// CustomerId: item.CustomerId
// });
// },
//跳转到返佣管理
// gohappyCommisson(item) {
// this.OpenNewUrl("/sale/commsionManagement", {
// CustomerId: item.CustomerId
// });
// },
//同业转交
saveTransForm() {
this.$refs.transfer.validate();
if(this.$refs.transfer.hasError) return
this.TransferMsg.CustomerIds=this.selection.map(e=>e.CustomerId).toString()
setCustomerCareOf(this.TransferMsg).then(res => {
this.$q.notify({
icon: "iconfont icon-chenggong",
color: "accent",
timeout: 2000,
message: "转交成功",
position: "top"
});
},
this.isShowTrans = false;
});
},
//获取员工列表
getEmployeeList() {
queryEmployee({
IsLeave: 1
}).then(res => {
this.employeeList = res.Data;
this.myEmployeeList = res.Data;
});
},
//筛选员工
filterEmployee(val, update, abort) {
update(() => {
this.myEmployeeList = this.employeeList.filter(
v => v.EmployeeName.indexOf(val) > -1
);
});
}
}
</script>
\ No newline at end of file
};
</script>
......@@ -59,6 +59,7 @@
ContactNumber: "", //联系电话
ApproveState: "", //审核状态
CustomerState: "", //账号状态
CustomerId:0,
},
loading: false,
//审核状态列表
......@@ -80,6 +81,9 @@
},
created() {},
mounted() {
if(this.$route.query.CustomerId){
this.msg.CustomerId=this.$route.query.CustomerId
}
this.getList();
},
methods: {
......
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