-------------------------------------DB-------------------------------------

-------------------------------------UI-------------------------------------

-------------------------------------명명-------------------------------------
<Member>
1. jsp화면단
회원가입 nav.jsp <a href="/member/join"> --> @GetMapping
join.jsp <form action="/member/join" method="post"> -->@PostMapping
로그인 nav.jsp <a href="/member/login"> --> @GetMapping
login.jsp <form action="/member/login" method="post"> -->@PostMapping
아이디중복체크 join.jsp <input id="checkId"><span id="id">
footer.jsp ajax의 url : "/member/dupleIdCheck" --> @GetMapping
멤버리스트 nav.jsp <a href="/member/list"> --> @GetMapping
멤버탈퇴 list.jsp <a href="/member/resign"> -->@GetMapping
로그아웃 nav.jsp <a href="/member/logout"> -->@GetMapping
2. MemberCtrl.java
회원가입 join : @GetMapping @PostMapping("/join") 에서 msv.regist(mvo)호출
아이디중복체크 checkId : @GetMapping("/dupleIdCheck") 에서 msv.checkId(id)호출
로그인 login : @GetMapping @PostMapping("/login")에서 msv.login(mvo)호출
멤버리스트 list : @GetMapping("/list")에서 msv.getList(cri)와 msv.getTotalCount 호출
멤버탈퇴 resign : @GetMapping("/resign")에서 msv.resign(id)호출
로그아웃 logout : @GetMapping("/logout")에서 session초기화
3. MemberService.java
회원가입 public int regist (Member mvo)
아이디중복체크 public int checkId(String id)
로그인 public MemberVO login(Stirng id)
멤버리스트 public List<MemberVO> getList(Criterion cri)
멤버탈퇴 public int resign(String id)
멤버총명수 public int getTotalCount(Criterion cri)
4. MemberServiceImpl.java
회원가입 public int regist (MemberVO mvo)
아이디중복체크 public int checkId(String id)
로그인 public MemberVO login(Stirng id)
멤버리스트 public List<MemberVO> getList(Criterion cri)
멤버탈퇴 public int resign(String id)
멤버총명수 public int getTotalCount(Criterion cri)
5. DAO
회원가입 public int insertMember(MemberVO mvo)
아이디중복체크 public int selectId(String id)
로그인 public MemberVO selectMember(String id)
멤버리스트 public List<MemberVO> selectList(Criterion cri)
멤버탈퇴 public deleteMember(String id)
멤버총명수 public int selectTotalCount(Criterion cri)
6. DAOImpl
회원가입 public int insertMember(MemberVO mvo) --> "join"
아이디중복체크 public selectId(Stirng id) --> "checkid"
로그인 public MemberVO selectMember(String id) --> login"
멤버리스트 public List<MemberVO> selectList(Criterion cri) --> "mlist"
멤버탈퇴 public int deleteMember(String id) --> "resign"
멤버총명수 public int getTotalCount(Criterion cri) --> "totalCount"
7. Mapper
회원가입 <insert id="join" parameterType="MemberVO"></insert>
아이디중복체크 <select id="checkid" parameterType="java.lang.String" resultType="java.lang.Integer"></select>
로그인 <select id="login" parameterType="MemberVO" resultType="MemberVO"></select>
멤버리스트 <select id="mlist" parameterType="Criterion" resultType="MemberVO">
멤버탈퇴 <delete id="resign" parameterType="java.lang.String"></delete>
멤버총명수 <select id="totalCount" parameterType="Criterion" resultType="java.lang.Integer">
<Product>
Head(가맹본사) : 상품등록, 수정, 삭제
로그인화면에서 본사계정으로 로그인시

1. Head(jsp)
상품등록수정삭제메뉴+리스트 list.jsp <form action="/head/list?"> --> @GetMapping
상품등록 list.jsp <a href="/head/regist"> --> @GetMapping
regist.jsp <form action="/head/regist" method="post"> --> @PostMapping
바코드중복체크 dupleBacodeCheck <input id="checkBacode"><span id="bacode">
footer.jsp ajax의 url : "/head/dupleBacodeCheck"
상품명중복체크 duplePnameCheck <input id="checkPname"><span id="pname">
footer.jsp ajax의 url : "/head/duplePnameCheck"
상품수정 hlist.jsp <a href="/head/modify"> --> @GetMapping
modify.jsp <form action="/head/modify" method="post"> --> @PostMapping
상품삭제 remove.jsp <form action="/head/remove" method="post"> --> @PostMapping
2. HeadCtrl.java
***********************************public largeCate() public mediumCate() ?????*******************************
상품리스트 list : @GetMapping("/list")와 hsv.getTotalCount() 와 hsv.getLargeCate() 와 hsv.getMediumCate() 호출
상품등록 regist : @GetMapping @PostMapping hsv.regist()와 hsv.getLargeCate() 와 hsv.getMediumCate() 호출
바코드중복체크 checkBacode : @GetMapping("/dupleBacodeCheck") 에서 hsv.checkBacode() 호출
상품명중복체크 checkPname : @GetMapping("/duplePnameCheck") 에서 hsv.checkPname() 호출
상품수정 modify : @GetMapping @PostMapping hsv.modify()와 getLargeCate()와 getMediumCate() 호출
상품삭제 remove : @PostMapping hsv.remove()와 getLargeCate()와 getMediumCate() 호출
3. HeadService.java
상품등록 public int regist (Inventory ivo)
바코드중복체크 public int checkBacode(int bacode)
상품명중복체크 public int checkPname(String pname)
상품리스트 public List<InventoryVO> getHeadList(Criterion cri)
대분류 public getLargeCateCriterion cri()
소분류 public getMediumCate(Criterion cri)
상품수정 public int modify(ProductVO pvo)
상품삭제 public int remove(int bacode)
4. HeadServiceImpl.java
상품등록 public int regist (Inventory ivo) --> insertProduct
바코드중복체크 public int checkBacode(int bacode) --> selectBacode
상품명중복체크 public int checkPname(String pname) --> selectPname
상품리스트 public List<InventoryVO> getHeadList(Criterion cri) --> selectHeadlist
대분류 public getLargeCate(Criterion cri) --> selectLargeCate
소분류 public getMediumCate(Criterion cri) --> selectMediumCate
상품수정 public int modify(ProductVO pvo) --> updateProduct
상품삭제 public int remove(int bacode) --> deleteProduct
5.HeadDAO.java
상품등록 public int insertProduct(MemberVO mvo)
바코드중복체크 public int selectBacode(String id)
상품명중복체크 public int selectPname(String id)
상품리스트 public ProductVO selectHeadlist(Criterion cri)
대분류 selectLargeCate(Criterion cri)
소분류 selectMediumCate(Criterion cri)
상품수정 public int updateProduct(ProductVO pvo)
상품삭제 deleteProduct(int bacode)
6. HeadDAOImpl.java
selectLargeCate() --> "lcate"
selectMidiumCate() --> "mcate"
상품등록 insertProduct(MemberVO mvo) --> "regist"
바코드중복체크 selectBarcode(int barcode) --> "checkbacode"
상품명중복체크 selectPname(String pname) --> "checkpname"
상품수정 updateProduct(ProductVO pvo) --> "modify"
상품리스트 selectHeadlist(Criterion cri) --> "hlist"
상품삭제 deleteProduct(int bacode) --> "remove"
7. Mapper
<insert id="regsit" parameterType="HeadVO">
<select id="checkbacode" parameterType="java.lang.Integer" resultType="java.lang.Integer">
<select id="checkpname" parameterType="java.lang.String" resultType="java.lang.Integer">
<select id="hlist" parameterType="Criterion" resultType="HeadVO">
<select id="lcate" parameterType="Criterion" resultType="HeadVO">
<select id="mcate" parameterType="Criterion" resultType="HeadVO">
<update id="modify" parameterType="HeadVO">
<delete id="remove" parameterType="java.lang.Integer">
<select id="totalCount" parameterType="Criterion" resultType="java.lang.Integer">
Store(가맹점) : 재고, 결재, 발주
로그인화면에서 지점계정으로 로그인시

payment.jsp + soldlist.jsp / stocklist + scraplist / orderlist +order / main+management
1. Store(jsp)
- 메인 : main.jsp 버튼4개 (결제 조회 재고/폐기관리 발주/통계관리)
--> productmanagement.jsp버튼2개(재고/폐기) /storemanagement.jsp버튼2개
- 상품리스트 : stocklist.jsp(재고) soldlist.jsp(영수증, 판매) orderlist.jsp(발주) scraplist(폐기)
발주창 : order.jsp(본사리스트 보여주는 화면)
- 상품결제창 : payment.jsp
2. InventoryCtrl
- managetmentCtrl
main : @GetMapping("/main)
productmanagement.jsp : @GetMapping("/productmanagement")@GetMapping("/productmanagement")
storemanagement.jsp : @GetMapping("/storemanagement") @GetMapping("/storemanagement")
- StockScrapCtrl
stocklist.jsp : @GetMapping @PostMapping(수정시) modifyQuantity()
public largeCate() public mediumCate() 상품리스트 public List<InventoryVO> getProductList(Criterion cri) - 전체 + 카테고리별 : 서치방식과동일하게
scraplist.jsp : @GetMapping()
getScrapList(sysdate)
- PaySoldCtrl
payment.jsp : @GetMapping @PostMapping("/") addReciet()
public largeCate() public mediumCate() 상품리스트 public List<InventoryVO> getProductList(Criterion cri)
getProductList(bacode) 대신 javascript
추가 : 모달창 결제완료버튼 클릭시 결제되고 tbl_sell
조회 --> soldlist.jsp : @GetMapping()
getReceipList()
getReceipDetail()
- OrderCtrl
orderlist.jsp : @GetMapping() getOrderList() modifyOrderStatus()
order.jsp : @GetMapping() @PostMapping() selectLargeCate() selectMediumCate() getHeadList() getProductInfo() addOrder()
3.Service
getOrderList
getHeadList
getProductInfo
insertOrder - for문 사용...?
getStockList - 수량변경가능 +/-버튼
저장완료버튼눌렀을때 post로 db로 보냄.
updateStockQnt
getSoldList
getrecipt
getScrapList(폐기할목록) - 해당날짜에 폐기해야하는 리스트 불러오기
insertScrap()-->tbl_scrap으로
deleteRemoveStock
getProductList
getCategoryList
getPayInfo
4. SeriveImpl
5. DAO
StockScrap
public selectLargeCate() public selectMediumCate() selectProductList(Criterion cri) selectScrapList(sysdate) updateQuantity()
PaySold
pay-public selectLargeCate() public selectMediumCate() selectProductList(Criterion cri) insertReciet()
sold- selectReceipList() selectReceipDetail()
Order
updateOrderStatus()
selectOrderList() selectLargeCate() selectMediumCate() selectHeadList() selectProductInfo() insertOrder()
6. DAOImpl
7.Mapper
StockScrap
large medium plist slist modqnt
PaySold
large medium plist addrec rlist rdetail
Order
modstatus olist large medium hlist pinfo addorder
****** 질문 ? vo객체를 한번에 여러개 db에 insert할때 어느단에서 해결하는게 가장 효과적인지?? mapper쪽으로 객체list를 던진다.(mybatis반복문으로)
ctrl에서 vo로 묶고 이 상태에서 list로만들고 이걸 service단으로 쭉쭊 mapper list로 받고 mybatis 반복문으로 돌려줌.
(은혜씨 사진 참고)
<통계>
-------------------------------------분담-------------------------------------
멤버 + 조회(영수증) : 지인
발주 : 승용
재고+폐기 : 은혜
결제 : 남현
상품 등록/수정/삭제 : 유진
'_Programming > Spring' 카테고리의 다른 글
Error.한글깨짐 (0) | 2020.07.24 |
---|---|
Spring.IoC&DI (0) | 2020.07.21 |
Spring.Security_basic (0) | 2020.07.07 |
Spring.AOP(Aspect-Oriented Programming) (0) | 2020.07.06 |
Spring.Comment (0) | 2020.07.02 |