123456789101112131415161718192021222324252627282930313233343536373839404142 |
- package utils
- import (
- "sfis/db"
- "sfis/model"
- "sync"
- )
- var (
- UserCaches = new(ResourceCache)
- ProductCaches = new(ResourceCache)
- ApiUrlCache = sync.Map{}
- )
- type ResourceCache struct {
- Data []interface{}
- Map sync.Map
- }
- func FLushUserCaches() {
- users := make([]*model.User, 0)
- db.GetSFISDB().Find(&users)
- UserCaches.Map = sync.Map{}
- for _, user := range users {
- UserCaches.Map.Store(user.AppID, user)
- }
- }
- func GetUserByAppID(appID string) *model.User {
- if m, ok := UserCaches.Map.Load(appID); ok {
- _m := m.(*model.User)
- return _m
- }
- return nil
- }
- func GetProductByID(productID int) *model.Product {
- if m, ok := ProductCaches.Map.Load(productID); ok {
- _m := m.(*model.Product)
- return _m
- }
- return nil
- }
|