-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathseed.js
96 lines (81 loc) · 2.22 KB
/
seed.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
const database = require('./database')
const modelsInitializer = require('./src/models')
const { logger } = require('./logger')
const databaseConnection = database.connect()
const models = modelsInitializer(databaseConnection)
const createAcolhido = () => models.Acolhido.create({
nome: 'Abelardo Dores',
nascimento: '12/10/2006',
peso: 12.5,
alergias: 'Paracetamol',
via_alimentacao: 'Oral'
})
const createPrescricao = acolhido => models.Prescricao.create({
data: Date.now(),
validade: '11/11/2111',
updated_at: Date.now(),
acolhido_id: acolhido.id
})
const createMedicamento = prescricao => models.Medicamento.create({
nome: 'Dorflex',
dosagem: '500mg',
formaFarmaceutica: 'Paracetamol',
via: 'Oral',
validadeMed: 'até 30/03',
posologia: '8h-1CP 16h-2CP',
observacoes: 'nada',
prescricao_id: prescricao.id
})
.then(() => prescricao)
const createCuidado = prescricao => models.Cuidado.create({
descricao: 'Dar banho',
intervalo: '12h-12h',
observacoes: 'Com Jhonsons Baby',
prescricao_id: prescricao.id
})
const createDieta = prescricao => models.Dieta.create({
tipo: 'Hipercalórica',
intervalo: '4h-4h',
observacoes: 'Não come pimenta',
prescricao_id: prescricao.id
})
const createUsuarioClinica = () => models.Usuario.create({
tipo: 'clinica',
nome: 'Marlene',
senha: 'marlene',
})
const createUsuarioNeurologista = () => models.Usuario.create({
tipo: 'neurologista',
nome: 'Karen',
senha: 'karen',
})
const createUsuarioFarmaceutica = () => models.Usuario.create({
tipo: 'farmaceutica',
nome: 'Fabiana',
senha: 'fabi',
})
const letItCrash = error => {
logger.error('Erro durante o seed:', error.message)
process.exit(1)
}
const createOtherAcolhido = () => models.Acolhido.create({
nome: 'Dbelardo Aores',
nascimento: '11/10/2006',
peso: 13.5,
alergias: 'Paracetamol',
via_alimentacao: 'Oral'
})
const finishWithSuccess = () => process.exit(0)
databaseConnection
.sync()
.then(createAcolhido)
.then(createOtherAcolhido)
.then(createPrescricao)
.then(createMedicamento)
.then(createCuidado)
.then(createDieta)
.then(createUsuarioClinica)
.then(createUsuarioNeurologista)
.then(createUsuarioFarmaceutica)
.then(finishWithSuccess)
.catch(letItCrash)