public ActionResult Actions()
        {
            var msg    = new JsonMessage();
            var module = new DN_Module();
            List <DN_Module> ltsModuleItems;
            StringBuilder    stbMessage;
            var list = Request["GroupId"];

            switch (DoAction)
            {
            case ActionType.Add:
                try
                {
                    UpdateModel(module);
                    module.IsDelete = false;
                    _moduleDa.Add(module);
                    module.ST_Group = _moduleDa.ListST_GroupByArrID(FDIUtils.StringToListInt(list));
                    _moduleDa.Save();
                    if (module.IsAll == true)
                    {
                        _moduleDa.AddItemByIAll(module.ID, list);
                    }
                    msg = new JsonMessage
                    {
                        Erros   = false,
                        ID      = module.ID.ToString(),
                        Message = string.Format("Đã thêm mới: <b>{0}</b>", Server.HtmlEncode(module.NameModule))
                    };
                }
                catch (Exception ex)
                {
                    LogHelper.Instance.LogError(GetType(), ex);
                }
                break;

            case ActionType.Edit:
                try
                {
                    module = _moduleDa.GetById(ArrId.FirstOrDefault());
                    UpdateModel(module);
                    module.ST_Group.Clear();
                    module.ST_Group = _moduleDa.ListST_GroupByArrID(FDIUtils.StringToListInt(list));
                    _moduleDa.Save();
                    if (module.IsAll == true)
                    {
                        _moduleDa.AddItemByIAll(module.ID, list);
                    }
                    else
                    {
                        _moduleDa.DeleteItemByIAll(module.ID, list);
                    }
                    msg = new JsonMessage
                    {
                        Erros   = false,
                        ID      = module.ID.ToString(),
                        Message = string.Format("Đã cập nhật : <b>{0}</b>", Server.HtmlEncode(module.NameModule))
                    };
                }
                catch (Exception ex)
                {
                    LogHelper.Instance.LogError(GetType(), ex);
                }
                break;


            case ActionType.Delete:
                ltsModuleItems = _moduleDa.GetListByArrID(ArrId);
                stbMessage     = new StringBuilder();
                foreach (var item in ltsModuleItems)
                {
                    item.IsDelete = true;
                    stbMessage.AppendFormat("Đã xóa  <b>{0}</b>.<br />", Server.HtmlEncode(item.NameModule));
                }
                msg.ID = string.Join(",", ArrId);
                _moduleDa.Save();
                msg.Message = stbMessage.ToString();
                break;

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

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

            case ActionType.Order:
                if (!string.IsNullOrEmpty(Request["OrderValues"]))
                {
                    var orderValues = Request["OrderValues"];
                    if (orderValues.Contains("|"))
                    {
                        foreach (var keyValue in orderValues.Split('|'))
                        {
                            if (keyValue.Contains("_"))
                            {
                                var tempCategory = _moduleDa.GetById(Convert.ToInt32(keyValue.Split('_')[0]));
                                tempCategory.Ord = Convert.ToInt32(keyValue.Split('_')[1]);
                                _moduleDa.Save();
                            }
                        }
                    }
                    msg.ID      = string.Join(",", orderValues);
                    msg.Message = "Đã cập nhật lại thứ tự ";
                }
                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));
        }
Exemple #2
0
        public ActionResult Update(string key, string json, string code)
        {
            try
            {
                if (key == Keyapi)
                {
                    var moduleItem = JsonConvert.DeserializeObject <ModuleUpdateItem>(json);
                    var obj        = _da.GetById(moduleItem.ID);
                    var lstActive  = _da.GetListActive();
                    var lsGuiId1   = GetListRole(code);
                    var listRole   = lsGuiId1.Select(c => c.RoleId).ToList();

                    obj.DN_Roles.Clear();
                    obj.DN_Roles = _da.GetListRolesbyListGuid(listRole);
                    while (obj.DN_Role_ModuleActive.Count > 0)
                    {
                        var item = obj.DN_Role_ModuleActive.FirstOrDefault();
                        _da.Delete(item);
                    }
                    obj.DN_Role_ModuleActive.Clear();
                    foreach (var activeitem in obj.DN_Roles.SelectMany(item => lstActive.Select(active => new DN_Role_ModuleActive
                    {
                        ModuleId = obj.ID,
                        RoleId = item.RoleId,
                        ActiveId = active.ID,
                        Active = true,
                        Check = false,
                        AgencyId = Agencyid()
                    })))
                    {
                        obj.DN_Role_ModuleActive.Add(activeitem);
                    }

                    // quyền cho nhân viên
                    var lsGuiId2 = GetListUser(code);
                    var lstg     = lsGuiId2.Select(c => c.UserId).ToList();
                    obj.DN_Users.Clear();
                    obj.DN_Users = _da.GetListUserbyListGuid(lstg);
                    while (obj.DN_User_ModuleActive.Count > 0)
                    {
                        var item = obj.DN_User_ModuleActive.FirstOrDefault();
                        _da.Delete(item);
                    }
                    obj.DN_User_ModuleActive.Clear();
                    foreach (var activeitem in obj.DN_Users.SelectMany(item => lstActive.Select(active => new DN_User_ModuleActive
                    {
                        ModuleId = obj.ID,
                        UserId = item.UserId,
                        ActiveId = active.ID,
                        Active = true,
                        Check = 1,
                        AgencyId = Agencyid()
                    })))
                    {
                        obj.DN_User_ModuleActive.Add(activeitem);
                    }
                    _da.Save();
                    //if (list.Any() || list1.Any())
                    //    _da.DeleteModuleUserRole(moduleItem.ID, string.Join(",", list1), string.Join(",", list));
                    return(Json(1, JsonRequestBehavior.AllowGet));
                }
                return(Json(0, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                return(Json(0, JsonRequestBehavior.AllowGet));
            }
        }