Nowadays, many social apps will match you with others based on some quiz. But we think these quizzes can hardly be used to predict one's appetite in making friends. So we are thinking about using the transaction history data to match people up.
-
E-commerce
- Backend logic:
-
Identification module
-
Database:
- Normal user: ID|UserName|Password|Email|Address|Phone|Payment
- Bussiness user: ID|UserName|Password|Email|Address|Phone|Company
- Admin user: ID|UserName|Password
-
Security:
- Using spring default security architecture
- OATH 2(login with 3rd party service account)
-
Permission:
- Normal user's account permission
- Social permission: follow user, unfollow user, blacklist, chat
- Buyer’s permission: browse the catalog, make the payment, request item, buy item
- Bussiness user's account permission
- Seller's permission: add item information, delete item information, publish item information, edit item information
- Admin user's account permission
- Certification: certify bussiness account application
- Item Admin(could change items outside the business org): delete Item
- Normal user's account permission
-
Function:
- Provide authentication and verification for users
-
API design:(Followed the format of /ResourceName/{ResourceID}/ChildResourceName/{ChildResourceID})
- URL: http://localhost/profile
- GET /profile -> Get all profile list
- POST /profile -> Create a new profile
- GET /profile/{ID} -> Get the profile with user ID
- PUT /profile/{ID} -> Admend the profile with user ID
- DELETE /profile/{ID} -> Delete the profile with user ID
- GET /profile/{ID}/all -> Get all the information in the profile with user ID
- POST /authorization -> Log in
- DELETE /authorization -> Log out
-
-
Basket module
- Database: ID|Owner_ID|Item_ID|Count
- Function:
- CRUD
- empty all
- Buy item
-
Ordering module
- Database: ID|Owner_ID|Item_ID|Count|Order_time|Price
- Function:
- CR
-
Catalog module
- Database: ID|Bussiness_User_ID|Name|Type|Price|Count|Discount|Description
- Function:
- CRUD
- add item to basket
- FrontEnd logic:
- Login\Signup page: call function in Identification service
- Profile page: call function in Baskets,Ordering services
-
Social 4. Recommend possible followers to users based on their purchase, view history; focus on some specific item(like books, CD)
-
Front-End
Tools Info Vue Front-end framework, MVVM pattern Element-UI Vue.js based UI framework -
Back-End
Tools Info Spring Back-end framework PostgreSQL databases(SQL) -
DevOps
Tools Info Docker containers Kubernetes open-source platform for managing containerized workloads and services Jenkins CI/CD