UNPKG

@tomei/sso

Version:
80 lines (71 loc) 2.5 kB
import { ClassError, ObjectBase } from '@tomei/general'; import { UserObjectPrivilegeRepository } from './user-object-privilege.repository'; import { IUserObjectPrivilegeAttr } from '../../interfaces/user-object-privilege.interface'; import { ObjectStatus } from '../../enum/object-status.enum'; export class UserObjectPrivilege extends ObjectBase { TableName = 'sso_UserObjectPrivilege'; ObjectName: string; ObjectPrivilegeId: number; UserId: number; SystemPrivilegeId: string; ObjectId: string; ObjectType: string; Status: ObjectStatus; private _CreatedAt: Date; private _UpdatedAt: Date; private _CreatedById: number; private _UpdatedById: number; get CreatedAt() { return this._CreatedAt; } get UpdatedAt() { return this._UpdatedAt; } get CreatedById() { return this._CreatedById; } get UpdatedById() { return this._UpdatedById; } private static _Repository = new UserObjectPrivilegeRepository(); private constructor(userObjectPrivilegeAttr?: IUserObjectPrivilegeAttr) { super(); if (userObjectPrivilegeAttr) { this.ObjectPrivilegeId = userObjectPrivilegeAttr.ObjectPrivilegeId; this.UserId = userObjectPrivilegeAttr.UserId; this.SystemPrivilegeId = userObjectPrivilegeAttr.SystemPrivilegeId; this.ObjectId = userObjectPrivilegeAttr.ObjectId; this.ObjectType = userObjectPrivilegeAttr.ObjectType; this.Status = userObjectPrivilegeAttr.Status; this._CreatedAt = userObjectPrivilegeAttr.CreatedAt; this._UpdatedAt = userObjectPrivilegeAttr.UpdatedAt; this._CreatedById = userObjectPrivilegeAttr.CreatedById; this._UpdatedById = userObjectPrivilegeAttr.UpdatedById; } } public static async init(dbTransaction?: any, ObjectPrivilegeId?: number) { try { const userObjectPrivilege = new UserObjectPrivilege(); if (ObjectPrivilegeId) { const userObjectPrivilegeAttr = await this._Repository.findOne({ where: { ObjectPrivilegeId }, transaction: dbTransaction, }); if (userObjectPrivilegeAttr) { return new UserObjectPrivilege( userObjectPrivilegeAttr.get({ plain: true }), ); } else { throw new ClassError( 'UserObjectPrivilege', 'UserObjectPrivilegeErrMsg00', 'UserObjectPrivilege not found', ); } } return userObjectPrivilege; } catch (error) { throw error; } } }