コード例 #1
0
ファイル: MenuController.cs プロジェクト: ngochieu0302/IG42
        public ActionResult GetItemById(string key, int id)
        {
            var obj = key != Keyapi ? new MenusItem() : _da.GetItemById(id);

            return(Json(obj, JsonRequestBehavior.AllowGet));
        }
コード例 #2
0
        public ActionResult Actions()
        {
            var           msg   = new JsonMessage();
            var           model = new Menu();
            List <Menu>   ltsMenuItems;
            StringBuilder stbMessage;
            MenusItem     parent;

            switch (DoAction)
            {
            case ActionType.Add:
                try
                {
                    UpdateModel(model);
                    model.IsDeleted  = false;
                    model.AgencyID   = Utility.AgencyId;
                    model.LanguageId = Fdisystem.LanguageId;
                    parent           = _da.GetItemById(model.ParentId ?? 0);
                    if (parent != null)
                    {
                        model.IsLevel = parent.IsLevel + 1;
                    }
                    else
                    {
                        model.IsLevel = 1;
                    }

                    _da.Add(model);
                    _da.Save();
                    msg = new JsonMessage
                    {
                        Erros   = false,
                        ID      = model.Id.ToString(),
                        Type    = model.GroupId ?? 0,
                        Message = string.Format("Đã thêm mới: <b>{0}</b>", Server.HtmlEncode(model.Name))
                    };
                }
                catch (Exception ex)
                {
                    LogHelper.Instance.LogError(GetType(), ex);
                }
                break;

            case ActionType.Edit:
                try
                {
                    model = _da.GetById(ArrId.FirstOrDefault());
                    UpdateModel(model);
                    parent = _da.GetItemById(model.ParentId ?? 0);
                    if (parent != null)
                    {
                        model.IsLevel = parent.IsLevel + 1;
                    }
                    else
                    {
                        model.IsLevel = 1;
                    }
                    _da.Save();
                    msg = new JsonMessage
                    {
                        Erros   = false,
                        ID      = model.Id.ToString(),
                        Type    = model.GroupId ?? 0,
                        Message = string.Format("Đã cập nhật: <b>{0}</b>", model.Name)
                    };
                }
                catch (Exception ex)
                {
                    LogHelper.Instance.LogError(GetType(), ex);
                }
                break;

            case ActionType.Delete:
                ltsMenuItems = _da.GetListByArrId(ArrId);
                stbMessage   = new StringBuilder();
                foreach (var item in ltsMenuItems)
                {
                    item.IsDeleted = true;
                    stbMessage.AppendFormat("Đã xóa chuyên mục <b>{0}</b>.<br />", Server.HtmlEncode(item.Name));
                }
                msg.ID = string.Join(",", ArrId);
                _da.Save();
                msg.Message = stbMessage.ToString();
                break;

            case ActionType.Show:
                ltsMenuItems = _da.GetListByArrId(ArrId);     //Chỉ lấy những đối tượng ko được hiển thị
                stbMessage   = new StringBuilder();
                foreach (var item in ltsMenuItems)
                {
                    item.IsShow = true;
                    stbMessage.AppendFormat("Đã hiển thị <b>{0}</b>.<br />", Server.HtmlEncode(item.Name));
                }
                _da.Save();
                msg.ID      = string.Join(",", ltsMenuItems.Select(o => o.Id));
                msg.Message = stbMessage.ToString();
                break;

            case ActionType.Hide:
                ltsMenuItems = _da.GetListByArrId(ArrId);     //Chỉ lấy những đối tượng được hiển thị
                stbMessage   = new StringBuilder();
                foreach (var item in ltsMenuItems)
                {
                    item.IsShow = false;
                    stbMessage.AppendFormat("Đã ẩn <b>{0}</b>.<br />", Server.HtmlEncode(item.Name));
                }
                _da.Save();
                msg.ID      = string.Join(",", ltsMenuItems.Select(o => o.Id));
                msg.Message = stbMessage.ToString();
                break;

            case ActionType.Order:
                try
                {
                    if (!string.IsNullOrEmpty(Request["OrderValues"]))
                    {
                        var orderValues = Request["OrderValues"];
                        if (orderValues.Contains("|"))
                        {
                            foreach (var keyValue in orderValues.Split('|'))
                            {
                                if (keyValue.Contains("_"))
                                {
                                    var tempCategory = _da.GetById(Convert.ToInt32(keyValue.Split('_')[0]));
                                    tempCategory.Sort = Convert.ToInt32(keyValue.Split('_')[1]);
                                    _da.Save();
                                }
                            }
                        }
                        msg.ID      = string.Join(",", orderValues);
                        msg.Message = "Đã cập nhật lại thứ tự";
                    }
                }
                catch (Exception ex)
                {
                    LogHelper.Instance.LogError(GetType(), ex);
                }
                break;
            }

            if (string.IsNullOrEmpty(msg.Message))
            {
                msg.Message = "Không có hành động nào được thực hiện.";
                msg.Erros   = true;
            }

            return(Json(msg, JsonRequestBehavior.AllowGet));
        }