Пример #1
0
        public ActionResult setRole(int userid, List <int> roles)
        {
            //先通过用户ID清除与该用户id的相关角色关系
            List <R_User_Roles> urInfo = db.R_User_Roles.Where(p => p.UserID == userid).ToList();

            foreach (var item in urInfo)
            {
                db.R_User_Roles.Remove(item);
            }
            db.SaveChanges();


            if (roles != null)
            {
                //添加新的关系--遍历所选中的角色
                foreach (var item in roles)
                {
                    //new 一个新的 R_User_Roles对象,将角色ID 与 RoleID 组成一个新的对象添加
                    R_User_Roles r_User_Roles = new R_User_Roles()
                    {
                        UserID = userid,
                        RoleID = item
                    };
                    db.R_User_Roles.Add(r_User_Roles);
                }
                db.SaveChanges();
            }
            return(RedirectToAction("Index", "UserInfo"));
        }
Пример #2
0
        public ActionResult SetRole(int?userID, List <int> roleids)
        {
            //先删除该用户之前所有角色
            List <R_User_Roles> list = db.R_User_Roles.Where(p => p.UserID == userID).ToList();

            if (list.Count > 0)
            {
                foreach (var r_User_Roles in list)
                {
                    db.R_User_Roles.Remove(r_User_Roles);
                }
                db.SaveChanges();
            }

            if (roleids != null)
            {
                //再添加本次设置的角色,在关系表中添加记录
                foreach (var roleID in roleids)
                {
                    R_User_Roles rur = new R_User_Roles();
                    rur.RoleID = roleID;
                    rur.UserID = userID;
                    db.R_User_Roles.Add(rur);
                }
                db.SaveChanges();
            }

            return(RedirectToAction("Index"));
        }
        public ActionResult SetRoles(int UserID, List <int> roles)
        {
            //先通过用户ID去清除所有与该用户相关的角色关系
            var rURList = db.R_User_Roles.Where(p => p.UserID == UserID);

            foreach (var rUR in rURList)
            {
                db.R_User_Roles.Remove(rUR);
            }
            db.SaveChanges();

            if (roles != null)
            {
                //添加新的角色关系
                foreach (var roleID in roles)
                {
                    //角色ID和用户ID组成新的R_User_Roles对象,添加到上下文对应R_User_Roles的集合中
                    R_User_Roles rur = new R_User_Roles()
                    {
                        UserID = UserID,
                        RoleID = roleID
                    };
                    db.R_User_Roles.Add(rur);
                }
                //保存到数据库中
                db.SaveChanges();
            }

            return(RedirectToAction("Index", "UserInfo"));
        }
        public ActionResult SetRole(int?UserID, List <int> roles)
        {
            //先通过用户ID去清除所有与该用户相关的角色关系
            var r = db.R_User_Roles.Where(p => p.UserID == UserID);

            foreach (var item in r)
            {
                db.R_User_Roles.Remove(item);
            }
            db.SaveChanges();
            if (roles != null)
            {
                //添加新的角色关系
                foreach (var roleID in roles)
                {
                    //角色ID和用户ID组成新的R_User_Roles对象
                    R_User_Roles rur = new R_User_Roles()
                    {
                        UserID = UserID,
                        RoleID = roleID
                    };
                    db.R_User_Roles.Add(rur);
                }
                db.SaveChanges();
            }


            return(RedirectToAction("Index", "UserInfo"));
        }
Пример #5
0
        /// <summary>
        /// 保存 , HttpPostedFileBase upPhoto
        /// </summary>
        /// <returns></returns>[]
        public ActionResult Add(UserInfos userInfo, int[] roleIDS)
        {
            if (ModelState.IsValid)
            {
                ////处理图片
                //if (upPhoto != null)
                //{
                //    //1、获得文件的名称
                //    string fileName = Path.GetFileName(upPhoto.FileName);

                //    //2、判断文件是否是图片
                //    //string hz = Path.GetExtension(fileName); //.jpg
                //    if (fileName.EndsWith("jpg") || fileName.EndsWith("png")
                //        || fileName.EndsWith("gif") || fileName.EndsWith("jpeg"))
                //    {
                //        //3、保存图片到项目文件夹当中
                //        upPhoto.SaveAs(Server.MapPath("~/Content/images/users/" + fileName));
                //        //4、将图片文件名,绑定到该用户的photo字段中
                //        userInfo.Photo = fileName;
                //    }
                //    else
                //    {
                //        return Content("<script>alert('上传的文件必须是图片!')</script>");
                //    }
                //}
                //else
                //{
                //    return Content("<script>alert('未获取上传的文件')</script>");
                //}

                db.UserInfos.Add(userInfo);
                //保存
                db.SaveChanges();
                //同时保存该用户和角色的对应关系(多个) R_User_Roles
                //怎么获取UserID     userInfo.ID
                ///循环你选择的角色ID的数组,没循环一次,就要插入一个关系R_User_Roles
                if (roleIDS != null)
                {
                    foreach (var roleid in roleIDS)
                    {
                        R_User_Roles r_User_Roles = new R_User_Roles()

                        {
                            UserID = userInfo.ID,
                            RoleID = roleid
                        };
                        db.R_User_Roles.Add(r_User_Roles);
                    }
                }

                db.SaveChanges();
                //R_User_Roles添加多条记录
                return(RedirectToAction("Index"));
            }
            else
            {
                return(RedirectToAction("Add"));
            }
        }
Пример #6
0
        /// <summary>
        /// 根据关系表的id删除角色与用户的关系
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public ActionResult Delete(int?id)
        {
            if (id != null)
            {
                R_User_Roles r_User_Roles = db.R_User_Roles.Find(id);
                db.R_User_Roles.Remove(r_User_Roles);
                db.SaveChanges();
            }

            return(RedirectToAction("Index", "User"));
        }
        public ActionResult Delete(int?RUserRolesID)
        {
            //获得删除的对象
            R_User_Roles r = db.R_User_Roles.Find(RUserRolesID);

            //EF remove删除对象
            db.R_User_Roles.Remove(r);
            //从数据库中删除对象
            db.SaveChanges();
            return(RedirectToAction("Index", "UserInfo"));
        }
Пример #8
0
        public ActionResult Update(HttpPostedFileBase EPhoto, UserInfos userInfo, List <int> roles)
        {
            //------1、判断是否重新添加图片
            if (EPhoto != null)
            {
                //判断图片大小
                if (EPhoto.ContentLength > 0 && EPhoto.ContentLength < 4194304)
                {
                    //获取上传路径
                    string FileName = Path.GetFileName(EPhoto.FileName);
                    //获取文件后缀名
                    string suff = FileName.Substring(FileName.IndexOf(".") + 1);

                    //判断格式
                    if (suff == "jpg" || suff == "png" || suff == "gif")
                    {
                        //图片存储位置
                        EPhoto.SaveAs(Server.MapPath("~/images/users/" + EPhoto.FileName));
                        userInfo.Photo = EPhoto.FileName;
                    }
                }
            }
            //----2、修改用户信息--Modified看你这条记录中是否有数据发生改变
            db.Entry(userInfo).State = System.Data.Entity.EntityState.Modified;
            db.SaveChanges();

            //-----3、修改用户与角色的关系

            //先通过用户ID清除与该用户id的相关角色关系
            List <R_User_Roles> urInfo = db.R_User_Roles.Where(p => p.UserID == userInfo.ID).ToList();

            foreach (var item in urInfo)
            {
                db.R_User_Roles.Remove(item);
            }
            db.SaveChanges();


            //添加新的关系--遍历所选中的角色
            foreach (var item in roles)
            {
                //new 一个新的 R_User_Roles对象,将角色ID 与 RoleID 组成一个新的对象添加
                R_User_Roles r_User_Roles = new R_User_Roles()
                {
                    UserID = userInfo.ID,
                    RoleID = item
                };
                db.R_User_Roles.Add(r_User_Roles);
            }
            db.SaveChanges();

            return(RedirectToAction("Index"));
        }
Пример #9
0
        /// <summary>
        /// 删除【【---角色---】】
        /// </summary>
        /// <param name="ID"></param>
        /// <returns></returns>
        public ActionResult Delete(int ID)
        {
            //根据获得的ID查找
            R_User_Roles kk = db.R_User_Roles.Find(ID);

            //删除
            db.R_User_Roles.Remove(kk);
            //操作数据库
            db.SaveChanges();
            //删除成功后,跳转到另一个控制器下的视图
            return(RedirectToAction("Index", "UserInfo"));
        }
Пример #10
0
        public ActionResult Insert(HttpPostedFileBase Photo, UserInfos userInfo, List <int> roles)
        {
            //-----添加图片
            //判断图片是否为空
            if (Photo != null)
            {
                //判断图片大小
                if (Photo.ContentLength > 0 && Photo.ContentLength < 4194304)
                {
                    //获取上传路径
                    string FileName = Path.GetFileName(Photo.FileName);
                    //获取文件后缀名
                    string suff = FileName.Substring(FileName.IndexOf(".") + 1);

                    //判断格式
                    if (suff == "jpg" || suff == "png" || suff == "gif")
                    {
                        //图片存储位置
                        Photo.SaveAs(Server.MapPath("~/images/users/" + Photo.FileName));
                        userInfo.Photo = Photo.FileName;
                    }
                }
            }
            else
            {
                return(Content("<script>alert('未获取到上传的文件')</script>"));
            }
            //-----添加用户信息
            db.UserInfos.Add(userInfo);
            db.SaveChanges();

            //-----添加用户与角色的关系
            //遍历所选中的角色
            foreach (var item in roles)
            {
                //new 一个新的 R_User_Roles对象,将角色ID 与 RoleID 组成一个新的对象添加
                R_User_Roles UR = new R_User_Roles()
                {
                    UserID = userInfo.ID,
                    RoleID = item
                };
                db.R_User_Roles.Add(UR);
            }

            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        public ActionResult Edit(UserInfos user, HttpPostedFileBase EPhoto, int[] roles)
        {
            //处理图片
            if (EPhoto != null)
            {
                if (EPhoto.ContentLength > 0 && EPhoto.ContentLength < 4194304)
                {
                    string fileName = Path.GetFileName(EPhoto.FileName);
                    //string suffix = fileName.Substring(fileName.LastIndexOf(".") + 1);
                    if (fileName.EndsWith("gif") || fileName.EndsWith("jpg") || fileName.EndsWith("png"))
                    {
                        EPhoto.SaveAs(Server.MapPath("~/Content/images/images/users/" + fileName));
                        user.Photo = fileName;
                    }
                }
            }
            //修改用户信息
            db.Entry(user).State = System.Data.Entity.EntityState.Modified;
            db.SaveChanges();
            //用户与角色的关系
            var r = db.R_User_Roles.Where(p => p.UserID == user.ID);

            foreach (var item in r)
            {
                db.R_User_Roles.Remove(item);
            }
            db.SaveChanges();
            if (roles != null)
            {
                //添加新的角色关系
                foreach (var roleID in roles)
                {
                    //角色ID和用户ID组成新的R_User_Roles对象
                    R_User_Roles rur = new R_User_Roles()
                    {
                        UserID = user.ID,
                        RoleID = roleID
                    };
                    db.R_User_Roles.Add(rur);
                }
                db.SaveChanges();
            }

            return(RedirectToAction("Index"));
        }
Пример #12
0
        public ActionResult Edit(UserInfos user, HttpPostedFileBase EPhoto, int[] roles)
        {
            //一、如果EPhoto不为空就处理图片,替换user里的原来的图片,否则就不处理图片保留原来的图片
            if (EPhoto != null)
            {
                //1、获得文件的名称
                string fileName = Path.GetFileName(EPhoto.FileName);
                //2、判断文件是否是图片
                if (fileName.EndsWith("jpg") || fileName.EndsWith("png") ||
                    fileName.EndsWith("gif") || fileName.EndsWith("jpeg"))
                {
                    //3、保存图片到项目文件夹当中
                    EPhoto.SaveAs(Server.MapPath("~/Content/images/users/" + fileName));
                    //4、将图片文件名,绑定到该用户的photo字段中
                    user.Photo = fileName;
                }
            }
            //二、修改用户信息,该用户的各项属性的值已标记为已被修改,则全部进行修改
            db.Entry(user).State = System.Data.Entity.EntityState.Modified;
            db.SaveChanges();//保存到数据库中
            //三、修改用户与角色的关系
            //先通过用户ID去清除所有与该用户相关的角色关系
            var rURList = db.R_User_Roles.Where(p => p.UserID == user.ID);

            foreach (var rUR in rURList)
            {
                db.R_User_Roles.Remove(rUR);
            }
            db.SaveChanges();
            //添加新的角色关系
            foreach (var roleID in roles)
            {
                //角色ID和用户ID组成新的R_User_Roles对象,添加到上下文对应R_User_Roles的集合中
                R_User_Roles rur = new R_User_Roles()
                {
                    UserID = user.ID,
                    RoleID = roleID
                };
                db.R_User_Roles.Add(rur);
            }
            //保存到数据库中
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
 public ActionResult Add(UserInfos user, HttpPostedFileBase Photo, int[] roles)
 {
     if (ModelState.IsValid)
     {
         foreach (var item in roles)
         {
             R_User_Roles rur = new R_User_Roles();
             rur.RoleID = item;
             rur.UserID = user.ID;
             db.R_User_Roles.Add(rur);
         }
         if (Photo != null)
         {
             if (Photo.ContentLength > 0 && Photo.ContentLength < 4194304)
             {
                 string fileName = Path.GetFileName(Photo.FileName);
                 //string suffix = fileName.Substring(fileName.LastIndexOf(".") + 1);
                 if (fileName.EndsWith("gif") || fileName.EndsWith("jpg") || fileName.EndsWith("png"))
                 {
                     Photo.SaveAs(Server.MapPath("~/Content/images/images/users/" + fileName));
                     user.Photo = fileName;
                 }
             }
             else
             {
                 return(Content("<script>alert('上传的文件必须是图片')</script>"));
             }
         }
         else
         {
             return(Content("<script>alert('未获取上传的文件')</script>"));
         }
         db.UserInfos.Add(user);
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     else
     {
         ViewBag.dlist = db.Departments.ToList();
         ViewBag.list  = db.Roles.ToList();
         return(View());
     }
 }
Пример #14
0
        public ActionResult AddUser(UserInfos user, HttpPostedFileBase Photo, int[] roles)
        {
            //处理图片
            if (Photo != null)
            {
                //1、获得文件的名称
                string fileName = Path.GetFileName(Photo.FileName);

                //2、判断文件是否是图片
                //string hz = Path.GetExtension(fileName); //.jpg
                if (fileName.EndsWith("jpg") || fileName.EndsWith("png") ||
                    fileName.EndsWith("gif") || fileName.EndsWith("jpeg"))
                {
                    //3、保存图片到项目文件夹当中
                    Photo.SaveAs(Server.MapPath("~/Content/images/users/" + fileName));
                    //4、将图片文件名,绑定到该用户的photo字段中
                    user.Photo = fileName;
                }
                else
                {
                    return(Content("<script>alert('上传的文件必须是图片!')</script>"));
                }
            }
            else
            {
                return(Content("<script>alert('未获取上传的文件')</script>"));
            }
            //添加用户
            db.UserInfos.Add(user);
            db.SaveChanges();

            //添加用户与角色的关系
            foreach (var roleID in roles)
            {
                R_User_Roles rur = new R_User_Roles();
                rur.RoleID = roleID;
                rur.UserID = user.ID;
                db.R_User_Roles.Add(rur);
            }
            db.SaveChanges();

            return(RedirectToAction("Index"));
        }
Пример #15
0
        public ActionResult edit(UserInfos userInfo, int[] roleIDS)
        {
            //if (upPhoto!=null)
            //{
            //    string fileName = Path.GetFileName(upPhoto.FileName);
            //    upPhoto.SaveAs(Server.MapPath("~/Content/images/users") + "/" + fileName);
            //    userInfo.Photo = fileName;
            //}

            db.Entry(userInfo).State = EntityState.Modified;
            //保存
            db.SaveChanges();


            //根据用户id先删除角色关系
            var roles = db.R_User_Roles.Where(p => p.UserID == userInfo.ID).ToList();

            foreach (var item in roles)
            {
                db.R_User_Roles.Remove(item);
            }
            db.SaveChanges();

            //再添加角色关系
            foreach (var roleid in roleIDS)
            {
                R_User_Roles r_User_Roles = new R_User_Roles()

                {
                    UserID = userInfo.ID,
                    RoleID = roleid
                };
                db.R_User_Roles.Add(r_User_Roles);
            }
            db.SaveChanges();



            return(RedirectToAction("Index"));
        }