/project03-teamD

프로젝트3 D팀 프로젝트 - 빈공간

Primary LanguageSwiftMIT LicenseMIT

빈공간

BinGongGan Frame 55

📌 프로젝트 소개

개발기간 : 2023.09.04 ~ 2023.09.14 (10일간)

  • 쉐어 오피스 등 공유 공간을 등록하고 예약할 수 있는 서비스 플랫폼
  • 판매자는 공간을 등록하여 판매할 수 있고 사용자는 등록된 공간을 검색하고 예약



📌 설치 / 실행방법

  • Xcode에서 BinGongGan.xcworkspace 파일 열기
  • 아래 파일 필요
- GoogleService-Info.plist
- Firebase 프로젝트 생성 후 Authentication, Firestore Database, Storage 를 추가합니다.
  • 테스트 아이디
- User: aaaa@aaaa.aaaa / asdf1234
- Biz: haha@naver.com / asdf1234



📌 기능 소개

⭐️ 빈공간 User 앱

회원가입/로그인
  • 이메일과 비밀번호를 입력하고 로그인 버튼을 누르면 홈 뷰로 넘어간다.
  • 데이터베이스에 없는 이메일 또는 비밀번호를 입력 하면 Alert로 로그인 실패 알림이 뜬다.
  • 회원가입 버튼을 누르면 회원가입 뷰로 넘어간다.
  • 회원가입 및 로그인은 Firebase Auth를 통해 인증할 수 있다.
  • 회원가입에 필요한 항목은 유효성 검사를 진행한다.
  • 이메일 중복검사를 통해 중복되지 않은 계정을 생성할 수 있다.
  • 휴대폰 번호를 입력한 후 본인 인증을 진행한다.(구현예정)
  • 로그인 정보는 앱 내에 저장되어 자동로그인을 할 수 있다.
  • 내 주변을 검색하는 버튼을 통해 지도에서 공간들을 검색하러 이동할 수 있다.
  • 공유오피스, 밴드룸, 스튜디오, 공유키친 4가지 카테로리를 선택해서 선택된 카테고리의 목록을 불러올 수 있다.
  • 카테고리별로 정리된 공간들에서 지역을 선택해 필터링 해서 찾아볼 수 있다.
  • 인기 플레이스에서 빈공간 플레이스의 인기 공간을 볼 수 있다.
  • 랜덤 공간 추천을 사용하여 사용자들에게 다양한 공간의 정보를 보여준다.
  • 이벤트 배너를 통해 광고 효과를 볼 수 있다.
  • 공간을 선택해 클릭하게 되면 공간의 자세한 정보들을 볼 수 있다.
  • 상세 정보에서 건물의 정보와 세부 룸의 정보를 확인하고 룸을 선택해 예약 신청을 할 수 있다.
  • 공간에 전화 문의 할 수 있다. (실 기기만)
  • 하트 버튼으로 공간을 찜 할 수 있다.
  • 공간별로 사용자들이 등록한 리뷰를 확인 할 수 있다.
  • 판매자가 등록한 공간의 공지사항을 확인 할 수 있다.
  • 예약 신청시 선택한 방에 대한 정보가 간단하게 나타난다.
  • 달력을 통해 예약할 날짜의 입실과 퇴실 날짜를 선택한다.
  • 모든 필드를 채우지 않을 시 메세지창이 뜬다.
  • 환불 사항을 꼭 확인 후 결제창으로 넘어갈 수 있다.
  • 결제 확인 창에서 예약 내역을 확인할 수 있다.
지도 검색
  • 빈공간 앱은 공간명을 검색할 수 있을 뿐만 아니라 지도로도 검색할 수 있다.
  • 오른 쪽 상단 < 뒤로 가기 버튼을 누르면 홈 뷰로 이동한다.
  • 도로명 주소로 원하는 위치를 검색할 수 있다.(구현예정)
  • 카테고리 버튼을 누를 시 카테고리 별로 리스트가 보이게 된다.
  • 검색하게 되면 하단에 리스트들이 떠서 현재 예약 가능한 공간 목록을 볼 수 있다.
  • 리스트 뿐만 아니라 지도 위에 핀을 누르게 되면 자세한 정보를 볼 수 있다.
  • 하단 왼쪽에 현재 내 위치로 이동할 수 있는 버튼이 있다. (내 주변 검색 가능)
  • 공간들의 디테일 화면에서 하트 버튼을 토글하여 선택한 공간을 찜 하거나 취소 할 수 있다.
  • 찜 한 공간들은 찜 탭에서 보여지게 된다.
  • edit버튼으로 하트버튼을 토글하여 찜 목록에서 삭제 할 수 있다.
마이페이지
  • 내정보에 대해 관리 할 수 있다.
    • 회원 정보를 수정할 수 있다.(닉네임,연락처,이름)
    • 계좌를 수정할 수 있다.(은행,계좌번호)
    • 계졍을 관리할 수 있다.(비밀번호 변경,회원탈퇴)
  • 예약/리뷰 내역을 볼 수 있다.
    • 예약 내역을 볼 수 있다.(전체,예정,완료,취소)
    • 판매자에게 무통장 입금 후 승인을 기다려야 한다.(취소 가능)
    • 판매자가 승인하면 예약이 확정된다.(취소 가능)
    • 체크아웃 시간까지 별 다른 취소가 없으면 이용이 완료되어 리뷰를 작성할 수 있다.
    • 리뷰를 작성하면 이용이 완전 완료된다.
    • 상세보기를 누르면 예약 상세 화면이 나온다.
    • 리스트를 누르면 해당 공간뷰로 이동한다.
  • 고객센터를 통해 문의를 할 수 있다.
    • 1:1 문의(상담원 연결,이메일 문의)를 할수있다.
    • 자주 묻는 FAQ로 볼 수 있다.
  • 관리자가 등록한 앱 공지사항, 앱 정보를 볼 수 있다.
  • 앱 설정(위치권한, 알림), 로그아웃을 할 수 있다.
홈/예약 검색/찜 지도 마이페이지
홈/예약 검색/찜 지도 마이페이지

⭐️ 빈공간 Biz 앱

회원가입/로그인
  • 이메일과 비밀번호를 입력하고 로그인 버튼을 누르면 홈 뷰로 넘어간다.
  • 데이터베이스에 없는 이메일 또는 비밀번호를 입력 하면 Alert로 로그인 실패 알림이 뜬다.
  • 회원가입 버튼을 누르면 회원가입 뷰로 넘어간다.
  • 회원가입 및 로그인은 Firebase Auth를 통해 인증할 수 있다.
  • 회원가입에 필요한 항목은 유효성 검사를 진행한다.
  • 이메일 중복검사를 통해 중복되지 않은 계정을 생성할 수 있다.
  • 휴대폰 번호를 입력한 후 본인 인증을 진행한다.(구현예정)
  • 로그인 정보는 앱 내에 저장되어 자동로그인을 할 수 있다.
  • 전체 메뉴를 통해 판매자용 앱에서 제공하는 주요 기능 6가지에 접근할 수 있다.
  • 판매자가 소유한 대여 공간에 새롭게 들어온 예약을 바로 확인 및 승인할 수 있다.
예약 관리
  • 달력을 통해 전체적인 예약 현황과 날짜별 예약 내역에 대해 확인할 수 있다.
  • 예약이 있는 날짜에는 날짜 위에 동그란 표시가 생기고, 날짜 아래에 예약 건수가 표시된다.
  • 대기, 취소, 확정 내역을 분리하여 확인 및 관리할 수 있다.
리뷰 관리
  • 판매자가 소유한 대여 공간별 리뷰를 확인할 수 있다.
  • 리뷰에 최대 1개의 댓글을 작성할 수 있다.
  • 부적절한 리뷰에 대해서는 적절한 신고 사유를 선택하여 신고 가능하다.
공지사항
  • 판매자가 소유한 대여 공간별 공지사항을 관리할 수 있다.
  • 공지를 특정 공간에만 올릴지, 소유한 전체 공간에 올릴지 선택할 수 있다.
내 공간
  • 판매자의 정보가 명함 형식으로 나타난다.
  • 공간 등록을 하지 않은 경우, 공간 등록을 위한 버튼이 하단에 나타난다.
    • 공간 이름, 공간 카테고리(쉐어오피스, 밴드룸, 스튜디오, 키친룸)을 입력 및 선택할 수 있다.
    • 주소 검색이 가능하며 검색한 주소 결과를 지도에 표시한다.
    • 공간 사진 등록과 공간 시설 선택, 공간 정보 입력이 가능하다.
  • 공간 등록을 한 경우, 세부 공간을 등록 및 관리할 수 있는 스크롤 뷰가 나타난다.
내 정보
  • 회원가입시 등록한 판매자의 정보를 확인할 수 있다.
  • 전화번호, 계좌번호를 수정할 수 있다.
  • 로그아웃과 회원탈퇴가 가능하다.
예약관리/리뷰관리 공지사항 내 공간 내 정보
예약관리/리뷰관리 공지사항 내 공간 내 정보

⭐️ 빈공간 Admin 앱

공지관리
  • 앱에 대한 공지(공지, 업데이트, 장애, 기타)를 작성할 수 있다.
  • 사용자와 판매자 계정을 확인하고 관리할 수 있다.
  • 판매자가 등록한 공간을 확인하고 관리할 수 있다.
  • 사용자와 판매자가 작성한 댓글과 답글을 확인할 수 있다.
  • 신고된 댓글을 확인하고 관리할 수 있다.



📌 개발도구 및 기술스택

개발환경

  • Swift 5.9, Xcode 14.0, iOS 16.4 이상

협업도구

  • Figma, Github, Notion

기술스택

  • SwiftUI
  • FiresStore, Firebase Storage
  • KakaoMapAPI, MapKit



📌 팀원소개

PM

최하늘
@HANLeeeee

User Team

임대진 이제현 양성혜
@DAEJINLIM @LJH3904 @seongzzang
윤지호 마경미 박지현
@yoonjiho37 @akrudal @wowhyunnie
방유빈 손윤호 조민근
@bangtori @SonYoonho @LutherCho

Biz Team

박채영 김민기 신희권 오영석 윤경환
@choala @minki-kim-git @hhh131 @Youngs5 @kempt007



📌 License

"BinGongGan" is available under the MIT license. See the LICENSE file for more info.