프로젝트명 : PPOS
마트 포스기 제작 미니 프로젝트
📆 프로젝트 기간 : 2024.04.11 ~ 2024.04.16
🔗 사용 기술 : Java, Java Swing, MariaDB
📋 기획
팀원은 6명이었지만 약 4일의 짧은 기간동안 뭘 개발할 수 있을까.. 고민하다가 마트에서 알바하는 팀원이 있었고, Java Swing으로 개발했을 때 뭔가 구시대적인 UI가 마트 포스기와 너무 닮아있어 마트 포스기를 개발하는 PPOS 프로젝트를 진행하게 되었음! 뽀스!
🙋♀️ 맡은 역할 (기능)
상품 관리와 거래 내역 페이지를 담당했고, 프론트엔드를 맡아 개발했어요!
💡 구현 화면 및 설명
🖼️ 메인화면

👨👩👧👦 고객정보

- 고객 정보 페이지
- 고객 등록
- 등록 버튼 누르면 dialog 화면 띄워져서 이름과 번호를 입력 받아 회원 등록하도록 함
- 등록할 때 입력이 제대로 들어가 있지 않거나 이미 등록된 번호이면 경고 label 띄워줌
- 고객 조회
- 고객명이나 고객 번호를 입력하면 조회 가능하도록 함
- 고객명은 완전 일치하는 경우, 고객 번호는 일부만 같은 경우에도 검색되도록 함
- 고객 삭제
- 각 고객 정보 리스트마다 삭제 버튼을 만들어 해당 row의 고객 정보가 삭제되도록 함
🛒 판매서비스

- 판매서비스 페이지
- 상품 등록
- 유저 조회 및 포인트 사용
- 등록된 유저를 조회하고, 해당 유저가 가진 포인트를 사용할 수 있도록 함
- 수량 수정
- 반품
- 결제
- 재고와 비교하여 결제를 진행하고, 회원 결제 진행 시 결제하는 금액의 1%를 포인트로 적립함
- 취소 및 전체 취소
📦 상품관리 (🙋♀️)

- 상품 관리 페이지
- 등록된 모든 상품을 조회할 수 있음
- 상품을 등록하거나 수정 및 삭제할 수 있음
- 상품명, 상품번호, 가격, 수량을 입력하여 등록
- 빈 입력창이 있거나 잘못된 값이 입력되었을 경우 에러 처리
- 수정하거나 삭제하고 싶은 상품의 행을 클릭하면 수정할 수 있는 팝업창이 띄워지거나 삭제가 이루어짐
- 상품명 혹은 상품번호로 검색할 수 있음
- 검색창에 입력된 값이 문자열일 때 → 상품명으로 조회
- 검색창에 입력된 값이 숫자일 때 → 상품번호으로 조회
📑 거래내역 (🙋♀️)

- 거래 내역 페이지
- 모든 거래 내역을 조회할 수 있음
- 고객명, 고객번호, 금액, 날짜
- 반품하고 싶은 거래 내역을 선택하고 반품 버튼을 클릭하면 반품이 이루어짐
- 고객이름 혹은 고객번호로 검색할 수 있음
- 검색창에 입력된 값이 문자열일 때 → 고객이름으로 조회
- 검색창에 입력된 값이 숫자일 때 → 고객번호으로 조회
회고 (좋았던 점, 아쉬웠던 점 등등)
약 4일... (온전한 4일이 아니었음..)동안 기획부터 개발 그리고 발표 준비까지 해야하다보니 제대로 된 설계를 진행하지 못한 것 같아 많이 아쉽고.. 일단 개발하자 !!!! 라는 생각으로 개발을 진행해서 엉진망창 너낌으로 마무리한 것 같아 너무너무 아쉽다..
하지만 이건 리팩토링할 게 많다는 뜻. 앞으로 개선하면 된다는 뜻. (너무 긍정적 ㅎ)
아무튼 Java를 배우고 진행한 프로젝트에서 Java Swing으로 또 프론트엔드를 맡게 될지 몰랐지만 새로운 언어로 UI를 구현해보니 또 나름 색다르고 재미있었다.
또 MVC 패턴에 대해 학습하고 나름 이해할 수 있었던 프로젝트라 도움이 많이 되었다 !
아쉬운 부분이 많지만 !! 팀원들과 나름 잘 마무리했다 !! 고생했다 !!!!