Exemplo n.º 1
0
        public ActionResult Create(UserManageCreateUserViewModel model, string returnUrl)
        {
            if (!User.IsInRole(SysRole.UserManageCreate))
            {
                return(Json(Comm.ToJsonResult("NoRole", "没有权限")));
            }
            var user = db.Users.FirstOrDefault(s => s.UserName == model.PhoneNumber);

            if (user != null)
            {
                return(Json(Comm.ToJsonResult("Error", "手机号已被使用")));
                //ModelState.AddModelError("PhoneNumber", "手机号已被使用");
            }
            if (!string.IsNullOrWhiteSpace(model.ParentUserID))
            {
                var pUser = db.Users.FirstOrDefault(s => s.Id == model.ParentUserID);
                if (pUser == null)
                {
                    return(Json(Comm.ToJsonResult("Error", "不存在父用户")));
                    //ModelState.AddModelError("ParentUserID", "不存在父用户");
                }
                if (pUser.UserType != Enums.UserType.Proxy)
                {
                    return(Json(Comm.ToJsonResult("Error", $"用户“{pUser.NickName}”不是代理")));
                    //ModelState.AddModelError("ParentUserID", $"用户“{pUser.NickName}”不是代理");
                }
            }

            user = new ApplicationUser
            {
                UserName          = model.PhoneNumber,
                PhoneNumber       = model.PhoneNumber,
                UserType          = model.UserType,
                RegisterDateTime  = DateTime.Now,
                LastLoginDateTime = DateTime.Now,
                NickName          = model.NickName
            };
            if (!string.IsNullOrWhiteSpace(model.ParentUserID))
            {
                user.ParentUserID = model.ParentUserID;
            }
            var result = UserManager.CreateAsync(user, model.Password);

            if (result.Result.Succeeded)
            {
                user = db.Users.FirstOrDefault(s => s.UserName == model.PhoneNumber);
                //var returnUrl = Request["ReturnUrl"];
                if (string.IsNullOrWhiteSpace(returnUrl))
                {
                    returnUrl = Url.Action("index");
                }
                //return Redirect(returnUrl);
                return(Json(Comm.ToJsonResult("Success", "添加成功", new
                {
                    ReturnUrl = returnUrl,
                    Id = user.Id
                })));
            }
            return(Json(Comm.ToJsonResult("Error", result.Result.Errors.FirstOrDefault())));
        }
Exemplo n.º 2
0
        public ActionResult Create(Enums.UserType userType = Enums.UserType.Proxy, string pid = null)
        {
            Sidebar();
            Models.ApplicationUser user = null;
            if (!string.IsNullOrWhiteSpace(pid))
            {
                user = db.Users.FirstOrDefault(s => s.Id == pid);
            }
            var model = new UserManageCreateUserViewModel()
            {
                UserType           = Enums.UserType.Proxy,
                ParentUserID       = user?.Id,
                ParentUserNickName = user?.NickName
            };

            return(View(model));
        }