Teamlinker/code/server/common/permission/organization.ts
sx1989827 1cbacd5df8 fix
2022-05-16 22:26:02 +08:00

27 lines
1.0 KiB
TypeScript

import { organizationUserModel } from '../../../common/model/organization_user';
import { REDIS_GATEWAY } from '../cache/keys/gateway';
import { getMysqlInstance } from '../db/mysql';
import { generateQuerySql } from '../util/sql';
import { ECommon_Organization_User_Role } from './../../../common/model/organization_user';
export async function getOrganizationPermission(organizationId:string,userId:string):Promise<ECommon_Organization_User_Role> {
if(!organizationId) {
return null;
}
let objRedis=REDIS_GATEWAY.Permission.organizationRole(organizationId,userId)
let exist = objRedis.exists()
if(exist) {
let value=await objRedis.get()
return parseInt(value);
} else {
let mysql=getMysqlInstance()
let obj=await mysql.executeOne(generateQuerySql(organizationUserModel,["role"],{
organization_id:organizationId,
user_id:userId
}))
if(obj) {
return obj.role
} else {
return null;
}
}
}