You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
84 lines
2.0 KiB
84 lines
2.0 KiB
package model |
|
|
|
import ( |
|
"context" |
|
"gorm.io/gorm" |
|
) |
|
|
|
type ( |
|
jobList2Model interface { |
|
Insert(ctx context.Context, data *JobList2) error |
|
Update(ctx context.Context, jobId string, updates map[string]any) error |
|
Delete(ctx context.Context, jobId string) error |
|
FindOne(ctx context.Context, jobId string) (*JobList2, error) |
|
FindTitle(ctx context.Context, title string) (*JobList2, error) |
|
} |
|
JobList2 struct { |
|
updates map[string]any |
|
JobId string `gorm:"column:job_id"` |
|
Title string `gorm:"column:title"` |
|
} |
|
defaultJobList2Model struct { |
|
db *gorm.DB |
|
} |
|
) |
|
|
|
func (s *JobList2) TableName() string { |
|
return "job_list2" |
|
} |
|
|
|
func NewJobList2() *JobList2 { |
|
return &JobList2{ |
|
updates: make(map[string]any), |
|
} |
|
} |
|
|
|
func (s *JobList2) SetJobId(jobId string) *JobList2 { |
|
s.JobId = jobId |
|
s.set("job_id", jobId) |
|
return s |
|
} |
|
|
|
func (s *JobList2) SetTitle(title string) *JobList2 { |
|
s.Title = title |
|
s.set("title", title) |
|
return s |
|
} |
|
|
|
func (s *JobList2) set(key string, val any) { |
|
s.updates[key] = val |
|
} |
|
|
|
func (s *JobList2) UpdateColumn() map[string]any { |
|
return s.updates |
|
} |
|
|
|
func newJobList2DAO(db *gorm.DB) *defaultJobList2Model { |
|
return &defaultJobList2Model{ |
|
db: db, |
|
} |
|
} |
|
|
|
func (s *defaultJobList2Model) Insert(ctx context.Context, data *JobList2) error { |
|
return s.db.Create(data).Error |
|
} |
|
|
|
func (s *defaultJobList2Model) Update(ctx context.Context, jobId string, updates map[string]any) error { |
|
return s.db.Model(JobList2{}).Where("job_id=?", jobId).Updates(updates).Error |
|
} |
|
|
|
func (s *defaultJobList2Model) Delete(ctx context.Context, jobId string) error { |
|
return s.db.Where("job_id=?", jobId).Delete(&JobList2{}).Error |
|
} |
|
|
|
func (s *defaultJobList2Model) FindOne(ctx context.Context, jobId string) (*JobList2, error) { |
|
row := JobList2{} |
|
err := s.db.Where("job_id=?", jobId).Find(&row).Error |
|
return findResultWithError(&row, err) |
|
} |
|
|
|
func (s *defaultJobList2Model) FindTitle(ctx context.Context, title string) (*JobList2, error) { |
|
row := JobList2{} |
|
err := s.db.Where("title=?", title).Find(&row).Error |
|
return findResultWithError(&row, err) |
|
}
|
|
|