Browse Source

refactor(market): 重构市场线索页面

- 移除静态卡片数据,使用动态列表渲染- 优化卡片样式和布局- 添加意向等级动态显示
- 修复分页和筛选逻辑- 优化数据请求参数
master
liutong 2 years ago
parent
commit
7f20bd8825
  1. 163
      pages/market/clue/index.vue

163
pages/market/clue/index.vue

@ -14,151 +14,42 @@
30天未成交(12) 30天未成交(12)
</view> </view>
</view> </view>
<!--我的客户-->
<view v-if="segmented_type == 1"> <view v-if="segmented_type == 1">
<view class="card"> <view class="card" v-for="(v,k) in tableList" :key="k">
<view style="width: 70%;" @click="clue_info">
<view style="display: flex;align-items: center;padding: 20rpx;">
<view>
<image src="@/static/images/index/myk.png" class="card-image"></image>
</view>
<view class="card-text">包子皮</view>
<view class="card-label">试听</view>
</view>
<view class="card-con">
首联系人:包念念 <span class="card-con-span">妈妈</span>
</view>
<view class="card-date">
<view class="card-con">08-30 14:25  跟进</view>
<view style="margin-left: 30rpx;">
<view style="display: flex;align-items: center;">
<view style="padding: 12rpx;">
<image src="@/static/images/index/intention1.png" class="drop-image-x"></image>
</view>
<view class="title-x">意向:低</view>
</view>
</view>
</view>
</view>
<view style="width: 15%;">
<image src="@/static/images/index/message.png" class="image"></image>
</view>
<view style="width: 15%;">
<image src="@/static/images/index/phone.png" class="image"></image>
</view>
</view>
<view class="card">
<view style="width: 70%;" @click="clue_info">
<view style="display: flex;align-items: center;padding: 20rpx;">
<view>
<image src="@/static/images/index/myk.png" class="card-image"></image>
</view>
<view class="card-text">包子皮</view>
<view class="card-label">试听</view>
</view>
<view class="card-con">
首联系人:包念念 <span class="card-con-span">妈妈</span>
</view>
<view class="card-date">
<view class="card-con">08-30 14:25  跟进</view>
<view style="margin-left: 30rpx;">
<view style="display: flex;align-items: center;">
<view style="padding: 12rpx;">
<image src="@/static/images/index/intention3.png" class="drop-image-x"></image>
</view>
<view class="title-x">意向:高</view>
</view>
</view>
</view>
</view>
<view style="width: 15%;">
<image src="@/static/images/index/message.png" class="image"></image>
</view>
<view style="width: 15%;">
<image src="@/static/images/index/phone.png" class="image"></image>
</view>
</view>
<view class="card">
<view style="width: 70%;" @click="clue_info">
<view style="display: flex;align-items: center;padding: 20rpx;">
<view>
<image src="@/static/images/index/myk.png" class="card-image"></image>
</view>
<view class="card-text">包子皮</view>
<view class="card-label">试听</view>
</view>
<view class="card-con">
首联系人:包念念 <span class="card-con-span">妈妈</span>
</view>
<view class="card-date">
<view class="card-con">08-30 14:25  跟进</view>
<view style="margin-left: 30rpx;">
<view style="display: flex;align-items: center;">
<view style="padding: 12rpx;">
<image src="@/static/images/index/intention2.png" class="drop-image-x"></image>
</view>
<view class="title-x">意向:中</view>
</view>
</view>
</view>
</view>
<view style="width: 15%;">
<image src="@/static/images/index/message.png" class="image"></image>
</view>
<view style="width: 15%;">
<image src="@/static/images/index/phone.png" class="image"></image>
</view>
</view>
<view class="card">
<view style="width: 70%;" @click="clue_info"> <view style="width: 70%;" @click="clue_info">
<view style="display: flex;align-items: center;padding: 20rpx;"> <view style="display: flex;align-items: center;padding: 20rpx;">
<view> <view>
<image src="@/static/images/index/myk.png" class="card-image"></image> <image src="@/static/images/index/myk.png" class="card-image"></image>
</view> </view>
<view class="card-text">包子皮</view> <view class="card-text">{{v.student_name}}</view>
<view class="card-label">试听</view> <view class="card-label">{{v.is_status == 1 ? '试听' : '成交'}}</view>
</view> </view>
<view class="card-con"> <view class="card-con">
首联系人:包念念 <span class="card-con-span">妈妈</span> 首联系人:{{v.contact_name}} <span class="card-con-span">{{v.decision_maker}}</span>
</view> </view>
<view class="card-date"> <view class="card-date">
<view class="card-con">待跟进</view> <view class="card-con">{{ $util.formatToDateTime((v.follow && v.follow.follow_up_time || ''),'m-d H:i') }} 跟进</view>
<view style="margin-left: 30rpx;"> <view style="margin-left: 30rpx;">
<view style="display: flex;align-items: center;"> <view style="display: flex;align-items: center;">
<view style="padding: 12rpx;"> <view style="padding: 12rpx;">
<image src="@/static/images/index/intention1.png" class="drop-image-x"></image> <image
v-if="['A+','A','A-'].includes(v.follow && v.follow.initial_customer_intent || '')"
src="@/static/images/index/intention3.png"
class="drop-image-x"
></image>
<image
v-else-if="['B+','B','B-'].includes(v.follow && v.follow.initial_customer_intent || '')"
src="@/static/images/index/intention2.png"
class="drop-image-x"
></image>
<image
v-else
src="@/static/images/index/intention1.png"
class="drop-image-x"
></image>
</view> </view>
<view class="title-x">意向:低</view> <view class="title-x">意向:{{ v.follow && v.follow.initial_customer_intent || '' }}</view>
</view>
</view>
</view>
</view>
<view style="width: 15%;">
<image src="@/static/images/index/message.png" class="image"></image>
</view>
<view style="width: 15%;">
<image src="@/static/images/index/phone.png" class="image"></image>
</view>
</view>
<view class="card">
<view style="width: 70%;" @click="clue_info">
<view style="display: flex;align-items: center;padding: 20rpx;">
<view>
<image src="@/static/images/index/myk.png" class="card-image"></image>
</view>
<view class="card-text">包子皮</view>
<view class="card-label">试听</view>
</view>
<view class="card-con">
首联系人:包念念 <span class="card-con-span">妈妈</span>
</view>
<view class="card-date">
<view class="card-con">08-30 14:25  跟进</view>
<view style="margin-left: 30rpx;">
<view style="display: flex;align-items: center;">
<view style="padding: 12rpx;">
<image src="@/static/images/index/intention1.png" class="drop-image-x"></image>
</view>
<view class="title-x">意向:低</view>
</view> </view>
</view> </view>
</view> </view>
@ -171,6 +62,7 @@
</view> </view>
</view> </view>
</view> </view>
<!--区域公海-->
<view v-if="segmented_type == 2"> <view v-if="segmented_type == 2">
<view style="color: #999999;padding: 20rpx 30rpx;"> <view style="color: #999999;padding: 20rpx 30rpx;">
今日待领(15/30) 今日待领(15/30)
@ -380,7 +272,8 @@ export default {
page:1,//当前页码 page:1,//当前页码
limit:10,//每页返回数据条数 limit:10,//每页返回数据条数
total:10,//数据总条数 total:10,//数据总条数
type: '',//''=全部,1=待跟进,2=7天,3=30天 type: '0',//0=全部,1=待跟进,2=7天,3=30天
is_gh: '1',//1=区域公海,2=我的客户
}, },
tableList:[],//表格数据 tableList:[],//表格数据
@ -471,10 +364,11 @@ export default {
this.select_type = type this.select_type = type
//重置为第一页 //重置为第一页
await this.resetFilteredData() await this.resetFilteredData()
this.filteredData.is_gh = this.segmented_type
switch (type) { switch (type) {
//全部 //全部
case 1: case 1:
this.filteredData.type = '' this.filteredData.type = '0'
break break
//待跟进 //待跟进
case 2: case 2:
@ -497,7 +391,8 @@ export default {
this.segmented_type = index.id//1=我的客户,2=区域公海 this.segmented_type = index.id//1=我的客户,2=区域公海
//重置为第一页 //重置为第一页
await this.resetFilteredData() await this.resetFilteredData()
this.filteredData.type = '' this.filteredData.is_gh = this.segmented_type
this.filteredData.type = '0'
await this.getList() await this.getList()
}, },

Loading…
Cancel
Save