修改管理员店铺列表筛选,商户号修改为手机号,正式/测试修改为商户版本,

This commit is contained in:
2026-02-03 10:26:09 +08:00
parent 782bd19e4e
commit a5b11cf4f4
2 changed files with 90 additions and 26 deletions

View File

@@ -110,11 +110,21 @@
/>
</div>
</el-form-item>
<el-form-item label="试用/正式">
<el-form-item label="商户版本">
<el-radio-group v-model="state.form.profiles">
<el-radio-button value="probation">试用</el-radio-button>
<el-radio-button value="release">正式</el-radio-button>
</el-radio-group>
<div class="tips">
<el-alert
title="请谨慎修改"
type="warning"
size="7"
effect="dark"
show-icon
:closable="false"
/>
</div>
</el-form-item>
<el-form-item label="激活码">
<el-input v-model="state.form.activateCode" placeholder="请输入激活码"></el-input>

View File

@@ -3,19 +3,50 @@
<div class="head-container">
<el-row :gutter="20">
<el-col :span="3">
<el-input v-model="state.query.name" clearable placeholder="请输入店铺名称" style="width: 100%" class="filter-item"
@keyup.enter="getTableData" />
<el-input
v-model="state.query.name"
clearable
placeholder="请输入店铺名称"
style="width: 100%"
class="filter-item"
@keyup.enter="getTableData"
/>
</el-col>
<el-col :span="3">
<el-input v-model="state.query.account" clearable placeholder="请输入商户号" style="width: 100%" class="filter-item"
@keyup.enter="getTableData" />
<el-input
v-model="state.query.phone"
clearable
placeholder="请输入手机号"
style="width: 100%"
class="filter-item"
@keyup.enter="getTableData"
/>
</el-col>
<el-col :span="3">
<el-select v-model="state.query.status" placeholder="请选择店铺状态" style="width: 100%">
<el-option v-for="item in state.status" :key="item.type" :label="item.label" :value="item.type" />
<el-option
v-for="item in state.status"
:key="item.type"
:label="item.label"
:value="item.type"
/>
</el-select>
</el-col>
<el-col :span="6">
<el-col :span="3">
<el-select
v-model="state.query.profiles"
placeholder="请选择商户版本"
style="width: 100%"
>
<el-option
v-for="item in state.profiles"
:key="item.type"
:label="item.label"
:value="item.type"
/>
</el-select>
</el-col>
<el-col :span="3">
<el-button type="primary" @click="getTableData">查询</el-button>
<el-button @click="resetHandle">重置</el-button>
</el-col>
@@ -29,8 +60,10 @@
<el-table-column label="店铺信息" width="200">
<template v-slot="scope">
<div class="shop_info">
<el-image :src="scope.row.logo"
style="width: 50px; height: 50px; border-radius: 4px; background-color: #efefef">
<el-image
:src="scope.row.logo"
style="width: 50px; height: 50px; border-radius: 4px; background-color: #efefef"
>
<template #error>
<div class="img_error">
<i class="icon el-icon-document-delete" />
@@ -57,7 +90,7 @@
</div>
</template>
</el-table-column>
<el-table-column label="登录账号" prop="phone"></el-table-column>
<el-table-column label="手机号" prop="phone"></el-table-column>
<el-table-column prop="registerType" label="经营模式">
<template v-slot="scope">
<span v-if="scope.row.registerType == 'before'">快餐版</span>
@@ -70,7 +103,8 @@
<span v-if="scope.row.shopType == 'only'">单店</span>
<span v-if="scope.row.shopType == 'chain'">连锁店</span>
<span v-if="scope.row.shopType == 'join'">加盟店</span>
<div v-if="scope.row.shopType != 'only' && scope.row.isHeadShop == 0">(主店{{ scope.row.headShopName }})
<div v-if="scope.row.shopType != 'only' && scope.row.isHeadShop == 0">
(主店{{ scope.row.headShopName }})
</div>
</div>
</template>
@@ -113,7 +147,9 @@
<template #dropdown>
<el-dropdown-menu>
<el-dropdown-item v-if="scope.row.isHeadShop == 1" :command="0">添加分店</el-dropdown-item>
<el-dropdown-item v-if="scope.row.isHeadShop == 1" :command="0">
添加分店
</el-dropdown-item>
<el-dropdown-item :command="{ row: scope.row, command: 1 }">
支付配置
</el-dropdown-item>
@@ -129,9 +165,14 @@
</el-table>
</div>
<div class="head-container">
<el-pagination v-model:current-page="state.tableData.page" v-model:page-size="state.tableData.size"
:total="state.tableData.total" :page-sizes="[10, 20, 30, 50, 100]"
layout="total, sizes , prev, pager ,next, jumper " @current-change="paginationChange" />
<el-pagination
v-model:current-page="state.tableData.page"
v-model:page-size="state.tableData.size"
:total="state.tableData.total"
:page-sizes="[10, 20, 30, 50, 100]"
layout="total, sizes , prev, pager ,next, jumper "
@current-change="paginationChange"
/>
</div>
<addShop ref="refAddShop" @success="getTableData" />
<!-- <detailModal ref="refDetailModal" /> -->
@@ -149,7 +190,7 @@ import addShop from "./components/addShop.vue";
import detailModal from "./components/detailModal.vue";
import { useRouter } from "vue-router";
const router = useRouter()
const router = useRouter();
const refActivateCode = ref(null);
function activateCodeShow(row) {
@@ -162,8 +203,9 @@ function addShopShow(row) {
const state = reactive({
query: {
name: "",
account: "",
phone: "",
status: "",
profiles: "",
},
status: [
{
@@ -175,6 +217,16 @@ const state = reactive({
label: "关闭",
},
],
profiles: [
{
type: "probation",
label: "试用版",
},
{
type: "release",
label: "正式版",
},
],
tableData: {
list: [],
page: 1,
@@ -192,24 +244,24 @@ function dropdownClick(e, row) {
console.log(e);
console.log(row);
if (e == 0) {
refAddShop.value.show({ mainId: row.id, shopType: row.shopType, isHeadShop: 0 }, 'addBranch');
refAddShop.value.show({ mainId: row.id, shopType: row.shopType, isHeadShop: 0 }, "addBranch");
return;
}
if (e.command == 1) {
console.log('row===', row);
console.log("row===", row);
// refDetailModal.value.show(e.row);
router.push({
name: 'pay_setting',
name: "pay_setting",
query: {
shopId: row.id,
shopType: row.shopType,
isHeadShop: row.isHeadShop,
mainId: row.mainId,
shopName: row.shopName
}
})
shopName: row.shopName,
},
});
return;
}
if (e == 5) {
@@ -226,15 +278,16 @@ function dropdownClick(e, row) {
});
getTableData();
})
.catch(() => { });
.catch(() => {});
return;
}
}
// 重置查询
function resetHandle() {
state.query.name = "";
state.query.account = "";
state.query.phone = "";
state.query.status = "";
state.query.profiles = "";
getTableData();
}
// 分页回调
@@ -250,8 +303,9 @@ async function getTableData() {
page: state.tableData.page,
size: state.tableData.size,
shopName: state.query.name,
account: state.query.account,
phone: state.query.phone,
status: state.query.status,
profiles: state.query.profiles,
});
state.tableData.loading = false;
state.tableData.list = res.records;