Project

General

Profile

Task #122

Updated by Dana Basheer 16 days ago

The Matching Module is responsible for identifying and displaying potential partner profiles based on user preferences and profile compatibility. 

 It is used in: 

 * Dashboard → Daily Recommendations 
 * Matches page 
 * Search results 

 The system compares: 

 * User profile data 
 * User preference data 
 * And generates recommended matches. 

 **Table** 

 user_match_table 

 * id 	 INT 	 PK 	 Unique match record ID 
 * user_profile_id 	 INT 	 FK 	 Logged-in user profile 
 * matched_profile_id 	 INT 	 FK 	 Recommended profile 
 * match_score 	 INT 	 — 	 Compatibility score (0–100) 
 * match_status 	 VARCHAR 	 — 	 Suggested / Interested / Accepted / Rejected 
 * created_date 	 DATETIME 	 — 	 Match generated date 
 * is_active 	 BOOLEAN 	 — 	 Status 

 **Validations** 

 user_profile_id 

 * Mandatory 
 * Must exist in registration_table 
 * Cannot match with itself 

 matched_profile_id 

 * Mandatory 
 * Must exist in registration_table 
 * Must be active profile 

 match_score 

 * Must be between 0 and 100 
 * Auto-calculated by system 

 match_status 

 * Allowed values: 
   * Suggested 
   * Interested 
   * Accepted 
   * Rejected 

 created_date 

 * Auto-generated 
 * Cannot be edited 

 is_active 

 * Default value: true 

 * User cannot match with own profile 
 * Only active profiles can be matched 
 * Matches should respect user preferences 
 * Matches refresh daily 
 * Duplicate matches must not be created 

 **Supporting Table Used** 

 * registration_table 
 * user_preference_table 
 * profile_photo_table 
 * education_master 
 * occupation_master 
 * state_master 
 * district_master 
 * city_master 
 * star_master 
 * raasi_master 
 * sub_caste_master

Back