feat: 增强用户登录体验与组件逻辑优化

- 在多个组件中添加用户登录状态检查,确保用户在进行特定操作前已登录。
- 更新购物车、消息中心等组件的点击事件,未登录时提示用户登录。
- 优化优惠券领取逻辑,未登录时引导用户登录。
- 调整样式以提升组件一致性,确保用户界面友好。
This commit is contained in:
田香琪
2026-07-10 13:31:14 +08:00
parent c355194aba
commit d648855533
23 changed files with 302 additions and 760 deletions

View File

@@ -468,18 +468,28 @@ export default {
this.$refs.memberGroupForm.validate((valid) => {
if (!valid) return;
const memberIds = this.selectedRows.map((item) => item.id);
const groupId = this.memberGroupForm.groupId;
this.memberGroupLoading = true;
API_Member.addMemberGroupUsers(this.memberGroupForm.groupId, memberIds).then((res) => {
this.memberGroupLoading = false;
if (res && res.success) {
Promise.all(
memberIds.map((memberId) => API_Member.setMemberUserGroups(memberId, [groupId]))
)
.then((results) => {
this.memberGroupLoading = false;
const failed = results.find((res) => !res || !res.success);
if (failed) {
ElMessage.error(failed.message || "设置失败");
return;
}
ElMessage.success("设置成功");
this.memberGroupFlag = false;
this.selectedRows = [];
this.clearSelection();
} else if (res && res.message) {
ElMessage.error(res.message);
}
});
this.getData();
})
.catch(() => {
this.memberGroupLoading = false;
ElMessage.error("设置失败,请稍后重试");
});
});
},
callback(val) {

View File

@@ -90,7 +90,7 @@ export default {
this.hotWordsChart.tooltip({
showMarkers: false,
});
this.hotWordsChart.interval().position("keywords*score").color("#f59b99");
this.hotWordsChart.interval().position("keywords*score").color("#409EFF");
this.hotWordsChart.interaction("element-active");
this.hotWordsChart.render();