Пример #1
0
        /// <summary>
        /// 通过Id查询
        /// </summary>
        /// <param name="Id">主键Id</param>
        /// <returns>SysUserRole实体类对象</returns>
        public SysUserRole SelectById(int Id)
        {
            SqlParameter[] param = new SqlParameter[]
            {
                new SqlParameter("@Id", Id)
            };
            SysUserRole model = new SysUserRole();

            using (SqlDataReader dr = DBHelper.RunProcedure("SysUserRole_SelectById", param))
            {
                if (dr.Read())
                {
                    model.Id = Convert.ToInt32(dr["Id"]);
                    if (DBNull.Value != dr["UserId"])
                    {
                        model.UserId = Convert.ToInt32(dr["UserId"]);
                    }
                    model.IsDelete = Convert.ToBoolean(dr["IsDelete"]);
                    if (DBNull.Value != dr["RoleId"])
                    {
                        model.RoleId = Convert.ToInt32(dr["RoleId"]);
                    }
                }
            }
            return(model);
        }
Пример #2
0
        public ActionResult RoleDetail(Guid id, Guid sysResource)
        {
            var model = _sysUserRoleService.getById(id);

            //var model = "";
            ViewBag.ReturnUrl = Url.IsLocalUrl(null) ? null : Url.RouteUrl("userIndex");
            //  _sysPermissionService.saveRolePermission(id, sysResource, WorkContext.CurrentUser.Id);
            if (model == null)
            {
                SysUserRole modela = new SysUserRole();
                var         item   = _sysRoleService.getRole(sysResource);
                var         user   = _sysUserService.getById(id);
                modela.UserId   = id;
                modela.RoleId   = sysResource;
                modela.RoleName = item.Name;
                user.RoleName   = item.Name;
                _sysUserRoleService.insertSysUserRole(modela);
                _sysUserService.updateSysUser(user);
            }
            else
            {
                var item = _sysRoleService.getRole(sysResource);
                model.RoleName = item.Name;
                model.RoleId   = sysResource;
                var user = _sysUserService.getById(id);
                user.RoleName = item.Name;
                _sysUserService.updateSysUser(user);
                _sysUserRoleService.updateSysUserRole(model);
            }
            return(Redirect(ViewBag.ReturnUrl));
        }
        public async Task <JsonResult> DoEdit([FromBody] SysUserRole entity)
        {
            var jm = new AdminUiCallBack();

            var oldModel = await _sysUserRoleServices.QueryByIdAsync(entity.id);

            if (oldModel == null)
            {
                jm.msg = "不存在此信息";
                return(new JsonResult(jm));
            }

            //事物处理过程开始
            oldModel.id         = entity.id;
            oldModel.userId     = entity.userId;
            oldModel.roleId     = entity.roleId;
            oldModel.createTime = entity.createTime;
            oldModel.updateTime = entity.updateTime;

            //事物处理过程结束
            var bl = await _sysUserRoleServices.UpdateAsync(oldModel);

            jm.code = bl ? 0 : 1;
            jm.msg  = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure;

            return(new JsonResult(jm));
        }
Пример #4
0
        //保存用户角色
        public JsonResult SetUserRoles(string userId, string roleIds)
        {
            string[] ids = roleIds.Split(',');

            using (var tran = RepositoryFactory.ConfigRepository.Connection.BeginTransaction())
            {
                RepositoryFactory.UserRoleRepository.DeleteByUserId(userId, tran);

                for (int i = 0; i < ids.Length; i++)
                {
                    if (!string.IsNullOrEmpty(ids[i]))
                    {
                        SysUserRole userRole = new SysUserRole()
                        {
                            UserId = userId,
                            RoleId = ids[i]
                        };

                        if (RepositoryFactory.UserRoleRepository.Add(userRole, tran) == 0)
                        {
                            tran.Rollback();
                            return(Json(false));
                        }
                    }
                }
                tran.Commit();
            }
            return(Json(true));
        }
Пример #5
0
        private void UpdateUserRole(SysUserView obj)
        {
            var Ser = new BaseService <SysUserRole>();

            Ser.Repository.Delete(a => a.UserId == obj.Id);
            string [] Roles;
            if (obj.strRoles != null)
            {
                Roles = obj.strRoles.Split(',');
                var lst = new List <SysUserRole>();
                foreach (var a in Roles)
                {
                    if (!string.IsNullOrEmpty(a))
                    {
                        var RoleModel = new SysUserRole()
                        {
                            RoleId = int.Parse(a),
                            UserId = obj.Id
                        };
                        lst.Add(RoleModel);
                    }
                }
                Ser.Repository.Insert((IEnumerable <SysUserRole>)lst);
            }
            else
            {
                Roles = null;
            }
        }
Пример #6
0
        public void Delete(int id)
        {
            SysUserRole entity = this.GetEntity(id);

            db.Entry(entity).State = System.Data.Entity.EntityState.Deleted;
            db.SaveChanges();
        }
Пример #7
0
        public IActionResult Register([FromBody] RegisterDto content)
        {
            var user = new SysUser
            {
                UserName = content.Username
            };
            IdentityResult result = _userManager.CreateAsync(user, content.Password).Result;

            if (result.Succeeded)
            {
                if (!_roleManager.RoleExistsAsync("Admin").Result)
                {
                    SysUserRole role = new SysUserRole
                    {
                        Name = "Admin"
                    };

                    IdentityResult roleResult      = _roleManager.CreateAsync(role).Result;
                    var            addToRoleResult = _userManager.AddToRoleAsync(user, "Admin").Result;

                    if (!addToRoleResult.Succeeded)
                    {
                        return(BadRequest(JsonConvert.SerializeObject("Role cannot be created!")));
                    }
                }

                return(Ok(JsonConvert.SerializeObject("User was created successfully!")));
            }
            return(BadRequest(JsonConvert.SerializeObject("There was a problem with user generation.")));
        }
Пример #8
0
        public bool SetUserRoles(string userID, string roleIDs, out string msg)
        {
            SqlParameter param = new SqlParameter("@UserID", userID);

            userRoleService.ExecuteSql("DELETE FROM dbo.SysUserRole WHERE UserID=@UserID", out msg, param);
            if (!string.IsNullOrEmpty(roleIDs))
            {
                roleIDs.Split(',').ToList().ForEach(roileid =>
                {
                    if (!string.IsNullOrEmpty(roileid))
                    {
                        var userRole = new SysUserRole()
                        {
                            ID     = IdentityCreator.NextIdentity,
                            UserID = userID,
                            RoleID = roileid,
                        };
                        userRoleService.Add(userRole);
                    }
                });
                return(userRoleService.SaveChanges(out msg) > 0);
            }
            else
            {
                return(true);
            }
        }
Пример #9
0
        /// <summary>
        ///     Add a user to a role
        /// </summary>
        /// <param name="user"></param>
        /// <param name="roleName"></param>
        /// <returns></returns>
        public virtual async Task AddToRoleAsync(SysUser user, string roleName)
        {
            ThrowIfDisposed();
            if (user == null)
            {
                throw new ArgumentNullException("user");
            }
            if (String.IsNullOrWhiteSpace(roleName))
            {
                throw new ArgumentException("IdentityResources.ValueCannotBeNullOrEmpty", "roleName");
            }
            var roleEntity = await _roleStore.Entities.SingleOrDefaultAsync(r => r.Name.ToUpper() == roleName.ToUpper());

            if (roleEntity == null)
            {
                throw new InvalidOperationException(String.Format(CultureInfo.CurrentCulture,
                                                                  "IdentityResources.RoleNotFound", roleName));
            }

            var ur = new SysUserRole {
                UserId = user.Id, RoleId = roleEntity.Id
            };

            _userRoles.Add(ur);
        }
Пример #10
0
        private string Transaction(SysUser sysUser)
        {
            try
            {
                if (sysUser.ValidDateTo < sysUser.ValidDateFrom)
                {
                    return("<=ValidDateFromMoreThanValidDateTo>");
                }
                if (string.IsNullOrEmpty(sysUser.SysUserId))
                {
                    if (DataContext.SysUser.Any(c => c.UserCode == sysUser.UserCode))
                    {
                        return("<=UserCodeRepeat>");
                    }
                    sysUser.SysUserId = Guid.NewGuid().ToString();
                    DataContext.SysUser.Add(sysUser);
                }

                if (DataContext.SysUserRole.Count(m => m.SysUserId == sysUser.SysUserId) <= 0)
                {
                    SysUserRole userRole = new SysUserRole();
                    userRole.SysUserRoleId = Guid.NewGuid().ToString();
                    userRole.SysUserId     = sysUser.SysUserId;
                    userRole.SysRoleId     = sysUser.RoleId;
                    DataContext.SysUserRole.Add(userRole);
                }

                DataContext.SaveChanges();
                return("");
            }
            catch (Exception ex)
            {
                return(ex.Message);
            }
        }
Пример #11
0
 /// <summary>
 /// 给角色分配用户
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 public bool AddUserRoleForRole(SysUserRole model)
 {
     using (var transaction = Provider.GetConn().BeginTransaction())
     {
         try
         {
             if (model.RoleId > 0)
             {
                 _userRoleRepository.DeleteUserByRoleId(model.RoleId.ToString(), transaction);
             }
             if (!string.IsNullOrWhiteSpace(model.UserIds))
             {
                 var userIds = model.UserIds.Split(',');
                 if (userIds.Length > 0)
                 {
                     foreach (var Id in userIds)
                     {
                         var id = 0;
                         int.TryParse(Id, out id);
                         model.UserId = id;
                         model.InDate = ServerTime;
                         _userRoleRepository.Insert(model, transaction);
                     }
                 }
             }
             transaction.Commit();
             return(true);
         }
         catch (Exception)
         {
             transaction.Rollback();
         }
         return(false);
     }
 }
Пример #12
0
        /// <summary>
        /// 查看全部
        /// </summary>
        /// <returns>list集合</returns>
        public List <SysUserRole> SelectAll()
        {
            List <SysUserRole> list  = new List <SysUserRole>();
            SysUserRole        model = null;

            using (SqlDataReader dr = DBHelper.RunProcedure("SysUserRole_SelectAll", null))
            {
                while (dr.Read())
                {
                    model    = new SysUserRole();
                    model.Id = Convert.ToInt32(dr["Id"]);
                    if (DBNull.Value != dr["UserId"])
                    {
                        model.UserId = Convert.ToInt32(dr["UserId"]);
                    }
                    model.IsDelete = Convert.ToBoolean(dr["IsDelete"]);
                    if (DBNull.Value != dr["RoleId"])
                    {
                        model.RoleId = Convert.ToInt32(dr["RoleId"]);
                    }
                    list.Add(model);
                }
            }
            return(list);
        }
Пример #13
0
        /// <summary>
        /// 通过条件查询
        /// </summary>
        /// <param name="WhereString">查询条件</param>
        /// <returns>SysUserRole实体类对象</returns>
        public List <SysUserRole> SelectByWhere(string WhereString)
        {
            SqlParameter[] param = new SqlParameter[]
            {
                new SqlParameter("@where", WhereString)
            };
            List <SysUserRole> list  = new List <SysUserRole>();
            SysUserRole        model = null;

            using (SqlDataReader dr = DBHelper.RunProcedure("SysUserRole_SelectByWhere", param))
            {
                while (dr.Read())
                {
                    model    = new SysUserRole();
                    model.Id = Convert.ToInt32(dr["Id"]);
                    if (DBNull.Value != dr["UserId"])
                    {
                        model.UserId = Convert.ToInt32(dr["UserId"]);
                    }
                    model.IsDelete = Convert.ToBoolean(dr["IsDelete"]);
                    if (DBNull.Value != dr["RoleId"])
                    {
                        model.RoleId = Convert.ToInt32(dr["RoleId"]);
                    }
                    list.Add(model);
                }
            }
            return(list);
        }
Пример #14
0
        public ActionResult DeleteConfirmed(int id)
        {
            SysUserRole sysUserRole = db.SysUserRoles.Find(id);

            db.SysUserRoles.Remove(sysUserRole);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Пример #15
0
        /// <summary>
        /// 清楚用户所在的角色
        /// </summary>
        /// <param name="userId"></param>
        /// <param name="roleName"></param>
        public void RemoveUserFromRole(int operater, int roleId, int userId)
        {
            SysUserRole userRole = _db.SysUserRole.Find(roleId, userId);

            _db.SysUserRole.Remove(userRole);
            _db.SaveChanges();

            AddOperateHistory(operater, Enumeration.OperateType.Update, roleId, string.Format("移除用户(ID:{0})所在的角色(ID:{1})", userId, roleId));
        }
Пример #16
0
        /// <summary>
        /// 清楚用户所在的角色
        /// </summary>
        /// <param name="userId"></param>
        /// <param name="roleName"></param>
        public void RemoveUserFromRole(int roleId, int userId)
        {
            SysUserRole userRole = _db.SysUserRole.Where(m => m.RoleId == roleId && m.UserId == userId).FirstOrDefault();

            if (userRole != null)
            {
                _db.SysUserRole.Remove(userRole);
                _db.SaveChanges();
            }
        }
Пример #17
0
        /// <summary>
        /// 给角色分配用户
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public JsonResult SaveRoleUser(SysUserRole model)
        {
            model.Enabled = 1;
            model.InUser  = this.CurrentUser.UserId;
            var result = ServiceHelper.CallService(ServiceConst.SysUserApi.AddUserForRole,
                                                   JsonConvert.SerializeObject(model),
                                                   this.CurrentUser.Token);

            return(Json(result, JsonRequestBehavior.AllowGet));
        }
Пример #18
0
 /// <summary>
 /// 增加
 /// </summary>
 /// <param name="SysUserRole">SysUserRole实体对象</param>
 /// <returns>bool值,判断是否操作成功</returns>
 public bool Add(SysUserRole model)
 {
     SqlParameter[] param = new SqlParameter[]
     {
         new SqlParameter("@UserId", model.UserId),
         new SqlParameter("@IsDelete", model.IsDelete),
         new SqlParameter("@RoleId", model.RoleId)
     };
     return(DBHelper.ExecuteNonQuery("SysUserRole_Add", param));
 }
Пример #19
0
 /// <summary>
 /// 增加
 /// </summary>
 /// <param name="SysUserRole">SysUserRole实体对象</param>
 /// <returns>int值,返回自增ID</returns>
 public int AddReturnId(SysUserRole model)
 {
     SqlParameter[] param = new SqlParameter[]
     {
         new SqlParameter("@UserId", model.UserId),
         new SqlParameter("@IsDelete", model.IsDelete),
         new SqlParameter("@RoleId", model.RoleId)
     };
     return(Convert.ToInt32(DBHelper.ExecuteScalar("SysUserRole_AddReturnId", param)));
 }
        public async Task <JsonResult> DoCreate([FromBody] SysUserRole entity)
        {
            var jm = new AdminUiCallBack();

            var bl = await _sysUserRoleServices.InsertAsync(entity) > 0;

            jm.code = bl ? 0 : 1;
            jm.msg  = bl ? GlobalConstVars.CreateSuccess : GlobalConstVars.CreateFailure;

            return(new JsonResult(jm));
        }
Пример #21
0
 public ActionResult Edit([Bind(Include = "ID,SysUserID,SysRoleID")] SysUserRole sysUserRole)
 {
     if (ModelState.IsValid)
     {
         db.Entry(sysUserRole).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.SysRoleID = new SelectList(db.SysRoles, "ID", "RoleName", sysUserRole.SysRoleID);
     ViewBag.SysUserID = new SelectList(db.SysUsers, "ID", "UserName", sysUserRole.SysUserID);
     return(View(sysUserRole));
 }
Пример #22
0
        /// <summary>
        /// 新增角色
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        private async Task <ResponseBase> AddUserRole(SaveUserRoleRequest request)
        {
            var role = new SysUserRole()
            {
                Name           = request.Name,
                Remark         = string.Empty,
                AuthorityValue = GetAuthorityValue(request.Ids)
            };
            await _sysUserRoleBll.AddUserRole(role);

            return(ResponseBase.Success());
        }
Пример #23
0
        private OPResult Update(SysUserBO user)
        {
            var roleIDs            = RolesCurrentUserCover.Select(rs => rs.ID);//加上ToList()在下面执行时就抛出Contains不支持的异常,坑爹
            List <SysUserRole> urs = new List <SysUserRole>();

            foreach (var rs in user.Roles)
            {
                SysUserRole ur = new SysUserRole
                {
                    UserId    = user.ID,
                    RoleId    = rs.ID,
                    CreatorID = VMGlobal.CurrentUser.ID
                };
                urs.Add(ur);
            }

            var brandIDs         = VMGlobal.PoweredBrands.Select(bs => bs.ID);
            List <UserBrand> ubs = new List <UserBrand>();

            foreach (var bs in user.Brands)
            {
                UserBrand ub = new UserBrand
                {
                    UserID    = user.ID,
                    BrandID   = bs.ID,
                    CreatorID = VMGlobal.CurrentUser.ID
                };
                ubs.Add(ub);
            }

            using (TransactionScope scope = new TransactionScope())
            {
                try
                {
                    LinqOP.Update <SysUser>(user);
                    LinqOP.Delete <SysUserRole>(ur => roleIDs.Contains(ur.RoleId) && ur.UserId == user.ID);
                    VMGlobal.SysProcessQuery.LinqOP.Delete <UserBrand>(ub => brandIDs.Contains(ub.BrandID) && ub.UserID == user.ID);
                    LinqOP.Add <SysUserRole>(urs);
                    VMGlobal.SysProcessQuery.LinqOP.Add <UserBrand>(ubs);
                    scope.Complete();
                    return(new OPResult {
                        IsSucceed = true, Message = "更新成功."
                    });
                }
                catch (Exception e)
                {
                    return(new OPResult {
                        IsSucceed = false, Message = "更新失败,失败原因:\n" + e.Message
                    });
                }
            }
        }
Пример #24
0
        public ActionResult Create([Bind(Include = "ID,SysUserID,SysRoleID")] SysUserRole sysUserRole)
        {
            if (ModelState.IsValid)
            {
                db.SysUserRoles.Add(sysUserRole);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.SysRoleID = new SelectList(db.SysRoles, "ID", "RoleName", sysUserRole.SysRoleID);
            ViewBag.SysUserID = new SelectList(db.SysUsers, "ID", "UserName", sysUserRole.SysUserID);
            return(View(sysUserRole));
        }
Пример #25
0
        public ActionResult Add(FarmMonitor.Model.SysUserInfo model, string roleinfoName)
        {
            if (string.IsNullOrEmpty(model.Name))
            {
                return(Content("<script>alert('名字不能为空');window.location.href='/UserInfoManage/Add/'</script>"));
            }
            if (string.IsNullOrEmpty(model.Password))
            {
                return(Content("<script>alert('密码不能为空';window.location.href='/UserInfoManage/Add/')</script>"));
            }
            if (string.IsNullOrEmpty(model.Tel) && string.IsNullOrEmpty(model.Mobile))
            {
                return(Content("<script>alert('电话和手机不能为空');window.location.href='/UserInfoManage/Add/'</script>"));
            }
            if (string.IsNullOrEmpty(model.Province.ToString()) || string.IsNullOrEmpty(model.City.ToString()))
            {
                return(Content("<script>alert('省份城市不能为空');window.location.href='/UserInfoManage/Add/'</script>"));
            }
            var usero = userinfoman.GetModelByUserName(model.Name);

            if (usero != null)
            {
                return(Content("<script>alert('用户名重复');window.location.href='/UserInfoManage/Add/'</script>"));
            }
            #region 增加用户信息
            userinfo.Name       = model.Name;
            userinfo.Password   = EncryptCommon.EncryptMD5(model.Password);
            userinfo.UserCode   = model.UserCode;
            userinfo.Sex        = model.Sex;
            userinfo.Tel        = model.Tel == null ? "" : model.Tel;
            userinfo.Birthday   = model.Birthday;
            userinfo.Province   = model.Province;
            userinfo.City       = model.City;
            userinfo.Mobile     = model.Mobile == null ? "" : model.Mobile;
            userinfo.Email      = model.Email == null ? "" : model.Email;
            userinfo.UserState  = model.UserState;
            userinfo.Remark     = model.Remark == null ? "" : model.Remark;
            userinfo.CreateDate = DateTime.Now;
            userinfoman.Add(userinfo);
            #endregion

            #region 增加用户角色关联表
            SysUserRoleMan userroleman = new SysUserRoleMan();
            SysUserRole    userrole    = new SysUserRole();
            userrole.RoleId     = Convert.ToInt32(roleinfoName);
            userrole.UserId     = userinfo.ID;
            userrole.CreateTime = DateTime.Now;
            userroleman.Add(userrole);
            #endregion
            return(Content("<script>alert('增加成功');window.location.href='/UserInfoManage/Index/'</script>"));
        }
Пример #26
0
        // GET: SysUserRoles/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            SysUserRole sysUserRole = db.SysUserRoles.Find(id);

            if (sysUserRole == null)
            {
                return(HttpNotFound());
            }
            return(View(sysUserRole));
        }
Пример #27
0
        public CustomJsonResult RemoveUserFromRole(int operater, int roleId, int[] userIds)
        {
            foreach (int userId in userIds)
            {
                SysUserRole userRole = _db.SysUserRole.Find(roleId, userId);
                _db.SysUserRole.Remove(userRole);
                _db.SaveChanges();


                AddOperateHistory(operater, Enumeration.OperateType.Update, roleId, string.Format("移除用户(ID:{0})所在的角色(ID:{1})", userId, roleId));
            }


            return(new CustomJsonResult(ResultType.Success, ResultCode.Success, "移除成功"));
        }
Пример #28
0
        public async Task <IActionResult> UpdateSysUserRole(SysUserRole sysUserRole)
        {
            var res = await _sysUserRoleService.Update(sysUserRole);

            if (res)
            {
                messageModel.response = true;
            }
            else
            {
                messageModel.response = false;
                messageModel.msg      = "更新失败";
            }
            return(new JsonResult(messageModel));
        }
Пример #29
0
 public ActionResult Edit(SysUserRole sysuserrole)
 {
     if (ModelState.IsValid)
     {
         sysuserroleRepository.InsertOrUpdate(sysuserrole);
         sysuserroleRepository.Save();
         return(RedirectToAction("Index"));
     }
     else
     {
         ViewBag.PossibleSysUsers = sysuserRepository.All;
         ViewBag.PossibleSysRoles = sysroleRepository.All;
         return(View());
     }
 }
Пример #30
0
        // GET: SysUserRoles/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            SysUserRole sysUserRole = db.SysUserRoles.Find(id);

            if (sysUserRole == null)
            {
                return(HttpNotFound());
            }
            ViewBag.SysRoleID = new SelectList(db.SysRoles, "ID", "RoleName", sysUserRole.SysRoleID);
            ViewBag.SysUserID = new SelectList(db.SysUsers, "ID", "UserName", sysUserRole.SysUserID);
            return(View(sysUserRole));
        }