public ActionResult AbortOrg(string fullID) { AuthFO authBF = FormulaHelper.CreateFO <AuthFO>(); authBF.AbortOrg(fullID); return(Json("")); }
public JsonResult GetRetiredList(QueryBuilder qb) { if (qb.DefaultSort) { qb.SortField = "SortIndex,WorkNo"; qb.SortOrder = "asc,asc"; } string sql = "select * from S_A_User where IsDeleted='1'"; SQLHelper sqlHelper = SQLHelper.CreateSqlHelper(ConnEnum.Base); DataTable dt = sqlHelper.ExecuteDataTable(sql, qb); dt.Columns.Add("DeptNames"); AuthFO authFO = FormulaHelper.CreateFO <AuthFO>(); foreach (DataRow row in dt.Rows) { row["DeptNames"] = authFO.GetUserDeptNames(row["ID"].ToString()); } GridData data = new GridData(dt); data.total = qb.TotolCount; return(Json(data)); }
public JsonResult SaveRoleRes(string roleID, string resIDs) { var s_A_Res = entities.Set <S_A_Res>().Where(x => x.Code == "Mobile" && x.ParentID == "").FirstOrDefault(); if (s_A_Res != null) { entities.Set <S_A__RoleRes>().Delete(c => c.RoleID == roleID && (c.S_A_Res.FullID.StartsWith(Config.Constant.MenuRooID) || c.S_A_Res.FullID.StartsWith(s_A_Res.ID))); } else { entities.Set <S_A__RoleRes>().Delete(c => c.RoleID == roleID && (c.S_A_Res.FullID.StartsWith(Config.Constant.MenuRooID))); } foreach (string item in resIDs.Split(',')) { if (item == "") { continue; } S_A__RoleRes roleRes = new S_A__RoleRes(); roleRes.RoleID = roleID; roleRes.ResID = item; entities.Set <S_A__RoleRes>().Add(roleRes); } //记录安全审计日志 string roleName = entities.Set <S_A_Role>().SingleOrDefault(c => c.ID == roleID).Name; string resNames = string.Join(",", entities.Set <S_A_Res>().Where(c => resIDs.Contains(c.ID)).Select(c => c.Name)); AuthFO.Log("角色授权(菜单)", roleName, resNames); entities.SaveChanges(); return(Json("")); }
public override JsonResult DeleteNode() { AuthFO authBF = FormulaHelper.CreateFO <AuthFO>(); authBF.DeleteOrg(Request["FullID"]); return(Json("")); }
public JsonResult SaveRoleRule(string roleID, string ruleIDs) { entities.Set <S_A__RoleRes>().Delete(c => c.RoleID == roleID && c.S_A_Res.FullID.StartsWith(Config.Constant.RuleRootID)); foreach (string item in ruleIDs.Split(',')) { if (item == "") { continue; } S_A__RoleRes roleRes = new S_A__RoleRes(); roleRes.RoleID = roleID; roleRes.ResID = item; entities.Set <S_A__RoleRes>().Add(roleRes); } //记录安全审计日志 string roleName = entities.Set <S_A_Role>().SingleOrDefault(c => c.ID == roleID).Name; string resNames = string.Join(",", entities.Set <S_A_Res>().Where(c => ruleIDs.Contains(c.ID)).Select(c => c.Name)); AuthFO.Log("角色授权(对象)", roleName, resNames); entities.SaveChanges(); return(Json("")); }
public JsonResult GetRetiredList(QueryBuilder qb) { if (qb.DefaultSort) { qb.SortField = "SortIndex,WorkNo"; qb.SortOrder = "asc,asc"; } string sql = @"select ID,GroupID,Code,Name,WorkNo,Sex,Description,InDate,OutDate,Phone,MobilePhone,Email,Address,SortIndex,LastLoginTime,LastLoginIP,LastSessionID,ErrorCount,ErrorTime,IsDeleted,DeleteTime,PrjID,PrjName,DeptID,DeptFullID,DeptName,RTX,ModifyTime from S_A_User where IsDeleted='1'"; SQLHelper sqlHelper = SQLHelper.CreateSqlHelper(ConnEnum.Base); DataTable dt = sqlHelper.ExecuteDataTable(sql, qb); dt.Columns.Add("DeptNames"); AuthFO authFO = FormulaHelper.CreateFO <AuthFO>(); foreach (DataRow row in dt.Rows) { row["DeptNames"] = authFO.GetUserDeptNames(row["ID"].ToString()); } GridData data = new GridData(dt); data.total = qb.TotolCount; return(Json(data)); }
public void DealCompanyAuth(DataTable dt) { //如果开启了子公司权限 //子公司权限 if (System.Configuration.ConfigurationManager.AppSettings["CorpAuthEnabled"] == "True") { var authFO = new AuthFO(); if (authFO.IsSepAdmin(FormulaHelper.UserID)) { var sqlHelper = SQLHelper.CreateSqlHelper(ConnEnum.Base); var _dt = sqlHelper.ExecuteDataTable(string.Format("select * from S_A_AuthCompany where CompanyID='{0}' ", FormulaHelper.GetUserInfo().UserCompanyID)); var ids = _dt.AsEnumerable().Select(c => c["ResID"].ToString()); var result = dt.AsEnumerable().Where(c => ids.Contains(c["ID"].ToString())); if (result.Count() > 0) { //dt = result.CopyToDataTable(); for (int i = dt.Rows.Count - 1; i >= 0; i--) { if (ids.Contains(dt.Rows[i]["ID"].ToString()) == false) { dt.Rows.RemoveAt(i); } } } else { dt.Rows.Clear(); } } } }
public ActionResult RecoverOrg(string nodeID) { AuthFO authBF = FormulaHelper.CreateFO <AuthFO>(); authBF.RecoverOrg(nodeID); return(Json("")); }
public JsonResult RetireUser(string UserIDs) { AuthFO authBF = FormulaHelper.CreateFO <AuthFO>(); foreach (var id in UserIDs.Split(',')) { authBF.RetireUser(id); } return(Json("")); }
public override JsonResult GetModel(string id) { AuthFO authFO = FormulaHelper.CreateFO <AuthFO>(); var entity = GetEntity <S_A_User>(id); string deptNames = authFO.GetUserDeptNames(id); var dic = FormulaHelper.ModelToDic(entity); dic.Add("DeptNames", deptNames); return(Json(dic)); }
public JsonResult SaveUserRule(string userID, string checkedIDs, string denyAuthIDs) { var s_A_Res = entities.Set <S_A_Res>().Where(x => x.Code == "Mobile" && x.ParentID == "").FirstOrDefault(); if (s_A_Res != null) { entities.Set <S_A__UserRes>().Delete(c => c.UserID == userID && (c.S_A_Res.FullID.StartsWith(Config.Constant.MenuRooID) || c.S_A_Res.FullID.StartsWith(s_A_Res.ID))); } else { entities.Set <S_A__UserRes>().Delete(c => c.UserID == userID && (c.S_A_Res.FullID.StartsWith(Config.Constant.MenuRooID))); } checkedIDs = checkedIDs.Trim('"'); denyAuthIDs = denyAuthIDs.Trim('"'); foreach (string item in checkedIDs.Split(',')) { if (item == "") { continue; } S_A__UserRes userRes = new S_A__UserRes(); userRes.UserID = userID; userRes.ResID = item; userRes.DenyAuth = "0"; entities.Set <S_A__UserRes>().Add(userRes); } foreach (string item in denyAuthIDs.Split(',')) { if (item == "") { continue; } S_A__UserRes userRes = new S_A__UserRes(); userRes.UserID = userID; userRes.ResID = item; userRes.DenyAuth = "1"; entities.Set <S_A__UserRes>().Add(userRes); } //记录安全审计日志 string UserName = entities.Set <S_A_User>().SingleOrDefault(c => c.ID == userID).Name; string resNames = string.Join(",", entities.Set <S_A_Res>().Where(c => checkedIDs.Contains(c.ID)).Select(c => c.Name)); string denyNames = string.Join(",", entities.Set <S_A_Res>().Where(c => denyAuthIDs.Contains(c.ID)).Select(c => c.Name)); AuthFO.Log("用户授权(对象)", UserName, resNames); AuthFO.Log("用户授权(对象-否定)", UserName, denyNames); entities.SaveChanges(); return(Json("")); }
public JsonResult Reset(string UserIDs) { var arr = UserIDs.Split(','); var users = entities.Set <S_A_User>().Where(c => arr.Contains(c.ID)).ToList(); foreach (var user in users) { user.Password = FormsAuthentication.HashPasswordForStoringInConfigFile(string.Format("{0}{1}", user.Code.Trim().ToLower(), Request["pwd"]), "SHA1"); } //记录安全审计日志 AuthFO.Log("修改密码", string.Join(",", users.Select(c => c.Name)), "********"); entities.SaveChanges(); return(Json("")); }
public JsonResult SetUserRelation() { //记录安全审计日志 string resFullID = Request["NodeFullID"]; string[] orgIDs = GetValues(Request["RelationData"], "ID").Distinct().ToArray(); string menuName = entities.Set <S_A_Res>().SingleOrDefault(c => c.FullID == resFullID).Name; string userNames = string.Join(",", entities.Set <S_A_User>().Where(c => orgIDs.Contains(c.ID)).Select(c => c.Name)); string opName = resFullID.StartsWith(Config.Constant.MenuRooID) ? "菜单授权(用户)" : "对象授权(用户)"; AuthFO.Log(opName, menuName, userNames); return(base.JsonAppendRelation <S_A_Res, S_A__UserRes, S_A_User>(Request["NodeFullID"], Request["RelationData"], Request["FullRelation"])); }
public void DealCompanyAuth(DataTable dt) { //去掉分级授权菜单 for (int i = dt.Rows.Count - 1; i >= 0; i--) { if (dt.Rows[i]["FullID"].ToString().StartsWith(Config.Constant.SystemMenuCompanyFullID)) { dt.Rows.RemoveAt(i); } } //如果开启了子公司权限 //子公司权限 if (System.Configuration.ConfigurationManager.AppSettings["CorpAuthEnabled"] == "True") { var authFO = new AuthFO(); if (authFO.IsSepAdmin(FormulaHelper.UserID)) { var sqlHelper = SQLHelper.CreateSqlHelper(ConnEnum.Base); //DealCompanyAuth多个地方公用,因此有不同取值 var corpID = Request["CorpID"]; if (string.IsNullOrEmpty(Request["CorpID"])) { corpID = FormulaHelper.GetUserInfo().AdminCompanyID; } var _dt = sqlHelper.ExecuteDataTable(string.Format("select * from S_A_AuthCompany where CompanyID='{0}' ", corpID)); var ids = _dt.AsEnumerable().Select(c => c["ResID"].ToString()); var result = dt.AsEnumerable().Where(c => ids.Contains(c["ID"].ToString())); if (result.Count() > 0) { //dt = result.CopyToDataTable(); for (int i = dt.Rows.Count - 1; i >= 0; i--) { if (ids.Contains(dt.Rows[i]["ID"].ToString()) == false) { dt.Rows.RemoveAt(i); } } } else { dt.Rows.Clear(); } } } }
public override JsonResult DeleteRelation() { string relationData = Request["RelationData"]; List <Dictionary <string, object> > list = JsonHelper.ToObject <List <Dictionary <string, object> > >(relationData); //list中只有一条记录 if (list[0]["TypeCode"].ToString() == "Org") { //记录安全审计日志 string resFullID = Request["NodeFullID"]; string[] orgIDs = GetValues(Request["RelationData"], "ID").Distinct().ToArray(); string menuName = entities.Set <S_A_Res>().SingleOrDefault(c => c.FullID == resFullID).Name; string orgNames = string.Join(",", entities.Set <S_A_Org>().Where(c => orgIDs.Contains(c.ID)).Select(c => c.Name)); string opName = resFullID.StartsWith(Config.Constant.MenuRooID) ? "删除菜单授权(组织)" : "删除对象授权(组织)"; AuthFO.Log(opName, menuName, orgNames); return(base.JsonDeleteRelation <S_A_Res, S_A__OrgRes, S_A_Org>(Request["NodeFullID"], relationData, "True")); } else if (list[0]["TypeCode"].ToString() == "Role") { //记录安全审计日志 string resFullID = Request["NodeFullID"]; string[] roleIDs = GetValues(Request["RelationData"], "ID").Distinct().ToArray(); string menuName = entities.Set <S_A_Res>().SingleOrDefault(c => c.FullID == resFullID).Name; string RoleNames = string.Join(",", entities.Set <S_A_Role>().Where(c => roleIDs.Contains(c.ID)).Select(c => c.Name)); string opName = resFullID.StartsWith(Config.Constant.MenuRooID) ? "删除菜单授权(角色)" : "删除对象授权(角色)"; AuthFO.Log(opName, menuName, RoleNames); return(base.JsonDeleteRelation <S_A_Res, S_A__RoleRes, S_A_Role>(Request["NodeFullID"], relationData, "True")); } else { //记录安全审计日志 string resFullID = Request["NodeFullID"]; string[] userIDs = GetValues(Request["RelationData"], "ID").Distinct().ToArray(); string menuName = entities.Set <S_A_Res>().SingleOrDefault(c => c.FullID == resFullID).Name; string userNames = string.Join(",", entities.Set <S_A_User>().Where(c => userIDs.Contains(c.ID)).Select(c => c.Name)); string opName = resFullID.StartsWith(Config.Constant.MenuRooID) ? "删除菜单授权(用户)" : "删除对象授权(用户)"; AuthFO.Log(opName, menuName, userNames); return(base.JsonDeleteRelation <S_A_Res, S_A__UserRes, S_A_User>(Request["NodeFullID"], relationData, "True")); } }
public JsonResult ResetAllUserPwd(string pwd) { var userList = entities.Set <S_A_User>().OrderBy(c => c.ID).Take(1000); int index = 1; while (userList.Count() > 0) { foreach (var user in userList) { user.Password = FormsAuthentication.HashPasswordForStoringInConfigFile(string.Format("{0}{1}", user.Code.Trim().ToLower(), pwd), "SHA1"); } entities.SaveChanges(); userList = entities.Set <S_A_User>().OrderBy(c => c.ID).Skip(index * 1000).Take(1000); index++; } //记录安全审计日志 AuthFO.Log("修改密码", "全部用户", "********"); return(Json("")); }
public override JsonResult GetList(QueryBuilder qb) { if (qb.DefaultSort) { qb.SortField = "SortIndex,WorkNo"; qb.SortOrder = "asc,asc"; } if (!string.IsNullOrEmpty(Request["CorpID"])) { qb.Add("CorpID", QueryMethod.In, Request["CorpID"]); } qb.Fields = "distinct ID,Code,Name,WorkNo,Sex,InDate,OutDate,Phone,MobilePhone,Email,Address,SortIndex,IsDeleted,PrjID,PrjName,DeptID,DeptFullID,DeptName,RTX,ModifyTime,ErrorCount,CorpID"; string sql = @" SELECT S_A_User.ID,S_A_User.Code,S_A_User.Name,WorkNo,Sex,InDate,OutDate,Phone,MobilePhone,Email,Address,S_A_User.SortIndex,S_A_User.IsDeleted,PrjID,PrjName,DeptID,DeptFullID,DeptName,RTX,ModifyTime,FullID,S_A_User.ErrorCount,CorpID from S_A_User join S_A__OrgUser on UserID=S_A_User.ID join S_A_Org on S_A_Org.ID=OrgID where S_A_User.IsDeleted='0' or S_A_User.IsDeleted is null"; SQLHelper sqlHelper = SQLHelper.CreateSqlHelper(ConnEnum.Base); DataTable dt = sqlHelper.ExecuteDataTable(sql, qb); dt.Columns.Add("DeptNames"); AuthFO authFO = FormulaHelper.CreateFO <AuthFO>(); foreach (DataRow row in dt.Rows) { row["DeptNames"] = authFO.GetUserDeptNames(row["ID"].ToString()); } GridData data = new GridData(dt); data.total = qb.TotolCount; return(Json(data)); }
public JsonResult SaveOrgRes(string orgID, string resIDs) { entities.Set <S_A__OrgRes>().Delete(c => c.OrgID == orgID && c.S_A_Res.FullID.StartsWith(Config.Constant.MenuRooID)); foreach (string item in resIDs.Split(',')) { if (item == "") { continue; } S_A__OrgRes orgRes = new S_A__OrgRes(); orgRes.OrgID = orgID; orgRes.ResID = item; entities.Set <S_A__OrgRes>().Add(orgRes); } //记录安全审计日志 string orgName = entities.Set <S_A_Org>().SingleOrDefault(c => c.ID == orgID).Name; string resNames = string.Join(",", entities.Set <S_A_Res>().Where(c => resIDs.Contains(c.ID)).Select(c => c.Name)); AuthFO.Log("组织授权(菜单)", orgName, resNames); entities.SaveChanges(); return(Json("")); }
public JsonResult GetUserRes(string nodeFullID) { AuthFO authBF = FormulaHelper.CreateFO <AuthFO>(); return(Json(authBF.GetResByUserID(nodeFullID))); }