mirror of
https://github.com/kongyuebin1/dongfeng-pay.git
synced 2024-11-25 11:49:26 +08:00
136 lines
3.1 KiB
Go
136 lines
3.1 KiB
Go
|
/***************************************************
|
||
|
** @Desc : This file for 用户信息控制
|
||
|
** @Time : 19.12.3 10:38
|
||
|
** @Author : Joker
|
||
|
** @File : user_info
|
||
|
** @Last Modified by : Joker
|
||
|
** @Last Modified time: 19.12.3 10:38
|
||
|
** @Software: GoLand
|
||
|
****************************************************/
|
||
|
package controllers
|
||
|
|
||
|
import (
|
||
|
"merchant/models"
|
||
|
"merchant/sys/enum"
|
||
|
"regexp"
|
||
|
"strings"
|
||
|
)
|
||
|
|
||
|
type UserInfo struct {
|
||
|
KeepSession
|
||
|
}
|
||
|
|
||
|
func (c *UserInfo) ShowModifyUserInfoUI() {
|
||
|
us := c.GetSession(enum.UserSession)
|
||
|
u := us.(models.MerchantInfo)
|
||
|
|
||
|
ranMd5 := encrypt.EncodeMd5([]byte(pubMethod.RandomString(46)))
|
||
|
c.Ctx.SetCookie(enum.UserCookie, ranMd5, enum.CookieExpireTime)
|
||
|
c.Ctx.SetSecureCookie(ranMd5, enum.UserCookie, ranMd5, enum.CookieExpireTime)
|
||
|
c.SetSession(enum.UserCookie, ranMd5)
|
||
|
|
||
|
c.Data["userName"] = u.MerchantName
|
||
|
c.TplName = "modify_userInfo.html"
|
||
|
}
|
||
|
|
||
|
// 修改用户信息
|
||
|
func (c *UserInfo) ModifyUserInfo() {
|
||
|
or_pwd := strings.TrimSpace(c.GetString("or_pwd"))
|
||
|
new_pwd := strings.TrimSpace(c.GetString("new_pwd"))
|
||
|
confirm_pwd := strings.TrimSpace(c.GetString("confirm_pwd"))
|
||
|
|
||
|
us := c.GetSession(enum.UserSession)
|
||
|
u := us.(models.MerchantInfo)
|
||
|
|
||
|
var (
|
||
|
msg = enum.FailedString
|
||
|
flag = enum.FailedFlag
|
||
|
|
||
|
md bool
|
||
|
ud bool
|
||
|
pwdMd5 string
|
||
|
)
|
||
|
|
||
|
if or_pwd == "" ||
|
||
|
new_pwd == "" ||
|
||
|
confirm_pwd == "" {
|
||
|
msg = "密码不能为空!"
|
||
|
goto stopRun
|
||
|
}
|
||
|
|
||
|
pwdMd5 = encrypt.EncodeMd5([]byte(or_pwd))
|
||
|
if strings.Compare(strings.ToUpper(pwdMd5), u.LoginPassword) != 0 {
|
||
|
msg = "原始密码错误!"
|
||
|
}
|
||
|
|
||
|
md, _ = regexp.MatchString(enum.PasswordReg, new_pwd)
|
||
|
if !md {
|
||
|
msg = "密码只能输入6-20个以字母开头、可带数字、“_”、“.”的字串!"
|
||
|
goto stopRun
|
||
|
}
|
||
|
|
||
|
md, _ = regexp.MatchString(enum.PasswordReg, confirm_pwd)
|
||
|
if !md {
|
||
|
msg = "密码只能输入6-20个以字母开头、可带数字、“_”、“.”的字串!"
|
||
|
goto stopRun
|
||
|
}
|
||
|
|
||
|
if strings.Compare(new_pwd, confirm_pwd) != 0 {
|
||
|
msg = "两次密码不匹配!"
|
||
|
goto stopRun
|
||
|
}
|
||
|
|
||
|
u.LoginPassword = strings.ToUpper(encrypt.EncodeMd5([]byte(new_pwd)))
|
||
|
ud = models.UpdateMerchant(u)
|
||
|
if ud {
|
||
|
msg = enum.SuccessString
|
||
|
flag = enum.SuccessFlag
|
||
|
|
||
|
// 退出重新登录
|
||
|
c.DelSession(enum.UserSession)
|
||
|
}
|
||
|
|
||
|
stopRun:
|
||
|
c.Data["json"] = pubMethod.JsonFormat(flag, "", msg, "")
|
||
|
c.ServeJSON()
|
||
|
c.StopRun()
|
||
|
}
|
||
|
|
||
|
// 验证原始密码
|
||
|
func (c *UserInfo) ConfirmOriginPwd() {
|
||
|
ori := strings.TrimSpace(c.GetString("c"))
|
||
|
|
||
|
us := c.GetSession(enum.UserSession)
|
||
|
u := us.(models.MerchantInfo)
|
||
|
|
||
|
var (
|
||
|
msg = enum.FailedString
|
||
|
flag = enum.FailedFlag
|
||
|
)
|
||
|
|
||
|
pwdMd5 := encrypt.EncodeMd5([]byte(ori))
|
||
|
if strings.Compare(strings.ToUpper(pwdMd5), u.LoginPassword) != 0 {
|
||
|
msg = "原始密码错误!"
|
||
|
} else {
|
||
|
flag = enum.SuccessFlag
|
||
|
}
|
||
|
|
||
|
c.Data["json"] = pubMethod.JsonFormat(flag, "", msg, "")
|
||
|
c.ServeJSON()
|
||
|
c.StopRun()
|
||
|
}
|
||
|
|
||
|
// 展示用户信息
|
||
|
func (c *UserInfo) ShowUserInfoUI() {
|
||
|
us := c.GetSession(enum.UserSession)
|
||
|
u := us.(models.MerchantInfo)
|
||
|
|
||
|
c.Data["userName"] = u.MerchantName
|
||
|
c.Data["mobile"] = u.LoginAccount
|
||
|
c.Data["email"] = u.LoginAccount
|
||
|
c.Data["riskDay"] = "1"
|
||
|
//c.Data["key"] = uPayConfig.PayKey
|
||
|
//c.Data["secret"] = uPayConfig.PaySecret
|
||
|
c.TplName = "show_userInfo.html"
|
||
|
}
|