Compare commits
5 Commits
4a40655ca2
...
b46a55cbfd
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b46a55cbfd | ||
|
|
7cb8a585cd | ||
|
|
614b816bc4 | ||
|
|
695ed397f2 | ||
|
|
6f6bb47263 |
@ -214,6 +214,12 @@ export const DICT_TYPE = {
|
|||||||
MEMBER_CAR:"member_car",
|
MEMBER_CAR:"member_car",
|
||||||
//活动类型
|
//活动类型
|
||||||
MEMBER_ACTIVE:"member_active",
|
MEMBER_ACTIVE:"member_active",
|
||||||
|
//规则
|
||||||
|
BALANCE_CHANGE_RULE:"balance_change_rule",
|
||||||
|
//主体
|
||||||
|
BALANCE_CHANGE_MAIN:"balance_change_main",
|
||||||
|
//类型
|
||||||
|
BALANCE_CHANGE_TYPE:"balance_change_type",
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,31 +0,0 @@
|
|||||||
<template>
|
|
||||||
<div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import * as CustomerMainApi from '@/api/base/customer';
|
|
||||||
export default {
|
|
||||||
name: "BindCar",
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
|
|
||||||
};
|
|
||||||
},
|
|
||||||
created() {
|
|
||||||
const row = this.$route.query.row
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
/**通过id客户信息查询*/
|
|
||||||
getById(){
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style scoped>
|
|
||||||
|
|
||||||
</style>
|
|
||||||
201
src/views/base/customer/CustomerMember.vue
Normal file
201
src/views/base/customer/CustomerMember.vue
Normal file
@ -0,0 +1,201 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<!-- 会员信息 -->
|
||||||
|
<el-card class="box-card">
|
||||||
|
<div slot="header" class="clearfix">
|
||||||
|
<span style="font-weight: bold">{{ formData.levelName }}</span>
|
||||||
|
</div>
|
||||||
|
<!--客户基本信息-->
|
||||||
|
<el-descriptions class="margin-top" :column="3" border>
|
||||||
|
<el-descriptions-item>
|
||||||
|
<template slot="label">
|
||||||
|
会员名称
|
||||||
|
</template>
|
||||||
|
{{ formData.cusName }}
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item>
|
||||||
|
<template slot="label">
|
||||||
|
性别
|
||||||
|
</template>
|
||||||
|
<dict-tag :type="DICT_TYPE.DICT_SYS_USER_SEX" :value="formData.sex"/>
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item>
|
||||||
|
<template slot="label">
|
||||||
|
联系方式
|
||||||
|
</template>
|
||||||
|
{{ formData.phoneNumber }}
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item>
|
||||||
|
<template slot="label">
|
||||||
|
生日
|
||||||
|
</template>
|
||||||
|
{{ parseTime(formData.birthday, '{y}-{m}-{d}') }}
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item>
|
||||||
|
<template slot="label">
|
||||||
|
客户来源
|
||||||
|
</template>
|
||||||
|
<dict-tag :type="DICT_TYPE.DICT_CUS_DATA_FROM" :value="formData.dataFrom"/>
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item>
|
||||||
|
<template slot="label">
|
||||||
|
最近办理业务
|
||||||
|
</template>
|
||||||
|
<dict-tag :type="DICT_TYPE.DICT_CUS_BUSI_TYPE" :value="formData.nearDoContent"/>
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item>
|
||||||
|
<template slot="label">
|
||||||
|
联系地址
|
||||||
|
</template>
|
||||||
|
{{ formData.address }}
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item>
|
||||||
|
<template slot="label">
|
||||||
|
绑定车辆
|
||||||
|
</template>
|
||||||
|
<template v-for="item in formData.carList">
|
||||||
|
<el-popover
|
||||||
|
placement="top-start"
|
||||||
|
width="200"
|
||||||
|
trigger="hover"
|
||||||
|
:content="item.licenseNumber">
|
||||||
|
<el-tag
|
||||||
|
style="margin-left: 5px"
|
||||||
|
:key="item.id"
|
||||||
|
slot="reference">
|
||||||
|
{{ item.brandStr }}({{ item.modelStr }})
|
||||||
|
</el-tag>
|
||||||
|
</el-popover>
|
||||||
|
</template>
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item>
|
||||||
|
<template slot="label">
|
||||||
|
会员标签
|
||||||
|
</template>
|
||||||
|
<template v-for="item in formData.labelList">
|
||||||
|
<el-popover
|
||||||
|
placement="top-start"
|
||||||
|
width="200"
|
||||||
|
trigger="hover"
|
||||||
|
:content="item.labelContent">
|
||||||
|
<el-tag
|
||||||
|
style="margin-left: 5px"
|
||||||
|
:key="item.id"
|
||||||
|
slot="reference"
|
||||||
|
:type="item.labelType">
|
||||||
|
{{ item.labelName }}
|
||||||
|
</el-tag>
|
||||||
|
</el-popover>
|
||||||
|
</template>
|
||||||
|
</el-descriptions-item>
|
||||||
|
|
||||||
|
</el-descriptions>
|
||||||
|
</el-card>
|
||||||
|
<!-- 余额卡券 -->
|
||||||
|
<el-row >
|
||||||
|
<el-col :span="8">
|
||||||
|
<el-card class="box-card">
|
||||||
|
<div slot="header" class="clearfix">
|
||||||
|
<span style="font-weight: bold">余额/积分</span>
|
||||||
|
</div>
|
||||||
|
</el-card>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="16">
|
||||||
|
<el-card class="box-card">
|
||||||
|
<div slot="header" class="clearfix">
|
||||||
|
<span style="font-weight: bold">卡券</span>
|
||||||
|
</div>
|
||||||
|
</el-card>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<!-- 可参与活动 -->
|
||||||
|
<el-card class="box-card">
|
||||||
|
<div slot="header" class="clearfix">
|
||||||
|
<span style="font-weight: bold">可参与活动</span>
|
||||||
|
</div>
|
||||||
|
<el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true">
|
||||||
|
<el-table-column width="100" label="活动名称" align="left" prop="name"/>
|
||||||
|
<el-table-column label="活动描述" show-overflow-tooltip align="left" prop="remark"/>
|
||||||
|
<el-table-column label="活动开始时间" align="center" prop="beginTime" width="150">
|
||||||
|
<template v-slot="scope">
|
||||||
|
<span>{{ parseTime(scope.row.beginTime) }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="活动结束时间" align="center" prop="endTime" width="150">
|
||||||
|
<template v-slot="scope">
|
||||||
|
<span>{{ parseTime(scope.row.endTime) }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column width="100" label="操作" align="center" class-name="small-padding fixed-width">
|
||||||
|
<template v-slot="scope">
|
||||||
|
<el-button size="mini" type="text" icon="el-icon-delete"
|
||||||
|
v-hasPermi="['member:active-main:delete']">删除
|
||||||
|
</el-button>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<!-- 分页组件 -->
|
||||||
|
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
|
||||||
|
@pagination="getActiveList"/>
|
||||||
|
</el-card>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import * as CustomerMainApi from '@/api/base/customer';
|
||||||
|
import * as ActiveMainApi from '@/api/member/active';
|
||||||
|
export default {
|
||||||
|
name: "CustomerMember",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
//列表传入数据
|
||||||
|
param: {},
|
||||||
|
//当前客户数据
|
||||||
|
formData: {},
|
||||||
|
// 遮罩层
|
||||||
|
loading: true,
|
||||||
|
//可参与活动列表
|
||||||
|
list:[],
|
||||||
|
// 总条数
|
||||||
|
total: 0,
|
||||||
|
// 查询参数
|
||||||
|
queryParams: {
|
||||||
|
pageNo: 1,
|
||||||
|
pageSize: 10,
|
||||||
|
isNow:'1'
|
||||||
|
},
|
||||||
|
};
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
const row = this.$route.query.row
|
||||||
|
this.param = row
|
||||||
|
this.getById(row.id)
|
||||||
|
this.getActiveList()
|
||||||
|
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
/**通过id客户信息查询*/
|
||||||
|
async getById(id) {
|
||||||
|
const res = await CustomerMainApi.getCustomerMain(id);
|
||||||
|
this.formData = res.data;
|
||||||
|
},
|
||||||
|
/**可参与活动列表*/
|
||||||
|
async getActiveList() {
|
||||||
|
try {
|
||||||
|
this.loading = true;
|
||||||
|
const res = await ActiveMainApi.getActiveMainPage(this.queryParams);
|
||||||
|
this.list = res.data.records;
|
||||||
|
this.total = res.data.total;
|
||||||
|
} finally {
|
||||||
|
this.loading = false;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
|
||||||
|
</style>
|
||||||
@ -45,6 +45,7 @@
|
|||||||
<dict-tag :type="DICT_TYPE.DICT_SYS_USER_SEX" :value="scope.row.sex"/>
|
<dict-tag :type="DICT_TYPE.DICT_SYS_USER_SEX" :value="scope.row.sex"/>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
<el-table-column width="80" label="会员等级" align="center" prop="levelName" />
|
||||||
<el-table-column width="110" label="联系方式" align="center" prop="phoneNumber"/>
|
<el-table-column width="110" label="联系方式" align="center" prop="phoneNumber"/>
|
||||||
<el-table-column width="100" label="生日" align="center" prop="birthday">
|
<el-table-column width="100" label="生日" align="center" prop="birthday">
|
||||||
<template v-slot="scope">
|
<template v-slot="scope">
|
||||||
@ -107,6 +108,7 @@
|
|||||||
v-hasPermi="['base:customer-main:car']">绑定车辆</el-dropdown-item>
|
v-hasPermi="['base:customer-main:car']">绑定车辆</el-dropdown-item>
|
||||||
<el-dropdown-item command="openFormAttn" size="mini" type="text" icon="el-icon-s-custom"
|
<el-dropdown-item command="openFormAttn" size="mini" type="text" icon="el-icon-s-custom"
|
||||||
v-hasPermi="['base:customer-main:attn']">经办人</el-dropdown-item>
|
v-hasPermi="['base:customer-main:attn']">经办人</el-dropdown-item>
|
||||||
|
<el-dropdown-item command="bindLabel" size="mini" type="text" icon="el-icon-s-management">打标签</el-dropdown-item>
|
||||||
|
|
||||||
</el-dropdown-menu>
|
</el-dropdown-menu>
|
||||||
</el-dropdown>
|
</el-dropdown>
|
||||||
@ -119,6 +121,7 @@
|
|||||||
<!-- 对话框(添加 / 修改) -->
|
<!-- 对话框(添加 / 修改) -->
|
||||||
<CustomerMainForm ref="formRef" @success="getList"/>
|
<CustomerMainForm ref="formRef" @success="getList"/>
|
||||||
<CustomerCarForm ref="carFormRef" @success="getList"/>
|
<CustomerCarForm ref="carFormRef" @success="getList"/>
|
||||||
|
<CustomerLabelForm ref="labelFormRef" @success="getList"/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -126,10 +129,11 @@
|
|||||||
import * as CustomerMainApi from '@/api/base/customer';
|
import * as CustomerMainApi from '@/api/base/customer';
|
||||||
import CustomerMainForm from '@/views/base/customer/CustomerMainForm.vue';
|
import CustomerMainForm from '@/views/base/customer/CustomerMainForm.vue';
|
||||||
import CustomerCarForm from '@/views/base/customer/CustomerCarForm.vue';
|
import CustomerCarForm from '@/views/base/customer/CustomerCarForm.vue';
|
||||||
|
import CustomerLabelForm from '@/views/base/customer/CustomerLabelForm.vue';
|
||||||
export default {
|
export default {
|
||||||
name: "CorpCustomer",
|
name: "CorpCustomer",
|
||||||
components: {
|
components: {
|
||||||
CustomerMainForm,CustomerCarForm
|
CustomerMainForm,CustomerCarForm,CustomerLabelForm
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
typeCode: {
|
typeCode: {
|
||||||
@ -195,6 +199,9 @@ export default {
|
|||||||
//经办人管理
|
//经办人管理
|
||||||
this.openFormAttn(row);
|
this.openFormAttn(row);
|
||||||
break;
|
break;
|
||||||
|
case 'bindLabel':
|
||||||
|
this.bindLabel(row);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -207,6 +214,11 @@ export default {
|
|||||||
this.$refs["carFormRef"].open(row);
|
this.$refs["carFormRef"].open(row);
|
||||||
},
|
},
|
||||||
|
|
||||||
|
/**打标签*/
|
||||||
|
bindLabel(row){
|
||||||
|
this.$refs["labelFormRef"].open(row);
|
||||||
|
},
|
||||||
|
|
||||||
/** 查询列表 */
|
/** 查询列表 */
|
||||||
async getList() {
|
async getList() {
|
||||||
try {
|
try {
|
||||||
|
|||||||
@ -40,8 +40,7 @@
|
|||||||
<dict-tag :type="DICT_TYPE.DICT_SYS_USER_SEX" :value="scope.row.sex" />
|
<dict-tag :type="DICT_TYPE.DICT_SYS_USER_SEX" :value="scope.row.sex" />
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column width="80" label="会员等级" align="center" prop="levelName">
|
<el-table-column width="80" label="会员等级" align="center" prop="levelName" />
|
||||||
</el-table-column>
|
|
||||||
<el-table-column width="110" label="联系方式" align="center" prop="phoneNumber"/>
|
<el-table-column width="110" label="联系方式" align="center" prop="phoneNumber"/>
|
||||||
<el-table-column width="100" label="生日" align="center" prop="birthday">
|
<el-table-column width="100" label="生日" align="center" prop="birthday">
|
||||||
<template v-slot="scope">
|
<template v-slot="scope">
|
||||||
@ -204,7 +203,7 @@ export default {
|
|||||||
*/
|
*/
|
||||||
customerDetail(row){
|
customerDetail(row){
|
||||||
this.$router.push({
|
this.$router.push({
|
||||||
name: "CustomerDetail",
|
name: "CustomerMember",
|
||||||
query:{
|
query:{
|
||||||
row: row
|
row: row
|
||||||
}
|
}
|
||||||
|
|||||||
@ -30,6 +30,7 @@
|
|||||||
|
|
||||||
<el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true">
|
<el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true">
|
||||||
<el-table-column width="100" label="客户名称" align="center" prop="cusName"/>
|
<el-table-column width="100" label="客户名称" align="center" prop="cusName"/>
|
||||||
|
<el-table-column width="80" label="会员等级" align="center" prop="levelName" />
|
||||||
<el-table-column width="60" label="性别" align="center" prop="sex">
|
<el-table-column width="60" label="性别" align="center" prop="sex">
|
||||||
<template v-slot="scope">
|
<template v-slot="scope">
|
||||||
<dict-tag :type="DICT_TYPE.DICT_SYS_USER_SEX" :value="scope.row.sex" />
|
<dict-tag :type="DICT_TYPE.DICT_SYS_USER_SEX" :value="scope.row.sex" />
|
||||||
@ -82,6 +83,8 @@
|
|||||||
<el-dropdown-menu slot="dropdown">
|
<el-dropdown-menu slot="dropdown">
|
||||||
<el-dropdown-item command="bindCar" size="mini" type="text" icon="el-icon-truck"
|
<el-dropdown-item command="bindCar" size="mini" type="text" icon="el-icon-truck"
|
||||||
v-hasPermi="['base:customer-main:car']">绑定车辆</el-dropdown-item>
|
v-hasPermi="['base:customer-main:car']">绑定车辆</el-dropdown-item>
|
||||||
|
<el-dropdown-item command="bindLabel" size="mini" type="text" icon="el-icon-s-management">打标签</el-dropdown-item>
|
||||||
|
|
||||||
</el-dropdown-menu>
|
</el-dropdown-menu>
|
||||||
</el-dropdown>
|
</el-dropdown>
|
||||||
</template>
|
</template>
|
||||||
@ -93,6 +96,7 @@
|
|||||||
<!-- 对话框(添加 / 修改) -->
|
<!-- 对话框(添加 / 修改) -->
|
||||||
<CustomerMainForm ref="formRef" @success="getList"/>
|
<CustomerMainForm ref="formRef" @success="getList"/>
|
||||||
<CustomerCarForm ref="carFormRef" @success="getList"/>
|
<CustomerCarForm ref="carFormRef" @success="getList"/>
|
||||||
|
<CustomerLabelForm ref="labelFormRef" @success="getList"/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -100,10 +104,11 @@
|
|||||||
import * as CustomerMainApi from '@/api/base/customer';
|
import * as CustomerMainApi from '@/api/base/customer';
|
||||||
import CustomerMainForm from '@/views/base/customer/CustomerMainForm.vue';
|
import CustomerMainForm from '@/views/base/customer/CustomerMainForm.vue';
|
||||||
import CustomerCarForm from '@/views/base/customer/CustomerCarForm.vue';
|
import CustomerCarForm from '@/views/base/customer/CustomerCarForm.vue';
|
||||||
|
import CustomerLabelForm from '@/views/base/customer/CustomerLabelForm.vue';
|
||||||
export default {
|
export default {
|
||||||
name: "TodoCustomer",
|
name: "TodoCustomer",
|
||||||
components: {
|
components: {
|
||||||
CustomerMainForm,CustomerCarForm
|
CustomerMainForm,CustomerCarForm,CustomerLabelForm
|
||||||
},
|
},
|
||||||
props:{
|
props:{
|
||||||
typeCode: {
|
typeCode: {
|
||||||
@ -165,6 +170,9 @@ export default {
|
|||||||
//绑定车辆信息
|
//绑定车辆信息
|
||||||
this.bindCar(row);
|
this.bindCar(row);
|
||||||
break;
|
break;
|
||||||
|
case 'bindLabel':
|
||||||
|
this.bindLabel(row);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -175,6 +183,10 @@ export default {
|
|||||||
bindCar(row){
|
bindCar(row){
|
||||||
this.$refs["carFormRef"].open(row);
|
this.$refs["carFormRef"].open(row);
|
||||||
},
|
},
|
||||||
|
/**打标签*/
|
||||||
|
bindLabel(row){
|
||||||
|
this.$refs["labelFormRef"].open(row);
|
||||||
|
},
|
||||||
/** 查询列表 */
|
/** 查询列表 */
|
||||||
async getList() {
|
async getList() {
|
||||||
try {
|
try {
|
||||||
|
|||||||
@ -133,8 +133,8 @@ export default {
|
|||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
// tenantCode:"lanan",
|
|
||||||
tenantCode:"lighting",
|
tenantCode:"lighting",
|
||||||
|
// tenantCode:"lanan",
|
||||||
codeUrl: "",
|
codeUrl: "",
|
||||||
//是否开启图形验证码
|
//是否开启图形验证码
|
||||||
captchaEnable: false,
|
captchaEnable: false,
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user