|
|
@@ -51,62 +51,65 @@
|
|
|
</div>
|
|
|
<!-- 主体内容-->
|
|
|
<div class="container content" style="margin-top: 145px" @touchmove="handleTouch">
|
|
|
- <div class="cellcontent" v-for="(item, index) in list" :key="index">
|
|
|
- <van-cell>
|
|
|
- <div class="card">
|
|
|
- <div class="title">
|
|
|
- <template v-if="item.storeLabels">
|
|
|
- <!-- 金牌店ABC -->
|
|
|
- <img
|
|
|
- class="JPABC"
|
|
|
- :src="require('@/assets/Icon/storeA.png')"
|
|
|
- v-if="item.storeLabels.storeA" />
|
|
|
- <img
|
|
|
- class="JPABC"
|
|
|
- :src="require('@/assets/Icon/storeB.png')"
|
|
|
- v-if="item.storeLabels.storeB" />
|
|
|
- <img
|
|
|
- class="JPABC"
|
|
|
- :src="require('@/assets/Icon/storeC.png')"
|
|
|
- v-if="item.storeLabels.storeC" />
|
|
|
- <img
|
|
|
- class="JPABC"
|
|
|
- :src="require('@/assets/Icon/storeD.png')"
|
|
|
- v-if="item.storeLabels.storeD" />
|
|
|
- <img
|
|
|
- class="JPABC"
|
|
|
- :src="require('@/assets/Icon/storeE.png')"
|
|
|
- v-if="item.storeLabels.storeE" />
|
|
|
- <img
|
|
|
- class="JPABC"
|
|
|
- :src="require('@/assets/Icon/storeS.png')"
|
|
|
- v-if="item.storeLabels.storeS" />
|
|
|
- </template>
|
|
|
- <span @click="goOtherSystem(item)" :style="setStroeNameStyle(item)">
|
|
|
- <span>{{ item.storeName }}</span>
|
|
|
- (<span>{{ item.storeCode }}</span
|
|
|
- >)
|
|
|
- </span>
|
|
|
- <span class="btn" :data-clipboard-text="item.storeCode">
|
|
|
- <van-icon
|
|
|
- :name="paste"
|
|
|
- color="#ee0a24"
|
|
|
- size="20"
|
|
|
- style="top: 6px; margin-left: 4px" />
|
|
|
- </span>
|
|
|
- <!-- "approvalStatus": 1:已结案;0:未结案, -->
|
|
|
- <!-- "processApprovalStatus": 审批状态(0=未提交,1=已提交待审核,2=审批通过,3=审批拒绝) -->
|
|
|
- <template v-if="item.approvalStatus == 0">
|
|
|
- <span class="statusIcon submit" v-if="item.processApprovalStatus == 1">已提交</span>
|
|
|
- <span class="statusIcon noSubmit" v-if="item.processApprovalStatus == 0"
|
|
|
- >未提交</span
|
|
|
- >
|
|
|
- </template>
|
|
|
- </div>
|
|
|
- <div class="info" style="position: relative">联系人:{{ item.contactName }}</div>
|
|
|
- <div class="info">
|
|
|
- 类型:{{ item.storeCategory }}
|
|
|
- <!-- <el-popover popper-class="zpover zpover6" placement="bottom-start" trigger="click">
|
|
|
+ <van-pull-refresh v-model="refreshing" @refresh="onRefresh">
|
|
|
+ <div class="cellcontent" v-for="(item, index) in list" :key="index">
|
|
|
+ <van-cell>
|
|
|
+ <div class="card">
|
|
|
+ <div class="title">
|
|
|
+ <template v-if="item.storeLabels">
|
|
|
+ <!-- 金牌店ABC -->
|
|
|
+ <img
|
|
|
+ class="JPABC"
|
|
|
+ :src="require('@/assets/Icon/storeA.png')"
|
|
|
+ v-if="item.storeLabels.storeA" />
|
|
|
+ <img
|
|
|
+ class="JPABC"
|
|
|
+ :src="require('@/assets/Icon/storeB.png')"
|
|
|
+ v-if="item.storeLabels.storeB" />
|
|
|
+ <img
|
|
|
+ class="JPABC"
|
|
|
+ :src="require('@/assets/Icon/storeC.png')"
|
|
|
+ v-if="item.storeLabels.storeC" />
|
|
|
+ <img
|
|
|
+ class="JPABC"
|
|
|
+ :src="require('@/assets/Icon/storeD.png')"
|
|
|
+ v-if="item.storeLabels.storeD" />
|
|
|
+ <img
|
|
|
+ class="JPABC"
|
|
|
+ :src="require('@/assets/Icon/storeE.png')"
|
|
|
+ v-if="item.storeLabels.storeE" />
|
|
|
+ <img
|
|
|
+ class="JPABC"
|
|
|
+ :src="require('@/assets/Icon/storeS.png')"
|
|
|
+ v-if="item.storeLabels.storeS" />
|
|
|
+ </template>
|
|
|
+ <span @click="goOtherSystem(item)" :style="setStroeNameStyle(item)">
|
|
|
+ <span>{{ item.storeName }}</span>
|
|
|
+ (<span>{{ item.storeCode }}</span
|
|
|
+ >)
|
|
|
+ </span>
|
|
|
+ <span class="btn" :data-clipboard-text="item.storeCode">
|
|
|
+ <van-icon
|
|
|
+ :name="paste"
|
|
|
+ color="#ee0a24"
|
|
|
+ size="20"
|
|
|
+ style="top: 6px; margin-left: 4px" />
|
|
|
+ </span>
|
|
|
+ <!-- "approvalStatus": 1:已结案;0:未结案, -->
|
|
|
+ <!-- "processApprovalStatus": 审批状态(0=未提交,1=已提交待审核,2=审批通过,3=审批拒绝) -->
|
|
|
+ <template v-if="item.approvalStatus == 0">
|
|
|
+ <span class="statusIcon submit" v-if="item.processApprovalStatus == 1"
|
|
|
+ >已提交</span
|
|
|
+ >
|
|
|
+ <span class="statusIcon noSubmit" v-if="item.processApprovalStatus == 0"
|
|
|
+ >未提交</span
|
|
|
+ >
|
|
|
+ </template>
|
|
|
+ </div>
|
|
|
+ <div class="info" style="position: relative">联系人:{{ item.contactName }}</div>
|
|
|
+ <div class="info">
|
|
|
+ 类型:{{ item.storeCategory }}
|
|
|
+ <!-- <el-popover popper-class="zpover zpover6" placement="bottom-start" trigger="click">
|
|
|
<div>
|
|
|
<p>
|
|
|
本店经营品项指导:
|
|
|
@@ -115,365 +118,375 @@
|
|
|
</div>
|
|
|
<van-icon name="question-o" size="18" slot="reference" />
|
|
|
</el-popover> -->
|
|
|
- </div>
|
|
|
- <div class="info" style="position: relative" @click="buryingPointFn(item)">
|
|
|
- 联系电话:<a
|
|
|
- v-if="item.telephone"
|
|
|
- style="color: #0057ba; font-weight: bold; text-decoration: underline"
|
|
|
- :href="'tel:' + item.telephone"
|
|
|
- >{{ item.telephone }}<van-icon name="phone"
|
|
|
- /></a>
|
|
|
- <div style="position: absolute; bottom: 0; right: 14px">
|
|
|
- <el-popover
|
|
|
- popper-class="zpover"
|
|
|
- placement="bottom"
|
|
|
- width="120"
|
|
|
- trigger="click"
|
|
|
- content="该客户为凤凰客户">
|
|
|
- <div
|
|
|
- v-if="item.storeLabels.fhCustomer"
|
|
|
- class="visitStoreIco"
|
|
|
- style="background-color: #fff"
|
|
|
- slot="reference">
|
|
|
- <van-icon :name="require('@/assets/Icon/fenghuangjihua.png')" size="26" />
|
|
|
- </div>
|
|
|
- </el-popover>
|
|
|
- <el-popover popper-class="zpover zpover6" placement="bottom-start" trigger="click">
|
|
|
- <div>
|
|
|
- <p>
|
|
|
- 本店{{ timeData1 }}下单SKU数:<a
|
|
|
- @click="linkList(item)"
|
|
|
- style="text-decoration: underline"
|
|
|
- >点击查看详情</a
|
|
|
- >
|
|
|
- </p>
|
|
|
- </div>
|
|
|
- <div
|
|
|
- class="visitStoreIco"
|
|
|
- v-if="item.storeLabels.zysslNums !== false"
|
|
|
- style="background-color: #fff; position: relative"
|
|
|
- slot="reference">
|
|
|
- <p
|
|
|
- style="
|
|
|
- width: 100%;
|
|
|
- position: absolute;
|
|
|
- z-index: 1;
|
|
|
- top: 0.2px;
|
|
|
- width: 22px;
|
|
|
- margin: 0;
|
|
|
- margin-left: 3.6px;
|
|
|
- text-align: center;
|
|
|
- font-size: 12px;
|
|
|
- ">
|
|
|
- {{ item.storeLabels.zysslNums }}
|
|
|
- </p>
|
|
|
- <van-icon :name="ord" size="26" />
|
|
|
- </div>
|
|
|
- </el-popover>
|
|
|
- <el-popover
|
|
|
- popper-class="zpover zpover5"
|
|
|
- placement="bottom"
|
|
|
- width="200"
|
|
|
- trigger="click">
|
|
|
- <div v-if="item.storeLabels">
|
|
|
- <p>{{ timeData }}未通过的陈列任务:</p>
|
|
|
- <p v-for="(tt, ind) in (item.storeLabels.targetOne + '').split(';')">
|
|
|
- <template v-if="tt"> {{ ind + 1 }}、{{ tt }};</template>
|
|
|
+ </div>
|
|
|
+ <div class="info" style="position: relative" @click="buryingPointFn(item)">
|
|
|
+ 联系电话:
|
|
|
+ <a
|
|
|
+ v-if="item.telephone"
|
|
|
+ style="color: #0057ba; font-weight: bold; text-decoration: underline"
|
|
|
+ :href="'tel:' + item.telephone"
|
|
|
+ >{{ item.telephone }}<van-icon name="phone"
|
|
|
+ /></a>
|
|
|
+ <div style="position: absolute; bottom: 0; right: 14px">
|
|
|
+ <el-popover
|
|
|
+ popper-class="zpover"
|
|
|
+ placement="bottom"
|
|
|
+ width="120"
|
|
|
+ trigger="click"
|
|
|
+ content="该客户为凤凰客户">
|
|
|
+ <div
|
|
|
+ v-if="item.storeLabels.fhCustomer"
|
|
|
+ class="visitStoreIco"
|
|
|
+ style="background-color: #fff"
|
|
|
+ slot="reference">
|
|
|
+ <van-icon :name="require('@/assets/Icon/fenghuangjihua.png')" size="26" />
|
|
|
+ </div>
|
|
|
+ </el-popover>
|
|
|
+ <el-popover
|
|
|
+ popper-class="zpover zpover6"
|
|
|
+ placement="bottom-start"
|
|
|
+ trigger="click">
|
|
|
+ <div>
|
|
|
+ <p>
|
|
|
+ 本店{{ timeData1 }}下单SKU数:<a
|
|
|
+ @click="linkList(item)"
|
|
|
+ style="text-decoration: underline"
|
|
|
+ >点击查看详情</a
|
|
|
+ >
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
+ <div
|
|
|
+ class="visitStoreIco"
|
|
|
+ v-if="item.storeLabels.zysslNums !== false"
|
|
|
+ style="background-color: #fff; position: relative"
|
|
|
+ slot="reference">
|
|
|
+ <p
|
|
|
+ style="
|
|
|
+ width: 100%;
|
|
|
+ position: absolute;
|
|
|
+ z-index: 1;
|
|
|
+ top: 0.2px;
|
|
|
+ width: 22px;
|
|
|
+ margin: 0;
|
|
|
+ margin-left: 3.6px;
|
|
|
+ text-align: center;
|
|
|
+ font-size: 12px;
|
|
|
+ ">
|
|
|
+ {{ item.storeLabels.zysslNums }}
|
|
|
+ </p>
|
|
|
+ <van-icon :name="ord" size="26" />
|
|
|
+ </div>
|
|
|
+ </el-popover>
|
|
|
+ <el-popover popper-class="zpover" placement="bottom" width="200" trigger="click">
|
|
|
+ <div v-if="item.storeLabels">
|
|
|
+ <p>已参加:</p>
|
|
|
+ <p v-for="tt in (item.storeLabels.targetOne + '').split(';')">
|
|
|
+ {{ tt }}
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
+ <div
|
|
|
+ class="visitStoreIco"
|
|
|
+ v-if="item.storeLabels.targetOne"
|
|
|
+ style="background-color: #fff"
|
|
|
+ slot="reference">
|
|
|
+ <van-icon :name="targetOne" size="26" />
|
|
|
+ </div>
|
|
|
+ </el-popover>
|
|
|
+ <el-popover
|
|
|
+ popper-class="zpover"
|
|
|
+ placement="bottom"
|
|
|
+ width="120"
|
|
|
+ trigger="click"
|
|
|
+ content="调色机7天未调色">
|
|
|
+ <div
|
|
|
+ v-if="item.storeLabels.stopColorMixerSeven"
|
|
|
+ class="visitStoreIco"
|
|
|
+ style="background-color: #fff"
|
|
|
+ slot="reference">
|
|
|
+ <van-icon :name="Network" size="26" />
|
|
|
+ </div>
|
|
|
+ </el-popover>
|
|
|
+ <el-popover
|
|
|
+ popper-class="zpover"
|
|
|
+ placement="bottom"
|
|
|
+ width="120"
|
|
|
+ trigger="click"
|
|
|
+ content="调色机当月未调色">
|
|
|
+ <div
|
|
|
+ v-if="item.storeLabels.stopColorMixerMonth"
|
|
|
+ class="visitStoreIco"
|
|
|
+ style="background-color: #fff"
|
|
|
+ slot="reference">
|
|
|
+ <van-icon :name="WiFi" size="26" />
|
|
|
+ </div>
|
|
|
+ </el-popover>
|
|
|
+ <el-popover
|
|
|
+ popper-class="zpover"
|
|
|
+ placement="bottom"
|
|
|
+ width="200"
|
|
|
+ trigger="click"
|
|
|
+ content="同城店近60天未下单">
|
|
|
+ <div
|
|
|
+ v-if="item.storeLabels.fxNoOrder"
|
|
|
+ class="visitStoreIco"
|
|
|
+ style="background-color: #fff"
|
|
|
+ slot="reference">
|
|
|
+ <van-icon :name="order60" size="26" />
|
|
|
+ </div>
|
|
|
+ </el-popover>
|
|
|
+ <el-popover
|
|
|
+ popper-class="zpover"
|
|
|
+ placement="bottom"
|
|
|
+ width="200"
|
|
|
+ trigger="click"
|
|
|
+ content="金牌店近30天未下单">
|
|
|
+ <div
|
|
|
+ v-if="item.storeLabels.noOrder"
|
|
|
+ class="visitStoreIco"
|
|
|
+ style="background-color: #fff"
|
|
|
+ slot="reference">
|
|
|
+ <van-icon :name="order" size="26" />
|
|
|
+ </div>
|
|
|
+ </el-popover>
|
|
|
+ <el-popover
|
|
|
+ popper-class="zpover"
|
|
|
+ placement="bottom"
|
|
|
+ width="200"
|
|
|
+ trigger="click"
|
|
|
+ content="本店本月进过专业时时丽">
|
|
|
+ <div
|
|
|
+ v-if="item.storeLabels.zyssl"
|
|
|
+ class="visitStoreIco"
|
|
|
+ style="background-color: #ed5c68"
|
|
|
+ slot="reference">
|
|
|
+ 专
|
|
|
+ </div>
|
|
|
+ </el-popover>
|
|
|
+ <el-popover
|
|
|
+ popper-class="zpover zpover1"
|
|
|
+ placement="bottom"
|
|
|
+ width="200"
|
|
|
+ trigger="click"
|
|
|
+ content="本店本月进过超好贴">
|
|
|
+ <div
|
|
|
+ v-if="item.storeLabels.chtczj"
|
|
|
+ class="visitStoreIco"
|
|
|
+ style="background-color: #0057ba"
|
|
|
+ slot="reference">
|
|
|
+ 超
|
|
|
+ </div>
|
|
|
+ </el-popover>
|
|
|
+ <el-popover
|
|
|
+ placement="bottom"
|
|
|
+ popper-class="zpover zpover1 zpover1sb"
|
|
|
+ trigger="click"
|
|
|
+ :disabled="!item.userVisitTimesMap"
|
|
|
+ :content="'本店本月已拜访过' + item.storeLabels.visitTimes + '次'">
|
|
|
+ <div
|
|
|
+ v-if="item.storeLabels.visitTimes && item.storeLabels.visitTimes > 0"
|
|
|
+ class="visitStoreIco"
|
|
|
+ slot="reference"
|
|
|
+ style="background-color: #fff; position: relative">
|
|
|
+ <p
|
|
|
+ style="
|
|
|
+ width: 100%;
|
|
|
+ position: absolute;
|
|
|
+ z-index: 10;
|
|
|
+ top: -2px;
|
|
|
+ margin: 0;
|
|
|
+ text-align: center;
|
|
|
+ font-size: 12px;
|
|
|
+ ">
|
|
|
+ {{ item.storeLabels.visitTimes }}
|
|
|
+ </p>
|
|
|
+ <!-- A级金牌店拜访次数少于2 -->
|
|
|
+ <van-icon
|
|
|
+ :name="require('@/assets/ordernumRed.png')"
|
|
|
+ size="26"
|
|
|
+ v-if="
|
|
|
+ (item.storeLabels.storeA || item.storeLabels.storeS) &&
|
|
|
+ item.needVisitNum &&
|
|
|
+ item.storeLabels.visitTimes < item.needVisitNum
|
|
|
+ " />
|
|
|
+ <van-icon :name="require('@/assets/ordernum.png')" size="26" v-else />
|
|
|
+ </div>
|
|
|
+ <p style="text-align: center; background: #fff; color: #000; padding: 5px 0">
|
|
|
+ 本店本月已拜访过{{ item.storeLabels.visitTimes }}次
|
|
|
</p>
|
|
|
- </div>
|
|
|
- <div
|
|
|
- class="visitStoreIco"
|
|
|
- v-if="item.storeLabels.targetOne"
|
|
|
- style="background-color: #fff"
|
|
|
- slot="reference">
|
|
|
- <van-icon :name="targetOne" size="26" />
|
|
|
- </div>
|
|
|
- </el-popover>
|
|
|
- <el-popover
|
|
|
- popper-class="zpover"
|
|
|
- placement="bottom"
|
|
|
- width="120"
|
|
|
- trigger="click"
|
|
|
- content="调色机7天未调色">
|
|
|
- <div
|
|
|
- v-if="item.storeLabels.stopColorMixerSeven"
|
|
|
- class="visitStoreIco"
|
|
|
- style="background-color: #fff"
|
|
|
- slot="reference">
|
|
|
- <van-icon :name="Network" size="26" />
|
|
|
- </div>
|
|
|
- </el-popover>
|
|
|
- <el-popover
|
|
|
- popper-class="zpover"
|
|
|
- placement="bottom"
|
|
|
- width="120"
|
|
|
- trigger="click"
|
|
|
- content="调色机当月未调色">
|
|
|
- <div
|
|
|
- v-if="item.storeLabels.stopColorMixerMonth"
|
|
|
- class="visitStoreIco"
|
|
|
- style="background-color: #fff"
|
|
|
- slot="reference">
|
|
|
- <van-icon :name="WiFi" size="26" />
|
|
|
- </div>
|
|
|
- </el-popover>
|
|
|
- <el-popover
|
|
|
- popper-class="zpover"
|
|
|
- placement="bottom"
|
|
|
- width="200"
|
|
|
- trigger="click"
|
|
|
- content="同城店近60天未下单">
|
|
|
- <div
|
|
|
- v-if="item.storeLabels.fxNoOrder"
|
|
|
- class="visitStoreIco"
|
|
|
- style="background-color: #fff"
|
|
|
- slot="reference">
|
|
|
- <van-icon :name="order60" size="26" />
|
|
|
- </div>
|
|
|
- </el-popover>
|
|
|
- <el-popover
|
|
|
- popper-class="zpover"
|
|
|
- placement="bottom"
|
|
|
- width="200"
|
|
|
- trigger="click"
|
|
|
- content="金牌店近30天未下单">
|
|
|
- <div
|
|
|
- v-if="item.storeLabels.noOrder"
|
|
|
- class="visitStoreIco"
|
|
|
- style="background-color: #fff"
|
|
|
- slot="reference">
|
|
|
- <van-icon :name="order" size="26" />
|
|
|
- </div>
|
|
|
- </el-popover>
|
|
|
- <el-popover
|
|
|
- popper-class="zpover"
|
|
|
- placement="bottom"
|
|
|
- width="200"
|
|
|
- trigger="click"
|
|
|
- content="本店本月进过专业时时丽">
|
|
|
- <div
|
|
|
- v-if="item.storeLabels.zyssl"
|
|
|
- class="visitStoreIco"
|
|
|
- style="background-color: #ed5c68"
|
|
|
- slot="reference">
|
|
|
- 专
|
|
|
- </div>
|
|
|
- </el-popover>
|
|
|
- <el-popover
|
|
|
- popper-class="zpover zpover1"
|
|
|
- placement="bottom"
|
|
|
- width="200"
|
|
|
- trigger="click"
|
|
|
- content="本店本月进过超好贴">
|
|
|
- <div
|
|
|
- v-if="item.storeLabels.chtczj"
|
|
|
- class="visitStoreIco"
|
|
|
- style="background-color: #0057ba"
|
|
|
- slot="reference">
|
|
|
- 超
|
|
|
- </div>
|
|
|
- </el-popover>
|
|
|
- <el-popover
|
|
|
- placement="bottom"
|
|
|
- popper-class="zpover zpover1 zpover1sb"
|
|
|
- trigger="click"
|
|
|
- :disabled="!item.userVisitTimesMap"
|
|
|
- :content="'本店本月已拜访过' + item.storeLabels.visitTimes + '次'">
|
|
|
- <div
|
|
|
- v-if="item.storeLabels.visitTimes && item.storeLabels.visitTimes > 0"
|
|
|
- class="visitStoreIco"
|
|
|
- slot="reference"
|
|
|
- style="background-color: #fff; position: relative">
|
|
|
<p
|
|
|
- style="
|
|
|
- width: 100%;
|
|
|
- position: absolute;
|
|
|
- z-index: 10;
|
|
|
- top: -2px;
|
|
|
- margin: 0;
|
|
|
- text-align: center;
|
|
|
- font-size: 12px;
|
|
|
- ">
|
|
|
- {{ item.storeLabels.visitTimes }}
|
|
|
- </p>
|
|
|
- <!-- A级金牌店拜访次数少于2 -->
|
|
|
- <van-icon
|
|
|
- :name="require('@/assets/ordernumRed.png')"
|
|
|
- size="26"
|
|
|
v-if="
|
|
|
- (item.storeLabels.storeA || item.storeLabels.storeS) &&
|
|
|
- item.needVisitNum &&
|
|
|
- item.storeLabels.visitTimes < item.needVisitNum
|
|
|
- " />
|
|
|
- <van-icon :name="require('@/assets/ordernum.png')" size="26" v-else />
|
|
|
+ (item.storeLabels.storeA || item.storeLabels.storeS) && item.needVisitNum
|
|
|
+ "
|
|
|
+ style="text-align: center; background: #fff; color: red; padding: 5px 0">
|
|
|
+ <span v-if="item.storeLabels.storeA">A</span>
|
|
|
+ <span v-if="item.storeLabels.storeS">S</span>
|
|
|
+ 级金牌店拜访标准:1月{{ item.needVisitNum }}次
|
|
|
+ </p>
|
|
|
+ <el-table :data="item.userVisitTimesMap" border max-height="180px">
|
|
|
+ <el-table-column label="业务员" prop="userName" />
|
|
|
+ <el-table-column label="拜访次数" prop="visitTimes" width="110px" />
|
|
|
+ </el-table>
|
|
|
+ </el-popover>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="info" v-if="item.addressLine">
|
|
|
+ 地址:{{ item.addressLine
|
|
|
+ }}<img
|
|
|
+ v-if="item.storeLonExist"
|
|
|
+ style="width: 36px"
|
|
|
+ :src="sbpmdh"
|
|
|
+ @click="linkapp(item)" />
|
|
|
+ </div>
|
|
|
+ <!-- 潜在店不显示经销商 -->
|
|
|
+ <template v-if="item.sfaStoreType.type != 'qzd'">
|
|
|
+ <!-- 分销店 -->
|
|
|
+ <template
|
|
|
+ v-if="
|
|
|
+ item.sfaStoreType &&
|
|
|
+ item.sfaStoreType.type == 'fxd' &&
|
|
|
+ item.sfaStoreChainsContactList
|
|
|
+ ">
|
|
|
+ <div class="info" v-if="typeShow">
|
|
|
+ 经销商:
|
|
|
+ <div
|
|
|
+ class="TCFXListItem"
|
|
|
+ v-for="(item, index) in item.sfaStoreChainsContactList">
|
|
|
+ <el-popover
|
|
|
+ popper-class="zpover zpoverStoreztype"
|
|
|
+ placement="bottom-start"
|
|
|
+ trigger="click">
|
|
|
+ <div>
|
|
|
+ <div>{{ item.chainCode }}</div>
|
|
|
+ <div>{{ item.chainName }}</div>
|
|
|
+ </div>
|
|
|
+ <div slot="reference" :key="index">
|
|
|
+ {{ item.categoryDescribe }}
|
|
|
+ </div>
|
|
|
+ </el-popover>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- <p style="text-align: center; background: #fff; color: #000; padding: 5px 0">
|
|
|
- 本店本月已拜访过{{ item.storeLabels.visitTimes }}次
|
|
|
- </p>
|
|
|
- <p
|
|
|
- v-if="(item.storeLabels.storeA || item.storeLabels.storeS) && item.needVisitNum"
|
|
|
- style="text-align: center; background: #fff; color: red; padding: 5px 0">
|
|
|
- <span v-if="item.storeLabels.storeA">A</span>
|
|
|
- <span v-if="item.storeLabels.storeS">S</span>
|
|
|
- 级金牌店拜访标准:1月{{ item.needVisitNum }}次
|
|
|
- </p>
|
|
|
- <el-table :data="item.userVisitTimesMap" border max-height="180px">
|
|
|
- <el-table-column label="业务员" prop="userName" />
|
|
|
- <el-table-column label="拜访次数" prop="visitTimes" width="110px" />
|
|
|
- </el-table>
|
|
|
- </el-popover>
|
|
|
+ </template>
|
|
|
+ <template v-else>
|
|
|
+ <div class="info" v-if="typeShow">经销商:{{ item.chainName }}</div>
|
|
|
+ </template>
|
|
|
+ </template>
|
|
|
+ <!-- storeLonExist 门店是否存在经纬度 字段false=不显示导航和距离,true=显示 -->
|
|
|
+ <div class="info" v-if="item.storeLonExist">
|
|
|
+ 距离:{{ Micrometer(item.distance) }}m
|
|
|
+ </div>
|
|
|
+ <div class="info" v-if="item.cntOrderAmtYear">
|
|
|
+ 门店销额(全年累计):{{ Micrometer(item.cntOrderAmtYear) }}元
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div class="info" v-if="item.addressLine">
|
|
|
- 地址:{{ item.addressLine
|
|
|
- }}<img
|
|
|
- v-if="item.storeLonExist"
|
|
|
- style="width: 36px"
|
|
|
- :src="sbpmdh"
|
|
|
- @click="linkapp(item)" />
|
|
|
+ <div
|
|
|
+ class="statstext"
|
|
|
+ v-if="item.stateString == '未拜访'"
|
|
|
+ style="background-color: #ed5c68">
|
|
|
+ 未拜访
|
|
|
</div>
|
|
|
- <!-- 潜在店不显示经销商 -->
|
|
|
- <template v-if="item.sfaStoreType.type != 'qzd'">
|
|
|
- <!-- 分销店 -->
|
|
|
- <template
|
|
|
- v-if="
|
|
|
- item.sfaStoreType &&
|
|
|
- item.sfaStoreType.type == 'fxd' &&
|
|
|
- item.sfaStoreChainsContactList
|
|
|
- ">
|
|
|
- <div class="info" v-if="typeShow">
|
|
|
- 经销商:
|
|
|
- <div class="TCFXListItem" v-for="(item, index) in item.sfaStoreChainsContactList">
|
|
|
- <el-popover
|
|
|
- popper-class="zpover zpoverStoreztype"
|
|
|
- placement="bottom-start"
|
|
|
- trigger="click">
|
|
|
- <div>
|
|
|
- <div>{{ item.chainCode }}</div>
|
|
|
- <div>{{ item.chainName }}</div>
|
|
|
- </div>
|
|
|
- <div slot="reference" :key="index">
|
|
|
- {{ item.categoryDescribe }}
|
|
|
- </div>
|
|
|
- </el-popover>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- </template>
|
|
|
- <template v-else>
|
|
|
- <div class="info" v-if="typeShow">经销商:{{ item.chainName }}</div>
|
|
|
- </template>
|
|
|
- </template>
|
|
|
- <!-- storeLonExist 门店是否存在经纬度 字段false=不显示导航和距离,true=显示 -->
|
|
|
- <div class="info" v-if="item.storeLonExist">距离:{{ Micrometer(item.distance) }}m</div>
|
|
|
- <div class="info" v-if="item.cntOrderAmtYear">
|
|
|
- 门店销额(全年累计):{{ Micrometer(item.cntOrderAmtYear) }}元
|
|
|
+ <div
|
|
|
+ class="statstext"
|
|
|
+ v-if="item.stateString == '拜访中'"
|
|
|
+ style="background-color: white">
|
|
|
+ <van-icon :name="times" color="#ee0a24" size="32" />
|
|
|
</div>
|
|
|
- </div>
|
|
|
- <div
|
|
|
- class="statstext"
|
|
|
- v-if="item.stateString == '未拜访'"
|
|
|
- style="background-color: #ed5c68">
|
|
|
- 未拜访
|
|
|
- </div>
|
|
|
- <div
|
|
|
- class="statstext"
|
|
|
- v-if="item.stateString == '拜访中'"
|
|
|
- style="background-color: white">
|
|
|
- <van-icon :name="times" color="#ee0a24" size="32" />
|
|
|
- </div>
|
|
|
- <template v-if="item.stateString == '已拜访'">
|
|
|
- <!-- 正常拜访 -->
|
|
|
- <template v-if="item.visitSource == 1">
|
|
|
- <!-- 金牌店+同城分销店+可控店 -->
|
|
|
- <template v-if="item.jinpaiStore || item.fenxiaoStore || item.kekongStore">
|
|
|
- <div class="statstext" style="background-color: #e3f0fe">
|
|
|
- <span style="color: #387bca">已拜访</span>
|
|
|
- <div
|
|
|
- class="statstextIcon"
|
|
|
- style="background-color: #0057ba"
|
|
|
- @click="openPerfectStore(item)">
|
|
|
- <div style="margin: 4px; font-size: 14px; font-weight: 600">
|
|
|
- <img
|
|
|
- style="width: 18px; height: 20px; margin: 0 5px; vertical-align: -5px"
|
|
|
- :src="require('@/assets/shouzhi.png')" />完美门店报告
|
|
|
+ <template v-if="item.stateString == '已拜访'">
|
|
|
+ <!-- 正常拜访 -->
|
|
|
+ <template v-if="item.visitSource == 1">
|
|
|
+ <!-- 金牌店+同城分销店+可控店 -->
|
|
|
+ <template v-if="item.jinpaiStore || item.fenxiaoStore || item.kekongStore">
|
|
|
+ <div class="statstext" style="background-color: #e3f0fe">
|
|
|
+ <span style="color: #387bca">已拜访</span>
|
|
|
+ <div
|
|
|
+ class="statstextIcon"
|
|
|
+ style="background-color: #0057ba"
|
|
|
+ @click="openPerfectStore(item)">
|
|
|
+ <div style="margin: 4px; font-size: 14px; font-weight: 600">
|
|
|
+ <img
|
|
|
+ style="width: 18px; height: 20px; margin: 0 5px; vertical-align: -5px"
|
|
|
+ :src="require('@/assets/shouzhi.png')" />完美门店报告
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
- </div>
|
|
|
+ </template>
|
|
|
+ <template v-else>
|
|
|
+ <div class="statstext">
|
|
|
+ <span>已拜访</span>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
</template>
|
|
|
<template v-else>
|
|
|
+ <!-- 异常拜访 -->
|
|
|
<div class="statstext">
|
|
|
<span>已拜访</span>
|
|
|
</div>
|
|
|
</template>
|
|
|
</template>
|
|
|
- <template v-else>
|
|
|
- <!-- 异常拜访 -->
|
|
|
- <div class="statstext">
|
|
|
- <span>已拜访</span>
|
|
|
- </div>
|
|
|
- </template>
|
|
|
- </template>
|
|
|
- <div class="btnbox">
|
|
|
- <van-row>
|
|
|
- <van-col
|
|
|
- span="4"
|
|
|
- v-if="item.stateString != '已拜访' && item.visitAble && customerVisits"
|
|
|
- @click="storeVisit(item)">
|
|
|
- <img :src="call" style="margin: 0 auto; height: 15px; display: block" />
|
|
|
- <p style="text-align: center; margin: 0; font-size: 11px">进入拜访</p>
|
|
|
- </van-col>
|
|
|
- <van-col
|
|
|
- span="4"
|
|
|
- v-if="item.storeCategory == '公装经销商'"
|
|
|
- @click="projectOutVisit(item)">
|
|
|
- <img :src="xmgj" style="margin: 0 auto; height: 15px; display: block" />
|
|
|
- <p style="text-align: center; margin: 0; font-size: 11px">项目跟进</p>
|
|
|
- </van-col>
|
|
|
- <van-col
|
|
|
- span="4"
|
|
|
- v-if="
|
|
|
- item.stateString != '已拜访' &&
|
|
|
- item.visitAble &&
|
|
|
- item.storeCategory != '公装经销商' &&
|
|
|
- customerVisits
|
|
|
- "
|
|
|
- @click="abnormalVisit(item)">
|
|
|
- <img :src="yichang" style="margin: 0 auto; height: 15px; display: block" />
|
|
|
- <p style="text-align: center; margin: 0; margin-top: 1px; font-size: 11px">
|
|
|
- 异常拜访
|
|
|
- </p>
|
|
|
- </van-col>
|
|
|
- <van-col span="4" v-if="item.storeLabels.zysslNums !== false" @click="linkList(item)">
|
|
|
- <img
|
|
|
- :src="require('@/assets/recommendicon.png')"
|
|
|
- style="margin: 0 auto; height: 15px; display: block" />
|
|
|
- <p style="text-align: center; margin: 0; margin-top: 1px; font-size: 11px">
|
|
|
- 推荐下单
|
|
|
- </p>
|
|
|
- </van-col>
|
|
|
- <van-col span="4" v-else-if="item.showOrderButton" @click="orderFn(item)">
|
|
|
- <img :src="xiadan" style="margin: 0 auto; height: 15px; display: block" />
|
|
|
- <p style="text-align: center; margin: 0; margin-top: 1px; font-size: 11px">
|
|
|
- 去下单
|
|
|
- </p>
|
|
|
- </van-col>
|
|
|
- <van-col span="4" v-if="item.stateString == '已拜访'" @click="Visit(item)">
|
|
|
- <img :src="bfxx" style="margin: 0 auto; height: 15px; display: block" />
|
|
|
- <p style="text-align: center; margin: 0; margin-top: 1px; font-size: 11px">
|
|
|
- 拜访信息
|
|
|
- </p>
|
|
|
- </van-col>
|
|
|
- <van-col span="4" @click="visitFn(item)">
|
|
|
- <img :src="kehuxinxi" style="margin: 0 auto; height: 15px; display: block" />
|
|
|
- <p style="text-align: center; margin: 0; margin-top: 1px; font-size: 11px">
|
|
|
- 客户信息
|
|
|
- </p>
|
|
|
- </van-col>
|
|
|
- </van-row>
|
|
|
- </div>
|
|
|
- </van-cell>
|
|
|
- <div class="lineGrey"></div>
|
|
|
- </div>
|
|
|
+ <div class="btnbox">
|
|
|
+ <van-row>
|
|
|
+ <van-col
|
|
|
+ span="4"
|
|
|
+ v-if="item.stateString != '已拜访' && item.visitAble && customerVisits"
|
|
|
+ @click="storeVisit(item)">
|
|
|
+ <img :src="call" style="margin: 0 auto; height: 15px; display: block" />
|
|
|
+ <p style="text-align: center; margin: 0; font-size: 11px">进入拜访</p>
|
|
|
+ </van-col>
|
|
|
+ <van-col
|
|
|
+ span="4"
|
|
|
+ v-if="item.storeCategory == '公装经销商'"
|
|
|
+ @click="projectOutVisit(item)">
|
|
|
+ <img :src="xmgj" style="margin: 0 auto; height: 15px; display: block" />
|
|
|
+ <p style="text-align: center; margin: 0; font-size: 11px">项目跟进</p>
|
|
|
+ </van-col>
|
|
|
+ <van-col
|
|
|
+ span="4"
|
|
|
+ v-if="
|
|
|
+ item.stateString != '已拜访' &&
|
|
|
+ item.visitAble &&
|
|
|
+ item.storeCategory != '公装经销商' &&
|
|
|
+ customerVisits
|
|
|
+ "
|
|
|
+ @click="abnormalVisit(item)">
|
|
|
+ <img :src="yichang" style="margin: 0 auto; height: 15px; display: block" />
|
|
|
+ <p style="text-align: center; margin: 0; margin-top: 1px; font-size: 11px">
|
|
|
+ 异常拜访
|
|
|
+ </p>
|
|
|
+ </van-col>
|
|
|
+ <van-col
|
|
|
+ span="4"
|
|
|
+ v-if="item.storeLabels.zysslNums !== false"
|
|
|
+ @click="linkList(item)">
|
|
|
+ <img
|
|
|
+ :src="require('@/assets/recommendicon.png')"
|
|
|
+ style="margin: 0 auto; height: 15px; display: block" />
|
|
|
+ <p style="text-align: center; margin: 0; margin-top: 1px; font-size: 11px">
|
|
|
+ 推荐下单
|
|
|
+ </p>
|
|
|
+ </van-col>
|
|
|
+ <van-col span="4" v-else-if="item.showOrderButton" @click="orderFn(item)">
|
|
|
+ <img :src="xiadan" style="margin: 0 auto; height: 15px; display: block" />
|
|
|
+ <p style="text-align: center; margin: 0; margin-top: 1px; font-size: 11px">
|
|
|
+ 去下单
|
|
|
+ </p>
|
|
|
+ </van-col>
|
|
|
+ <van-col span="4" v-if="item.stateString == '已拜访'" @click="Visit(item)">
|
|
|
+ <img :src="bfxx" style="margin: 0 auto; height: 15px; display: block" />
|
|
|
+ <p style="text-align: center; margin: 0; margin-top: 1px; font-size: 11px">
|
|
|
+ 拜访信息
|
|
|
+ </p>
|
|
|
+ </van-col>
|
|
|
+ <van-col span="4" @click="visitFn(item)">
|
|
|
+ <img :src="kehuxinxi" style="margin: 0 auto; height: 15px; display: block" />
|
|
|
+ <p style="text-align: center; margin: 0; margin-top: 1px; font-size: 11px">
|
|
|
+ 客户信息
|
|
|
+ </p>
|
|
|
+ </van-col>
|
|
|
+ </van-row>
|
|
|
+ </div>
|
|
|
+ </van-cell>
|
|
|
+ <div class="lineGrey"></div>
|
|
|
+ </div>
|
|
|
+ </van-pull-refresh>
|
|
|
<p style="text-align: center; color: #888a8e" v-if="list.length > 0">--已经到底了--</p>
|
|
|
<br />
|
|
|
<van-empty description="暂无数据" v-if="list.length == 0" />
|
|
|
@@ -571,7 +584,6 @@ export default {
|
|
|
tabVal: 'insidePlan',
|
|
|
list: [],
|
|
|
loading: false,
|
|
|
- finished: false,
|
|
|
mapShows: false,
|
|
|
typeShow: false,
|
|
|
storeName: '',
|
|
|
@@ -588,6 +600,7 @@ export default {
|
|
|
// 筛选模块
|
|
|
showFilter: false,
|
|
|
filterParams: {},
|
|
|
+ refreshing: false,
|
|
|
};
|
|
|
},
|
|
|
computed: {
|
|
|
@@ -650,6 +663,10 @@ export default {
|
|
|
);
|
|
|
},
|
|
|
methods: {
|
|
|
+ onRefresh() {
|
|
|
+ this.list = [];
|
|
|
+ this.getUserInPlanList();
|
|
|
+ },
|
|
|
closePopup(flag, filterParams) {
|
|
|
this.showFilter = false;
|
|
|
if (flag) {
|
|
|
@@ -849,7 +866,16 @@ export default {
|
|
|
});
|
|
|
},
|
|
|
getUserInPlanList() {
|
|
|
- this.list = [];
|
|
|
+ localStorage.setItem('outvstoreName', '');
|
|
|
+ localStorage.setItem('outvchainName', '');
|
|
|
+ localStorage.removeItem('outvstoreLabelTypes');
|
|
|
+ localStorage.removeItem('outvstoreCategoryList');
|
|
|
+ localStorage.setItem('outvchainCode', '');
|
|
|
+ localStorage.setItem('outvstoreName', '');
|
|
|
+ localStorage.setItem('outvsortType', '');
|
|
|
+ localStorage.setItem('outsortParam', '');
|
|
|
+ localStorage.setItem('lat', '');
|
|
|
+ localStorage.setItem('lon', '');
|
|
|
var postType = localStorage.getItem('postType');
|
|
|
this.customerVisits = localStorage.getItem('customerVisits');
|
|
|
if (localStorage.getItem('postType') == 'JZ' || localStorage.getItem('postType') == 'GZ') {
|
|
|
@@ -864,7 +890,6 @@ export default {
|
|
|
}
|
|
|
this.storeType = localStorage.getItem('storeType');
|
|
|
this.endShow = false;
|
|
|
- this.toastLoading(0, '加载中...', true);
|
|
|
localStorage.removeItem('visitId');
|
|
|
getPosition(true, true)
|
|
|
.then((res) => {
|
|
|
@@ -879,6 +904,7 @@ export default {
|
|
|
});
|
|
|
},
|
|
|
getUserInPlanListFun(TXisBD) {
|
|
|
+ this.toastLoading(0, '加载中...', true);
|
|
|
getUserInPlanList({
|
|
|
storeName: this.storeName.trim(),
|
|
|
genDate: this.genDate,
|
|
|
@@ -887,6 +913,9 @@ export default {
|
|
|
...this.filterParams,
|
|
|
}).then((res) => {
|
|
|
this.toastLoading().clear();
|
|
|
+ if (this.refreshing) {
|
|
|
+ this.refreshing = false;
|
|
|
+ }
|
|
|
if (res.code == 200) {
|
|
|
this.list = res.data;
|
|
|
this.list.forEach((item) => {
|
|
|
@@ -897,6 +926,7 @@ export default {
|
|
|
}
|
|
|
});
|
|
|
} else {
|
|
|
+ this.list = [];
|
|
|
this.$toast.fail(res.msg);
|
|
|
}
|
|
|
});
|