Пример #1
0
        /// <summary>
        /// 保存用户角色
        /// </summary>
        /// <param name="ID">用户ID</param>
        /// <param name="Role_Name">角色名称</param>
        /// <param name="Role_ID">角色ID</param>
        /// <returns></returns>
        public ActionResult SaveRole(int ID, int Role_ID)
        {
            using (LFAdminEntities hee = new LFAdminEntities())
            {
                var turList = hee.T_User_Role.Where(o => o.User_ID == ID).ToList();
                if (turList.Count > 0)
                {
                    hee.T_User_Role.RemoveRange(turList);
                }

                //保存用户角色
                T_User_Role ur = new T_User_Role();
                ur.Role_ID = Role_ID;
                ur.User_ID = ID;
                hee.T_User_Role.Add(ur);

                //保存用户角色名称
                var user = hee.T_User.Where(o => o.ID == ID).FirstOrDefault();
                if (user != null)
                {
                    var ro = hee.T_Role.Where(o => o.ID == Role_ID).FirstOrDefault();
                    if (ro != null)
                    {
                        user.Role_Name = ro.Role_Name;
                    }
                }

                //保存用户权限
                var rpList = hee.T_Role_Permission.Where(o => o.Role_ID == Role_ID).ToList();
                if (rpList.Count() > 0)
                {
                    var upList = hee.T_User_Permission.Where(o => o.User_ID == ID).ToList();
                    if (upList.Count() > 0)
                    {
                        hee.T_User_Permission.RemoveRange(upList);
                    }
                    foreach (var rp in rpList)
                    {
                        T_User_Permission up = new T_User_Permission();
                        up.User_ID   = ID;
                        up.Rule_Code = rp.Permission_Code;
                        hee.T_User_Permission.Add(up);
                    }
                }

                hee.SaveChanges();
                rd.IsSuccess     = "1";
                rd.MessageString = "权限保存成功!";
                LoggerHelper.Info(Session["JGLoginAccountID"].ToString(), "UserController-SaveRole", rd.MessageString);
                return(new JsonResult {
                    Data = rd
                });
            }
        }
        private void AddOrModify(HttpContext context)
        {
            //===============================================================
            //获取字段:【用户name】
            string id, id_role, name, birthday, telephone, address, create_time, remarks, password;

            id = id_role = name = birthday = telephone = address = create_time = remarks = password = "";
            //获取前台传来的值

            if (null != context.Request.QueryString["id"])
            {
                id = context.Request.QueryString["id"].ToString().Trim();
            }
            if (null != context.Request.QueryString["id_role"])
            {
                id_role = context.Request.QueryString["id_role"].ToString().Trim();
            }
            if (null != context.Request.QueryString["name"])
            {
                name = context.Request.QueryString["name"].ToString().Trim();
            }
            if (null != context.Request.QueryString["birthday"])
            {
                birthday = context.Request.QueryString["birthday"].ToString().Trim();
            }
            if (null != context.Request.QueryString["telephone"])
            {
                telephone = context.Request.QueryString["telephone"].ToString().Trim();
            }
            if (null != context.Request.QueryString["address"])
            {
                address = context.Request.QueryString["address"].ToString().Trim();
            }
            if (null != context.Request.QueryString["password"])
            {
                password = context.Request.QueryString["password"].ToString().Trim();
            }
            if (null != context.Request.QueryString["create_time"])
            {
                create_time = context.Request.QueryString["create_time"].ToString().Trim();
            }
            if (null != context.Request.QueryString["remarks"])
            {
                remarks = context.Request.QueryString["remarks"].ToString().Trim();
            }


            //获取角色信息
            T_Role t_role = new T_Role();

            if (id_role != "")
            {
                t_role = bll_role.GetModel(Convert.ToInt32(id_role));
            }

            Model.T_User t_user = new Model.T_User();
            if (method == "add")
            {
                //检查用户名是否已经存在
                DataSet ds = bll_user.GetList(" name='" + name + "'");

                if (ds.Tables[0].Rows.Count > 0)
                {
                    message.flag = false;
                    message.msg  = "用户名已经存在";
                }
                else
                {
                    t_user.name     = name;
                    t_user.password = Util.GetMD5(password);
                    if (birthday != "")
                    {
                        t_user.birthday = Convert.ToDateTime(birthday);
                    }
                    t_user.telephone   = telephone;
                    t_user.address     = address;
                    t_user.create_time = DateTime.Now;
                    t_user.remarks     = remarks;

                    int n = bll_user.Add(t_user);

                    //插入用户角色信息
                    Model.T_User_Role t_user_role = new T_User_Role();
                    if (id_role != "")
                    {
                        t_user_role.id_role = Convert.ToInt32(id_role);
                    }

                    t_user_role.id_user = n;
                    bll_user_role.Add(t_user_role);

                    if (n > 0)
                    {
                        message.flag = true;
                        message.msg  = "添加成功";
                    }
                    else
                    {
                        message.flag = false;
                        message.msg  = "添加失败";
                    }
                }
            }
            else
            {
                t_user = bll_user.GetModel(Convert.ToInt32(id));

                //检查用户名是否已经存在
                DataSet ds = bll_user.GetList(" name='" + name + "' and id != " + id);

                if (ds.Tables[0].Rows.Count > 0)
                {
                    message.flag = false;
                    message.msg  = "用户名已经存在";
                }
                else
                {
                    t_user.name     = name;
                    t_user.password = Util.GetMD5(password);
                    if (birthday != "")
                    {
                        t_user.birthday = Convert.ToDateTime(birthday);
                    }
                    t_user.telephone   = telephone;
                    t_user.address     = address;
                    t_user.create_time = DateTime.Now;
                    t_user.remarks     = remarks;

                    bool flag = bll_user.Update(t_user);

                    //删除旧的在插入新的
                    bll_user_role.DeleteByWhere(" id_user = "******"")
                    {
                        t_user_role.id_role = Convert.ToInt32(id_role);
                    }

                    t_user_role.id_user = Convert.ToInt32(id);
                    bll_user_role.Add(t_user_role);

                    if (flag)
                    {
                        message.flag = true;
                        message.msg  = "修改成功";
                    }
                    else
                    {
                        message.flag = false;
                        message.msg  = "修改失败";
                    }
                }
            }

            String jsonString = JsonHelper.Object2Json <Message>(message);

            context.Response.Write(jsonString);
        }