diff --git a/index/src/app/api/api.service.ts b/index/src/app/api/api.service.ts index 485fa0c..d37f8a8 100644 --- a/index/src/app/api/api.service.ts +++ b/index/src/app/api/api.service.ts @@ -429,7 +429,7 @@ export class ApiService extends HttpService { deleteUser(id: number) { return super.Service({ - path: `/admin/user/del/${id}`, + path: `/admin/user/delete/${id}`, method: 'DELETE', }); } diff --git a/index/src/app/view/admin/admin-user/admin-user.component.html b/index/src/app/view/admin/admin-user/admin-user.component.html index d7514d9..10fb3a6 100644 --- a/index/src/app/view/admin/admin-user/admin-user.component.html +++ b/index/src/app/view/admin/admin-user/admin-user.component.html @@ -1 +1,117 @@ -

admin-user works!

+
+ + + + 邮箱 + 昵称 + 角色 + 邮箱验证状态 + 操作 + + + + {{data.email}} + {{data.displayName}} + + {{data.role}} + {{data.role}} + + + 已验证 + 未验证 + + + 编辑 + + 查看 + + 删除 + + + + + +
+ + + +
+ + 邮箱 + + + + + + + 昵称 + + + + + + + + 角色 + + + + + + + + + + 状态 + + + + + + + + + + 密码 + + + 重设密码 + + + + + + + + + + + + 描述 + + + + +
+
+ + + + + + + + + + +
diff --git a/index/src/app/view/admin/admin-user/admin-user.component.ts b/index/src/app/view/admin/admin-user/admin-user.component.ts index 6c03f9d..134ea13 100644 --- a/index/src/app/view/admin/admin-user/admin-user.component.ts +++ b/index/src/app/view/admin/admin-user/admin-user.component.ts @@ -1,15 +1,92 @@ -import { Component, OnInit } from '@angular/core'; +import {Component, OnInit} from '@angular/core'; +import {NzMessageService} from 'ng-zorro-antd'; +import {Title} from '@angular/platform-browser'; +import {FormControl, FormGroup} from '@angular/forms'; +import {PageList} from '../../../class/HttpReqAndResp'; +import {ApiService} from '../../../api/api.service'; +import {User} from '../../../class/User'; +import {GlobalUserService} from '../../../services/global-user.service'; @Component({ - selector: 'app-admin-user', - templateUrl: './admin-user.component.html', - styleUrls: ['./admin-user.component.less'] + selector: 'app-admin-user', + templateUrl: './admin-user.component.html', + styleUrls: ['./admin-user.component.less'] }) export class AdminUserComponent implements OnInit { - constructor() { } + constructor(private apiService: ApiService, private title: Title, private messageService: NzMessageService, private userService: GlobalUserService) { + this.formGroup = new FormGroup({ + id: new FormControl(null), + email: new FormControl(''), + displayName: new FormControl(''), + emailStatus: new FormControl(null), + desc: new FormControl(null), + role: new FormControl(null), + pwd: new FormControl(''), + }); + this.userService.watchUserInfo({ + next: data => this.user = data.result, + error: null, + complete: null + }) + } - ngOnInit(): void { - } + pageIndex: number = 1; + pageSize: number = 10; + pageList: PageList = new PageList(); + user: User; + loading: boolean = true; + modalData = { + visible: false, + title: null, + isEdit: false, + resetPwd: false + } + formGroup: FormGroup; + + ngOnInit(): void { + this.title.setTitle('小海博客 | 用户管理') + this.getUser(); + } + + getUser = () => this.apiService.adminUsers(this.pageSize, this.pageIndex).subscribe({ + next: data => this.pageList = data.result, + complete: () => this.loading = false, + error: err => this.loading = false + }) + + deleteUser(id) { + this.loading = true; + this.apiService.deleteUser(id).subscribe({ + next: data => { + this.messageService.success('删除成功') + this.loading = false; + this.getUser(); + }, + error: err => { + this.messageService.error(err.msg) + this.loading = false + } + }) + } + + showModal(isEdit: boolean, data: User) { + this.modalData.visible = true; + this.modalData.isEdit = isEdit; + this.modalData.title = isEdit ? '编辑用户' : '查看用户' + this.formGroup.reset(); + this.formGroup.patchValue(data); + } + + modalConfirm() { + this.modalData.visible = false + this.apiService.adminUpdateUser(this.formGroup.value).subscribe({ + next: data => { + this.getUser(); + this.messageService.success('修改用户信息成功'); + this.userService.refreshUserInfo(); + } + }) + } } diff --git a/index/src/app/view/admin/admin-user/admin-user.module.ts b/index/src/app/view/admin/admin-user/admin-user.module.ts index febeefe..e3d9344 100644 --- a/index/src/app/view/admin/admin-user/admin-user.module.ts +++ b/index/src/app/view/admin/admin-user/admin-user.module.ts @@ -2,6 +2,16 @@ import {NgModule} from '@angular/core'; import {CommonModule} from '@angular/common'; import {RouterModule} from '@angular/router'; import {AdminUserComponent} from './admin-user.component'; +import { + NzButtonModule, + NzCardModule, + NzDividerModule, NzFormModule, NzIconModule, NzInputModule, + NzModalModule, + NzPopconfirmModule, NzRadioModule, NzSelectModule, + NzTableModule, + NzTagModule +} from 'ng-zorro-antd'; +import {ReactiveFormsModule} from '@angular/forms'; @NgModule({ @@ -10,7 +20,20 @@ import {AdminUserComponent} from './admin-user.component'; ], imports: [ CommonModule, - RouterModule.forChild([{path: '', component: AdminUserComponent}]) + RouterModule.forChild([{path: '', component: AdminUserComponent}]), + NzCardModule, + NzTableModule, + NzPopconfirmModule, + NzDividerModule, + NzTagModule, + NzModalModule, + NzButtonModule, + NzFormModule, + ReactiveFormsModule, + NzInputModule, + NzSelectModule, + NzRadioModule, + NzIconModule ] })