jpashop : update member api

This commit is contained in:
kim
2021-01-26 15:45:16 +09:00
parent bc71f58ddf
commit b19be8a7b7
4 changed files with 42 additions and 3 deletions

View File

@@ -3,9 +3,7 @@ package com.example.jpashop.api;
import com.example.jpashop.domain.Member;
import com.example.jpashop.service.MemberService;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
@@ -31,4 +29,15 @@ public class MemberApiController {
Long id = memberService.join(member);
return new CreateMemberResponse(id);
}
@PatchMapping("/api/v2/members/{id}")
public UpdateMemberResponse updateMemberV2(
@PathVariable("id") Long id,
@RequestBody @Valid updateMemberRequest request) {
memberService.update(id, request);
Member findMember = memberService.findOne(id);
return new UpdateMemberResponse(findMember.getId(), findMember.getName());
}
}

View File

@@ -0,0 +1,12 @@
package com.example.jpashop.api;
import lombok.AllArgsConstructor;
import lombok.Data;
@Data
@AllArgsConstructor
public class UpdateMemberResponse {
private Long id;
private String name;
}

View File

@@ -0,0 +1,10 @@
package com.example.jpashop.api;
import lombok.AllArgsConstructor;
import lombok.Data;
@Data
public class updateMemberRequest {
private String name;
}

View File

@@ -1,5 +1,6 @@
package com.example.jpashop.service;
import com.example.jpashop.api.updateMemberRequest;
import com.example.jpashop.domain.Member;
import com.example.jpashop.repository.MemberRepository;
import lombok.RequiredArgsConstructor;
@@ -47,4 +48,11 @@ public class MemberService {
public Member findOne(Long memberId) {
return memberRepository.findOne(memberId);
}
@Transactional
public void update(Long id, updateMemberRequest request) {
Member member = memberRepository.findOne(id);
member.setName(request.getName());
}
}