Project

General

Profile

Task #66

Updated by Dana Basheer about 1 month ago

Enhance the Skill/Service Listings page by adding a service-based filter and a modal popup for creating new skill/service listings. view. The filter allows users to narrow down listings by selected skill/service type. The modal view displays full service type, and the modal allows users to create details when a new listing user clicks on a listing, without navigating away from the page. 

 🗃️ Tables Used (Reference Existing) 

 ***skill_service_listings 
 skill_service_listings 
 Field 	 Description 
 id (PK) 	 Listing ID 
 user_id (FK users.id) 	 Owner 
 category_id (FK categories.id) 	 Service category 
 skill_service_id (FK skill_service_master.id) 	 Service type 
 skill_title 	 Service title 
 description 	 Service details 
 contact_name 	 Contact name 
 phone_number 	 Contact phone 
 state 	 State 
 district 	 District 
 place 	 Area/City 
 latitude 	 Location latitude (nullable) 
 longitude 	 Location longitude (nullable) 
 status 	 Pending / Approved / Rejected 
 is_active 	 Active / Inactive 
 created_at 	 Timestamp 

 ***skill_service_master 
 skill_service_master 
 Field 	 Description 
 id (PK) 	 Skill/Service ID 
 name 	 Service name 
 is_active 	 Active / Inactive 
 locations 
 Field 	 Description 
 id (PK) 	 Location ID 
 parent_id 	 Parent location 
 name 	 Location name 
 type 	 State / District / City / Area 
 is_active 	 Active / Inactive 

 ***Validations 

 ***Service Filter 

 *Filter dropdown loads only active services from skill_service_master 

 *Default option: All Services 

 Filter applies only to: 

     

      *status = Approved 

     

      *is_active = true 

 ***Create Modal (Popup Form) ***Modal View 

 *Modal opens on clicking “Add Service” / “Create Listing” button a service listing 

 Fields inside modal: Displays: 

 *Category (mandatory, active only) 

 *Service Type (mandatory, active only) 

 *Skill Title (mandatory, min 3 characters) title 

 *Description (mandatory, min 10 characters) 

 *Contact Name (auto-filled from user profile, read-only) name & phone 

 *Phone Number (auto-filled from user profile, read-only) *Location (state, district, place) 

 *State / District / Place (mandatory, active locations only) *Optional map preview (if coordinates exist) 

 ***Map selection (optional) 

 Map Rules 

 *Latitude & longitude *Modal must be saved together read-only (no edit actions) 

 *Latitude range: -90 to +90 

 *Longitude range: -180 to +180 

 *Manual coordinate entry is not allowed 

 ***System Rules 

 *New listings default to: 

    *status = Pending 

    *is_active = true 

 *User can create listings only for their own account 

 *Inactive categories/services/locations must not appeardal *Close button and outside-click should close modal

Back