Files
bl/modules/config/service/task.go
xinian 9b344d3753
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
feat: 重构地图热度信息并添加地图提示功能
将地图热度信息从简单的计数器改为包含提示信息的结构体
添加矿物、BOSS、宠物和掉落等提示信息的收集功能
优化地图进入和离开时的计数逻辑
2026-03-01 10:44:31 +08:00

60 lines
1.1 KiB
Go

package service
import (
"blazing/cool"
"blazing/modules/config/model"
"github.com/gogf/gf/v2/database/gdb"
)
type TaskService struct {
*cool.Service
}
func NewTaskService() *TaskService {
return &TaskService{
&cool.Service{
Model: model.NewTaskConfig(),
PageQueryOp: &cool.QueryOp{
FieldEQ: []string{"task_type", "task_id"},
KeyWordField: []string{"remark"},
},
//UniqueKey: map[string]string{"task_id": "索引不能重复"},
},
}
}
func (s *TaskService) Get(id, os int) *model.TaskConfig {
var item []model.TaskConfig
dbm_enable(s.Model).Where("task_id", id).Scan(&item)
var res *model.TaskConfig
for _, v := range item {
if v.OutState == os {
res = &v
}
}
return res
}
func (s *TaskService) GetDaily() []model.TaskConfig {
var item []model.TaskConfig
dbm_enable(s.Model).Where("task_type", 1).Scan(&item)
return item
}
func (s *TaskService) IsAcceptable(taskid uint32) (out *model.TaskConfig) {
cool.DBM(s.Model).Where("is_acceptable", 1).Where("task_id", taskid).
Cache(gdb.CacheOption{
// Duration: time.Hour,
Force: false,
}).Scan(&out)
return
}