예제 #1
0
        private void deleteRole()
        {
            try
            {
                if (dataGridView.SelectedRows.Count < 1)
                {
                    return;
                }

                string R_Code = dataGridView.SelectedRows[0].Cells["R_Code"].Value.ToString();

                if (untCommon.QuestionMsg("您确定删除[" + R_Code + "]该项吗?"))
                {
                    SysRoleBLL companybll = new SysRoleBLL();
                    if (companybll.Delete(R_Code) > 0)
                    {
                        untCommon.InfoMsg("删除成功!");
                        loadData();
                    }
                    else
                    {
                        untCommon.InfoMsg("删除失败!");
                    }
                }
            }
            catch (Exception ex)
            {
                untCommon.ErrorMsg("角色管理删除数据异常:" + ex.Message);
            }
        }
        public string delete(SysRoleModel model)
        {
            var a        = roleBLL.Delete(model.Id);
            var jsondata = js.Serialize(new { flag = a });

            return(jsondata);
        }
예제 #3
0
        public ActionResult UpdateData()
        {
            ProductPublishVer ver = null;

            using (var client = new ServiceReference1.Service1Client())
            {
                try
                {
                    //TransactionOptions options=new TransactionOptions();
                    //options.IsolationLevel=IsolationLevel.Serializable;
                    //options.Timeout = new TimeSpan(0, 0, 60);
                    using (TransactionScope tran = new TransactionScope(TransactionScopeOption.Required))
                    {
                        ver = client.UpdatePublish(CommonService.CompanyId, 2, Sys.CurrentUser.FullName);
                        #region 菜单和权限
                        if (ver.ProductModuleVerk__BackingField != null)
                        {
                            var menus  = new List <SysMenus>();
                            var limits = new List <SysLimits>();
                            ver.ProductModuleVerk__BackingField.ProductMenuLimitsk__BackingField.Each(o =>
                            {
                                switch (o.Typek__BackingField)
                                {
                                case 1:
                                    menus.Add(new SysMenus()
                                    {
                                        MenuId = o.MenuIdk__BackingField, PMenuId = o.PMenuIdk__BackingField, SortOrder = o.SortOrderk__BackingField, Status = o.Statusk__BackingField, Title = o.Titlek__BackingField, URL = o.Urlk__BackingField, CompanyId = CommonService.CompanyId
                                    });
                                    break;

                                case 3:
                                    limits.Add(new SysLimits()
                                    {
                                        LimitId = o.MenuIdk__BackingField, PLimitId = o.PMenuIdk__BackingField, SortOrder = o.SortOrderk__BackingField, Status = Convert.ToInt16(o.Statusk__BackingField), Title = o.Titlek__BackingField, CompanyId = CommonService.CompanyId
                                    });
                                    break;

                                default:
                                    break;
                                }
                            });
                            if (menus.Any())
                            {
                                var list = SysMenuBLL.FindList(o => o.CompanyId == CommonService.CompanyId);
                                SysMenuBLL.Delete(list);
                                SysMenuBLL.AddRange(menus);
                            }
                            if (limits.Any())
                            {
                                var list = SysLimitsBLL.FindList(o => o.CompanyId == CommonService.CompanyId);
                                SysLimitsBLL.Delete(list);
                                SysLimitsBLL.AddRange(limits);
                            }
                        }
                        #endregion
                        #region 角色
                        if (ver.ProductRoleVerk__BackingField != null)
                        {
                            var roles       = new List <SysRoles>();
                            var customMenus = new List <SysCustomMenus>();
                            ver.ProductRoleVerk__BackingField.ProductRolesk__BackingField.Each(o =>
                            {
                                var role       = new SysRoles();
                                role.CompanyId = CommonService.CompanyId;
                                role.RoleId    = o.RoleIdk__BackingField.GetValueOrDefault();
                                role.Title     = o.Titlek__BackingField;
                                role.LimitsIds = o.Limitidsk__BackingField ?? "";
                                //role.Type = 0;
                                role.Status = true;
                                var cm      = new SysCustomMenus()
                                {
                                    CompanyId = role.CompanyId,
                                    Type      = 2,
                                    ObjId     = role.RoleId,
                                    MenuIds   = string.Join(",", o.ProductRoleDatask__BackingField.Where(i => i.HasSelectedk__BackingField).OrderBy(i => i.SortOrderk__BackingField).Select(i => i.MenuIdk__BackingField))
                                };
                                roles.Add(role);
                                customMenus.Add(cm);
                            });
                            if (roles.Any())
                            {
                                var list = SysRoleBLL.FindList(o => o.CompanyId == CommonService.CompanyId);
                                roles.Each(o =>
                                {
                                    var r = list.FirstOrDefault(i => i.RoleId == o.RoleId);
                                    if (r != null)
                                    {
                                        //o.DeptId = r.DeptId;
                                        if (!r.Memo.IsNullOrEmpty())
                                        {
                                            o.Memo = r.Memo;
                                        }
                                        o.Status = r.Status;
                                    }
                                });
                                SysRoleBLL.RemoveCustomMenus(SysRoleBLL.GetCustomMenus());
                                SysRoleBLL.Delete(list);
                                SysRoleBLL.AddRange(roles);
                                SysRoleBLL.AddCustomMenus(customMenus);
                            }
                        }
                        #endregion
                        #region 字典
                        if (ver.ProductDictionaryVerk__BackingField != null)
                        {
                            var dicts = new List <SysDataDictionary>();
                            ver.ProductDictionaryVerk__BackingField.ProductDictionaryDatask__BackingField.Each(o =>
                            {
                                dicts.Add(new SysDataDictionary()
                                {
                                    Depth  = o.Depthk__BackingField,
                                    DicPSN = o.DicPSNk__BackingField,
                                    DicSN  = o.DicSNk__BackingField,
                                    //HasChild = o.HasChildk__BackingField,
                                    SortOrder = o.SortOrderk__BackingField,
                                    Status    = Convert.ToBoolean(o.Statusk__BackingField),
                                    Title     = o.Titlek__BackingField
                                });
                            });
                            if (dicts.Any())
                            {
                                var list = SysDataDictService.FindList(o => o.CompanyId == CommonService.CompanyId);
                                SysDataDictService.Delete(list);
                                SysDataDictService.AddRange(dicts);
                            }
                        }
                        #endregion
                        #region 初始化数据
                        var sqls = new Dictionary <int, string>();
                        var db   = new Pharos.DBFramework.DBHelper();
                        if (ver.ProductDataVerk__BackingField != null)
                        {
                            ver.ProductDataVerk__BackingField.ProductDataSqlsk__BackingField.OrderBy(o => o.RunSortk__BackingField).Each(o =>
                            {
                                sqls[o.MenuIdk__BackingField] = o.RunSqlk__BackingField;
                            });
                            foreach (var de in sqls)
                            {
                                try
                                {
                                    var sql = de.Value;
                                    if (sql.Contains("@"))
                                    {
                                        System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(@"@\b[a-zA-Z0-9]*");
                                        sql = sql.Replace(regex.Match(sql).ToString(), CommonService.CompanyId.ToString());
                                    }
                                    db.ExecuteNonQueryText(sql, null);
                                }
                                catch (Exception ex)
                                {
                                    throw new Exception("更新初始化数据失败!MenuId:" + de.Key + ";" + Pharos.Sys.LogEngine.ToInnerException(ex).Message);
                                }
                            }
                            sqls.Clear();
                        }
                        #endregion
                        #region 历史数据处理
                        ver.ProductPublishSqlsk__BackingField.OrderBy(o => o.RunSortk__BackingField).Each(o =>
                        {
                            sqls[o.MenuIdk__BackingField] = o.RunSqlk__BackingField;
                        });
                        foreach (var de in sqls)
                        {
                            try
                            {
                                db.ExecuteNonQueryText(de.Value, null);
                            }
                            catch (Exception ex)
                            {
                                throw new Exception("历史数据处理失败!MenuId:" + de.Key + ";" + Pharos.Sys.LogEngine.ToInnerException(ex).Message);
                            }
                        }
                        #endregion
                        tran.Complete();
                    }
                }
                catch (Exception e)
                {
                    new Pharos.Sys.LogEngine().WriteError(e);
                    if (ver != null)
                    {
                        client.AddUpdateLog(ver.PublishIdk__BackingField, CommonService.CompanyId, false, Pharos.Sys.LogEngine.ToInnerException(e).Message, Sys.CurrentUser.FullName);
                    }
                    return(Content(OpResult.Fail().ToJson()));
                }
                client.Close();
                return(Content(OpResult.Success().ToJson()));
            }
        }
예제 #4
0
        public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "text/plain";
            HttpRequest request = context.Request;

            switch (request["action"])
            {
            case "getListByPage":
                jr = new JsonResult();
                try
                {
                    page  = Convert.ToInt32(request["page"]);
                    rows  = Convert.ToInt32(request["rows"]);
                    sort  = request["sort"];
                    order = request["order"];

                    gsr = bll.GetListByPage(page, rows, sort, order);

                    jr.Success = true;
                    jr.Obj     = gsr;
                }
                catch (Exception ex)
                {
                    jr.Msg = "系统错误!" + ex.ToString();
                }
                context.Response.Write(Utils.SerializeObject(jr));

                break;

            case "Insert":
                jr = new JsonResult();
                try
                {
                    sysRole = Utils.AutoWiredClass <SysRole>(request, sysRole = new SysRole());

                    sysRole.ID    = Guid.NewGuid().ToString();
                    sysRole.CDate = DateTime.Now;

                    bll.Insert(sysRole);

                    jr.Success = true;
                    jr.Msg     = "保存成功!";
                }
                catch (Exception ex)
                {
                    jr.Msg = "保存失败!" + ex.ToString();
                }

                context.Response.Write(Utils.SerializeObject(jr));

                break;

            case "Update":
                jr = new JsonResult();
                try
                {
                    sysRole = Utils.AutoWiredClass <SysRole>(request, sysRole = new SysRole());

                    sysRole.UDate = DateTime.Now;

                    bll.Update(sysRole);

                    jr.Success = true;
                    jr.Msg     = "保存成功!";
                }
                catch (Exception ex)
                {
                    jr.Msg = "保存失败!" + ex.ToString();
                }

                context.Response.Write(Utils.SerializeObject(jr));

                break;

            case "getRoleByID":

                jr = new JsonResult();
                try
                {
                    roleID = request["RoleID"];

                    sysRole = bll.GetObjectByID(roleID);

                    jr.Success = true;
                    jr.Obj     = sysRole;
                }
                catch (Exception ex)
                {
                    jr.Msg = "系统错误!" + ex.ToString();
                }

                context.Response.Write(Utils.SerializeObject(jr));

                break;

            case "delete":

                jr = new JsonResult();
                try
                {
                    roleID = request["RoleID"];


                    bll.Delete(roleID);

                    jr.Success = true;
                    jr.Msg     = "删除成功!";
                }
                catch (Exception ex)
                {
                    jr.Msg = "删除失败!" + ex;
                }

                context.Response.Write(Utils.SerializeObject(jr));
                break;

            case "getNoRole":

                jr = new JsonResult();
                try
                {
                    userID = request["UserID"];

                    gsr = bll.GetNoRoleList(userID);

                    jr.Success = true;
                    jr.Obj     = gsr;
                }
                catch (Exception ex)
                {
                    jr.Msg = ex.ToString();
                }

                context.Response.Write(Utils.SerializeObject(jr));

                break;

            case "getHasRole":

                jr = new JsonResult();
                try
                {
                    userID = request["UserID"];

                    gsr = bll.GetHasRoleList(userID);

                    jr.Success = true;
                    jr.Obj     = gsr;
                }
                catch (Exception ex)
                {
                    jr.Msg = ex.ToString();
                }

                context.Response.Write(Utils.SerializeObject(jr));
                break;
            }
        }