|
|
@@ -1,7 +1,7 @@
|
|
|
<template>
|
|
|
<div class="detail">
|
|
|
- <el-row :gutter="30">
|
|
|
- <el-col :span="25">
|
|
|
+ <div class="side-layout">
|
|
|
+ <div class="info">
|
|
|
<div class="title">
|
|
|
<p>经销商</p>
|
|
|
<h3>
|
|
|
@@ -9,59 +9,111 @@
|
|
|
</h3>
|
|
|
</div>
|
|
|
<header>
|
|
|
- <el-descriptions :colon="false" :column="10" direction="vertical" style="padding-top: 15px">
|
|
|
- <el-descriptions-item
|
|
|
- content-class-name="my-content"
|
|
|
- label="经销商编码"
|
|
|
- label-class-name="my-label"
|
|
|
- style="width: auto">
|
|
|
- {{ detail.distCode.substring(1, 7) }}
|
|
|
+ <el-descriptions :colon="false" :column="6" direction="vertical" style="padding-top: 15px">
|
|
|
+ <el-descriptions-item content-class-name="my-content" label="所在省" label-class-name="my-label">
|
|
|
+ {{ detail.provinceDesc }}
|
|
|
</el-descriptions-item>
|
|
|
- <el-descriptions-item content-class-name="my-content" label="经销商名称" label-class-name="my-label">
|
|
|
- {{ detail.distName }}
|
|
|
+ <el-descriptions-item content-class-name="my-content" label="现有销售人数" label-class-name="my-label">
|
|
|
+ {{ detail.saleNum }}
|
|
|
</el-descriptions-item>
|
|
|
- <el-descriptions-item content-class-name="my-content" label="助记名" label-class-name="my-label">
|
|
|
- {{ detail.abbrName }}
|
|
|
+ <el-descriptions-item content-class-name="my-content" label="ABC项目总数量" label-class-name="my-label">
|
|
|
+ {{ detail.projectNum }}
|
|
|
</el-descriptions-item>
|
|
|
- <el-descriptions-item content-class-name="my-content" label="负责人" label-class-name="my-label">
|
|
|
- {{ detail.distBoss }}
|
|
|
+ <el-descriptions-item content-class-name="my-content" label="成交项目数量" label-class-name="my-label">
|
|
|
+ {{ detail.saledProjectNum }}
|
|
|
</el-descriptions-item>
|
|
|
- <el-descriptions-item content-class-name="my-content" label="负责人电话" label-class-name="my-label">
|
|
|
- {{ detail.distBossPhone }}
|
|
|
+ <el-descriptions-item content-class-name="my-content" label="成交总金额" label-class-name="my-label">
|
|
|
+ {{ formatPrice(detail.saledAmount) }}
|
|
|
</el-descriptions-item>
|
|
|
- <el-descriptions-item content-class-name="my-content" label="销售人" label-class-name="my-label">
|
|
|
+ <el-descriptions-item content-class-name="my-content" label="归属人员" label-class-name="my-label">
|
|
|
{{ detail.belongSale }}
|
|
|
</el-descriptions-item>
|
|
|
- <el-descriptions-item content-class-name="my-content" label="归属省份" label-class-name="my-label">
|
|
|
- {{ detail.provinceDesc }}
|
|
|
- </el-descriptions-item>
|
|
|
- <el-descriptions-item content-class-name="my-content" label="业务范围" label-class-name="my-label">
|
|
|
- {{ detail.businessScope }}
|
|
|
- </el-descriptions-item>
|
|
|
- <el-descriptions-item content-class-name="my-content" label="创建人" label-class-name="my-label">
|
|
|
- {{ detail.createdName }}
|
|
|
- </el-descriptions-item>
|
|
|
- <el-descriptions-item content-class-name="my-content" label="创建时间" label-class-name="my-label">
|
|
|
- {{ parseTime(detail.createdTime, '{y}-{m}-{d}') }}
|
|
|
- </el-descriptions-item>
|
|
|
</el-descriptions>
|
|
|
</header>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
+ <el-tabs v-model="activeName">
|
|
|
+ <el-tab-pane label="详细信息" name="details">
|
|
|
+ <el-descriptions border :column="2" size="medium" title="经销商详情">
|
|
|
+ <el-descriptions-item content-class-name="my-content" label="经销商名称" label-class-name="my-label">
|
|
|
+ {{ detail.distName }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item content-class-name="my-content" label="助记名称" label-class-name="my-label">
|
|
|
+ {{ detail.abbrName }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item content-class-name="my-content" label="业务范围" label-class-name="my-label">
|
|
|
+ {{ detail.businessScope }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item content-class-name="my-content" label="注册资金" label-class-name="my-label">
|
|
|
+ {{ detail.capital }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item content-class-name="my-content" label="注册地" label-class-name="my-label">
|
|
|
+ {{ detail.registerDistrict }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item content-class-name="my-content" label="授权客户类型" label-class-name="my-label">
|
|
|
+ {{ customerOptions[detail.customerType] }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item
|
|
|
+ content-class-name="my-content"
|
|
|
+ label="ABC项目出货总金额"
|
|
|
+ label-class-name="my-label">
|
|
|
+ {{ formatPrice(detail.allProductAmount) }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item content-class-name="my-content" label="未回款金额" label-class-name="my-label">
|
|
|
+ {{ formatPrice(detail.unpaidAmount) }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item
|
|
|
+ content-class-name="my-content"
|
|
|
+ label="已有代理品牌和产品"
|
|
|
+ label-class-name="my-label">
|
|
|
+ {{ detail.existedProduct }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item
|
|
|
+ content-class-name="my-content"
|
|
|
+ label="历史合作终端客户名称"
|
|
|
+ label-class-name="my-label">
|
|
|
+ {{ detail.historyCustomer }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item content-class-name="my-content" label="归属销售" label-class-name="my-label">
|
|
|
+ {{ detail.belongSale }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item content-class-name="my-content" label="销售人数" label-class-name="my-label">
|
|
|
+ {{ detail.saleNum }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item content-class-name="my-content" label="创建时间" label-class-name="my-label">
|
|
|
+ {{ parseTime(detail.createdTime, '{y}-{m}-{d}') }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item content-class-name="my-content" label="更新时间" label-class-name="my-label">
|
|
|
+ {{ parseTime(detail.updatedTime, '{y}-{m}-{d}') }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ </el-descriptions>
|
|
|
+ </el-tab-pane>
|
|
|
+ </el-tabs>
|
|
|
+ </div>
|
|
|
+ <div class="info-side">
|
|
|
+ <div class="buttons">
|
|
|
+ <!-- <el-button v-permissions="['contract:manage:edit']" type="primary" @click="handleEdit">编辑</el-button>
|
|
|
+ <el-button v-permissions="['contract:manage:delete']" @click="handleDelete">删除</el-button> -->
|
|
|
+ <el-button @click="back">返回</el-button>
|
|
|
+ </div>
|
|
|
+ <details-records :dynamics-list="dynamicsList" />
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
+ import to from 'await-to-js'
|
|
|
import { mapGetters } from 'vuex'
|
|
|
import api from '@/api/base/distr'
|
|
|
+ import DetailsRecords from './components/DetailsRecords'
|
|
|
export default {
|
|
|
name: 'DistributorDetail',
|
|
|
- components: {},
|
|
|
+ components: { DetailsRecords },
|
|
|
data() {
|
|
|
return {
|
|
|
- id: '',
|
|
|
+ id: 0,
|
|
|
privateCus: '',
|
|
|
list: [],
|
|
|
+ activeName: 'details',
|
|
|
detail: {
|
|
|
distCode: '', //经销商编码
|
|
|
distName: '', //经销商名称
|
|
|
@@ -74,6 +126,8 @@
|
|
|
createdName: '', //创建人名字
|
|
|
createdTime: '', //创建时间
|
|
|
},
|
|
|
+ customerOptions: {},
|
|
|
+ dynamicsList: [],
|
|
|
}
|
|
|
},
|
|
|
computed: {
|
|
|
@@ -83,22 +137,49 @@
|
|
|
}),
|
|
|
},
|
|
|
mounted() {
|
|
|
- this.id = this.$route.query.id
|
|
|
+ this.id = parseInt(this.$route.query.id)
|
|
|
this.privateCus = this.$route.query.privateCus
|
|
|
this.init()
|
|
|
+ this.getOptions()
|
|
|
+ this.getRecord()
|
|
|
//this.getDynamics()
|
|
|
},
|
|
|
methods: {
|
|
|
+ getOptions() {
|
|
|
+ Promise.all([this.getDicts('dis_customer_type')])
|
|
|
+ .then(([data]) => {
|
|
|
+ data.data.values.filter((i) => {
|
|
|
+ this.customerOptions[i.key] = i.value
|
|
|
+ })
|
|
|
+ })
|
|
|
+ .catch((err) => console.log(err))
|
|
|
+ },
|
|
|
async init() {
|
|
|
- Promise.all([api.getEntity({ id: parseInt(this.id) })]).then(([detail]) => {
|
|
|
+ Promise.all([api.getEntity({ id: this.id })]).then(([detail]) => {
|
|
|
console.log('detail', detail)
|
|
|
this.detail = detail.data.list
|
|
|
})
|
|
|
},
|
|
|
+ async getRecord() {
|
|
|
+ const [err, res] = await to(api.getDynamicsList({ distId: this.id }))
|
|
|
+ if (err) return
|
|
|
+ if (res.data.list) {
|
|
|
+ let obj = res.data.list
|
|
|
+ const keys = Object.keys(obj).reverse()
|
|
|
+ let records = {}
|
|
|
+ for (const item of keys) {
|
|
|
+ records[item] = obj[item]
|
|
|
+ }
|
|
|
+ this.dynamicsList = records
|
|
|
+ }
|
|
|
+ },
|
|
|
|
|
|
setSelectRows(val) {
|
|
|
this.selectRows = val
|
|
|
},
|
|
|
+ back() {
|
|
|
+ this.$router.go(-1)
|
|
|
+ },
|
|
|
},
|
|
|
}
|
|
|
</script>
|