feat(cache): 添加复合键缓存操作支持 添加了基于 uint32+string 组合键的缓存操作方法,包括 GetByCompoundKey、SetByCompoundKey、DelByCompoundKey 和 ContainsByCompoundKey 方法,用于处理用户ID和会话ID的组合缓存场景 fix(vscode): 添加 cSpell 配置支持 struc 词汇 refactor(session): 移除过时的会话管理方法 移除了基于单一字符串键的会话管理方法,因为已迁移到使用 复合键的缓存操作方式 ```
60 lines
1.1 KiB
Go
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"},
|
|
KeyWordField: []string{"remark"},
|
|
},
|
|
//UniqueKey: map[string]string{"task_id": "索引不能重复"},
|
|
},
|
|
}
|
|
}
|
|
func (s *TaskService) Get(id, os int) *model.TaskConfig {
|
|
var item []model.TaskConfig
|
|
dbm(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(s.Model).Where("task_type", 1).Scan(&item)
|
|
|
|
return item
|
|
|
|
}
|
|
func (s *TaskService) IsAcceptable(taskid uint32) bool {
|
|
|
|
con, _ := cool.DBM(s.Model).Where("is_acceptable", 1).Where("task_id", taskid).
|
|
Cache(gdb.CacheOption{
|
|
// Duration: time.Hour,
|
|
|
|
Force: false,
|
|
}).Count()
|
|
|
|
return con > 0
|
|
|
|
}
|