GDPR Compliance: - Delete CV files immediately after processing - Add DataRetentionJob to auto-purge data after 30 days - Add DeleteAllUserDataAsync for right to erasure - Add Privacy Policy page with GDPR information - Add privacy link and GDPR badge to footer UI/UX Improvements: - Add "Why Choose RealCV" benefits section to homepage - Fix pricing page: Professional card highlight, consistent button styles - Improve text contrast on dark backgrounds (0.75 → 0.85 opacity) - Fix auth page messaging consistency - Fix CSS --realcv-accent variable (was self-referencing) UK Terminology: - Change "hiring" to "recruitment" throughout - Change "bad hires" to "poor appointments" 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
20 lines
696 B
C#
20 lines
696 B
C#
using RealCV.Application.DTOs;
|
|
using RealCV.Application.Models;
|
|
|
|
namespace RealCV.Application.Interfaces;
|
|
|
|
public interface ICVCheckService
|
|
{
|
|
Task<Guid> CreateCheckAsync(Guid userId, Stream file, string fileName);
|
|
Task<CVCheckDto?> GetCheckAsync(Guid id);
|
|
Task<CVCheckDto?> GetCheckForUserAsync(Guid id, Guid userId);
|
|
Task<List<CVCheckDto>> GetUserChecksAsync(Guid userId);
|
|
Task<VeracityReport?> GetReportAsync(Guid checkId, Guid userId);
|
|
Task<bool> DeleteCheckAsync(Guid checkId, Guid userId);
|
|
|
|
/// <summary>
|
|
/// GDPR: Delete all CV checks and associated data for a user (right to erasure).
|
|
/// </summary>
|
|
Task<int> DeleteAllUserDataAsync(Guid userId);
|
|
}
|