abiao преди 5 години
родител
ревизия
40eb865f3c

+ 19 - 36
go/gopath/src/fohow.com/apps/controllers/test_controller/test_controller.go

@@ -2,10 +2,9 @@ package test_controller
 
 import (
 	"fmt"
-	"fohow.com/apps/models/dollar_win_model"
+	"fohow.com/apps/helpers"
 	"fohow.com/apps/models/order_model"
-	"github.com/astaxie/beego"
-	"strconv"
+	"fohow.com/apps/models/user_model"
 )
 
 type LabiReturn struct {
@@ -14,24 +13,6 @@ type LabiReturn struct {
 	TradeNo string `json:"trade_no"`
 }
 
-func (self *TestController) UpdateInviteCount() {
-	_zt_id := self.Ctx.Input.Param(":zt_id")
-	zt_id, _ := strconv.ParseInt(_zt_id, 10, 64)
-	_temp_user_id := self.Ctx.Input.Param(":temp_user_id")
-	temp_user_id, _ := strconv.ParseInt(_temp_user_id, 10, 64)
-	//获取所有我推荐参与的会员
-	frendJoinList := dollar_win_model.GetJoinFrendPaiedWinListByZtConfigId(zt_id, temp_user_id, false)
-	frendCount := len(frendJoinList)
-	self.SetSession("dollar_count", frendCount)
-	self.UpdateCount(frendJoinList, zt_id)
-	count := self.GetSession("dollar_count").(int)
-	type Ret struct {
-		Count int64 `json:"Count"`
-	}
-	self.Data["json"] = &Ret{Count: int64(count)}
-	self.ServeJSON()
-}
-
 //测试订单
 func (self *TestController) TestOrderListen() {
 	orderId := self.GetString("order_id")
@@ -62,21 +43,23 @@ func (self *TestController) TestOrderListen() {
 	self.ServeJSON()
 }
 
-func (self *TestController) UpdateCount(list []*dollar_win_model.DollarWinZtJoin, ztConfigId int64) {
+//测试redis 存储userInfo
+func (self *TestController) GetUserInfoFromRedis() {
+	userId := int64(1388)
+	key := fmt.Sprintf("userinfo_%d", userId)
+	var user user_model.User
+	ok, resp := helpers.GetRedisValue(key, user)
+	if !ok {
+		//发送请求
+		resp = user_model.GetUserById(userId, false)
+		helpers.SetJsonEx(key, resp, 90*60)
 
-	for _, item := range list {
-		if item.UserId == 600110 || item.UserId == 600113 || item.UserId == 602368 || item.UserId == 600106 {
-			continue
-		}
-		//更新直接下级推荐数量
-		beego.BeeLogger.Warn("dollar_win_model.UpdateCount().CinviteId(%d)", item.UserId)
-		inviteJoinList := dollar_win_model.GetJoinFrendPaiedWinListByZtConfigId(ztConfigId, item.UserId, false)
-		count := int(len(inviteJoinList))
-		oldCount := self.GetSession("dollar_count").(int)
-		count += oldCount
-		//更新参与数量
-		self.SetSession("dollar_count", count)
-		//递归调用
-		self.UpdateCount(inviteJoinList, ztConfigId)
 	}
+	type Ret struct {
+		Resp interface{} `json:"resp"`
+	}
+	ret := &Ret{}
+	ret.Resp = resp
+	self.Data["json"] = ret
+	self.ServeJSON()
 }

+ 2 - 1
go/gopath/src/fohow.com/apps/controllers/tool_controller/express_controller.go

@@ -13,6 +13,7 @@ import (
 	"net/http"
 	"net/url"
 	"strings"
+	"time"
 )
 
 func (self *ToolController) GetExpressCompany() {
@@ -103,7 +104,7 @@ func (self *ToolController) GetExpressInfo() {
 		if err != nil {
 			fmt.Errorf("请求失败,错误信息:\r\n%v", err)
 		} else {
-			helpers.SetRedisValue(key, string(data), 90)
+			helpers.SetRedisValue(key, string(data), time.Duration(90*60)*time.Second)
 			json.Unmarshal(data, &resp)
 		}
 		//cache.Cache.Put(k, ret, 90*time.Minute)

+ 15 - 9
go/gopath/src/fohow.com/apps/helpers/redis_helper.go

@@ -8,12 +8,21 @@ import (
 	"time"
 )
 
+// SetJsonEx set Json and second
+func SetJsonEx(key string, data interface{}, seconds int) error {
+	jsonData, err := json.Marshal(data)
+	if err != nil {
+		return nil
+	}
+	return SetRedisValue(key, string(jsonData), time.Duration(seconds)*time.Second)
+}
+
 //保存keyValue
-func SetRedisValue(key, value string, durTime int) {
+func SetRedisValue(key, value string, expiration time.Duration) error {
 	db, err := beego.AppConfig.Int("AliRedisDb")
 	if err != nil {
 		beego.BeeLogger.Error("%s", err)
-		return
+		return err
 	}
 	client := redis.NewClient(&redis.Options{
 		Addr:     beego.AppConfig.String("AliRedisHost"),
@@ -25,14 +34,11 @@ func SetRedisValue(key, value string, durTime int) {
 	_, err = client.Ping().Result()
 	if err != nil {
 		beego.BeeLogger.Error("%s", err)
-		return
-	}
-	var t time.Duration
-	if durTime == 90 {
-		t = 90 * time.Minute
+		return err
 	}
-	client.Set(key, value, t) //忽略错误
-	return
+
+	client.Set(key, value, expiration) //忽略错误
+	return nil
 }
 
 //获取keyValue

+ 3 - 0
go/gopath/src/fohow.com/routers/routes.go

@@ -1,6 +1,7 @@
 package routers
 
 import (
+	"fohow.com/apps/controllers/test_controller"
 	// "fohow.com/apps"
 	"github.com/astaxie/beego"
 
@@ -234,6 +235,7 @@ func init() {
 
 	//测试接口
 	beego.Router("/v1/test/wxpay/eppay", &railsadmin_controller.RailsadminController{}, "get:TestEpPay")
+	beego.Router("/v1/test/redis_info", &test_controller.TestController{}, "get:GetUserInfoFromRedis")
 
 	//----------------微信商品库管理-------------
 	beego.Router("/railsadmin/wxku_commodity/:id([0-9]+)/addOrUpdate", &wxku_commodity_controller.WxkuCommodityController{}, "post:AddOrUpdateWxkuCommodity")
@@ -277,4 +279,5 @@ func init() {
 	//----------------购物车 -------------------
 	//店铺专区下单
 	beego.Router("/v1/shop/order_mul", &order_controller.OrderController{}, "post:MultShopCreate")
+
 }