当前登录人不是超级用户,是默认添加当前登录人的手机号或者账号传给后端。
This commit is contained in:
@@ -63,6 +63,15 @@
|
|||||||
confirm-type="search"
|
confirm-type="search"
|
||||||
@confirm="onServiceStatusSearch"
|
@confirm="onServiceStatusSearch"
|
||||||
/>
|
/>
|
||||||
|
<input
|
||||||
|
v-if="isAdmin"
|
||||||
|
class="toolbar-input"
|
||||||
|
v-model="serviceStatusQuery.salesPhone"
|
||||||
|
placeholder="销售电话"
|
||||||
|
placeholder-style="color: #b0b0b0"
|
||||||
|
confirm-type="search"
|
||||||
|
@confirm="onServiceStatusSearch"
|
||||||
|
/>
|
||||||
<view class="toolbar-actions">
|
<view class="toolbar-actions">
|
||||||
<view class="toolbar-btn toolbar-btn--refresh" @click="onServiceStatusRefresh">
|
<view class="toolbar-btn toolbar-btn--refresh" @click="onServiceStatusRefresh">
|
||||||
<uni-icons type="refresh" size="18" color="#2A68FF"></uni-icons>
|
<uni-icons type="refresh" size="18" color="#2A68FF"></uni-icons>
|
||||||
@@ -438,8 +447,11 @@ import CommonBeginReception from "./common_begin_reception.vue";
|
|||||||
},
|
},
|
||||||
serviceStatusQuery: {
|
serviceStatusQuery: {
|
||||||
salesName: '',
|
salesName: '',
|
||||||
customerName: ''
|
customerName: '',
|
||||||
|
salesPhone: ''
|
||||||
},
|
},
|
||||||
|
isAdmin: false,
|
||||||
|
currentUserPhone: '',
|
||||||
receptionForm: {
|
receptionForm: {
|
||||||
id: "",
|
id: "",
|
||||||
customerName: "",
|
customerName: "",
|
||||||
@@ -499,9 +511,13 @@ import CommonBeginReception from "./common_begin_reception.vue";
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
onLoad() {
|
onLoad() {
|
||||||
this.fetchServiceStatusList();
|
|
||||||
// 加载当前登录用户信息,填充销售姓名和电话
|
// 加载当前登录用户信息,填充销售姓名和电话
|
||||||
this.loadCurrentUserInfo();
|
this.loadCurrentUserInfo();
|
||||||
|
// 检查用户角色
|
||||||
|
this.checkUserRole();
|
||||||
|
// 获取当前用户手机号
|
||||||
|
this.loadCurrentUserPhone();
|
||||||
|
this.fetchServiceStatusList();
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
/**
|
/**
|
||||||
@@ -533,6 +549,51 @@ import CommonBeginReception from "./common_begin_reception.vue";
|
|||||||
console.error('加载当前登录用户信息失败:', e);
|
console.error('加载当前登录用户信息失败:', e);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
/**
|
||||||
|
* 检查用户角色,判断是否包含admin
|
||||||
|
* 只要角色中包含admin字符串(如admin_furniture),就视为admin角色
|
||||||
|
*/
|
||||||
|
checkUserRole() {
|
||||||
|
try {
|
||||||
|
const normalize = (val) =>
|
||||||
|
typeof val === 'string'
|
||||||
|
? val
|
||||||
|
.split(',')
|
||||||
|
.map((s) => s.trim().toLowerCase())
|
||||||
|
.filter(Boolean)
|
||||||
|
: [];
|
||||||
|
const storedRole = uni.getStorageSync('backend-role-name') || '';
|
||||||
|
const loginResp = uni.getStorageSync('backend-login-response') || {};
|
||||||
|
const respRole = loginResp.roleName || '';
|
||||||
|
const roles = [...normalize(storedRole), ...normalize(respRole)];
|
||||||
|
// 检查角色数组中是否有任何角色包含 'admin' 字符串
|
||||||
|
this.isAdmin = roles.some(role => role.includes('admin'));
|
||||||
|
console.log('用户角色检查:', { storedRole, respRole, roles, isAdmin: this.isAdmin });
|
||||||
|
} catch (e) {
|
||||||
|
console.error('检查用户角色失败:', e);
|
||||||
|
this.isAdmin = false;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
/**
|
||||||
|
* 加载当前用户手机号或登录账户
|
||||||
|
* 优先使用手机号,如果没有手机号则使用登录账户
|
||||||
|
*/
|
||||||
|
loadCurrentUserPhone() {
|
||||||
|
try {
|
||||||
|
const loginResponse = uni.getStorageSync('backend-login-response') || {};
|
||||||
|
// 优先使用手机号,如果没有手机号则使用登录账户(userName)
|
||||||
|
if (loginResponse.phone) {
|
||||||
|
this.currentUserPhone = loginResponse.phone;
|
||||||
|
} else if (loginResponse.userName) {
|
||||||
|
this.currentUserPhone = loginResponse.userName;
|
||||||
|
} else {
|
||||||
|
this.currentUserPhone = '';
|
||||||
|
}
|
||||||
|
} catch (e) {
|
||||||
|
console.error('加载当前用户手机号或登录账户失败:', e);
|
||||||
|
this.currentUserPhone = '';
|
||||||
|
}
|
||||||
|
},
|
||||||
goBack() {
|
goBack() {
|
||||||
uni.navigateBack();
|
uni.navigateBack();
|
||||||
},
|
},
|
||||||
@@ -612,6 +673,20 @@ import CommonBeginReception from "./common_begin_reception.vue";
|
|||||||
queryParams.customerName = trimmedCustomerName;
|
queryParams.customerName = trimmedCustomerName;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 根据角色处理销售电话查询条件
|
||||||
|
if (this.isAdmin) {
|
||||||
|
// 如果是admin,使用搜索框中的销售电话
|
||||||
|
const trimmedSalesPhone = this.serviceStatusQuery?.salesPhone?.trim();
|
||||||
|
if (trimmedSalesPhone) {
|
||||||
|
queryParams.salesPhone = trimmedSalesPhone;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// 如果不是admin,默认添加当前登录人的手机号或登录账户
|
||||||
|
if (this.currentUserPhone) {
|
||||||
|
queryParams.salesPhone = this.currentUserPhone;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// 确保 serviceStatus 始终存在
|
// 确保 serviceStatus 始终存在
|
||||||
queryParams.serviceStatus = '服务中';
|
queryParams.serviceStatus = '服务中';
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user