Commit d909d3c7 authored by shajiaiming's avatar shajiaiming

钱包用户管理

parent 54276faa
...@@ -17,5 +17,5 @@ const ( ...@@ -17,5 +17,5 @@ const (
// RSA Private File // RSA Private File
AppRsaPrivateFile = "rsa/private.pem" AppRsaPrivateFile = "rsa/private.pem"
PASSWORD_DEFAULT = 1 PASSWORD_DEFAULT = 13
) )
...@@ -95,6 +95,7 @@ func AddManager(data map[string]interface{}) (error) { ...@@ -95,6 +95,7 @@ func AddManager(data map[string]interface{}) (error) {
RegIp: data["reg_ip"].(uint32), RegIp: data["reg_ip"].(uint32),
LastLoginIp: data["last_login_ip"].(uint32), LastLoginIp: data["last_login_ip"].(uint32),
Group: data["group"].(string), Group: data["group"].(string),
Status: 1,
PlatformId: data["platform_id"].(int32), PlatformId: data["platform_id"].(int32),
} }
......
...@@ -117,6 +117,61 @@ func GetManagers(c *gin.Context) { ...@@ -117,6 +117,61 @@ func GetManagers(c *gin.Context) {
handler.SendResponse(c, nil, data) handler.SendResponse(c, nil, data)
} }
func EditManager(c *gin.Context) {
manager_params := validate_service.EditManager{}
c.ShouldBindJSON(&manager_params)
if ok, errors := validate_service.ValidateInputs(manager_params); !ok {
for _, err := range errors {
handler.SendResponse(c, errno.ErrBind, strings.Join(err, " "))
return
}
}
token := c.Request.Header.Get("Token")
user, _ := util.ParseToken(token)
group := user.UserInfo.Group
if int32(user.UserInfo.Uid) == manager_params.Uid {
handler.SendResponse(c, errno.ErrDeleteSelf, nil)
return
}
if ("general" == group) {
handler.SendResponse(c, errno.ErrUserAuthIncorrect, nil)
return
}
manager_service := manager_service.Manager{Uid: manager_params.Uid}
manager, err := manager_service.GetManager()
if err != nil {
handler.SendResponse(c, errno.ErrValidation, nil)
return
}
var platform_id int32
platform_id = int32(user.UserInfo.PlatformId)
if "admin" == group && platform_id != manager.PlatformId {
handler.SendResponse(c, errno.ErrUserAuthIncorrect, nil)
return
}
if "administrator" == manager.Group {
handler.SendResponse(c, errno.ErrUserAuthIncorrect, nil)
return
}
manager_service.Status = manager_params.Status
err = manager_service.Edit()
if err != nil {
handler.SendResponse(c, errno.ErrDeleteUser, nil)
return
}
handler.SendResponse(c, nil, nil)
}
func DeleteManager(c *gin.Context) { func DeleteManager(c *gin.Context) {
id := int32(com.StrTo(c.DefaultQuery("uid", "0")).MustInt()) id := int32(com.StrTo(c.DefaultQuery("uid", "0")).MustInt())
valid := validation.Validation{} valid := validation.Validation{}
......
...@@ -136,7 +136,7 @@ func InitRouter() *gin.Engine { ...@@ -136,7 +136,7 @@ func InitRouter() *gin.Engine {
api.GET("/managers", backend.GetManagers) api.GET("/managers", backend.GetManagers)
//api.GET("/user", backend.GetUser) //api.GET("/user", backend.GetUser)
api.POST("/manager", backend.AddManager) api.POST("/manager", backend.AddManager)
//api.PUT("/user", backend.EditUser) api.PUT("/manager", backend.EditManager)
api.DELETE("/manager", backend.DeleteManager) api.DELETE("/manager", backend.DeleteManager)
} }
......
...@@ -80,13 +80,7 @@ func (m *Manager) Add() error { ...@@ -80,13 +80,7 @@ func (m *Manager) Add() error {
func (m *Manager) Edit() error { func (m *Manager) Edit() error {
return models.EditManager(m.Uid, map[string]interface{}{ return models.EditManager(m.Uid, map[string]interface{}{
"username": m.UserName, "status": m.Status,
"password": m.Password,
"reg_ip": m.RegIp,
"last_login_ip": m.LastLoginIp,
"status": m.Status,
"group": m.Group,
"platform_id": m.PlatformId,
}) })
} }
......
...@@ -6,6 +6,7 @@ type Manager struct { ...@@ -6,6 +6,7 @@ type Manager struct {
PlatformId int32 `json:"platform_id" validate:"required"` PlatformId int32 `json:"platform_id" validate:"required"`
} }
func (m Manager) Unique(val string) bool { type EditManager struct {
return len(val) == 4 Uid int32 `json:"uid" validate:"required"`
Status uint8 `json:"status" validate:"required,min=1,max=2"`
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment