| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132 | 
							- package shanghu
 
- import (
 
- 	"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)
 
- }
 
 
  |