Browse Source

新增角色级别

beijing
jingbowen 2 years ago
parent
commit
d1c637f60f
  1. 109
      src/app/system-management/role/addrole/addrole.component.ts
  2. 141
      src/app/system-management/role/editrole/editrole.component.ts

109
src/app/system-management/role/addrole/addrole.component.ts

@ -1,82 +1,87 @@
import { Component, OnInit, Input,ViewChild } from '@angular/core'; import { Component, OnInit, Input, ViewChild } from "@angular/core";
import { NzModalRef } from 'ng-zorro-antd/modal'; import { NzModalRef } from "ng-zorro-antd/modal";
import { FormBuilder, FormGroup, Validators, } from '@angular/forms'; import { FormBuilder, FormGroup, Validators } from "@angular/forms";
import { HttpClient } from '@angular/common/http'; import { HttpClient } from "@angular/common/http";
import { TreeService } from 'src/app/service/tree.service'; import { TreeService } from "src/app/service/tree.service";
import { NzTreeComponent } from 'ng-zorro-antd/tree'; import { NzTreeComponent } from "ng-zorro-antd/tree";
@Component({ @Component({
selector: 'app-addrole', selector: "app-addrole",
templateUrl: './addrole.component.html', templateUrl: "./addrole.component.html",
styleUrls: ['./addrole.component.scss'] styleUrls: ["./addrole.component.scss"],
}) })
export class AddroleComponent implements OnInit { export class AddroleComponent implements OnInit {
@ViewChild('nzTreeComponent', { static: false }) nzTreeComponent!: NzTreeComponent; @ViewChild("nzTreeComponent", { static: false })
nzTreeComponent!: NzTreeComponent;
@Input() data?: any; @Input() data?: any;
@Input() nodes?: any; @Input() nodes?: any;
@Input() title?: string; @Input() title?: string;
@Input() subtitle?: string; @Input() subtitle?: string;
validateForm!: FormGroup; validateForm!: FormGroup;
constructor(private modal: NzModalRef, private fb: FormBuilder, private http: HttpClient, private toTree: TreeService) { } constructor(
private modal: NzModalRef,
private fb: FormBuilder,
private http: HttpClient,
private toTree: TreeService
) {}
ngOnInit(): void { ngOnInit(): void {
this.nodes.length != 0 ? null : this.getAllMenus() this.nodes.length != 0 ? null : this.getAllMenus();
this.loadMore(); this.loadMore();
let level=JSON.parse(sessionStorage.getItem('userdata')).organization.level let level = JSON.parse(sessionStorage.getItem("userdata")).organization
let levelList=[ .level;
{level:0,name:'无'}, this.levelList = this.levelList.filter((e) => {
{level:1,name:'销售公司'}, return e.level > level || e.level == 0;
{level:2,name:'省公司'}, });
{level:3,name:'区域'},
{level:4,name:'油站'},
]
// this.levelList=[]
levelList.forEach(e=>{
if(e.level>=level||e.level==0){
this.levelList.push(e)
}
})
this.validateForm = this.fb.group({ this.validateForm = this.fb.group({
name: [null, [Validators.required]], name: [null, [Validators.required]],
power: [null], power: [null],
menus: [null], menus: [null],
organizationsLevel:[null] organizationsLevel: [null],
}); });
} }
totalCount totalCount;
getAllMenus() { getAllMenus() {
let params = { let params = {
SkipCount: '0', SkipCount: "0",
MaxResultCount: '999' MaxResultCount: "999",
} };
this.http.get('/api/services/app/Menu/GetAll', { this.http
params: params .get("/api/services/app/Menu/GetAll", {
}).subscribe((data: any) => { params: params,
console.log(666, data) })
this.totalCount = data.result.totalCount .subscribe((data: any) => {
data.result.items.forEach(element => { console.log(666, data);
element.key = element.id this.totalCount = data.result.totalCount;
element.title = element.name data.result.items.forEach((element) => {
element.selectable = false element.key = element.id;
element.title = element.name;
element.selectable = false;
});
this.nodes = [...this.toTree.toTree(data.result.items)];
}); });
this.nodes = [...this.toTree.toTree(data.result.items)]
})
} }
destroyModal(): void { destroyModal(): void {
this.modal.destroy({ data: 'this the result data' }); this.modal.destroy({ data: "this the result data" });
} }
optionList = []; optionList = [];
levelList=[] levelList = [
{ level: 0, name: "无" },
{ level: 1, name: "销售公司" },
{ level: 2, name: "省公司" },
{ level: 3, name: "区域" },
{ level: 4, name: "油站" },
];
isLoading = false; isLoading = false;
//获取权限列表 //获取权限列表
loadMore() { loadMore() {
this.isLoading = true; this.isLoading = true;
this.http.get('/api/services/app/Role/GetAllPermissions').subscribe((data: any) => { this.http
this.isLoading = false; .get("/api/services/app/Role/GetAllPermissions")
this.optionList = data.result.items .subscribe((data: any) => {
console.log('所有权限', data) this.isLoading = false;
}) this.optionList = data.result.items;
console.log("所有权限", data);
});
} }
} }

141
src/app/system-management/role/editrole/editrole.component.ts

@ -1,100 +1,107 @@
import { FormBuilder, FormGroup, Validators } from '@angular/forms'; import { FormBuilder, FormGroup, Validators } from "@angular/forms";
import { Component, OnInit, Input } from '@angular/core'; import { Component, OnInit, Input } from "@angular/core";
import { NzModalRef } from 'ng-zorro-antd/modal'; import { NzModalRef } from "ng-zorro-antd/modal";
import { HttpClient } from '@angular/common/http'; import { HttpClient } from "@angular/common/http";
import { TreeService } from 'src/app/service/tree.service'; import { TreeService } from "src/app/service/tree.service";
@Component({ @Component({
selector: 'app-editrole', selector: "app-editrole",
templateUrl: './editrole.component.html', templateUrl: "./editrole.component.html",
styleUrls: ['./editrole.component.scss'] styleUrls: ["./editrole.component.scss"],
}) })
export class EditroleComponent implements OnInit { export class EditroleComponent implements OnInit {
@Input() data?: any; @Input() data?: any;
@Input() optionList?: any; @Input() optionList?: any;
@Input() nodes?: any; @Input() nodes?: any;
validateForm!: FormGroup; validateForm!: FormGroup;
constructor(private modal: NzModalRef, private fb: FormBuilder, private http: HttpClient, private toTree: TreeService) { } constructor(
levelList=[] private modal: NzModalRef,
multipleValue: any private fb: FormBuilder,
levelValue private http: HttpClient,
private toTree: TreeService
) {}
levelList = [
{ level: 0, name: "无" },
{ level: 1, name: "销售公司" },
{ level: 2, name: "省公司" },
{ level: 3, name: "区域" },
{ level: 4, name: "油站" },
];
multipleValue: any;
levelValue;
ngOnInit(): void { ngOnInit(): void {
console.log(this.data) console.log(this.data);
console.log(6666,this.optionList) console.log(6666, this.optionList);
this.nodes.length != 0 ? null : this.getAllMenus() this.nodes.length != 0 ? null : this.getAllMenus();
this.multipleValue = this.data.grantedPermissions this.multipleValue = this.data.grantedPermissions;
this.levelValue=this.data.organizationsLevel this.levelValue = this.data.organizationsLevel;
let level=JSON.parse(sessionStorage.getItem('userdata')).organization.level let level = JSON.parse(sessionStorage.getItem("userdata")).organization
let levelList=[ .level;
{level:0,name:'无'}, this.levelList = this.levelList.filter((e) => {
{level:1,name:'销售公司'}, return e.level > level || e.level == 0;
{level:2,name:'省公司'}, });
{level:3,name:'区域'}, this.getMenus();
{level:4,name:'油站'},
]
levelList.forEach(e=>{
if(e.level>=level||e.level==0){
this.levelList.push(e)
}
})
this.getMenus()
this.validateForm = this.fb.group({ this.validateForm = this.fb.group({
name: [null, [Validators.required]], name: [null, [Validators.required]],
power: [null], power: [null],
menus: [null], menus: [null],
organizationsLevel:[null] organizationsLevel: [null],
}); });
if (this.optionList.length == 0) { if (this.optionList.length == 0) {
this.loadMore() this.loadMore();
} }
} }
getMenus() { getMenus() {
let params = { let params = {
Id: this.data.id, Id: this.data.id,
} };
this.http.get('/api/services/app/Role/Get', { this.http
params: params .get("/api/services/app/Role/Get", {
}).subscribe((data: any) => { params: params,
let arr = [] })
data.result.menus.forEach(element => { .subscribe((data: any) => {
arr.push(element.id) let arr = [];
}); data.result.menus.forEach((element) => {
this.validateForm.patchValue({ arr.push(element.id);
menus: arr });
this.validateForm.patchValue({
menus: arr,
});
}); });
})
} }
totalCount totalCount;
getAllMenus() { getAllMenus() {
let params = { let params = {
SkipCount: '0', SkipCount: "0",
MaxResultCount: '999' MaxResultCount: "999",
} };
this.http.get('/api/services/app/Menu/GetAll', { this.http
params: params .get("/api/services/app/Menu/GetAll", {
}).subscribe((data: any) => { params: params,
console.log(666, data) })
this.totalCount = data.result.totalCount .subscribe((data: any) => {
data.result.items.forEach(element => { console.log(666, data);
element.key = element.id this.totalCount = data.result.totalCount;
element.title = element.name data.result.items.forEach((element) => {
element.selectable = false element.key = element.id;
element.title = element.name;
element.selectable = false;
});
this.nodes = [...this.toTree.toTree(data.result.items)];
}); });
this.nodes = [...this.toTree.toTree(data.result.items)]
})
} }
destroyModal(): void { destroyModal(): void {
this.modal.destroy({ data: 'this the result data' }); this.modal.destroy({ data: "this the result data" });
} }
// optionList = []; // optionList = [];
//获取权限列表 //获取权限列表
loadMore() { loadMore() {
this.http.get('/api/services/app/Role/GetAllPermissions').subscribe((data: any) => { this.http
this.optionList = data.result.items .get("/api/services/app/Role/GetAllPermissions")
this.modal.containerInstance.config.nzOkLoading = false .subscribe((data: any) => {
// console.log('所有权限',data) this.optionList = data.result.items;
}) this.modal.containerInstance.config.nzOkLoading = false;
// console.log('所有权限',data)
});
} }
} }

Loading…
Cancel
Save