Browse Source

增加 redis 队列

abiao 5 years ago
parent
commit
a1b5b38f03

+ 5 - 7
go/gopath/src/fohow.com/apps/controllers/tool_controller/express_controller.go

@@ -64,7 +64,7 @@ func (self *ToolController) GetExpressCompany() {
 //获取物流信息
 func (self *ToolController) GetExpressInfo() {
 	type Ret struct {
-		Resp map[string]interface{} `json:"resp"`
+		Resp interface{} `json:"resp"`
 	}
 	expressNo := self.GetString("express_no")
 	expressCode := self.GetString("express_code")
@@ -94,12 +94,10 @@ func (self *ToolController) GetExpressInfo() {
 	ret := &Ret{}
 	//将数据存入 redis
 	key := fmt.Sprintf("express.GetExpressInfo(%s)", expressNo)
-	ok, retStr := helpers.GetRedisValue(key)
-	beego.BeeLogger.Info("返回字符:\r\n%v%s", retStr, retStr)
+	ok, resp := helpers.GetRedisValue(key, netReturn)
+	beego.BeeLogger.Info("返回字符:\r\n%v%s", resp)
 
-	if ok {
-		json.Unmarshal([]byte(retStr), &netReturn)
-	} else {
+	if !ok {
 		//发送请求
 		data, err := Get(juheURL, param)
 		if err != nil {
@@ -110,7 +108,7 @@ func (self *ToolController) GetExpressInfo() {
 		}
 		//cache.Cache.Put(k, ret, 90*time.Minute)
 	}
-	ret.Resp = netReturn
+	ret.Resp = resp
 	self.Data["json"] = ret
 	self.ServeJSON()
 }

+ 4 - 2
go/gopath/src/fohow.com/apps/helpers/redis_helper.go

@@ -1,6 +1,7 @@
 package helpers
 
 import (
+	"encoding/json"
 	"fmt"
 	"github.com/astaxie/beego"
 	"github.com/go-redis/redis"
@@ -35,7 +36,7 @@ func SetRedisValue(key, value string, durTime int) {
 }
 
 //获取keyValue
-func GetRedisValue(key string) (bool, string) {
+func GetRedisValue(key string, resp interface{}) (bool, interface{}) {
 	db, err := beego.AppConfig.Int("AliRedisDb")
 	if err != nil {
 		beego.BeeLogger.Error("%s", err)
@@ -58,8 +59,9 @@ func GetRedisValue(key string) (bool, string) {
 		return false, ""
 	}
 	beego.BeeLogger.Info("result 返回字符:%s", val)
+	json.Unmarshal([]byte(val), &resp)
 
-	return true, val
+	return true, resp
 }
 
 //保存redis队列