|
@ -3,6 +3,7 @@ package wxSmall |
|
|
import ( |
|
|
import ( |
|
|
"SSW_WebPlatform/utils" |
|
|
"SSW_WebPlatform/utils" |
|
|
"SSW_WebPlatform/utils/wxfunc" |
|
|
"SSW_WebPlatform/utils/wxfunc" |
|
|
|
|
|
"SSW_WebPlatform/web/middleware/glog" |
|
|
"SSW_WebPlatform/web/models" |
|
|
"SSW_WebPlatform/web/models" |
|
|
"SSW_WebPlatform/web/models/wxSmall" |
|
|
"SSW_WebPlatform/web/models/wxSmall" |
|
|
"SSW_WebPlatform/web/supports" |
|
|
"SSW_WebPlatform/web/supports" |
|
@ -19,18 +20,16 @@ func Wxlogin(ctx iris.Context) { |
|
|
supports.Error(ctx, iris.StatusBadRequest, "json解析错误", nil) |
|
|
supports.Error(ctx, iris.StatusBadRequest, "json解析错误", nil) |
|
|
return |
|
|
return |
|
|
} |
|
|
} |
|
|
//code := data.Code // 获取code
|
|
|
|
|
|
// 根据code获取 openID 和 session_key
|
|
|
|
|
|
//wxLoginResp, err := wxfunc.WXLogin(code)
|
|
|
|
|
|
//if err != nil {
|
|
|
|
|
|
// supports.Error(ctx, iris.StatusBadRequest, "获取session_key失败", nil)
|
|
|
|
|
|
// return
|
|
|
|
|
|
//}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
code := data.Code // 获取code
|
|
|
|
|
|
//根据code获取 openID 和 session_key
|
|
|
|
|
|
wxLoginResp, err := wxfunc.WXLogin(code) |
|
|
|
|
|
if err != nil { |
|
|
|
|
|
supports.Error(ctx, iris.StatusBadRequest, "获取session_key失败", nil) |
|
|
|
|
|
return |
|
|
|
|
|
} |
|
|
//判断数据库里用户表是否存在此用户
|
|
|
//判断数据库里用户表是否存在此用户
|
|
|
user := new(wxSmall.WxUser) |
|
|
user := new(wxSmall.WxUser) |
|
|
//user.Openid = wxLoginResp.OpenId
|
|
|
|
|
|
user.Openid = "123456" |
|
|
|
|
|
|
|
|
user.Openid = wxLoginResp.OpenId |
|
|
wxuser, err := user.SelectOneByOpenid() |
|
|
wxuser, err := user.SelectOneByOpenid() |
|
|
if err != nil { |
|
|
if err != nil { |
|
|
supports.Error(ctx, iris.StatusBadRequest, supports.ParseParamsFailur, nil) |
|
|
supports.Error(ctx, iris.StatusBadRequest, supports.ParseParamsFailur, nil) |
|
@ -38,26 +37,22 @@ func Wxlogin(ctx iris.Context) { |
|
|
} |
|
|
} |
|
|
if wxuser == nil { |
|
|
if wxuser == nil { |
|
|
//添加信息
|
|
|
//添加信息
|
|
|
//userInfo, err := wxfunc.DecryptData(data.EncryptedData,data.Iv,wxLoginResp.SessionKey)
|
|
|
|
|
|
//if err != nil {
|
|
|
|
|
|
// supports.Error(ctx, iris.StatusBadRequest, "数据解密失败", nil)
|
|
|
|
|
|
// return
|
|
|
|
|
|
//}
|
|
|
|
|
|
//Info := userInfo.(map[string]interface{})
|
|
|
|
|
|
//user.Nickname = utils.ValueToString(Info["nickName"],"")
|
|
|
|
|
|
//user.Gender = utils.ValueToInt(Info["gender"],0)
|
|
|
|
|
|
//user.Avatarurl = utils.ValueToString(Info["avatarUrl"],"")
|
|
|
|
|
|
//user.Province = utils.ValueToString(Info["province"],"")
|
|
|
|
|
|
//user.City =utils.ValueToString(Info["city"],"")
|
|
|
|
|
|
//user.Country =utils.ValueToString(Info["country"],"")
|
|
|
|
|
|
//user.Sessionkey = wxLoginResp.SessionKey
|
|
|
|
|
|
//user.Openid = wxLoginResp.OpenId
|
|
|
|
|
|
//user.Unionid = wxLoginResp.UnionId
|
|
|
|
|
|
user.Gender = 1 |
|
|
|
|
|
user.Nickname = "风云争霸" |
|
|
|
|
|
user.Sessionkey = "123456" |
|
|
|
|
|
user.Openid = "123456" |
|
|
|
|
|
user.Unionid = "123456" |
|
|
|
|
|
|
|
|
userInfo, err := wxfunc.DecryptData(data.EncryptedData,data.Iv,wxLoginResp.SessionKey) |
|
|
|
|
|
if err != nil { |
|
|
|
|
|
glog.InfoExtln("code","数据解密失败err:",err) |
|
|
|
|
|
supports.Error(ctx, iris.StatusBadRequest, "数据解密失败", nil) |
|
|
|
|
|
return |
|
|
|
|
|
} |
|
|
|
|
|
Info := userInfo.(map[string]interface{}) |
|
|
|
|
|
user.Nickname = utils.ValueToString(Info["nickName"],"") |
|
|
|
|
|
user.Gender = utils.ValueToInt(Info["gender"],0) |
|
|
|
|
|
user.Avatarurl = utils.ValueToString(Info["avatarUrl"],"") |
|
|
|
|
|
user.Province = utils.ValueToString(Info["province"],"") |
|
|
|
|
|
user.City =utils.ValueToString(Info["city"],"") |
|
|
|
|
|
user.Country =utils.ValueToString(Info["country"],"") |
|
|
|
|
|
user.Sessionkey = wxLoginResp.SessionKey |
|
|
|
|
|
user.Openid = wxLoginResp.OpenId |
|
|
|
|
|
user.Unionid = wxLoginResp.UnionId |
|
|
err = user.Add() |
|
|
err = user.Add() |
|
|
if err != nil { |
|
|
if err != nil { |
|
|
supports.Error(ctx, iris.StatusBadRequest, "用户信息录入失败", nil) |
|
|
supports.Error(ctx, iris.StatusBadRequest, "用户信息录入失败", nil) |
|
@ -73,8 +68,7 @@ func Wxlogin(ctx iris.Context) { |
|
|
if !ok { |
|
|
if !ok { |
|
|
//过期,更新
|
|
|
//过期,更新
|
|
|
user.Uid = wxuser.Uid |
|
|
user.Uid = wxuser.Uid |
|
|
//user.Sessionkey = wxLoginResp.SessionKey
|
|
|
|
|
|
user.Sessionkey = "123456" |
|
|
|
|
|
|
|
|
user.Sessionkey = wxLoginResp.SessionKey |
|
|
err = user.Update() |
|
|
err = user.Update() |
|
|
if err != nil { |
|
|
if err != nil { |
|
|
supports.Error(ctx, iris.StatusBadRequest, "用户信息更新失败", nil) |
|
|
supports.Error(ctx, iris.StatusBadRequest, "用户信息更新失败", nil) |
|
|