完善数据上报,每日支付任务认证
This commit is contained in:
@@ -6,6 +6,7 @@ import (
|
||||
"github.com/spf13/cast"
|
||||
"github.com/zeromicro/go-zero/core/logx"
|
||||
"nova_task/internal/model"
|
||||
"nova_task/internal/pkg/aptos"
|
||||
"nova_task/internal/pkg/errs"
|
||||
"nova_task/internal/svc"
|
||||
"nova_task/internal/types"
|
||||
@@ -74,6 +75,10 @@ func (l *VerifyTaskResultLogic) VerifyTaskResult(req *types.VerifyTaskResultReq)
|
||||
case model.TASKTYPE_DAILY_PAY:
|
||||
if req.Params == "" {
|
||||
return &types.VerifyTaskResultResp{Finish: false}, nil
|
||||
} else {
|
||||
if !l.checkoutTranscation(uid, req.Params) {
|
||||
return &types.VerifyTaskResultResp{Finish: false}, nil
|
||||
}
|
||||
}
|
||||
default:
|
||||
}
|
||||
@@ -92,3 +97,17 @@ func (l *VerifyTaskResultLogic) VerifyTaskResult(req *types.VerifyTaskResultReq)
|
||||
|
||||
return &types.VerifyTaskResultResp{Finish: true}, nil
|
||||
}
|
||||
|
||||
func (l *VerifyTaskResultLogic) checkoutTranscation(uid int, txHash string) bool {
|
||||
address, err := aptos.GetTransactionOwnerAddress(l.svcCtx.Config.DailyPay.Contract, txHash, l.svcCtx.Config.DailyPay.Network)
|
||||
if err != nil {
|
||||
l.Errorw("get transaction owner address error", logx.Field("err", err))
|
||||
return false
|
||||
}
|
||||
targetUid, err := l.svcCtx.WalletModel.FindWalletByAddress(l.ctx, address, aptos.StrPadAptosAddress(address))
|
||||
if err != nil {
|
||||
l.Errorw("find wallet by address error", logx.Field("err", err), logx.Field("address", address), logx.Field("target_uid", targetUid))
|
||||
return false
|
||||
}
|
||||
return targetUid == uint(uid)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user