this-is-spear / hello-banking-api Goto Github PK
View Code? Open in Web Editor NEW한정된 물리 자원으로 최대한 거래를 성사시키는 계좌 서비스
Home Page: https://wiki.mutable.ai/this-is-spear/hello-banking-api
한정된 물리 자원으로 최대한 거래를 성사시키는 계좌 서비스
Home Page: https://wiki.mutable.ai/this-is-spear/hello-banking-api
영문 | 한글 | 설명 |
---|---|---|
User | 사용자 | 서비스를 사용하는 사람. |
Account | 계좌 | 계좌를 관리하기 위한 단위. 잔액과 사용 내역 정보 포함. 사용자는 최소 하나 이상의 계좌를 가짐. |
AccountBalance | 계좌 잔액 | 계좌 잔액을 의미. 계좌의 Balance. |
AccountHistory | 계좌 사용 기록 | 계좌 금액 변동 내역 의미. 기록 타입 정보를 가진다. |
HistoryType | 기록 타입 | 기록 타입은 입금(DEPOSIT), 출금(WITHDRAW) 중 하나의 정보를 가진다. |
AccountHistoryList | 계좌 사용 목록 | AccountHistory의 모음. |
Money | 금액 | 돈을 관리하는 단위. 0원 이상이어야 한다. |
AccountNumber
)를 입력해 잔액(AccountBalance
)과 사용 목록(AccountHistoryList
)을 반환한다.(getAccountBalanceAndAccountHistory
)
Session
)에서 사용자의 정보(User
)를 식별해 사용자의 계좌가 맞는지 확인한다.Balance
)과 사용 목록(AccountHistoryList
)을 반환한다.FromAccountNumber
), 상대방의 계좌 정보(ToAccountNumber
), 금액(Money
)을 입력받아 돈을 이체한다. (transferMoney
)
Session
)에서 사용자의 정보(User
)를 식별해 사용자의 계좌가 맞는지 확인한다.Money
)을 이체한다.getTargetsToBeTransfer
) - (임시)
Targets
)를 반환한다.AccountNumber
)로 잔액(AccountBalance
)과 히스토리(AccountHistory
)을 반환한다.
AccountHistory
)를 조회한다.AccountBalance
)을 조회한다.FromAccountNumber
)에서 상대방(ToAccountNumber
)에게 입력받은 금액을 이체한다.
AccountNumber
) 리스트를 반환한다.AccountNumber
)를 입력해 히스토리(AccountHistory
)에 입금 정보를 추가한다.AccountNumber
)를 입력해 히스토리(AccountHistory
)에 지출 정보를 추가한다.FromAccountNumber
, ToAccountNumber
)가 존재해야 한다.AccountNumber
)를 입력해 히스토리(AccountHistory
)에 지출 정보를 추가한다.AccountNumber
)를 입력해 히스토리(AccountHistory
)에 입금 정보를 추가한다.userId
), 아이디(Id
), 이름(name
), 비밀번호(Password
)를 가진다.Id
), 계좌 번호(AccountNumber
), 사용자 식별자(UserId
), 계좌 잔액(Balance
) 정보를 가진다.
Money
)의 정보이다.-
의 조합이다.xxx-xxxx-xxxxxx
이다.Money
)은 0 원 이상이어야 한다.AccountHistory
) 목록을 가진다.Id
), 계좌 번호(FromAccountNumber
)와, 상대 계좌 번호(ToAccountNumber
) 기록 타입(HistoryType
)과 금액(Money
), 계좌 잔액(Balance
), 기록 날짜(RecordDate
)을 포함한다.HistoryType
)은 입금(DEPOSIT
), 출금(WITHDRAW
) 중 하나의 정보를 포함한다.영문 | 한글 | 설명 |
---|---|---|
이메일 | 사용자의 이메일. | |
Password | 비밀번호 | 사용자의 비밀번호 |
EncodedPassword | 암호화된 비밀번호 | 암호화 알고리즘으로 암호화된 사용자의 비밀번호 |
User | 사용자의 정보 | 사용자의 정보를 의미한다. principal에 사용자 정보를 확인할 수 있다. |
RoleType | 권한 | 회원(ROLE_MEMBER), 운영자(ROLE_ADMIN) 정보. |
ROLE_MEMBER
), 운영자(ROLE_ADMIN
) 중 하나의 정보를 가진다.영어 | 한글 | 설명 |
---|---|---|
Friend | 친구 정보 | 친구 정보. |
FromUser | 사용자 | 친구 요청을 보낸 사용자. |
ToUser | 상대방 | 친구 요청을 받은 사용자. |
FriendHistory | 친구 요청 이력 | 친구 요청 이력을 보낸 정보. |
ApprovalStatus | 요청 승인 여부 | 요청이 승인됐는지 여부이다. 승인 여부는 대기(WAITING), 승인(APPROVED), 거절(REJECTED) 중 하나의 정보를 포함한다. |
WAITING | 대기 | 요청이 대기인 상태. |
APPROVED | 승인 | 요청이 승인된 상태. |
REJECTED | 실패 | 요청이 실패된 상태. |
이메일 | 사용자 식별할 수 있는 수단. |
Id
), 사용자 식별자(FromMemberId
), 상대방 식별자(ToMemberId
)를 포함한다.Id
), 사용자 식별자(FromMemberId
), 상대방 식별자(ToMemberId
), 승인 여부(ApprovalStatus
)를 포함한다.WAITING
), 승인(APPROVED
), 거절(REJECTED
)중 하나의 정보를 가진다.WAITING
)에서 승인(APPROVED
)으로 변경한다.
ApprovalStatus
)가 대기(WAITING
)여야 한다.WAITING
)에서 거절(REJECTED
)로 변경한다.
ApprovalStatus
)가 대기(WAITING
)여야 한다.REJECTED
)에서 대기(WAITING
)로 변경한다.
ApprovalStatus
)가 거절(REJECTED
)이어야 한다.Principal
)와 상대방의 식별자(MemberId
)를 입력받아 친구 요청을 보낸다.
Principal
)와 친구 요청 식별자(AskedFriendHistoryId
)를 입력해 친구 요청을 승낙한다.
Principal
)와 친구 요청 식별자(AskedFriendHistoryId
)를 입력해 친구 요청을 거절한다.
Principal
)를 이용해 친구 목록을 조회한다.Principal
)를 이용해 자신에게 온 친구 요청 목록을 확인한다.ApprovalStatus
)는 대기(WAITING
) 상태이거나 거절(REJECTED
) 상태여아 한다.WAITING
) 중인 친구 요청 목록을 조회한다.ApprovalStatus
)가 승인(APPROVED
)으로 변경된다.ApprovalStatus
)가 거절(REJECTED
)로 변경된다.장점 | 단점 | |
---|---|---|
Transactional Repeatable Read |
||
Synchronized | ||
CAS | ||
Optimistic Lock | ||
Passimisitc Lock | ||
Named Lock | ||
Reddisen Lock |
영문 | 한글 | 설명 |
---|---|---|
AlarmMessage | 알람 메시지 | 정보를 제공하는 메시지 |
TaskStatus | 작업 상태 | 성공(SUCCESS ), 실패(FAIL ) 중 하나의 정보를 가진다. |
TaskType | 작업 유형 | 출금(WITHDRAW ), 입금(DEPOSIT ), 이체(TRANSFER ) 중 하나의 정보를 가진다. |
userId | 사용자 식별자 | 사용자를 판변하는 식별자 |
NumbleAlarmService | 넘블 알람 서비스 | 넘블에서 제공하는 외부 API |
AlarmType
status
)와 작업 유형(type
)의 정보가 포함된다.AlarmService
userId
)와 작업 유형(AlarmType
)에 따라 사용자에게 알림을 보낸다.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.