From 468ceb8a9bfe9e15e3be470b23809dde83a11f0d Mon Sep 17 00:00:00 2001 From: zhangqian <zhangqian@123.com> Date: 星期一, 09 十月 2023 19:14:53 +0800 Subject: [PATCH] merge master --- service/cache_store.go | 17 +++++++++++++---- 1 files changed, 13 insertions(+), 4 deletions(-) diff --git a/service/cache_store.go b/service/cache_store.go index 2f6c515..743e4a7 100644 --- a/service/cache_store.go +++ b/service/cache_store.go @@ -1,9 +1,11 @@ package service import ( + "apsClient/conf" "apsClient/constvar" "apsClient/model" "fmt" + "github.com/jinzhu/gorm" "github.com/spf13/cast" "sync" "time" @@ -79,18 +81,25 @@ } func TaskFlagSet(channel int32) { - defaultCacheStore.Add(fmt.Sprintf(CurrentTaskCacheKey, channel), struct{}{}) + defaultCacheStore.Add(fmt.Sprintf(CurrentTaskCacheKey, channel), true) } func TaskFlagUnset(channel int32) { - defaultCacheStore.Remove(fmt.Sprintf(CurrentTaskCacheKey, channel)) + defaultCacheStore.Add(fmt.Sprintf(CurrentTaskCacheKey, channel), false) } func TaskFlagGet(channel int32) bool { - if _, ok := defaultCacheStore.Get(fmt.Sprintf(CurrentTaskCacheKey, channel)); ok { + if v, ok := defaultCacheStore.Get(fmt.Sprintf(CurrentTaskCacheKey, channel)); ok { + return v.(bool) + } + _, err := model.NewProceduresSearch(nil).SetDeviceId(conf.Conf.System.DeviceId).SetStatus(model.ProcedureStatusProcessing).SetChannels([]int32{channel}).First() + if err == gorm.ErrRecordNotFound { + defaultCacheStore.Add(fmt.Sprintf(CurrentTaskCacheKey, channel), false) + return false + } else { + defaultCacheStore.Add(fmt.Sprintf(CurrentTaskCacheKey, channel), true) return true } - return false } func ProgressCacheGet(channel int32) (*model.ProductionProgress, bool) { -- Gitblit v1.8.0