Преглед на файлове

Merge branch 'develop' of http://192.168.3.17/gitlab/zhanghongbo/qfw into develop

zhanghongbo преди 9 години
родител
ревизия
7d2ca05b8b

+ 32 - 16
core/src/luckdraw.json

@@ -4,68 +4,84 @@
 	"getAmount":[{
 		"min":0,
 		"max":35,
-		"proportion":0
+		"proportion":0,
+		"txt":"iPad mini"
 	},{
 		"min":50,
 		"max":80,
-		"proportion":16.71
+		"proportion":16.71,
+		"txt":"谢谢参与"
 	},{
 		"min":95,
 		"max":120,
-		"proportion":0.5
+		"proportion":0.5,
+		"txt":"U盘"
 	},{
 		"min":140,
 		"max":175,
-		"proportion":50
+		"proportion":50,
+		"txt":"200积分"
 	},{
 		"min":190,
 		"max":220,
-		"proportion":1
+		"proportion":1,
+		"txt":"五元红包"
 	},{
 		"min":235,
 		"max":270,
-		"proportion":16.71
+		"proportion":16.71,
+		"txt":"谢谢参与"
 	},{
 		"min":280,
 		"max":310,
-		"proportion":0.08
+		"proportion":0.08,
+		"txt":"书"
 	},{
 		"min":325,
 		"max":350,
-		"proportion":15
+		"proportion":15,
+		"txt":"一元红包"
 	}],
 	"getAmounttwo":[{
 		"min":0,
 		"max":35,
-		"proportion":0
+		"proportion":0,
+		"txt":"iPad mini"
 	},{
 		"min":50,
 		"max":80,
-		"proportion":24.71
+		"proportion":24.71,
+		"txt":"谢谢参与"
 	},{
 		"min":95,
 		"max":120,
-		"proportion":0.5
+		"proportion":0.5,
+		"txt":"U盘"
 	},{
 		"min":140,
 		"max":175,
-		"proportion":50
+		"proportion":50,
+		"txt":"200积分"
 	},{
 		"min":190,
 		"max":220,
-		"proportion":0
+		"proportion":0,
+		"txt":"五元红包"
 	},{
 		"min":235,
 		"max":270,
-		"proportion":24.71
+		"proportion":24.71,
+		"txt":"谢谢参与"
 	},{
 		"min":280,
 		"max":310,
-		"proportion":0.08
+		"proportion":0.08,
+		"txt":"书"
 	},{
 		"min":325,
 		"max":350,
-		"proportion":0
+		"proportion":0,
+		"txt":"一元红包"
 	}],
 	"promotioncode":"2001001501",
 	"weixin":{

+ 25 - 26
core/src/qfw/active/activemanage.go

@@ -106,7 +106,7 @@ func limitFun() {
 								Title:  "抽奖进入限制状态通知",
 								Detail: "系统",
 								Result: str,
-								Remark: "",
+								Remark: time.Now().Format(Date_Full_Layout),
 							})
 						}
 					}, func(e interface{}) {})
@@ -133,7 +133,7 @@ func unlimitFun() {
 				allb = false
 				break
 			} else {
-				str += " [间隔:" + strconv.Itoa(v[0]) + "," + "实际次数:" + strconv.Itoa(val) + ",限制:" + strconv.Itoa(v[1]) + "]"
+				str += " [间隔:" + strconv.Itoa(v[0]) + "," + "实际次数:" + strconv.Itoa(val) + ",限制:" + strconv.Itoa(v[1]) + "]"
 			}
 		}
 		if allb {
@@ -145,10 +145,10 @@ func unlimitFun() {
 					for _, id := range notifyIds {
 						coreutil.SendManagerNotifyMsg(&qrpc.NotifyMsg{
 							Openid: id,
-							Title:  "抽奖进入限制状态通知",
+							Title:  "解除抽奖限制通知",
 							Detail: "系统",
 							Result: fmt.Sprintf(unlimitmsg, str),
-							Remark: "",
+							Remark: time.Now().Format(Date_Full_Layout),
 						})
 					}
 				}, func(e interface{}) {})
@@ -255,7 +255,7 @@ func (a *Activemanage) Luckdraw(activecode, id string) error {
 				a.T["flog"] = "A"
 				Tm := time.Now().AddDate(0, 0, 1)
 				if ret := redis.Get("other", "cj_"+openid+"_"+Tm.Format("2006_01_02")); ret == nil {
-					a.T["msg"] = "  小主,快分享朋友圈或好友即获得明天的抽奖资格吧!千万不要再忘记了,大奖可能就在明天~"
+					a.T["msg"] = "  小主,分享给好友参加明天的抽奖吧!千万不要再忘记了,大奖可能就在明天~"
 				} else {
 					a.T["msg"] = "  小主已获得明天的抽奖资格!明天记得要来啊~"
 				}
@@ -271,7 +271,6 @@ func (a *Activemanage) Luckdraw(activecode, id string) error {
 
 //
 func (a *Activemanage) Getluckdraw() error {
-	CheckLimit()
 	flog := "F"
 	//提示语
 	msg := ""
@@ -288,7 +287,7 @@ func (a *Activemanage) Getluckdraw() error {
 			if ret := redis.Get("other", "cj_"+openid+"_"+time.Now().Format("2006_01_02")); ret == nil {
 				//a.T = *u
 				a.T["flog"] = "A"
-				a.T["msg"] = "  小主莫贪心,每天只有一次抽奖机会呦!分享至朋友圈或好友即可以获得明天抽奖资格呦!乖,快去分享吧!大奖可能就在明天~~"
+				a.T["msg"] = "  小主,分享给好友参加明天的抽奖吧!千万不要再忘记了,大奖可能就在明天~"
 				return a.Write(`{"flog":"` + flog + `","msg":"` + msg + `"}`)
 			}
 			redis.Del("other", "cj_"+openid+"_"+time.Now().Format("2006_01_02"))
@@ -301,7 +300,7 @@ func (a *Activemanage) Getluckdraw() error {
 	var i int
 	if black == "T" {
 		//黑名单指针范围
-		i = int(rand.Float64()*30 + 50)
+		i = rand.Intn(30) + 50
 	} else {
 		i = getLuckDraw()
 	}
@@ -318,12 +317,12 @@ func (a *Activemanage) Getluckdraw() error {
 		flog = "T"
 	}
 	//红包
-	if (i > 184 && i < 221) || (i > 319 && i < 356) {
+	if (i > 189 && i < 221) || (i > 324 && i < 351) {
 		var amount int //红包金额以“元”为单位,微信红包以“分”为单位
-		if i > 184 && i < 221 {
+		if i > 189 && i < 221 {
 			amount = 500 //红包金额以“元”为单位,微信红包以“分”为单位
 
-		} else if i > 319 && i < 356 {
+		} else if i > 324 && i < 351 {
 			amount = 100 //红包金额以“元”为单位,微信红包以“分”为单位
 		}
 		bm := qrpc.BonusMsg{Mchbillno: fmt.Sprint(today.Unix()),
@@ -358,8 +357,8 @@ func (a *Activemanage) Getluckdraw() error {
 			Save("redpackage_fail", redpackage_fail)
 
 		}
-		msg = "  小主是真真的好运气," + s_prize + "落入您囊中。红包将由系统自动发放到您的微信,请注意查收。<br/><br/>  分享至朋友圈或好友即可以获得明天抽奖资格呦!乖,快去分享吧!大奖可能就在明天~~"
-	} else if (i > 274 && i < 311) || (i > 94 && i < 131) {
+		msg = "  小主是真真的好运气," + s_prize + "落入您囊中。红包将由系统自动发放到您的微信,请注意查收。<br/><br/>  分享给好友参加明天抽奖呦!乖,快去分享吧!大奖可能就在明天~~"
+	} else if (i > 279 && i < 311) || (i > 94 && i < 121) {
 		//时间判断,提醒不同
 		//now := time.Now()
 		//不在工作时间
@@ -367,18 +366,18 @@ func (a *Activemanage) Getluckdraw() error {
 		//
 		//	msg = "  小主是真真的好运气," + s_prize + "落入您囊中!<br/>  请在微信留下您的联系方式(手机号或qq号),企明星客服会在下一个工作日9:00-17:00给小主回复哦!<br/>  小主翻个牌子,动动小手分享活动,么么哒……(分享点击页面右上方···分享到朋友圈)"
 		//} else { //在工作时间
-		msg = "  小主是真真的好运气," + s_prize + "落入您囊中。请将您的联系方式和邮寄地址留言给企明星。我们会在活动截止后尽快为您发出。<br/><br/>  分享至朋友圈或好友即可以获得明天抽奖资格呦!乖,快去分享吧!大奖可能就在明天~~"
+		msg = "  小主是真真的好运气," + s_prize + "落入您囊中。请将您的联系方式和邮寄地址留言给企明星。我们会在活动截止后尽快为您发出。<br/><br/>  分享给好友参加明天抽奖呦!乖,快去分享吧!大奖可能就在明天~~"
 		//}
 	} else if i > 139 && i < 176 {
 		obid := a.GetSession("userId").(string)
 		b := credit.UpuserCreditSession(obid, "b6", "B", nil, a.Action)
 		if b == true {
-			msg = "  小主是真真的好运气,200积分落入您囊中。积分将由系统自动发放到您的企明星账户,请登录www.qmx.top查看。<br/><br/>  分享至朋友圈或好友即可以获得明天抽奖资格呦!乖,快去分享吧!大奖可能就在明天~~"
+			msg = "  小主是真真的好运气,200积分落入您囊中。积分将由系统自动发放到您的企明星账户,请登录www.qmx.top查看。<br/><br/>  分享给好友参加明天抽奖呦!乖,快去分享吧!大奖可能就在明天~~"
 		} else {
 			msg = "  抽奖出错!小主不要桑心,联系企明星管理员,200积分还是您的!"
 		}
 	} else { //不中奖
-		msg = "  小主不要桑心,这次没有中奖哦,明天记得要来拼运气啊!<br/><br/>  分享至朋友圈或好友即可以获得明天抽奖资格呦!乖,快去分享吧!大奖可能就在明天~~"
+		msg = "  小主不要桑心,这次没有中奖哦,明天记得要来拼运气啊!<br/><br/>  分享给好友参加明天抽奖呦!乖,快去分享吧!大奖可能就在明天~~"
 	}
 	return a.Write(`{"flog":"` + flog + `","msg":"` + msg + `","rotate":` + strconv.Itoa(int(i)) + `}`)
 
@@ -406,24 +405,24 @@ func getLuckDraw() int {
 		amount := min + rand.New(rand.NewSource(time.Now().UnixNano())).Intn(max-min)
 		if amount <= 0 {
 			return 1
-		} else if amount > 274 && amount < 311 {
-			count := Count("winningrecord", "{'s_prize':'《牛奶可乐经济学》'}")
-			if count > 6 {
-				amount = 245
-			}
-		} else if amount > 94 && amount < 131 {
+		} else if amount > 279 && amount < 311 {
+			//count := Count("winningrecord", "{'s_prize':'《牛奶可乐经济学》'}")
+			//if count > 6 {
+			amount = 245
+			//}
+		} else if amount > 94 && amount < 121 {
 			count := Count("winningrecord", "{'s_prize':'限量版U盘'}")
 			if count > 100 {
 				amount = 255
 			}
-		} else if amount > 184 && amount < 221 {
+		} else if amount > 189 && amount < 221 {
 			count := Count("winningrecord", "{'s_prize':'五元现金红包'}")
-			if count > 200 {
+			if count > 250 {
 				amount = 65
 			}
-		} else if amount > 319 && amount < 356 {
+		} else if amount > 324 && amount < 356 {
 			count := Count("winningrecord", "{'s_prize':'一元现金红包'}")
-			if count > 2500 {
+			if count > 3100 {
 				amount = 75
 			}
 		}

+ 29 - 4
core/src/qfw/coreconfig/MessageConfig_test.go

@@ -16,7 +16,7 @@ func TestGetMessage(t *testing.T) {
 }
 
 var tList *list.List
-var times int
+var times int64
 
 func listFun() {
 	times++
@@ -26,9 +26,10 @@ func listFun() {
 }
 
 func TestList(t *testing.T) {
+	log.Println(time.Now().Hour())
 	tList = list.New()
-	for tList.Len() < 3000 {
-		tList.PushBack(0)
+	for tList.Len() < 1000 {
+		tList.PushBack(int64(0))
 	}
 	go listFun()
 
@@ -48,10 +49,13 @@ func TestList(t *testing.T) {
 	go func() {
 		for {
 			log.Print("\n----------")
+			/**
 			for e := tList.Front(); e != nil; e = e.Next() {
 				log.Print(e.Value, "  ")
 			}
-			log.Print("\n----------")
+			**/
+			v, b := getValFromList(999)
+			log.Print("\n----------", v, b)
 			time.Sleep(5 * time.Second)
 		}
 	}()
@@ -59,3 +63,24 @@ func TestList(t *testing.T) {
 	b := make(chan bool, 1)
 	<-b
 }
+func getValFromList(n int) (val int, flag bool) {
+
+	B := tList.Back()
+	Bn := B.Value.(int64)
+	ti := 1
+	n = n - 1
+	A := B.Prev()
+	flag = true
+	for ti < n {
+		if A != nil {
+			ti++
+			A = A.Prev()
+		} else {
+			flag = false
+			break
+		}
+	}
+	val = int(Bn - A.Value.(int64))
+
+	return
+}

+ 69 - 51
core/src/qfw/coreutil/weixinrpc.go

@@ -20,75 +20,93 @@ func init() {
 
 //微信远程调用,实现模板发送消息
 func SendManagerNotifyMsg(p *qrpc.NotifyMsg) {
-	client, err := rpc.DialHTTP("tcp", rpcserver)
-	if err != nil {
-		log.Println(err.Error())
-		return
-	}
-	var repl qrpc.RpcResult
-	err = client.Call("WeiXinRpc.SendManagerNotifyMsg", p, &repl)
-	if err != nil {
-		log.Println(err.Error())
-	}
+	util.Try(func() {
+		client, err := rpc.DialHTTP("tcp", rpcserver)
+		defer client.Close()
+		if err != nil {
+			log.Println(err.Error())
+			return
+		}
+		var repl qrpc.RpcResult
+		err = client.Call("WeiXinRpc.SendManagerNotifyMsg", p, &repl)
+		if err != nil {
+			log.Println(err.Error())
+		}
+	}, func(e interface{}) {})
+
 }
 
 //微信远程调用,实现模板发送消息
 func SendIdentifyTplMsg(p *qrpc.NotifyMsg) {
-	//gob.Register(map[string]interface{}{})
-	client, err := rpc.DialHTTP("tcp", rpcserver)
-	if err != nil {
-		log.Println(err.Error())
-		return
-	}
-	var repl qrpc.RpcResult
-	err = client.Call("WeiXinRpc.SendIdentifyTplMsg", p, &repl)
-	if err != nil {
-		log.Println(err.Error())
-	}
+	util.Try(func() {
+		//gob.Register(map[string]interface{}{})
+		client, err := rpc.DialHTTP("tcp", rpcserver)
+		defer client.Close()
+		if err != nil {
+			log.Println(err.Error())
+			return
+		}
+		var repl qrpc.RpcResult
+		err = client.Call("WeiXinRpc.SendIdentifyTplMsg", p, &repl)
+		if err != nil {
+			log.Println(err.Error())
+		}
+	}, func(e interface{}) {})
 }
 
 //微信远程调用,实现模板发送消息
 func PayBonus(p *qrpc.BonusMsg) bool {
-	//gob.Register(map[string]interface{}{})
-	client, err := rpc.DialHTTP("tcp", rpcserver)
-	if err != nil {
-		log.Println(err.Error())
-		return false
-	}
-	var repl qrpc.RpcResult
-	err = client.Call("WeiXinRpc.PayBonus", p, &repl)
-	if err != nil {
-		log.Println(err.Error())
-	}
-	return repl == "SUCCESS"
+	b := false
+	util.Try(func() {
+		//gob.Register(map[string]interface{}{})
+		client, err := rpc.DialHTTP("tcp", rpcserver)
+		defer client.Close()
+		if err != nil {
+			log.Println(err.Error())
+			return
+		}
+		var repl qrpc.RpcResult
+		err = client.Call("WeiXinRpc.PayBonus", p, &repl)
+		if err != nil {
+			log.Println(err.Error())
+		}
+		b = (repl == "SUCCESS")
+	}, func(e interface{}) {})
+	return b
 }
 
 //取得JS接口参数
 func GetJSInterfaceParam(url string) []string {
 	var ret []string
-	client, err := rpc.DialHTTP("tcp", rpcserver)
-	if err != nil {
-		log.Println(err.Error())
-		return ret
-	}
-	err = client.Call("WeiXinRpc.GetJSInterfaceParam", url, &ret)
-	if err != nil {
-		log.Println(err.Error())
-	}
+	util.Try(func() {
+		client, err := rpc.DialHTTP("tcp", rpcserver)
+		defer client.Close()
+		if err != nil {
+			log.Println(err.Error())
+			return
+		}
+		err = client.Call("WeiXinRpc.GetJSInterfaceParam", url, &ret)
+		if err != nil {
+			log.Println(err.Error())
+		}
+	}, func(e interface{}) {})
 	return ret
 }
 
 //
 func GetShareQR(url uint32) string {
 	var ret string
-	client, err := rpc.DialHTTP("tcp", rpcserver)
-	if err != nil {
-		log.Println(err.Error())
-		return ret
-	}
-	err = client.Call("WeiXinRpc.GetShareQR", url, &ret)
-	if err != nil {
-		log.Println(err.Error())
-	}
+	util.Try(func() {
+		client, err := rpc.DialHTTP("tcp", rpcserver)
+		defer client.Close()
+		if err != nil {
+			log.Println(err.Error())
+			return
+		}
+		err = client.Call("WeiXinRpc.GetShareQR", url, &ret)
+		if err != nil {
+			log.Println(err.Error())
+		}
+	}, func(e interface{}) {})
 	return ret
 }

+ 1 - 1
core/src/timetask.json

@@ -1 +1 @@
-{"comment":{"c_rate":720,"commentrate":900},"market":{"demand":{"attr":["i_hits","i_bids","i_status"],"timepoint":"2016-01-29 16:14:37"},"service":{"attr":["i_hits","i_sales","i_comments","i_score","i_appcounts"],"timepoint":"2016-01-29 16:14:37"}},"marketisstart":true,"marketrate":300}
+{"comment":{"c_rate":720,"commentrate":900},"market":{"demand":{"attr":["i_hits","i_bids","i_status"],"timepoint":"2016-02-01 14:22:18"},"service":{"attr":["i_hits","i_sales","i_comments","i_score","i_appcounts"],"timepoint":"2016-02-01 14:22:18"}},"marketisstart":true,"marketrate":300}

+ 1 - 1
core/src/web/templates/active/luckdraw.html

@@ -66,7 +66,7 @@
 <h3 style="font-weight:600;">活动规则</h3>
 <p>1、企明星所有粉丝用户均可以参与幸运抽奖;</p>
 <p>2、每位用户每天有一次抽奖机会;</p>
-<p>3、活动页面转发分享后获得第二天的抽奖资格;</p>
+<p>3、活动页面转发分享给朋友参加第二天的抽奖;</p>
 <p>4、中奖用户请通过企明星微信与客服联系,告知联系方式;</p>
 <p>5、活动时间截止到2016年2月15日;</p>
 <p>6、iPadmini、书籍和U盘会在活动截止后统一邮寄发出。请注意查收。</p>

+ 1 - 1
core/src/web/templates/yellowpage/enterpriseinfo.html

@@ -124,7 +124,7 @@
 			<div class="entinfo-basicinfo ent-layout-up">
 				<div class="b-com-title">
 					<span class="glyphicon jianzhu"></span>基本信息
-					<font>(来源:<a href="http://gsxt.saic.gov.cn/" rel="nofollow">全国企业信用信息公示系统</a>)</font>
+					<font>(来源:<a href="http://gsxt.saic.gov.cn/" rel="nofollow" class="font-size-12">全国企业信用信息公示系统</a>)</font>
 				</div>
 				<div class="b-com-content">
 					<div class="entinfo-round">