1 | package it.finki.tinki.bootstrap;
|
---|
2 |
|
---|
3 | import it.finki.tinki.model.Work.Job;
|
---|
4 | import it.finki.tinki.model.Skill;
|
---|
5 | import it.finki.tinki.model.Users.Account;
|
---|
6 | import it.finki.tinki.model.enumerator.AccountType;
|
---|
7 | import it.finki.tinki.repository.*;
|
---|
8 | import it.finki.tinki.service.AccountService;
|
---|
9 | import it.finki.tinki.service.WorkService;
|
---|
10 | import org.springframework.stereotype.Component;
|
---|
11 |
|
---|
12 | import javax.annotation.PostConstruct;
|
---|
13 | import java.text.DateFormat;
|
---|
14 | import java.util.ArrayList;
|
---|
15 | import java.util.Date;
|
---|
16 | import java.util.List;
|
---|
17 |
|
---|
18 | @Component
|
---|
19 | public class DataHolder {
|
---|
20 |
|
---|
21 | SkillRepository skillRepository;
|
---|
22 | AccountService accountService;
|
---|
23 | WorkService workService;
|
---|
24 | MatchRepository matchRepository;
|
---|
25 |
|
---|
26 | public DataHolder(SkillRepository skillRepository,
|
---|
27 | AccountService accountService,
|
---|
28 | WorkService workService,
|
---|
29 | MatchRepository matchRepository) {
|
---|
30 | this.skillRepository = skillRepository;
|
---|
31 | this.accountService = accountService;
|
---|
32 | this.workService = workService;
|
---|
33 | this.matchRepository = matchRepository;
|
---|
34 | }
|
---|
35 |
|
---|
36 | @PostConstruct
|
---|
37 | public void init(){
|
---|
38 | if(this.skillRepository.findAll().size()==0){
|
---|
39 | Skill s1 = new Skill("C++");
|
---|
40 | Skill s2 = new Skill("Java");
|
---|
41 | Skill s3 = new Skill("Python");
|
---|
42 | Skill s4 = new Skill("JavaScript");
|
---|
43 | Skill s5 = new Skill("React");
|
---|
44 | Skill s6 = new Skill("Spring");
|
---|
45 | Skill s7 = new Skill("C#");
|
---|
46 | Skill s8 = new Skill(".NET");
|
---|
47 | Skill s9 = new Skill("NodeJs");
|
---|
48 | Skill s0 = new Skill("Go");
|
---|
49 |
|
---|
50 | this.skillRepository.save(s1);
|
---|
51 | this.skillRepository.save(s2);
|
---|
52 | this.skillRepository.save(s3);
|
---|
53 | this.skillRepository.save(s4);
|
---|
54 | this.skillRepository.save(s5);
|
---|
55 | this.skillRepository.save(s6);
|
---|
56 | this.skillRepository.save(s7);
|
---|
57 | this.skillRepository.save(s8);
|
---|
58 | this.skillRepository.save(s9);
|
---|
59 | this.skillRepository.save(s0);
|
---|
60 | }
|
---|
61 |
|
---|
62 | List<Skill> lista;
|
---|
63 | lista = this.skillRepository.findAll();
|
---|
64 |
|
---|
65 | List<Skill> lista2 = new ArrayList<>();
|
---|
66 | lista2.add(this.skillRepository.findById(3L).get());
|
---|
67 | lista2.add(this.skillRepository.findById(2L).get());
|
---|
68 | lista2.add(this.skillRepository.findById(4L).get());
|
---|
69 | lista2.add(this.skillRepository.findById(7L).get());
|
---|
70 | lista2.add(this.skillRepository.findById(1L).get());
|
---|
71 | lista2.add(this.skillRepository.findById(5L).get());
|
---|
72 | lista2.add(this.skillRepository.findById(9L).get());
|
---|
73 | lista2.add(this.skillRepository.findById(6L).get());
|
---|
74 |
|
---|
75 |
|
---|
76 | List<Skill> lista3 = new ArrayList<>();
|
---|
77 | lista3.add(this.skillRepository.findById(3L).get());
|
---|
78 | lista3.add(this.skillRepository.findById(2L).get());
|
---|
79 | lista3.add(this.skillRepository.findById(4L).get());
|
---|
80 | lista3.add(this.skillRepository.findById(7L).get());
|
---|
81 |
|
---|
82 | List<Long> allSkills = new ArrayList<>();
|
---|
83 | lista.forEach(item -> {
|
---|
84 | allSkills.add(item.getId());
|
---|
85 | });
|
---|
86 |
|
---|
87 | List<Long> skills8 = new ArrayList<>();
|
---|
88 | lista2.forEach(item -> {
|
---|
89 | skills8.add(item.getId());
|
---|
90 | });
|
---|
91 |
|
---|
92 | List<Long> skills4 = new ArrayList<>();
|
---|
93 | lista3.forEach(item -> {
|
---|
94 | skills4.add(item.getId());
|
---|
95 | });
|
---|
96 |
|
---|
97 | Account c = this.accountService.registerCompany("company@company", "company", "Co.Co", "Macedonia", "Skopje", "Pero Nakov");
|
---|
98 | Account ct = this.accountService.registerCompany("company@co", "company", "Co.Co", "Macedonia", "Skopje", "Pero Nakov");
|
---|
99 | Account m = this.accountService.registerTeam("team@team", "team", "TeamRocket", 3);
|
---|
100 |
|
---|
101 | this.workService.insertJob("Team Job 1", "Team job 1 requires 3 members!", m.getId() ,1515, allSkills, AccountType.TEAM);
|
---|
102 | this.workService.insertJob("Team Job 2", "Team job 2 requires 2 members!", m.getId() ,5511, skills4, AccountType.TEAM);
|
---|
103 | this.workService.insertJob("Company Job 1", "Company job 1 requires 3 members!", c.getId() ,12345, allSkills, AccountType.COMPANY);
|
---|
104 | this.workService.insertJob("Company Job 2", "Company job 2 requires 3 members!", ct.getId() ,8901, skills8, AccountType.COMPANY);
|
---|
105 | this.workService.insertInternship("Internship 1", "Opportunity to learn new things!", c.getId() ,5000, skills4, 6, AccountType.COMPANY);
|
---|
106 | this.workService.insertInternship("Internship 2", "Opportunity to learn new things!", c.getId() ,5000, allSkills, 3, AccountType.COMPANY);
|
---|
107 | this.workService.insertProject("Project 1", "Project that lasts few days!", m.getId() ,5000, skills8, new Date(), AccountType.TEAM);
|
---|
108 | this.workService.insertProject("Project 2", "Project that ends soon!", m.getId() ,5000, skills4, new Date(), AccountType.TEAM);
|
---|
109 |
|
---|
110 | this.accountService.registerUser("user@user", "user", "Zoki", "Poki", lista3, lista);
|
---|
111 |
|
---|
112 | }
|
---|
113 |
|
---|
114 | }
|
---|