Esempio n. 1
0
        public ActionResult Add(UserModel model)
        {
            if (string.IsNullOrWhiteSpace(model.Password))
            {
                ModelState.AddModelError("Password", "密码不能为空");
            }

            if (AdminUsers.IsExistUserName(model.UserName))
            {
                ModelState.AddModelError("UserName", "名称已经存在");
            }

            if (AdminUsers.IsExistEmail(model.Email))
            {
                ModelState.AddModelError("Email", "email已经存在");
            }

            if (AdminUsers.IsExistMobile(model.Mobile))
            {
                ModelState.AddModelError("Mobile", "手机号已经存在");
            }

            if (ModelState.IsValid)
            {
                string salt = Users.GenerateUserSalt();
                string nickName;
                if (string.IsNullOrWhiteSpace(model.NickName))
                {
                    nickName = "bsp" + Randoms.CreateRandomValue(7);
                }
                else
                {
                    nickName = model.NickName;
                }

                UserInfo userInfo = new UserInfo()
                {
                    UserName      = model.UserName,
                    Email         = model.Email == null ? "" : model.Email,
                    Mobile        = model.Mobile == null ? "" : model.Mobile,
                    Salt          = salt,
                    Password      = Users.CreateUserPassword(model.Password, salt),
                    UserRid       = model.UserRid,
                    AdminGid      = model.AdminGid,
                    NickName      = WebHelper.HtmlEncode(nickName),
                    Avatar        = model.Avatar == null ? "" : WebHelper.HtmlEncode(model.Avatar),
                    PayCredits    = model.PayCredits,
                    RankCredits   = AdminUserRanks.GetUserRankById(model.UserRid).CreditsLower,
                    VerifyEmail   = 1,
                    VerifyMobile  = 1,
                    LiftBanTime   = UserRanks.IsBanUserRank(model.UserRid) ? DateTime.Now.AddDays(WorkContext.UserRankInfo.LimitDays) : new DateTime(1900, 1, 1),
                    LastVisitTime = DateTime.Now,
                    LastVisitIP   = WorkContext.IP,
                    LastVisitRgId = WorkContext.RegionId,
                    RegisterTime  = DateTime.Now,
                    RegisterIP    = WorkContext.IP,
                    RegisterRgId  = WorkContext.RegionId,
                    Gender        = model.Gender,
                    RealName      = model.RealName == null ? "" : WebHelper.HtmlEncode(model.RealName),
                    Bday          = model.Bday ?? new DateTime(1970, 1, 1),
                    IdCard        = model.IdCard == null ? "" : model.IdCard,
                    RegionId      = model.RegionId,
                    Address       = model.Address == null ? "" : WebHelper.HtmlEncode(model.Address),
                    Bio           = model.Bio == null ? "" : WebHelper.HtmlEncode(model.Bio)
                };

                AdminUsers.CreateUser(userInfo);
                AddAdminOperateLog("添加用户", "添加用户,用户为:" + model.UserName);
                return(PromptView("用户添加成功"));
            }
            Load(model.RegionId);

            return(View(model));
        }