HH/SURVEY_SATISFACTION_OPTIONS_UPDATE_COMPLETE.md

88 lines
3.3 KiB
Markdown

# Survey Satisfaction Options Update - Complete
## Overview
Updated all satisfaction surveys (Inpatient, Outpatient, and Appointment) to ensure they have the required satisfaction options with bilingual labels.
## Required Satisfaction Options
All surveys now include these 5 satisfaction levels:
1. Very Unsatisfied (غير راضٍ جداً)
2. Poor (ضعيف)
3. Neutral (محايد)
4. Good (جيد)
5. Very Satisfied (راضٍ جداً)
## Question Type Clarification
**Important**: These are NOT checkbox questions. They are **radio button (single-select) questions**.
- **Type**: `multiple_choice` (renders as radio buttons for single selection)
- **Reason**: Satisfaction scales require patients to select ONE satisfaction level, not multiple options
- **Format**: Each option has both English and Arabic labels for bilingual support
## Survey Status
### ✅ Appointment Satisfaction Survey
- **Questions**: 10
- **Status**: All questions have satisfaction options
- **Type**: All are `multiple_choice` with 5 satisfaction levels
### ✅ Inpatient Post-Discharge Survey
- **Questions**: 7
- **Status**:
- Questions 1-5: Updated from `text` to `multiple_choice` with satisfaction options
- Question 6: `rating` type (NPS-style recommendation question)
- Question 7: `text` type (open-ended comments/suggestions)
- **Changes Made**: Converted 5 text questions to multiple_choice questions
### ✅ Inpatient Satisfaction Survey
- **Questions**: 12
- **Status**: All questions have satisfaction options
- **Type**: All are `multiple_choice` with 5 satisfaction levels
### ✅ Outpatient Satisfaction Survey
- **Questions**: 8
- **Status**: All questions have satisfaction options
- **Type**: All are `multiple_choice` with 5 satisfaction levels
## Summary Statistics
- **Total Surveys Updated**: 4
- **Total Questions with Satisfaction Options**: 35
- **Questions Converted from Text to Multiple Choice**: 5 (Inpatient Post-Discharge Survey)
- **Questions Left as Other Types**: 2 (1 rating, 1 text - appropriate for their purpose)
## Scripts Created
1. **check_satisfaction_options.py**: Script to verify satisfaction options across all surveys
2. **update_inpatient_post_discharge_survey.py**: Script to convert text questions to multiple_choice with satisfaction options
## Verification
Run the verification script to confirm all surveys have the required options:
```bash
python manage.py shell < check_satisfaction_options.py
```
## Database Changes
- **Model Updated**: `SurveyQuestion` model
- **Fields Modified**:
- `question_type`: Changed from 'text' to 'multiple_choice'
- `choices_json`: Added satisfaction options array with bilingual labels
- **No Schema Changes**: Only data modifications, no database migrations required
## Technical Details
Each satisfaction option is stored as:
```json
{
"value": "1",
"label": "Very Unsatisfied",
"label_ar": "غير راضٍ جداً"
}
```
The value field allows for easy scoring and analysis of survey responses.
## Date Completed
2026-02-07
## Notes
- All satisfaction questions are now consistent across all survey types
- Bilingual support ensures both English and Arabic patients can respond
- The satisfaction scale follows standard patient experience survey methodology
- Questions that require different input types (rating scales, open-ended text) were appropriately left unchanged