一期修改,添加客服查询

master
chen 2021-10-25 09:49:51 +08:00
parent 8f08f232b8
commit d96ead79df
10 changed files with 162 additions and 20 deletions

View File

@ -116,6 +116,7 @@
if(!this.jieDuan){ if(!this.jieDuan){
let isAuth = this.$toolAll.tools.returnAuth() let isAuth = this.$toolAll.tools.returnAuth()
if(!isAuth){ if(!isAuth){
this.$requst.post('user/rand-bind-service').then(res=>{})
this.$toolAll.tools.closeTimer()// this.$toolAll.tools.closeTimer()//
// uni.navigateTo({url:'/pages/tabbar/pagehome/pagehome'}) // uni.navigateTo({url:'/pages/tabbar/pagehome/pagehome'})
this.$requst.post('user/record',{type:'other',action:'ask',id:0}).then(res=>{},error=>{}) this.$requst.post('user/record',{type:'other',action:'ask',id:0}).then(res=>{},error=>{})

View File

@ -36,6 +36,7 @@
}, },
methods:{ methods:{
lianK(){ lianK(){
this.$requst.post('user/rand-bind-service').then(res=>{})
this.$toolAll.tools.closeTimer()// this.$toolAll.tools.closeTimer()//
this.$requst.post('user/record',{type:'other',action:'ask',id:this.nid}).then(res=>{},error=>{}) this.$requst.post('user/record',{type:'other',action:'ask',id:this.nid}).then(res=>{},error=>{})
let maiOjb = { let maiOjb = {

View File

@ -154,6 +154,15 @@
"enablePullDownRefresh": false "enablePullDownRefresh": false
} }
}
,{
"path" : "customerCheck/customerCheck",
"style" :
{
"navigationBarTitleText": "",
"enablePullDownRefresh": false
}
} }
] ]
} }

View File

@ -18,7 +18,7 @@
<view class="bacf radius20 width100 tank-box"> <view class="bacf radius20 width100 tank-box">
<view class="tc tank-box-itemone">请授权绑定手机号</view> <view class="tc tank-box-itemone">请授权绑定手机号</view>
<view class="fon28 colf pad-x30 pad-zy30 tc disjb"> <view class="fon28 colf pad-x30 pad-zy30 tc disjb">
<view @tap="refuse" class="pad-sx10 radius10 tank-btn" style="background-color: rgba(230, 230, 230,1);color: #000000;">暂不绑定</view> <view class="pad-sx10 radius10 tank-btn" style="background-color: rgba(230, 230, 230,1);color: #000000;">暂不绑定</view>
<view :style="{background:publicColor}" class="pad-sx10 radius10 tank-btn posir"> <view :style="{background:publicColor}" class="pad-sx10 radius10 tank-btn posir">
立即绑定 立即绑定
<button open-type="getPhoneNumber" @getphonenumber="getphonenumber" class="posia syxzo">立即绑定</button> <button open-type="getPhoneNumber" @getphonenumber="getphonenumber" class="posia syxzo">立即绑定</button>

View File

@ -41,7 +41,7 @@
<view v-if="userInfo.is_staff==1" class="bacf radius20 mar-s20 pad20"> <view v-if="userInfo.is_staff==1" class="bacf radius20 mar-s20 pad20">
<view class="mar-x30 fon28 bold col3">员工功能</view> <view class="mar-x30 fon28 bold col3">员工功能</view>
<view class="disac yuan-box"> <view class="disac yuan-box">
<view @tap="chooseYitem(indexy)" style="width: 33%;display: flex;justify-content: center;align-items: center;position: relative;" v-for="(itemy,indexy) in yuanList" :key="indexy"> <view @tap="chooseYitem(indexy)" style="width: 25%;display: flex;justify-content: center;align-items: center;position: relative;" v-for="(itemy,indexy) in yuanList" :key="indexy">
<view class="disac fc"> <view class="disac fc">
<image :src="itemy.src" style="width: 54rpx;height: 54rpx;" mode="aspectFill"></image> <image :src="itemy.src" style="width: 54rpx;height: 54rpx;" mode="aspectFill"></image>
<view class="fon28 mar-s20 mar-x10">{{itemy.title}}</view> <view class="fon28 mar-s20 mar-x10">{{itemy.title}}</view>
@ -110,6 +110,7 @@
{src:'/static/public/keh.png',title:'客户列表',rule:'customer-list'}, {src:'/static/public/keh.png',title:'客户列表',rule:'customer-list'},
{src:'/static/public/zu.png',title:'用户足迹',rule:'footmarks'}, {src:'/static/public/zu.png',title:'用户足迹',rule:'footmarks'},
{src:'/static/public/scan.png',title:'扫码签到',rule:'scan'}, {src:'/static/public/scan.png',title:'扫码签到',rule:'scan'},
{src:'/static/public/customer-check.png',title:'客服查询',rule:'customer-list'},
], ],
toolsList:[ toolsList:[
{src:'/static/public/zyuy.png',title:'自助预约',num:''}, {src:'/static/public/zyuy.png',title:'自助预约',num:''},
@ -285,18 +286,17 @@
}, },
chooseYitem(index){// chooseYitem(index){//
// console.log('',this.yuanList[index].title); // console.log('',this.yuanList[index].title);
switch (index){ if(this.yuanList[index].title=='客户列表') {
case 0:
uni.navigateTo({ uni.navigateTo({
url:'/pagesB/customerList/customerList' url:'/pagesB/customerList/customerList'
}) })
break; }
case 1: if(this.yuanList[index].title=='用户足迹') {
uni.navigateTo({ uni.navigateTo({
url:'/pagesB/userFootprint/userFootprint' url:'/pagesB/userFootprint/userFootprint'
}) })
break; }
case 2: if(this.yuanList[index].title=='扫码签到') {
wx.scanCode({ // wx.scanCode({ //
complete: (res) => {}, // complete: (res) => {}, //
fail: (res) => {}, // fail: (res) => {}, //
@ -315,7 +315,11 @@
},error=>{}) },error=>{})
} }
}) })
break; }
if( this.yuanList[index].title=='客服查询') {
uni.navigateTo({
url:'/pagesB/customerCheck/customerCheck'
})
} }
}, },
choosesjf(index){// choosesjf(index){//

View File

@ -0,0 +1,124 @@
<template>
<view>
<!-- 状态栏 -->
<status-nav :titleVal="'客服查询'" :statusTitle="true"></status-nav>
<!-- 自定义二级分类 -->
<!-- 列表 -->
<view :style="{paddingTop: statusHNH+'px'}" class="pad-zy30">
<view class="radius20 fon28 col3 mar-sx20">
<view class="disac">
<view class="disjbac width100 radius10 pad-zy20 xialak bacf">
<input class="fon28 width100" type="text" @confirm="searchEv" v-model="keyword" placeholder="客户的手机号/微信昵称查找" placeholder-style="color: #B3B3B3;" />
</view>
<view @tap="searchEv" class="flexs tc mar-z30 colf radius10 customer-btn" :style="{background:publicColor}">搜索</view>
</view>
</view>
<!-- 列表 -->
<view class="bacf radius10 pad20 mar-x20 fon28" v-for="(item,index) in dataList" :key="index">
<view class="col3 bold">客户信息</view>
<view class="mar-sx20 fon24 disjbac col6">
<text>昵称{{item.customer_name}}</text>
<text><text v-if="item.customer_phone!=''">{{item.customer_phone}}</text><text v-else></text></text>
</view>
<view class="col3 bold">绑定的客服</view>
<view v-if="item.staff!=null" class="mar-s20 fon24 disjbac col6">
<text>昵称{{item.staff.name}}</text>
<text v-if="item.staff.phone!=''">{{item.staff.phone}}</text>
</view>
<view v-else class="mar-s20 fon24 disjbac col6">
<text>昵称{{item.account.nickname}}</text>
<text><text v-if="item.account.mobile!=''">{{item.account.mobile}}</text><text v-else></text></text>
</view>
</view>
<view v-if="dataList.length==0" class="disjcac fc" style="margin-top: 50%;">
<image class="zanw-img" src="/static/public/nothing.png" mode="aspectFill"></image>
<view class="fon24 col3">您搜索的内容暂无结果换个关键词试试吧</view>
</view>
<!-- 返回顶部 -->
<back-top :showTop="showTop" @backTop="backTop"></back-top>
</view>
<!-- 底部客服 -->
<public-customer :nbottom="100"></public-customer>
</view>
</template>
<script>
export default {
data() {
return {
statusHNH:uni.getStorageSync('statusHNH'),
publicColor:uni.getStorageSync('publicColor'),//
dataList:[],//
showTop:false,//
keyword:'',//
page:1,
size:10,
total:'',//
isZanw:true,
ntype:''// mine=
}
},
onPageScroll(e) {
e.scrollTop > 360 ? this.showTop = true : this.showTop = false
},
onReachBottom() {//
if(this.total!=this.dataList.length){
this.page++
this.checkList()
} else {
if(this.isZanw) this.$toolAll.tools.showToast('暂无更多客服数据')
this.isZanw = false
}
},
onShow() {
this.$toolAll.tools.isLogin()
},
onLoad() {
this.checkList()
},
methods: {
searchEv(){//
if(this.keyword!='') this.ntype = ''
this.page = 1
this.isZanw = true
this.checkList()
},
checkList(){//
let params = {
page:this.page,
size:this.size,
type:this.ntype,//ID
keyword:this.keyword
}
this.$requst.post('user/get-bind-service-list',params).then(res=>{
// console.log('',res);
if(res.code==0){
if(this.page==1) this.dataList = []
this.total = res.data.total;
if(res.data.list.length!=0){
res.data.list.forEach(item=>{
let obj = {
id:item.account_id,
customer_name:item.customer.nickname,
customer_phone:item.customer.mobile,
staff:item.staff,//
account:item.account//staff
}
this.dataList.push(obj)
})
}
}
},error=>{})
},
backTop(){//
uni.pageScrollTo({
scrollTop: 0,
duration: 300
});
},
}
}
</script>
<style>
</style>

View File

@ -23,7 +23,7 @@
<!-- 列表 --> <!-- 列表 -->
<view v-if="dataList.length!=0" class="dis bacf radius10 pad20 mar-x20 posir" v-for="(item,index) in dataList" :key="index"> <view v-if="dataList.length!=0" class="dis bacf radius10 pad20 mar-x20 posir" v-for="(item,index) in dataList" :key="index">
<image class="mar-y20 flexs" :src="item.imgSrc" style="width: 98rpx;height: 98rpx;" mode="aspectFill"></image> <image class="mar-y20 flexs" :src="item.imgSrc" style="width: 98rpx;height: 98rpx;" mode="aspectFill"></image>
<view class="fon24 col3 width100"> <view class="fon24 col3 width100 mar-x40">
<view class="bold disjbac"> <view class="bold disjbac">
<view class="fon28 clips1">{{item.name}}</view> <view class="fon28 clips1">{{item.name}}</view>
<view class="flexs">来源{{item.come}}</view> <view class="flexs">来源{{item.come}}</view>
@ -35,8 +35,8 @@
<view class="col3">{{item.qudao}}</view> <view class="col3">{{item.qudao}}</view>
</view> </view>
</view> </view>
<view @tap="fenCustomer(index)" class="posia colf fon24 radius10 tc customer-btn" <view @tap="fenCustomer(index)" class="posia colf fon24 radius10 tc customer-btn" style="right: 20rpx;top: 80rpx;" v-if="item.customer=='' || item.customer==null" :style="{background:publicColor}"></view>
style="right: 20rpx;bottom: 70rpx;" v-if="item.customer=='' || item.customer==null" :style="{background:publicColor}">分配客服</view> <view class="fon24 col3 posia clips1 bold" style="bottom: 20rpx;left: 20rpx;right: 20rpx;">详细来源{{item.source_detail}}</view>
</view> </view>
<view v-if="dataList.length==0" class="disjcac fc" style="margin-top: 50%;"> <view v-if="dataList.length==0" class="disjcac fc" style="margin-top: 50%;">
<image class="zanw-img" src="/static/public/nothing.png" mode="aspectFill"></image> <image class="zanw-img" src="/static/public/nothing.png" mode="aspectFill"></image>
@ -86,7 +86,7 @@
// } // }
if(this.total!=this.dataList.length){ if(this.total!=this.dataList.length){
this.page++ this.page++
this.checkCL() this.checkCL(this.ntype)
} else { } else {
if(this.isZanw) this.$toolAll.tools.showToast('暂无更多列表数据') if(this.isZanw) this.$toolAll.tools.showToast('暂无更多列表数据')
this.isZanw = false this.isZanw = false
@ -119,8 +119,8 @@
},error=>{}) },error=>{})
}, },
searchEv(){// searchEv(){//
this.page = 1 this.page = 1;
this.isZanw = true this.isZanw = true;
this.checkCL(this.ntype) this.checkCL(this.ntype)
}, },
checkLY(){// checkLY(){//
@ -156,7 +156,8 @@
customer:item.service[0], customer:item.service[0],
time:item.created_at, time:item.created_at,
qudao:item.tag[0], qudao:item.tag[0],
service:item.service service:item.service,
source_detail:item.source_detail
} }
this.dataList.push(cuObj) this.dataList.push(cuObj)
}) })
@ -197,9 +198,10 @@
// console.log(''); // console.log('');
}, },
chooseXia(index){ chooseXia(index){
this.xialCurrent = index this.xialCurrent = index;
this.ntype = this.xialone[index].name this.ntype = this.xialone[index].name;
this.category = this.xialone[index].title console.log(this.ntype);
this.category = this.xialone[index].title;
}, },
chooseXiaT(e){ chooseXiaT(e){
this.staff_id = e.id this.staff_id = e.id

View File

@ -382,6 +382,7 @@
if(this.haveImg == false) { if(this.haveImg == false) {
this.vision = true this.vision = true
} else { } else {
this.$requst.post('user/rand-bind-service').then(res=>{})
this.$toolAll.tools.closeTimer()// this.$toolAll.tools.closeTimer()//
this.$requst.post('user/record',{type:'other',action:'ask',id:0}).then(res=>{},error=>{}) this.$requst.post('user/record',{type:'other',action:'ask',id:0}).then(res=>{},error=>{})
let maiOjb = { let maiOjb = {

View File

@ -8,7 +8,7 @@
<view class="radius20 fon28 col3 mar-sx20"> <view class="radius20 fon28 col3 mar-sx20">
<view class="disac"> <view class="disac">
<view class="disjbac width100 radius10 pad-zy20 xialak bacf"> <view class="disjbac width100 radius10 pad-zy20 xialak bacf">
<input class="fon28 width100" type="text" v-model="keyword" placeholder="请输入姓名/电话查找" placeholder-style="color: #B3B3B3;" /> <input class="fon28 width100" type="text" @confirm="searchEv" v-model="keyword" placeholder="请输入姓名/电话查找" placeholder-style="color: #B3B3B3;" />
</view> </view>
<view @tap="searchEv" class="flexs tc mar-z30 colf radius10 customer-btn" :style="{background:publicColor}">搜索</view> <view @tap="searchEv" class="flexs tc mar-z30 colf radius10 customer-btn" :style="{background:publicColor}">搜索</view>
</view> </view>

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB