fix:
This commit is contained in:
parent
00c1972fb5
commit
24b6a4a6d4
|
@ -550,6 +550,7 @@ func GetGameCardSearch(name string, page, pageSize int, storeId uint32) ([]GameC
|
||||||
logger.Error("err:", err)
|
logger.Error("err:", err)
|
||||||
return cards, 0, err
|
return cards, 0, err
|
||||||
}
|
}
|
||||||
|
|
||||||
cardMap := make(map[uint32]GameCard, 0)
|
cardMap := make(map[uint32]GameCard, 0)
|
||||||
cardIds := make([]uint64, 0, len(cards))
|
cardIds := make([]uint64, 0, len(cards))
|
||||||
for i, _ := range cards {
|
for i, _ := range cards {
|
||||||
|
@ -597,11 +598,12 @@ func GetGameCardSearch(name string, page, pageSize int, storeId uint32) ([]GameC
|
||||||
if cardCount.Count%uint32(pageSize) == 0 {
|
if cardCount.Count%uint32(pageSize) == 0 {
|
||||||
totalPage = cardCount.Count / uint32(pageSize)
|
totalPage = cardCount.Count / uint32(pageSize)
|
||||||
}
|
}
|
||||||
|
if len(list) != 0 {
|
||||||
if uint32(page) < totalPage-1 && totalPage != 1 {
|
if uint32(page) < totalPage-1 && totalPage != 1 {
|
||||||
cards = list[page*pageSize : (page+1)*pageSize]
|
cards = list[page*pageSize : (page+1)*pageSize]
|
||||||
} else {
|
} else {
|
||||||
cards = list[page*pageSize:]
|
cards = list[page*pageSize:]
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return cards, totalPage, nil
|
return cards, totalPage, nil
|
||||||
|
|
|
@ -8,6 +8,7 @@ import (
|
||||||
"fmt"
|
"fmt"
|
||||||
"mh-server/lib/auth"
|
"mh-server/lib/auth"
|
||||||
"mh-server/lib/utils"
|
"mh-server/lib/utils"
|
||||||
|
"mh-server/lib/wxpay"
|
||||||
"mh-server/lib/xianmai"
|
"mh-server/lib/xianmai"
|
||||||
"os"
|
"os"
|
||||||
"sort"
|
"sort"
|
||||||
|
@ -1731,3 +1732,149 @@ func TestCreateAccessToken(t *testing.T) {
|
||||||
}
|
}
|
||||||
fmt.Println("token:", token)
|
fmt.Println("token:", token)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestPushWXPayNotice(t *testing.T) {
|
||||||
|
InitDBProd()
|
||||||
|
DB = DBProd
|
||||||
|
PushWXPayNoticeInfo()
|
||||||
|
}
|
||||||
|
|
||||||
|
func PushWXPayNoticeInfo() {
|
||||||
|
fmt.Println("微信推送支付通知")
|
||||||
|
//body, err := ioutil.ReadAll(c.Request.Body)
|
||||||
|
//if err != nil {
|
||||||
|
// logger.Error(err)
|
||||||
|
//}
|
||||||
|
|
||||||
|
//logger.Error("xml Request.Body1:", string(body))
|
||||||
|
var notifyInfo wxpay.WechatNotifyInfo
|
||||||
|
notifyInfo.OutTradeNo = "82EE941414"
|
||||||
|
notifyInfo.Attach = wxpay.WxPayPostagePackage
|
||||||
|
//if err := c.ShouldBindXML(¬ify); err != nil {
|
||||||
|
// logger.Error(err)
|
||||||
|
// RespBodyXML(c, map[string]string{
|
||||||
|
// "return_code": "FAIL",
|
||||||
|
// })
|
||||||
|
// return
|
||||||
|
//}
|
||||||
|
|
||||||
|
//err = xml.Unmarshal(body, ¬ifyInfo)
|
||||||
|
//if err != nil {
|
||||||
|
// logger.Error(err)
|
||||||
|
//}
|
||||||
|
//ret := WXPayNoticeResp{
|
||||||
|
// ReturnCode: "FAIL",
|
||||||
|
//}
|
||||||
|
//correctSign, err := PayCallBackHandle(notifyInfo, config.AppConfig.WxMchSecret)
|
||||||
|
//if err != nil {
|
||||||
|
// logger.Error("PushWXPayNotice sign create fail")
|
||||||
|
// return
|
||||||
|
//}
|
||||||
|
//if notifyInfo.Sign != correctSign {
|
||||||
|
// logger.Error("PushWXPayNotice sign verification fail")
|
||||||
|
// return
|
||||||
|
//}
|
||||||
|
fundRecord := new(FundRecord)
|
||||||
|
|
||||||
|
if notifyInfo.Attach == wxpay.WxPayPostagePackage {
|
||||||
|
record := &UserOpenMemberRecord{OpenNo: notifyInfo.OutTradeNo}
|
||||||
|
err := record.GetByOpenNo()
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("err:", err)
|
||||||
|
}
|
||||||
|
if record.State == 2 {
|
||||||
|
//ret.ReturnCode = "SUCCESS"
|
||||||
|
logger.Error("State err")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
var activity Activity
|
||||||
|
err = NewActivityQuerySet(DB).IDEq(3).One(&activity)
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("coupon err:", err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
var coupon Coupon
|
||||||
|
err = NewCouponQuerySet(DB).ActivityTypeEq(activity.ActivityType).One(&coupon)
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("coupon err:", err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
defer func() {
|
||||||
|
if err := recover(); err != nil {
|
||||||
|
logger.Error("err:", err)
|
||||||
|
}
|
||||||
|
}()
|
||||||
|
|
||||||
|
//days := (info.PostagePackageFee * 365) / originalMemberConfig.MemberFee
|
||||||
|
user := GetUserByUid(record.Uid)
|
||||||
|
days := GetPostagePackageMemberDuration(user.MemberLevel)
|
||||||
|
durationRecord := &UserMemberDurationRecord{
|
||||||
|
Uid: record.Uid,
|
||||||
|
Duration: days,
|
||||||
|
EventType: 1,
|
||||||
|
MemberLevel: record.MemberLevel,
|
||||||
|
}
|
||||||
|
nowTime := time.Now()
|
||||||
|
|
||||||
|
//go func() {
|
||||||
|
begin := DB.Begin()
|
||||||
|
for i := 0; i < 10; i++ {
|
||||||
|
userCoupon := &UserCoupon{
|
||||||
|
Uid: record.Uid,
|
||||||
|
CouponId: coupon.ID,
|
||||||
|
CouponType: coupon.CouponType,
|
||||||
|
ActivityType: activity.ActivityType,
|
||||||
|
ActivityId: activity.ID,
|
||||||
|
Value: coupon.Value,
|
||||||
|
State: 1,
|
||||||
|
ActiveStart: nowTime,
|
||||||
|
ActiveEnd: nowTime.AddDate(10, 0, 0),
|
||||||
|
MemberLevel: record.MemberLevel,
|
||||||
|
}
|
||||||
|
err = begin.Create(userCoupon).Error
|
||||||
|
if err != nil {
|
||||||
|
begin.Rollback()
|
||||||
|
logger.Error("user coupon err:", err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
memberExpire := user.MemberExpire.AddDate(0, 0, int(days))
|
||||||
|
err = NewUserQuerySet(begin).UidEq(record.Uid).GetUpdater().SetMemberExpire(memberExpire).Update()
|
||||||
|
if err != nil {
|
||||||
|
begin.Rollback()
|
||||||
|
logger.Error("update member expire err:", err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
err = begin.Create(durationRecord).Error
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("create duration record err:", err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
err = begin.Commit().Error
|
||||||
|
if err != nil {
|
||||||
|
begin.Rollback()
|
||||||
|
logger.Error("commit err:", err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
//}()
|
||||||
|
|
||||||
|
fundRecord.Uid = uint32(record.Uid)
|
||||||
|
fundRecord.FundType = FundTypePostagePackageFee
|
||||||
|
fundRecord.Remark = "购买运费包"
|
||||||
|
}
|
||||||
|
|
||||||
|
fundRecord.Amount = int64(notifyInfo.TotalFee)
|
||||||
|
fundRecord.TransactionId = notifyInfo.TransactionId
|
||||||
|
fundRecord.OutTradeNo = notifyInfo.OutTradeNo
|
||||||
|
fundRecord.Status = 2
|
||||||
|
err := DB.Create(&fundRecord).Error
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("create fund record err:", err)
|
||||||
|
}
|
||||||
|
logger.Debug("微信推动支付通知")
|
||||||
|
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user