Skip to content

Commit 2dc93ba

Browse files
committed
feat: add deegree type model dto mapper and repo #38
1 parent 92bcf57 commit 2dc93ba

4 files changed

Lines changed: 120 additions & 0 deletions

File tree

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
package ch.puzzle.pcts.dto.degreeType;
2+
3+
import java.math.BigDecimal;
4+
5+
public record DegreeTypeDto(Long id, String name, BigDecimal highlyRelevantPoints, BigDecimal limitedRelevantPoints,
6+
BigDecimal littleRelevantPoints) {
7+
}
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
package ch.puzzle.pcts.mapper;
2+
3+
import ch.puzzle.pcts.dto.degreeType.DegreeTypeDto;
4+
import ch.puzzle.pcts.model.degreeType.DegreeType;
5+
import java.util.List;
6+
import org.springframework.stereotype.Component;
7+
8+
@Component
9+
public class DegreeTypeMapper {
10+
public List<DegreeTypeDto> toDto(List<DegreeType> models) {
11+
return models.stream().map(this::toDto).toList();
12+
}
13+
14+
public List<DegreeType> fromDto(List<DegreeTypeDto> dtos) {
15+
return dtos.stream().map(this::fromDto).toList();
16+
}
17+
18+
public DegreeTypeDto toDto(DegreeType model) {
19+
return new DegreeTypeDto(model.getId(),
20+
model.getName(),
21+
model.getHighlyRelevantPoints(),
22+
model.getLimitedRelevantPoints(),
23+
model.getLittleRelevantPoints());
24+
}
25+
26+
public DegreeType fromDto(DegreeTypeDto dto) {
27+
return new DegreeType(dto
28+
.id(), dto.name(), dto.highlyRelevantPoints(), dto.limitedRelevantPoints(), dto.littleRelevantPoints());
29+
}
30+
}
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
package ch.puzzle.pcts.model.degreeType;
2+
3+
import jakarta.persistence.Entity;
4+
import jakarta.persistence.GeneratedValue;
5+
import jakarta.persistence.GenerationType;
6+
import jakarta.persistence.Id;
7+
import java.math.BigDecimal;
8+
9+
@Entity
10+
public class DegreeType {
11+
@Id
12+
@GeneratedValue(strategy = GenerationType.IDENTITY)
13+
private Long id;
14+
15+
private String name;
16+
17+
private BigDecimal highlyRelevantPoints;
18+
19+
private BigDecimal limitedRelevantPoints;
20+
21+
private BigDecimal littleRelevantPoints;
22+
23+
public DegreeType(Long id, String name, BigDecimal highlyRelevantPoints, BigDecimal limitedRelevantPoints,
24+
BigDecimal littleRelevantPoints) {
25+
this.id = id;
26+
this.name = name;
27+
this.highlyRelevantPoints = highlyRelevantPoints;
28+
this.limitedRelevantPoints = limitedRelevantPoints;
29+
this.littleRelevantPoints = littleRelevantPoints;
30+
}
31+
32+
public DegreeType() {
33+
}
34+
35+
public Long getId() {
36+
return id;
37+
}
38+
39+
public void setId(Long id) {
40+
this.id = id;
41+
}
42+
43+
public String getName() {
44+
return name;
45+
}
46+
47+
public void setName(String name) {
48+
this.name = name;
49+
}
50+
51+
public BigDecimal getHighlyRelevantPoints() {
52+
return highlyRelevantPoints;
53+
}
54+
55+
public void setHighlyRelevantPoints(BigDecimal highlyRelevantPoints) {
56+
this.highlyRelevantPoints = highlyRelevantPoints;
57+
}
58+
59+
public BigDecimal getLimitedRelevantPoints() {
60+
return limitedRelevantPoints;
61+
}
62+
63+
public void setLimitedRelevantPoints(BigDecimal limitedRelevantPoints) {
64+
this.limitedRelevantPoints = limitedRelevantPoints;
65+
}
66+
67+
public BigDecimal getLittleRelevantPoints() {
68+
return littleRelevantPoints;
69+
}
70+
71+
public void setLittleRelevantPoints(BigDecimal littleRelevantPoints) {
72+
this.littleRelevantPoints = littleRelevantPoints;
73+
}
74+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
package ch.puzzle.pcts.repository;
2+
3+
import ch.puzzle.pcts.model.degreeType.DegreeType;
4+
import org.springframework.data.jpa.repository.JpaRepository;
5+
import org.springframework.stereotype.Repository;
6+
7+
@Repository
8+
public interface DegreeTypeRepository extends JpaRepository<DegreeType, Long> {
9+
}

0 commit comments

Comments
 (0)