Skip to content

Commit ca4dc9c

Browse files
committed
lastOne Arrive By ID
1 parent 594a30d commit ca4dc9c

File tree

4 files changed

+23
-11
lines changed

4 files changed

+23
-11
lines changed

src/main/java/com/serve/api/controler/ArriveController.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.serve.api.controler;
22

33
import com.serve.api.dto.ArriveDto;
4+
import com.serve.api.model.entity.Arrive;
45
import com.serve.api.service.ArriveService;
56
import lombok.AccessLevel;
67
import lombok.AllArgsConstructor;
@@ -51,4 +52,12 @@ public void create(@RequestBody ArriveDto arrive) {
5152
public void remove(@PathVariable Long id) {
5253
service.remove(id);
5354
}
55+
56+
57+
@GetMapping("Test/" + ID)
58+
public Arrive tstt(@PathVariable Long id) {
59+
Arrive worker = service.getLatOne(id);
60+
61+
return worker;
62+
}
5463
}

src/main/java/com/serve/api/model/entity/Arrive.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,16 +18,16 @@ public class Arrive extends BaseEntity {
1818

1919
Type type;
2020

21-
@ManyToOne(fetch = FetchType.LAZY)
22-
@JoinColumn(name = "company_id")
21+
@ManyToOne(fetch = FetchType.EAGER)
22+
@JoinColumn(name = "companyId")
2323
Company company;
2424

25-
@ManyToOne(fetch = FetchType.LAZY)
26-
@JoinColumn(name = "worker_id")
25+
@ManyToOne(fetch = FetchType.EAGER)
26+
@JoinColumn(name = "workerId")
2727
Worker worker;
2828

29-
@ManyToOne(fetch = FetchType.LAZY)
30-
@JoinColumn(name = "enter_id", nullable = true)
31-
Arrive enter_id;
29+
@ManyToOne(fetch = FetchType.EAGER)
30+
@JoinColumn(name = "enterId", nullable = true)
31+
Arrive enterId;
3232

3333
}
Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,16 @@
11
package com.serve.api.repository;
22

33
import com.serve.api.model.entity.Arrive;
4+
import com.serve.api.model.enumeration.Type;
45
import org.springframework.data.jpa.repository.JpaRepository;
56
import org.springframework.stereotype.Repository;
67

8+
import java.util.Optional;
9+
710
@Repository
811
public interface ArriveRepository extends JpaRepository<Arrive, Long> {
912

1013
//https://docs.spring.io/spring-data/jpa/docs/current/reference/html/#repositories.limit-query-result
11-
Arrive findTopById(Long id);
14+
Optional<Arrive> findTopByWorkerIdAndTypeOrderByCreateDateTimeDesc(Long id, Type type);
1215

1316
}

src/main/java/com/serve/api/service/ArriveService.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ public void create(ArriveDto dto) {
6161
.reduce((first, second) -> second)
6262
.orElse(fake);
6363

64-
arrive.setId(lastEnter.getId());
64+
arrive.setEnterId(lastEnter);
6565
}
6666

6767
repository.save(arrive);
@@ -103,7 +103,7 @@ public int getHours(Long workerId, Date start, Date end) {
103103
}
104104

105105
public Arrive getLatOne(Long id){
106-
return repository.findTopById(id);
106+
return repository.findTopByWorkerIdAndTypeOrderByCreateDateTimeDesc(id, Type.Enter).get();
107107
}
108108

109109
/***
@@ -136,7 +136,7 @@ public long getSeconds(Long workerId, Period period){
136136
.findAll()
137137
.stream()
138138
.filter(arrive -> Objects.equals(arrive.getType(), Type.Exit))
139-
.filter(arrive -> Objects.nonNull(arrive.getEnter_id()))
139+
.filter(arrive -> Objects.nonNull(arrive.getEnterId()))
140140
.collect(Collectors.toList());
141141

142142
// for (Arrive arrive : exit){

0 commit comments

Comments
 (0)