| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132 | package shanghuimport (	"duoduo/apis/common"	"duoduo/apis/pdd"	"duoduo/apis/shanghu/models"	"duoduo/models/shanghu"	"duoduo/tools"	"duoduo/tools/app"	"encoding/base64"	"encoding/json"	"fmt"	"github.com/gin-gonic/gin"	"strconv")func ClientCardList(c *gin.Context) {	var inData models.ClientCardListRequest	var sqlData shanghu.MerchantClientCard	err := c.ShouldBindJSON(&inData)	if err != nil {		app.Error(c, 400, err, err.Error())		return	}	var pageSize = 10	var pageIndex = 1	if inData.PageSize != 0 {		pageSize = inData.PageSize	}	if inData.PageIndex != 0 {		pageIndex = inData.PageIndex	}	fmt.Println(inData.OpenId)	sqlData.OpenID = inData.OpenId	merchantCard, count, err := sqlData.GetOpenIdList(pageSize, pageIndex, inData.TypeList)	if err != nil {		app.Error(c, 500, err, err.Error())		return	}	app.PageOK(c, merchantCard, count, pageIndex, pageSize, app.Success)}func GetClientCard(c *gin.Context) {	var inData models.ClientCardRequest	var sqlData shanghu.MerchantClientCard	err := c.ShouldBindJSON(&inData)	if err != nil {		app.Error(c, 400, err, err.Error())		return	}	sqlData.ID = inData.ClientCardId	clientCard, err := sqlData.GetMerchantCard()	if err != nil {		app.Error(c, 500, err, err.Error())		return	}	app.OK(c, clientCard, app.Success)}func GetClientCardQR(c *gin.Context) {	var inData models.ClientCardQRRequest	var sqlData shanghu.MerchantClientCard	var outData models.ClientCardQRReply	var qr models.QRRequest	var getQR models.GetQRRequest	err := c.ShouldBindJSON(&inData)	if err != nil {		app.Error(c, 400, err, err.Error())		return	}	sqlData.ID = inData.MerchantCardId	val, err := pdd.DuoDuoGet("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=wx25357518f710b8ce&secret=83c7dca801a6c93fbfac3c91f57a4eb2")	if err != nil {		app.Error(c, 500, err, err.Error())		return	}	err = tools.JsonUnmarshal(val, &outData)	if err != nil {		app.Error(c, 500, err, err.Error())		return	}	if outData.AccessToken == "" {		app.Error(c, 500, err, "token error")		return	}	url := "https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=" + outData.AccessToken	qr.CheckPath = true	qr.Page = "pages/home/home"	qr.EnvVersion = "release"	qr.Scene = strconv.FormatInt(inData.MerchantCardId, 10)	data, err := json.Marshal(&qr)	if err != nil {		app.Error(c, 500, err, err.Error())		return	}	reply, err := common.Post(data, url)	if err != nil {		app.Error(c, 500, err, err.Error())		return	}	//err = json.Unmarshal(reply, &getQR)	//if err != nil {	//	app.Error(c, 500, err, err.Error())	//	return	//}	if getQR.Errcode != 0 {		app.Error(c, 500, err, getQR.Errmsg)		return	}	//fmt.Println(string(reply))	encoded := base64.StdEncoding.EncodeToString(reply)	app.OK(c, encoded, app.Success)}
 |