jobs-monorepo/shared/domain/job.go
Elshimy Ziad Magdy Taha 0ab6954231 feat: add job analysis infrastructure and Glassdoor support
- Added new job analysis result repository and database migration system
- Expanded job creation to support Glassdoor as a new provider alongside LinkedIn
- Added CV analysis service launch configuration in VS Code
- Updated Makefile with new commands for scraper service and migrations
- Improved environment loading in cron analyzer to support local development
- Added error handling for unsupported job providers
- Integrated job analysis results
2025-10-24 15:10:20 +05:00

53 lines
953 B
Go

package domain
import "time"
// JobProvider represents different job board providers
type JobProvider int
type JobStatus int
const (
LinkedIn JobProvider = iota
Indeed
Glassdoor
Bayt
TokyoDev
JapanDev
)
const (
JobStatusCreated JobStatus = iota
JobStatusAnalyzed
JobStatusError
)
type Job struct {
ID int64
Title string
Company string
CompanyLink string
Location string
JobLink string
Provider JobProvider
JobPostTime *time.Time
Status JobStatus
}
type JobAnalysisResult struct {
ID int64
JobID int64
AnalysisResult string
MatchScore *int
KeySkills []string
MissingSkills []string
Recommendations *string
AnalyzedAt time.Time
}
type SearchQuery struct {
Keywords string `json:"keywords"`
Location string `json:"location"`
NumPages int `json:"numPages"`
FWT string `json:"f_WT"` // Work type filter (1=onsite, 2=remote, 3=hybrid)
}