Ejemplo n.º 1
0
 public ActionResult YhgnEdit(int yhid = 0, string gnids = "")
 {
     ViewModels.Message rsp     = new ViewModels.Message();
     DAL.yhgn           yhgndal = new DAL.yhgn();
     if (yhid > 0)
     {
         //先删除用户所有权限
         if (yhgndal.deleteByYhid(yhid))
         {
             if (!string.IsNullOrEmpty(gnids))
             {
                 //添加功能
                 string[] gnidArr = gnids.Split('#');
                 foreach (string gnid in gnidArr)
                 {
                     yhgndal.Add(new Model.yhgn {
                         yhid = yhid, gnid = Convert.ToInt32(gnid)
                     });
                 }
             }
             rsp.sno = 1;
         }
         else
         {
             rsp.sno = 2;
             rsp.msg = "数据操作失败";
         }
     }
     else
     {
         rsp.sno = 2;
         rsp.msg = "未指定操作用户";
     }
     return(Json(rsp, JsonRequestBehavior.DenyGet));
 }
Ejemplo n.º 2
0
        public ActionResult YhGnList(int[] gnids)
        {
            ViewModels.Message b = new ViewModels.Message();

            int yhid = 1;//要从用户登录信息中获取

            DAL.yhgn yhgndal = new DAL.yhgn();
            foreach (int gnid in gnids)
            {
                yhgndal.Add(new Model.yhgn {
                    yhid = yhid, gnid = gnid
                });
            }
            b.sno = 1;
            return(Json(b, JsonRequestBehavior.DenyGet));
        }
Ejemplo n.º 3
0
        //获取用户功能
        //返回易绑定的格式
        public List <ViewModels.YhgnDTO> getYhgnDTO(int yhid)
        {
            //返回易绑定的格式
            List <ViewModels.YhgnDTO> yhgndtos = new List <ViewModels.YhgnDTO>();

            //获取系统所有功能(去除公共功能)
            List <Model.gn> gns = new List <Model.gn>();

            DAL.gn  gndal = new DAL.gn();
            DataSet ds    = gndal.GetList("");

            if (ds.Tables[0].Rows.Count > 0)
            {
                foreach (DataRow dr in ds.Tables[0].Rows)
                {
                    Model.gn gn = gndal.DataRowToModel(dr);
                    if (!gn.ispublic)
                    {
                        gns.Add(gn);
                    }
                }
            }

            //获取用户拥有的功能权限
            DAL.yhgn          yhgndal = new DAL.yhgn();
            List <Model.yhgn> yhgns   = yhgndal.getGnsByYhid(yhid);


            var query = from r in gns
                        orderby r.controller
                        group r by new { c = r.controller, cn = r.controllername } into g
                select new
            {
                g.Key.c,
                g.Key.cn,
                actions = from r1 in g
                          orderby r1.action
                          select new
                {
                    r1.gnid,
                    r1.action,
                    r1.actionname
                }
            };

            foreach (var item in query)
            {
                ViewModels.YhgnDTO yhgndto = new ViewModels.YhgnDTO();
                yhgndto.controller     = item.c;
                yhgndto.controllername = item.cn;

                foreach (var action in item.actions)
                {
                    ViewModels.YhAction yhaction = new ViewModels.YhAction
                    {
                        gnid       = action.gnid,
                        action     = action.action,
                        actionname = action.actionname
                    };

                    //绑定用户是否拥有该功能
                    if (yhgns.FindAll(b => b.gnid == action.gnid).Count > 0)
                    {
                        yhaction.isallow = true;
                    }

                    yhgndto.actions.Add(yhaction);
                }
                yhgndtos.Add(yhgndto);
            }

            return(yhgndtos);
        }