Commit 50834765 authored by yujinyao's avatar yujinyao

合并客户弹框

parent f59c28a4
...@@ -4707,5 +4707,10 @@ ...@@ -4707,5 +4707,10 @@
"下次跟进时间": "Next follow-up time", "下次跟进时间": "Next follow-up time",
"提交结果": "Submit result", "提交结果": "Submit result",
"增加计划": "add plan", "增加计划": "add plan",
"是否确认导出客户跟进记录数据项?": "Are you sure to export all customer follow-up record data items?" "是否确认导出客户跟进记录数据项?": "Are you sure to export all customer follow-up record data items?",
"合并客户": "Merge customer",
"保留客户": "Retained customer",
"​被合并客户-非主客户": "Consolidated customer - Non-principal customer",
"注意事项": "Matters need attention",
"选择客户": "Select a customer"
} }
<template>
<div class="customer-merge">
<el-dialog append-to-body :title="$t('合并客户')" :visible.sync="dialogVisible" width="900px">
<el-form ref="form" label-width="120px">
<el-row :gutter="20">
<el-col :span="12">
<el-card class="box-card">
<div slot="header" class="clearfix">
<span>{{$t('保留客户')}}</span>
<el-button type="success" size="small" style="float: right">{{$t('请选择')}}</el-button>
</div>
<el-form-item :label="$t('客户编号')+':'">
</el-form-item>
<el-form-item :label="$t('客户名称')+':'">
</el-form-item>
<el-form-item :label="$t('客户经理')+':'">
</el-form-item>
<el-form-item :label="$t('创建时间')+':'">
</el-form-item>
<el-form-item :label="$t('联系方式')+':'">
</el-form-item>
</el-card>
</el-col>
<el-col :span="12">
<el-card class="box-card">
<div slot="header" class="clearfix">
<span>{{$t('​被合并客户-非主客户')}}</span>
<el-button type="success" size="small" style="float: right">{{$t('请选择')}}</el-button>
</div>
<el-form-item :label="$t('客户编号')+':'">
</el-form-item>
<el-form-item :label="$t('客户名称')+':'">
</el-form-item>
<el-form-item :label="$t('客户经理')+':'">
</el-form-item>
<el-form-item :label="$t('创建时间')+':'">
</el-form-item>
<el-form-item :label="$t('联系方式')+':'">
</el-form-item>
</el-card>
</el-col>
</el-row>
<div class="stips">
<h2>{{$t('注意事项')}}</h2>
<ul>
<li>1. 保留客户和非主客户,不能在两个不同的客户经理名下,请先确认两个客户在同一个客户经理名下</li>
<li>2. 被合并客户,提交后会直接删除</li>
<li>3. 合并后,非主客户的联系人,跟进记录,报价单,订单,客户投诉,品牌授权都迁移到保留客户中,其他信息不会迁移,如需要维护非主客户的客户档案信息到保留客户中,请先维护好再操作</li>
</ul>
</div>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="handleSubmit">{{$t('确 定')}}</el-button>
<el-button @click="dialogVisible = false">{{$t('取 消')}}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
export default {
name: "CustomerMerge",
data() {
return {
dialogVisible: false,
form: {}
}
},
methods: {
handleSubmit() {
}
}
}
</script>
<style scoped>
.stips h2 {
font-size: 18px;
color: #DD001B;
text-align: center;
}
.stips ul {
padding-left: 0;
}
.stips ul li {
list-style: none;
font-size: 14px;
line-height: 2em;
}
</style>
\ No newline at end of file
...@@ -581,7 +581,6 @@ ...@@ -581,7 +581,6 @@
>{{ $t("新增潜在客户") }}</el-button >{{ $t("新增潜在客户") }}</el-button
> >
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
type="primary" type="primary"
...@@ -589,6 +588,8 @@ ...@@ -589,6 +588,8 @@
icon="el-icon-plus" icon="el-icon-plus"
size="mini" size="mini"
@click="handleMergeCus" @click="handleMergeCus"
v-has-permi="[selectAuthorityFn('ecw:customer:merge')]"
v-if="path === '/customer/customer'"
>{{ $t("合并客户") }}</el-button >{{ $t("合并客户") }}</el-button
> >
</el-col> </el-col>
...@@ -1360,6 +1361,11 @@ ...@@ -1360,6 +1361,11 @@
ref="customerSetting" ref="customerSetting"
@refresh="getList" @refresh="getList"
></customer-setting> ></customer-setting>
<customer-merge
ref="customerMerge"
@refresh="getList"
v-if="customerMergeVisible"
></customer-merge>
<!--业绩类型 --> <!--业绩类型 -->
<el-dialog title="业绩类型" :visible.sync="dialogVisible" width="30%"> <el-dialog title="业绩类型" :visible.sync="dialogVisible" width="30%">
<div> <div>
...@@ -1422,6 +1428,7 @@ import Template from "@/views/cms/template/index.vue"; ...@@ -1422,6 +1428,7 @@ import Template from "@/views/cms/template/index.vue";
import AddPotentialCustom from "@/views/ecw/customer/addPotentialCustom.vue"; import AddPotentialCustom from "@/views/ecw/customer/addPotentialCustom.vue";
import Contacts from "@/views/ecw/customer/components/contacts.vue"; import Contacts from "@/views/ecw/customer/components/contacts.vue";
import CustomerSetting from "./components/customerSetting.vue"; import CustomerSetting from "./components/customerSetting.vue";
import CustomerMerge from "./components/customerMerge.vue";
import AreaCodeSelector from "@/components/AreaCodeSelector/index.vue"; import AreaCodeSelector from "@/components/AreaCodeSelector/index.vue";
import { getCustomerSelect } from "@/api/ecw/customer"; import { getCustomerSelect } from "@/api/ecw/customer";
import { getProductTypeList } from "@/api/ecw/productType"; import { getProductTypeList } from "@/api/ecw/productType";
...@@ -1438,7 +1445,8 @@ export default { ...@@ -1438,7 +1445,8 @@ export default {
customerComplaints, customerComplaints,
transferCustomer, transferCustomer,
AreaCodeSelector, AreaCodeSelector,
CustomerSetting CustomerSetting,
CustomerMerge
}, },
data() { data() {
return { return {
...@@ -1552,6 +1560,7 @@ export default { ...@@ -1552,6 +1560,7 @@ export default {
userId: undefined, //lanbm 2024-05-23 add userId: undefined, //lanbm 2024-05-23 add
customerService: undefined, customerService: undefined,
customerFollowVisible: false, customerFollowVisible: false,
customerMergeVisible: false,
enterOpenSeaTime: [], enterOpenSeaTime: [],
customerServiceConfirmedTime: [], customerServiceConfirmedTime: [],
firstDealTime: [], firstDealTime: [],
...@@ -1712,8 +1721,12 @@ export default { ...@@ -1712,8 +1721,12 @@ export default {
this.getList(); this.getList();
}, },
methods: { methods: {
handleMergeCus() {
//合并客户 //合并客户
handleMergeCus() {
this.customerMergeVisible = true
this.$nextTick(_ => {
this.$refs['customerMerge'].dialogVisible = true
})
}, },
recovery(row) { recovery(row) {
this.$confirm(this.$t("是否要回收当前{name}", row), "提示", { this.$confirm(this.$t("是否要回收当前{name}", row), "提示", {
...@@ -2097,20 +2110,6 @@ export default { ...@@ -2097,20 +2110,6 @@ export default {
return null return null
} }
}, },
getBusiCountryNames(ids) {
if (ids) {
const idsArr = ids.split(',')
const strArr = []
this.countryList.forEach(item => {
if (idsArr.includes(item.id.toString())) {
strArr.push(this.isChinese ? item.nameZh : item.nameEn)
}
})
return strArr.length > 0 ? strArr.join(',') : null
} else {
return null
}
},
getPickupPointNames(ids) { getPickupPointNames(ids) {
if (ids) { if (ids) {
const idsArr = ids.split(',') const idsArr = ids.split(',')
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment