05c7eae8a2
- Introduced a new configuration file for the TED scraper, defining database connection settings, logging preferences, and scraping parameters. - Implemented a CronScheduler to manage scheduled tasks for TED operations, utilizing the robfig/cron library for scheduling. - Added new entities and structures for handling TED XML data, including eForms and tender-related information, enhancing the scraper's functionality. - Updated the main application to initialize the TED scraper with the new configuration and set up graceful shutdown handling. - Removed the deprecated scraping implementation to streamline the codebase and focus on the new architecture.
44 lines
2.7 KiB
Go
44 lines
2.7 KiB
Go
package eform
|
|
|
|
// =====================================================
|
|
// TECHNICAL SPECIFICATIONS
|
|
// =====================================================
|
|
|
|
// TechnicalSpecifications contains technical and eligibility requirements
|
|
type TechnicalSpecifications struct {
|
|
Description string `json:"description" xml:"description" validate:"required,max=10000"`
|
|
EligibilityCriteria string `json:"eligibility_criteria,omitempty" xml:"eligibility_criteria,omitempty" validate:"max=10000"`
|
|
TechnicalCapability string `json:"technical_capability,omitempty" xml:"technical_capability,omitempty" validate:"max=10000"`
|
|
EconomicCapability string `json:"economic_capability,omitempty" xml:"economic_capability,omitempty" validate:"max=10000"`
|
|
References bool `json:"references" xml:"references"`
|
|
ReferencesDescription string `json:"references_description,omitempty" xml:"references_description,omitempty" validate:"required_if=References true"`
|
|
SecurityClearance bool `json:"security_clearance" xml:"security_clearance"`
|
|
SecurityClearanceDescription string `json:"security_clearance_description,omitempty" xml:"security_clearance_description,omitempty" validate:"required_if=SecurityClearance true"`
|
|
ReservedExecution ReservedExecution `json:"reserved_execution" xml:"reserved_execution"`
|
|
StrategicProcurement []StrategicType `json:"strategic_procurement,omitempty" xml:"strategic_procurement,omitempty"`
|
|
AccessibilityCriteria bool `json:"accessibility_criteria" xml:"accessibility_criteria"`
|
|
AccessibilityDescription string `json:"accessibility_description,omitempty" xml:"accessibility_description,omitempty" validate:"max=10000"`
|
|
GreenProcurement bool `json:"green_procurement" xml:"green_procurement"`
|
|
SocialProcurement bool `json:"social_procurement" xml:"social_procurement"`
|
|
InnovativeProcurement bool `json:"innovative_procurement" xml:"innovative_procurement"`
|
|
}
|
|
|
|
// ReservedExecution represents reserved participation types
|
|
type ReservedExecution string
|
|
|
|
const (
|
|
ReservedNone ReservedExecution = "none"
|
|
ReservedShelteredWS ReservedExecution = "sheltered-workshop"
|
|
ReservedPublicService ReservedExecution = "public-service-mission"
|
|
)
|
|
|
|
// StrategicType represents strategic procurement objectives
|
|
type StrategicType string
|
|
|
|
const (
|
|
StrategicEnvironmental StrategicType = "environmental"
|
|
StrategicSocial StrategicType = "social"
|
|
StrategicInnovation StrategicType = "innovation"
|
|
StrategicOther StrategicType = "other"
|
|
)
|