import {Component, EventEmitter, OnInit, Output} from '@angular/core';
import {FormBuilder, FormGroup, Validators} from '@angular/forms';
import {SystemService} from '../../system.service';
import {NzMessageService} from 'ng-zorro-antd';

@Component({
  selector: 'smart-group-modal',
  templateUrl: './group-modal.component.html',
  styles: []
})
export class GroupModalComponent implements OnInit {
    @Output() done = new EventEmitter<any>();

    title = '新增部门';
    isVisible = false;
    validateForm:FormGroup;
    groupList:any[];

    constructor(private fb:FormBuilder,private message:NzMessageService,
                private systemSer:SystemService) {
    }

    ngOnInit() :void{
       this.initForm();
    }

    initForm(){
        this.validateForm = this.fb.group({
            name:[null,[Validators.required,Validators.maxLength(15)]],
            parentId:[null,[Validators.required]],
        });
    }

    showModal(list){
        this.groupList = list;
        this.isVisible = true;
    }

    handleCancel(){
        this.isVisible = false;
    }

    handleOk(){
        this.isVisible = true;
        for(let i in this.validateForm.controls){
            this.validateForm.controls[i].markAsDirty();
            this.validateForm.controls[i].updateValueAndValidity();
        }
        this.systemSer.createOrg(this.validateForm.value).subscribe(
            (res)=>{
                if(res.errCode == 10000){
                    this.initForm();
                    this.isVisible = false;
                    this.done.emit();
                    this.message.success("新增部门成功");
                }else{
                    this.message.error(res.errMsg);
                }
            }
        )
    }

}
