package user import ( "duoduo/apis/pdd" "duoduo/conf" "duoduo/models/mysql" "duoduo/models/user" "duoduo/tools" "duoduo/tools/app" "fmt" "github.com/gin-gonic/gin" ) func OpenIdSet(c *gin.Context) { var inData user.OpenIdSetRequest var outData user.OpenIdSetResponse var sqlData mysql.User //var wallet mysql.Wallet err := c.ShouldBindJSON(&inData) if err != nil { app.Error(c, 400, err, err.Error()) return } confIni, err := conf.ConnIni() if err != nil { app.Error(c, 400, err, err.Error()) return } url := fmt.Sprintf("https://api.weixin.qq.com/sns/jscode2session?appid=%s&secret=%s&js_code=%s&grant_type=authorization_code", confIni.MustValue("wx", "app_id"), confIni.MustValue("wx", "secret"), inData.Code) val, err := pdd.DuoDuoGet(url) if err != nil { app.Error(c, 500, err, err.Error()) return } fmt.Print(val) err = tools.JsonUnmarshal(val, &outData) if err != nil { app.Error(c, 500, err, err.Error()) return } if outData.Errcode != 0 { app.Error(c, outData.Errcode, err, outData.Errmsg) return } //查询数据 sqlData.OpenID = outData.OpenId num := sqlData.GetNum() if num == 0 { //创建用户 sqlData.CreateTime = tools.GetCurrntTimeStr() sqlData.UpdateTime = tools.GetCurrntTimeStr() sqlData.Create() //创建钱包 //wallet.CreateTime = tools.GetCurrntTimeStr() //wallet.UpdateTime = tools.GetCurrntTimeStr() //wallet.OpenID = outData.OpenId //wallet.Create() } app.OK(c, outData, app.Success) }