diff --git a/route/charge_r/charge.go b/route/charge_r/charge.go index 7b6b100d79dff9999a4935b7424ca6e2000e2f2a..94119ccd62b7cac767ffa8910f2cf6e17d35ca1b 100644 --- a/route/charge_r/charge.go +++ b/route/charge_r/charge.go @@ -6,7 +6,9 @@ import ( "git.hilo.cn/hilo-common/resource/config" "github.com/gin-gonic/gin" "hilo-group/domain/cache/user_c" + "hilo-group/domain/model/diamond_m" "hilo-group/domain/service/diamond_s" + "hilo-group/myerr/bizerr" "hilo-group/req" "hilo-group/resp" ) @@ -31,6 +33,14 @@ func CanShareChargeLink(c *gin.Context) (*mycontext.MyContext, error) { return myContext, err } + isDealer, err := diamond_m.IsDiamondDealer(model.DB(), userId) + if err != nil { + return myContext, err + } + if !isDealer { + return myContext, bizerr.InvalidParameter + } + // 家族限制检查 if err = diamond_s.NewDiamondService(myContext).CheckDealerTransferFamilyLimit(userId, toUser.ID, lang); err != nil { myContext.Log.Errorf("CanShareChargeLink err:%v", err) @@ -41,6 +51,22 @@ func CanShareChargeLink(c *gin.Context) (*mycontext.MyContext, error) { ShareIcon string `json:"shareIcon"` } - resp.ResponseOk(c, res{config.GetH5Config().AGENT_SHARE_URL, config.GetH5Config().AGENT_SHARE_ICON}) + // 安卓3.8.0版本有bug,这里暂时兼容 + shareUrl := config.GetH5Config().AGENT_SHARE_URL + deviceType, major, minor, _, err := req.GetAppVersion(c) + if err != nil { + return myContext, err + } + if deviceType == "android" { + if (major > 3) || (major == 3 && minor >= 8) { + myUser, err := user_c.GetUserTinyById(model, userId) + if err != nil { + return myContext, err + } + shareUrl = shareUrl + myUser.ExternalId + } + } + + resp.ResponseOk(c, res{shareUrl, config.GetH5Config().AGENT_SHARE_ICON}) return myContext, nil }