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)
|
||||
return cards, 0, err
|
||||
}
|
||||
|
||||
cardMap := make(map[uint32]GameCard, 0)
|
||||
cardIds := make([]uint64, 0, len(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 {
|
||||
totalPage = cardCount.Count / uint32(pageSize)
|
||||
}
|
||||
|
||||
if uint32(page) < totalPage-1 && totalPage != 1 {
|
||||
cards = list[page*pageSize : (page+1)*pageSize]
|
||||
} else {
|
||||
cards = list[page*pageSize:]
|
||||
if len(list) != 0 {
|
||||
if uint32(page) < totalPage-1 && totalPage != 1 {
|
||||
cards = list[page*pageSize : (page+1)*pageSize]
|
||||
} else {
|
||||
cards = list[page*pageSize:]
|
||||
}
|
||||
}
|
||||
|
||||
return cards, totalPage, nil
|
||||
|
|
|
@ -8,6 +8,7 @@ import (
|
|||
"fmt"
|
||||
"mh-server/lib/auth"
|
||||
"mh-server/lib/utils"
|
||||
"mh-server/lib/wxpay"
|
||||
"mh-server/lib/xianmai"
|
||||
"os"
|
||||
"sort"
|
||||
|
@ -1731,3 +1732,149 @@ func TestCreateAccessToken(t *testing.T) {
|
|||
}
|
||||
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