- ์ฅ๋ฐ๊ตฌ๋์ ๋ด๊ธด ๋ฉ๋ด๋ฅผ ์ฃผ๋ฌธํ์ง ์์๋ ๊ตฌ๋งค์๊ฐ ์์๋ก ์์ ํ ์ ์์ด์ผํ๋ค๊ณ ์๊ฐํด์ ๋ก์ง์ ๊ตฌํํ๊ฒ ๋์๋ค.
- ์์ฒญ ๋ฐ๋
- ์๋ต๋ฐ๋
: [GET] ์ฅ๋ฐ๊ตฌ๋ ์กฐํ์ ๊ฐ์
- ์ปจํธ๋กค๋ฌ
- ์๋น์ค
- ๋ฉ๋ด๋ฅผ ์์ /์ญ์ ํ๋ ๋๊ฐ์ง ์ํ๊ฐ์ ๊ตฌ๋ณํ๊ธฐ ์ํด ํ๋ก ํธ์ ํ์๋ฅผ ํ์๋ค.
- ๊ฐ์ ์กฐ์ ์ patchStatus = "count"
- ๋ฉ๋ด ์ญ์ ์ patchStatus = "remove"
public GetBasketRes patchBasket(int userIdx, PatchBasketReq basketReq) throws BaseException { try{ if(basketReq.getPatchStatus().equals("count")){ basketDao.patchBasketCount(basketReq.getBasketIdx(), basketReq.getInDecrease()); } else if (basketReq.getPatchStatus().equals("remove")) { // ์ฅ๋ฐ๊ตฌ๋ ํญ๋ชฉ ์ญ์ basketDao.removeBasketItem(basketReq.getBasketIdx()); } }catch(Exception e){ throw new BaseException(ORDER_FAILED); } return getBasket(userIdx); }
- Dao
// ๋ฉ๋ด ๊ฐ์ 1๊ฐ ์ฆ๊ฐ/๊ฐ์ public void patchBasketCount(int basketIdx, int inDecrease) { String query = "UPDATE Basket \n" + "SET cnt = cnt + ?\n" + "WHERE basketIdx = ?"; Object[] params = new Object[]{ inDecrease == 1 ? 1: -1, basketIdx }; this.jdbcTemplate.update(query, params); }
// ์ฅ๋ฐ๊ตฌ๋์์ ๋ฉ๋ด ์ญ์ public void removeBasketItem(int basketIdx) { String query = "UPDATE Basket\n" + "SET status = 'D'\n" + "WHERE basketIdx = ?"; this.jdbcTemplate.update(query, basketIdx); }
ํ์ฌ ์ฅ๋ฐ๊ตฌ๋์๋ ์ ๋ฒ ํฌ์คํ ์์ ๋ด์ ์๊ธ๋นต์ด 2๊ฐ ๋ด๊ฒจ์๋ ์ํ์ด๋ค.
ํด๋น ์๊ธ๋นต์ ๊ฐ์๋ฅผ ํ๋ ์ฌ๋ ค๋ณด๊ฒ ๋ค.
์ฅ๋ฐ๊ตฌ๋์ 2๊ฐ์๋ ์๊ธ๋นต์ด 3๊ฐ๋ก ์ฆ๊ฐํ ๊ฒฐ๊ณผ
์ญ์ ํ ์กฐํ๋ฅผ ํด๋ณด๋ฉด ๋น ์ฅ๋ฐ๊ตฌ๋์ธ ๊ฒ์ ํ์ธํ ์๊ฐ ์๋ค.