Files
jx-callback/business/jxutils/storeskulock/storeskulock.go
邹宗楠 5a47102894 1
2022-10-22 22:44:39 +08:00

38 lines
793 B
Go

package storeskulock
import (
"fmt"
"time"
"git.rosy.net.cn/jx-callback/globals/api"
)
const (
cacheKeyPrefix = "jdpromotion"
)
func LockJdStoreSku(jdStoreID string, jdSkuID int64, expire time.Time) {
return
duration := expire.Sub(time.Now())
if duration > 0 {
api.Cacher.Set(genCacheKey(jdStoreID, jdSkuID), 1, duration)
}
}
func UnlockJdStoreSku(jdStoreID string, jdSkuID int64) {
api.Cacher.Del(genCacheKey(jdStoreID, jdSkuID))
}
func IsJdStoreSkuLocked(jdStoreID string, jdSkuID int64) bool {
return false
return api.Cacher.Get(genCacheKey(jdStoreID, jdSkuID)) != nil
}
func ClearJdStoreSkuLock() {
api.Cacher.FlushKeys(cacheKeyPrefix)
}
func genCacheKey(jdStoreID string, jdSkuID int64) string {
return fmt.Sprintf("%s.%s.%d", cacheKeyPrefix, jdStoreID, jdSkuID)
}