From 3d43cd90f46f76316dbde60cb96cfbdc43152e90 Mon Sep 17 00:00:00 2001
From: zxl <763096477@qq.com>
Date: 星期四, 19 六月 2025 20:03:55 +0800
Subject: [PATCH] 注释客户管理,用户权限页面优化
---
pages/tabbar/user/utils/tool.vue | 5 -
pages.json | 40 ++++++------
pages/userPermissions/userPermissions.vue | 83 ++++++++++++---------------
3 files changed, 58 insertions(+), 70 deletions(-)
diff --git a/pages.json b/pages.json
index dc05e07..7f9740c 100644
--- a/pages.json
+++ b/pages.json
@@ -271,26 +271,26 @@
}
}
},
- {
- "path": "pages/customerManager/customerManager",
- "style": {
- "navigationBarTitleText": "瀹㈡埛绠$悊",
- "componentPlaceholder": {
- "u-icon": "view",
- "u-button": "view",
- "u-form": "view",
- "u-form-item": "view",
- "u-input": "view",
- "u-popup": "view",
- "u-search": "view",
- "u-loading": "view",
- "u-checkbox": "view",
- "u-checkbox-group": "view",
- "u-navbar": "view",
- "u-loadmore":"view"
- }
- }
- },
+ // {
+ // "path": "pages/customerManager/customerManager",
+ // "style": {
+ // "navigationBarTitleText": "瀹㈡埛绠$悊",
+ // "componentPlaceholder": {
+ // "u-icon": "view",
+ // "u-button": "view",
+ // "u-form": "view",
+ // "u-form-item": "view",
+ // "u-input": "view",
+ // "u-popup": "view",
+ // "u-search": "view",
+ // "u-loading": "view",
+ // "u-checkbox": "view",
+ // "u-checkbox-group": "view",
+ // "u-navbar": "view",
+ // "u-loadmore":"view"
+ // }
+ // }
+ // },
{
"path": "pages/userPermissions/addStoreMember",
"style": {
diff --git a/pages/tabbar/user/utils/tool.vue b/pages/tabbar/user/utils/tool.vue
index 3086852..9bf9844 100644
--- a/pages/tabbar/user/utils/tool.vue
+++ b/pages/tabbar/user/utils/tool.vue
@@ -67,10 +67,10 @@
<view>鐢ㄦ埛鏉冮檺</view>
</view>
- <view class="interact-item" v-if="isStoreManger" @click="navigateTo('/pages/customerManager/customerManager')">
+ <!-- <view class="interact-item" v-if="isStoreManger" @click="navigateTo('/pages/customerManager/customerManager')">
<image src="/static/mine/shensu.png" mode=""></image>
<view>瀹㈡埛绠$悊</view>
- </view>
+ </view> -->
<view class="interact-item" @click="navigateTo('/pages/order/complain/complainList')">
<image src="/static/mine/shensu.png" mode=""></image>
<view>鎴戠殑鎶曡瘔</view>
@@ -152,7 +152,6 @@
}
},
onReady(){
- console.log(123)
getUserInfo().then(res => {
if(res.data.result){
if(res.data.result.storeId){
diff --git a/pages/userPermissions/userPermissions.vue b/pages/userPermissions/userPermissions.vue
index 7edfdf3..ba88818 100644
--- a/pages/userPermissions/userPermissions.vue
+++ b/pages/userPermissions/userPermissions.vue
@@ -3,30 +3,29 @@
<!-- 鏍囬 -->
<view class="header">
<text class="title">鐢ㄦ埛鍒楄〃</text>
-
</view>
<view>
<button class="add-btn" @click="navigateToAdd()" :disabled="!isShopkeeper">鏂板鐢ㄦ埛</button>
</view>
<!-- 鎼滅储妗� -->
<view class="search-box">
- <u-search v-model="query.realName" placeholder="鎼滅储濮撳悕" :showAction="false" @change="searchUser()"></u-search>
+ <u-search v-model="query.realName" placeholder="鎼滅储濮撳悕" :showAction="false" @change="searchClerk()"></u-search>
</view>
<!-- 鐢ㄦ埛鍒楄〃 -->
- <scroll-view scroll-y class="user-list" @scrolltolower="loadMore" v-if="userList.length > 0">
- <view class="user-item" v-for="(user, index) in userList" :key="user.id" >
+ <scroll-view scroll-y class="clerk-list" @scrolltolower="loadMore" v-if="clerkList.length > 0">
+ <view class="clerk-item" v-for="(clerk, index) in clerkList" :key="clerk.id" >
- <view class="user-info">
- <text class="realName">{{ user.realName ? user.realName: '鏈缃汉鍚�' }}</text>
- <text class="mobile">{{ user.mobile }}</text>
+ <view class="clerk-info">
+ <text class="realName">{{ clerk.realName ? clerk.realName: '鏈缃汉鍚�' }}</text>
+ <text class="mobile">{{ clerk.mobile }}</text>
</view>
<!-- 鎿嶄綔鎸夐挳鍖哄煙 -->
<view class="action-buttons">
- <u-button type="primary" size="mini" @click.stop="restPassword(user.memberId)" class="edit-btn" :disabled="!checkPermission(user)">閲嶇疆瀵嗙爜</u-button>
- <u-button type="primary" size="mini" @click.stop="navigateToDetail(user.id)" class="edit-btn" :disabled="!checkPermission(user)">淇敼</u-button>
- <u-button type="error" size="mini" @click.stop="deleteUser(user.id)"
- class="delete-btn" :disabled="!checkPermission(user)">鍒犻櫎</u-button>
+ <u-button type="primary" size="mini" @click.stop="restPassword(clerk.memberId)" class="edit-btn" :disabled="!checkPermission(clerk)">閲嶇疆瀵嗙爜</u-button>
+ <u-button type="primary" size="mini" @click.stop="navigateToDetail(clerk.id)" class="edit-btn" :disabled="!checkPermission(clerk)">淇敼</u-button>
+ <u-button type="error" size="mini" @click.stop="deleteUser(clerk.id)"
+ class="delete-btn" :disabled="!checkPermission(clerk)">鍒犻櫎</u-button>
</view>
</view>
@@ -35,7 +34,7 @@
<view class="load-more">
<u-loadmore
- v-if="userList.length > 0"
+ v-if="clerkList.length > 0"
:status="loading ? 'loading' : noMore ? 'nomore' : 'loadmore'"
:load-text="{
loadmore: '涓婃媺鍔犺浇鏇村',
@@ -91,9 +90,10 @@
},
data() {
return {
- userList: [], // 鐢ㄦ埛鍒楄〃鏁版嵁
+ total:0,
+ clerkList: [], // 鐢ㄦ埛鍒楄〃鏁版嵁
loading: false, // 鍔犺浇鐘舵��
- noMoreData: false, // 鏄惁娌℃湁鏇村鏁版嵁
+ noMore: false, // 鏄惁娌℃湁鏇村鏁版嵁
query: {
realName: '',
pageNumber: 1,
@@ -120,14 +120,14 @@
methods: {
//妫�鏌ユ潈闄�
- checkPermission(user){
+ checkPermission(clerk){
if(this.isShopkeeper){
return true;
}
- if(this.clerkId === user.id){
+ if(this.clerkId === clerk.id){
return true;
}else{
- if(this.isSuper && !user.isSuper){
+ if(this.isSuper && !clerk.isSuper){
return true;
}
return false;
@@ -153,15 +153,18 @@
getPage(this.query).then(res => {
uni.hideLoading();
if (res.statusCode === 200) {
- const data = res.data.data;
- if (this.query.pageNumber === 1) {
- this.userList = data || [];
- console.log(this.userList.length)
- } else {
- // 鍚﹀垯杩藉姞鏁版嵁
- this.userList = [...this.userList, ...(data || [])];
-
- }
+ const newData = res.data.data;
+ // 鏇存柊鎬绘暟鎹噺
+ this.total = res.data.total || 0;
+ // 杩藉姞鎴栨浛鎹㈡暟鎹�
+ this.clerkList = this.query.pageNumber === 1 ?
+ newData :
+ [...this.clerkList, ...newData];
+
+ // 鍒ゆ柇鏄惁杩樻湁鏇村鏁版嵁
+ this.noMore = newData.length < this.query.pageSize ||
+ this.clerkList.length >= this.total;
+
}
})
@@ -169,16 +172,16 @@
},
// 鎼滅储鐢ㄦ埛
- searchUser() {
+ searchClerk() {
this.query.pageNumber = 1
- this.noMoreData = false
- this.userList = []
+ this.noMore = false
+ this.clerkList = []
this.getPage()
},
// 鍔犺浇鏇村
loadMore() {
- if (!this.noMoreData) {
+ if (!this.noMore) {
this.query.pageNumber++
this.getPage()
}
@@ -209,20 +212,6 @@
</script>
<style lang="scss" scoped>
- .user-item {
- display: flex;
- justify-content: space-between;
- align-items: center;
- padding: 20rpx;
- border-bottom: 1rpx solid #f5f5f5;
- }
-
- .user-info {
- flex: 1;
- display: flex;
- flex-direction: column;
- }
-
.action-buttons {
display: flex;
margin-left: 20rpx;
@@ -272,12 +261,12 @@
margin-bottom: 20rpx;
}
- .user-list {
+ .clerk-list {
flex: 1;
overflow: hidden;
}
- .user-item {
+ .clerk-item {
display: flex;
align-items: center;
padding: 20rpx;
@@ -293,7 +282,7 @@
margin-right: 20rpx;
}
- .user-info {
+ .clerk-info {
flex: 1;
display: flex;
flex-direction: column;
--
Gitblit v1.8.0