系统管理bug修改及添加个人修改密码
This commit is contained in:
@@ -5,6 +5,13 @@ import { OperateSpinServiceService } from '../services/operate-spin-service.serv
|
||||
import { HttpClientService } from '../services/http-client.service';
|
||||
import { NzMessageService } from 'ng-zorro-antd';
|
||||
|
||||
import {
|
||||
FormBuilder,
|
||||
FormControl,
|
||||
FormGroup,
|
||||
Validators
|
||||
} from '@angular/forms';
|
||||
|
||||
import { filter } from 'rxjs/operators';
|
||||
// import 'rxjs/add/operator/map';
|
||||
// import 'rxjs/add/operator/mergeMap';
|
||||
@@ -19,10 +26,18 @@ export class PagesComponent implements OnInit {
|
||||
public role_type: string;
|
||||
public menuClose: boolean = false;
|
||||
public isSpinning: any = false;
|
||||
menuData = []
|
||||
menuData = [];
|
||||
|
||||
modalIsVisible = false;
|
||||
isConfirmLoading = false;
|
||||
|
||||
dropdownVisible = false;
|
||||
|
||||
validateForm: FormGroup;
|
||||
|
||||
constructor(
|
||||
private router: Router,
|
||||
private fb: FormBuilder,
|
||||
private basicDataService: BasicDataService,
|
||||
private operateSpinService: OperateSpinServiceService,
|
||||
private httpClient: HttpClientService,
|
||||
@@ -34,19 +49,6 @@ export class PagesComponent implements OnInit {
|
||||
this.basicDataService.loadBasicData();
|
||||
}
|
||||
|
||||
menuDataHandle(menu) {
|
||||
menu['name'] = menu.data.menu.title;
|
||||
menu['icon'] = menu.data.menu.icon;
|
||||
menu['isExpend'] = false;
|
||||
menu['isActive'] = false;
|
||||
delete menu.data;
|
||||
if (menu.children && menu.children.length > 0) {
|
||||
menu.children.forEach(menu => {
|
||||
this.menuDataHandle(menu);
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
ngOnInit() {
|
||||
this.httpClient.get('/sysapi/common/menu/list', { sysid: 1 }).subscribe(
|
||||
res => {
|
||||
@@ -77,12 +79,116 @@ export class PagesComponent implements OnInit {
|
||||
).subscribe((event) => {
|
||||
this.selectActiveMenu(this.menuData, event['urlAfterRedirects'])
|
||||
});
|
||||
|
||||
this.validateForm = this.fb.group({
|
||||
oldPassword: ['', [Validators.required]],
|
||||
newPassword: ['', [Validators.required]],
|
||||
confirmPassword: ['', [Validators.required, this.confirmationValidator]],
|
||||
});
|
||||
}
|
||||
|
||||
confirmationValidator = (control: FormControl): { [s: string]: boolean } => {
|
||||
// console.log(control.value);
|
||||
if (!control.value) {
|
||||
return { required: true };
|
||||
} else if (control.value !== this.validateForm.controls.newPassword.value) {
|
||||
return { confirm: true, error: true };
|
||||
}
|
||||
return {};
|
||||
};
|
||||
|
||||
updateConfirmValidator(): void {
|
||||
/** wait for refresh value */
|
||||
Promise.resolve().then(() => this.validateForm.controls.confirmPassword.updateValueAndValidity());
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改密码
|
||||
*/
|
||||
modifyPassword() {
|
||||
this.dropdownVisible = false;
|
||||
this.modalIsVisible = true;
|
||||
}
|
||||
modifyHandleOk(): void {
|
||||
this.isConfirmLoading = true;
|
||||
|
||||
this.httpClient.post('/adminapi/xxxxx', this.validateForm.value).subscribe((response) => {
|
||||
// console.log(response);
|
||||
this.message.success('修改密码成功!');
|
||||
this.validateForm.patchValue({
|
||||
oldPassword: '',
|
||||
newPassword: '',
|
||||
confirmPassword: ''
|
||||
})
|
||||
for (const i in this.validateForm.controls) {
|
||||
this.validateForm.controls[i].markAsPristine();
|
||||
this.validateForm.controls[i].markAsUntouched();
|
||||
this.validateForm.controls[i].updateValueAndValidity();
|
||||
}
|
||||
this.modalIsVisible = false;
|
||||
this.isConfirmLoading = false;
|
||||
}, err => {
|
||||
// console.log(err);
|
||||
this.message.error('修改密码失败!');
|
||||
this.validateForm.patchValue({
|
||||
oldPassword: '',
|
||||
newPassword: '',
|
||||
confirmPassword: ''
|
||||
})
|
||||
for (const i in this.validateForm.controls) {
|
||||
this.validateForm.controls[i].markAsPristine();
|
||||
this.validateForm.controls[i].markAsUntouched();
|
||||
this.validateForm.controls[i].updateValueAndValidity();
|
||||
}
|
||||
this.modalIsVisible = false;
|
||||
this.isConfirmLoading = false;
|
||||
})
|
||||
|
||||
}
|
||||
modifyHandleCancel(): void {
|
||||
this.modalIsVisible = false;
|
||||
this.validateForm.patchValue({
|
||||
oldPassword: '',
|
||||
newPassword: '',
|
||||
confirmPassword: ''
|
||||
})
|
||||
for (const i in this.validateForm.controls) {
|
||||
this.validateForm.controls[i].markAsPristine();
|
||||
this.validateForm.controls[i].markAsUntouched();
|
||||
this.validateForm.controls[i].updateValueAndValidity();
|
||||
}
|
||||
}
|
||||
|
||||
//退出点击
|
||||
logoutClick() {
|
||||
this.dropdownVisible = true;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 展开收起菜单
|
||||
*/
|
||||
toggleMenu() {
|
||||
this.menuClose = !this.menuClose;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* 菜单数据处理
|
||||
*/
|
||||
menuDataHandle(menu) {
|
||||
menu['name'] = menu.data.menu.title;
|
||||
menu['icon'] = menu.data.menu.icon;
|
||||
menu['isExpend'] = false;
|
||||
menu['isActive'] = false;
|
||||
delete menu.data;
|
||||
if (menu.children && menu.children.length > 0) {
|
||||
menu.children.forEach(menu => {
|
||||
this.menuDataHandle(menu);
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 判断是否有子节点
|
||||
* @param item
|
||||
|
||||
Reference in New Issue
Block a user