Skip to content

week1_output

Yancy edited this page Nov 20, 2020 · 12 revisions

🚀 Week 1 산출물 정리

🔖 MongoDB - ERD (설계 참고용)

MongoDB를 사용할 예정입니다.

  • 설계를 어떻게 진행할지에 대해서, 1주차에는 참고용으로 ERD로 설명드리겠습니다.
  • MongoDB로 설계한 내용은 다음 주에 추가하여 말씀드리겠습니다. 😄
CREATE TABLE `user` ( -- 사용자
  `id` int(45) auto_increment,
  `name` varchar(45), -- 이름
  `email` varchar(45) not null, -- 이메일
  `password` varchar(100), -- 비밀번호
  `imgUrl` varchar(100),  -- 유저 프로필 사진 (아직 필수 아님),
  `startDay` varchar(40), -- 월요일 / 일요일 중 시작 일 선택
  `isSunday` tinyint,
  `createAt` timestamp not null default current_timestamp, -- 가입 일
  PRIMARY KEY (`id`),
  UNIQUE KEY `name` (`name`)
);

-- 수입 카테고리 종류: 월급, 용돈, 기타수입
-- 지출 카테고리 종류: 식비, 생활, 쇼핑/뷰티, 교통, 의료/건강, 문화/여가, 미분류
CREATE TABLE `category` ( -- 카테고리
  `id` int(45) auto_increment,
  `type` varchar(45) default 'expenditure', -- income (수입), expenditure (지출)
  `title` varchar(45), -- 카테고리 명
  PRIMARY KEY (`id`)
);

-- 식사, 쇼핑, 의료, 통신, 미용
CREATE TABLE `tag` ( -- 태그
  `id` int(45) auto_increment,
  `type` varchar(45) default 'expenditure', -- income (수입), expenditure (지출)
  `title` varchar(45), -- 태그 명
  PRIMARY KEY (`id`)
);

CREATE TABLE `payment` ( -- 결제수단
  `id` int(45) auto_increment,
  `userId` int(45), -- 사용자 ID
  `title` varchar(45), -- 결제수단 이름 (현대카드, 현금 등)
  `state` varchar(45) default 'registered', -- 등록 상태인지, 삭제 상태인지
  PRIMARY KEY (`id`),
  FOREIGN KEY (`userId`) references user (`id`)
  ON DELETE CASCADE
  ON UPDATE CASCADE
);

CREATE TABLE `transaction` ( -- 거래 내역
  `id` int(45) auto_increment,
  `userId` int(45), -- 사용자 ID
  `categoryId` int(45), -- 카테고리 ID
  `paymentId` int(45), -- 결제수단 ID
  `amount` int(45), -- 금액
  `content` varchar(150), -- 거래 내용
  `type` varchar(45) default 'expenditure', -- income (수입), expenditure (지출)
  `updateAt` timestamp not null default current_timestamp on update current_timestamp, -- 시간은 GMT 기준
  PRIMARY KEY (`id`),
  FOREIGN KEY (`userId`) references `user` (`id`),
  FOREIGN KEY (`categoryId`) references `category` (`id`),
  FOREIGN KEY (`paymentId`) references `payment` (`id`)
);

ERD

image

🔖 Work Flow

image

image

🔖 PR / ISSUE / BUG Template

ISSUE Template

## 🗣 설명

Github 이슈 설명
<br/>

## 📋 체크리스트

> 구현해야하는 이슈 체크리스트

- [ ] 체크 사항 1
- [ ] 체크 사항 2
- [ ] 체크 사항 3
- [ ] 체크 사항 4
<br/>

## 🚧 주의 사항

> 이슈를 구현할  유의깊게 살펴볼 사항

- 주의 사항 1
- 주의 사항 2

PR Template

##  작업 내용
- [ ] 작업 내역 1
- [ ] 작업 내역 2

## 🔨 변경 사항 (구현 사항)
- [ ] 구현 사항 1
- [ ] 구현 사항 2

## 📸 스크린샷 (Optional)

## 🔒 관련이슈 (Optional)
- (close #issueNumber) 형식으로 닫을 이슈를 명시해주세요.

BUG Template

### 🤔 Current behaviour (bug)

Write here

<br/>

### 😮 Expected behaviour (correct)

Write here

<br/>

### 😣 버그 재현방법

1. Write here
2. Write here

🔖 화면 설계 (기획서)
  • moqups를 활용해 기획서를 작성했습니다.

로그인 페이지

image

가계부 선택 페이지

image

대시보드(메인 페이지)

20201119_171157_36

수입/지출 페이지

20201119_171157_37

카드/계좌 페이지

20201119_171157_38

카테고리/태그 페이지

20201119_171157_39

달력 페이지

20201119_171157_40

보고서 페이지

보고서

설정 페이지

image

🤔 고민 요소

MMS -> Text Parsing

  • 문자 내용을 통해 지출 카테고리를 어떻게 확인할 수 있을까?
    • 핸드폰은 문자가 오는 이벤트가 있다면 -> 캐치한다 이런 느낌이 있는데
    • 웹은 문자 정보를 어떻게 받아들일까? 🤔🤔🤔
  • 웹 중심 개발을 고민했었는데, 모바일 중심 개발을 고려해야할까?
  • 아래와 같은 문자 형식으로 웹에 사용자가 넣어주도록 해야할까?
[Web발신]
8,000원 일시불
딸부자네11번출구점

Clone this wiki locally