From 3378e709cf763a8df46decb55c3559ca73b59481 Mon Sep 17 00:00:00 2001 From: Echo <1711788888@qq.com> Date: Tue, 9 Sep 2025 07:21:39 +0800 Subject: [PATCH] =?UTF-8?q?:art:=20=E6=96=B0=E5=A2=9Evip=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E4=BB=A5=E5=8F=8A=E8=AE=B2=E5=B8=88=E5=8C=85?= =?UTF-8?q?=E6=9C=88=E6=9C=8D=E5=8A=A1=E7=AE=A1=E7=90=86=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/goods/teacherVip.js | 39 ++++ src/api/user/index.js | 19 ++ src/config.js | 94 ++++++++- src/pathInfo.json | 2 + src/view/goods/teacher_vip/index.vue | 279 +++++++++++++++++++++++++++ src/view/user/user/loginLog.vue | 106 ++++++++++ src/view/user/user/vipUser.vue | 186 ++++++++++++++++++ 7 files changed, 717 insertions(+), 8 deletions(-) create mode 100644 src/api/goods/teacherVip.js create mode 100644 src/view/goods/teacher_vip/index.vue create mode 100644 src/view/user/user/loginLog.vue create mode 100644 src/view/user/user/vipUser.vue diff --git a/src/api/goods/teacherVip.js b/src/api/goods/teacherVip.js new file mode 100644 index 0000000..a4ce514 --- /dev/null +++ b/src/api/goods/teacherVip.js @@ -0,0 +1,39 @@ +import service from '@/utils/request' + + +export const list = (params) => { + return service({ + url: '/app_user/teacher_vips', + method: 'get', + params + }) +} + +export const add = (data) => { + return service({ + url: '/app_user/teacher_vip', + method: 'post', + data + }) +} +export const edit = (data) => { + return service({ + url: '/app_user/teacher_vip', + method: 'put', + data + }) +} +export const del = (data) => { + return service({ + url: '/app_user/teacher_vip', + method: 'delete', + data + }) +} +export const detail = (params) => { + return service({ + url: '/app_user/teacher_vip', + method: 'get', + params + }) +} diff --git a/src/api/user/index.js b/src/api/user/index.js index 5730620..9a6bd12 100644 --- a/src/api/user/index.js +++ b/src/api/user/index.js @@ -84,4 +84,23 @@ export const getLoginInfo = (params) => { method: 'get', params }) +} + +// RemoveUserVip +export const removeUserVip = (data) => { + return service({ + url: '/app_user/vip', + method: 'delete', + data + }) +} + + +// getVipUserList +export const getVipUserList = (params) => { + return service({ + url: '/app_user/vip/list', + method: 'get', + params + }) } \ No newline at end of file diff --git a/src/config.js b/src/config.js index a50fc01..9b5191f 100644 --- a/src/config.js +++ b/src/config.js @@ -292,6 +292,90 @@ export const ORDER_TABLE_CONFIG = { ] } +// VIP用户搜索配置 +export const VIP_USER_SEARCH_CONFIG = [ + { + type: 'input', + prop: 'user_id', + label: '用户ID', + placeholder: '请输入用户ID', + }, + { + type: 'input', + prop: 'name', + label: '用户名称', + placeholder: '请输入用户名称', + } +] + +// VIP用户表格配置 +export const VIP_USER_TABLE_CONFIG = { + index: true, + schemes: [ + { + attrs: { + label: '头像', + prop: 'avatar', + align: 'center' + }, + slot: 'avatar' + }, + { + attrs: { + label: '用户ID', + prop: 'id', + align: 'center' + } + }, + { + attrs: { + label: '用户名称', + prop: 'nick_name', + align: 'center' + } + }, + { + attrs: { + label: '手机号', + prop: 'phone', + align: 'center' + } + }, + { + attrs: { + label: 'VIP等级', + prop: 'user_label', + align: 'center' + }, + slot: 'user_label' + }, + { + attrs: { + label: 'VIP到期时间', + prop: 'vip_expire_time', + align: 'center' + }, + slot: 'vip_expire_time' + }, + { + attrs: { + label: '账户余额', + prop: 'balance', + align: 'center' + }, + slot: 'balance' + }, + { + attrs: { + label: '操作', + prop: 'operate', + align: 'center' + }, + slot: 'operate' + } + ] +} + // 用户登录日志搜索配置 export const LOGIN_LOG_SEARCH_CONFIG = [ { @@ -371,17 +455,11 @@ export const LOGIN_LOG_TABLE_CONFIG = { } ] } + // 用户列表 export const USER_TABLE_CONFIG = { index: true, schemes: [ - { - attrs: { - label: 'ID', - prop: 'ID', - align: 'center' - } - }, { attrs: { label: '头像', @@ -505,4 +583,4 @@ export const ARTICLE_TABLE_CONFIG = { slot: 'operate' } ] -} +} \ No newline at end of file diff --git a/src/pathInfo.json b/src/pathInfo.json index a99ac93..1678871 100644 --- a/src/pathInfo.json +++ b/src/pathInfo.json @@ -90,7 +90,9 @@ "/src/view/systemTools/version/version.vue": "SysVersion", "/src/view/user/index.vue": "UserManage", "/src/view/user/user/index.vue": "Index", + "/src/view/user/user/loginLog.vue": "LoginLog", "/src/view/user/user/teacherApply.vue": "TeacherApply", + "/src/view/user/user/vipUser.vue": "VipUser", "/src/plugin/announcement/form/info.vue": "InfoForm", "/src/plugin/announcement/view/info.vue": "Info", "/src/plugin/customerservice/view/chat/index.vue": "ServiceMain", diff --git a/src/view/goods/teacher_vip/index.vue b/src/view/goods/teacher_vip/index.vue new file mode 100644 index 0000000..36deaef --- /dev/null +++ b/src/view/goods/teacher_vip/index.vue @@ -0,0 +1,279 @@ + + + + + diff --git a/src/view/user/user/loginLog.vue b/src/view/user/user/loginLog.vue new file mode 100644 index 0000000..10fede4 --- /dev/null +++ b/src/view/user/user/loginLog.vue @@ -0,0 +1,106 @@ + + + + + diff --git a/src/view/user/user/vipUser.vue b/src/view/user/user/vipUser.vue new file mode 100644 index 0000000..88a18f1 --- /dev/null +++ b/src/view/user/user/vipUser.vue @@ -0,0 +1,186 @@ + + + + +