프로젝트

식재료 등록 방법 두가지와 고민한 점 (2)

Jenner 2024. 3. 28. 17:21

https://wha-haha.tistory.com/306

 

냉장고 관리 앱을 구현하며 고민한 점 (혹은 고민 중인 점) (1)

1. 식재료 등록 방법 두가지 냉장고 관리앱을 통해 식재료를 관리하기 위해서는 두가지 방법으로 식재료를 등록할 수 있다. 1. 영수증을 추가한 뒤 등록된 영수증에서 특정 food를 추가하기 위해

wha-haha.tistory.com

 

앞선 글에 이어 두번째 글이다. 

식재료를 등록하는 두번째 방법은 Food추가버튼을 클릭해서 추가하는 방법이다. 

 

1. 이 방법을 고안한 이유

시장에서나 영수증 없는 곳에서 낱개로 그냥 살 때가 있다.

그게 아니라면 누가 준다거나. 

식자재 등록을 하고 싶은데 영수증이 없다면 어떻게 식자재 등록을 해야 할 것인가? 

그냥 낱개로 등록해야 할 것이다.

 

그런데 낱개로 등록하는 것의 편의성을 더해

네이버 검색 API를 활용해 구현하기로 한다. 

 

 

글자를 클릭하면

 

사진과 함께 긴 이름도 들어가게 된다. 

역시 여기서도 사용자가 직접 글자를 편집할 수 있다. 

 

 

 

 

아래는 추가하기 구현화면 (라이트모드) ('/receipt/:receiptId')

여기에서 등록버튼을 클릭하면 ('/add/food')으로 이동

 

 

 

2. ('/add/food')에서 POST 요청을 하는 경우 고민 

receipt을 새로 생성할 것인가? 

receipt을 나중에 등록하였을 때 서로 연결이 가능한가? 

 

먼저 음식을 등록하고 영수증을 등록하는 경우는 많이 없을 것 같다. 

만일 그런 방식도 해야한다면 가능은 하겠지만

들인 시간 과 편의성을 고려한다면 

관련 기능은 당분간 보류한다. 

 

 

3. receipt detail화면에서 냉장고 버튼을 클릭시 

PurchaseReceiptItem에 있는 데이터를 삭제해야 할 것인가? 

냉장고 버튼은 식자재로 등록이 되어있는지 여부를 판단하기 위함이다.

여기서 버튼으로 간단하게 삭제가 되어버린다면

잘못 눌러버리면 유저 입장에서 아쉬울 것 같다. 

수정 및 삭제는 Food detail페이지에서도 가능하므로 

여기서는 등록 여부만 보여주기만 하자. 

 

 

삭제를 하게 되면 냉장고 버튼에서 +버튼으로 다시 돌아가게만 하자.

 

4. receipt을 delete하였을 시 

관련된 Food를 모두 삭제하진 말자.

영수증은 영수증, 식재료는 식재료로 따로 관리하도록 하자. 

이부분의 연결고리만 삭제할 때 잘 고려만 하자. 

 

5. Food Delete 구현시 

관련된 Receipt의 registered를 false로 변환하는 설정 해야 함.