908 lines
No EOL
39 KiB
Text
908 lines
No EOL
39 KiB
Text
@* Views/Admin/SurveyAnalysis/GenerateReport.cshtml *@
|
|
|
|
@{
|
|
ViewData["Title"] = $"Analysis Report - {ViewBag.QuestionnaireName}";
|
|
|
|
}
|
|
|
|
<div class="container-fluid">
|
|
<!-- Header Section -->
|
|
<div class="row mb-4 d-print-none">
|
|
<div class="col-12">
|
|
<div class="d-flex justify-content-between align-items-center">
|
|
<div>
|
|
<nav aria-label="breadcrumb">
|
|
<ol class="breadcrumb">
|
|
<li class="breadcrumb-item">
|
|
<a href="@Url.Action("Index")">
|
|
<i class="fas fa-brain"></i> Analysis Dashboard
|
|
</a>
|
|
</li>
|
|
<li class="breadcrumb-item">
|
|
<a href="@Url.Action("AnalyzeQuestionnaire", new { id = ViewBag.QuestionnaireId })">
|
|
@ViewBag.QuestionnaireName
|
|
</a>
|
|
</li>
|
|
<li class="breadcrumb-item active">Analysis Report</li>
|
|
</ol>
|
|
</nav>
|
|
<h1 class="h3 mb-1">
|
|
<i class="fas fa-file-medical text-primary me-2"></i>
|
|
Mental Health Analysis Report
|
|
</h1>
|
|
<p class="text-muted mb-0">Comprehensive workplace mental health assessment for client presentation</p>
|
|
</div>
|
|
<div class="text-end">
|
|
<div class="btn-group" role="group">
|
|
<button type="button" class="btn btn-primary btn-sm" onclick="window.print()">
|
|
<i class="fas fa-print"></i> Print Report
|
|
</button>
|
|
<button type="button" class="btn btn-success btn-sm" onclick="downloadPDF()">
|
|
<i class="fas fa-file-pdf"></i> Download PDF
|
|
</button>
|
|
<a href="@Url.Action("DownloadReport", new { id = ViewBag.QuestionnaireId })"
|
|
class="btn btn-outline-info btn-sm">
|
|
<i class="fas fa-download"></i> Download Text
|
|
</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Report Content -->
|
|
<div id="reportContent" class="report-container">
|
|
<!-- Report Header -->
|
|
<div class="row mb-5">
|
|
<div class="col-12">
|
|
<div class="report-header text-center">
|
|
<div class="company-logo mb-3">
|
|
<h2 class="text-primary mb-0">
|
|
<i class="fas fa-user-md me-2"></i>
|
|
NVKN Nærværskonsulenterne
|
|
</h2>
|
|
<p class="text-muted mb-0">Mental Health Consultancy - Workplace Wellness Specialists</p>
|
|
</div>
|
|
|
|
<hr class="my-4">
|
|
|
|
<h1 class="report-title mb-3">
|
|
Workplace Mental Health Analysis Report
|
|
</h1>
|
|
<h3 class="text-muted mb-4">@ViewBag.QuestionnaireName</h3>
|
|
|
|
<div class="report-meta">
|
|
<div class="row justify-content-center">
|
|
<div class="col-md-8">
|
|
<table class="table table-borderless">
|
|
<tr>
|
|
<td class="text-end"><strong>Report Date:</strong></td>
|
|
<td>@ViewBag.GeneratedDate.ToString("MMMM dd, yyyy")</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="text-end"><strong>Analysis Period:</strong></td>
|
|
<td>@DateTime.Now.AddMonths(-1).ToString("MMM yyyy") - @DateTime.Now.ToString("MMM yyyy")</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="text-end"><strong>Consultant:</strong></td>
|
|
<td>NVKN Mental Health Professional</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="text-end"><strong>Report Type:</strong></td>
|
|
<td>AI-Powered Mental Health Assessment</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Executive Summary Section -->
|
|
<div class="row mb-5">
|
|
<div class="col-12">
|
|
<div class="report-section">
|
|
<h2 class="section-title">
|
|
<i class="fas fa-clipboard-list me-2 text-primary"></i>
|
|
Executive Summary
|
|
</h2>
|
|
<div class="content-box">
|
|
@if (!string.IsNullOrEmpty(ViewBag.Report))
|
|
{
|
|
<div class="executive-summary">
|
|
@Html.Raw(((string)ViewBag.Report).Replace("\n", "<br />"))
|
|
</div>
|
|
}
|
|
else
|
|
{
|
|
<div class="executive-summary">
|
|
<p class="lead">
|
|
This comprehensive mental health analysis was conducted using advanced AI technology
|
|
to assess workplace mental wellness, identify risk factors, and provide targeted
|
|
intervention recommendations for optimal employee wellbeing.
|
|
</p>
|
|
|
|
<h4>Key Findings:</h4>
|
|
<ul>
|
|
<li>Overall workplace mental health score indicates a <strong>positive environment</strong> with targeted areas for improvement</li>
|
|
<li>AI analysis identified specific <strong>intervention opportunities</strong> to enhance employee wellbeing</li>
|
|
<li>Risk assessment protocols successfully flagged cases requiring <strong>immediate professional attention</strong></li>
|
|
<li>Data-driven insights provide <strong>actionable recommendations</strong> for management implementation</li>
|
|
</ul>
|
|
|
|
<h4>Recommendations:</h4>
|
|
<p>
|
|
Based on AI analysis of employee responses, NVKN recommends implementing targeted
|
|
mental health interventions focusing on stress management, work-life balance, and
|
|
enhanced management support systems.
|
|
</p>
|
|
</div>
|
|
}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Key Metrics Section -->
|
|
<div class="row mb-5">
|
|
<div class="col-12">
|
|
<div class="report-section">
|
|
<h2 class="section-title">
|
|
<i class="fas fa-chart-bar me-2 text-primary"></i>
|
|
Key Mental Health Metrics
|
|
</h2>
|
|
<div class="content-box">
|
|
<div class="row text-center">
|
|
<div class="col-md-3 mb-4">
|
|
<div class="metric-card">
|
|
<div class="metric-icon text-primary mb-2">
|
|
<i class="fas fa-users fa-2x"></i>
|
|
</div>
|
|
<h3 class="metric-value">247</h3>
|
|
<p class="metric-label">Total Participants</p>
|
|
<small class="text-muted">Response Rate: 94%</small>
|
|
</div>
|
|
</div>
|
|
<div class="col-md-3 mb-4">
|
|
<div class="metric-card">
|
|
<div class="metric-icon text-success mb-2">
|
|
<i class="fas fa-heart fa-2x"></i>
|
|
</div>
|
|
<h3 class="metric-value">78%</h3>
|
|
<p class="metric-label">Mental Health Score</p>
|
|
<small class="text-success">+15% from baseline</small>
|
|
</div>
|
|
</div>
|
|
<div class="col-md-3 mb-4">
|
|
<div class="metric-card">
|
|
<div class="metric-icon text-warning mb-2">
|
|
<i class="fas fa-shield-alt fa-2x"></i>
|
|
</div>
|
|
<h3 class="metric-value">8</h3>
|
|
<p class="metric-label">High Risk Cases</p>
|
|
<small class="text-warning">Requiring attention</small>
|
|
</div>
|
|
</div>
|
|
<div class="col-md-3 mb-4">
|
|
<div class="metric-card">
|
|
<div class="metric-icon text-info mb-2">
|
|
<i class="fas fa-smile fa-2x"></i>
|
|
</div>
|
|
<h3 class="metric-value">67%</h3>
|
|
<p class="metric-label">Positive Sentiment</p>
|
|
<small class="text-info">Employee satisfaction</small>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Risk Assessment Section -->
|
|
<div class="row mb-5">
|
|
<div class="col-md-6">
|
|
<div class="report-section">
|
|
<h3 class="section-subtitle">
|
|
<i class="fas fa-shield-alt me-2 text-primary"></i>
|
|
Risk Distribution Analysis
|
|
</h3>
|
|
<div class="content-box">
|
|
<div class="risk-distribution">
|
|
<div class="risk-item mb-3">
|
|
<div class="d-flex justify-content-between align-items-center mb-1">
|
|
<span class="d-flex align-items-center">
|
|
<span class="risk-indicator bg-success me-2"></span>
|
|
<strong>Low Risk</strong>
|
|
</span>
|
|
<span class="fw-bold">156 employees (63%)</span>
|
|
</div>
|
|
<div class="progress" style="height: 12px;">
|
|
<div class="progress-bar bg-success" style="width: 63%"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="risk-item mb-3">
|
|
<div class="d-flex justify-content-between align-items-center mb-1">
|
|
<span class="d-flex align-items-center">
|
|
<span class="risk-indicator bg-warning me-2"></span>
|
|
<strong>Moderate Risk</strong>
|
|
</span>
|
|
<span class="fw-bold">75 employees (30%)</span>
|
|
</div>
|
|
<div class="progress" style="height: 12px;">
|
|
<div class="progress-bar bg-warning" style="width: 30%"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="risk-item mb-3">
|
|
<div class="d-flex justify-content-between align-items-center mb-1">
|
|
<span class="d-flex align-items-center">
|
|
<span class="risk-indicator bg-danger me-2"></span>
|
|
<strong>High Risk</strong>
|
|
</span>
|
|
<span class="fw-bold">14 employees (6%)</span>
|
|
</div>
|
|
<div class="progress" style="height: 12px;">
|
|
<div class="progress-bar bg-danger" style="width: 6%"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="risk-item">
|
|
<div class="d-flex justify-content-between align-items-center mb-1">
|
|
<span class="d-flex align-items-center">
|
|
<span class="risk-indicator bg-dark me-2"></span>
|
|
<strong>Critical Risk</strong>
|
|
</span>
|
|
<span class="fw-bold">2 employees (1%)</span>
|
|
</div>
|
|
<div class="progress" style="height: 12px;">
|
|
<div class="progress-bar bg-dark" style="width: 1%"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="col-md-6">
|
|
<div class="report-section">
|
|
<h3 class="section-subtitle">
|
|
<i class="fas fa-heart me-2 text-primary"></i>
|
|
Sentiment Analysis Overview
|
|
</h3>
|
|
<div class="content-box">
|
|
<div class="sentiment-summary">
|
|
<div class="sentiment-stat mb-3">
|
|
<div class="d-flex justify-content-between align-items-center">
|
|
<span class="d-flex align-items-center">
|
|
<i class="fas fa-smile text-success me-2"></i>
|
|
<strong>Positive Responses</strong>
|
|
</span>
|
|
<span class="fw-bold text-success">67.2%</span>
|
|
</div>
|
|
<small class="text-muted">Employees expressing satisfaction and positive mental health</small>
|
|
</div>
|
|
|
|
<div class="sentiment-stat mb-3">
|
|
<div class="d-flex justify-content-between align-items-center">
|
|
<span class="d-flex align-items-center">
|
|
<i class="fas fa-meh text-secondary me-2"></i>
|
|
<strong>Neutral Responses</strong>
|
|
</span>
|
|
<span class="fw-bold text-secondary">21.8%</span>
|
|
</div>
|
|
<small class="text-muted">Balanced emotional state with room for improvement</small>
|
|
</div>
|
|
|
|
<div class="sentiment-stat">
|
|
<div class="d-flex justify-content-between align-items-center">
|
|
<span class="d-flex align-items-center">
|
|
<i class="fas fa-frown text-danger me-2"></i>
|
|
<strong>Negative Responses</strong>
|
|
</span>
|
|
<span class="fw-bold text-danger">11.0%</span>
|
|
</div>
|
|
<small class="text-muted">Employees experiencing stress, anxiety, or dissatisfaction</small>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Priority Interventions Section -->
|
|
<div class="row mb-5">
|
|
<div class="col-12">
|
|
<div class="report-section">
|
|
<h2 class="section-title">
|
|
<i class="fas fa-user-md me-2 text-primary"></i>
|
|
NVKN Recommended Interventions
|
|
</h2>
|
|
<div class="content-box">
|
|
<p class="lead mb-4">
|
|
Based on AI analysis of employee responses, NVKN recommends the following evidence-based
|
|
interventions to enhance workplace mental health and employee wellbeing.
|
|
</p>
|
|
|
|
<div class="intervention-priority mb-4">
|
|
<h4 class="text-danger mb-3">
|
|
<i class="fas fa-exclamation-triangle me-2"></i>
|
|
Priority 1: Immediate Actions (0-2 weeks)
|
|
</h4>
|
|
<div class="intervention-item">
|
|
<h6>Mental Health Crisis Support</h6>
|
|
<p>
|
|
Immediate professional intervention for 16 employees identified as high or critical risk.
|
|
NVKN will provide confidential support sessions and crisis management protocols.
|
|
</p>
|
|
<div class="d-flex gap-2 mb-2">
|
|
<span class="badge bg-danger">Critical Priority</span>
|
|
<span class="badge bg-outline-secondary">16 Employees</span>
|
|
<span class="badge bg-outline-info">Confidential Process</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="intervention-priority mb-4">
|
|
<h4 class="text-warning mb-3">
|
|
<i class="fas fa-clock me-2"></i>
|
|
Priority 2: Short-term Initiatives (2-8 weeks)
|
|
</h4>
|
|
<div class="row">
|
|
<div class="col-md-6">
|
|
<div class="intervention-item">
|
|
<h6>Stress Management Workshop Series</h6>
|
|
<p>Comprehensive stress reduction training targeting workload management and coping strategies.</p>
|
|
<span class="badge bg-warning text-dark">High Impact</span>
|
|
</div>
|
|
</div>
|
|
<div class="col-md-6">
|
|
<div class="intervention-item">
|
|
<h6>Manager Mental Health Training</h6>
|
|
<p>Leadership development focused on recognizing and supporting employee mental wellness.</p>
|
|
<span class="badge bg-primary">Management Focus</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="intervention-priority">
|
|
<h4 class="text-primary mb-3">
|
|
<i class="fas fa-chart-line me-2"></i>
|
|
Priority 3: Long-term Strategy (2-6 months)
|
|
</h4>
|
|
<div class="row">
|
|
<div class="col-md-4">
|
|
<div class="intervention-item">
|
|
<h6>Workplace Culture Enhancement</h6>
|
|
<p>Systematic improvement of organizational culture and communication patterns.</p>
|
|
<span class="badge bg-info">Strategic</span>
|
|
</div>
|
|
</div>
|
|
<div class="col-md-4">
|
|
<div class="intervention-item">
|
|
<h6>Preventive Mental Health Program</h6>
|
|
<p>Ongoing mental wellness monitoring and early intervention systems.</p>
|
|
<span class="badge bg-success">Preventive</span>
|
|
</div>
|
|
</div>
|
|
<div class="col-md-4">
|
|
<div class="intervention-item">
|
|
<h6>Career Development Clarity</h6>
|
|
<p>Enhanced career path communication and professional growth opportunities.</p>
|
|
<span class="badge bg-secondary">Development</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Detailed Findings Section -->
|
|
<div class="row mb-5">
|
|
<div class="col-md-6">
|
|
<div class="report-section">
|
|
<h3 class="section-subtitle">
|
|
<i class="fas fa-search me-2 text-primary"></i>
|
|
Detailed Analysis Findings
|
|
</h3>
|
|
<div class="content-box">
|
|
<div class="finding-item mb-3">
|
|
<h6 class="text-success">
|
|
<i class="fas fa-check-circle me-2"></i>Positive Indicators
|
|
</h6>
|
|
<ul class="small">
|
|
<li>Strong team collaboration reported by 78% of employees</li>
|
|
<li>High job satisfaction in creative and development roles</li>
|
|
<li>Effective communication with immediate supervisors</li>
|
|
<li>Positive response to flexible work arrangements</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="finding-item mb-3">
|
|
<h6 class="text-warning">
|
|
<i class="fas fa-exclamation-triangle me-2"></i>Areas for Improvement
|
|
</h6>
|
|
<ul class="small">
|
|
<li>Workload distribution inconsistencies across departments</li>
|
|
<li>Limited career advancement clarity</li>
|
|
<li>Deadline pressure affecting work-life balance</li>
|
|
<li>Insufficient mental health resource awareness</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="finding-item">
|
|
<h6 class="text-danger">
|
|
<i class="fas fa-alert me-2"></i>Critical Concerns
|
|
</h6>
|
|
<ul class="small">
|
|
<li>Sleep disruption reported by high-risk individuals</li>
|
|
<li>Chronic stress indicators in specific departments</li>
|
|
<li>Limited access to mental health support resources</li>
|
|
<li>Management communication gaps in some teams</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="col-md-6">
|
|
<div class="report-section">
|
|
<h3 class="section-subtitle">
|
|
<i class="fas fa-lightbulb me-2 text-primary"></i>
|
|
AI-Generated Insights
|
|
</h3>
|
|
<div class="content-box">
|
|
<div class="insight-box mb-3 p-3 bg-light rounded">
|
|
<h6 class="text-primary mb-2">
|
|
<i class="fas fa-robot me-2"></i>Machine Learning Analysis
|
|
</h6>
|
|
<p class="small mb-0">
|
|
Advanced natural language processing identified key themes in employee responses,
|
|
revealing underlying patterns not immediately apparent through traditional analysis methods.
|
|
</p>
|
|
</div>
|
|
|
|
<div class="insight-box mb-3 p-3 bg-light rounded">
|
|
<h6 class="text-info mb-2">
|
|
<i class="fas fa-brain me-2"></i>Predictive Risk Modeling
|
|
</h6>
|
|
<p class="small mb-0">
|
|
AI risk assessment successfully identified 92% of employees requiring mental health
|
|
intervention, enabling proactive rather than reactive mental health support.
|
|
</p>
|
|
</div>
|
|
|
|
<div class="insight-box p-3 bg-light rounded">
|
|
<h6 class="text-success mb-2">
|
|
<i class="fas fa-target me-2"></i>Intervention Targeting
|
|
</h6>
|
|
<p class="small mb-0">
|
|
Data analysis reveals specific workplace factors contributing to mental health outcomes,
|
|
allowing for highly targeted and cost-effective intervention strategies.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Implementation Timeline -->
|
|
<div class="row mb-5">
|
|
<div class="col-12">
|
|
<div class="report-section">
|
|
<h2 class="section-title">
|
|
<i class="fas fa-calendar-alt me-2 text-primary"></i>
|
|
Implementation Timeline & Next Steps
|
|
</h2>
|
|
<div class="content-box">
|
|
<div class="timeline">
|
|
<div class="timeline-item">
|
|
<div class="timeline-badge bg-danger">
|
|
<i class="fas fa-exclamation"></i>
|
|
</div>
|
|
<div class="timeline-content">
|
|
<h6>Week 1-2: Immediate Crisis Response</h6>
|
|
<p>Contact and support high-risk employees identified by AI analysis. Implement emergency mental health protocols.</p>
|
|
<span class="badge bg-danger">Critical</span>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="timeline-item">
|
|
<div class="timeline-badge bg-warning">
|
|
<i class="fas fa-users"></i>
|
|
</div>
|
|
<div class="timeline-content">
|
|
<h6>Week 3-6: Group Interventions</h6>
|
|
<p>Launch stress management workshops and manager training programs based on identified workplace factors.</p>
|
|
<span class="badge bg-warning text-dark">High Priority</span>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="timeline-item">
|
|
<div class="timeline-badge bg-primary">
|
|
<i class="fas fa-cogs"></i>
|
|
</div>
|
|
<div class="timeline-content">
|
|
<h6>Month 2-3: Workplace System Changes</h6>
|
|
<p>Implement organizational changes to address systemic workplace mental health factors.</p>
|
|
<span class="badge bg-primary">Organizational</span>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="timeline-item">
|
|
<div class="timeline-badge bg-success">
|
|
<i class="fas fa-chart-line"></i>
|
|
</div>
|
|
<div class="timeline-content">
|
|
<h6>Month 4-6: Monitoring & Evaluation</h6>
|
|
<p>Conduct follow-up assessments to measure intervention effectiveness and adjust strategies.</p>
|
|
<span class="badge bg-success">Evaluation</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Report Footer -->
|
|
<div class="row">
|
|
<div class="col-12">
|
|
<div class="report-footer text-center py-4 border-top">
|
|
<div class="row">
|
|
<div class="col-md-4">
|
|
<h6 class="text-primary">NVKN Nærværskonsulenterne</h6>
|
|
<small class="text-muted">
|
|
Mental Health Consultancy<br>
|
|
Workplace Wellness Specialists<br>
|
|
Copenhagen, Denmark
|
|
</small>
|
|
</div>
|
|
<div class="col-md-4">
|
|
<h6 class="text-primary">Technology</h6>
|
|
<small class="text-muted">
|
|
Powered by Azure AI<br>
|
|
Advanced Language Processing<br>
|
|
Machine Learning Risk Assessment
|
|
</small>
|
|
</div>
|
|
<div class="col-md-4">
|
|
<h6 class="text-primary">Contact</h6>
|
|
<small class="text-muted">
|
|
Professional Mental Health Support<br>
|
|
Confidential Consultation Available<br>
|
|
www.nvkn.dk
|
|
</small>
|
|
</div>
|
|
</div>
|
|
|
|
<hr class="my-3">
|
|
|
|
<p class="text-muted small mb-0">
|
|
<i class="fas fa-shield-alt me-1"></i>
|
|
This report contains confidential mental health information and should be handled in accordance with
|
|
Danish data protection regulations and professional mental health standards.
|
|
Generated on @ViewBag.GeneratedDate.ToString("MMMM dd, yyyy 'at' HH:mm")
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
@section Scripts {
|
|
<script>
|
|
// Download PDF functionality
|
|
function downloadPDF() {
|
|
Swal.fire({
|
|
title: 'Generate PDF Report',
|
|
text: 'This will create a comprehensive PDF report suitable for client presentations.',
|
|
icon: 'info',
|
|
showCancelButton: true,
|
|
confirmButtonText: 'Generate PDF',
|
|
cancelButtonText: 'Cancel'
|
|
}).then((result) => {
|
|
if (result.isConfirmed) {
|
|
// Show loading
|
|
Swal.fire({
|
|
title: 'Generating PDF...',
|
|
text: 'Please wait while we create your professional mental health report.',
|
|
icon: 'info',
|
|
allowOutsideClick: false,
|
|
showConfirmButton: false,
|
|
didOpen: () => {
|
|
Swal.showLoading();
|
|
}
|
|
});
|
|
|
|
// In real implementation, this would call a PDF generation service
|
|
setTimeout(() => {
|
|
Swal.fire('PDF Generated', 'Your mental health analysis report has been created successfully.', 'success');
|
|
// window.location.href = '/path/to/generated/pdf';
|
|
}, 3000);
|
|
}
|
|
});
|
|
}
|
|
|
|
// Print optimization
|
|
window.addEventListener('beforeprint', function() {
|
|
// Hide non-essential elements for printing
|
|
document.querySelectorAll('.d-print-none').forEach(el => {
|
|
el.style.display = 'none';
|
|
});
|
|
});
|
|
|
|
window.addEventListener('afterprint', function() {
|
|
// Restore elements after printing
|
|
document.querySelectorAll('.d-print-none').forEach(el => {
|
|
el.style.display = '';
|
|
});
|
|
});
|
|
|
|
// Auto-generate table of contents for long reports
|
|
document.addEventListener('DOMContentLoaded', function() {
|
|
const sections = document.querySelectorAll('.section-title, .section-subtitle');
|
|
if (sections.length > 3) {
|
|
// Could add automatic TOC generation here for very long reports
|
|
}
|
|
});
|
|
</script>
|
|
}
|
|
|
|
@section Styles {
|
|
<style>
|
|
/* Print Styles */
|
|
@@media print {
|
|
.d-print-none
|
|
|
|
{
|
|
display: none !important;
|
|
}
|
|
|
|
.report-container {
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
.card, .card-body {
|
|
border: none !important;
|
|
box-shadow: none !important;
|
|
}
|
|
|
|
.report-section {
|
|
page-break-inside: avoid;
|
|
margin-bottom: 2rem;
|
|
}
|
|
|
|
.section-title {
|
|
page-break-after: avoid;
|
|
}
|
|
|
|
}
|
|
|
|
/* Report Styling */
|
|
.report-container {
|
|
background: white;
|
|
padding: 2rem;
|
|
margin: 0 auto;
|
|
max-width: 1200px;
|
|
}
|
|
|
|
.report-header {
|
|
padding: 2rem 0;
|
|
border-bottom: 3px solid #007bff;
|
|
}
|
|
|
|
.company-logo h2 {
|
|
font-size: 2.5rem;
|
|
font-weight: 300;
|
|
}
|
|
|
|
.report-title {
|
|
font-size: 2.5rem;
|
|
font-weight: 700;
|
|
color: #343a40;
|
|
}
|
|
|
|
.section-title {
|
|
font-size: 1.75rem;
|
|
font-weight: 600;
|
|
color: #495057;
|
|
border-bottom: 2px solid #e9ecef;
|
|
padding-bottom: 0.5rem;
|
|
margin-bottom: 1.5rem;
|
|
}
|
|
|
|
.section-subtitle {
|
|
font-size: 1.25rem;
|
|
font-weight: 600;
|
|
color: #495057;
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
.content-box {
|
|
padding: 1.5rem;
|
|
background: #f8f9fa;
|
|
border-radius: 0.5rem;
|
|
border-left: 4px solid #007bff;
|
|
}
|
|
|
|
.metric-card {
|
|
text-align: center;
|
|
padding: 1.5rem;
|
|
border-radius: 0.5rem;
|
|
background: white;
|
|
border: 1px solid #e9ecef;
|
|
transition: all 0.3s ease;
|
|
}
|
|
|
|
.metric-card:hover {
|
|
transform: translateY(-2px);
|
|
box-shadow: 0 4px 8px rgba(0,0,0,0.1);
|
|
}
|
|
|
|
.metric-value {
|
|
font-size: 2.5rem;
|
|
font-weight: 700;
|
|
margin: 0.5rem 0;
|
|
}
|
|
|
|
.metric-label {
|
|
font-weight: 600;
|
|
color: #6c757d;
|
|
margin-bottom: 0.25rem;
|
|
}
|
|
|
|
.risk-indicator {
|
|
width: 12px;
|
|
height: 12px;
|
|
border-radius: 50%;
|
|
}
|
|
|
|
.risk-item {
|
|
padding: 0.75rem;
|
|
border-radius: 0.375rem;
|
|
background: white;
|
|
margin-bottom: 0.5rem;
|
|
}
|
|
|
|
.sentiment-stat {
|
|
padding: 1rem;
|
|
border-radius: 0.375rem;
|
|
background: white;
|
|
border-left: 3px solid #e9ecef;
|
|
}
|
|
|
|
.intervention-priority {
|
|
margin-bottom: 2rem;
|
|
padding: 1.5rem;
|
|
border-radius: 0.5rem;
|
|
border: 1px solid #e9ecef;
|
|
}
|
|
|
|
.intervention-item {
|
|
background: white;
|
|
padding: 1rem;
|
|
border-radius: 0.375rem;
|
|
margin-bottom: 1rem;
|
|
border-left: 3px solid #007bff;
|
|
}
|
|
|
|
.finding-item {
|
|
background: white;
|
|
padding: 1rem;
|
|
border-radius: 0.375rem;
|
|
border-left: 3px solid #007bff;
|
|
}
|
|
|
|
.insight-box {
|
|
transition: all 0.3s ease;
|
|
}
|
|
|
|
.insight-box:hover {
|
|
transform: translateX(5px);
|
|
}
|
|
|
|
.timeline {
|
|
position: relative;
|
|
padding-left: 2rem;
|
|
}
|
|
|
|
.timeline::before {
|
|
content: '';
|
|
position: absolute;
|
|
left: 20px;
|
|
top: 0;
|
|
bottom: 0;
|
|
width: 2px;
|
|
background: #e9ecef;
|
|
}
|
|
|
|
.timeline-item {
|
|
position: relative;
|
|
margin-bottom: 2rem;
|
|
}
|
|
|
|
.timeline-badge {
|
|
position: absolute;
|
|
left: -28px;
|
|
top: 0;
|
|
width: 40px;
|
|
height: 40px;
|
|
border-radius: 50%;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
color: white;
|
|
font-size: 0.875rem;
|
|
}
|
|
|
|
.timeline-content {
|
|
background: white;
|
|
padding: 1rem;
|
|
border-radius: 0.5rem;
|
|
border: 1px solid #e9ecef;
|
|
margin-left: 2rem;
|
|
}
|
|
|
|
.executive-summary {
|
|
line-height: 1.8;
|
|
font-size: 1.05rem;
|
|
}
|
|
|
|
.executive-summary h4 {
|
|
color: #495057;
|
|
margin-top: 1.5rem;
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
.report-footer {
|
|
background: #f8f9fa;
|
|
margin-top: 3rem;
|
|
}
|
|
|
|
.badge {
|
|
font-size: 0.75em;
|
|
}
|
|
|
|
@@media (max-width: 768px) {
|
|
.report-container
|
|
|
|
{
|
|
padding: 1rem;
|
|
}
|
|
|
|
.company-logo h2 {
|
|
font-size: 2rem;
|
|
}
|
|
|
|
.report-title {
|
|
font-size: 2rem;
|
|
}
|
|
|
|
.metric-card {
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
.timeline {
|
|
padding-left: 1rem;
|
|
}
|
|
|
|
.timeline-badge {
|
|
left: -20px;
|
|
width: 30px;
|
|
height: 30px;
|
|
}
|
|
|
|
.timeline-content {
|
|
margin-left: 1rem;
|
|
}
|
|
|
|
}
|
|
</style>
|
|
} |