//添加会员 func (c *User) Add(user *models.User) revel.Result { if c.Request.Method == "GET" { title := "添加会员--GoCMS管理系统" //会员组 user_group := new(models.User_Group) group_list := user_group.GetGroupList() c.Render(title, group_list) return c.RenderTemplate("User/Manage/Add.html") } else { data := make(map[string]string) var username string = c.Params.Get("username") if len(username) <= 0 { data["status"] = "0" data["message"] = "请输入用户名!" return c.RenderJson(data) } else { user.Username = username } if user.HasName() { data["status"] = "0" data["message"] = "用户名‘" + username + "’已有!" return c.RenderJson(data) } var email string = c.Params.Get("email") if len(email) <= 0 { data["status"] = "0" data["message"] = "请输入邮箱!" return c.RenderJson(data) } else { user.Email = email } if user.HasEmail() { data["status"] = "0" data["message"] = "邮箱‘" + email + "’已有!" return c.RenderJson(data) } var password string = c.Params.Get("password") if len(password) <= 0 { data["status"] = "0" data["message"] = "请输入密码!" return c.RenderJson(data) } var pwdconfirm string = c.Params.Get("pwdconfirm") if len(pwdconfirm) <= 0 { data["status"] = "0" data["message"] = "请输入确认密码!" return c.RenderJson(data) } else { if password != pwdconfirm { data["status"] = "0" data["message"] = "两次输入密码不一致!" return c.RenderJson(data) } else { user.Password = password } } var nickname string = c.Params.Get("nickname") if len(nickname) <= 0 { data["status"] = "0" data["message"] = "请输入昵称!" return c.RenderJson(data) } else { user.Nickname = nickname } var mobile string = c.Params.Get("mobile") if len(mobile) <= 0 { data["status"] = "0" data["message"] = "请输入手机号码!" return c.RenderJson(data) } else { user.Mobile = mobile } var groupid string = c.Params.Get("groupid") if len(groupid) <= 0 { data["status"] = "0" data["message"] = "请选择会员组!" return c.RenderJson(data) } else { Groupid, err := strconv.ParseInt(groupid, 10, 64) if err != nil { revel.WARN.Println(err) } user.Groupid = Groupid } var islock string = c.Params.Get("islock") if len(islock) <= 0 { data["status"] = "0" data["message"] = "请选择是否定锁!" return c.RenderJson(data) } else { Islock, err := strconv.ParseInt(islock, 10, 64) if err != nil { revel.WARN.Println(err) } user.Islock = Islock } var point string = c.Params.Get("point") if len(point) <= 0 { data["status"] = "0" data["message"] = "请输入积分点数!" return c.RenderJson(data) } else { Point, err := strconv.ParseInt(point, 10, 64) if err != nil { revel.WARN.Println(err) } user.Point = Point } var birthday string = c.Params.Get("birthday") if len(birthday) <= 0 { user.Birthday = "0000-00-00" } else { user.Birthday = birthday } var vip string = c.Params.Get("vip") if vip == "1" { user.Vip = 1 var overduedate string = c.Params.Get("overduedate") if len(overduedate) <= 0 { data["status"] = "0" data["message"] = "请选择过期时间!" return c.RenderJson(data) } else { user.Overduedate = overduedate } } else { user.Vip = 0 user.Overduedate = time.Now().Format("2006-01-02 15:04:04") } if ip := c.Request.Header.Get("X-Forwarded-For"); ip != "" { ips := strings.Split(ip, ",") if len(ips) > 0 && ips[0] != "" { rip := strings.Split(ips[0], ":") user.Regip = rip[0] } } else { ip := strings.Split(c.Request.RemoteAddr, ":") if len(ip) > 0 { if ip[0] != "[" { user.Regip = ip[0] } } } if user.Save() { data["status"] = "1" data["message"] = "添加会员成功!" return c.RenderJson(data) } else { data["status"] = "0" data["message"] = "添加会员失败!" return c.RenderJson(data) } } }