套餐相关

This commit is contained in:
SjS 2025-04-26 10:02:14 +08:00
parent 06d03ada25
commit 76284b978e

View File

@ -1,18 +1,10 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="商户ID" prop="userId">
<el-form-item label="所属店铺" prop="storeName">
<el-input
v-model="queryParams.userId"
placeholder="请输入商户ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="店铺ID" prop="storeId">
<el-input
v-model="queryParams.storeId"
placeholder="请输入店铺ID"
v-model="queryParams.storeName"
placeholder="请输入店铺名称"
clearable
@keyup.enter.native="handleQuery"
/>
@ -70,8 +62,13 @@
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="套餐名称" align="center" prop="suitName"/>
<el-table-column label="店铺名称" align="center" prop="storeName"/>
<el-table-column label="充值金额" align="center" prop="storeName"/>
<el-table-column label="爆灯次数" align="center" prop="storeName"/>
<el-table-column label="充值金额" align="center" prop="rechargeAmount"/>
<el-table-column label="爆灯次数" align="center" prop="lightingNums"/>
<el-table-column label="套餐状态" align="center" prop="status">
<template slot-scope="scope">
<dict-tag :options="dict.type.suit_status" :value="scope.row.status"/>
</template>
</el-table-column>
<template v-for="column of showColumns">
<el-table-column
:key="column.key"
@ -126,18 +123,38 @@
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body :close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-row>
<form-col :span="span" label="选择店铺" prop="storeId">
<el-select
v-model="form.storeId"
placeholder="请选择店铺"
clearable
filterable
:loading="loading"
>
<el-option
v-for="item in storeOptions"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</form-col>
<form-col :span="span" label="套餐名称" prop="suitName">
<el-input v-model="form.suitName" placeholder="请输入套餐名称" />
</form-col>
<form-col :span="span" label="充值金额" prop="rechargeAmount">
<el-input v-model="form.rechargeAmount" placeholder="请输入充值金额" />
<el-input v-model="form.rechargeAmount" :min="0" placeholder="请输入充值金额" />
</form-col>
<form-col :span="span" label="爆灯次数" prop="lightingNums">
<el-input v-model="form.lightingNums" placeholder="请输入爆灯次数" />
<el-input-number v-model="form.lightingNums" :min="1" placeholder="请输入爆灯次数" />
</form-col>
<form-col :span="span" label="显示顺序" prop="orderNum">
<el-input v-model="form.orderNum" placeholder="请输入显示顺序" />
</form-col>
<form-col :span="span" label="套餐状态" prop="status">
<el-radio v-model="form.status" label="0" >正常</el-radio>
<el-radio v-model="form.status" label="1">禁用</el-radio>
</form-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
@ -152,16 +169,18 @@
import { listSuit, getSuit, delSuit, addSuit, updateSuit } from "@/api/bst/suit";
import { $showColumns } from '@/utils/mixins';
import FormCol from "@/components/FormCol/index.vue";
import {listStore} from "@/api/bst/store";
//
const defaultSort = {
prop: "createTime",
order: "descending"
prop: "order_num",
order: "asc"
}
export default {
name: "Suit",
mixins: [$showColumns],
dicts:['suit_status'],
components: {FormCol},
data() {
return {
@ -171,6 +190,8 @@ export default {
//
loading: true,
//
//
storeOptions:[],
ids: [],
//
single: true,
@ -206,13 +227,40 @@ export default {
form: {},
//
rules: {
storeId: [
{ required: true, message: "店铺不能为空", trigger: "blur" }
],
suitName: [
{ required: true, message: "套餐名称不能为空", trigger: "blur" }
],
rechargeAmount: [
{ required: true, message: "充值金额不能为空", trigger: "blur" },
],
lightingNums: [
{ required: true, message: "爆灯次数不能为空", trigger: "blur" },
],
status: [
{ required: true, message: "套餐状态不能为空", trigger: "blur" }
],
}
};
},
created() {
this.getList();
this.getStoreList();
},
methods: {
/** 查询店铺列表 */
getStoreList() {
this.loading = true;
listStore().then(response => {
this.storeOptions = (response.rows || []).map(item => ({
value: item.storeId,
label: item.storeName
}))
this.loading = false
});
},
/** 当排序按钮被点击时触发 **/
onSortChange(column) {
if (column.order == null) {