giganet_conecta
Version:
Aplicação com o fim de facilitar conexões com APi's e Banco de Dados (MySql, Mongo e Elasticsearch).
139 lines (118 loc) • 2.22 kB
JavaScript
const mongoose = require("mongoose");
module.exports = new mongoose.Schema({
id_atendimento: {
type: mongoose.Types.ObjectId,
required: true,
},
id_cliente: {
type: mongoose.Types.ObjectId,
required: true,
},
tags: {
type: [String],
required: true,
},
usuarios_acompanhar: {
type: [String],
required: true,
},
id_atendente: {
type: mongoose.Types.ObjectId,
required: true,
},
id_user: {
type: mongoose.Types.ObjectId,
required: true,
},
canal: {
type: String,
required: true,
},
canal_cliente: {
type: String,
required: true,
},
canal_id: {
type: mongoose.Types.ObjectId,
required: true,
},
setor: {
type: String,
required: true,
},
descricao: {
type: String,
required: true,
},
status: {
type: String,
required: true,
},
date: {
type: Date,
required: true,
},
inicio: {
type: Date,
required: true,
},
fim: {
type: Date,
required: true,
},
update: {
type: Date,
required: true,
},
protocolo: {
type: String,
required: true,
},
data_fixacao: {
type: Date,
required: true,
},
updatedAt: {
type: Date,
required: true,
},
operacoes: {
type: [
{
tipo: {
type: String,
required: true,
},
date: {
type: Date,
required: true,
},
departamento: {
type: mongoose.Types.ObjectId,
required: true,
},
atendente: {
type: mongoose.Types.ObjectId,
required: true,
},
departamentoDestino: {
type: mongoose.Types.ObjectId,
required: false,
},
atendenteDestino: {
type: mongoose.Types.ObjectId,
required: false,
},
tempoDeDuracao: {
type: Number,
required: false,
},
endDate: {
type: Date,
required: false,
},
},
],
required: true,
},
});