PMT-4: Create Allocation Model and repository
Co-authored-by: Rajbir Singh <rajbir.singh@hmmh.de> Signed-off-by: Dominik Säume <Dominik.Saeume@hmmh.de>
This commit is contained in:
parent
d38c5a1084
commit
36e604d2b0
4 changed files with 57 additions and 0 deletions
|
@ -1,6 +1,8 @@
|
|||
package de.hmmh.pmt;
|
||||
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import de.hmmh.pmt.db.AllocationRepository;
|
||||
import de.hmmh.pmt.employee.ApiClientFactory;
|
||||
import de.hmmh.pmt.db.Project;
|
||||
import de.hmmh.pmt.db.ProjectRepository;
|
||||
import de.hmmh.pmt.dtos.CreateProjectDTO;
|
||||
|
@ -30,6 +32,8 @@ public class ApiController implements DefaultApi {
|
|||
private ApiClientFactory apiClientFactory;
|
||||
@Autowired
|
||||
private ProjectRepository projectRepository;
|
||||
@Autowired
|
||||
AllocationRepository allocationRepository;
|
||||
|
||||
@Override
|
||||
public Optional<ObjectMapper> getObjectMapper() {
|
||||
|
|
29
src/main/java/de/hmmh/pmt/db/Allocation.java
Normal file
29
src/main/java/de/hmmh/pmt/db/Allocation.java
Normal file
|
@ -0,0 +1,29 @@
|
|||
package de.hmmh.pmt.db;
|
||||
|
||||
import jakarta.persistence.*;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.Setter;
|
||||
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Getter
|
||||
@Setter
|
||||
@Entity
|
||||
@IdClass(AllocationId.class)
|
||||
@Table(name = "allocation")
|
||||
public class Allocation {
|
||||
@Id
|
||||
private Long projectId;
|
||||
@ManyToOne
|
||||
@JoinColumn(name = "projectId", insertable = false, updatable = false)
|
||||
private Project project;
|
||||
|
||||
@Id
|
||||
private Long employeeId;
|
||||
|
||||
@NotNull
|
||||
private Long role; // This is a QualificationId
|
||||
}
|
17
src/main/java/de/hmmh/pmt/db/AllocationId.java
Normal file
17
src/main/java/de/hmmh/pmt/db/AllocationId.java
Normal file
|
@ -0,0 +1,17 @@
|
|||
package de.hmmh.pmt.db;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class AllocationId implements Serializable {
|
||||
private Long projectId;
|
||||
private Long employeeId;
|
||||
}
|
7
src/main/java/de/hmmh/pmt/db/AllocationRepository.java
Normal file
7
src/main/java/de/hmmh/pmt/db/AllocationRepository.java
Normal file
|
@ -0,0 +1,7 @@
|
|||
package de.hmmh.pmt.db;
|
||||
|
||||
import org.springframework.data.repository.CrudRepository;
|
||||
|
||||
public interface AllocationRepository extends CrudRepository<Allocation, AllocationId> {
|
||||
|
||||
}
|
Loading…
Reference in a new issue