fix outer raven
This commit is contained in:
parent
759a138d06
commit
739cc1dd11
|
@ -62,13 +62,15 @@ type CreateOrderReq struct {
|
||||||
WechatAuthCode string `json:"wechat_auth_code"` // 微信auth_code
|
WechatAuthCode string `json:"wechat_auth_code"` // 微信auth_code
|
||||||
RedirectUrl string `json:"redirect_url"` // redirect_url
|
RedirectUrl string `json:"redirect_url"` // redirect_url
|
||||||
Mid1 int64 `json:"mid"`
|
Mid1 int64 `json:"mid"`
|
||||||
|
ReturnUrl string `json:"return_url"`
|
||||||
|
RavenQid int64 `json:"raven_qid"` // 瑞文测试id
|
||||||
|
RavenCallback string `json:"raven_callback"` // 瑞文测试回调数据
|
||||||
|
|
||||||
CalcPrice int64 // 计算价格
|
CalcPrice int64 // 计算价格
|
||||||
Uid int64 // 关联mid
|
Uid int64 // 关联mid
|
||||||
Oid1 string
|
Oid1 string
|
||||||
Oid2 string
|
Oid2 string
|
||||||
Oid3 string
|
Oid3 string
|
||||||
ReturnUrl string
|
|
||||||
}
|
}
|
||||||
|
|
||||||
type CreateOrderData struct {
|
type CreateOrderData struct {
|
||||||
|
|
|
@ -126,7 +126,7 @@ func CreateOrderOuter(ctx *gin.Context) {
|
||||||
}
|
}
|
||||||
req.Mid = 100000001
|
req.Mid = 100000001
|
||||||
|
|
||||||
data, ec, err := service.DefaultService.CreateOrder(ctx, req)
|
data, ec, err := service.DefaultService.CreateOrderOuter(ctx, req)
|
||||||
if ec != errcode.ErrCodeVasSrvOk {
|
if ec != errcode.ErrCodeVasSrvOk {
|
||||||
logger.Error("CreateOrder fail, req: %v, ec: %v", util.ToJson(req), ec)
|
logger.Error("CreateOrder fail, req: %v, ec: %v", util.ToJson(req), ec)
|
||||||
if ec == errcode.ErrCodeVasSrvFail && err != nil {
|
if ec == errcode.ErrCodeVasSrvFail && err != nil {
|
||||||
|
|
|
@ -1,14 +1,18 @@
|
||||||
package logic
|
package logic
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"bytes"
|
||||||
"crypto/rand"
|
"crypto/rand"
|
||||||
"crypto/rsa"
|
"crypto/rsa"
|
||||||
"crypto/x509"
|
"crypto/x509"
|
||||||
"database/sql"
|
"database/sql"
|
||||||
"encoding/base64"
|
"encoding/base64"
|
||||||
|
"encoding/json"
|
||||||
"encoding/pem"
|
"encoding/pem"
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"io/ioutil"
|
||||||
|
"net/http"
|
||||||
"service/api/base"
|
"service/api/base"
|
||||||
"service/api/errs"
|
"service/api/errs"
|
||||||
"service/api/message/response"
|
"service/api/message/response"
|
||||||
|
@ -207,6 +211,9 @@ func (v *Vas) CreateOrder(ctx *gin.Context, req *vasproto.CreateOrderReq) (data
|
||||||
// 邀请人
|
// 邀请人
|
||||||
case dbstruct.ProductIdMembership:
|
case dbstruct.ProductIdMembership:
|
||||||
req.Uid, _ = v.account.GetInviterMid(ctx, req.Mid)
|
req.Uid, _ = v.account.GetInviterMid(ctx, req.Mid)
|
||||||
|
case dbstruct.ProductIdOuterRaven:
|
||||||
|
req.Oid1 = fmt.Sprintf("%d", req.RavenQid)
|
||||||
|
req.Oid2 = req.RavenCallback
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取商品
|
// 获取商品
|
||||||
|
@ -1654,6 +1661,9 @@ func (v *Vas) PayCallback(ctx *gin.Context, p *vasproto.PayCallbackParamIn) erro
|
||||||
logger.Error("UnlockZoneSuperfanship fail, order: %v, err: %v", util.ToJson(order), err)
|
logger.Error("UnlockZoneSuperfanship fail, order: %v, err: %v", util.ToJson(order), err)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
case product.Id == dbstruct.ProductIdOuterRaven:
|
||||||
|
notifyRavenDY(order.GetOid2())
|
||||||
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// 是否达到铁粉解锁条件
|
// 是否达到铁粉解锁条件
|
||||||
|
@ -1665,6 +1675,35 @@ func (v *Vas) PayCallback(ctx *gin.Context, p *vasproto.PayCallbackParamIn) erro
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func notifyRavenDY(callback string) {
|
||||||
|
url := "https://analytics.oceanengine.com/api/v2/conversion"
|
||||||
|
req := map[string]interface{}{
|
||||||
|
"event_type": "successful_pay",
|
||||||
|
"context": map[string]interface{}{
|
||||||
|
"ad": map[string]interface{}{
|
||||||
|
"callback": callback,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
"timestamp": time.Now().UnixMilli(),
|
||||||
|
}
|
||||||
|
reqBs, _ := json.Marshal(req)
|
||||||
|
resp, err := http.Post(url, "application/json", bytes.NewReader(reqBs))
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("%v fail, req: %v, err: %v", url, string(reqBs), err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
defer resp.Body.Close()
|
||||||
|
|
||||||
|
// 读取响应内容
|
||||||
|
body, err := ioutil.ReadAll(resp.Body)
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("%v read fail, req: %v, body: %v, err: %v", url, string(reqBs), string(body), err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
logger.Info("notifyRavenDY ok, req: %v, resp: %v", string(reqBs), string(body))
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (v *Vas) GetCoinOrderById(ctx *gin.Context, id string) (*dbstruct.CoinOrder, error) {
|
func (v *Vas) GetCoinOrderById(ctx *gin.Context, id string) (*dbstruct.CoinOrder, error) {
|
||||||
return v.store.GetCoinOrderById(ctx, nil, id)
|
return v.store.GetCoinOrderById(ctx, nil, id)
|
||||||
}
|
}
|
||||||
|
|
|
@ -1138,6 +1138,16 @@ func (s *Service) CreateOrder(ctx *gin.Context, req *vasproto.CreateOrderReq) (d
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (s *Service) CreateOrderOuter(ctx *gin.Context, req *vasproto.CreateOrderReq) (data *vasproto.CreateOrderData, ec errcode.ErrCode, err error) {
|
||||||
|
data, err = _DefaultVas.CreateOrder(ctx, req)
|
||||||
|
ec, err = errs.DealVasErr(err)
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("CreateOrder fail, err: %v", err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (s *Service) OpCreateOrder(ctx *gin.Context, req *vasproto.OpCreateOrderReq) (ec errcode.ErrCode) {
|
func (s *Service) OpCreateOrder(ctx *gin.Context, req *vasproto.OpCreateOrderReq) (ec errcode.ErrCode) {
|
||||||
err := _DefaultVas.OpCreateOrder(ctx, req)
|
err := _DefaultVas.OpCreateOrder(ctx, req)
|
||||||
ec, err = errs.DealVasErr(err)
|
ec, err = errs.DealVasErr(err)
|
||||||
|
|
Loading…
Reference in New Issue