company_data_faker 0.0.3 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8c2219587e1bdcf0317dc9ef086dbca931458012
4
- data.tar.gz: 2b38dfc30181df9f8df1e49c5b97e8678a8b0b5e
3
+ metadata.gz: 022c83e3288fbeaefd106a4d63d15059671843e4
4
+ data.tar.gz: e0df42b0242e2619caab3f77255a4514c4881e2b
5
5
  SHA512:
6
- metadata.gz: 994077c1f9df3fa2a4ae7461b438d98d682065e0ad5150be973193ea026a216d719f0047e03e3641ccdc43d498ed4feec75ec6005d121ad97cd30d0796d0d3bb
7
- data.tar.gz: 66fd0f0c9a5c1186e7bd3fbbde42e187b9ceae37c9610a85065183d0dac94b1b1d18211353d1dbbc6b3aaa0931be693884c518a0db69a0d04ace5b220fcf2949
6
+ metadata.gz: 8f885cab08c8d98d235cf306dc553b74e64f421fb13bc3ce853f5dd0447f4da95d3874e25aff9ee4aa78f98856f151839344536e642f8f861cd6380cd7ce7a5b
7
+ data.tar.gz: a2c7abf78caf2cdce83b3ee1c59b1bd2fe72bfc02759870725f6cc39e3ab7cacd12e39e09207ef329373e195ac6269e30308599f3946389514274a691107256d
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Company Data Faker
2
2
 
3
- Gerador de nomes para estrutura de empresas. Engloba departamentos, equipes, imagens para equipes, turnos, grupos e imagens de perfil.
3
+ Gerador de nomes para estrutura de empresas. Engloba departamentos, equipes, imagens para equipes, turnos, grupos, centros de custo e imagens de perfil.
4
4
 
5
5
  Generates Brazilian Company structure names and images.
6
6
 
@@ -19,34 +19,57 @@ Or add it to your Gemfile
19
19
 
20
20
  ## Usage
21
21
 
22
- ### Generates department names
22
+ ### Shifts
23
23
 
24
- Faker::CompanyData.department #=> "Administrativo"
25
- Faker::CompanyData.department #=> "Financeiro"
24
+ Faker::CompanyData.shift #=> "Manhã"
25
+ Faker::CompanyData.shift_all #=> Array with all shifts
26
26
 
27
- ### Generates team names
27
+ ### Departments
28
28
 
29
- Faker::CompanyData.team #=> "Desenvolvimento"
30
- Faker::CompanyData.team #=> "Geral"
29
+ Faker::CompanyData.department #=> "TI"
30
+ Faker::CompanyData.department_all #=> Array with all departments
31
31
 
32
- ### Generates shift names
32
+ ### Cost centers
33
33
 
34
- Faker::CompanyData.shift #=> "Geral"
35
- Faker::CompanyData.shift #=> "Manhã"
34
+ Faker::CompanyData.cost_center #=> "Compras"
35
+ Faker::CompanyData.cost_center_all #=> Array with all cost centers
36
36
 
37
- ### Generates group names
37
+ ### Teams
38
38
 
39
- Faker::CompanyData.group #=> "Recursos Humanos"
40
- Faker::CompanyData.group #=> "Administradores"
39
+ Faker::CompanyData.team #=> "Desenvolvimento"
40
+ Faker::CompanyData.team_all #=> Array with all teams
41
+ Faker::CompanyData.team("TI") #=> team for department TI
42
+ Faker::CompanyData.team_all("TI") #=> Array with all teams for department TI
41
43
 
42
- ### Generates team images (returns the real path) (use only team names generated by gem)
44
+ Faker::CompanyData.team_image("Desenvolvimento") #=> ".../company_data_faker/lib/images/team/desenvolvimento.jpg" (returns the real path)
43
45
 
44
- Faker::CompanyData.team_image("Analistas") #=> "/home/william/dev/company_data_faker/lib/images/team/analistas.jpg"
46
+ ### Groups
45
47
 
46
- ### Generates profile images (returns the real path)
48
+ Faker::CompanyData.group #=> "Desenvolvimento"
49
+ Faker::CompanyData.group_all #=> Array with all groups
50
+ Faker::CompanyData.group("TI") #=> group for department TI
51
+ Faker::CompanyData.group_all("TI") #=> Array with all groups for department TI
47
52
 
48
- Faker::CompanyData.team_image(:male) #=> "/home/william/dev/company_data_faker/lib/images/profile/male/12.jpg"
49
- Faker::CompanyData.team_image(:female) #=> "/home/william/dev/company_data_faker/lib/images/profile/female/15.jpg"
53
+ ### Groups
54
+
55
+ Faker::CompanyData.group #=> "Desenvolvimento"
56
+ Faker::CompanyData.group_all #=> Array with all groups
57
+ Faker::CompanyData.group("TI") #=> group for department TI
58
+ Faker::CompanyData.group_all("TI") #=> Array with all groups for department TI
59
+
60
+ ### Job titles
61
+
62
+ Faker::CompanyData.job_title #=> "Programador"
63
+ Faker::CompanyData.job_title_all #=> Array with all job_titles
64
+ Faker::CompanyData.job_title("TI") #=> job_title for department TI
65
+ Faker::CompanyData.job_title_all("TI") #=> Array with all job_titles for department TI
66
+ Faker::CompanyData.job_title("TI", "Desenvolvimento") #=> job_title for department TI and team Desenvolvimento
67
+ Faker::CompanyData.job_title_all("TI", "Desenvolvimento") #=> Array with all job_titles for department TI and team Desenvolvimento
68
+
69
+ ### Profiles
70
+
71
+ Faker::CompanyData.profile_image(:male) #=> ".../company_data_faker/lib/images/profile/male/12.jpg" (returns the real path)
72
+ Faker::CompanyData.profile_image(:female) #=> ".../company_data_faker/lib/images/profile/female/15.jpg" (returns the real path)
50
73
 
51
74
  ## Objective
52
75
 
@@ -1,7 +1,7 @@
1
1
  # -*- encoding: utf-8 -*-
2
2
  Gem::Specification.new do |s|
3
3
  s.name = "company_data_faker"
4
- s.version = "0.0.3"
4
+ s.version = "0.1.2"
5
5
  s.platform = Gem::Platform::RUBY
6
6
  s.authors = ["William Weckl"]
7
7
  s.email = ["william.weckl@gmail.com"]
@@ -0,0 +1,566 @@
1
+ {
2
+ "shifts": [
3
+ "Geral",
4
+ "Manhã",
5
+ "Tarde",
6
+ "Noite"
7
+ ],
8
+ "groups": [
9
+ "Administradores",
10
+ "Usuários",
11
+ "Clientes"
12
+ ],
13
+ "cost_centers": [
14
+ "Geral",
15
+ "Gestão",
16
+ "Projetos",
17
+ "Investimentos",
18
+ "Orçamentos",
19
+ "Produtos",
20
+ "Departamentos",
21
+ "Almoxarifado",
22
+ "Compras",
23
+ "Manutenção",
24
+ "Vigilância",
25
+ "Contabilidade",
26
+ "Refeitório",
27
+ "Importação"
28
+ ],
29
+ "teams": [
30
+ {
31
+ "name": "Geral"
32
+ },
33
+ {
34
+ "name": "Gerentes"
35
+ },
36
+ {
37
+ "name": "Limpeza"
38
+ }
39
+ ],
40
+ "job_titles": [
41
+ {
42
+ "name": "Gerente",
43
+ "unisex": true
44
+ },
45
+ {
46
+ "name": "Serviços gerais",
47
+ "unisex": true
48
+ },
49
+ {
50
+ "name": "Auxiliar",
51
+ "unisex": true
52
+ }
53
+ ],
54
+ "departments": [
55
+ {
56
+ "name": "Alimentação",
57
+ "groups": [],
58
+ "teams": [
59
+ {
60
+ "name": "Cozinha",
61
+ "job_titles": [
62
+ {
63
+ "name": "Nutricionista",
64
+ "unisex": true
65
+ },
66
+ {
67
+ "name": "Auxiliar de cozinha",
68
+ "unisex": true
69
+ },
70
+ {
71
+ "name": "Chefe de cozinha",
72
+ "unisex": true
73
+ },
74
+ {
75
+ "name": "Cozinheiro",
76
+ "unisex": false,
77
+ "female_name": "Cozinheira"
78
+ },
79
+ {
80
+ "name": "Merendeiro",
81
+ "unisex": false,
82
+ "female_name": "Merendeira"
83
+ },
84
+ {
85
+ "name": "Técnico de nutrição",
86
+ "unisex": false,
87
+ "female_name": "Técnica de nutrição"
88
+ }
89
+ ]
90
+ },
91
+ {
92
+ "name": "Copa",
93
+ "job_titles": [
94
+ {
95
+ "name": "Copeiro",
96
+ "unisex": false,
97
+ "female_name": "Copeira"
98
+ }
99
+ ]
100
+ },
101
+ {
102
+ "name": "Açougue",
103
+ "job_titles": [
104
+ {
105
+ "name": "Açougueiro",
106
+ "unisex": false,
107
+ "female_name": "Açougueira"
108
+ }
109
+ ]
110
+ },
111
+ {
112
+ "name": "Qualidade",
113
+ "job_titles": [
114
+ {
115
+ "name": "Gerente de qualidade",
116
+ "unisex": true
117
+ },
118
+ {
119
+ "name": "Auxiliar de qualidade",
120
+ "unisex": true
121
+ },
122
+ {
123
+ "name": "Operador de qualidade",
124
+ "unisex": false,
125
+ "female_name": "Operadora de qualidade"
126
+ }
127
+ ]
128
+ },
129
+ {
130
+ "name": "Produção",
131
+ "job_titles": [
132
+ {
133
+ "name": "Gerente de produção",
134
+ "unisex": true
135
+ },
136
+ {
137
+ "name": "Coordenador de produção",
138
+ "unisex": false,
139
+ "female_name": "Coordenadora de produção"
140
+ },
141
+ {
142
+ "name": "Auxiliar de produção",
143
+ "unisex": true
144
+ },
145
+ {
146
+ "name": "Operador de produção",
147
+ "unisex": false,
148
+ "female_name": "Operadora de produção"
149
+ }
150
+ ]
151
+ }
152
+ ]
153
+ },
154
+ {
155
+ "name": "TI",
156
+ "groups": [
157
+ "TI",
158
+ "Desenvolvedores",
159
+ "Analistas",
160
+ "Redes"
161
+ ],
162
+ "job_titles": [
163
+ {
164
+ "name": "Gerente de TI",
165
+ "unisex": true
166
+ },
167
+ {
168
+ "name": "Gerente de projetos",
169
+ "unisex": true
170
+ }
171
+ ],
172
+ "teams": [
173
+ {
174
+ "name": "Analistas",
175
+ "job_titles": [
176
+ {
177
+ "name": "Analista de infraestrutura",
178
+ "unisex": true
179
+ },
180
+ {
181
+ "name": "Analista de sistemas",
182
+ "unisex": true
183
+ },
184
+ {
185
+ "name": "Analista de desenvolvedor",
186
+ "unisex": false,
187
+ "female_name": "Analista de desenvolvedora"
188
+ }
189
+ ]
190
+ },
191
+ {
192
+ "name": "Desenvolvimento",
193
+ "job_titles": [
194
+ {
195
+ "name": "Desenvolvedor",
196
+ "unisex": false,
197
+ "female_name": "Desenvolvedora"
198
+ },
199
+ {
200
+ "name": "Programador",
201
+ "unisex": false,
202
+ "female_name": "Programadora"
203
+ },
204
+ {
205
+ "name": "Analista de sistemas",
206
+ "unisex": true
207
+ },
208
+ {
209
+ "name": "Analista de desenvolvedor",
210
+ "unisex": false,
211
+ "female_name": "Analista de desenvolvedora"
212
+ }
213
+ ]
214
+ },
215
+ {
216
+ "name": "Desenvolvimento Client-side",
217
+ "job_titles": [
218
+ {
219
+ "name": "Desenvolvedor",
220
+ "unisex": false,
221
+ "female_name": "Desenvolvedora"
222
+ },
223
+ {
224
+ "name": "Programador",
225
+ "unisex": false,
226
+ "female_name": "Programadora"
227
+ },
228
+ {
229
+ "name": "Analista de sistemas",
230
+ "unisex": true
231
+ },
232
+ {
233
+ "name": "Analista de desenvolvedor",
234
+ "unisex": false,
235
+ "female_name": "Analista de desenvolvedora"
236
+ }
237
+ ]
238
+ },
239
+ {
240
+ "name": "Desenvolvimento Server-side",
241
+ "job_titles": [
242
+ {
243
+ "name": "Desenvolvedor",
244
+ "unisex": false,
245
+ "female_name": "Desenvolvedora"
246
+ },
247
+ {
248
+ "name": "Programador",
249
+ "unisex": false,
250
+ "female_name": "Programadora"
251
+ },
252
+ {
253
+ "name": "Analista de sistemas",
254
+ "unisex": true
255
+ },
256
+ {
257
+ "name": "Analista de desenvolvedor",
258
+ "unisex": false,
259
+ "female_name": "Analista de desenvolvedora"
260
+ }
261
+ ]
262
+ },
263
+ {
264
+ "name": "Front-end",
265
+ "job_titles": [
266
+ {
267
+ "name": "Desenvolvedor",
268
+ "unisex": false,
269
+ "female_name": "Desenvolvedora"
270
+ },
271
+ {
272
+ "name": "Programador",
273
+ "unisex": false,
274
+ "female_name": "Programadora"
275
+ },
276
+ {
277
+ "name": "Analista de sistemas",
278
+ "unisex": true
279
+ },
280
+ {
281
+ "name": "Analista de desenvolvedor",
282
+ "unisex": false,
283
+ "female_name": "Analista de desenvolvedora"
284
+ }
285
+ ]
286
+ },
287
+ {
288
+ "name": "Back-end",
289
+ "job_titles": [
290
+ {
291
+ "name": "Desenvolvedor",
292
+ "unisex": false,
293
+ "female_name": "Desenvolvedora"
294
+ },
295
+ {
296
+ "name": "Programador",
297
+ "unisex": false,
298
+ "female_name": "Programadora"
299
+ },
300
+ {
301
+ "name": "Analista de sistemas",
302
+ "unisex": true
303
+ },
304
+ {
305
+ "name": "Analista de desenvolvedor",
306
+ "unisex": false,
307
+ "female_name": "Analista de desenvolvedora"
308
+ }
309
+ ]
310
+ }
311
+ ]
312
+ },
313
+ {
314
+ "name": "Administrativo",
315
+ "job_titles": [],
316
+ "groups": [],
317
+ "teams": [
318
+ {
319
+ "name": "Administrativo"
320
+ }
321
+ ]
322
+ },
323
+ {
324
+ "name": "Almoxarifado",
325
+ "job_titles": [
326
+ {
327
+ "name": "Almoxarife",
328
+ "unisex": true
329
+ }
330
+ ],
331
+ "groups": [],
332
+ "teams": [
333
+ {
334
+ "name": "Almoxarifes"
335
+ }
336
+ ]
337
+ },
338
+ {
339
+ "name": "Coordenação",
340
+ "job_titles": [
341
+ {
342
+ "name": "Coordenador",
343
+ "unisex": false,
344
+ "female_name": "Coordenadora"
345
+ }
346
+ ],
347
+ "groups": [],
348
+ "teams": [
349
+ {
350
+ "name": "Coordenadores"
351
+ }
352
+ ]
353
+ },
354
+ {
355
+ "name": "Criação",
356
+ "job_titles": [
357
+ {
358
+ "name": "Diretor de arte",
359
+ "unisex": false,
360
+ "female_name": "Diretora de arte"
361
+ },
362
+ {
363
+ "name": "Designer",
364
+ "unisex": true
365
+ },
366
+ {
367
+ "name": "Diretor de criação",
368
+ "unisex": false,
369
+ "female_name": "Diretora de criação"
370
+ }
371
+ ],
372
+ "groups": [],
373
+ "teams": [
374
+ {
375
+ "name": "Artes",
376
+ "job_titles": []
377
+ },
378
+ {
379
+ "name": "Design",
380
+ "job_titles": []
381
+ },
382
+ {
383
+ "name": "Design de produto",
384
+ "job_titles": []
385
+ },
386
+ {
387
+ "name": "Design gráfico",
388
+ "job_titles": []
389
+ }
390
+ ]
391
+ },
392
+ {
393
+ "name": "Departamento Pessoal",
394
+ "job_titles": [],
395
+ "groups": [],
396
+ "teams": [
397
+ {
398
+ "name": "Recursos Humanos"
399
+ }
400
+ ]
401
+ },
402
+ {
403
+ "name": "Compras",
404
+ "job_titles": [],
405
+ "groups": [],
406
+ "teams": [
407
+ {
408
+ "name": "Compras",
409
+ "job_titles": []
410
+ }
411
+ ]
412
+ },
413
+ {
414
+ "name": "Garagem",
415
+ "job_titles": [],
416
+ "groups": [],
417
+ "teams": [
418
+ {
419
+ "name": "Mecânicos",
420
+ "job_titles": [
421
+ {
422
+ "name": "Mecânico",
423
+ "unisex": false,
424
+ "female_name": "Mecânica"
425
+ }
426
+ ]
427
+ },
428
+ {
429
+ "name": "Motoristas",
430
+ "job_titles": [
431
+ {
432
+ "name": "Motorista",
433
+ "unisex": true
434
+ }
435
+ ]
436
+ }
437
+ ]
438
+ },
439
+ {
440
+ "name": "Geral",
441
+ "job_titles": [],
442
+ "groups": [],
443
+ "teams": []
444
+ },
445
+ {
446
+ "name": "Oficina",
447
+ "job_titles": [],
448
+ "groups": [],
449
+ "teams": [
450
+ {
451
+ "name": "Mecânicos",
452
+ "job_titles": [
453
+ {
454
+ "name": "Mecânico",
455
+ "unisex": false,
456
+ "female_name": "Mecânica"
457
+ }
458
+ ]
459
+ }
460
+ ]
461
+ },
462
+ {
463
+ "name": "Ouvidoria",
464
+ "job_titles": [],
465
+ "groups": [],
466
+ "teams": [
467
+ {
468
+ "name": "SAC",
469
+ "job_titles": [
470
+ {
471
+ "name": "Atendente",
472
+ "unisex": true
473
+ }
474
+ ]
475
+ },
476
+ {
477
+ "name": "Atendimento",
478
+ "job_titles": [
479
+ {
480
+ "name": "Atendente",
481
+ "unisex": true
482
+ }
483
+ ]
484
+ }
485
+ ]
486
+ },
487
+ {
488
+ "name": "Produção",
489
+ "job_titles": [],
490
+ "groups": [],
491
+ "teams": [
492
+ {
493
+ "name": "Produção",
494
+ "job_titles": []
495
+ }
496
+ ]
497
+ },
498
+ {
499
+ "name": "Recepção",
500
+ "job_titles": [],
501
+ "groups": [],
502
+ "teams": [
503
+ {
504
+ "name": "Recepção",
505
+ "job_titles": [
506
+ {
507
+ "name": "Recepcionista",
508
+ "unisex": false
509
+ }
510
+ ]
511
+ }
512
+ ]
513
+ },
514
+ {
515
+ "name": "Secretaria",
516
+ "job_titles": [],
517
+ "groups": [],
518
+ "teams": [
519
+ {
520
+ "name": "Atendimento",
521
+ "job_titles": [
522
+ {
523
+ "name": "Atendente",
524
+ "unisex": true
525
+ },
526
+ {
527
+ "name": "Secretário",
528
+ "unisex": false,
529
+ "female_name": "Secretária"
530
+ }
531
+ ]
532
+ },
533
+ {
534
+ "name": "Caixa",
535
+ "job_titles": [
536
+ {
537
+ "name": "Atendente de caixa",
538
+ "unisex": true
539
+ },
540
+ {
541
+ "name": "Operador de caixa",
542
+ "unisex": false,
543
+ "female_name": "Operadora de caixa"
544
+ }
545
+ ]
546
+ }
547
+ ]
548
+ },
549
+ {
550
+ "name": "Suporte",
551
+ "job_titles": [],
552
+ "groups": [],
553
+ "teams": [
554
+ {
555
+ "name": "Suporte",
556
+ "job_titles": [
557
+ {
558
+ "name": "Analista de suporte",
559
+ "unisex": true
560
+ }
561
+ ]
562
+ }
563
+ ]
564
+ }
565
+ ]
566
+ }
@@ -1,118 +1,84 @@
1
1
  module Faker
2
2
  class CompanyData
3
3
  class << self
4
+ def shift
5
+ shift_all.sample
6
+ end
7
+ def shift_all
8
+ json_file_hash["shifts"]
9
+ end
4
10
  def department
5
- ["Administrativo",
6
- "Publicidade",
7
- "Gráfico",
8
- "Garagem",
9
- "Oficina",
10
- "Almoxarifado",
11
- "TI",
12
- "Pedido",
13
- "Compras",
14
- "Estoque",
15
- "Vendas",
16
- "Importação",
17
- "Controle bancário",
18
- "Patrimônio",
19
- "Ordem de serviço",
20
- "BI",
21
- "Locação",
22
- "Faturamento",
23
- "Nota fiscal",
24
- "Orçamentos",
25
- "Logística",
26
- "Legal",
27
- "Assessoria",
28
- "Jurídico",
29
- "Jurídico-legal",
30
- "Contas a pagar",
31
- "Contas a receber",
32
- "Qualidade e Inovação",
33
- "Direção Financeira",
34
- "Direção",
35
- "Financeiro",
36
- "Administrativo",
37
- "Secretaria-Geral",
38
- "Secretaria",
39
- "Geral",
40
- "Recursos Humanos",
41
- "Informática",
42
- "Coordenação",
43
- "Infraestrutura",
44
- "Departamento Pessoal",
45
- "Desenvolvimento",
46
- "Produção",
47
- "Design",
48
- "Centro de processamento de dados",
49
- "Recepção Geral",
50
- "Recepção",
51
- "Ouvidoria",
52
- "Serviço de atendimento ao consumidor",
53
- "Alimentação",
54
- "Assessoria Técnica",
55
- "Suporte",
56
- ].sample
11
+ department_all.sample
57
12
  end
58
- def team
59
- ["Geral",
60
- "Desenvolvimento",
61
- "Desenvolvimento server-side",
62
- "Desenvolvimento client-side",
63
- "Programação",
64
- "Back-end",
65
- "Front-end",
66
- "Infraestrutura",
67
- "Redes",
68
- "Informática",
69
- "TI",
70
- "Tecnologia",
71
- "Design",
72
- "Design gráfico",
73
- "Design de produto",
74
- "Artes",
75
- "Publicidade",
76
- "Contabilidade",
77
- "Motoristas",
78
- "Mecânicos",
79
- "Vendedores",
80
- "Consultores",
81
- "Consultores BI",
82
- "Analistas",
83
- "Analistas BI",
84
- "Suporte",
85
- "SAC",
86
- "Cozinheiros",
87
- "Recepção",
88
- "Gerentes",
89
- "Laboratório"
90
- ].sample
13
+ def department_all
14
+ json_file_hash["departments"].map{ |i| i["name"] }
91
15
  end
92
- def shift
93
- [
94
- "Geral",
95
- "Manhã",
96
- "Tarde",
97
- "Noite",
98
- "Matutino",
99
- "Diurno",
100
- "Noturno",
101
- "Motoristas",
102
- "Parcial"
103
- ].sample
16
+ def team(department = nil)
17
+ team_all(department).sample
18
+ end
19
+ def team_all(department = nil)
20
+ teams_default = json_file_hash["teams"].flatten(1).map { |i| i["name"] }
21
+ if department
22
+ teams = json_file_hash["departments"].select{ |k,v| k["name"] == department }.map{ |i| i["teams"] }.flatten(1).map { |i| i["name"] }
23
+ else
24
+ teams = json_file_hash["departments"].map{ |i| i["teams"] }.flatten(1).map { |i| i["name"] }
25
+ end
26
+ teams_default.concat(teams).compact
27
+ end
28
+ def group(department = nil)
29
+ group_all(department).sample
30
+ end
31
+ def group_all(department = nil)
32
+ groups_default = json_file_hash["groups"]
33
+ if department
34
+ groups = json_file_hash["departments"].select{ |k,v| k["name"] == department }.map{ |i| i["groups"] }.flatten(1)
35
+ else
36
+ groups = json_file_hash["departments"].map{ |i| i["groups"] }.flatten(1)
37
+ end
38
+ groups_default.concat(groups).compact
39
+ end
40
+ def cost_center
41
+ cost_center_all.sample
42
+ end
43
+ def cost_center_all
44
+ json_file_hash["cost_centers"]
45
+ end
46
+ def job_title(department = nil, team = nil)
47
+ job_title_all(department, team).sample
104
48
  end
105
- def group
106
- ["Administradores",
107
- "Diretores",
108
- "Recusos Humanos",
109
- "Usuários",
110
- "Clientes",
111
- "Gestores",
112
- "Líderes de equipe",
113
- "Estagiários",
114
- "Suporte",
115
- ].sample
49
+ def job_title_all(department = nil, team = nil)
50
+ job_titles_default = json_file_hash["job_titles"]
51
+
52
+ if department
53
+ department_hash = json_file_hash["departments"].select{ |k,v| k["name"] == department }
54
+ job_titles_department_default = department_hash.map{ |i| i["job_titles"] }.flatten(1)
55
+
56
+ job_titles_default_with_department_default = job_titles_default.concat(job_titles_department_default).compact
57
+
58
+ teams = department_hash.map{ |i| i["teams"] }.flatten(1)
59
+
60
+ if team
61
+ teams_job_titles = teams.select{ |k,v| k["name"] == team }.map{ |i| i["job_titles"] }.flatten(1)
62
+ else
63
+ teams_job_titles = teams.map{ |i| i["job_titles"] }.flatten(1)
64
+ end
65
+
66
+ job_titles_default_with_department_default.concat(teams_job_titles).compact
67
+ else
68
+ job_titles_departments_default = json_file_hash["departments"].map{ |i| i["job_titles"] }.flatten(1)
69
+ job_titles_default_with_departments_default = job_titles_default.concat(job_titles_departments_default).compact
70
+
71
+ teams = json_file_hash["departments"].map{ |i| i["teams"] }.flatten(1)
72
+ teams_job_titles = teams.map{ |i| i["job_titles"] }.flatten(1)
73
+
74
+ job_titles_default_with_departments_default.concat(teams_job_titles).compact
75
+ end
76
+ end
77
+
78
+ private
79
+
80
+ def json_file_hash
81
+ JSON.parse(File.read("#{File.expand_path( File.dirname( __FILE__ ))}/company_data.json"))
116
82
  end
117
83
 
118
84
  end
@@ -0,0 +1,178 @@
1
+ departments:
2
+
3
+ "Diretores",
4
+ "Recusos Humanos",
5
+ "Gestores",
6
+ "Líderes de equipe",
7
+ "Estagiários",
8
+ "Suporte",
9
+
10
+
11
+ "Desenvolvedor",
12
+ "Programador",
13
+ "Motorista",
14
+ "Analista BI",
15
+ "Consultor BI",
16
+ "Analista",
17
+ "Consultor",
18
+ "Analista programador",
19
+ "Analista desenvolvedor",
20
+ "Analista de sistemas",
21
+ "Analista de negócios",
22
+ "Cozinheiro",
23
+ "Analista de suporte",
24
+ "Contador",
25
+ "Advogado",
26
+ "Secretário",
27
+ "Gerente",
28
+ "Recepcionista",
29
+ "Vendedor",
30
+ "Coordenador",
31
+ "Analista de infraestrutura",
32
+ ]
33
+ #
34
+ #departments:
35
+ # Publicidade:
36
+ # teams: []
37
+ # groups: []
38
+ # job_titles: []
39
+ # Compras:
40
+ # teams: []
41
+ # groups: []
42
+ # job_titles: []
43
+ # Pedidos:
44
+ # teams: []
45
+ # groups: []
46
+ # job_titles: []
47
+ # Estoque:
48
+ # teams: []
49
+ # groups: []
50
+ # job_titles: []
51
+ # Vendas:
52
+ # teams: []
53
+ # groups: []
54
+ # job_titles: []
55
+ # Importação:
56
+ # teams: []
57
+ # groups: []
58
+ # job_titles: []
59
+ # "Controle bancário":
60
+ # teams: []
61
+ # groups: []
62
+ # job_titles: []
63
+ # Patrimônio:
64
+ # teams: []
65
+ # groups: []
66
+ # job_titles: []
67
+ # "Ordem de serviço":
68
+ # teams: []
69
+ # groups: []
70
+ # job_titles: []
71
+ # BI:
72
+ # teams: []
73
+ # groups: []
74
+ # job_titles: []
75
+ # "Locação":
76
+ # teams: []
77
+ # groups: []
78
+ # job_titles: []
79
+ # Faturamento:
80
+ # teams: []
81
+ # groups: []
82
+ # job_titles: []
83
+ # "Nota fiscal":
84
+ # teams: []
85
+ # groups: []
86
+ # job_titles: []
87
+ # "Orçamentos":
88
+ # teams: []
89
+ # groups: []
90
+ # job_titles: []
91
+ # "Logística":
92
+ # teams: []
93
+ # groups: []
94
+ # job_titles: []
95
+ # Legal:
96
+ # teams: []
97
+ # groups: []
98
+ # job_titles: []
99
+ # Assessoria:
100
+ # teams: []
101
+ # groups: []
102
+ # job_titles: []
103
+ # "Jurídico":
104
+ # teams: []
105
+ # groups: []
106
+ # job_titles: []
107
+ # "Jurídico-legal":
108
+ # teams: []
109
+ # groups: []
110
+ # job_titles: []
111
+ # "Contas a pagar":
112
+ # teams: []
113
+ # groups: []
114
+ # job_titles: []
115
+ # "Contas a receber":
116
+ # teams: []
117
+ # groups: []
118
+ # job_titles: []
119
+ # "Qualidade e Inovação":
120
+ # teams: []
121
+ # groups: []
122
+ # job_titles: ["Gerente de qualidade"]
123
+ # "Direção Financeira":
124
+ # teams: []
125
+ # groups: []
126
+ # job_titles:
127
+ # male: ["Diretor"]
128
+ # female: ["Diretora"]
129
+ # default: []
130
+ # "Direção":
131
+ # teams: []
132
+ # groups: []
133
+ # job_titles:
134
+ # male: ["Diretor"]
135
+ # female: ["Diretora"]
136
+ # default: []
137
+ # "Administrativo":
138
+ # teams: []
139
+ # groups: []
140
+ # job_titles:
141
+ # male: []
142
+ # female: []
143
+ # default: []
144
+
145
+ #teams
146
+ #[
147
+ # "Geral",
148
+ # "Desenvolvimento",
149
+ # "Desenvolvimento server-side",
150
+ # "Desenvolvimento client-side",
151
+ # "Programação",
152
+ # "Back-end",
153
+ # "Front-end",
154
+ # "Infraestrutura",
155
+ # "Redes",
156
+ # "Informática",
157
+ # "TI",
158
+ # "Tecnologia",
159
+ # "Design",
160
+ # "Design gráfico",
161
+ # "Design de produto",
162
+ # "Artes",
163
+ # "Publicidade",
164
+ # "Contabilidade",
165
+ # "Motoristas",
166
+ # "Mecânicos",
167
+ # "Vendedores",
168
+ # "Consultores",
169
+ # "Consultores BI",
170
+ # "Analistas",
171
+ # "Analistas BI",
172
+ # "Suporte",
173
+ # "SAC",
174
+ # "Cozinheiros",
175
+ # "Recepção",
176
+ # "Gerentes",
177
+ # "Laboratório"
178
+ # ]
@@ -4,17 +4,35 @@ module Faker
4
4
  require "i18n"
5
5
 
6
6
  def team_image(name)
7
- "#{File.expand_path( File.dirname( __FILE__ ).gsub('/faker',''))}/images/team/#{I18n.transliterate(name.downcase).gsub(/[^0-9A-Za-z ]/,'').gsub(" ", "_")}.jpg"
7
+ "#{team_image_path}#{I18n.transliterate(name.downcase).gsub(/[^0-9A-Za-z ]/,'').gsub(" ", "_")}.jpg"
8
+ end
9
+
10
+ def team_image_all
11
+ Dir["#{team_image_path}*"]
8
12
  end
9
13
 
10
14
  def profile_image(gender)
11
- dir = "#{File.expand_path( File.dirname( __FILE__ ).gsub('/faker',''))}/images/profile/"
15
+ profile_image_all(gender).sample
16
+ end
17
+
18
+ def profile_image_all(gender)
12
19
  if gender == 'female' || gender == :female
13
- Dir["#{dir}female/*"].sample
20
+ Dir["#{profile_image_path}female/*"]
14
21
  else
15
- Dir["#{dir}male/*"].sample
22
+ Dir["#{profile_image_path}male/*"]
16
23
  end
17
24
  end
25
+
26
+ private
27
+
28
+ def team_image_path
29
+ "#{File.expand_path( File.dirname( __FILE__ ).gsub('/faker',''))}/images/team/"
30
+ end
31
+
32
+ def profile_image_path
33
+ "#{File.expand_path( File.dirname( __FILE__ ).gsub('/faker',''))}/images/profile/"
34
+ end
35
+
18
36
  end
19
37
  end
20
38
  end
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
File without changes
Binary file
Binary file
Binary file
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: company_data_faker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - William Weckl
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-02-11 00:00:00.000000000 Z
11
+ date: 2015-02-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: i18n
@@ -52,7 +52,9 @@ files:
52
52
  - Rakefile
53
53
  - company_data_faker.gemspec
54
54
  - lib/company_data_faker.rb
55
+ - lib/faker/company_data.json
55
56
  - lib/faker/company_data.rb
57
+ - lib/faker/company_data.yml
56
58
  - lib/faker/company_data_image.rb
57
59
  - lib/images/profile/female/1.jpg
58
60
  - lib/images/profile/female/10.jpg
@@ -101,14 +103,22 @@ files:
101
103
  - lib/images/profile/male/7.jpg
102
104
  - lib/images/profile/male/8.jpg
103
105
  - lib/images/profile/male/9.jpg
106
+ - lib/images/team/acougue.jpg
107
+ - lib/images/team/administrativo.jpg
108
+ - lib/images/team/almoxarifes.jpg
104
109
  - lib/images/team/analistas.jpg
105
110
  - lib/images/team/analistas_bi.jpg
106
111
  - lib/images/team/artes.jpg
112
+ - lib/images/team/atendimento.jpg
107
113
  - lib/images/team/backend.jpg
114
+ - lib/images/team/caixa.jpg
115
+ - lib/images/team/compras.jpg
108
116
  - lib/images/team/consultores.jpg
109
117
  - lib/images/team/consultores_bi.jpg
110
118
  - lib/images/team/contabilidade.jpg
111
- - lib/images/team/cozinheiros.jpg
119
+ - lib/images/team/coordenadores.jpg
120
+ - lib/images/team/copa.jpg
121
+ - lib/images/team/cozinha.jpg
112
122
  - lib/images/team/desenvolvimento.jpg
113
123
  - lib/images/team/desenvolvimento_clientside.jpg
114
124
  - lib/images/team/desenvolvimento_serverside.jpg
@@ -121,11 +131,15 @@ files:
121
131
  - lib/images/team/informatica.jpg
122
132
  - lib/images/team/infraestrutura.jpg
123
133
  - lib/images/team/laboratorio.jpg
134
+ - lib/images/team/limpeza.jpg
124
135
  - lib/images/team/mecanicos.jpg
125
136
  - lib/images/team/motoristas.jpg
137
+ - lib/images/team/producao.jpg
126
138
  - lib/images/team/programacao.jpg
127
139
  - lib/images/team/publicidade.jpg
140
+ - lib/images/team/qualidade.jpg
128
141
  - lib/images/team/recepcao.jpg
142
+ - lib/images/team/recursos_humanos.jpg
129
143
  - lib/images/team/redes.jpg
130
144
  - lib/images/team/sac.jpg
131
145
  - lib/images/team/suporte.jpg