Task #105
openAdd Freelancer_skills table and assign in freelancer_profile listing
0%
Description
Objective
Enable assigning skills to a freelancer from the Freelancer Listing page.
Selected skills must be saved in the new table freelancer_skills
1️⃣ Database
Table: accounts_freelancerprofile_skills
id – PK
freelancer_id – FK → freelancer.id
skill_id – FK → skills.id
proficiency_level – ENUM('BEGINNER','INTERMEDIATE','EXPERT')
years_experience – INT
Unique (freelancer_id, skill_id)
2️⃣ Frontend – Freelancer Listing
Add new action button: “Add Skills” in Action column.
On click → Open modal.
Modal should:
Fetch skills from skills table (dynamic dropdown).
Allow selecting one or multiple skills.
For each selected skill:
Select proficiency level (dropdown)
Enter years of experience (numeric input)
Show already assigned skills when editing.
3️⃣ Backend
Create APIs to:
Fetch all skills
Fetch skills assigned to a freelancer
Add/Update freelancer skills
Validations:
Prevent duplicate skill mapping
Validate enum values
Validate years_experience ≥ 0
✅ Expected Outcome
“Add Skills” visible in freelancer listing.
Skills assigned with proficiency & experience.
Data saved correctly in freelancer_skills.
No duplicate entries.
Data retrievable correctly per freelancer.
No data to display