Commit fae04a69 authored by yujinyao's avatar yujinyao

客户BUG

parent eb9e7f83
...@@ -92,3 +92,10 @@ export function editCustomerFollow(data) { ...@@ -92,3 +92,10 @@ export function editCustomerFollow(data) {
}) })
} }
export function exportCustomerFollow() {
return request({
url: '/customer/followup/export-excel',
method: 'get'
})
}
...@@ -4708,5 +4708,6 @@ ...@@ -4708,5 +4708,6 @@
"增加计划": "add plan", "增加计划": "add plan",
"提货状态": "pickup status", "提货状态": "pickup status",
"未提货": "not pickup", "未提货": "not pickup",
"部分提货": "portion pickup" "部分提货": "portion pickup",
"是否确认导出客户跟进记录数据项?": "Are you sure to export all customer follow-up record data items?"
} }
...@@ -36,7 +36,7 @@ ...@@ -36,7 +36,7 @@
--> -->
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('跟进时间')" required> <el-form-item :label="$t('跟进时间')" required>
<el-date-picker v-model="form.followTime" type="datetime" value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd HH:mm:ss" :placeholder="$t('请选择')"></el-date-picker> <el-date-picker v-model="form.followTime" type="datetime" :placeholder="$t('请选择')"></el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
...@@ -94,13 +94,13 @@ ...@@ -94,13 +94,13 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('下次跟进时间')"> <el-form-item :label="$t('下次跟进时间')">
<el-date-picker v-model="form.nextTime" type="datetime" value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd HH:mm:ss" :placeholder="$t('请选择')" :picker-options="pickerOptions"> <el-date-picker v-model="form.nextTime" type="datetime" :placeholder="$t('请选择')" :picker-options="pickerOptions">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('创建人')" prop="founder"> <el-form-item :label="$t('创建人')" prop="founder">
<el-select v-model="form.creatorName" disabled> <el-select v-model="form.creatorName" disabled :placeholder="$t('请选择')">
<el-option v-for="item in allSimplList" :key="item.id" :label="item.nickname" :value="item.id"> <el-option v-for="item in allSimplList" :key="item.id" :label="item.nickname" :value="item.id">
</el-option> </el-option>
</el-select> </el-select>
...@@ -108,7 +108,7 @@ ...@@ -108,7 +108,7 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('创建时间')" prop="createTime"> <el-form-item :label="$t('创建时间')" prop="createTime">
<el-date-picker v-model="form.createTime" type="datetime" value-format="timestamp" disabled :placeholder="$t('选择创建时间')"> <el-date-picker v-model="form.createTime" type="datetime" disabled :placeholder="$t('请选择')">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
...@@ -122,7 +122,7 @@ ...@@ -122,7 +122,7 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('最后更新时间')"> <el-form-item :label="$t('最后更新时间')">
<el-date-picker v-model="form.updateTime" type="datetime" value-format="timestamp" disabled> <el-date-picker v-model="form.updateTime" type="datetime" disabled :placeholder="$t('请选择')">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
...@@ -167,6 +167,7 @@ import { ...@@ -167,6 +167,7 @@ import {
parseTime parseTime
} from '@/utils/ruoyi' } from '@/utils/ruoyi'
import FileUpload from "@/components/FileUpload"; import FileUpload from "@/components/FileUpload";
import {formatDate} from "@/utils/index";
export default { export default {
/** /**
* 客户跟进 * 客户跟进
...@@ -340,9 +341,11 @@ export default { ...@@ -340,9 +341,11 @@ export default {
let func = this.form.id ? editCustomerFollow : addCustomerFollow let func = this.form.id ? editCustomerFollow : addCustomerFollow
func({ func({
...this.form, ...this.form,
followTime: this.form.followTime ? formatDate(this.form.followTime) : undefined,
nextTime: this.form.nextTime ? formatDate(this.form.nextTime) : undefined,
status status
}).then(r => { }).then(r => {
this.$message.info(this.$t("操作成功")) this.$message.success(this.$t("操作成功"))
this.$emit('refresh') this.$emit('refresh')
this.customerFollowClose() this.customerFollowClose()
}) })
......
...@@ -21,30 +21,40 @@ ...@@ -21,30 +21,40 @@
<el-radio v-model="offerId" :label="row.offerId">&nbsp;</el-radio> <el-radio v-model="offerId" :label="row.offerId">&nbsp;</el-radio>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('报价单号')" align="left" prop="number" width="200px"> <el-table-column :label="$t('报价单号')" min-width="160px">
<template slot-scope="{row}"> <template slot-scope="{row}">
<el-link type="primary" @click.native="$router.push('/offer/detail?offerId=' + row.offerId)">{{row.number}}</el-link> <el-link type="primary" @click.native="$router.push('/offer/detail?offerId=' + row.offerId)">{{row.number}}</el-link>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('订单编号')" align="left" prop="orderNo" /> <el-table-column :label="$t('销售阶段')" min-width="120">
<el-table-column :label="$t('客户名称')" align="left" prop="relationName" />
<el-table-column :label="$t('目的地')" align="center" prop="objectiveName" />
<el-table-column :label="$t('销售阶段')" align="left" width="180">
<template slot-scope="{row}"> <template slot-scope="{row}">
<dict-tag :type="DICT_TYPE.ECW_OFFER_STATUS" :value="row.status" /> <dict-tag :type="DICT_TYPE.ECW_OFFER_STATUS" :value="row.status" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('预计结束时间')" align="left"> <el-table-column :label="$t('订单编号')" min-width="150px">
<template slot-scope="{row}">
<el-link type="primary" @click.native="$router.push('/order/detail?orderId=' + row.orderId)">{{row.orderNo}}</el-link>
</template>
</el-table-column>
<el-table-column :label="$t('客户编号')" align="center" min-width="100">
</el-table-column>
<el-table-column :label="$t('客户名称')" align="center" prop="relationName" min-width="100" />
<el-table-column :label="$t('联系方式')">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ parseTime(scope.row.stopTime, "{y}-{m}-{d}") }}</span> +{{ scope.row.relationAreaCode }}{{ scope.row.relationPhone }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('运输方式')" align="left"> <el-table-column :label="$t('运输方式')">
<template slot-scope="scope" > <template slot-scope="scope" >
<dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="scope.row.transportId" /> <dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="scope.row.transportId" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('预计销售额')" align="left" prop="estCost"> <el-table-column :label="$t('渠道')" align="center" min-width="120">
</el-table-column>
<el-table-column :label="$t('始发地')" align="center" min-width="120">
</el-table-column>
<el-table-column :label="$t('目的地')" align="center" prop="objectiveName" min-width="120" />
<el-table-column :label="$t('预计销售额')" min-width="160">
<template slot-scope="{row}"> <template slot-scope="{row}">
<div class="" v-for="(item, feeIndex) in row.estCostVO.feeDtoList" :key="feeIndex"> <div class="" v-for="(item, feeIndex) in row.estCostVO.feeDtoList" :key="feeIndex">
<dict-tag :type="DICT_TYPE.ECW_COST_FEE_TYPE" :value="item.feeType" /> <dict-tag :type="DICT_TYPE.ECW_COST_FEE_TYPE" :value="item.feeType" />
...@@ -52,9 +62,8 @@ ...@@ -52,9 +62,8 @@
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('客户经理')" align="left" prop="creatorName"> <el-table-column :label="$t('客户经理')" prop="creatorName" align="center" min-width="100" />
</el-table-column> <el-table-column :label="$t('创建时间')" align="center" min-width="160">
<el-table-column :label="$t('创建时间')" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
{{ parseTime(scope.row.createTime) }} {{ parseTime(scope.row.createTime) }}
</template> </template>
......
...@@ -275,7 +275,6 @@ ...@@ -275,7 +275,6 @@
<el-date-picker <el-date-picker
v-model="form.customerServiceConfirmedTime" v-model="form.customerServiceConfirmedTime"
type="datetime" type="datetime"
value-format="timestamp"
disabled disabled
:placeholder="$t('请选择')" :placeholder="$t('请选择')"
> >
...@@ -1693,7 +1692,7 @@ export default { ...@@ -1693,7 +1692,7 @@ export default {
}; };
this.form.createTime = new Date().getTime(); this.form.createTime = new Date().getTime();
this.form.updateTime = new Date().getTime(); this.form.updateTime = new Date().getTime();
this.resetForm("form"); // this.resetForm("form");
}, },
getCustomer(id) { getCustomer(id) {
return getCustomer(id).then((response) => { return getCustomer(id).then((response) => {
......
...@@ -637,6 +637,7 @@ ...@@ -637,6 +637,7 @@
:data="list" :data="list"
@selection-change="handleSelectionChange" @selection-change="handleSelectionChange"
> >
<el-table-column type="selection" width="55" fixed></el-table-column>
<el-table-column :label="$t('客户编号')" align="center" fixed> <el-table-column :label="$t('客户编号')" align="center" fixed>
<template v-slot="{ row }"> <template v-slot="{ row }">
<router-link :to="`/customer/query/${row.id}`" class="link-type"> <router-link :to="`/customer/query/${row.id}`" class="link-type">
...@@ -1726,6 +1727,11 @@ export default { ...@@ -1726,6 +1727,11 @@ export default {
this.deptList = response.data this.deptList = response.data
}) })
}, },
updated() {
this.$nextTick(() => {
this.$refs.multipleTable.doLayout()
})
},
activated() { activated() {
this.getList(); this.getList();
}, },
......
This diff is collapsed.
...@@ -397,7 +397,8 @@ ...@@ -397,7 +397,8 @@
<!-- 列表 --> <!-- 列表 -->
<el-table ref="multipleTable" v-loading="loading" :data="list" @selection-change="handleSelectionChange"> <el-table ref="multipleTable" v-loading="loading" :data="list" @selection-change="handleSelectionChange">
<el-table-column :label="$t('客户编号')" align="center" prop="number" > <el-table-column type="selection" width="55" fixed></el-table-column>
<el-table-column :label="$t('客户编号')" align="center" prop="number">
<template v-slot="{row}"> <template v-slot="{row}">
{{row.number}} {{row.number}}
</template> </template>
...@@ -725,6 +726,11 @@ export default { ...@@ -725,6 +726,11 @@ export default {
this.deptList = response.data this.deptList = response.data
}) })
}, },
updated() {
this.$nextTick(() => {
this.$refs.multipleTable.doLayout()
})
},
methods: { methods: {
countryFormatter(row, column, cellValue) { countryFormatter(row, column, cellValue) {
const country = this.countryList.find((e) => e.id === cellValue) const country = this.countryList.find((e) => e.id === cellValue)
......
...@@ -47,6 +47,7 @@ ...@@ -47,6 +47,7 @@
<el-form-item :label="$t('客户类别')" prop="level"> <el-form-item :label="$t('客户类别')" prop="level">
<dict-selector :type="DICT_TYPE.CUSTOMER_TYPE" multiple v-model="queryParams.type" @change="handleQuery"></dict-selector> <dict-selector :type="DICT_TYPE.CUSTOMER_TYPE" multiple v-model="queryParams.type" @change="handleQuery"></dict-selector>
</el-form-item> </el-form-item>
<!--
<el-form-item :label="$t('客户经理')" prop="customerService"> <el-form-item :label="$t('客户经理')" prop="customerService">
<el-select <el-select
clearable clearable
...@@ -63,6 +64,7 @@ ...@@ -63,6 +64,7 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
-->
<el-form-item :label="$t('客户来源')" prop="source"> <el-form-item :label="$t('客户来源')" prop="source">
<el-select clearable v-model="queryParams.source" multiple :placeholder="$t('请选择客户来源')" size="small" @change="handleQuery"> <el-select clearable v-model="queryParams.source" multiple :placeholder="$t('请选择客户来源')" size="small" @change="handleQuery">
<el-option v-for="dict in getDictDatas(DICT_TYPE.CUSTOMER_SOURCE)" <el-option v-for="dict in getDictDatas(DICT_TYPE.CUSTOMER_SOURCE)"
...@@ -437,6 +439,7 @@ ...@@ -437,6 +439,7 @@
:data="list" :data="list"
@selection-change="handleSelectionChange" @selection-change="handleSelectionChange"
> >
<el-table-column type="selection" width="55" fixed></el-table-column>
<el-table-column :label="$t('客户编号')" align="center" fixed> <el-table-column :label="$t('客户编号')" align="center" fixed>
<template v-slot="{ row }"> <template v-slot="{ row }">
<router-link :to="`/customer/query/${row.id}`" class="link-type"> <router-link :to="`/customer/query/${row.id}`" class="link-type">
...@@ -963,6 +966,11 @@ export default { ...@@ -963,6 +966,11 @@ export default {
this.competitorList = r.data; this.competitorList = r.data;
}) })
}, },
updated() {
this.$nextTick(() => {
this.$refs.multipleTable.doLayout()
})
},
methods: { methods: {
handleSelectionChange(val) { handleSelectionChange(val) {
this.selectCustomerList = val.map((i) => i.id); this.selectCustomerList = val.map((i) => i.id);
......
...@@ -514,10 +514,12 @@ ...@@ -514,10 +514,12 @@
<!-- 列表 --> <!-- 列表 -->
<el-table <el-table
ref="multipleTable"
v-loading="loading" v-loading="loading"
:data="list" :data="list"
@selection-change="handleSelectionChange" @selection-change="handleSelectionChange"
> >
<el-table-column type="selection" width="55" fixed></el-table-column>
<el-table-column :label="$t('客户编号')" align="center" fixed> <el-table-column :label="$t('客户编号')" align="center" fixed>
<template v-slot="{ row }"> <template v-slot="{ row }">
<router-link :to="`/customer/query/${row.id}`" class="link-type"> <router-link :to="`/customer/query/${row.id}`" class="link-type">
...@@ -944,6 +946,11 @@ export default { ...@@ -944,6 +946,11 @@ export default {
this.deptList = response.data this.deptList = response.data
}) })
}, },
updated() {
this.$nextTick(() => {
this.$refs.multipleTable.doLayout()
})
},
computed: { computed: {
isChinese() { isChinese() {
return this.$i18n.locale === "zh_CN"; return this.$i18n.locale === "zh_CN";
......
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