卡券功能

This commit is contained in:
磷叶 2025-05-27 16:13:45 +08:00
parent 2be6bb44da
commit 0d8551c020
4 changed files with 45 additions and 9 deletions

View File

@ -28,9 +28,18 @@
<el-tab-pane label="车辆列表" lazy v-if="checkPermi(['bst:device:list'])">
<device :query="{areaId: detail.id}" />
</el-tab-pane>
<el-tab-pane label="订单列表" lazy v-if="checkPermi(['bst:order:list'])">
<el-tab-pane label="骑行订单" lazy v-if="checkPermi(['bst:order:list'])">
<order :query="{areaId: detail.id}" />
</el-tab-pane>
<el-tab-pane label="卡券列表" lazy v-if="checkPermi(['bst:vip:list'])">
<vip :query="{areaId: detail.id}" />
</el-tab-pane>
<el-tab-pane label="卡券订单" lazy v-if="checkPermi(['bst:vipOrder:list'])">
<vip-order :query="{vipAreaId: detail.id}" />
</el-tab-pane>
<el-tab-pane label="用户卡券" lazy v-if="checkPermi(['bst:vipUser:list'])">
<vip-user :query="{areaId: detail.id}" />
</el-tab-pane>
<el-tab-pane label="加盟列表" lazy v-if="checkPermi(['bst:areaJoin:list'])">
<area-join :query="{areaId: detail.id, types: [AreaJoinType.JOIN, AreaJoinType.COOPERATE]}" />
</el-tab-pane>
@ -54,13 +63,16 @@
<script>
import { getArea } from '@/api/bst/area';
import UserLink from '@/components/Business/User/UserLink.vue';
import { AreaJoinType, LogBizType } from '@/utils/enums';
import Agreement from '@/views/bst/agreement/index.vue';
import AreaJoin from '@/views/bst/areaJoin/index.vue';
import AreaSub from '@/views/bst/areaSub/index.vue';
import CustomerService from '@/views/bst/customerService/index.vue';
import Device from '@/views/bst/device/index.vue';
import Order from '@/views/bst/order/index.vue';
import AreaJoin from '@/views/bst/areaJoin/index.vue';
import { AreaJoinType, LogBizType } from '@/utils/enums';
import CustomerService from '@/views/bst/customerService/index.vue';
import Agreement from '@/views/bst/agreement/index.vue';
import Vip from '@/views/bst/vip/index.vue';
import VipOrder from '@/views/bst/vipOrder/index.vue';
import VipUser from '@/views/bst/vipUser/index.vue';
import OperLog from '@/views/monitor/operlog/index.vue';
export default {
@ -74,7 +86,10 @@ export default {
AreaJoin,
CustomerService,
Agreement,
OperLog
OperLog,
VipOrder,
Vip,
VipUser
},
data() {
return {

View File

@ -194,6 +194,12 @@ export default {
BooleanTag,
VipEditDialog
},
props: {
query: {
type: Object,
default: () => ({})
}
},
data() {
return {
VipType,
@ -254,6 +260,7 @@ export default {
};
},
created() {
Object.assign(this.queryParams, this.query);
this.getList();
},
methods: {

View File

@ -153,6 +153,12 @@ export default {
mixins: [$showColumns],
dicts: ['vip_type', 'vip_order_status', 'vip_limit_unit'],
components: {FormCol, AreaRemoteSelect, AreaLink, UserLink},
props: {
query: {
type: Object,
default: () => ({})
}
},
data() {
return {
VipType,
@ -246,6 +252,7 @@ export default {
};
},
created() {
Object.assign(this.queryParams, this.query);
this.getList();
},
methods: {

View File

@ -76,7 +76,7 @@
<user-link :id="d.row.userId" :text="d.row.userName"/>
</template>
<template v-else-if="column.key === 'areaName'">
<area-link :id="d.row.areaId" :text="d.row.areaName"/>
<area-link :id="d.row.areaId" :text="d.row.areaName" />
</template>
<template v-else-if="column.key === 'surplusTotal'">
{{ d.row.surplusTotal | dv}}
@ -150,6 +150,12 @@ export default {
mixins: [$showColumns],
dicts: ['vip_type', 'vip_limit_unit'],
components: {FormCol, UserLink, AreaLink, AreaRemoteSelect},
props: {
query: {
type: Object,
default: () => ({})
}
},
data() {
return {
VipType,
@ -157,7 +163,7 @@ export default {
//
columns: [
{key: 'id', visible: false, label: 'ID', minWidth: null, sortable: true, overflow: false, align: 'center', width: "80"},
{key: 'name', visible: true, label: '卡券', minWidth: null, sortable: true, overflow: false, align: 'left', width: null},
{key: 'name', visible: true, label: '卡券', minWidth: null, sortable: true, overflow: false, align: 'left', width: "250"},
{key: 'userName', visible: true, label: '用户', minWidth: null, sortable: true, overflow: false, align: 'center', width: null},
{key: 'areaName', visible: true, label: '运营区', minWidth: null, sortable: true, overflow: false, align: 'center', width: null},
{key: 'discount', visible: true, label: '优惠', minWidth: null, sortable: true, overflow: false, align: 'center', width: null},
@ -244,6 +250,7 @@ export default {
};
},
created() {
Object.assign(this.queryParams, this.query);
this.getList();
},
methods: {