Commit 42c087ab authored by dragondean@qq.com's avatar dragondean@qq.com

Merge remote-tracking branch 'origin/pre-release' into pre-release

parents 41520827 a2a784e5
......@@ -60,6 +60,7 @@
<script>
import {createCustomer} from '@/api/ecw/customer'
import {DICT_TYPE} from "@/utils/dict";
import {listServiceUser} from "@/api/system/user"
import { getCountryListAll } from '@/api/ecw/country'
import {getCustomerContactsSelect} from '@/api/ecw/customerContacts'
......@@ -74,7 +75,7 @@ export default {
data(){
return {
show: true,
DICT_TYPE,
// 表单参数
form: {
customerContacts:[{isDefault: 1}]
......
......@@ -10,7 +10,7 @@
<script>
export default {
name: 'AppMain',
name: "AppMain",
computed: {
cachedViews() {
return this.$store.state.tagsView.cachedViews
......@@ -31,7 +31,7 @@ export default {
overflow: hidden;
}
.fixed-header+.app-main {
.fixed-header + .app-main {
padding-top: 50px;
}
......@@ -41,7 +41,7 @@ export default {
min-height: calc(100vh - 84px);
}
.fixed-header+.app-main {
.fixed-header + .app-main {
padding-top: 84px;
}
}
......
<template>
<div style="display: inline-block">
<span @click="visible = true"> <slot></slot></span>
<el-dialog title="更多联系人" :visible.sync="visible">
<el-dialog title="更多联系人" :visible.sync="visible" append-to-body>
<div v-if="info">
<div style="text-align: center;margin-bottom: 20px;" v-for="(item, index) in info" :key="index">
联系人{{index + 1}}{{$l(item, 'name')}} &ensp;&ensp;&ensp; 联系方式{{index + 1}}:+{{item.areaCode}} {{item.phoneNew}}<br/>
......
......@@ -6,8 +6,10 @@
<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" @click="selectCustomer(1)">{{$t('请选择')}}</el-button>
<span>{{ $t('保留客户') }}</span>
<el-button type="success" size="small" style="float: right" @click="selectCustomer(1)">
{{ $t('请选择') }}
</el-button>
</div>
<el-form-item :label="$t('客户编号')+':'">
{{ retainCustomer.number }}
......@@ -29,8 +31,10 @@
<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" @click="selectCustomer(2)">{{$t('请选择')}}</el-button>
<span>{{ $t('​被合并客户-非主客户') }}</span>
<el-button type="success" size="small" style="float: right" @click="selectCustomer(2)">
{{ $t('请选择') }}
</el-button>
</div>
<el-form-item :label="$t('客户编号')+':'">
{{ mergeCustomer.number }}
......@@ -52,12 +56,13 @@
</el-row>
</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>
<el-button type="primary" @click="handleSubmit">{{ $t('确 定') }}</el-button>
<el-button @click="dialogVisible = false">{{ $t('取 消') }}</el-button>
</div>
</el-dialog>
<el-dialog append-to-body :title="$t('选择客户')" :visible.sync="customerDialogVisible" :close-on-click-modal="false" width="80%">
<el-dialog append-to-body :title="$t('选择客户')" :visible.sync="customerDialogVisible"
:close-on-click-modal="false" width="80%">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="100px">
<el-form-item :label="$t('客户编号')" prop="number">
<el-input
......@@ -105,10 +110,12 @@
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{
$t("搜索")
}}</el-button>
}}
</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">{{
$t("重置")
}}</el-button>
}}
</el-button>
</el-form-item>
</el-form>
<el-table :data="list" v-loading="loading" border size="mini">
......@@ -119,7 +126,8 @@
</el-table-column>
<el-table-column :label="$t('客户编号')" align="center">
<template slot-scope="{ row }">
<el-link type="primary" @click.native="$router.push('/customer/query/' + row.id)">{{ row.number }}</el-link>
<!-- <el-link type="primary" @click.native="$router.push('/customer/query/' + row.id)">{{ row.number }}</el-link>-->
{{ row.number }}
</template>
</el-table-column>
<el-table-column :label="$t('客户名称')" align="center">
......@@ -136,31 +144,33 @@
></el-table-column>
<el-table-column :label="$t('主联系方式')" prop="defaultContactPhone">
<template v-slot="{ row }">
+{{ row.defaultContactPhone }} <br />
+{{ row.defaultContactPhone }} <br/>
<contacts :id="row.id">
<el-button type="text">更多</el-button>
</contacts>
</template>
</el-table-column>
<el-table-column :label="$t('客户类别')" align="center">
<template slot-scope="scope">
<dict-tag
:type="DICT_TYPE.CUSTOMER_TYPE"
:value="scope.row.type"
/>
<template slot-scope="{ row }">
{{ getDictDatas2(DICT_TYPE.CUSTOMER_TYPE, (row.type||'').split(',')).map(e => isChinese ? e.label : e.labelEn).join(', ')}}
<!-- <dict-tag-->
<!-- :type="DICT_TYPE.CUSTOMER_TYPE"-->
<!-- :value="scope.row.type"-->
<!-- />-->
</template>
</el-table-column>
<el-table-column :label="$t('角色')" align="center">
<template slot-scope="{ row }">
{{ getDictDatas2(DICT_TYPE.CUSTOMER_ROLE, (row.roles||'').split(',')).map(e => isChinese ? e.label : e.labelEn).join(', ')}}
<!-- <dict-tag-->
<!-- :type="DICT_TYPE.CUSTOMER_ROLE"-->
<!-- :value="scope.row.roles"-->
<!-- />-->
{{ getDictDatas2(DICT_TYPE.CUSTOMER_ROLE, (row.roles || '').split(',')).map(e => isChinese ? e.label : e.labelEn).join(', ') }}
<!-- <dict-tag-->
<!-- :type="DICT_TYPE.CUSTOMER_ROLE"-->
<!-- :value="scope.row.roles"-->
<!-- />-->
</template>
</el-table-column>
<el-table-column :label="$t('客户经理')" align="center" prop="customerServiceName"></el-table-column>
<el-table-column :label="$t('国籍')" align="center" prop="country" :formatter="countryFormatter"></el-table-column>
<el-table-column :label="$t('国籍')" align="center" prop="country"
:formatter="countryFormatter"></el-table-column>
<el-table-column :label="$t('出货渠道')" align="center">
<template slot-scope="{ row }">
{{ channel(row.transportType) }}
......@@ -208,7 +218,7 @@
</el-table-column>
<el-table-column :label="$t('入公海时间')" align="center" width="160">
<template v-slot="{ row }">
{{ parseTime( row.enterOpenSeaTime ? row.enterOpenSeaTime : row.estimateEnterOpenSeaTime)}}
{{ parseTime(row.enterOpenSeaTime ? row.enterOpenSeaTime : row.estimateEnterOpenSeaTime) }}
</template>
</el-table-column>
<el-table-column :label="$t('入仓确认')" align="center">
......@@ -262,20 +272,21 @@
</el-table>
<!-- 分页组件 -->
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
@pagination="getList" />
@pagination="getList"/>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="confirm">{{$t('确 定')}}</el-button>
<el-button type="primary" @click="confirm">{{ $t('确 定') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { getCustomerPage, customerMergeCus } from "@/api/ecw/customer"
import { getDictDatas, DICT_TYPE, getDictDatas2 } from "@/utils/dict"
import {getCustomerPage, customerMergeCus} from "@/api/ecw/customer"
import {getDictDatas, DICT_TYPE, getDictDatas2} from "@/utils/dict"
import Contacts from "./contacts.vue";
import Template from "@/views/cms/template/index.vue";
import {getProductTypeList} from "@/api/ecw/productType";
export default {
name: "CustomerMerge",
components: {
......@@ -386,7 +397,7 @@ export default {
return (id) => {
if (id) {
let strName = ''
for(const item of this.customerSelectFn) {
for (const item of this.customerSelectFn) {
if (item.id == id) {
strName = item.name
break
......@@ -401,9 +412,6 @@ export default {
},
created() {
this.getList();
getProductTypeList().then((r) => {
this.productTypeList = r.data;
});
},
methods: {
init() {
......@@ -413,7 +421,12 @@ export default {
selectCustomer(type) {
this.type = type
this.customerId = null
this.queryParams = {
pageNo: 1,
pageSize: 10
}
this.customerDialogVisible = true
this.getList();
},
handleSubmit() {
if (!this.retainCustomer.id) {
......@@ -439,7 +452,7 @@ export default {
const h = this.$createElement;
this.$msgbox({
title: '注意事项',
message: h('div', { class: 'stips' }, [
message: h('div', {class: 'stips'}, [
h('p', null, '1. 保留客户和非主客户,不能在两个不同的客户经理名下,请先确认两个客户在同一个客户经理名下'),
h('p', null, '2. 被合并客户,提交后会直接删除'),
h('p', null, '3. 合并后,非主客户的联系人,跟进记录,报价单,订单,客户投诉,品牌授权都迁移到保留客户中,其他信息不会迁移,如需要维护非主客户的客户档案信息到保留客户中,请先维护好再操作'),
......
This diff is collapsed.
......@@ -101,7 +101,8 @@
</el-table-column>
<el-table-column :label="$t('客户类别')" align="center" prop="sourse">
<template v-slot="{row}">
<dict-tag :value="row.type" :type="DICT_TYPE.CUSTOMER_TYPE" />
{{ getDictDatas2(DICT_TYPE.CUSTOMER_TYPE, (row.type||'').split(',')).map(e => isChinese ? e.label : e.labelEn).join(', ')}}
<!-- <dict-tag :value="row.type" :type="DICT_TYPE.CUSTOMER_TYPE" />-->
</template>
</el-table-column>
<el-table-column :label="$t('创建时间')" align="center" prop="createTime" width="180">
......@@ -130,16 +131,18 @@
<script>
import {updateCustomer, getCustomer,
getCustomerPage, exportCustomerExcel } from "@/api/ecw/indirectCustomer";
import { getDictDatas, DICT_TYPE } from '@/utils/dict';
import { getDictDatas, DICT_TYPE, getDictDatas2 } from '@/utils/dict';
import {listServiceUser} from "@/api/system/user";
import {exportCustomerComplaintExcel} from "@/api/ecw/customerComplaint";
import {indirectCustomerExportExcel} from "@/api/ecw/customer";
import AreaCodeSelector from "@/components/AreaCodeSelector/index.vue";
import Template from "@/views/cms/template/index.vue";
export default {
name: "EcwCustomerIndirectcustomer",
components: {
Template,
AreaCodeSelector
},
activated() {
......@@ -149,6 +152,7 @@ export default {
return {
exportLoading:false,
getDictDatas,
getDictDatas2,
DICT_TYPE,
// 遮罩层
loading: true,
......
This diff is collapsed.
......@@ -454,11 +454,12 @@
</template>
</el-table-column>
<el-table-column :label="$t('客户类别')" align="center" prop="status">
<template slot-scope="scope">
<dict-tag
:type="DICT_TYPE.CUSTOMER_TYPE"
:value="scope.row.type"
/>
<template slot-scope="{ row }">
{{ getDictDatas2(DICT_TYPE.CUSTOMER_TYPE, (row.type||'').split(',')).map(e => isChinese ? e.label : e.labelEn).join(', ')}}
<!-- <dict-tag-->
<!-- :type="DICT_TYPE.CUSTOMER_TYPE"-->
<!-- :value="scope.row.type"-->
<!-- />-->
</template>
</el-table-column>
<el-table-column :label="$t('角色')" align="center" prop="status">
......
......@@ -451,11 +451,12 @@
</template>
</el-table-column>
<el-table-column :label="$t('客户类别')" align="center" prop="status">
<template slot-scope="scope">
<dict-tag
:type="DICT_TYPE.CUSTOMER_TYPE"
:value="scope.row.type"
/>
<template slot-scope="{ row }">
{{ getDictDatas2(DICT_TYPE.CUSTOMER_TYPE, (row.type||'').split(',')).map(e => isChinese ? e.label : e.labelEn).join(', ')}}
<!-- <dict-tag-->
<!-- :type="DICT_TYPE.CUSTOMER_TYPE"-->
<!-- :value="scope.row.type"-->
<!-- />-->
</template>
</el-table-column>
<el-table-column :label="$t('角色')" align="center" prop="status">
......
This diff is collapsed.
......@@ -503,11 +503,12 @@
</template>
</el-table-column>
<el-table-column :label="$t('客户类别')" align="center" prop="status">
<template slot-scope="scope">
<dict-tag
:type="DICT_TYPE.CUSTOMER_TYPE"
:value="scope.row.type"
/>
<template slot-scope="{ row }">
{{ getDictDatas2(DICT_TYPE.CUSTOMER_TYPE, (row.type||'').split(',')).map(e => isChinese ? e.label : e.labelEn).join(', ')}}
<!-- <dict-tag-->
<!-- :type="DICT_TYPE.CUSTOMER_TYPE"-->
<!-- :value="scope.row.type"-->
<!-- />-->
</template>
</el-table-column>
<el-table-column :label="$t('角色')" align="center" prop="status">
......
This diff is collapsed.
......@@ -1625,7 +1625,7 @@ export default {
for(const i in this.form.orderItemVOList){
const item = this.form.orderItemVOList[i]
if(!item.prodId){
return this.$message.error(this.$t(`第{index}行未选择商品`, i+1))
return this.$message.error(this.$t(`第${Number(i) + 1}行未选择商品`, i+1))
}
}
......
......@@ -401,6 +401,7 @@
<script>
//国家列表接口
import { getCountryListAll } from "@/api/ecw/country";
import { DICT_TYPE, getDictDatas, getDictDatas2 } from '@/utils/dict'
import UserSelector from "@/components/UserSelector";
import { listServiceUser2 } from "@/api/system/user";
import Treeselect from "@riophae/vue-treeselect";
......@@ -482,6 +483,9 @@ export default {
return {
// 遮罩层
loading: true,
getDictDatas2,
getDictDatas,
DICT_TYPE,
// 导出遮罩层
exportLoading: false,
// 显示搜索条件
......@@ -849,4 +853,3 @@ export default {
},
};
</script>
\ No newline at end of file
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