From 360d8a5220e56d0bdc19ebc0d97c680b7245d40a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com> Date: Tue, 20 Apr 2021 16:48:56 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BE=8E=E5=9B=A2=E8=81=94=E7=9B=9F=E4=BA=8C?= =?UTF-8?q?=E7=BB=B4=E7=A0=81=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/jxstore/cms/job.go | 14 +++++++++++++- business/jxstore/partner/mt/union.go | 10 ++++++++-- business/jxutils/jxutils.go | 6 +++--- 3 files changed, 24 insertions(+), 6 deletions(-) diff --git a/business/jxstore/cms/job.go b/business/jxstore/cms/job.go index 9de59a8e1..7d31d9398 100644 --- a/business/jxstore/cms/job.go +++ b/business/jxstore/cms/job.go @@ -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 } diff --git a/business/jxstore/partner/mt/union.go b/business/jxstore/partner/mt/union.go index bd42d133f..55cf30852 100644 --- a/business/jxstore/partner/mt/union.go +++ b/business/jxstore/partner/mt/union.go @@ -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 } diff --git a/business/jxutils/jxutils.go b/business/jxutils/jxutils.go index 4b247ae9e..74349ad61 100644 --- a/business/jxutils/jxutils.go +++ b/business/jxutils/jxutils.go @@ -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 {