From 9d731840aff22ce68756fb70f50dcf90432bbe67 Mon Sep 17 00:00:00 2001 From: fengxiang <110431245@qq.com> Date: Sat, 24 Feb 2018 11:43:52 +0800 Subject: [PATCH] cookie 添加 --- src/app/routes/users/installer/edit/edit.component.ts | 40 +++++++++++++++++++++++++++++++++------- 1 files changed, 33 insertions(+), 7 deletions(-) diff --git a/src/app/routes/users/installer/edit/edit.component.ts b/src/app/routes/users/installer/edit/edit.component.ts index 58ff4ac..b35523c 100644 --- a/src/app/routes/users/installer/edit/edit.component.ts +++ b/src/app/routes/users/installer/edit/edit.component.ts @@ -1,10 +1,14 @@ +import { ResultBean } from '@business/entity/grid'; +import { Subject } from 'rxjs/Subject'; import {NzModalSubject, NzMessageService} from 'ng-zorro-antd'; import {Component, OnInit} from '@angular/core'; import {ModalHelper} from '@delon/theme'; -import {HttpClient} from '@angular/common/http'; +import {HttpClient, HttpResponse} from '@angular/common/http'; import {environment} from 'environments/environment'; import {DateService} from '@business/services/util/date.service'; import {FormGroup, FormBuilder, FormControl, Validators} from '@angular/forms'; +import { catchError } from 'rxjs/operators'; +import { ErrorObservable } from 'rxjs/observable/ErrorObservable'; @Component({ selector: 'app-edit', @@ -15,14 +19,10 @@ user: any; public validateForm: FormGroup; - - constructor( - private modalHelper: ModalHelper, + constructor( private subject: NzModalSubject, - public dateSrv: DateService, - public msgSrv: NzMessageService, public http: HttpClient, - private formBuilder: FormBuilder + private formBuilder: FormBuilder, ) {} ngOnInit() { @@ -36,6 +36,32 @@ expireTime: [user.expireTime], id: [user.id] }); + const mobileControl = this.validateForm.get('mobile'); + mobileControl.valueChanges.filter(val => { + return val != null && val.trim() != ''; + }).debounceTime(900).distinctUntilChanged().subscribe( value => { + if(mobileControl.errors==null){ + mobileControl.setErrors({unique:true}) + this.http.get(environment.SERVER_BASH_URL + '/operateUser/unique-mobile?mobile='+value) + .pipe( + catchError(() => { + const req = <XMLHttpRequest>event.target; + if(req.status==401){ + this.subject.destroy(); + } + // ������������������������������������ + return ErrorObservable.create(event); + }) + ) + .subscribe( + (value:ResultBean<boolean>) => { + if(value.code == 1 && value.data){ + this.validateForm.get('mobile').setErrors(null); + } + } + ); + } + }); } save() { -- Gitblit v1.8.0