From b944e3751faf7b6813eb06c255ce14e41203c7f3 Mon Sep 17 00:00:00 2001
From: Leo <98382335+gaoziman@users.noreply.github.com>
Date: Mon, 7 Jul 2025 15:53:05 +0800
Subject: [PATCH] =?UTF-8?q?refactor(system):=20=E6=9B=B4=E6=96=B0=E7=B3=BB?=
=?UTF-8?q?=E7=BB=9F=E7=AE=A1=E7=90=86=E6=A8=A1=E5=9D=97=E7=BB=84=E4=BB=B6?=
=?UTF-8?q?=E5=BC=95=E7=94=A8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- 更新用户管理页面中的组件引用从Nova到Coi
- 更新角色管理页面中的组件引用从Nova到Coi
- 更新相关事件处理和方法调用
- 确保功能保持不变
---
src/views/system/role/index.vue | 50 +++++++++----------
src/views/system/user/index.vue | 88 ++++++++++++++++-----------------
2 files changed, 69 insertions(+), 69 deletions(-)
diff --git a/src/views/system/role/index.vue b/src/views/system/role/index.vue
index e41405c..2a9b736 100644
--- a/src/views/system/role/index.vue
+++ b/src/views/system/role/index.vue
@@ -146,7 +146,7 @@
/>
-
@@ -173,7 +173,7 @@
{{ getEmptyActionText() }}
-
+
@@ -195,15 +195,15 @@
-
@@ -275,18 +275,18 @@
-
+
-
@@ -362,7 +362,7 @@
-
+
@@ -373,8 +373,8 @@ import { NButton, NIcon, NPopconfirm, NSpace, NSwitch, NTag, NTooltip, NTree } f
import IconParkOutlineEditOne from '~icons/icon-park-outline/edit-one'
import IconParkOutlineDelete from '~icons/icon-park-outline/delete'
import IconParkOutlineShield from '~icons/icon-park-outline/shield'
-import NovaDialog from '@/components/common/NovaDialog.vue'
-import NovaEmpty from '@/components/common/NovaEmpty.vue'
+import CoiDialog from '@/components/common/CoiDialog.vue'
+import CoiEmpty from '@/components/common/CoiEmpty.vue'
import {
addRole,
batchDeleteRoles,
@@ -809,7 +809,7 @@ async function handleAdd() {
}
}
- roleDialogRef.value?.novaOpen()
+ roleDialogRef.value?.coiOpen()
}
// 编辑角色
@@ -825,7 +825,7 @@ function handleEdit(role: RoleVo) {
remark: role.remark || '',
sorted: role.sorted || 1,
}
- roleDialogRef.value?.novaOpen()
+ roleDialogRef.value?.coiOpen()
}
// 删除角色
@@ -947,7 +947,7 @@ async function handleAssignMenu(role: RoleVo) {
checkedKeys.value = roleMenuResponse.data.map(id => String(id))
}
- menuDialogRef.value?.novaOpen()
+ menuDialogRef.value?.coiOpen()
}
else {
coiMsgError('获取菜单数据失败')
@@ -1019,7 +1019,7 @@ async function handleConfirmAssignMenu() {
if (response.isSuccess) {
coiMsgSuccess('菜单权限分配成功')
- menuDialogRef.value?.novaClose()
+ menuDialogRef.value?.coiClose()
}
else {
coiMsgError(response.message || '菜单权限分配失败')
@@ -1035,7 +1035,7 @@ async function handleConfirmAssignMenu() {
// 取消分配菜单权限
function handleCancelAssignMenu() {
- menuDialogRef.value?.novaClose()
+ menuDialogRef.value?.coiClose()
currentAssignRole.value = null
menuData.value = []
expandedKeys.value = []
@@ -1140,7 +1140,7 @@ async function handleSubmit() {
if (isSuccess) {
coiMsgSuccess(isEdit.value ? '角色信息更新成功' : '角色创建成功')
- roleDialogRef.value?.novaClose()
+ roleDialogRef.value?.coiClose()
await getRoleList()
}
else {
@@ -1154,7 +1154,7 @@ async function handleSubmit() {
// 取消操作
function handleCancel() {
- roleDialogRef.value?.novaClose()
+ roleDialogRef.value?.coiClose()
}
// 判断是否有搜索条件
@@ -1412,8 +1412,8 @@ onMounted(() => {
}
}
-/* NovaEmpty按钮样式 */
-.nova-empty__action-btn {
+/* CoiEmpty按钮样式 */
+.coi-empty__action-btn {
position: relative;
overflow: hidden;
transition: all 0.3s ease;
@@ -1422,7 +1422,7 @@ onMounted(() => {
border: none;
}
-.nova-empty__action-btn::before {
+.coi-empty__action-btn::before {
content: '';
position: absolute;
top: 0;
@@ -1433,12 +1433,12 @@ onMounted(() => {
transition: left 0.6s ease;
}
-.nova-empty__action-btn:hover {
+.coi-empty__action-btn:hover {
transform: translateY(-2px);
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
}
-.nova-empty__action-btn:hover::before {
+.coi-empty__action-btn:hover::before {
left: 100%;
}
diff --git a/src/views/system/user/index.vue b/src/views/system/user/index.vue
index 913a635..c76d04a 100644
--- a/src/views/system/user/index.vue
+++ b/src/views/system/user/index.vue
@@ -220,7 +220,7 @@
/>
-
@@ -247,7 +247,7 @@
{{ getEmptyActionText() }}
-
+
@@ -269,15 +269,15 @@
-
@@ -407,18 +407,18 @@
-
+
-
@@ -467,18 +467,18 @@
-
+
-
@@ -544,16 +544,16 @@
-
+
-
@@ -595,18 +595,18 @@
-
+
-
@@ -698,7 +698,7 @@
-
+
@@ -710,8 +710,8 @@ import IconParkOutlineEditOne from '~icons/icon-park-outline/edit-one'
import IconParkOutlineDelete from '~icons/icon-park-outline/delete'
import IconParkOutlineRefresh from '~icons/icon-park-outline/refresh'
import IconParkOutlineUserPositioning from '~icons/icon-park-outline/user-positioning'
-import NovaDialog from '@/components/common/NovaDialog.vue'
-import NovaEmpty from '@/components/common/NovaEmpty.vue'
+import CoiDialog from '@/components/common/CoiDialog.vue'
+import CoiEmpty from '@/components/common/CoiEmpty.vue'
import {
addUser,
batchDeleteUsers,
@@ -1246,7 +1246,7 @@ function handleAdd() {
remark: '',
roleIds: [],
}
- userDialogRef.value?.novaOpen()
+ userDialogRef.value?.coiOpen()
}
// 编辑用户
@@ -1309,7 +1309,7 @@ async function handleEdit(user: UserVo) {
}
}
- userDialogRef.value?.novaOpen()
+ userDialogRef.value?.coiOpen()
}
// 删除用户
@@ -1395,7 +1395,7 @@ function handleResetPassword(user: UserVo) {
newPassword: '',
confirmPassword: '',
}
- resetPwdDialogRef.value?.novaOpen()
+ resetPwdDialogRef.value?.coiOpen()
}
// 执行重置密码
@@ -1419,7 +1419,7 @@ async function handleConfirmResetPassword() {
const { isSuccess } = await resetUserPassword(currentResetUser.value.userId, resetPwdForm.value.newPassword)
if (isSuccess) {
coiMsgSuccess(`用户「${currentResetUser.value.userName}」密码重置成功`)
- resetPwdDialogRef.value?.novaClose()
+ resetPwdDialogRef.value?.coiClose()
}
else {
coiMsgError('重置密码失败,请稍后重试')
@@ -1433,7 +1433,7 @@ async function handleConfirmResetPassword() {
// 取消重置密码
function handleCancelResetPassword() {
- resetPwdDialogRef.value?.novaClose()
+ resetPwdDialogRef.value?.coiClose()
resetPwdForm.value = {
newPassword: '',
confirmPassword: '',
@@ -1479,12 +1479,12 @@ function handleViewAvatar(user: UserVo) {
currentAvatar.value = blobUrl
createdBlobUrls.value.push(blobUrl)
}
- avatarDialogRef.value?.novaOpen()
+ avatarDialogRef.value?.coiOpen()
}
// 关闭头像查看
function handleCloseAvatar() {
- avatarDialogRef.value?.novaClose()
+ avatarDialogRef.value?.coiClose()
// 如果是生成的默认头像,释放URL
if (currentAvatar.value.startsWith('blob:')) {
URL.revokeObjectURL(currentAvatar.value)
@@ -1626,7 +1626,7 @@ function handleImport() {
selectedFile.value = null
updateSupport.value = false
uploadProgress.value = 0
- importDialogRef.value?.novaOpen()
+ importDialogRef.value?.coiOpen()
}
// 文件选择处理
@@ -1691,7 +1691,7 @@ async function handleConfirmImport() {
)
// 关闭模态框并刷新列表
- importDialogRef.value?.novaClose()
+ importDialogRef.value?.coiClose()
await getUserList()
}
else {
@@ -1716,7 +1716,7 @@ async function handleConfirmImport() {
// 取消导入
function handleCancelImport() {
- importDialogRef.value?.novaClose()
+ importDialogRef.value?.coiClose()
selectedFile.value = null
updateSupport.value = false
uploadProgress.value = 0
@@ -1754,7 +1754,7 @@ async function handleAssignRole(user: UserVo) {
// 预选用户当前角色(使用后端返回的用户角色ID)
selectedRoleIds.value = userRoleIds
- roleDialogRef.value?.novaOpen()
+ roleDialogRef.value?.coiOpen()
}
else {
coiMsgInfo('当前系统没有可分配的角色')
@@ -1792,7 +1792,7 @@ async function handleConfirmAssignRole() {
if (response.isSuccess) {
coiMsgSuccess('角色分配成功')
- roleDialogRef.value?.novaClose()
+ roleDialogRef.value?.coiClose()
// 更新当前用户的角色信息
if (currentAssignUser.value) {
@@ -1816,7 +1816,7 @@ async function handleConfirmAssignRole() {
// 取消分配角色
function handleCancelAssignRole() {
- roleDialogRef.value?.novaClose()
+ roleDialogRef.value?.coiClose()
currentAssignUser.value = null
selectedRoleIds.value = []
availableRoles.value = []
@@ -1859,7 +1859,7 @@ async function handleSubmit() {
if (isSuccess) {
coiMsgSuccess(isEdit.value ? '用户信息更新成功' : '用户创建成功')
- userDialogRef.value?.novaClose()
+ userDialogRef.value?.coiClose()
await getUserList()
}
else {
@@ -1874,7 +1874,7 @@ async function handleSubmit() {
// 取消操作
function handleCancel() {
- userDialogRef.value?.novaClose()
+ userDialogRef.value?.coiClose()
}
// 判断是否有搜索条件
@@ -2077,8 +2077,8 @@ onBeforeUnmount(() => {
border-color: #40a9ff;
}
-/* NovaEmpty按钮样式 */
-.nova-empty__action-btn {
+/* CoiEmpty按钮样式 */
+.coi-empty__action-btn {
position: relative;
overflow: hidden;
transition: all 0.3s ease;
@@ -2087,7 +2087,7 @@ onBeforeUnmount(() => {
border: none;
}
-.nova-empty__action-btn::before {
+.coi-empty__action-btn::before {
content: '';
position: absolute;
top: 0;
@@ -2098,12 +2098,12 @@ onBeforeUnmount(() => {
transition: left 0.6s ease;
}
-.nova-empty__action-btn:hover {
+.coi-empty__action-btn:hover {
transform: translateY(-2px);
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
}
-.nova-empty__action-btn:hover::before {
+.coi-empty__action-btn:hover::before {
left: 100%;
}