You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
688 B
39 lines
688 B
1 year ago
|
const {
|
||
|
userCollection
|
||
|
} = require('../../common/constants')
|
||
|
const {
|
||
|
ERROR
|
||
|
} = require('../../common/error')
|
||
|
const {
|
||
|
findUser
|
||
|
} = require('../../lib/utils/account')
|
||
|
|
||
|
async function isAuthorizeApproved ({
|
||
|
uid,
|
||
|
appIdList
|
||
|
} = {}) {
|
||
|
const getUserRes = await userCollection.doc(uid).get()
|
||
|
const userRecord = getUserRes.data[0]
|
||
|
if (!userRecord) {
|
||
|
throw {
|
||
|
errCode: ERROR.ACCOUNT_NOT_EXISTS
|
||
|
}
|
||
|
}
|
||
|
const {
|
||
|
userMatched
|
||
|
} = await findUser({
|
||
|
userQuery: userRecord,
|
||
|
authorizedApp: appIdList
|
||
|
})
|
||
|
|
||
|
if (userMatched.some(item => item._id !== uid)) {
|
||
|
throw {
|
||
|
errCode: ERROR.ACCOUNT_CONFLICT
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
module.exports = {
|
||
|
isAuthorizeApproved
|
||
|
}
|