package stocks import ( "context" "joybuywork/internal/consts" "joybuywork/internal/consts/ckey" "joybuywork/internal/service/provider/cachecurd" ) // MallItem 活动奖品发放库存 type MallItem struct { stocks } func NewMallItem(ctx context.Context, rewardIds ...int64) (stock *MallItem, err error) { stock = &MallItem{} err = stock.Init(ctx, stock, rewardIds) if err != nil { return } return } func (s *MallItem) Key(rewardId int64) string { return ckey.MallItemStock(rewardId) } func (s *MallItem) BuildStock(rewardId int64) (*cachecurd.HMap, error) { return cachecurd.NewHMap(s.Ctx, s.Key(rewardId), cachecurd.SetMallItemStock(rewardId), cachecurd.SetHMapExp(consts.TimeDay)) } func (s *MallItem) Clear() { NewCleaner(s.Ctx, s.ids...).ClearItem() }