61 lines
1.6 KiB
Go
61 lines
1.6 KiB
Go
package service
|
||
|
||
import (
|
||
"planA/planD/initialization/golabl"
|
||
planAType "planA/type/mysql"
|
||
"time"
|
||
|
||
"gorm.io/gorm"
|
||
)
|
||
|
||
// GetDelTask 查询指定的删除任务
|
||
func GetDelTask() (planAType.DelTask, error) {
|
||
var delTask planAType.DelTask
|
||
err := golabl.MysqlDb.Where("task_id = ?", golabl.TaskId).First(&delTask).Error
|
||
return delTask, err
|
||
}
|
||
|
||
// UpdateTaskCountOver 根据task_id 将 task_count_over +1
|
||
func UpdateTaskCountOver() error {
|
||
return golabl.MysqlDb.Model(&planAType.DelTask{}).
|
||
Where("task_id = ?", golabl.TaskId).
|
||
Updates(map[string]interface{}{
|
||
"task_count_over": gorm.Expr("task_count_over + 1"),
|
||
}).Error
|
||
}
|
||
|
||
// UpdateTaskCount 根据task_id 将 task_count +1
|
||
func UpdateTaskCount() error {
|
||
return golabl.MysqlDb.Model(&planAType.DelTask{}).
|
||
Where("task_id = ?", golabl.TaskId).
|
||
Updates(map[string]interface{}{
|
||
"task_count": gorm.Expr("task_count + 1"),
|
||
}).Error
|
||
}
|
||
|
||
// UpdateTaskCountAndTaskCountOver 根据task_id 将 task_count与task_count_over 设置为0
|
||
func UpdateTaskCountAndTaskCountOver() error {
|
||
return golabl.MysqlDb.Model(&planAType.DelTask{}).
|
||
Where("task_id = ?", golabl.TaskId).
|
||
Updates(map[string]interface{}{
|
||
"task_count": 0,
|
||
"task_count_over": 0,
|
||
}).Error
|
||
}
|
||
|
||
// UpdateTaskStatus 根据task_id 修改 status
|
||
func UpdateTaskStatus(status int) error {
|
||
updateData := map[string]interface{}{
|
||
"status": status,
|
||
}
|
||
|
||
// 如果 status=2,设置 pause_at 为当前时间
|
||
if status == 2 {
|
||
updateData["pause_at"] = time.Now()
|
||
}
|
||
|
||
return golabl.MysqlDb.Model(&planAType.DelTask{}).
|
||
Where("task_id = ?", golabl.TaskId).
|
||
Updates(updateData).Error
|
||
}
|