美团联盟二维码处理
This commit is contained in:
@@ -1962,8 +1962,20 @@ func ShareUnionLink(ctx *jxcontext.Context, jobID, linkType int) (link string, e
|
||||
}
|
||||
jobOrder.JobID = job.ID
|
||||
err = dao.GetEntity(db, jobOrder, "JobID")
|
||||
if err != nil {
|
||||
return link, err
|
||||
}
|
||||
if handler := partner.GetHandler(job.VendorID); handler != nil {
|
||||
handler.ShareUnionLink(ctx, linkType, job.UnionActID, jobOrder.UserID)
|
||||
link, err = handler.ShareUnionLink(ctx, linkType, job.UnionActID, jobOrder.UserID)
|
||||
if job.VendorID == model.VendorIDMTWM && linkType == partner.LinkTypeWeiXinMini {
|
||||
if resBinary, _, err := jxutils.DownloadFileByURL(link + "?imageView2/1/w/100/h/100/q/75"); err == nil {
|
||||
if downloadURL, err := jxutils.UploadExportContent(resBinary, utils.Int64ToStr(time.Now().Unix())+link[strings.LastIndex(link, "/")+1:len(link)]); err == nil {
|
||||
if err == nil {
|
||||
link = jxutils.MixWatermarkImg(downloadURL, job.UnionImg, job.UnionQrcodePosition)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return link, err
|
||||
}
|
||||
|
||||
@@ -4,14 +4,20 @@ import (
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
"git.rosy.net.cn/jx-callback/business/jxstore/partner"
|
||||
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
|
||||
"git.rosy.net.cn/jx-callback/globals/api"
|
||||
"strings"
|
||||
)
|
||||
|
||||
func (s *UnionHandler) ShareUnionLink(ctx *jxcontext.Context, linkType, unionActID int, userID string) (link string, err error) {
|
||||
if linkType == partner.LinkTypeWeiXinMini {
|
||||
//return api.MtUnionAPI.GenerateLink(unionActID, userID)
|
||||
if qrCode, err := api.MtUnionAPI.MiniCode(unionActID, userID); err == nil {
|
||||
if qrCode != "" {
|
||||
return qrCode, err
|
||||
}
|
||||
}
|
||||
return
|
||||
} else {
|
||||
|
||||
return api.MtUnionAPI.GenerateLink(unionActID, linkType, userID)
|
||||
}
|
||||
return link, err
|
||||
}
|
||||
|
||||
@@ -821,13 +821,13 @@ func PKCS5UnPadding(origData []byte) []byte {
|
||||
}
|
||||
|
||||
//合成水印图
|
||||
func MixWatermarkImg(imgWatermark, img string) (imgMix string) {
|
||||
func MixWatermarkImg(imgWatermark, img, positon string) (imgMix string) {
|
||||
baseURL := base64.URLEncoding.EncodeToString([]byte(imgWatermark))
|
||||
var imgUrl string
|
||||
if strings.Contains(img, "?") {
|
||||
imgUrl = img + "/imageView2/0/q/75|watermark/1/image/" + baseURL + "/dissolve/100/gravity/South/dx/0/dy/0"
|
||||
imgUrl = img + "/imageView2/0/q/75|watermark/1/image/" + baseURL + "/dissolve/100/gravity/" + positon + "/dx/0/dy/0"
|
||||
} else {
|
||||
imgUrl = img + "?imageView2/0/q/75|watermark/1/image/" + baseURL + "/dissolve/100/gravity/South/dx/0/dy/0"
|
||||
imgUrl = img + "?imageView2/0/q/75|watermark/1/image/" + baseURL + "/dissolve/100/gravity/" + positon + "/dx/0/dy/0"
|
||||
}
|
||||
if resBinary, _, err := DownloadFileByURL(imgUrl); err == nil {
|
||||
if downloadURL, err := UploadExportContent(resBinary, utils.Int64ToStr(time.Now().Unix())+img[strings.LastIndex(img, "/")+1:len(img)]); err == nil {
|
||||
|
||||
Reference in New Issue
Block a user