Files
huangguo_server/models/v/officialWebsitemod/job.go
T
rootandClaude Opus 5 8679200f41 Initial commit
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-15 13:57:10 +08:00

57 lines
1.5 KiB
Go

package officialWebsitemod
import (
"time"
"go.mongodb.org/mongo-driver/bson/primitive"
"go.mongodb.org/mongo-driver/mongo/options"
)
// JobList 招聘页岗位列表
// 表: official_website_job_list
type Job struct {
ID primitive.ObjectID `json:"id" bson:"_id,omitempty"`
Title string `json:"title" bson:"title"`
Description string `json:"description" bson:"description"`
Requirements string `json:"requirements" bson:"requirements"`
Benefits string `json:"benefits" bson:"benefits"`
JDUrl string `json:"jdUrl" bson:"jdUrl"`
SortModel `bson:",inline"`
BaseModel `bson:",inline"`
}
func (j *Job) tableName() string { return tableJobList }
func (j *Job) FindOne(filter M) error {
return findOneByTable(j.tableName(), &j, filter)
}
func (j *Job) FindMany(filter M, opts ...*options.FindOptions) ([]Job, error) {
out := make([]Job, 0)
err := findManyByTable(j.tableName(), &out, filter, opts...)
return out, err
}
func (j *Job) Count(filter M) (int64, error) {
return countByTable(j.tableName(), filter)
}
func (j *Job) Create() error {
j.CreatedAt = time.Now().UTC()
j.UpdatedAt = j.CreatedAt
id, err := createByTable(j.tableName(), j)
if err != nil {
return err
}
j.ID = id
return nil
}
func (j *Job) Update(filter M, update M) (int64, error) {
return updateByTable(j.tableName(), filter, update)
}
func (j *Job) Delete(filter M) (int64, error) {
return deleteByTable(j.tableName(), filter)
}