账户账号调整

This commit is contained in:
BabyBoy 2025-09-11 10:50:36 +08:00
parent 2dab9030dc
commit b35926bbf1
6 changed files with 105 additions and 50 deletions

View File

@ -68,12 +68,14 @@
<size-select id="size-select" class="right-menu-item hover-effect" /> <size-select id="size-select" class="right-menu-item hover-effect" />
</el-tooltip>--> </el-tooltip>-->
</template> </template>
{{ userStore.name }}
<div class="avatar-container"> <div class="avatar-container">
<el-dropdown class="right-menu-item hover-effect" trigger="click" @command="handleCommand"> <el-dropdown class="right-menu-item hover-effect" trigger="click" @command="handleCommand">
<div class="avatar-wrapper"> <div class="avatar-wrapper">
<img :src="userStore.avatar" class="user-avatar" /> <img :src="userStore.avatar" class="user-avatar" />
<el-icon><caret-bottom /></el-icon> <el-icon><caret-bottom /></el-icon>
</div> </div>
<template #dropdown> <template #dropdown>
<el-dropdown-menu> <el-dropdown-menu>
<router-link v-if="!dynamic" to="/user/profile"> <router-link v-if="!dynamic" to="/user/profile">

View File

@ -1,10 +1,11 @@
import { to } from 'await-to-js';
import { getToken, removeToken, setToken } from '@/utils/auth'; import { getToken, removeToken, setToken } from '@/utils/auth';
import { login as loginApi, logout as logoutApi, getInfo as getUserInfo } from '@/api/login'; import { getInfo as getUserInfo, login as loginApi, logout as logoutApi } from '@/api/login';
import { LoginData } from '@/api/types'; import { LoginData } from '@/api/types';
import defAva from '@/assets/images/profile.jpg'; import defAva from '@/assets/images/profile.jpg';
import { defineStore } from 'pinia'; import { defineStore } from 'pinia';
import { ref } from 'vue'; import { ref } from 'vue';
import { to } from 'await-to-js';
export const useUserStore = defineStore('user', () => { export const useUserStore = defineStore('user', () => {
const token = ref(getToken()); const token = ref(getToken());
@ -75,6 +76,7 @@ export const useUserStore = defineStore('user', () => {
tenantId, tenantId,
token, token,
nickname, nickname,
name,
avatar, avatar,
roles, roles,
permissions, permissions,

View File

@ -3,13 +3,6 @@
<transition :enter-active-class="proxy?.animate.searchAnimate.enter" :leave-active-class="proxy?.animate.searchAnimate.leave"> <transition :enter-active-class="proxy?.animate.searchAnimate.enter" :leave-active-class="proxy?.animate.searchAnimate.leave">
<div v-show="true" class="search"> <div v-show="true" class="search">
<el-form ref="queryFormRef" :model="queryParams" :inline="true"> <el-form ref="queryFormRef" :model="queryParams" :inline="true">
<el-form-item label="类型" prop="type">
<el-select v-model="queryParams.type" placeholder="请选择类型" clearable @keyup.enter="handleQuery">
<el-option label="商家" value="1" />
<el-option label="代理" value="2" />
<el-option label="平台" value="3" />
</el-select>
</el-form-item>
<el-form-item label="商家名称" prop="type"> <el-form-item label="商家名称" prop="type">
<el-input v-model="queryParams.storeName" placeholder="请输入商家名称" clearable /> <el-input v-model="queryParams.storeName" placeholder="请输入商家名称" clearable />
</el-form-item> </el-form-item>
@ -32,11 +25,6 @@
{{ scope.row.type === 1 ? '商家' : scope.row.type === 2 ? '代理' : '平台' }} {{ scope.row.type === 1 ? '商家' : scope.row.type === 2 ? '代理' : '平台' }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" align="center" width="180">
<template #default="scope">
<el-button type="primary" @click="handleSeach(scope.row)">查看明细</el-button>
</template>
</el-table-column>
</el-table> </el-table>
<div class="block"> <div class="block">
<pagination <pagination
@ -47,14 +35,6 @@
@pagination="getListList" @pagination="getListList"
/> />
</div> </div>
<el-dialog v-model="dialogVisible" title="明细" width="1200px" append-to-body>
<el-table :data="tableData" style="width: 100%">
<el-table-column label="序号" align="center" type="index" width="80" />
<el-table-column label="订单号" align="center" prop="orderNo" :show-overflow-tooltip="true" />
<el-table-column label="订单金额" align="center" prop="orderAmount" :show-overflow-tooltip="true" />
<el-table-column label="积分" align="center" prop="integralBalance" :show-overflow-tooltip="true" />
</el-table>
</el-dialog>
</el-card> </el-card>
</div> </div>
</template> </template>
@ -62,15 +42,14 @@
<script setup name="Online" lang="ts"> <script setup name="Online" lang="ts">
import { AccountQuery, VersionList } from '@/api/account/types'; import { AccountQuery, VersionList } from '@/api/account/types';
import { getList } from '@/api/account/index'; import { getList } from '@/api/account/index';
import { propTypes } from '@/utils/propTypes'; import { getDictionaryByKey } from '@/utils/dict';
const { proxy } = getCurrentInstance() as ComponentInternalInstance; const { proxy } = getCurrentInstance() as ComponentInternalInstance;
const { sys_device_type } = toRefs<any>(proxy?.useDict('sys_device_type'));
// //
const queryParams = ref<AccountQuery>({ const queryParams = ref<AccountQuery>({
current: 1, current: 1,
size: 10, size: 10,
type: '', type: 2,
storeName: '' storeName: ''
}); });
// //
@ -87,39 +66,23 @@ const getListList = async () => {
const handleQuery = () => { const handleQuery = () => {
getListList(); getListList();
}; };
const tableData = ref([]);
const dialogVisible = ref(false);
//
const handleSeach = (row: any) => {
dialogVisible.value = true;
console.log(row);
};
const resetQuery = () => { const resetQuery = () => {
queryParams.value = { queryParams.value = {
current: 1, current: 1,
size: 10, size: 10,
type: '', type: 2,
storeName: '' storeName: ''
}; };
getListList(); getListList();
}; };
const handldDelOnline = (row: any) => { const signList = ref([]);
ElMessageBox.confirm('确定要删除吗?', '提示', { const getByKey = async () => {
confirmButtonText: '确定', const value1 = await getDictionaryByKey('sys_tenant_type');
cancelButtonText: '取消', signList.value = value1;
type: 'warning'
}).then(async () => {
const obj = {
id: row.id
};
// const res = await getDel({ id: row.id });
// if (res.code === 200) {
// ElMessage.success('');
// getListList();
// }
});
}; };
onMounted(() => { onMounted(() => {
getListList(); getListList();
getByKey();
}); });
</script> </script>

View File

@ -594,7 +594,7 @@ const data = reactive<PageData<TenantForm, TenantQuery>>({
pageNum: 1, pageNum: 1,
current: 1, current: 1,
size: 10, size: 10,
type: 1, type: 3,
county: null, // county: null, //
contactUserName: null, // contactUserName: null, //
contactPhone: null, // contactPhone: null, //

View File

@ -0,0 +1,88 @@
<template>
<div class="p-2">
<transition :enter-active-class="proxy?.animate.searchAnimate.enter" :leave-active-class="proxy?.animate.searchAnimate.leave">
<div v-show="true" class="search">
<el-form ref="queryFormRef" :model="queryParams" :inline="true">
<el-form-item label="商家名称" prop="type">
<el-input v-model="queryParams.storeName" placeholder="请输入商家名称" clearable />
</el-form-item>
<el-form-item>
<el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
<el-button icon="Refresh" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
</div>
</transition>
<el-card shadow="hover">
<el-table :data="devices" border style="width: 100%; height: 100%; font-size: 14px">
<el-table-column label="账户名称" align="center" prop="storeName" :show-overflow-tooltip="true" />
<el-table-column label="钱包" align="center" prop="wallet" :show-overflow-tooltip="true" />
<el-table-column label="应收" align="center" prop="revenue" :show-overflow-tooltip="true" />
<el-table-column label="积分" align="center" prop="integralBalance" :show-overflow-tooltip="true" />
<el-table-column label="创建时间" align="center" prop="createTime" width="180" />
<el-table-column label="账户类型" align="center" prop="type" width="180">
<template #default="scope">
{{ scope.row.type === 1 ? '商家' : scope.row.type === 2 ? '代理' : '平台' }}
</template>
</el-table-column>
</el-table>
<div class="block">
<pagination
v-if="totalref > 0"
:total="totalref"
v-model:page="queryParams.current"
v-model:limit="queryParams.size"
@pagination="getListList"
/>
</div>
</el-card>
</div>
</template>
<script setup name="Online" lang="ts">
import { AccountQuery, VersionList } from '@/api/account/types';
import { getList } from '@/api/account/index';
import { getDictionaryByKey } from '@/utils/dict';
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
//
const queryParams = ref<AccountQuery>({
current: 1,
size: 10,
type: 3,
storeName: ''
});
//
const devices = ref<VersionList[]>([]);
//
const totalref = ref<number>(0);
const getListList = async () => {
const res = await getList(queryParams.value);
if (res.code === 200) {
devices.value = res.data.records;
totalref.value = res.data.total;
}
};
const handleQuery = () => {
getListList();
};
const resetQuery = () => {
queryParams.value = {
current: 1,
size: 10,
type: 3,
storeName: ''
};
getListList();
};
const signList = ref([]);
const getByKey = async () => {
const value1 = await getDictionaryByKey('sys_tenant_type');
signList.value = value1;
};
onMounted(() => {
getListList();
getByKey();
});
</script>

View File

@ -854,7 +854,7 @@ const initFormData: TenantForm = {
promoteList: '', //广 promoteList: '', //广
related: '', // related: '', //
certificate: '', // certificate: '', //
type: 0 type: 2
}; };
const data = reactive<PageData<TenantForm, TenantQuery>>({ const data = reactive<PageData<TenantForm, TenantQuery>>({