giganet_conecta
Version:
Aplicação com o fim de facilitar conexões com APi's e Banco de Dados (MySql, Mongo e Elasticsearch).
276 lines (269 loc) • 7.71 kB
JavaScript
const { Model, DataTypes } = require("sequelize");
module.exports = Usuarios
async function Usuarios(sequelize) {
class Model_Usuarios extends Model { }
Model_Usuarios.init({
id: {
autoIncrement: true,
type: DataTypes.INTEGER,
allowNull: false,
primaryKey: true
},
id_grupo: {
type: DataTypes.INTEGER,
allowNull: false,
references: {
model: 'usuarios_grupo',
key: 'id'
}
},
nome: {
type: DataTypes.STRING(150),
allowNull: false
},
email: {
type: DataTypes.STRING(200),
allowNull: false
},
senha: {
type: DataTypes.STRING(255),
allowNull: false
},
id_caixa: {
type: DataTypes.INTEGER,
allowNull: true
},
recebimentos_dia_atual: {
type: DataTypes.ENUM('S', 'N'),
allowNull: false,
defaultValue: "N"
},
lancamentos_dia_atual: {
type: DataTypes.ENUM('S', 'N'),
allowNull: false,
defaultValue: "S"
},
vendedor_padrao: {
type: DataTypes.INTEGER,
allowNull: true
},
funcionario: {
type: DataTypes.INTEGER,
allowNull: true
},
caixa_fn_receber: {
type: DataTypes.INTEGER,
allowNull: true
},
status: {
type: DataTypes.ENUM('A', 'I'),
allowNull: true,
defaultValue: "A"
},
filtra_setor: {
type: DataTypes.ENUM('S', 'N'),
allowNull: true,
defaultValue: "S"
},
filtra_funcionario: {
type: DataTypes.ENUM('S', 'N'),
allowNull: false,
defaultValue: "S"
},
desc_max_recebimento: {
type: DataTypes.DECIMAL(5, 2),
allowNull: false,
defaultValue: 0.00
},
desc_max_venda: {
type: DataTypes.DECIMAL(5, 2),
allowNull: false,
defaultValue: 0.00
},
token_push: {
type: DataTypes.STRING(180),
allowNull: true
},
crm_filtra_vendedor: {
type: DataTypes.ENUM('S', 'N'),
allowNull: false,
defaultValue: "N"
},
pagamentos_dia_atual: {
type: DataTypes.ENUM('S', 'N'),
allowNull: false,
defaultValue: "N"
},
enviar_monitoramento_host: {
type: DataTypes.ENUM('S', 'N'),
allowNull: true,
defaultValue: "N"
},
acesso_webservice: {
type: DataTypes.ENUM('S', 'N'),
allowNull: true,
defaultValue: "N"
},
qtde_liberacoes: {
type: DataTypes.INTEGER,
allowNull: false,
defaultValue: 1
},
tipo_alcada: {
type: DataTypes.ENUM('ADM', 'SUP', 'OP'),
allowNull: false,
defaultValue: "ADM"
},
mostrar_os_sem_funcionario: {
type: DataTypes.ENUM('S', 'N'),
allowNull: true,
defaultValue: "S"
},
enviar_notificacao_backup: {
type: DataTypes.ENUM('S', 'N'),
allowNull: true,
defaultValue: "N"
},
imagem: {
type: DataTypes.STRING(1024),
allowNull: true
},
callcenter: {
type: DataTypes.STRING(30),
allowNull: true
},
user_callcenter: {
type: DataTypes.ENUM('N', 'S'),
allowNull: false,
defaultValue: "N"
},
desc_max_renegociacao: {
type: DataTypes.DECIMAL(5, 2),
allowNull: false,
defaultValue: 0.00
},
inmap_filtra_vendedor: {
type: DataTypes.ENUM('S', 'N'),
allowNull: false,
defaultValue: "N"
},
permite_inutilizar_patrimonio: {
type: DataTypes.ENUM('S', 'N'),
allowNull: true,
defaultValue: "N"
},
alter_passwd_date: {
type: DataTypes.DATE,
allowNull: true
},
permite_acesso_ixc_mobile: {
type: DataTypes.ENUM('S', 'N'),
allowNull: false,
defaultValue: "S"
},
token_inmapservice: {
type: DataTypes.STRING(163),
allowNull: true
},
helpmode_enabled: {
type: DataTypes.ENUM('S', 'N'),
allowNull: true,
defaultValue: "S"
},
language: {
type: DataTypes.ENUM('Pt-Br', 'En-Us', 'Es-Es'),
allowNull: false,
defaultValue: "Pt-Br"
},
permite_ver_diferenca: {
type: DataTypes.ENUM('S', 'N'),
allowNull: false,
defaultValue: "S"
},
filtra_departamento_ticket: {
type: DataTypes.ENUM('S', 'N'),
allowNull: false,
defaultValue: "N"
},
filtra_funcionario_ticket: {
type: DataTypes.ENUM('S', 'N'),
allowNull: false,
defaultValue: "N"
},
mostrar_ticket_sem_funcionario: {
type: DataTypes.ENUM('S', 'N'),
allowNull: false,
defaultValue: "S"
},
template: {
type: DataTypes.ENUM('d', 'vg'),
allowNull: false,
defaultValue: "d"
},
administrador_kanban: {
type: DataTypes.ENUM('S', 'N'),
allowNull: true,
defaultValue: "N"
},
versao_fiberdocs: {
type: DataTypes.ENUM('O', 'N'),
allowNull: true
},
filtrar_plano_venda_filial_contrato: {
type: DataTypes.STRING(1),
allowNull: false
}
}, {
sequelize,
timestamps: false,
modelName: "usuarios",
tableName: "usuarios",
indexes: [
{
name: "PRIMARY",
unique: true,
using: "BTREE",
fields: [
{ name: "id" },
]
},
{
name: "id_grupo",
using: "BTREE",
fields: [
{ name: "id_grupo" },
]
},
{
name: "id_caixa",
using: "BTREE",
fields: [
{ name: "id_caixa" },
]
},
{
name: "vendedor_padrao",
using: "BTREE",
fields: [
{ name: "vendedor_padrao" },
]
},
{
name: "funcionario",
using: "BTREE",
fields: [
{ name: "funcionario" },
]
},
{
name: "caixa_fn_receber",
using: "BTREE",
fields: [
{ name: "caixa_fn_receber" },
]
},
]
}
)
return Model_Usuarios
}