Example #1
0
        /// <summary>
        /// 编辑
        /// </summary>
        /// <param name="p"></param>
        /// <returns></returns>
        public Result Edit(MenuEditParam p)
        {
            var model = dal.Get(p.ID);

            if (model == null)
            {
                return(new Result(300, "数据不存在!"));
            }
            //model.Code = p.Code;
            model.Comment  = p.Comment;
            model.Icon     = p.Icon;
            model.IconType = p.IconType;
            model.Name     = p.Name;
            model.PMenu    = p.PID == 0 ? null : new Menu {
                ID = p.PID
            };
            model.Sort    = p.Sort;
            model.Status  = p.Status;
            model.Url     = p.Url;
            model.UrlType = p.UrlType;

            var result = dal.Edit(model);

            if (result)
            {
                return(new Result(200, "编辑成功!"));
            }
            else
            {
                return(new Result(300, "编辑失败!"));
            }
        }
Example #2
0
        /// <summary>
        /// 添加
        /// </summary>
        /// <param name="p"></param>
        /// <returns></returns>
        public Result Add(MenuEditParam p)
        {
            // 查找父节点的Code
            string PCode = "";

            if (p.PID > 0) // 不是顶级菜单
            {
                var query1   = Restrictions.Eq("ID", p.PID);
                var appMenu1 = dal.Get(query1);
                if (appMenu1 != null)
                {
                    PCode = appMenu1.Code;
                }
            }

            // 为当前结点生成Code
            string     Code = "";
            ICriterion query;

            if (p.PID == 0)
            {
                query = Restrictions.Eq("PMenu", null);
            }
            else
            {
                query = Restrictions.Eq("PMenu", new Menu {
                    ID = p.PID
                });
            }
            var list = dal.List(query);

            for (var i = 1; i <= 999; i++)
            {
                if (i < 10) // 1-9
                {
                    Code = PCode + "00" + i;
                }
                else if (i < 100) // 10-99
                {
                    Code = PCode + "0" + i;
                }
                else // 100-999
                {
                    Code = PCode + i;
                }
                if (list.Where(o => o.Code == Code).Count() == 0)
                {
                    break;
                }
            }

            // 添加菜单
            var menu = new Menu
            {
                Code    = Code,
                Comment = p.Comment,
                Icon    = p.Icon,
                ID      = 0,
                Name    = p.Name,
                PMenu   = p.PID == 0 ? null : new Menu {
                    ID = p.PID
                },
                Sort    = p.Sort,
                Status  = p.Status,
                Url     = p.Url,
                UrlType = p.UrlTypeID == null ? null : new DicItem {
                    ID = p.UrlTypeID.Value
                },
                OpenType = p.OpenTypeID == null ? null : new DicItem {
                    ID = p.OpenTypeID.Value
                },
                IconType = p.IconTypeID == null ? null : new DicItem {
                    ID = p.IconTypeID.Value
                }
            };
            var result = dal.Add(menu);

            if (result)
            {
                return(new Result(200, "添加成功!"));
            }
            else
            {
                return(new Result(300, "添加失败!"));
            }
        }
Example #3
0
        public JsonResult Edit(MenuEditParam p)
        {
            var result = bll.Edit(p);

            return(Json(result));
        }
Example #4
0
        public JsonResult Add(MenuEditParam p)
        {
            var result = bll.Add(p);

            return(Json(result));
        }