Filter out existimg members when add a new member #4364

This commit is contained in:
pfh 2018-05-17 16:20:22 +08:00
parent 6a7ba4609f
commit 14614b3572
2 changed files with 5 additions and 3 deletions

View File

@ -50,6 +50,7 @@ import { MemberService } from '../member.service';
}) })
export class AddMemberComponent implements AfterViewChecked, OnInit, OnDestroy { export class AddMemberComponent implements AfterViewChecked, OnInit, OnDestroy {
@Input() memberList: Member[] = [];
member: Member = new Member(); member: Member = new Member();
addMemberOpened: boolean; addMemberOpened: boolean;
@ -85,6 +86,7 @@ export class AddMemberComponent implements AfterViewChecked, OnInit, OnDestroy {
private ref: ChangeDetectorRef) { } private ref: ChangeDetectorRef) { }
ngOnInit(): void { ngOnInit(): void {
let resolverData = this.route.snapshot.parent.data; let resolverData = this.route.snapshot.parent.data;
let hasProjectAdminRole: boolean; let hasProjectAdminRole: boolean;
if (resolverData) { if (resolverData) {
@ -120,8 +122,8 @@ export class AddMemberComponent implements AfterViewChecked, OnInit, OnDestroy {
// username autocomplete // username autocomplete
if (this.userLists && this.userLists.length) { if (this.userLists && this.userLists.length) {
this.selectUserName = []; this.selectUserName = [];
this.userLists.filter(data => { this.userLists.forEach(data => {
if (data.username.startsWith(cont.value)) { if (data.username.startsWith(cont.value) && !this.memberList.find(mem => mem.entity_name === data.username)) {
if (this.selectUserName.length < 10) { if (this.selectUserName.length < 10) {
this.selectUserName.push(data.username); this.selectUserName.push(data.username);
} }

View File

@ -45,5 +45,5 @@
</clr-dg-footer> </clr-dg-footer>
</clr-datagrid> </clr-datagrid>
</div> </div>
<add-member [projectId]="projectId" (added)="addedMember($event)"></add-member> <add-member [projectId]="projectId" [memberList]="members" (added)="addedMember($event)"></add-member>
</div> </div>