| import {NzModalSubject} from 'ng-zorro-antd'; | 
| import {Component, OnInit} from '@angular/core'; | 
| import {HttpClient} from '@angular/common/http'; | 
| import {environment} from '../../../../../environments/environment'; | 
| import {FormGroup, FormBuilder, FormControl, Validators} from '@angular/forms'; | 
|   | 
| @Component({ | 
|   selector: 'app-alarm-user-edit', | 
|   templateUrl: './alarm-user-edit.component.html', | 
|   styles: [] | 
| }) | 
| export class AlarmUserEditComponent implements OnInit { | 
|   | 
|   alarmUser: any; | 
|   validateForm: FormGroup; | 
|   searchOptions = []; | 
|   | 
|   constructor( | 
|     private subject: NzModalSubject, | 
|     public http: HttpClient, | 
|     private formBuilder: FormBuilder | 
|   ) {} | 
|   | 
|   ngOnInit() { | 
|     const alarmUser = this.alarmUser; | 
|     this.validateForm = this.formBuilder.group({ | 
|       name: [alarmUser.name], | 
|       mobile: [alarmUser.mobile, [Validators.pattern('^((13[0-9])|(14[5|7])|(15([0-3]|[5-9]))|(18[0,5-9]))\\d{8}$')]], | 
|       email: [alarmUser.email, [Validators.email]], | 
|       weixin: [alarmUser.weixin], | 
|       organizationId: [alarmUser.organizationId], | 
|       expireTime: [alarmUser.expireTime], | 
|       id: [alarmUser.id] | 
|     }); | 
|     this.searchOptions = alarmUser.organization ? [alarmUser.organization] : []; | 
|   } | 
|   | 
|   save() { | 
|     const validateForm = this.validateForm; | 
|     const controls = validateForm.controls; | 
|     if (validateForm.valid) { | 
|       for (const i in controls) { | 
|         controls[i].disable(); | 
|       } | 
|       this.http.post(environment.SERVER_BASH_URL + '/alarmUser/alarmUser', validateForm.value).subscribe(() => { | 
|         this.subject.next('true'); | 
|         this.close(); | 
|       }); | 
|     } else { | 
|       for (const i in controls) { | 
|         controls[i].markAsDirty(); | 
|       } | 
|     } | 
|   } | 
|   | 
|   close() { | 
|     this.subject.destroy(); | 
|   } | 
|   | 
|   searchChange(searchText) { | 
|     if (searchText) { | 
|       const query = encodeURI(searchText); | 
|       if (query) { | 
|         this.http.get(environment.SERVER_BASH_URL + '/organization/list/' + query).subscribe((res: any) => { | 
|           this.searchOptions = res.data; | 
|         }); | 
|       } | 
|     } | 
|   } | 
|   | 
| } |