source: src/main/java/it/finki/tinki/bootstrap/DataHolder.java@ 33d4f5d

Last change on this file since 33d4f5d was 33d4f5d, checked in by Vzdra <vladko.zdravkovski@…>, 3 years ago

bugfixes and refactoring

  • Property mode set to 100644
File size: 4.8 KB
Line 
1package it.finki.tinki.bootstrap;
2
3import it.finki.tinki.model.Work.Job;
4import it.finki.tinki.model.Skill;
5import it.finki.tinki.model.Users.Account;
6import it.finki.tinki.model.enumerator.AccountType;
7import it.finki.tinki.repository.*;
8import it.finki.tinki.service.AccountService;
9import it.finki.tinki.service.WorkService;
10import org.springframework.stereotype.Component;
11
12import javax.annotation.PostConstruct;
13import java.text.DateFormat;
14import java.util.ArrayList;
15import java.util.Date;
16import java.util.List;
17
18@Component
19public 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}
Note: See TracBrowser for help on using the repository browser.