Go handlers, models, stores and migrations for all SDK modules. Updates developer portal navigation and BYOEH page. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
66 lines
2.5 KiB
Go
66 lines
2.5 KiB
Go
package industry
|
|
|
|
// ============================================================================
|
|
// Industry-Specific Compliance Templates (Phase 3.3)
|
|
// Static reference data — no database migration needed.
|
|
// ============================================================================
|
|
|
|
// IndustryTemplate represents a complete compliance package for a specific industry
|
|
type IndustryTemplate struct {
|
|
Slug string `json:"slug"`
|
|
Name string `json:"name"`
|
|
Description string `json:"description"`
|
|
Icon string `json:"icon"`
|
|
Regulations []string `json:"regulations"`
|
|
VVTTemplates []VVTTemplate `json:"vvt_templates"`
|
|
TOMRecommendations []TOMRecommendation `json:"tom_recommendations"`
|
|
RiskScenarios []RiskScenario `json:"risk_scenarios"`
|
|
}
|
|
|
|
// VVTTemplate represents a pre-configured processing activity record template
|
|
type VVTTemplate struct {
|
|
Name string `json:"name"`
|
|
Purpose string `json:"purpose"`
|
|
LegalBasis string `json:"legal_basis"`
|
|
DataCategories []string `json:"data_categories"`
|
|
DataSubjects []string `json:"data_subjects"`
|
|
RetentionPeriod string `json:"retention_period"`
|
|
}
|
|
|
|
// TOMRecommendation represents a recommended technical/organizational measure
|
|
type TOMRecommendation struct {
|
|
Category string `json:"category"`
|
|
Name string `json:"name"`
|
|
Description string `json:"description"`
|
|
Priority string `json:"priority"`
|
|
}
|
|
|
|
// RiskScenario represents an industry-specific data protection risk scenario
|
|
type RiskScenario struct {
|
|
Name string `json:"name"`
|
|
Description string `json:"description"`
|
|
Likelihood string `json:"likelihood"`
|
|
Impact string `json:"impact"`
|
|
Mitigation string `json:"mitigation"`
|
|
}
|
|
|
|
// ============================================================================
|
|
// API Response Types
|
|
// ============================================================================
|
|
|
|
// IndustryListResponse is the API response for listing all industries
|
|
type IndustryListResponse struct {
|
|
Industries []IndustrySummary `json:"industries"`
|
|
Total int `json:"total"`
|
|
}
|
|
|
|
// IndustrySummary is a condensed view of an industry template for list endpoints
|
|
type IndustrySummary struct {
|
|
Slug string `json:"slug"`
|
|
Name string `json:"name"`
|
|
Description string `json:"description"`
|
|
Icon string `json:"icon"`
|
|
RegulationCount int `json:"regulation_count"`
|
|
TemplateCount int `json:"template_count"`
|
|
}
|