package dao

import (
	"youngee_b_api/app/entity"
)

type InfoAutoTaskDao struct{}

// 获取指定 enterpriseId 下的最新一条自动任务配置
func (d InfoAutoTaskDao) GetAutoTaskLast(enterpriseId string) entity.InfoAutoTask {
	autoTaskInfo := entity.InfoAutoTask{}
	Db.Model(&entity.InfoAutoTask{}).Where("enterprise_id = ?", enterpriseId).Last(&autoTaskInfo)
	if autoTaskInfo.AutoTaskID == 0 {
		Db.Model(&entity.InfoAutoTask{}).Where("auto_task_id = ?", 0).Find(&autoTaskInfo)
	}
	return autoTaskInfo
}

// 获取指定 autoTaskId 的指定字段值
func (d InfoAutoTaskDao) GetValueByIdFieldName(autoTaskId int64, fieldName string) entity.InfoAutoTask {
	autoTaskInfo := entity.InfoAutoTask{}
	Db.Model(&entity.InfoAutoTask{}).Select(fieldName).Where("auto_task_id = ?", autoTaskId).First(&autoTaskInfo)
	return autoTaskInfo
}

// 为当前 enterpriseId 插入新的策略配置
func (d InfoAutoTaskDao) Insert(autoTaskInfo entity.InfoAutoTask) error {
	err := Db.Debug().Model(&entity.InfoAutoTask{}).Create(&autoTaskInfo).Error
	return err
}
