28 const std::string& dateMode,
29 const std::string& year,
30 const std::string& dateFrom,
31 const std::string& dateTo,
32 const std::vector<std::string>& propertyIds,
33 const std::vector<std::string>& contractTypes,
34 const std::string& allocatableMode);
36[[nodiscard]] std::vector<std::pair<std::string, double>>
45 const std::string& text);
47[[nodiscard]] std::string
49 const std::vector<AnalysisAdjustmentTransactionInput>& transactions,
50 const std::vector<std::string>& selectedTransactionIds,
55 const std::string& analysisId,
56 bool includeCalculationAdjustments,
57 const std::vector<std::pair<std::string, double>>& adjustments);
59[[nodiscard]] std::vector<std::string>
Declares analysis use-case request DTOs and filter-spec helpers.
Immutable workspace read-model snapshot exposed through workspace ports.
std::vector< std::string > contractTypesFromSnapshot(const core::ports::workspace::WorkspaceSnapshot &workspace)
core::ports::analysis::AnalysisFilterSelection filterSelectionFromFields(const std::string &dateField, const std::string &dateMode, const std::string &year, const std::string &dateFrom, const std::string &dateTo, const std::vector< std::string > &propertyIds, const std::vector< std::string > &contractTypes, const std::string &allocatableMode)
std::string buildAnalysisAdjustmentsJson(const std::vector< AnalysisAdjustmentTransactionInput > &transactions, const std::vector< std::string > &selectedTransactionIds, double taxPercent)
std::optional< double > parseAnalysisPercentText(const std::string &text)
Parses a user-entered analysis percentage.
void applyAnalysisPreviewOverrides(core::ports::workspace::WorkspaceSnapshot &workspace, const std::string &analysisId, bool includeCalculationAdjustments, const std::vector< std::pair< std::string, double > > &adjustments)
std::vector< std::pair< std::string, double > > parseAnalysisAdjustmentsJson(const std::string &adjustmentsJson)
std::string buildAnalysisConfigJson(const core::ports::analysis::AnalysisConfigInput &input)