|
- <template>
- <view class="box">
- <!-- 搜索框点击跳转 -->
- <view>
- <view class="search-box">
- <view class="search" @click="goSearch">
- <view class="search-img">
- <image class="search-img1" src="../../../static/images/search.png" mode=""></image>
- </view>
- <view class="search-text">输入客户姓名/手机号</view>
- </view>
- <view class="search-screen" @click="screenshow">
- <image class="search-screen1" src="../../../static/images/screen.png" mode=""></image>
- </view>
- </view>
- </view>
- <!-- 选择器 -->
- <view class="boxtittab">
- <view class="tabbox">
- <view :class="{ activecllasscet: activeTotal == 0 }" @click="tabtimetap(0)">今日</view>
- </view>
- <view class="tabbox">
- <view :class="{ activecllasscet: activeTotal == 1 }" @click="tabtimetap(1)">昨日</view>
- </view>
- <view class="tabbox">
- <view :class="{ activecllasscet: activeTotal == 2 }" @click="tabtimetap(2)">近一周</view>
- </view>
- <view class="tabbox">
- <view :class="{ activecllasscet: activeTotal == 3 }" @click="tabtimetap(3)">自定义</view>
- </view>
- </view>
- <view class="content">
- <view v-if="recordList.length==0" style="width: 100%;height: 100%;display: flex;align-items: center;background: #FFFFFF;">
- <view style="width: 100%;padding-top: 200rpx;">
- <view style="width: 100%;text-align: center;">
- <image style="width: 220rpx;height: 200rpx;" src="https://static.quhouse.com/zhikong_xcx_img/nodatalist.png" mode=""></image>
- </view>
- <view style="text-align: center;width: 100%;margin-top: 20rpx;color: #999999;">暂无数据</view>
- </view>
- </view>
- <view v-if="recordList.length!=0" class="content-tips" v-for="(item,index) in recordList" :key='index' @click="tapThevisiting(item)">
- <view class="content-first">
- <view class="left">
- <!-- <view class="img">{{item.agentName.slice(0,1)}}</view> -->
- <view class="name">{{item.agentName}}</view>
- <view class="status" v-if="item.replaceReception==1">代接待</view>
- </view>
- <!-- <view class="right">
- <view class="point"></view>
- <view class="">优秀案例</view>
- </view> -->
- </view>
- <view class="content-sec">
- <view class="left">
- <view class="cus">客户:{{item.name || '--'}} |</view>
- <view class="arriveNum">{{item.visitRecord || "--"}}次到访</view>
- </view>
- <view class="right">
- <!-- {{item.fraction || '0'}}% | {{item.fraction || '0'}}分 -->
- {{item.fraction || '0'}}%
- </view>
- </view>
- <view class="content-last">
- {{item.createTime}} | {{item.mm || '0'}} min
- </view>
- </view>
-
-
-
- </view>
-
-
-
-
- <u-popup v-model="screenShow" mode="top" height="590">
- <view class="screen">
- <!-- 顾问选择 -->
- <view class="screen-counselor">
- <view class="screen-text">
- 所属顾问
- </view>
- <view class="screen-sel">
- <u-input v-model="screen.counselorName" type="text" placeholder='请选择' @click="selectshow = true" class="screen-inp" disabled />
- <image class="screen-sel-img" src="../../../static/images/right.png" mode=""></image>
- </view>
- </view>
- <!-- 录音标示 -->
- <!-- <view class="screen-record">
- <view class="screen-record-text">录音标识</view>
- <view class="screen-record-tab">
- <view :class="[screen.record==0?'screen-record-chose':'screen-record-nochose']" @click="screen.record=0">
- 有效录音
- </view>
- <view :class="[screen.record==1?'screen-record-chose':'screen-record-nochose']" @click="screen.record=1">
- 无效录音
- </view>
- </view>
- </view> -->
- <view class="screen-record">
- <view class="screen-record-text">
- 标记顾问
- </view>
- <view class="screen-record-tab">
- <view :class="[screen.markAdvisor==1?'screen-record-chose':'screen-record-nochose']" @click="screenvisitRecord(1)">
- 标记
- </view>
- <view :class="[screen.markAdvisor==0?'screen-record-chose':'screen-record-nochose']" @click="screenvisitRecord(0)">
- 未标记
- </view>
- </view>
- </view>
- <view class="screen-record">
- <view class="screen-record-text">
- 到访次数
- </view>
- <view class="screen-record-tab">
- <view :class="[screen.visitRecord==1?'screen-record-chose':'screen-record-nochose']" @click="recordclick(1)">
- 首次到访
- </view>
- <view :class="[screen.visitRecord==2?'screen-record-chose':'screen-record-nochose']" @click="recordclick(2)">
- 第二次
- </view>
- <view :class="[screen.visitRecord==3?'screen-record-chose':'screen-record-nochose']" @click="recordclick(3)">
- 第三次
- </view>
- <view :class="[screen.visitRecord==4?'screen-record-chose':'screen-record-nochose']" @click="recordclick(4)">
- 三次以上
- </view>
- </view>
- </view>
- <view class="screen-foot">
- <view class="screen-foot-reset" @click="reset">
- 重置
- </view>
- <view class="screen-foot-sure" @click="screensure">
- 确定
- </view>
- </view>
- </view>
- </u-popup>
- <!-- 选择顾问的选择框 -->
- <u-select v-model="selectshow" :list="freeList" @confirm="actionSelectCallback"></u-select>
-
- <u-calendar v-model="totalTimeShow" mode="range" @change="totalTimeChange"></u-calendar>
- </view>
- </template>
-
- <script>
- export default{
- data(){
- return{
- activeTotal: 2,
- value:'',
- screenShow:false,
- selectshow:false,
- totalTimeShow: false,
- screen:{
- agentId:'',//顾问id
- record:'0',
- markAdvisor:null,
- visitRecord:null
-
- },
- freeList:[],//顾问
- recordList:[],
- buildingID:'',
- nextPage:1,
- totalRecord:"",
- staTime:'',
- endtime:''
- }
- },
- onShow() {
- this.buildingID = uni.getStorageSync('buildingID').id;
- this.recordList=[];
- this.getMyCustom()
- this.getFreeList();
- },
- onReachBottom() {
- if(this.totalRecord==this.nextPage){
- uni.showToast({
- icon:'none',
- title: '到底了',
- duration: 2000
- });
- return
- }else{
- this.nextPage+=1;
- this.getMyCustom();
- }
- },
- methods:{
- tapThevisiting(item) {
- if(item.status==0){
- uni.showToast({
- icon: "none",
- title: "排队中"
- })
- return
- }else{
- const parames = {
- pageNum: 1,
- pageSize: 100,
- query: {
- customerId: item.id,
- }
- }
- var item={
- bg:0,
- customerId:item.id,
- }
- this.$u.post("/corpus/findByPage", parames).then(res => {
- if(res==null){
- uni.showToast({
- icon: "none",
- title: "暂无音频"
- })
- return
- }else{
- let newobj = res[0];
- if(res[0].merge==0){
- uni.navigateTo({
- url: `/pages/mine/details2?customerId=${newobj.customerId}&status=${newobj.status}&itemobj=${JSON.stringify(item)}&stateisshow=${"2"}`
- })
- }else{
- uni.navigateTo({
- url: `/pages/mine/details?customerId=${newobj.customerId}&status=${newobj.status}&itemobj=${JSON.stringify(item)}&stateisshow=${"1"}`
- })
- }
- }
- })
- }
-
- },
- getMyCustom(){
- let dateType=0;
- if(this.activeTotal==3){
- dateType=null;
- }else{
- dateType=this.activeTotal
- }
- var parames = {
- pageNum: this.nextPage,
- pageSize: 10,
- query: {
- projectId:this.buildingID,
- time:1,
- staTime:this.staTime,
- endtime:this.endtime,
- visitRecord:this.screen.visitRecord,
- markAdvisor:this.screen.markAdvisor,
- dateType:dateType
-
- }
- };
- if(this.screen.agentId){
- parames.query.agentId = this.screen.agentId
- }
-
-
- this.$u.post("/customer/findbypage", parames).then(data => {
- var list = data.results || [];
- this.recordList = [...this.recordList, ...list];
- this.totalRecord=data.totalPage;
- })
- },
- //获取顾问列表
- getFreeList() {
- this.$u.get("/zkAgentPool/freeList?itemId="+this.buildingID).then(res => {
- this.freeList = res;
- this.freeList.forEach(item=>{
- item.label=item.name;
- item.value=item.agentId
- })
- })
- },
-
- tabtimetap(index){
- if (index == 3) {
- this.totalTimeShow = true;
- } else {
- this.activeTotal = index;
- this.staTime='';
- this.endtime='';
- this.nextPage=1;
- this.recordList=[];
- this.getMyCustom();
- }
- },
- //自定义时间
- totalTimeChange(e) {
- this.staTime=e.startDate;
- this.endtime=e.endDate;
- this.activeTotal=3;
- this.nextPage=1;
- this.recordList=[];
- this.getMyCustom();
- },
- // 筛选
- screenshow(){
- this.screenShow=true
- },
- actionSelectCallback(e){
- this.screen.agentId=e[0].value;
- this.screenShow=false;
- this.recordList=[];
- this.nextPage=1;
- this.getMyCustom();
- },
- reset(){
- this.screen={
- counselorName:'',
- record:'0',
- markAdvisor:null,
- visitRecord:null
- }
- this.screenShow=false;
- this.nextPage=1;
- this.recordList=[];
- this.getMyCustom();
- },
- recordclick(i){
- if(this.screen.visitRecord==i){
- this.screen.visitRecord=null
- }else{
- this.screen.visitRecord=i
- }
- },
- screenvisitRecord(i){
- if(this.screen.markAdvisor==i){
- this.screen.markAdvisor=null
- }else{
- this.screen.markAdvisor=i
- }
- },
- screensure(){
- this.screenShow=false;
- this.recordList=[];
- this.nextPage=1;
- this.getMyCustom();
- },
- goSearch(){
- uni.navigateTo({
- url: '/pages/center/records/recordSearch'
- });
- },
- },
- }
- </script>
-
- <style lang="scss" scoped>
- .box {
- width: 100%;
- height: 100%;
- background: #F8F8F8;
- }
- .search-box{
- width: 100%;
- height: 102rpx;
- background: #FFFFFF;
- display: flex;
- align-items: center;
- justify-content: center;
- .search{
- width: 620rpx;
- height: 70rpx;
- display: flex;
- align-items: center;
- background: #F8F8F8;
- border-radius: 33rpx;
- .search-img{
- width: 26rpx;
- height: 30rpx;
- margin-left: 20rpx;
- .search-img1{
- width: 100%;
- height: 100%;
- margin-top: 2rpx;
- }
- }
- .search-text{
- font-size: 28rpx;
- font-weight: 400;
- color: #999999;
- margin-left:10rpx;
- }
- }
- .search-screen{
- width: 40rpx;
- height: 40rpx;
- margin-left: 30rpx;
- .search-screen1{
- width: 100%;
- height: 100%;
- }
- }
- }
- .content{
- .content-tips{
- background: #fff;
- padding: 0 20rpx;
- box-sizing: border-box;
- overflow: hidden;
- margin-top: 20rpx;
- .content-first{
- margin-top: 19rpx;
- display: flex;
- justify-content: space-between;
- .left{
- display: flex;
- .img{
- width: 52rpx;
- height: 52rpx;
- background: #FFFFFF;
- border: 1px solid #C9C9C9;
- border-radius: 50%;
- text-align: center;
- line-height: 52rpx;
- }
- .name{
- font-weight: 600;
- color: #333333;
- // margin-left: 20rpx;
- margin-top: 11rpx;
- }
- .status{
- width: 110rpx;
- height: 42rpx;
- background: #FFF9F5;
- border-radius: 4rpx;
- font-size: 26rpx;
- font-weight: 400;
- color: #EC8D49;
- line-height: 42rpx;
- text-align: center;
- margin-left: 19rpx;
- margin-top: 11rpx;
- }
- }
- .right{
- display: flex;
- margin-top: 11rpx;
- .point{
- width: 12rpx;
- height: 12rpx;
- background: #2B6EFF;
- border-radius: 50%;
- margin-right: 9rpx;
- margin-top: 16rpx;
-
- }
- }
- }
-
-
- .content-sec{
- display: flex;
- justify-content: space-between;
- margin-top: 19rpx;
- .left{
- display: flex;
- .cus{
- font-size: 30rpx;
- font-weight: 400;
- color: #666666;
- line-height: 30rpx;
- }
- .arriveNum{
- font-size: 30rpx;
- font-weight: 400;
- line-height: 30rpx;
- margin-left: 10rpx;
- }
- }
- .right{
- width: 192rpx;
- height: 46rpx;
- background: #F4F8FD;
- border-radius: 6rpx;
- text-align: center;
- line-height: 46rpx;
- font-weight: 400;
- color: #2671E2;
- }
- }
- .content-last{
- margin: 30rpx 0;
- font-size: 30rpx;
- font-weight: 400;
- color: #666666;
- line-height: 30rpx;
- }
-
- }
- }
- // 这是弹出层
- .screen{
- // box-sizing: border-box;
- // padding: 0 30rpx;
- position:absolute;
- .screen-counselor{
- display: flex;
- height: 106rpx;
- // padding: 40rpx 30rpx 36rpx 30rpx;
- padding: 0 30rpx;
- box-sizing: border-box;
- border-bottom: 1px solid #EEEEEE;
- .screen-text{
- margin: 40rpx 0 36rpx 0;
- font-size: 30rpx;
- font-weight: 400;
- color: #333333;
- line-height: 30rpx;
- }
- .screen-sel{
- display: flex;
- justify-content: space-between;
- width: 500rpx;
- margin-left: 60rpx;
- .screen-sel-img{
- margin: 40rpx 0 36rpx 0;
- width: 14rpx;
- height: 30rpx;
- }
- .screen-inp{
- margin-top: 20rpx;
- }
- }
- }
- .screen-record{
- height: 192rpx;
- // width: 100%;
- overflow: hidden;
- padding: 0 30rpx;
- box-sizing: border-box;
- border-bottom: 1px solid #EEEEEE;
- .screen-record-text{
- margin-top: 36rpx;
- font-size: 30rpx;
- font-weight: 400;
- color: #333333;
- line-height: 30rpx;
- }
- .screen-record-tab{
- margin-top: 30rpx;
- display: flex;
- // justify-content: space-around;
- .screen-record-chose{
- width: 156rpx;
- height: 60rpx;
- background: #2671E2;
- border-radius: 4rpx;
- border: 1px solid #2671E2;
- text-align: center;
- line-height: 60rpx;
- margin-right: 22rpx;
- color: #FFFFFF;
- }
- .screen-record-nochose{
- width: 156rpx;
- height: 60rpx;
- background: #FFFFFF;
- border-radius: 4rpx;
- border: 1px solid #C9C9C9;
- text-align: center;
- line-height: 60rpx;
- margin-right: 22rpx;
- }
-
- }
- }
- .screen-foot{
- width: 100%;
- height: 100rpx;
- display: flex;
- .screen-foot-reset{
- width: 50%;
- text-align: center;
- height: 100rpx;
- line-height: 100rpx;
- font-size: 30rpx;
- font-weight: 400;
- color: #666666;
- }
- .screen-foot-sure{
- width: 50%;
- text-align: center;
- line-height: 100rpx;
- height: 100rpx;
- font-size: 30rpx;
- font-weight: 400;
- color: #FFFFFF;
- background: #2671E2;
- }
- }
- }
- </style>
|