12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- package dao
- import (
- "context"
- "fmt"
- "go-common/library/cache/memcache"
- "github.com/pkg/errors"
- )
- func userKey(mid int64) (key string) {
- key = fmt.Sprintf("u_%d", mid)
- return
- }
- func syncBlockTypeID() (key string) {
- return "sync_bt_cur_id"
- }
- func (d *Dao) SetSyncBlockTypeID(c context.Context, id int64) (err error) {
- var (
- key = syncBlockTypeID()
- conn = d.mc.Get(c)
- )
- defer conn.Close()
- if err = conn.Set(&memcache.Item{Key: key, Object: id, Expiration: 3600 * 24, Flags: memcache.FlagJSON}); err != nil {
- err = errors.WithStack(err)
- return
- }
- return
- }
- func (d *Dao) SyncBlockTypeID(c context.Context) (id int64, err error) {
- var (
- key = syncBlockTypeID()
- conn = d.mc.Get(c)
- item *memcache.Item
- )
- defer conn.Close()
- if item, err = conn.Get(key); err != nil {
- if err == memcache.ErrNotFound {
- err = nil
- return
- }
- err = errors.WithStack(err)
- return
- }
- if err = conn.Scan(item, &id); err != nil {
- err = errors.WithStack(err)
- return
- }
- return
- }
- func (d *Dao) DeleteUserCache(c context.Context, mid int64) (err error) {
- var (
- key = userKey(mid)
- conn = d.mc.Get(c)
- )
- defer conn.Close()
- if err = conn.Delete(key); err != nil {
- err = errors.WithStack(err)
- return
- }
- return
- }
|