public static string GetSearched(string searchStr) { DataSet ds = RightSrv.GetDptsAndUsers(); if (ds != null && ds.Tables[0].Rows.Count > 0 && ds.Tables[1].Rows.Count > 0) { DataTable dt = new DataTable(); dt.Columns.Add("value", Type.GetType("System.String")); dt.Columns.Add("text", Type.GetType("System.String")); foreach (DataRow row in ds.Tables[0].Rows) { if (PinYinHelper.IsEqual(row[1].ToString(), searchStr) || row[1].ToString().Trim().Contains(searchStr) ) { dt.Rows.Add(row[0], row[1]); } } foreach (DataRow row in ds.Tables[1].Rows) { if (PinYinHelper.IsEqual(row[1].ToString(), searchStr) || row[1].ToString().Trim().Contains(searchStr) ) { dt.Rows.Add(row[0], row[1]); } } return(JsonHelper.DataTable2Json(dt)); } return(""); }
public Boolean isSubmitterLeader(string submitterId, string approverUserId) { string submitterDepartmentId = SqlHelper.Find("select departmentId from v_user_department_post where userId = '" + submitterId + "'").Tables[0].Rows[0][0].ToString(); string approverDepartmentId = SqlHelper.Find("select departmentId from v_user_department_post where userId = '" + approverUserId + "'").Tables[0].Rows[0][0].ToString(); DataTable dt = new DataTable(); dt.Columns.Add("departmentId", Type.GetType("System.String")); dt.Rows.Add(approverDepartmentId); DataTable table = RightSrv.GetDepartmentIds(dt); string[] parentDepartmentIds = table.Rows[0][0].ToString().Split(','); Boolean flag = false; int index = 0; foreach (string parentDptId in parentDepartmentIds) { if (index == 0) { index++; continue; } if (parentDptId == submitterDepartmentId.ToString()) { flag = true; break; } } return(flag); }
/// <summary> /// 判断人员是否拥有该应用权限 /// </summary> /// <param name="departmentIds">部门ID</param> /// <param name="wechatUserId">成员企业微信ID</param> /// <param name="SettingId">应用ID</param> /// <returns></returns> public static Boolean HasRight(DataTable departmentIds, string wechatUserId, string SettingId) { DataSet ds = RightSrv.FindRight(wechatUserId, departmentIds, SettingId); if (ds == null || ds.Tables[0].Rows.Count == 0) { return(false); } return(true); }
/// <summary> /// 判断人员是否拥有该应用权限 /// </summary> /// <param name="wechatUserId">人员企业微信ID</param> /// <param name="SettingId">应用ID</param> /// <returns>是否拥有应用权限</returns> public static Boolean HasRight(string wechatUserId, string SettingId) { DataTable dt = RightManage.GetDepartmentIds(wechatUserId); if (dt != null && dt.Rows.Count > 0) { DataSet ds = RightSrv.FindRight(wechatUserId, dt, SettingId); if (ds == null || ds.Tables[0].Rows.Count == 0) { return(false); } return(true); } return(false); }
public static string UpdateRight(string id, string departIds, string UserIds) { List <string> departmentIds = new List <string>(); DataTable wechatUserIds = new DataTable(); if (departIds != null) { departmentIds = StrsToStr(departIds); } if (UserIds != null) { wechatUserIds = RightSrv.GetWechatUserIds(StrsToStr(UserIds)); } string res = RightSrv.UpdateRight(id, departmentIds, wechatUserIds); return(SuccessOperate(res, departmentIds.Count + wechatUserIds.Rows.Count + 1)); }
/// <summary> /// 根据企业微信ID获取该成员所拥有的应用权限 /// </summary> /// <param name="wechatUserId">人员企业微信ID</param> /// <returns>该人员拥有权限的列表</returns> public static DataTable GetUserRights(string wechatUserId) { DataTable dt = RightManage.GetDepartmentIds(wechatUserId); if (dt != null && dt.Rows.Count > 0) { DataTable rights = RightSrv.GetApplications(); if (rights != null) { for (int i = rights.Rows.Count - 1; i >= 0; i--) { if (!HasRight(dt, wechatUserId, rights.Rows[i]["Id"].ToString())) { rights.Rows.RemoveAt(i); } } } return(rights); } return(null); }
/// <summary> /// 由企业微信ID获取该成员的一级级往上的所有部门 /// </summary> /// <param name="wechatUserId">企业微信ID</param> /// <returns>该成员的部门链</returns> public static DataTable GetDepartmentIds(string wechatUserId) { DataTable theBottomDepartmentIds = RightSrv.GetTheBottomDepartmentId(wechatUserId); if (theBottomDepartmentIds != null) { DataTable dt = RightSrv.GetDepartmentIds(theBottomDepartmentIds); DataTable departmentIds = new DataTable(); departmentIds.Columns.Add("departmentId", Type.GetType("System.String")); if (dt != null) { foreach (DataRow row in dt.Rows) { string[] departmentId = row[0].ToString().Split(','); foreach (string str in departmentId) { departmentIds.Rows.Add(str); } } } return(departmentIds); } return(null); }
/// <summary> /// 获取权限记录 /// </summary> public static string GetHasRight(string id) { return(RightSrv.GetHasRight(id)); }
/// <summary> /// 初始化应用目录 /// </summary> public static string InitDatagrid() { return(RightSrv.InitDatagrid()); }