|
@@ -6,11 +6,14 @@ package active
|
|
|
import (
|
|
|
"fmt"
|
|
|
"github.com/go-xweb/xweb"
|
|
|
+ "gopkg.in/mgo.v2/bson"
|
|
|
"math/rand"
|
|
|
. "qfw/coreconfig"
|
|
|
+ "qfw/coreutil"
|
|
|
mob "qfw/mobile"
|
|
|
. "qfw/util"
|
|
|
. "qfw/util/mongodb"
|
|
|
+ qrpc "qfw/util/rpc"
|
|
|
"strconv"
|
|
|
"time"
|
|
|
)
|
|
@@ -26,13 +29,24 @@ func (a *Activemanage) Luckdraw(activecode, id string) error {
|
|
|
if activecode == "topcj" {
|
|
|
se := SimpleEncrypt{Key: "topnet2015topnet2015"}
|
|
|
openid := se.DecodeString(id)
|
|
|
+ f := FindOne("user", "{'s_m_openid':'"+openid+"'}")
|
|
|
+ username := (*f)["s_bindweixin"]
|
|
|
+ userid := (*f)["_id"]
|
|
|
+ if *f == nil {
|
|
|
+ a.T["flog"] = "B"
|
|
|
+ a.T["msg"] = "您的微信号无效!!"
|
|
|
+ return a.Render("/active/luckdraw.html", &a.T)
|
|
|
+ }
|
|
|
a.T["signature"] = mob.GetSignature(a.Url())
|
|
|
u := FindOne("winningrecord", "{'s_openid':'"+openid+"'}")
|
|
|
if *u != nil {
|
|
|
//a.T = *u
|
|
|
a.T["flog"] = "A"
|
|
|
+ a.T["msg"] = "小主莫贪心,每人只有一次抽奖机会呦!<br/><br/> 小主翻个牌子,动动小手分享活动,么么哒……(分享点击页面右上方···分享到朋友圈)"
|
|
|
return a.Render("/active/luckdraw.html", &a.T)
|
|
|
}
|
|
|
+ a.SetSession("username", username)
|
|
|
+ a.SetSession("userid", userid)
|
|
|
a.SetSession("openid", openid)
|
|
|
a.SetSession("s_actcode", activecode)
|
|
|
return a.Render("/active/luckdraw.html", &a.T)
|
|
@@ -44,22 +58,28 @@ func (a *Activemanage) Luckdraw(activecode, id string) error {
|
|
|
//
|
|
|
func (a *Activemanage) Getluckdraw() error {
|
|
|
flog := "F"
|
|
|
+ //提示语
|
|
|
+ msg := ""
|
|
|
id := ""
|
|
|
+ today := time.Now()
|
|
|
openid := a.GetSession("openid").(string)
|
|
|
s_actcode := a.GetSession("s_actcode").(string)
|
|
|
if openid == "" {
|
|
|
- return a.Write(`{"flog":"` + flog + `"}`)
|
|
|
+ msg = " 小主你太长时间没点击开始抽奖了,重新进来吧!"
|
|
|
+ return a.Write(`{"flog":"` + flog + `","msg":"` + msg + `"}`)
|
|
|
} else {
|
|
|
u := FindOne("winningrecord", "{'s_openid':'"+openid+"'}")
|
|
|
if *u != nil {
|
|
|
flog = "A"
|
|
|
- return a.Write(`{"flog":"` + flog + `"}`)
|
|
|
+ msg = " 小主莫贪心,每人只有一次抽奖机会呦!<br/><br/> 小主翻个牌子,动动小手分享活动,么么哒……(分享点击页面右上方···分享到朋友圈)"
|
|
|
+ return a.Write(`{"flog":"` + flog + `","msg":"` + msg + `"}`)
|
|
|
}
|
|
|
}
|
|
|
data := make(map[string]interface{})
|
|
|
data["s_openid"] = openid
|
|
|
data["s_actcode"] = s_actcode
|
|
|
i := getLuckDraw()
|
|
|
+
|
|
|
s_prize := getPrize(i)
|
|
|
data["s_prize"] = s_prize
|
|
|
data["l_timestamp"] = time.Now().Unix()
|
|
@@ -67,12 +87,54 @@ func (a *Activemanage) Getluckdraw() error {
|
|
|
enddate := LuckDraw.EndDate
|
|
|
if nowdate < enddate {
|
|
|
id = Save("winningrecord", data)
|
|
|
- fmt.Println("nowdate:", nowdate, "enddate:", enddate, len(id))
|
|
|
}
|
|
|
if len(id) > 0 {
|
|
|
flog = "T"
|
|
|
}
|
|
|
- return a.Write(`{"flog":"` + flog + `","prize":"` + s_prize + `","rotate":` + strconv.Itoa(int(i)) + `}`)
|
|
|
+ if i > 185 && i < 220 {
|
|
|
+ amount := 500 //红包金额以“元”为单位,微信红包以“分”为单位
|
|
|
+ bm := qrpc.BonusMsg{Mchbillno: fmt.Sprint(today.Unix()),
|
|
|
+ Sendname: LuckDraw.Weixin["sendname"].(string),
|
|
|
+ Reopenid: openid,
|
|
|
+ Totalamount: amount,
|
|
|
+ Totalnum: 1,
|
|
|
+ Wishing: "企明星新年大抽奖",
|
|
|
+ Actname: "企明星新年大抽奖",
|
|
|
+ Remark: "欢迎参加企明星新年大抽奖活动!",
|
|
|
+ }
|
|
|
+ if coreutil.PayBonus(&bm) {
|
|
|
+ redpackage := make(bson.M)
|
|
|
+ redpackage["s_userid"] = a.GetSession("userid")
|
|
|
+ redpackage["s_username"] = a.GetSession("username")
|
|
|
+ redpackage["s_openid"] = openid
|
|
|
+ redpackage["i_amount"] = amount
|
|
|
+ redpackage["s_billno"] = bm.Mchbillno
|
|
|
+ redpackage["s_name"] = bm.Actname
|
|
|
+ redpackage["l_createdate"] = today.Unix()
|
|
|
+ redpackage["i_year"] = today.Year()
|
|
|
+ redpackage["i_month"] = today.Month()
|
|
|
+ redpackage["i_day"] = today.Day()
|
|
|
+ redpackage["s_actcode"] = s_actcode
|
|
|
+ Save("redpackage", redpackage)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if i > 185 && i < 220 {
|
|
|
+ msg = " 小主是真真的好运气,五元现金红包落入您囊中!<br/><br/> 小主翻个牌子,动动小手分享活动,么么哒……(分享点击页面右上方···分享到朋友圈)"
|
|
|
+ } else if (i > 275 && i < 310) || (i > 95 && i < 130) {
|
|
|
+ //时间判断,提醒不同
|
|
|
+ now := time.Now()
|
|
|
+ //不在工作时间
|
|
|
+ if now.Weekday() == 6 || now.Weekday() == 0 || (now.Hour() > 18 || now.Hour() < 9) {
|
|
|
+ //
|
|
|
+ msg = " 小主是真真的好运气," + s_prize + "落入您囊中!<br/> 请在微信留下您的联系方式(手机号或qq号),企明星客服会在下一个工作日9:00-17:00给小主回复哦!<br/> 小主翻个牌子,动动小手分享活动,么么哒……(分享点击页面右上方···分享到朋友圈)"
|
|
|
+ } else { //在工作时间
|
|
|
+ msg = " 小主是真真的好运气," + s_prize + "落入您囊中,请速速微信联系企明星确认领奖事宜!<br/><br/> 小主翻个牌子,动动小手分享活动,么么哒……(分享点击页面右上方···分享到朋友圈)"
|
|
|
+ }
|
|
|
+
|
|
|
+ } else { //不中奖
|
|
|
+ msg = " 小主不要桑心,这次没有中奖不代表什么,猴年依然会好运气爆棚滴~~<br/><br/> 小主翻个牌子,动动小手分享活动,么么哒……(分享点击页面右上方···分享到朋友圈)"
|
|
|
+ }
|
|
|
+ return a.Write(`{"flog":"` + flog + `","msg":"` + msg + `","rotate":` + strconv.Itoa(int(i)) + `}`)
|
|
|
|
|
|
}
|
|
|
|