cubash-archive/models/team_member_role.js

88 lines
2.6 KiB
JavaScript

let createDOMPurify = require('dompurify');
let { JSDOM } = require('jsdom');
let window = new JSDOM('').window;
let DOMPurify = createDOMPurify(window);
var escaped_str = require('querystring')
const Errors = require('../lib/errors')
let pagination = require('../lib/pagination.js')
module.exports = (sequelize, DataTypes) => {
let TeamMemberRole = sequelize.define('TeamMemberRole', {
TeamId: {
type: DataTypes.BIGINT,
allowNull: false
},
RoleId: {
type: DataTypes.BIGINT
},
Role2Id: {
type: DataTypes.BIGINT
},
Role3Id: {
type: DataTypes.BIGINT
},
Role4Id: {
type: DataTypes.BIGINT
},
Role5Id: {
type: DataTypes.BIGINT
},
Role6Id: {
type: DataTypes.BIGINT
},
Role7Id: {
type: DataTypes.BIGINT
},
Role8Id: {
type: DataTypes.BIGINT
},
Role9Id: {
type: DataTypes.BIGINT
},
Role10Id: {
type: DataTypes.BIGINT
},
UserId: {
type: DataTypes.BIGINT,
allowNull: false
},
createdAt: {
type: DataTypes.DATE,
allowNull: false
},
updatedAt: {
type: DataTypes.DATE,
allowNull: false
}
})
TeamMemberRole.associate = function (models) {
TeamMemberRole.belongsTo(models.User)
TeamMemberRole.belongsTo(models.TeamRoles, { as: 'Role'})
TeamMemberRole.belongsTo(models.TeamRoles, { as: 'Role2'})
TeamMemberRole.belongsTo(models.TeamRoles, { as: 'Role3'})
TeamMemberRole.belongsTo(models.TeamRoles, { as: 'Role4'})
TeamMemberRole.belongsTo(models.TeamRoles, { as: 'Role5'})
TeamMemberRole.belongsTo(models.TeamRoles, { as: 'Role6'})
TeamMemberRole.belongsTo(models.TeamRoles, { as: 'Role7'})
TeamMemberRole.belongsTo(models.TeamRoles, { as: 'Role8'})
TeamMemberRole.belongsTo(models.TeamRoles, { as: 'Role9'})
TeamMemberRole.belongsTo(models.TeamRoles, { as: 'Role10'})
TeamMemberRole.belongsTo(models.TeamRoles, { as: 'Team' })
}
TeamMemberRole.includeOptions = function () {
let models = sequelize.models
return [
{model: models.User, as: 'User', attributes: ['username', 'createdAt', 'id', 'color', 'picture']},
{model: models.TeamRoles},
]
}
TeamMemberRole.prototype.leaveTeam = function () {
this.destroy()
}
return TeamMemberRole
}