Skip to content
separation.component.ts 5.22 KiB
Newer Older
wangqinghua's avatar
wangqinghua committed
import {Component, OnInit, EventEmitter, Output} from '@angular/core';
wangqinghua's avatar
wangqinghua committed
import {SystemService} from '../../system.service';
import {NzMessageService} from 'ng-zorro-antd';
wangqinghua's avatar
wangqinghua committed
import {SidebarComponent} from '../../../layouts';
wangqinghua's avatar
wangqinghua committed

@Component({
    selector: 'smart-separation',
    templateUrl: './separation.component.html',
    styles: []
})
export class SeparationComponent implements OnInit {
wangqinghua's avatar
wangqinghua committed
    @Output() done = new EventEmitter<any>();
wangqinghua's avatar
wangqinghua committed

    isVisible = false;
wangqinghua's avatar
wangqinghua committed
    isDisabled = false;
wangqinghua's avatar
wangqinghua committed
    title;
    list = [];
    value = 0;
    first = {
wangqinghua's avatar
wangqinghua committed
        id: '',
        scValue: null,
        check: null
wangqinghua's avatar
wangqinghua committed
    };
wangqinghua's avatar
wangqinghua committed
    second = {
wangqinghua's avatar
wangqinghua committed
        id: '',
        scValue: null,
        check: null,
        comment: '',
wangqinghua's avatar
wangqinghua committed
    };
    third = {
wangqinghua's avatar
wangqinghua committed
        id: '',
        scValue: null,
        check: null,
        comment: '',
wangqinghua's avatar
wangqinghua committed
    };
wangqinghua's avatar
wangqinghua committed

wangqinghua's avatar
wangqinghua committed
    constructor(private systemSer: SystemService, private message: NzMessageService,
    ) {
wangqinghua's avatar
wangqinghua committed
    }

wangqinghua's avatar
wangqinghua committed
    ngOnInit() {
    }
wangqinghua's avatar
wangqinghua committed

    //查询三员分立
    separationPowerStatus() {
wangqinghua's avatar
wangqinghua committed
        this.systemSer.getSeparationConfig().subscribe(
wangqinghua's avatar
wangqinghua committed
            (res) => {
                if (res.errCode == 10000) {
                    this.first = res.data[0];
wangqinghua's avatar
wangqinghua committed
                    this.second = res.data[1];
                    this.third = res.data[2];
wangqinghua's avatar
wangqinghua committed
                    this.first.check = this.first.scValue == 1 ? true : false;
                    this.second.check = this.second.scValue == 1 ? true : false;
                    this.third.check = this.third.scValue == 1 ? true : false;
wangqinghua's avatar
wangqinghua committed
                }
            }
        );
    }

    showModal(title) {
        this.title = title;
        this.isVisible = true;
        this.separationPowerStatus();
    }

    handleCancel() {
        this.isVisible = false;
    }

wangqinghua's avatar
wangqinghua committed
    changeValue(type) {
wangqinghua's avatar
wangqinghua committed
        switch (type) {
wangqinghua's avatar
wangqinghua committed
            case '1': {
                if (this.first.check) {
wangqinghua's avatar
wangqinghua committed
                    this.systemSer.separationConfigOpen().subscribe(
                        (res) => {
                            if (res.data == 1) {
wangqinghua's avatar
wangqinghua committed
                                this.message.success('已开启三员分立功能');
wangqinghua's avatar
wangqinghua committed
                            }
                            this.separationPowerStatus();
                        }
wangqinghua's avatar
wangqinghua committed
                    );
                } else {
wangqinghua's avatar
wangqinghua committed
                    this.systemSer.separationConfigClose().subscribe(
                        (res) => {
                            if (res.data == 1) {
wangqinghua's avatar
wangqinghua committed
                                this.message.success('已关闭三员分立功能');
wangqinghua's avatar
wangqinghua committed
                            }
                            this.separationPowerStatus();
                        }
wangqinghua's avatar
wangqinghua committed
                    );
wangqinghua's avatar
wangqinghua committed
                }
                break;
            }
wangqinghua's avatar
wangqinghua committed
            case '3': {
                if (this.third.check) {
wangqinghua's avatar
wangqinghua committed
                    this.systemSer.openSystem().subscribe(
                        (res) => {
                            if (res.data == 1) {
wangqinghua's avatar
wangqinghua committed
                                this.message.success('已开启组织用户管理');
wangqinghua's avatar
wangqinghua committed
                            }
                            this.separationPowerStatus();
                        }
wangqinghua's avatar
wangqinghua committed
                    );
                } else {
wangqinghua's avatar
wangqinghua committed
                    this.systemSer.closeSystem().subscribe(
                        (res) => {
                            if (res.data == 1) {
wangqinghua's avatar
wangqinghua committed
                                this.message.success('已关闭组织用户管理');
wangqinghua's avatar
wangqinghua committed
                            }
                            this.separationPowerStatus();
                        }
wangqinghua's avatar
wangqinghua committed
                    );
wangqinghua's avatar
wangqinghua committed
                }
wangqinghua's avatar
wangqinghua committed
                break;
wangqinghua's avatar
wangqinghua committed
            }
wangqinghua's avatar
wangqinghua committed
            case '2': {
                if (this.second.check) {
wangqinghua's avatar
wangqinghua committed
                    this.systemSer.openAuth().subscribe(
                        (res) => {
                            if (res.data == 1) {
wangqinghua's avatar
wangqinghua committed
                                this.message.success('已开启角色与权限');
wangqinghua's avatar
wangqinghua committed
                            }
                            this.separationPowerStatus();
                        }
wangqinghua's avatar
wangqinghua committed
                    );
                } else {
wangqinghua's avatar
wangqinghua committed
                    this.systemSer.closeAuth().subscribe(
                        (res) => {
                            if (res.data == 1) {
wangqinghua's avatar
wangqinghua committed
                                this.message.success('已关闭角色与权限');
wangqinghua's avatar
wangqinghua committed
                            }
                            this.separationPowerStatus();
                        }
wangqinghua's avatar
wangqinghua committed
                    );
wangqinghua's avatar
wangqinghua committed
                }
                break;
            }
        }
wangqinghua's avatar
wangqinghua committed
        this.done.emit();
wangqinghua's avatar
wangqinghua committed
    }

wangqinghua's avatar
wangqinghua committed
    //保存
    handleOk() {
        let arr = [];
        arr.push(this.first);
        arr = arr.concat(this.list);
wangqinghua's avatar
wangqinghua committed
        let arr1 = arr.map(res => {
            const data = {
                id: res.id,
                scValue: null,
            };
            if (res.check) {
                data.scValue = 0;
            } else {
                data.scValue = 1;
            }
            return data;
        });
        this.systemSer.updateValue(arr1).subscribe(
            (res) => {
                if (res.errCode == 10000) {
                    if (this.first.check) {
                        this.message.success('已开启三员分立功能');
                    } else {
                        this.message.success('已关闭三员分立功能');
                    }
                    this.isVisible = false;
                }
            }
        );
wangqinghua's avatar
wangqinghua committed

    }

}