Skip to content

Commit 70bdfb8

Browse files
committed
remove and update endpoints
1 parent 269545d commit 70bdfb8

File tree

8 files changed

+85
-6
lines changed

8 files changed

+85
-6
lines changed

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

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import lombok.AllArgsConstructor;
77
import lombok.experimental.FieldDefaults;
88
import org.springframework.http.HttpStatus;
9+
import org.springframework.web.bind.annotation.DeleteMapping;
910
import org.springframework.web.bind.annotation.GetMapping;
1011
import org.springframework.web.bind.annotation.PathVariable;
1112
import org.springframework.web.bind.annotation.PostMapping;
@@ -42,4 +43,10 @@ public List<ArriveDto> get() {
4243
public void create(@RequestBody ArriveDto arrive) {
4344
service.create(arrive);
4445
}
46+
47+
@DeleteMapping(ID)
48+
@ResponseStatus(code = HttpStatus.NO_CONTENT)
49+
public void remove(@PathVariable Long id){
50+
service.remove(id);
51+
}
4552
}

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

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,19 @@
22

33
import com.serve.api.dto.CompanyDto;
44
import com.serve.api.service.CompanyService;
5+
import liquibase.pro.packaged.I;
56
import lombok.AccessLevel;
67
import lombok.AllArgsConstructor;
78
import lombok.experimental.FieldDefaults;
89
import org.springframework.http.HttpStatus;
10+
import org.springframework.web.bind.annotation.DeleteMapping;
911
import org.springframework.web.bind.annotation.GetMapping;
1012
import org.springframework.web.bind.annotation.PathVariable;
1113
import org.springframework.web.bind.annotation.PostMapping;
14+
import org.springframework.web.bind.annotation.PutMapping;
1215
import org.springframework.web.bind.annotation.RequestBody;
1316
import org.springframework.web.bind.annotation.RequestMapping;
17+
import org.springframework.web.bind.annotation.RequestParam;
1418
import org.springframework.web.bind.annotation.ResponseStatus;
1519
import org.springframework.web.bind.annotation.RestController;
1620

@@ -42,4 +46,16 @@ public List<CompanyDto> get() {
4246
public void create(@RequestBody CompanyDto company) {
4347
service.create(company);
4448
}
49+
50+
@PutMapping(ID)
51+
@ResponseStatus(code = HttpStatus.ACCEPTED)
52+
public void update(@PathVariable Long id, @RequestParam String description){
53+
service.update(id, description);
54+
}
55+
56+
@DeleteMapping(ID)
57+
@ResponseStatus(code = HttpStatus.NO_CONTENT)
58+
public void remove(@PathVariable Long id) {
59+
service.remove(id);
60+
}
4561
}

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

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,14 @@
66
import lombok.AllArgsConstructor;
77
import lombok.experimental.FieldDefaults;
88
import org.springframework.http.HttpStatus;
9+
import org.springframework.web.bind.annotation.DeleteMapping;
910
import org.springframework.web.bind.annotation.GetMapping;
1011
import org.springframework.web.bind.annotation.PathVariable;
1112
import org.springframework.web.bind.annotation.PostMapping;
13+
import org.springframework.web.bind.annotation.PutMapping;
1214
import org.springframework.web.bind.annotation.RequestBody;
1315
import org.springframework.web.bind.annotation.RequestMapping;
16+
import org.springframework.web.bind.annotation.RequestParam;
1417
import org.springframework.web.bind.annotation.ResponseStatus;
1518
import org.springframework.web.bind.annotation.RestController;
1619

@@ -29,20 +32,29 @@ public class UserController {
2932

3033
@GetMapping(ID)
3134
public UserDto getUser(@PathVariable Long id) {
32-
3335
return service.get(id);
3436
}
3537

3638
@PostMapping
3739
@ResponseStatus(code = HttpStatus.CREATED)
3840
public void create(@RequestBody UserDto user) {
39-
4041
service.create(user);
4142
}
4243

4344
@GetMapping
4445
public List<UserDto> get(){
45-
4646
return service.getAll();
4747
}
48+
49+
@PutMapping(ID)
50+
@ResponseStatus(code = HttpStatus.ACCEPTED)
51+
public void update(@PathVariable Long id, @RequestParam String position) {
52+
service.update(id, position);
53+
}
54+
55+
@DeleteMapping(ID)
56+
@ResponseStatus(code = HttpStatus.NO_CONTENT)
57+
public void remove(@PathVariable Long id) {
58+
service.remove(id);
59+
}
4860
}

src/main/java/com/serve/api/repository/UserRepository.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,4 @@
1010

1111
@Repository
1212
public interface UserRepository extends JpaRepository<User, Long> {
13-
14-
// Optional<User> get(String id);
15-
// boolean create(User user);
1613
}

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

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import com.serve.api.repository.ArriveRepository;
88
import lombok.AccessLevel;
99
import lombok.AllArgsConstructor;
10+
import lombok.NonNull;
1011
import lombok.experimental.FieldDefaults;
1112
import org.springframework.stereotype.Service;
1213

@@ -45,4 +46,10 @@ public List<ArriveDto> get(){
4546
.map(arrive -> mapper.toDto(arrive))
4647
.collect(Collectors.toList());
4748
}
49+
50+
public void remove(Long id){
51+
52+
if(Objects.isNull(id)) throw new NullPointerException("Id is null");
53+
repository.deleteById(id);
54+
}
4855
}

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

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,4 +40,22 @@ public void create(CompanyDto dto) {
4040
Company company = mapper.toModel(dto);
4141
repository.save(company);
4242
}
43+
44+
public void remove(Long id) {
45+
46+
if(Objects.isNull(id)) throw new NullPointerException("Id is null");
47+
48+
repository.deleteById(id);
49+
}
50+
51+
public void update(Long id, String description){
52+
53+
if(Objects.isNull(id)) throw new NullPointerException("Id is null");
54+
if(Objects.isNull(description) || description.isBlank()) throw new NullPointerException("Description is null");
55+
56+
Company company = repository.findById(id).orElseThrow();
57+
company.setDescription(description);
58+
59+
repository.save(company);
60+
}
4361
}

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

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import com.serve.api.mapper.UserMapper;
55
import com.serve.api.model.User;
66
import com.serve.api.repository.UserRepository;
7+
import liquibase.pro.packaged.O;
78
import lombok.AccessLevel;
89
import lombok.AllArgsConstructor;
910
import lombok.experimental.FieldDefaults;
@@ -42,4 +43,22 @@ public List<UserDto> getAll(){
4243

4344
return dtos;
4445
}
46+
47+
public void update(Long id, String position){
48+
49+
if(Objects.isNull(id)) throw new NullPointerException("Id is null");
50+
if(Objects.isNull(position) || position.isBlank()) throw new NullPointerException("position is null");
51+
52+
User user = repository.findById(id).orElseThrow();
53+
user.setPosition(position);
54+
55+
repository.save(user);
56+
}
57+
58+
public void remove(Long id) {
59+
60+
if(Objects.isNull(id)) throw new NullPointerException("Id is null");
61+
62+
repository.deleteById(id);
63+
}
4564
}

src/main/resources/application.properties

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
2+
server.port=8085
3+
14
spring.datasource.url=jdbc:postgresql://localhost:5432/serveapi
25
spring.datasource.username=apiuser
36
spring.datasource.password=apiuser

0 commit comments

Comments
 (0)