Final Database Migration - Adding Referral Code Support
Step 1: Adding referral_code column
ℹ referral_code column already exists
Step 2: Checking interviews table columns
ℹ Column 'duration_minutes' already exists in interviews table
ℹ Column 'next_interview_type' already exists in interviews table
Step 3: Checking joining_details table columns
ℹ Column 'expected_joining_date' already exists in joining_details table
ℹ Column 'work_location' already exists in joining_details table
ℹ Column 'joining_notes' already exists in joining_details table
ℹ Column 'joining_feedback' already exists in joining_details table
Step 4: Updating ENUM values
✓ Updated ENUM values successfully
✓ Updated ENUM values successfully
✓ Updated ENUM values successfully
Step 5: Verification
Table: candidates
- id: int
- candidate_id: varchar(20)
- name: varchar(100)
- phone: varchar(15)
- referral_code: varchar(50)
- email: varchar(100)
- status: enum('pending','shortlisted','selected','rejected','hold','joined','selected_not_joined','rescheduled','process_ended')
- source: varchar(50)
- lineup_date: date
- experience: varchar(50)
- skills: text
- current_company: varchar(100)
- current_salary: decimal(10,2)
- expected_salary: decimal(10,2)
- notice_period: varchar(50)
- location: varchar(100)
- resume_path: varchar(255)
- notes: text
- added_by: int
- added_date: timestamp
- updated_at: timestamp
Table: interviews
- id: int
- candidate_id: int
- interview_date: date
- interview_time: time
- interview_type: enum('initial','technical','hr','final','reschedule','process_ended')
- duration_minutes: int
- interviewer_id: int
- interviewer_name: varchar(100)
- status: enum('scheduled','completed','cancelled','rescheduled','no_show')
- result: enum('pending','shortlisted','selected','rejected','hold','process_ended')
- notes: text
- feedback: text
- technical_score: int
- communication_score: int
- overall_score: int
- strengths: text
- weaknesses: text
- recommendations: text
- next_interview_date: date
- next_interview_type: varchar(50)
- next_interview_notes: text
- turn_up_status: enum('turned_up','no_show')
- absence_reason: varchar(255)
- absence_details: text
- created_at: timestamp
- updated_at: timestamp
Table: joining_details
- id: int
- candidate_id: int
- expected_joining_date: date
- actual_joining_date: date
- salary_offered: decimal(10,2)
- salary_negotiated: decimal(10,2)
- position: varchar(100)
- department: varchar(100)
- reporting_manager: varchar(100)
- work_location: varchar(200)
- employment_type: enum('full_time','part_time','contract','internship')
- joining_notes: text
- joining_feedback: text
- documents_required: text
- probation_period_months: int
- joining_status: enum('pending','joined','not_joined','delayed')
- created_by: int
- created_at: timestamp
- updated_at: timestamp
✅ Database Migration Completed Successfully!
All required columns have been added and the database is ready for use with referral code support.
New Features Available:
- Referral code field in candidate forms
- Referral code search and filtering
- Referral code in Excel exports and print views
- Enhanced interview tracking with duration and next interview type
- Complete joining details management
Go to Dashboard