优化更新

This commit is contained in:
2026-02-09 22:51:11 +08:00
parent 9939680942
commit adf7457502
12 changed files with 695 additions and 298 deletions

View File

@@ -18,8 +18,8 @@ class PermissionService
// 搜索条件
if (!empty($params['keyword'])) {
$query->where(function ($q) use ($params) {
$q->where('name', 'like', '%' . $params['keyword'] . '%')
->orWhere('code', 'like', '%' . $params['keyword'] . '%');
$q->where('title', 'like', '%' . $params['keyword'] . '%')
->orWhere('name', 'like', '%' . $params['keyword'] . '%');
});
}
@@ -109,15 +109,15 @@ class PermissionService
return [
'id' => $permission->id,
'title' => $permission->title,
'name' => $permission->name,
'code' => $permission->code,
'type' => $permission->type,
'parent_id' => $permission->parent_id,
'parent' => $permission->parent ? [
'id' => $permission->parent->id,
'name' => $permission->parent->name,
] : null,
'route' => $permission->route,
'path' => $permission->path,
'component' => $permission->component,
'meta' => $permission->meta,
'sort' => $permission->sort,
@@ -132,17 +132,17 @@ class PermissionService
*/
public function create(array $data): Permission
{
// 检查权限名称是否已存在
if (Permission::where('name', $data['name'])->exists()) {
// 检查权限标题是否已存在
if (isset($data['title']) && Permission::where('title', $data['title'])->exists()) {
throw ValidationException::withMessages([
'name' => ['权限名称已存在'],
'title' => ['权限标题已存在'],
]);
}
// 检查权限编码是否已存在
if (Permission::where('code', $data['code'])->exists()) {
if (Permission::where('name', $data['name'])->exists()) {
throw ValidationException::withMessages([
'code' => ['权限编码已存在'],
'name' => ['权限编码已存在'],
]);
}
@@ -157,11 +157,11 @@ class PermissionService
}
return Permission::create([
'title' => $data['title'],
'name' => $data['name'],
'code' => $data['code'],
'type' => $data['type'] ?? 'api',
'type' => $data['type'] ?? 'menu',
'parent_id' => $data['parent_id'] ?? 0,
'route' => $data['route'] ?? null,
'path' => $data['path'] ?? null,
'component' => $data['component'] ?? null,
'meta' => $data['meta'] ?? null,
'sort' => $data['sort'] ?? 0,
@@ -182,20 +182,20 @@ class PermissionService
]);
}
// 检查权限名称是否已被其他权限使用
if (isset($data['name']) && $data['name'] !== $permission->name) {
if (Permission::where('name', $data['name'])->exists()) {
// 检查权限标题是否已被其他权限使用
if (isset($data['title']) && $data['title'] !== $permission->title) {
if (Permission::where('title', $data['title'])->exists()) {
throw ValidationException::withMessages([
'name' => ['权限名称已存在'],
'title' => ['权限标题已存在'],
]);
}
}
// 检查权限编码是否已被其他权限使用
if (isset($data['code']) && $data['code'] !== $permission->code) {
if (Permission::where('code', $data['code'])->exists()) {
if (isset($data['name']) && $data['name'] !== $permission->name) {
if (Permission::where('name', $data['name'])->exists()) {
throw ValidationException::withMessages([
'code' => ['权限编码已存在'],
'name' => ['权限编码已存在'],
]);
}
}
@@ -218,11 +218,11 @@ class PermissionService
}
$updateData = [
'title' => $data['title'] ?? $permission->title,
'name' => $data['name'] ?? $permission->name,
'code' => $data['code'] ?? $permission->code,
'type' => $data['type'] ?? $permission->type,
'parent_id' => $data['parent_id'] ?? $permission->parent_id,
'route' => $data['route'] ?? $permission->route,
'path' => $data['path'] ?? $permission->path,
'component' => $data['component'] ?? $permission->component,
'meta' => isset($data['meta']) ? $data['meta'] : $permission->meta,
'sort' => $data['sort'] ?? $permission->sort,
@@ -305,10 +305,10 @@ class PermissionService
if ($permission->parent_id == $parentId) {
$node = [
'id' => $permission->id,
'title' => $permission->title,
'name' => $permission->name,
'code' => $permission->code,
'type' => $permission->type,
'route' => $permission->route,
'path' => $permission->path,
'component' => $permission->component,
'meta' => $permission->meta,
'sort' => $permission->sort,