Merge pull request #1679 from gradido/mass_creation_do_not_show_unactivated

Refactor: Multicreation - do not show unactivated emails
This commit is contained in:
Ulf Gebhardt 2022-03-29 20:39:30 +02:00 committed by GitHub
commit 902d45e8d2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 34 additions and 24 deletions

View File

@ -71,6 +71,8 @@ describe('Creation', () => {
searchText: '',
currentPage: 1,
pageSize: 25,
isDeleted: false,
notActivated: false,
},
}),
)
@ -269,6 +271,8 @@ describe('Creation', () => {
searchText: 'XX',
currentPage: 1,
pageSize: 25,
isDeleted: false,
notActivated: false,
},
}),
)
@ -284,6 +288,8 @@ describe('Creation', () => {
searchText: '',
currentPage: 1,
pageSize: 25,
isDeleted: false,
notActivated: false,
},
}),
)
@ -299,6 +305,8 @@ describe('Creation', () => {
searchText: '',
currentPage: 2,
pageSize: 25,
isDeleted: false,
notActivated: false,
},
}),
)

View File

@ -102,6 +102,8 @@ export default {
searchText: this.criteria,
currentPage: this.currentPage,
pageSize: this.perPage,
notActivated: false,
isDeleted: false,
},
fetchPolicy: 'network-only',
})

View File

@ -82,8 +82,8 @@ describe('UserSearch', () => {
searchText: '',
currentPage: 1,
pageSize: 25,
notActivated: false,
isDeleted: false,
notActivated: null,
isDeleted: null,
},
}),
)
@ -102,7 +102,7 @@ describe('UserSearch', () => {
currentPage: 1,
pageSize: 25,
notActivated: true,
isDeleted: false,
isDeleted: null,
},
}),
)
@ -121,7 +121,7 @@ describe('UserSearch', () => {
searchText: '',
currentPage: 1,
pageSize: 25,
notActivated: false,
notActivated: null,
isDeleted: true,
},
}),
@ -141,8 +141,8 @@ describe('UserSearch', () => {
searchText: '',
currentPage: 2,
pageSize: 25,
notActivated: false,
isDeleted: false,
notActivated: null,
isDeleted: null,
},
}),
)
@ -161,8 +161,8 @@ describe('UserSearch', () => {
searchText: 'search string',
currentPage: 1,
pageSize: 25,
notActivated: false,
isDeleted: false,
notActivated: null,
isDeleted: null,
},
}),
)
@ -178,8 +178,8 @@ describe('UserSearch', () => {
searchText: '',
currentPage: 1,
pageSize: 25,
notActivated: false,
isDeleted: false,
notActivated: null,
isDeleted: null,
},
}),
)

View File

@ -3,11 +3,11 @@
<div class="user-search-first-div">
<b-button class="unconfirmedRegisterMails" variant="light" @click="unconfirmedRegisterMails">
<b-icon icon="envelope" variant="danger"></b-icon>
{{ filterCheckedEmails ? $t('all_emails') : $t('unregistered_emails') }}
{{ filterCheckedEmails ? $t('unregistered_emails') : $t('all_emails') }}
</b-button>
<b-button class="deletedUserSearch" variant="light" @click="deletedUserSearch">
<b-icon icon="x-circle" variant="danger"></b-icon>
{{ filterDeletedUser ? $t('all_emails') : $t('deleted_user') }}
{{ filterDeletedUser ? $t('deleted_user') : $t('all_emails') }}
</b-button>
</div>
<label>{{ $t('user_search') }}</label>
@ -60,8 +60,8 @@ export default {
searchResult: [],
massCreation: [],
criteria: '',
filterCheckedEmails: false,
filterDeletedUser: false,
filterCheckedEmails: null,
filterDeletedUser: null,
rows: 0,
currentPage: 1,
perPage: 25,
@ -70,11 +70,11 @@ export default {
},
methods: {
unconfirmedRegisterMails() {
this.filterCheckedEmails = !this.filterCheckedEmails
this.filterCheckedEmails = this.filterCheckedEmails ? null : true
this.getUsers()
},
deletedUserSearch() {
this.filterDeletedUser = !this.filterDeletedUser
this.filterDeletedUser = this.filterDeletedUser ? null : true
this.getUsers()
},
getUsers() {

View File

@ -12,8 +12,8 @@ export default class SearchUsersArgs {
pageSize?: number
@Field(() => Boolean, { nullable: true })
notActivated?: boolean
notActivated?: boolean | null
@Field(() => Boolean, { nullable: true })
isDeleted?: boolean
isDeleted?: boolean | null
}

View File

@ -58,19 +58,19 @@ export class AdminResolver {
searchText,
currentPage = 1,
pageSize = 25,
notActivated = false,
isDeleted = false,
notActivated = null,
isDeleted = null,
}: SearchUsersArgs,
): Promise<SearchUsersResult> {
const userRepository = getCustomRepository(UserRepository)
const filterCriteria: ObjectLiteral[] = []
if (notActivated) {
filterCriteria.push({ emailChecked: false })
if (notActivated !== null) {
filterCriteria.push({ emailChecked: !notActivated })
}
if (isDeleted) {
filterCriteria.push({ deletedAt: Not(IsNull()) })
if (isDeleted !== null) {
filterCriteria.push({ deletedAt: isDeleted ? Not(IsNull()) : IsNull() })
}
const userFields = ['id', 'firstName', 'lastName', 'email', 'emailChecked', 'deletedAt']