# My Lê # Readme.md # FE ## authentication 1. New User can register for a new account with name, email, password.👌 2. User have to log in with email and password👌 3. User stay logged in with refreshing page.👌 4. On the profile page, user can see: name , ava, aboutMe, + Option số job đã tuyển, số job đã apply thành công 6. on the left side of profile page, User can switch tabs between 1. profile can edit all information (Except email) 2. manage Job: +filter by status "done", "ongoing" --> pagination 3. manage resume: +filter by status "pending", "approved" , "rejected" --> pagination ## job 1. user can see homepage with carousel and some job --> click for detail 2. user can see list all of job: search, filter,pagination 3. user can click to see more detail about job and Q&A of job # LOGIN REQUIRED ## create job 4. User can create a new job . User can see the detail job after successfully created and on the top of list of jobs 5. author can update job 6. author can delete job ## Q&A 7. User can ask on a job detail. User can see the comment after successfully created. 8. User can edit --> isEdited: true --> UI 9. User can delete cmt 10. Employer can answer each question. All user can see an answer after successfully created. optional: employ can delete or update answer ## respond request 11. user can apply job in page detail with application form which have message 12. user can cancel job in page detail 14. employer can respond "approved" , "rejected" application --> toasty 15. when approved, secret information will be appeared in manage ### Target User Profile 14. User can see the profile of other users. # BE ## User flow (UF)6 😂chưa ktra expired accesstoken? cần k? 1. User can create account with email and password and name 👌 2. User can login with email and password👌 3. User can login with accessToken 👌 4. User can get single user profile by id (login required)👌😂checkid 5. Owner can update own account profile include password👌(except: email) 6. Owner can deactivate own account👌 **+** optional: User can see a list of all users - {{host}}/user ![](https://i.imgur.com/7wM3rWS.png) - check id ![](https://i.imgur.com/8eE41Ao.png) ---------- ## Job Flow (JF)6 +++ 1. User can create a job👌😂check link img 2. Author can edit job👌😂check link img 3. Author can deactivate job👌 4. user can get a single job by id job👌😂checkid 5. User can see a list of all jobs (pagination,sort,search)👌 - user can sort by acs/decs date - user can search by name", "type", "category", "location", "status"😂location include 6. Author can get all own job (pagination,sort,search)👌 - user can sort by "acs"/"decs" date - user can search by name", "type", "category", "location", "status"😂location include - {{host}}/job ![](https://i.imgur.com/4iczwvQ.png) ------------ ## comment flow (CF)5: 14g 1. User can create a comment to job post👌 2. Author of Comment can update that comment👌 3. Author of Comment can delete that comment👌 4. Employer can reply comment👌 5. User can see comment by jobid (not login required), pagination👌 - search by reply === "missing" :-> CHƯA REPLY, GIÚP AUTHOR FILTER - host/comment --> :id = _commentId ![](https://i.imgur.com/MURbUX2.png) --------------------- ## Candidate flow (CF)7 1. user can apply job👌 2. user can cancel job👌 3. author can respond request👌 4. author can get list application By JobId +search by status👌 5. user can get own application List +search by status👌 - host/application ![](https://i.imgur.com/KEPl9lL.png) # schema: **1. users collection:** _userId:"" name: required email: required password: required avatarUrl: aboutMe: isDeleted: timestam **2. jobs collection** _jobId: authorId: name: type: fulltime, parttime, temporary category: Community, Environment, Health care, Sports, Wildlife Protection description: location: imageUrl: status: "done","ongoing" isDeleted: detailedInformation: <<gửi khi ứng viên được approved>> isFeatured: <<true hiện trên home page>> timestamp **3. comment collection**: _commentId: jobId: authorCommentId: content: reply: isEdited: timestamp **4. Apllication**: jobId employerId candidateId message: status: "pending", "approved" , "rejected" timestamp ## BONUS featured: DONATE, MAP, RATING DONATE: 1d https://www.npmjs.com/package/react-paypal-button-v2 MAP: 3d googlemap api tính khoang cách --> 10 min ![](https://i.imgur.com/NgHy95s.png)