ea40e5c002
TaxBaik CI/CD / build-and-deploy (push) Successful in 50s
Domain Layer (SOLID Foundation): - 5 New Entities: TaxProfile, TaxFilingSchedule, ConsultingActivity, Contract, RevenueTracking - Client entity extended with tax-specific fields - Multi-tenant support (company_id) Database Migration (V015): - Create tax_profiles table for detailed tax info - Create tax_filing_schedules for deadline tracking - Create consulting_activities for CRM (activity history) - Create contracts for contract management - Create revenue_tracking for invoice and payment tracking - Add indexes for performance optimization Repository Interfaces: - ITaxProfileRepository (tax profile CRUD + risk analysis) - ITaxFilingScheduleRepository (schedule management + deadline tracking) - IConsultingActivityRepository (CRM activity tracking) - IContractRepository (contract lifecycle + MRR calculation) - IRevenueTrackingRepository (invoice + payment tracking + revenue analysis) Architecture: - Follows Repository Pattern with clear separation of concerns - SOLID principles: each repo = one responsibility - Extensible design for multi-tenant support - Supports specialized tax accounting and CRM workflows
22 lines
825 B
C#
22 lines
825 B
C#
namespace TaxBaik.Domain.Entities;
|
|
|
|
public class TaxProfile
|
|
{
|
|
public int Id { get; set; }
|
|
public int ClientId { get; set; }
|
|
public string? BusinessRegistration { get; set; }
|
|
public string? BusinessType { get; set; }
|
|
public DateTime? EstablishmentDate { get; set; }
|
|
public string? AnnualRevenueRange { get; set; }
|
|
public int? EmployeeCount { get; set; }
|
|
public string? AccountingMethod { get; set; }
|
|
public string? FiscalYearEnd { get; set; }
|
|
public DateTime? LastFilingDate { get; set; }
|
|
public DateTime? NextFilingDueDate { get; set; }
|
|
public string TaxRiskLevel { get; set; } = "normal";
|
|
public bool PreviousAuditHistory { get; set; }
|
|
public string? SpecialNotes { get; set; }
|
|
public DateTime CreatedAt { get; set; }
|
|
public DateTime UpdatedAt { get; set; }
|
|
}
|