|
|
@@ -1,7 +1,7 @@
|
|
|
<template>
|
|
|
<div class="noVisit">
|
|
|
<div class="header">
|
|
|
- <van-nav-bar class="navBar" title="未拜访门店" left-arrow @click-left="onClickLeft" />
|
|
|
+ <van-nav-bar class="navBar" title="建店" left-arrow @click-left="onClickLeft" />
|
|
|
</div>
|
|
|
<div class="content">
|
|
|
<van-collapse v-model="activeName" accordion @change="collapseCange">
|
|
|
@@ -13,34 +13,249 @@
|
|
|
<div class="itemContent">
|
|
|
<template v-if="val.storeList && val.storeList.length">
|
|
|
<div class="item" v-for="(item, index) in val.storeList" :key="index">
|
|
|
- <div class="itemLeft">
|
|
|
- <div class="storeName">{{ item.storeName }}</div>
|
|
|
- <div class="address">
|
|
|
- <van-icon name="location-o" />
|
|
|
- {{ item.addressLine }}
|
|
|
- <!-- <img v-if="item.distance" style="width: 36px" :src="sbpmdh" @click="linkapp(item)" /> -->
|
|
|
+ <van-cell>
|
|
|
+ <div class="card">
|
|
|
+ <div></div>
|
|
|
+ <div class="title" style="padding-right: 74px">
|
|
|
+ <span class="btn" :data-clipboard-text="item.storeCode">
|
|
|
+ <span>{{ item.storeName }}</span>
|
|
|
+ (<span style="color: #0057ba">{{ item.storeCode }}</span
|
|
|
+ >)
|
|
|
+ <van-icon
|
|
|
+ :name="require('@/assets/paste.png')"
|
|
|
+ color="#ee0a24"
|
|
|
+ size="20"
|
|
|
+ style="top: 6px; margin-left: 4px" />
|
|
|
+ </span>
|
|
|
+ <!-- validFlag: 0正常门店,1无效门店,2临时门店 -->
|
|
|
+ <span
|
|
|
+ v-if="item.validFlag == 2"
|
|
|
+ style="
|
|
|
+ display: inline-block;
|
|
|
+ border-radius: 100px;
|
|
|
+ width: 20px;
|
|
|
+ text-align: center;
|
|
|
+ color: orange;
|
|
|
+ font-weight: normal;
|
|
|
+ "
|
|
|
+ >临</span
|
|
|
+ >
|
|
|
+ <!-- "approvalStatus": 1:已结案;0:未结案, -->
|
|
|
+ <!-- "processApprovalStatus": 审批状态(0=未提交,1=已提交待审核,2=审批通过,3=审批拒绝) -->
|
|
|
+ <template v-if="item.approvalStatus == 0 && item.validFlag == 0">
|
|
|
+ <span class="statusIcon submit" v-if="item.processApprovalStatus == 1"
|
|
|
+ >已提交</span
|
|
|
+ >
|
|
|
+ <span class="statusIcon noSubmit" v-if="item.processApprovalStatus == 0"
|
|
|
+ >未提交</span
|
|
|
+ >
|
|
|
+ </template>
|
|
|
+ </div>
|
|
|
+ <van-button
|
|
|
+ type="info"
|
|
|
+ size="small"
|
|
|
+ plain
|
|
|
+ class="centerBtn ctns"
|
|
|
+ @click="storeDetailFn(item.storeId)"
|
|
|
+ >客户信息<van-icon name="arrow"
|
|
|
+ /></van-button>
|
|
|
+ <div class="info" style="position: relative">
|
|
|
+ 联系人:{{ item.contactName }}
|
|
|
+ <div
|
|
|
+ style="position: absolute; bottom: 0px; right: 0px"
|
|
|
+ v-if="item.storeLabels">
|
|
|
+ <el-popover
|
|
|
+ popper-class="zpover zpover6"
|
|
|
+ placement="bottom"
|
|
|
+ trigger="click">
|
|
|
+ <div>
|
|
|
+ <p>
|
|
|
+ 本店{{ timeData }}下单SKU数:<a
|
|
|
+ @click="linkList(item)"
|
|
|
+ style="text-decoration: underline"
|
|
|
+ >点击查看详情</a
|
|
|
+ >
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
+ <div
|
|
|
+ class="visitStoreIco"
|
|
|
+ v-if="item.storeLabels.zysslNums"
|
|
|
+ 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>已参加:</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="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"
|
|
|
+ :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>
|
|
|
+ <van-icon :name="ordernum" size="26" />
|
|
|
+ </div>
|
|
|
+ <el-table :data="item.userVisitTimesMap" border max-height="180px">
|
|
|
+ <el-table-column label="业务员" prop="userName" />
|
|
|
+ <el-table-column label="拜访次数" prop="visitTimes" />
|
|
|
+ </el-table>
|
|
|
+ </el-popover>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="info">
|
|
|
+ 类型:{{ item.storeCategoryName }}
|
|
|
+ <el-popover
|
|
|
+ popper-class="zpover zpover6"
|
|
|
+ placement="bottom-start"
|
|
|
+ trigger="click">
|
|
|
+ <div>
|
|
|
+ <p>
|
|
|
+ 本店经营品项指导:
|
|
|
+ <a @click="linkimg(item)" style="text-decoration: underline"
|
|
|
+ >点击查看</a
|
|
|
+ >
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
+ <van-icon name="question-o" size="18" slot="reference" />
|
|
|
+ </el-popover>
|
|
|
+ </div>
|
|
|
+ <div class="info">联系电话:{{ item.telephone }}</div>
|
|
|
+ <div class="info">地址:{{ item.addressLine }}</div>
|
|
|
+ <!-- 分销店 -->
|
|
|
+ <template
|
|
|
+ v-if="
|
|
|
+ item.sfaStoreType &&
|
|
|
+ item.sfaStoreType.type == 'fxd' &&
|
|
|
+ item.sfaStoreChainsContactList
|
|
|
+ ">
|
|
|
+ <div class="info">
|
|
|
+ 经销商:
|
|
|
+ <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">经销商:{{ item.chainName }}</div>
|
|
|
+ </template>
|
|
|
</div>
|
|
|
- <div class="distance" v-if="item.distance">
|
|
|
- (距离{{ Micrometer(item.distance) }}m)
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="itemRight">
|
|
|
- <div
|
|
|
- class="statstext"
|
|
|
- :style="{
|
|
|
- 'background-color': item.stateString == '未拜访' ? '#ed5c68' : 'white',
|
|
|
- }">
|
|
|
- <van-icon
|
|
|
- v-if="item.stateString == '拜访中'"
|
|
|
- :name="times"
|
|
|
- color="#ee0a24"
|
|
|
- size="32" />
|
|
|
- {{ item.stateString == '未拜访' ? '未拜访' : '' }}
|
|
|
- </div>
|
|
|
- <div class="toVisit" @click="storeVisit(item)">
|
|
|
- 进入拜访 <van-icon name="arrow" />
|
|
|
- </div>
|
|
|
- </div>
|
|
|
+ </van-cell>
|
|
|
</div>
|
|
|
</template>
|
|
|
<template v-else><div style="text-align: center">暂无数据</div></template>
|
|
|
@@ -51,20 +266,12 @@
|
|
|
</div>
|
|
|
</template>
|
|
|
<script>
|
|
|
-import {
|
|
|
- selectUserStoreNoVisits,
|
|
|
- mobileReposition,
|
|
|
- checkVisit,
|
|
|
- addVisitsPosition,
|
|
|
-} from '@/api/index';
|
|
|
-import { checkStoreAddressByStoreCode } from '@/api/visitstore';
|
|
|
+import { selectUserStoreNoVisits } from '@/api/index';
|
|
|
import { getPosition, getTicketFun } from '@/utils/TXApiFun';
|
|
|
-import sbpmdh from '@/assets/sbpmdh.png';
|
|
|
-import times from '@/assets/Icon/times.png';
|
|
|
import { mapState } from 'vuex';
|
|
|
import store from '@/store';
|
|
|
export default {
|
|
|
- name: 'noVisit',
|
|
|
+ name: 'unCreateStore',
|
|
|
computed: {
|
|
|
...mapState({
|
|
|
activaTypeStore: (state) => state.user.activaTypeStore,
|
|
|
@@ -72,8 +279,6 @@ export default {
|
|
|
},
|
|
|
data() {
|
|
|
return {
|
|
|
- sbpmdh: sbpmdh,
|
|
|
- times: times,
|
|
|
activeName: '',
|
|
|
list: {},
|
|
|
TXPiont: {}, //腾讯定位数据
|
|
|
@@ -98,7 +303,8 @@ export default {
|
|
|
return type;
|
|
|
},
|
|
|
},
|
|
|
- activated() {
|
|
|
+ created() {
|
|
|
+ debugger;
|
|
|
// 授权
|
|
|
getTicketFun().then(() => {
|
|
|
// 获取定位
|
|
|
@@ -128,247 +334,12 @@ export default {
|
|
|
console.log(this.list);
|
|
|
});
|
|
|
},
|
|
|
- tabChange(val) {},
|
|
|
- // 进入拜访
|
|
|
- storeVisit(val) {
|
|
|
- if (!this.clickIsFlage) return;
|
|
|
- this.clickIsFlage = false;
|
|
|
- this.toastLoading(0, '加载中...', true);
|
|
|
- // 删除拜访id
|
|
|
- localStorage.removeItem('visitId');
|
|
|
- checkVisit({ storeId: val.storeId }).then((res) => {
|
|
|
- if (res.code == 200) {
|
|
|
- this.activatStoreVal = val;
|
|
|
- // 拜访页面分为 计划外、计划内; 0计划内 1计划外
|
|
|
- this.visitRoutePath =
|
|
|
- this.activatStoreVal.visitEntry == '1'
|
|
|
- ? '/suishenbangOutstoreVisit'
|
|
|
- : '/storeVisitpage';
|
|
|
- if (val.stateString.indexOf('拜访中') != -1) {
|
|
|
- this.clickIsFlage = true;
|
|
|
- localStorage.setItem('startTime', new Date());
|
|
|
- localStorage.setItem('ORGName', this.activatStoreVal.deptName);
|
|
|
- localStorage.setItem('chainNameR', this.activatStoreVal.storeName);
|
|
|
- this.$router.push({
|
|
|
- path: this.visitRoutePath,
|
|
|
- query: {
|
|
|
- storeId: this.activatStoreVal.storeId,
|
|
|
- rdId: this.activatStoreVal.rdId,
|
|
|
- lat: this.activatStoreVal.lat,
|
|
|
- lon: this.activatStoreVal.lon,
|
|
|
- visitId: this.activatStoreVal.visitId,
|
|
|
- pageType: 'out',
|
|
|
- addressLine: this.activatStoreVal.addressLine,
|
|
|
- storeCategory: this.activatStoreVal.storeCategoryName,
|
|
|
- storeName: this.activatStoreVal.storeName,
|
|
|
- hisTime: this.activatStoreVal.hisTime,
|
|
|
- contactName: this.activatStoreVal.contactName,
|
|
|
- storeCode: this.activatStoreVal.storeCode,
|
|
|
- tabVal: this.tabVal,
|
|
|
- visitModel: '1',
|
|
|
- latNew: this.activatStoreVal.lat,
|
|
|
- lonNew: this.activatStoreVal.lon,
|
|
|
- PointSum: 0,
|
|
|
- marklat: this.activatStoreVal.lat,
|
|
|
- marklon: this.activatStoreVal.lon,
|
|
|
- from: 'outPlan',
|
|
|
- },
|
|
|
- });
|
|
|
- } else {
|
|
|
- // 拜访时重新获取定位
|
|
|
- getPosition()
|
|
|
- .then((res) => {
|
|
|
- let { TXisBD, resData } = res;
|
|
|
- this.TXisBD = TXisBD;
|
|
|
- this.TXPiont = resData;
|
|
|
- localStorage.setItem('lat', TXisBD.lat);
|
|
|
- localStorage.setItem('lon', TXisBD.lon);
|
|
|
- this.checkStoreAddressByStoreCodeFun();
|
|
|
- })
|
|
|
- .catch((error) => {
|
|
|
- this.clickIsFlage = true;
|
|
|
- this.$dialog.alert({
|
|
|
- message: error,
|
|
|
- });
|
|
|
- });
|
|
|
- }
|
|
|
- } else {
|
|
|
- this.toastLoading().clear();
|
|
|
- this.clickIsFlage = true;
|
|
|
- this.$dialog.alert({
|
|
|
- message: res.msg,
|
|
|
- });
|
|
|
- }
|
|
|
- });
|
|
|
- },
|
|
|
- checkStoreAddressByStoreCodeFun() {
|
|
|
- this.toastLoading(0, '加载中...', true);
|
|
|
- let PointSumval = this.twoPointSum(
|
|
|
- this.TXisBD.lat,
|
|
|
- this.TXisBD.lon,
|
|
|
- this.TXisBD.lat,
|
|
|
- this.TXisBD.lon
|
|
|
- ).toFixed(2);
|
|
|
- // GZ:工装店铺 直接进入拜访
|
|
|
- if (localStorage.getItem('postType') == 'GZ') {
|
|
|
- localStorage.setItem('startTime', new Date());
|
|
|
- localStorage.setItem('ORGName', this.activatStoreVal.deptName);
|
|
|
- localStorage.setItem('chainNameR', this.activatStoreVal.storeName);
|
|
|
- this.toSuishenbangOutstoreVisit(PointSumval);
|
|
|
- return;
|
|
|
- }
|
|
|
- checkStoreAddressByStoreCode({
|
|
|
- storeCode: this.activatStoreVal.storeCode,
|
|
|
- lon: this.TXisBD.lon,
|
|
|
- lat: this.TXisBD.lat,
|
|
|
- })
|
|
|
- .then((response) => {
|
|
|
- this.clickIsFlage = true;
|
|
|
- // 门店校验 地址不通过
|
|
|
- if (response.code != 200) {
|
|
|
- this.toastLoading().clear();
|
|
|
- // updateAddress : ,1:同城AB+金牌,去修改地址;2:非金牌店铺,非同城店铺偏差过大不允许拜访,可以重置定位;0非金牌店铺,非同城店铺 位置信息不存在 可以继续拜访
|
|
|
- if (response.data) {
|
|
|
- if (response.data.updateAddress == 0) {
|
|
|
- // 非金牌店铺,非同城店铺 位置信息不存在 可以继续拜访
|
|
|
- this.$dialog
|
|
|
- .confirm({
|
|
|
- confirmButtonText: '确定拜访',
|
|
|
- cancelButtonText: '取消拜访',
|
|
|
- title: '系统提示',
|
|
|
- message:
|
|
|
- '该客户没有经纬度,此次拜访会保存定位点作为客户经纬度,下次拜访时判断是否偏差过大。',
|
|
|
- closeOnClickOverlay: true,
|
|
|
- })
|
|
|
- .then(() => {
|
|
|
- this.toSuishenbangOutstoreVisit(PointSumval);
|
|
|
- });
|
|
|
- } else if (response.data.updateAddress == 1) {
|
|
|
- // 同城AB+金牌,去修改地址
|
|
|
- // addressUpdateTimesOver: true=已经达到最大次数,不让修改; false=没有达到可以修改
|
|
|
- if (!response.data.addressUpdateTimesOver) {
|
|
|
- this.$dialog
|
|
|
- .confirm({
|
|
|
- title: '系统提示',
|
|
|
- message: response.msg + '请立即修改后再拜访',
|
|
|
- messageAlign: 'left',
|
|
|
- confirmButtonText: '立即修改',
|
|
|
- cancelButtonText: '取消',
|
|
|
- })
|
|
|
- .then(() => {
|
|
|
- this.$router.push({
|
|
|
- path: '/storeDetail',
|
|
|
- query: {
|
|
|
- id: this.activatStoreVal.storeId,
|
|
|
- type: 'address',
|
|
|
- storeAddressId: this.activatStoreVal.storeAddressId,
|
|
|
- },
|
|
|
- });
|
|
|
- });
|
|
|
- } else {
|
|
|
- this.$dialog.confirm({
|
|
|
- title: '系统提示',
|
|
|
- message: '已经达到最大修改次数',
|
|
|
- messageAlign: 'left',
|
|
|
- confirmButtonText: '确定',
|
|
|
- });
|
|
|
- }
|
|
|
- } else if (response.data.updateAddress == 2) {
|
|
|
- // 1.非金牌店铺,非同城店铺 位置偏差过大 重置经纬度
|
|
|
- this.resetCoord(PointSumval);
|
|
|
- return;
|
|
|
- }
|
|
|
- } else {
|
|
|
- this.$dialog.confirm({
|
|
|
- title: '系统提示',
|
|
|
- message: response.msg,
|
|
|
- showCancelButton: false,
|
|
|
- confirmButtonText: '确定',
|
|
|
- });
|
|
|
- }
|
|
|
- } else {
|
|
|
- // 门店编码校验门店地址通过 进入拜访
|
|
|
- this.toSuishenbangOutstoreVisit(PointSumval);
|
|
|
- }
|
|
|
- })
|
|
|
- .catch((error) => {
|
|
|
- this.clickIsFlage = true;
|
|
|
- });
|
|
|
- },
|
|
|
- // 进入拜访
|
|
|
- toSuishenbangOutstoreVisit(PointSumval) {
|
|
|
- addVisitsPosition({
|
|
|
- storeId: this.activatStoreVal.storeId,
|
|
|
- visitsId: '',
|
|
|
- lon: this.TXPiont.longitude,
|
|
|
- lat: this.TXPiont.latitude,
|
|
|
- sourceLon: this.TXisBD.lon,
|
|
|
- sourceLat: this.TXisBD.lat,
|
|
|
- positionDesc: '',
|
|
|
- accuracy: this.TXPiont.accuracy,
|
|
|
- });
|
|
|
- this.clickIsFlage = true;
|
|
|
- this.toastLoading().clear();
|
|
|
+ storeDetailFn(id) {
|
|
|
this.$router.push({
|
|
|
- path: this.visitRoutePath,
|
|
|
- query: {
|
|
|
- storeId: this.activatStoreVal.storeId,
|
|
|
- rdId: this.activatStoreVal.rdId,
|
|
|
- lat: this.TXisBD.lat,
|
|
|
- lon: this.TXisBD.lon,
|
|
|
- visitId: this.activatStoreVal.visitId,
|
|
|
- pageType: 'out',
|
|
|
- addressLine: this.activatStoreVal.addressLine,
|
|
|
- storeCategory: this.activatStoreVal.storeCategoryName,
|
|
|
- storeName: this.activatStoreVal.storeName,
|
|
|
- hisTime: this.activatStoreVal.hisTime,
|
|
|
- contactName: this.activatStoreVal.contactName,
|
|
|
- storeCode: this.activatStoreVal.storeCode,
|
|
|
- tabVal: this.tabVal,
|
|
|
- visitModel: '1',
|
|
|
- latNew: this.TXisBD.lat,
|
|
|
- lonNew: this.TXisBD.lon,
|
|
|
- PointSum: PointSumval,
|
|
|
- marklat: this.TXPiont.latitude,
|
|
|
- marklon: this.TXPiont.longitude,
|
|
|
- from: 'outPlan',
|
|
|
- },
|
|
|
+ path: '/storeDetail',
|
|
|
+ query: { id: id },
|
|
|
});
|
|
|
},
|
|
|
- // 重置经纬度
|
|
|
- resetCoord(PointSumval) {
|
|
|
- this.$dialog
|
|
|
- .confirm({
|
|
|
- confirmButtonText: '初始化定位',
|
|
|
- cancelButtonText: '取消拜访',
|
|
|
- title: '系统提示',
|
|
|
- message: '偏差过大,不允许拜访。可修改本店定位.',
|
|
|
- closeOnClickOverlay: true,
|
|
|
- })
|
|
|
- .then(() => {
|
|
|
- mobileReposition({
|
|
|
- storeId: this.activatStoreVal.storeId,
|
|
|
- lat: this.TXisBD.lat,
|
|
|
- lon: this.TXisBD.lon,
|
|
|
- }).then((response) => {
|
|
|
- if (response.code == 200) {
|
|
|
- this.$dialog
|
|
|
- .alert({
|
|
|
- title: '系统提示',
|
|
|
- message: '本信息定位已更新成功!',
|
|
|
- })
|
|
|
- .then(() => {
|
|
|
- this.toSuishenbangOutstoreVisit(PointSumval);
|
|
|
- });
|
|
|
- localStorage.setItem('startTime', new Date());
|
|
|
- localStorage.setItem('ORGName', this.activatStoreVal.deptName);
|
|
|
- localStorage.setItem('chainNameR', this.activatStoreVal.storeName);
|
|
|
- } else {
|
|
|
- this.$toast(response.msg);
|
|
|
- }
|
|
|
- });
|
|
|
- });
|
|
|
- },
|
|
|
onClickLeft() {
|
|
|
this.$router.go(-1);
|
|
|
},
|
|
|
@@ -383,61 +354,74 @@ export default {
|
|
|
.content {
|
|
|
padding: 8px 10px;
|
|
|
.item {
|
|
|
- background: #deedff;
|
|
|
- padding: 8px;
|
|
|
+ padding: 8px 10px;
|
|
|
margin: 10px 0;
|
|
|
- border-radius: 5px;
|
|
|
- display: flex;
|
|
|
- .storeName {
|
|
|
- font-size: 15px;
|
|
|
- font-weight: bold;
|
|
|
- color: #333;
|
|
|
- padding: 3px 0;
|
|
|
+ background: #fff;
|
|
|
+ .van-cell__right-icon {
|
|
|
+ height: 144px;
|
|
|
+ line-height: 144px;
|
|
|
+ margin-right: 10px;
|
|
|
}
|
|
|
- .address,
|
|
|
- .distance {
|
|
|
- font-size: 14px;
|
|
|
- color: #909090;
|
|
|
- padding: 3px 0;
|
|
|
+ .van-cell {
|
|
|
+ padding: 0;
|
|
|
}
|
|
|
- .distance {
|
|
|
- padding-left: 12px;
|
|
|
- }
|
|
|
- .itemLeft {
|
|
|
- flex: 1;
|
|
|
- }
|
|
|
- .itemRight {
|
|
|
- width: 25%;
|
|
|
- display: flex;
|
|
|
- flex-direction: column;
|
|
|
- justify-content: space-between;
|
|
|
- align-items: end;
|
|
|
- .statstext {
|
|
|
- background-color: #0057ba;
|
|
|
- padding: 2px 6px 2px 12px;
|
|
|
- border-bottom-left-radius: 60px;
|
|
|
- border-top-left-radius: 60px;
|
|
|
- color: #fff;
|
|
|
- width: 60px;
|
|
|
- margin-right: -8px;
|
|
|
- /* overflow: hidden; */
|
|
|
- white-space: nowrap;
|
|
|
- .van-icon__image {
|
|
|
- height: 0.7em;
|
|
|
- }
|
|
|
+ .card {
|
|
|
+ box-sizing: border-box;
|
|
|
+ .title {
|
|
|
+ font-size: 16px;
|
|
|
+ font-weight: bold;
|
|
|
+ color: #333;
|
|
|
+ line-height: 30px;
|
|
|
}
|
|
|
- .toVisit {
|
|
|
- height: 40%;
|
|
|
- font-size: 15px;
|
|
|
- color: #1989fa;
|
|
|
- width: 100%;
|
|
|
- display: flex;
|
|
|
- align-items: center;
|
|
|
- justify-content: end;
|
|
|
- /* overflow: hidden; */
|
|
|
- white-space: nowrap;
|
|
|
+ .info {
|
|
|
+ font-size: 14px;
|
|
|
+ color: #909090;
|
|
|
+ line-height: 26px;
|
|
|
}
|
|
|
}
|
|
|
+ .visitStoreIco {
|
|
|
+ float: left;
|
|
|
+ float: left;
|
|
|
+ width: 26px;
|
|
|
+ text-align: center;
|
|
|
+ background-color: #ffba13;
|
|
|
+ color: #fff;
|
|
|
+ border-radius: 100%;
|
|
|
+ margin-left: 14px;
|
|
|
+ line-height: 26px;
|
|
|
+ height: 26px;
|
|
|
+ }
|
|
|
+ .centerBtn {
|
|
|
+ margin: 0 auto 10px;
|
|
|
+ display: block;
|
|
|
+ width: 92%;
|
|
|
+ color: #0057ba;
|
|
|
+ border-radius: 5px;
|
|
|
+ padding: 0 6px;
|
|
|
+ height: 28px;
|
|
|
+ }
|
|
|
+ .ctns {
|
|
|
+ position: absolute;
|
|
|
+ top: 12px;
|
|
|
+ right: 12px;
|
|
|
+ width: 74px;
|
|
|
+ }
|
|
|
+ .statusIcon {
|
|
|
+ padding: 3px;
|
|
|
+ font-size: 12px;
|
|
|
+ margin: 0 3px;
|
|
|
+ color: #fff;
|
|
|
+ display: inline-block;
|
|
|
+ height: 20px;
|
|
|
+ line-height: 16px;
|
|
|
+ vertical-align: -1px;
|
|
|
+ }
|
|
|
+ .submit {
|
|
|
+ background: #ffba13;
|
|
|
+ }
|
|
|
+ .noSubmit {
|
|
|
+ background: #f11818;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
.van-collapse-item {
|
|
|
@@ -466,5 +450,9 @@ export default {
|
|
|
top: 0px;
|
|
|
z-index: 10;
|
|
|
}
|
|
|
+ .van-collapse-item__content {
|
|
|
+ background-color: unset;
|
|
|
+ padding: 0;
|
|
|
+ }
|
|
|
}
|
|
|
</style>
|