|
@@ -173,6 +173,21 @@
|
|
|
<div class="maplit" :class="{ maplitactive: listpoint.length > 1 }">
|
|
<div class="maplit" :class="{ maplitactive: listpoint.length > 1 }">
|
|
|
<div v-for="(info, index) in listpoint" :key="index" class="maplistitem">
|
|
<div v-for="(info, index) in listpoint" :key="index" class="maplistitem">
|
|
|
<p style="font-weight: bold; font-size: 16px">
|
|
<p style="font-weight: bold; font-size: 16px">
|
|
|
|
|
+ <template v-if="info.storeLabels">
|
|
|
|
|
+ <!-- 金牌店ABC -->
|
|
|
|
|
+ <img
|
|
|
|
|
+ class="JPABC"
|
|
|
|
|
+ :src="require('@/assets/Icon/JPA.png')"
|
|
|
|
|
+ v-if="info.storeLabels.jpA" />
|
|
|
|
|
+ <img
|
|
|
|
|
+ class="JPABC"
|
|
|
|
|
+ :src="require('@/assets/Icon/JPB.png')"
|
|
|
|
|
+ v-if="info.storeLabels.jpB" />
|
|
|
|
|
+ <img
|
|
|
|
|
+ class="JPABC"
|
|
|
|
|
+ :src="require('@/assets/Icon/JPC.png')"
|
|
|
|
|
+ v-if="info.storeLabels.jpC" />
|
|
|
|
|
+ </template>
|
|
|
<span @click="goOtherSystem(info)" :style="setStroeNameStyle(info)">
|
|
<span @click="goOtherSystem(info)" :style="setStroeNameStyle(info)">
|
|
|
<span>{{ info.storeName }}</span>
|
|
<span>{{ info.storeName }}</span>
|
|
|
(<span> {{ info.storeCode }} </span>)
|
|
(<span> {{ info.storeCode }} </span>)
|
|
@@ -206,6 +221,22 @@
|
|
|
<div class="text" style="position: relative">
|
|
<div class="text" style="position: relative">
|
|
|
联系人:{{ info.contactName }}
|
|
联系人:{{ info.contactName }}
|
|
|
<div style="position: absolute; bottom: 0px; right: 10px; display: inline-block">
|
|
<div style="position: absolute; bottom: 0px; right: 10px; display: inline-block">
|
|
|
|
|
+ <!-- 金牌店ABC -->
|
|
|
|
|
+ <el-popover
|
|
|
|
|
+ popper-class="zpover"
|
|
|
|
|
+ placement="bottom"
|
|
|
|
|
+ width="120"
|
|
|
|
|
+ trigger="click"
|
|
|
|
|
+ :content="setJPABCContent(info)">
|
|
|
|
|
+ <div
|
|
|
|
|
+ v-if="setJPABCFlag(info)"
|
|
|
|
|
+ class="visitStoreIco"
|
|
|
|
|
+ style="background-color: #fff"
|
|
|
|
|
+ slot="reference">
|
|
|
|
|
+ <van-icon :name="require('@/assets/Icon/visitJPNum.png')" size="26" />
|
|
|
|
|
+ <div class="JPVisitNum">{{ info.visitNum }}/{{ info.needVisitNum }}</div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </el-popover>
|
|
|
<el-popover
|
|
<el-popover
|
|
|
popper-class="zpover"
|
|
popper-class="zpover"
|
|
|
placement="bottom"
|
|
placement="bottom"
|
|
@@ -358,7 +389,7 @@
|
|
|
:disabled="!info.userVisitTimesMap"
|
|
:disabled="!info.userVisitTimesMap"
|
|
|
:content="'本店本月已拜访过' + info.storeLabels.visitTimes + '次'">
|
|
:content="'本店本月已拜访过' + info.storeLabels.visitTimes + '次'">
|
|
|
<div
|
|
<div
|
|
|
- v-if="info.storeLabels.visitTimes && info.storeLabels.visitTimes > 0"
|
|
|
|
|
|
|
+ v-if="false && info.storeLabels.visitTimes && info.storeLabels.visitTimes > 0"
|
|
|
class="visitStoreIco"
|
|
class="visitStoreIco"
|
|
|
slot="reference"
|
|
slot="reference"
|
|
|
style="background-color: #fff; position: relative">
|
|
style="background-color: #fff; position: relative">
|
|
@@ -800,11 +831,10 @@ export default {
|
|
|
listpoint: [],
|
|
listpoint: [],
|
|
|
heifhgts: '200px',
|
|
heifhgts: '200px',
|
|
|
mapRange: [], //地图范围
|
|
mapRange: [], //地图范围
|
|
|
- storeCode: '',
|
|
|
|
|
};
|
|
};
|
|
|
},
|
|
},
|
|
|
created() {
|
|
created() {
|
|
|
- // localStorage.setItem('rangeStoreCode', '');
|
|
|
|
|
|
|
+ this.closeFns();
|
|
|
this.heifhgts = window.innerHeight - 190 + 'px';
|
|
this.heifhgts = window.innerHeight - 190 + 'px';
|
|
|
// 好邦手接入拜访系统地图功能
|
|
// 好邦手接入拜访系统地图功能
|
|
|
// 获取url参数 userId
|
|
// 获取url参数 userId
|
|
@@ -816,7 +846,6 @@ export default {
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
activated() {
|
|
activated() {
|
|
|
- this.storeCode = localStorage.getItem('rangeStoreCode');
|
|
|
|
|
// 获取地图范围 字典
|
|
// 获取地图范围 字典
|
|
|
this.getMapRange();
|
|
this.getMapRange();
|
|
|
this.resultmap = [];
|
|
this.resultmap = [];
|
|
@@ -852,6 +881,25 @@ export default {
|
|
|
});
|
|
});
|
|
|
},
|
|
},
|
|
|
methods: {
|
|
methods: {
|
|
|
|
|
+ setJPABCFlag(item) {
|
|
|
|
|
+ // needVisitNum:需要拜访的次数;visitNum:本月已拜访次数
|
|
|
|
|
+ if (item.storeLabels.jpA && item.visitNum < item.needVisitNum) {
|
|
|
|
|
+ return true;
|
|
|
|
|
+ } else {
|
|
|
|
|
+ return false;
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ setJPABCContent(item) {
|
|
|
|
|
+ if (item.storeLabels.jpA) {
|
|
|
|
|
+ return 'A级金牌店拜访标准1月2次';
|
|
|
|
|
+ } else if (item.storeLabels.jpB) {
|
|
|
|
|
+ return 'B级金牌店拜访标准1月1次';
|
|
|
|
|
+ } else if (item.storeLabels.jpC) {
|
|
|
|
|
+ return 'C级金牌店拜访标准1月1次';
|
|
|
|
|
+ } else {
|
|
|
|
|
+ return '';
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
setStroeNameStyle(item) {
|
|
setStroeNameStyle(item) {
|
|
|
// 家装或工装 approvalStatus:是否结案 0:未结案,1:已结案
|
|
// 家装或工装 approvalStatus:是否结案 0:未结案,1:已结案
|
|
|
if (
|
|
if (
|
|
@@ -1314,7 +1362,7 @@ export default {
|
|
|
});
|
|
});
|
|
|
if (this.$route.query.tabVal == 1) {
|
|
if (this.$route.query.tabVal == 1) {
|
|
|
getUserOutPlaList({
|
|
getUserOutPlaList({
|
|
|
- storeCode: val.storeCode || this.storeCode,
|
|
|
|
|
|
|
+ storeCode: val.storeCode,
|
|
|
type: 1,
|
|
type: 1,
|
|
|
lon: val.lon,
|
|
lon: val.lon,
|
|
|
lat: val.lat,
|
|
lat: val.lat,
|
|
@@ -1335,7 +1383,7 @@ export default {
|
|
|
});
|
|
});
|
|
|
} else if (this.$route.query.tabVal == 3) {
|
|
} else if (this.$route.query.tabVal == 3) {
|
|
|
storeList({
|
|
storeList({
|
|
|
- storeCode: val.storeCode || this.storeCode,
|
|
|
|
|
|
|
+ storeCode: val.storeCode,
|
|
|
type: 4,
|
|
type: 4,
|
|
|
lon: val.lon,
|
|
lon: val.lon,
|
|
|
lat: val.lat,
|
|
lat: val.lat,
|
|
@@ -1352,7 +1400,7 @@ export default {
|
|
|
});
|
|
});
|
|
|
} else if (this.$route.query.tabVal == 4) {
|
|
} else if (this.$route.query.tabVal == 4) {
|
|
|
storeMyList({
|
|
storeMyList({
|
|
|
- storeCode: val.storeCode || this.storeCode,
|
|
|
|
|
|
|
+ storeCode: val.storeCode,
|
|
|
type: 3,
|
|
type: 3,
|
|
|
lon: val.lon,
|
|
lon: val.lon,
|
|
|
lat: val.lat,
|
|
lat: val.lat,
|
|
@@ -1369,7 +1417,7 @@ export default {
|
|
|
});
|
|
});
|
|
|
} else if (this.$route.query.tabVal == 6) {
|
|
} else if (this.$route.query.tabVal == 6) {
|
|
|
topStore({
|
|
topStore({
|
|
|
- storeCode: val.storeCode || this.storeCode,
|
|
|
|
|
|
|
+ storeCode: val.storeCode,
|
|
|
lon: val.lon,
|
|
lon: val.lon,
|
|
|
lat: val.lat,
|
|
lat: val.lat,
|
|
|
range: 20,
|
|
range: 20,
|
|
@@ -1389,7 +1437,7 @@ export default {
|
|
|
});
|
|
});
|
|
|
} else {
|
|
} else {
|
|
|
getUserOrgStoreList({
|
|
getUserOrgStoreList({
|
|
|
- storeCode: val.storeCode || this.storeCode,
|
|
|
|
|
|
|
+ storeCode: val.storeCode,
|
|
|
type: 2,
|
|
type: 2,
|
|
|
lon: val.lon,
|
|
lon: val.lon,
|
|
|
lat: val.lat,
|
|
lat: val.lat,
|
|
@@ -1411,7 +1459,6 @@ export default {
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
onClickLeft() {
|
|
onClickLeft() {
|
|
|
- localStorage.setItem('rangeStoreCode', '');
|
|
|
|
|
this.$router.go(-1);
|
|
this.$router.go(-1);
|
|
|
},
|
|
},
|
|
|
buryingPointFn(val) {
|
|
buryingPointFn(val) {
|
|
@@ -1832,13 +1879,13 @@ export default {
|
|
|
.twoPointSum(location.lat, location.lon, location.lat, location.lon)
|
|
.twoPointSum(location.lat, location.lon, location.lat, location.lon)
|
|
|
.toFixed(2);
|
|
.toFixed(2);
|
|
|
// GZ:工装店铺 直接进入拜访
|
|
// GZ:工装店铺 直接进入拜访
|
|
|
- if (localStorage.getItem('postType') == 'GZ') {
|
|
|
|
|
- localStorage.setItem('startTime', new Date());
|
|
|
|
|
- localStorage.setItem('ORGName', val.deptName);
|
|
|
|
|
- localStorage.setItem('chainNameR', val.storeName);
|
|
|
|
|
- this.toSuishenbangOutstoreVisit(res, val, location, PointSumval);
|
|
|
|
|
- return;
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ // if (localStorage.getItem('postType') == 'GZ') {
|
|
|
|
|
+ // localStorage.setItem('startTime', new Date());
|
|
|
|
|
+ // localStorage.setItem('ORGName', val.deptName);
|
|
|
|
|
+ // localStorage.setItem('chainNameR', val.storeName);
|
|
|
|
|
+ // this.toSuishenbangOutstoreVisit(res, val, location, PointSumval);
|
|
|
|
|
+ // return;
|
|
|
|
|
+ // }
|
|
|
// 门店编码校验门店地址不通过
|
|
// 门店编码校验门店地址不通过
|
|
|
if (response.code != 200) {
|
|
if (response.code != 200) {
|
|
|
// updateAddress : ,1:同城AB+金牌,去修改地址;2:非金牌店铺,非同城店铺偏差过大不允许拜访,可以重置定位;0非金牌店铺,非同城店铺 位置信息不存在 可以继续拜访
|
|
// updateAddress : ,1:同城AB+金牌,去修改地址;2:非金牌店铺,非同城店铺偏差过大不允许拜访,可以重置定位;0非金牌店铺,非同城店铺 位置信息不存在 可以继续拜访
|
|
@@ -1972,7 +2019,6 @@ export default {
|
|
|
positionDesc: '',
|
|
positionDesc: '',
|
|
|
accuracy: res.accuracy,
|
|
accuracy: res.accuracy,
|
|
|
});
|
|
});
|
|
|
- localStorage.setItem('rangeStoreCode', val.storeCode);
|
|
|
|
|
this.$router.push({
|
|
this.$router.push({
|
|
|
path: '/suishenbangOutstoreVisit',
|
|
path: '/suishenbangOutstoreVisit',
|
|
|
query: {
|
|
query: {
|
|
@@ -2095,7 +2141,7 @@ export default {
|
|
|
};
|
|
};
|
|
|
</script>
|
|
</script>
|
|
|
|
|
|
|
|
-<style scoped>
|
|
|
|
|
|
|
+<style scoped lang="scss">
|
|
|
.map {
|
|
.map {
|
|
|
width: 100%;
|
|
width: 100%;
|
|
|
height: 79.3vh;
|
|
height: 79.3vh;
|
|
@@ -2142,6 +2188,12 @@ export default {
|
|
|
.maplistitem {
|
|
.maplistitem {
|
|
|
padding-bottom: 14px;
|
|
padding-bottom: 14px;
|
|
|
border-bottom: 1px solid #eeeeee;
|
|
border-bottom: 1px solid #eeeeee;
|
|
|
|
|
+ .JPABC {
|
|
|
|
|
+ width: 20px;
|
|
|
|
|
+ position: relative;
|
|
|
|
|
+ top: 4px;
|
|
|
|
|
+ margin-right: 3px;
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
.maplistitem:last-child {
|
|
.maplistitem:last-child {
|
|
|
border: 0;
|
|
border: 0;
|
|
@@ -2314,6 +2366,11 @@ export default {
|
|
|
font-size: 14px;
|
|
font-size: 14px;
|
|
|
}
|
|
}
|
|
|
.rangeStore {
|
|
.rangeStore {
|
|
|
|
|
+ .JPVisitNum {
|
|
|
|
|
+ position: relative;
|
|
|
|
|
+ top: -26px;
|
|
|
|
|
+ font-size: 10px;
|
|
|
|
|
+ }
|
|
|
.TCFXListItem {
|
|
.TCFXListItem {
|
|
|
display: inline-block;
|
|
display: inline-block;
|
|
|
border: 1px solid #ccc;
|
|
border: 1px solid #ccc;
|