giganet_conecta
Version:
Aplicação com o fim de facilitar conexões com APi's e Banco de Dados (MySql, Mongo e Elasticsearch).
97 lines (92 loc) • 2.11 kB
JavaScript
const { Model, DataTypes } = require("sequelize");
module.exports = Cidade;
async function Cidade(sequelize) {
class Model_Cidade extends Model {}
Model_Cidade.init(
{
id: {
autoIncrement: true,
type: DataTypes.INTEGER,
allowNull: false,
primaryKey: true,
},
nome: {
type: DataTypes.STRING(100),
allowNull: false,
},
uf: {
type: DataTypes.INTEGER,
allowNull: false,
references: {
model: "uf",
key: "id",
},
},
regiao: {
type: DataTypes.STRING(100),
allowNull: true,
},
cod_ibge: {
type: DataTypes.INTEGER.UNSIGNED,
allowNull: true,
defaultValue: 0,
},
cod_siafi: {
type: DataTypes.STRING(10),
allowNull: true,
},
latitude: {
type: DataTypes.STRING(30),
allowNull: true,
},
longitude: {
type: DataTypes.STRING(30),
allowNull: true,
},
cod_cidade_nfse_forquilhinha_sc: {
type: DataTypes.INTEGER,
allowNull: true,
},
origem: {
type: DataTypes.ENUM("N", "I"),
allowNull: false,
defaultValue: "N",
},
api_id: {
type: DataTypes.INTEGER.UNSIGNED,
allowNull: true,
unique: "api_id",
},
},
{
sequelize,
tableName: "cidade",
timestamps: false,
indexes: [
{
name: "PRIMARY",
unique: true,
using: "BTREE",
fields: [{ name: "id" }],
},
{
name: "api_id",
unique: true,
using: "BTREE",
fields: [{ name: "api_id" }],
},
{
name: "uf",
using: "BTREE",
fields: [{ name: "uf" }],
},
{
name: "cod_ibge",
using: "BTREE",
fields: [{ name: "cod_ibge" }],
},
],
}
);
return Model_Cidade;
}