Rename project to RealCV with new logo and font updates
- Rename all TrueCV references to RealCV across the codebase - Add new transparent RealCV logo - Switch from JetBrains Mono to Inter font for better number clarity - Update solution, project files, and namespaces 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
18
src/RealCV.Application/Interfaces/IAuditService.cs
Normal file
18
src/RealCV.Application/Interfaces/IAuditService.cs
Normal file
@@ -0,0 +1,18 @@
|
||||
namespace RealCV.Application.Interfaces;
|
||||
|
||||
public interface IAuditService
|
||||
{
|
||||
Task LogAsync(Guid userId, string action, string? entityType = null, Guid? entityId = null, string? details = null, string? ipAddress = null);
|
||||
}
|
||||
|
||||
public static class AuditActions
|
||||
{
|
||||
public const string CVUploaded = "CV_UPLOADED";
|
||||
public const string CVProcessed = "CV_PROCESSED";
|
||||
public const string CVDeleted = "CV_DELETED";
|
||||
public const string ReportViewed = "REPORT_VIEWED";
|
||||
public const string ReportExported = "REPORT_EXPORTED";
|
||||
public const string UserLogin = "USER_LOGIN";
|
||||
public const string UserLogout = "USER_LOGOUT";
|
||||
public const string UserRegistered = "USER_REGISTERED";
|
||||
}
|
||||
14
src/RealCV.Application/Interfaces/ICVCheckService.cs
Normal file
14
src/RealCV.Application/Interfaces/ICVCheckService.cs
Normal file
@@ -0,0 +1,14 @@
|
||||
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);
|
||||
}
|
||||
8
src/RealCV.Application/Interfaces/ICVParserService.cs
Normal file
8
src/RealCV.Application/Interfaces/ICVParserService.cs
Normal file
@@ -0,0 +1,8 @@
|
||||
using RealCV.Application.Models;
|
||||
|
||||
namespace RealCV.Application.Interfaces;
|
||||
|
||||
public interface ICVParserService
|
||||
{
|
||||
Task<CVData> ParseAsync(Stream fileStream, string fileName, CancellationToken cancellationToken = default);
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
using RealCV.Application.Models;
|
||||
|
||||
namespace RealCV.Application.Interfaces;
|
||||
|
||||
public interface ICompanyNameMatcherService
|
||||
{
|
||||
/// <summary>
|
||||
/// Uses AI to semantically compare a company name from a CV against Companies House candidates.
|
||||
/// Returns the best match with confidence score and reasoning.
|
||||
/// </summary>
|
||||
Task<SemanticMatchResult?> FindBestMatchAsync(
|
||||
string cvCompanyName,
|
||||
List<CompanyCandidate> candidates,
|
||||
CancellationToken cancellationToken = default);
|
||||
}
|
||||
11
src/RealCV.Application/Interfaces/ICompanyVerifierService.cs
Normal file
11
src/RealCV.Application/Interfaces/ICompanyVerifierService.cs
Normal file
@@ -0,0 +1,11 @@
|
||||
using RealCV.Application.DTOs;
|
||||
using RealCV.Application.Models;
|
||||
|
||||
namespace RealCV.Application.Interfaces;
|
||||
|
||||
public interface ICompanyVerifierService
|
||||
{
|
||||
Task<CompanyVerificationResult> VerifyCompanyAsync(string companyName, DateOnly? startDate, DateOnly? endDate, string? jobTitle = null);
|
||||
Task<List<CompanySearchResult>> SearchCompaniesAsync(string query);
|
||||
Task<bool?> VerifyDirectorAsync(string companyNumber, string candidateName, DateOnly? startDate, DateOnly? endDate);
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
using RealCV.Application.Models;
|
||||
|
||||
namespace RealCV.Application.Interfaces;
|
||||
|
||||
public interface IEducationVerifierService
|
||||
{
|
||||
/// <summary>
|
||||
/// Verify a single education entry.
|
||||
/// </summary>
|
||||
EducationVerificationResult Verify(EducationEntry education);
|
||||
|
||||
/// <summary>
|
||||
/// Verify all education entries and check for timeline issues.
|
||||
/// </summary>
|
||||
List<EducationVerificationResult> VerifyAll(List<EducationEntry> education, List<EmploymentEntry>? employment = null);
|
||||
}
|
||||
8
src/RealCV.Application/Interfaces/IFileStorageService.cs
Normal file
8
src/RealCV.Application/Interfaces/IFileStorageService.cs
Normal file
@@ -0,0 +1,8 @@
|
||||
namespace RealCV.Application.Interfaces;
|
||||
|
||||
public interface IFileStorageService
|
||||
{
|
||||
Task<string> UploadAsync(Stream fileStream, string fileName);
|
||||
Task<Stream> DownloadAsync(string blobUrl);
|
||||
Task DeleteAsync(string blobUrl);
|
||||
}
|
||||
10
src/RealCV.Application/Interfaces/IStripeService.cs
Normal file
10
src/RealCV.Application/Interfaces/IStripeService.cs
Normal file
@@ -0,0 +1,10 @@
|
||||
using RealCV.Domain.Enums;
|
||||
|
||||
namespace RealCV.Application.Interfaces;
|
||||
|
||||
public interface IStripeService
|
||||
{
|
||||
Task<string> CreateCheckoutSessionAsync(Guid userId, string email, UserPlan targetPlan, string successUrl, string cancelUrl);
|
||||
Task<string> CreateCustomerPortalSessionAsync(string stripeCustomerId, string returnUrl);
|
||||
Task HandleWebhookAsync(string json, string signature);
|
||||
}
|
||||
11
src/RealCV.Application/Interfaces/ISubscriptionService.cs
Normal file
11
src/RealCV.Application/Interfaces/ISubscriptionService.cs
Normal file
@@ -0,0 +1,11 @@
|
||||
using RealCV.Application.DTOs;
|
||||
|
||||
namespace RealCV.Application.Interfaces;
|
||||
|
||||
public interface ISubscriptionService
|
||||
{
|
||||
Task<bool> CanPerformCheckAsync(Guid userId);
|
||||
Task IncrementUsageAsync(Guid userId);
|
||||
Task ResetUsageAsync(Guid userId);
|
||||
Task<SubscriptionInfoDto> GetSubscriptionInfoAsync(Guid userId);
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
using RealCV.Application.Models;
|
||||
|
||||
namespace RealCV.Application.Interfaces;
|
||||
|
||||
public interface ITimelineAnalyserService
|
||||
{
|
||||
TimelineAnalysisResult Analyse(List<EmploymentEntry> employmentHistory);
|
||||
}
|
||||
6
src/RealCV.Application/Interfaces/IUserContextService.cs
Normal file
6
src/RealCV.Application/Interfaces/IUserContextService.cs
Normal file
@@ -0,0 +1,6 @@
|
||||
namespace RealCV.Application.Interfaces;
|
||||
|
||||
public interface IUserContextService
|
||||
{
|
||||
Task<Guid?> GetCurrentUserIdAsync();
|
||||
}
|
||||
Reference in New Issue
Block a user