forked from s485936/PRAPRO2
feat: added occupationLog stack
This commit is contained in:
parent
9b5304ae3c
commit
570dc024b5
@ -0,0 +1,55 @@
|
||||
package com.example.prapro2spring.controller;
|
||||
|
||||
import com.example.prapro2spring.dto.OccupationLogDTO;
|
||||
import com.example.prapro2spring.model.OccupationLog;
|
||||
import com.example.prapro2spring.service.OccupationLogDTOService;
|
||||
import com.example.prapro2spring.service.OccupationLogService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/api/occupationLogs")
|
||||
public class OccupationLogController {
|
||||
|
||||
@Autowired
|
||||
private OccupationLogService occupationLogService;
|
||||
@Autowired
|
||||
private OccupationLogDTOService occupationLogDTOService;
|
||||
|
||||
@GetMapping
|
||||
public List<OccupationLog> getAllOccupationLogs() {
|
||||
return occupationLogService.findAll();
|
||||
}
|
||||
|
||||
@GetMapping("/{id}")
|
||||
public OccupationLog getOccupationLogById(@PathVariable Long id) {
|
||||
return occupationLogService.findById(id).orElse(null);
|
||||
}
|
||||
|
||||
@PostMapping
|
||||
public OccupationLogDTO createOccupationLog(@RequestBody OccupationLogDTO occupationLog) {
|
||||
occupationLog.setId(null);
|
||||
return occupationLogDTOService.save(occupationLog);
|
||||
}
|
||||
|
||||
@PutMapping("/{id}")
|
||||
public OccupationLogDTO updateOccupationLog(@PathVariable Long id, @RequestBody OccupationLogDTO occupationLogDetails) {
|
||||
OccupationLogDTO occupationLog = occupationLogDTOService.findById(id).orElse(null);
|
||||
if (occupationLog != null) {
|
||||
occupationLog.setOccupationId(occupationLogDetails.getOccupationId());
|
||||
occupationLog.setPersonId(occupationLogDetails.getPersonId());
|
||||
occupationLog.setStartTimestamp(occupationLogDetails.getStartTimestamp());
|
||||
occupationLog.setEndTimestamp(occupationLogDetails.getEndTimestamp());
|
||||
occupationLog.setGrade(occupationLogDetails.getGrade());
|
||||
return occupationLogDTOService.save(occupationLog);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@DeleteMapping("/{id}")
|
||||
public void deleteOccupationLog(@PathVariable Long id) {
|
||||
occupationLogService.deleteById(id);
|
||||
}
|
||||
}
|
@ -0,0 +1,81 @@
|
||||
package com.example.prapro2spring.dto;
|
||||
|
||||
import com.example.prapro2spring.model.Occupation;
|
||||
import com.example.prapro2spring.model.Person;
|
||||
import jakarta.persistence.*;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Entity
|
||||
@Table(name = "occupation_log")
|
||||
public class OccupationLogDTO {
|
||||
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
private Long id;
|
||||
|
||||
@Column(name = "occupationId")
|
||||
private Long occupationId;
|
||||
|
||||
@Column(name = "humanId")
|
||||
private Long personId;
|
||||
|
||||
@Column(name = "start_timestamp")
|
||||
private LocalDateTime startTimestamp;
|
||||
|
||||
@Column(name = "end_timestamp")
|
||||
private LocalDateTime endTimestamp;
|
||||
|
||||
@Column(name = "grade")
|
||||
private Integer grade;
|
||||
|
||||
// getters and setters
|
||||
|
||||
public Long getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(Long id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public Long getOccupationId() {
|
||||
return occupationId;
|
||||
}
|
||||
|
||||
public void setOccupationId(Long occupationId) {
|
||||
this.occupationId = occupationId;
|
||||
}
|
||||
|
||||
public Long getPersonId() {
|
||||
return personId;
|
||||
}
|
||||
|
||||
public void setPersonId(Long personId) {
|
||||
this.personId = personId;
|
||||
}
|
||||
|
||||
public LocalDateTime getStartTimestamp() {
|
||||
return startTimestamp;
|
||||
}
|
||||
|
||||
public void setStartTimestamp(LocalDateTime startTimestamp) {
|
||||
this.startTimestamp = startTimestamp;
|
||||
}
|
||||
|
||||
public LocalDateTime getEndTimestamp() {
|
||||
return endTimestamp;
|
||||
}
|
||||
|
||||
public void setEndTimestamp(LocalDateTime endTimestamp) {
|
||||
this.endTimestamp = endTimestamp;
|
||||
}
|
||||
|
||||
public Integer getGrade() {
|
||||
return grade;
|
||||
}
|
||||
|
||||
public void setGrade(Integer grade) {
|
||||
this.grade = grade;
|
||||
}
|
||||
}
|
@ -0,0 +1,9 @@
|
||||
package com.example.prapro2spring.service;
|
||||
|
||||
import com.example.prapro2spring.dto.OccupationLogDTO;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
public interface OccupationLogDTOService extends JpaRepository<OccupationLogDTO, Long> {
|
||||
}
|
@ -0,0 +1,9 @@
|
||||
package com.example.prapro2spring.service;
|
||||
|
||||
import com.example.prapro2spring.model.OccupationLog;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
public interface OccupationLogService extends JpaRepository<OccupationLog, Long> {
|
||||
}
|
Loading…
Reference in New Issue
Block a user