12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- package db
- import (
- "context"
- "fmt"
- "youngee_b_api/model/gorm_model"
- )
- // CreateJob 新建岗位
- func CreateJob(ctx context.Context, job gorm_model.YounggeeJob) error {
- db := GetWriteDB(ctx)
- err := db.Create(&job).Error
- if err != nil {
- return err
- }
- return nil
- }
- // UpdateJob 更新岗位
- func UpdateJob(ctx context.Context, job gorm_model.YounggeeJob) error {
- db := GetWriteDB(ctx)
- whereCondition := gorm_model.YounggeeJob{JobId: job.JobId}
- err := db.Model(&gorm_model.YounggeeJob{}).Where(whereCondition).Updates(job).Error
- if err != nil {
- return err
- }
- return nil
- }
- // DeleteJob 删除岗位
- func DeleteJob(ctx context.Context, job gorm_model.YounggeeJob) error {
- db := GetWriteDB(ctx)
- whereCondition := gorm_model.YounggeeJob{JobId: job.JobId}
- err := db.Where(whereCondition).Delete(&gorm_model.YounggeeJob{}).Error
- if err != nil {
- return err
- }
- return nil
- }
- // FindJobBySupplierId 按服务商ID查找岗位信息
- func FindJobBySupplierId(ctx context.Context, supplierId int, pageNum int32, pageSize int32) ([]*gorm_model.YounggeeJob, int64, error) {
- db := GetReadDB(ctx)
- var Jobs []*gorm_model.YounggeeJob
- whereCondition := gorm_model.YounggeeJob{SupplierId: supplierId}
- var total int64
- fmt.Println(pageSize, pageNum)
- // 先计算总数
- err := db.Model(gorm_model.YounggeeJob{}).Where(whereCondition).Count(&total).Error
- if err != nil {
- return nil, 0, err
- }
- // 如果 pageNum <= 0 或 pageSize <= 0,则返回全部数据
- if pageNum <= 0 || pageSize <= 0 {
- err = db.Where(whereCondition).Find(&Jobs).Error
- if err != nil {
- return nil, 0, err
- }
- return Jobs, total, nil
- }
- // 否则返回分页数据
- offset := (pageNum - 1) * pageSize
- err = db.Where(whereCondition).Offset(int(offset)).Limit(int(pageSize)).Find(&Jobs).Error
- if err != nil {
- return nil, 0, err
- }
- return Jobs, total, nil
- }
- // FindJobByJobId 按照岗位Id查找岗位信息
- func FindJobByJobId(ctx context.Context, jobId int) (*gorm_model.YounggeeJob, error) {
- db := GetReadDB(ctx)
- var Job *gorm_model.YounggeeJob
- whereCondition := gorm_model.YounggeeJob{JobId: jobId}
- err := db.Model(gorm_model.YounggeeJob{}).Where(whereCondition).Find(&Job).Error
- if err != nil {
- return nil, err
- }
- return Job, nil
- }
- /*
- func GetRewardStrategyBySelectionId(ctx context.Context, SelectionId string) ([]*gorm_model.RewardStrategy, error) {
- db := GetReadDB(ctx)
- var RewardStrategys []*gorm_model.RewardStrategy
- err := db.Model(gorm_model.RewardStrategy{}).Where("selection_id = ?", SelectionId).Find(&RewardStrategys).Error
- if err != nil {
- logrus.WithContext(ctx).Errorf("[GetRewardStrategyBySelectionId] error query, err:%+v", err)
- return nil, err
- }
- return RewardStrategys, nil
- }
- */
|