调整回调,奖励领取--(测试领奖-1)
This commit is contained in:
@ -5,7 +5,9 @@ import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"github.com/gogf/gf/v2/database/gdb"
|
||||
"github.com/gogf/gf/v2/os/glog"
|
||||
"github.com/gogf/gf/v2/os/gtime"
|
||||
"github.com/gogf/gf/v2/util/guid"
|
||||
"server/internal/consts"
|
||||
"server/internal/dao"
|
||||
"server/internal/model"
|
||||
@ -369,11 +371,14 @@ func (s *sReward) GetLift(ctx context.Context, in *model.GetRewardIn) (out *mode
|
||||
|
||||
}
|
||||
|
||||
glog.Info(ctx, "调用 tencent开始")
|
||||
activity, err := gamelife.GetGamelifeClient(ctx).RequestActivity(ctx, &model.QQNetbarActivityIn{PopenId: in.PopenId, ServiceName: consts.GetGift, GiftParam: giftParam})
|
||||
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
glog.Info(ctx, "调用 tencent结束")
|
||||
fmt.Print(activity)
|
||||
|
||||
result, ok := activity.(*model.GiftResponse)
|
||||
if !ok {
|
||||
@ -385,6 +390,7 @@ func (s *sReward) GetLift(ctx context.Context, in *model.GetRewardIn) (out *mode
|
||||
}
|
||||
|
||||
// 存储数据库记录
|
||||
var data model.GetRewardOut
|
||||
if err = dao.RewardWaters.Transaction(ctx, func(ctx context.Context, tx gdb.TX) (err error) {
|
||||
for _, item := range result.GiftItem {
|
||||
marshal, err := json.Marshal(item.Water)
|
||||
@ -407,7 +413,7 @@ func (s *sReward) GetLift(ctx context.Context, in *model.GetRewardIn) (out *mode
|
||||
// 根据 result判断
|
||||
if item.Result == 1 {
|
||||
//// 奖励发放成功,修改状态,扣除数量
|
||||
|
||||
glog.Infof(ctx, "奖励发放成功1,修改状态,扣除数量")
|
||||
// 查询当前奖励是否为最后一个, 如果是则更新任务状态为2 完成
|
||||
count, err := dao.UserTaskRewards.Ctx(ctx).Where(do.UserTaskRewards{UserTaskId: in.UserTaskId}).Where(do.UserTaskRewards{Status: 2}).Count()
|
||||
if err != nil {
|
||||
@ -441,6 +447,7 @@ func (s *sReward) GetLift(ctx context.Context, in *model.GetRewardIn) (out *mode
|
||||
}
|
||||
} else if item.Result == 2 || item.Result == 3 {
|
||||
// 发放背包成功,修改状态
|
||||
glog.Infof(ctx, "奖励发放成功2,修改状态")
|
||||
_, err = dao.UserTaskRewards.Ctx(ctx).Data(do.UserTaskRewards{
|
||||
Status: consts.RewardExchangeStatus,
|
||||
}).Where(do.UserTaskRewards{
|
||||
@ -453,8 +460,14 @@ func (s *sReward) GetLift(ctx context.Context, in *model.GetRewardIn) (out *mode
|
||||
}
|
||||
} else if item.Result == 4 {
|
||||
// 奖励领取失败,不做操作,直接返回
|
||||
glog.Infof(ctx, "领取奖励失败")
|
||||
return ecode.Fail.Sub("领取奖励失败")
|
||||
}
|
||||
|
||||
data.List = append(data.List, model.GetRewardNewOut{
|
||||
Result: int64(item.Result),
|
||||
Water: item.Water,
|
||||
})
|
||||
}
|
||||
|
||||
return
|
||||
@ -463,7 +476,9 @@ func (s *sReward) GetLift(ctx context.Context, in *model.GetRewardIn) (out *mode
|
||||
return
|
||||
}
|
||||
|
||||
return nil, err
|
||||
return &model.GetRewardOut{
|
||||
List: data.List,
|
||||
}, err
|
||||
}
|
||||
|
||||
// GetGoodsList 调用外部获取物品列表
|
||||
@ -824,6 +839,7 @@ func (s *sReward) CallBack(ctx context.Context, in *model.RewardCallbackIn) (out
|
||||
Num: in.Num,
|
||||
CustomInfo: in.CustomInfo,
|
||||
AppId: in.AppId,
|
||||
InnerOrderId: fmt.Sprintf("reward%s", guid.S()),
|
||||
})
|
||||
|
||||
if err != nil {
|
||||
|
||||
@ -32,7 +32,8 @@ func (s *sRewardType) Create(ctx context.Context, in *model.RewardTypeCreateIn)
|
||||
}
|
||||
|
||||
data := do.RewardTypes{
|
||||
Name: in.Name,
|
||||
Name: in.Name,
|
||||
Source: in.Source,
|
||||
}
|
||||
|
||||
id, err := dao.RewardTypes.Ctx(ctx).OmitEmptyData().Data(data).InsertAndGetId()
|
||||
|
||||
Reference in New Issue
Block a user