From 4a0cfb42b222861849d7745ad91fe9b21d0c1380 Mon Sep 17 00:00:00 2001 From: jau1 <95550641@163.com> Date: Wed, 17 Jul 2019 15:59:47 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E4=BA=86=20RedisModule.go?= =?UTF-8?q?=E4=B8=AD=20List,=20=E6=9C=89=E5=BA=8F=E9=9B=86=E5=90=88=20?= =?UTF-8?q?=E7=9A=84=E6=93=8D=E4=BD=9C=E5=87=BD=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sysmodule/RedisModule.go | 89 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 89 insertions(+) diff --git a/sysmodule/RedisModule.go b/sysmodule/RedisModule.go index 2b8ffc4..f307205 100644 --- a/sysmodule/RedisModule.go +++ b/sysmodule/RedisModule.go @@ -1035,3 +1035,92 @@ func (slf *RedisModule) Lrange(key string, start, end int) ([]string, error) { return redis.Strings(reply, err) } + +//获取List的长度 +func (slf *RedisModule) GetListLen(key string ) (int , error) { + conn , err := slf.getConn() + if err != nil { + return -1, err + } + defer conn.Close() + + reply , err := conn.Do("LLEN", key) + if err != nil { + service.GetLogger().Printf(service.LEVER_ERROR, "GetListLen fail,reason:%v", err) + return -1, err + } + return redis.Int(reply,err) + +} + +//弹出List最后条记录 +func (slf *RedisModule) RPOPListValue(key string ) error { + conn , err := slf.getConn() + if err != nil { + return err + } + defer conn.Close() + + _ , err = conn.Do("RPOP", key , 100) + if err != nil { + service.GetLogger().Printf(service.LEVER_ERROR, "RPOPListValue fail,reason:%v", err) + return err + } + return nil + +} + +//弹出List最后条记录 +func (slf *RedisModule) LtrimList(key string , start , end int ) error { + conn , err := slf.getConn() + if err != nil { + return err + } + defer conn.Close() + + _ , err = conn.Do("LTRIM", key , start,end) + if err != nil { + service.GetLogger().Printf(service.LEVER_ERROR, "LtrimListValue fail,reason:%v", err) + return err + } + return nil + +} + +//有序集合插入Json +func (slf *RedisModule) ZADDInsertJson(key string,score float64,value interface{}) error{ + + conn , err := slf.getConn() + if err != nil { + return err + } + defer conn.Close() + JsonValue , err := json.Marshal(value) + if err != nil { + return err + } + _ , err = conn.Do("ZADD", key , score,JsonValue) + if err != nil { + service.GetLogger().Printf(service.LEVER_ERROR, "LtrimListValue fail,reason:%v", err) + return err + } + return nil +} + +//有序集合插入 +func (slf *RedisModule) ZADDInsert(key string,score float64, Data interface{}) error{ + + conn , err := slf.getConn() + if err != nil { + return err + } + defer conn.Close() + + _ , err = conn.Do("ZADD", key , score, Data) + if err != nil { + service.GetLogger().Printf(service.LEVER_ERROR, "LtrimListValue fail,reason:%v", err) + return err + } + return nil +} +