feat: admin groups - list + create, gql refactoring
This commit is contained in:
@@ -35,7 +35,7 @@ module.exports = {
|
||||
let authResult = await WIKI.db.User.login(args, context)
|
||||
return {
|
||||
...authResult,
|
||||
operation: graphHelper.generateSuccess('Login success')
|
||||
responseResult: graphHelper.generateSuccess('Login success')
|
||||
}
|
||||
} catch (err) {
|
||||
return graphHelper.generateError(err)
|
||||
@@ -46,7 +46,7 @@ module.exports = {
|
||||
let authResult = await WIKI.db.User.loginTFA(args, context)
|
||||
return {
|
||||
...authResult,
|
||||
operation: graphHelper.generateSuccess('TFA success')
|
||||
responseResult: graphHelper.generateSuccess('TFA success')
|
||||
}
|
||||
} catch (err) {
|
||||
return graphHelper.generateError(err)
|
||||
|
@@ -1,3 +1,4 @@
|
||||
const graphHelper = require('../../helpers/graph')
|
||||
|
||||
/* global WIKI */
|
||||
|
||||
@@ -11,8 +12,22 @@ module.exports = {
|
||||
async groups() { return {} }
|
||||
},
|
||||
GroupQuery: {
|
||||
list(obj, args, context, info) {
|
||||
return WIKI.db.Group.findAll({ where: args })
|
||||
async list(obj, args, context, info) {
|
||||
return WIKI.db.Group.findAll({
|
||||
attributes: {
|
||||
include: [[WIKI.db.inst.fn('COUNT', WIKI.db.inst.col('users.id')), 'userCount']]
|
||||
},
|
||||
include: [{
|
||||
model: WIKI.db.User,
|
||||
attributes: [],
|
||||
through: {
|
||||
attributes: []
|
||||
}
|
||||
}],
|
||||
raw: true,
|
||||
// TODO: Figure out how to exclude these extra fields...
|
||||
group: ['group.id', 'users->userGroups.createdAt', 'users->userGroups.updatedAt', 'users->userGroups.version', 'users->userGroups.userId', 'users->userGroups.groupId']
|
||||
})
|
||||
}
|
||||
},
|
||||
GroupMutation: {
|
||||
@@ -29,8 +44,15 @@ module.exports = {
|
||||
})
|
||||
})
|
||||
},
|
||||
create(obj, args) {
|
||||
return WIKI.db.Group.create(args)
|
||||
async create(obj, args) {
|
||||
const group = await WIKI.db.Group.create({
|
||||
name: args.name
|
||||
})
|
||||
console.info(group)
|
||||
return {
|
||||
responseResult: graphHelper.generateSuccess('Group created successfully.'),
|
||||
group
|
||||
}
|
||||
},
|
||||
delete(obj, args) {
|
||||
return WIKI.db.Group.destroy({
|
||||
|
@@ -59,7 +59,7 @@ type AuthenticationProvider {
|
||||
}
|
||||
|
||||
type AuthenticationLoginResponse {
|
||||
operation: ResponseStatus
|
||||
responseResult: ResponseStatus
|
||||
tfaRequired: Boolean
|
||||
tfaLoginToken: String
|
||||
}
|
||||
|
@@ -39,12 +39,12 @@ input KeyValuePairInput {
|
||||
}
|
||||
|
||||
type DefaultResponse {
|
||||
operation: ResponseStatus
|
||||
responseResult: ResponseStatus
|
||||
}
|
||||
|
||||
type ResponseStatus {
|
||||
succeeded: Boolean!
|
||||
code: Int!
|
||||
errorCode: Int!
|
||||
slug: String!
|
||||
message: String
|
||||
}
|
||||
|
@@ -55,7 +55,7 @@ type GroupMutation {
|
||||
# -----------------------------------------------
|
||||
|
||||
type GroupResponse {
|
||||
operation: ResponseStatus!
|
||||
responseResult: ResponseStatus!
|
||||
group: Group
|
||||
}
|
||||
|
||||
@@ -64,6 +64,7 @@ type Group {
|
||||
name: String!
|
||||
rights: [String]
|
||||
users: [User]
|
||||
userCount: Int
|
||||
createdAt: Date!
|
||||
updatedAt: Date!
|
||||
}
|
||||
|
Reference in New Issue
Block a user