//--V469-583-E public static List <WsModel> GetWs(string wsId = null, WsLoadType wsLoadType = WsLoadType.ALL, bool newSession = false, bool isAdmin = false) { IManWorkspaces imWss = null; List <WsModel> iLWsModel = new List <WsModel>(); if (string.IsNullOrWhiteSpace(wsId)) { IManDatabase imDb = null; //--V469-583-S //imDb = newSession ? ImSession.GetNewInstance.GetDb(ImDbType.Active) : ImSession.GetInstance.GetDb(ImDbType.Active); imDb = IManageSession.Db(ImDbType.Active); //--V469-583-E if (imDb == null) { return(null); } imWss = imDb.Workspaces; foreach (IManWorkspace imWs in imWss) { IManDocumentClass imDC = imWs.SubClass; if (imDC != null) { if (imDC.Name == "EAUDIT ENGAGEMENT" || imDC.Name == "AUDIT") { iLWsModel.Add(new WsModel { IsLoaded = false, Description = imWs.Description, Name = imWs.Name, ObjectID = imWs.ObjectID, Owner = WsUtility.GetWsUser(imWs.Owner), SubType = imWs.SubType, WorkspaceID = imWs.WorkspaceID, WsProfile = null, WsFldrs = null, WsGroups = null }); } } } } else if (wsLoadType == WsLoadType.None) { IManWorkspace imWs = null; iLWsModel.Add(GetWs(wsId, out imWs, WsLoadType.None, newSession, isAdmin: isAdmin)); } else { IManWorkspace imWs = null; iLWsModel.Add(GetWs(wsId, out imWs, WsLoadType.ALL, newSession, isAdmin: isAdmin)); } return(iLWsModel); }
public static List <WsUser> SearchUsr(string searchStr, UsrSearchBy usrSearchBy, bool isExactSrch = false, ImDbType imDbType = ImDbType.Active) { //--V469-583-S //IManDatabase imDb = ImSession.GetInstance.GetDb(imDbType); IManDatabase imDb = IManageSession.Db(imDbType); //--V469-583-E IManUsers imUsrs = null; bool srchIncludeDomain = false; List <WsUser> wsUsrs = new List <WsUser>(); if (usrSearchBy == UsrSearchBy.Name) { //if (isExactSrch) //{ // imUsrs = imDb.SearchUsers(searchStr, imSearchAttributeType.imSearchExactMatch, true); //} //else //{ // imUsrs = imDb.SearchUsers(searchStr, imSearchAttributeType.imSearchFullName, true); //} imUsrs = imDb.SearchUsers(searchStr, imSearchAttributeType.imSearchFullName, true); } else if (usrSearchBy == UsrSearchBy.Email) { var spEmail = searchStr.Split('@'); if (spEmail.Length == 1) { //searchStr = email; } else if (spEmail.Length == 2) { if (string.IsNullOrWhiteSpace(spEmail[1]) || spEmail[1].StartsWith("kpmg", StringComparison.OrdinalIgnoreCase) || spEmail[1].StartsWith("kpmg.com", StringComparison.OrdinalIgnoreCase)) { srchIncludeDomain = true; searchStr = spEmail[0]; } else { //searchStr = email; } } else { //searchStr = email; } //if (isExactSrch) //{ // imUsrs = imDb.SearchUsers(searchStr, imSearchAttributeType.imSearchExactMatch, true); //} //else //{ // imUsrs = imDb.SearchUsers(searchStr, imSearchAttributeType.imSearchID, true); //} imUsrs = imDb.SearchUsers(searchStr, imSearchAttributeType.imSearchID, true); } if (imUsrs != null) { if (usrSearchBy == UsrSearchBy.Name) { if (isExactSrch) { foreach (IManUser imUsr in imUsrs) { var spFullName = searchStr.Split(','); if (spFullName[0].Equals(imUsr.FullName.SplitNGet(',', 0), StringComparison.OrdinalIgnoreCase)) { wsUsrs.Add(IM.Mgr.WsUtility.GetWsUser(imUsr)); } } } else { foreach (IManUser imUsr in imUsrs) { wsUsrs.Add(IM.Mgr.WsUtility.GetWsUser(imUsr)); } } } else if (usrSearchBy == UsrSearchBy.Email) { if (isExactSrch) { foreach (IManUser imUsr in imUsrs) { if (imUsr.Name.Equals(searchStr, StringComparison.OrdinalIgnoreCase)) { wsUsrs.Add(IM.Mgr.WsUtility.GetWsUser(imUsr)); } } } else { if (srchIncludeDomain) { foreach (IManUser imUsr in imUsrs) { if (imUsr.Name.Equals(searchStr, StringComparison.OrdinalIgnoreCase)) { wsUsrs.Add(IM.Mgr.WsUtility.GetWsUser(imUsr)); } } } else { foreach (IManUser imUsr in imUsrs) { wsUsrs.Add(IM.Mgr.WsUtility.GetWsUser(imUsr)); } } } } //foreach (IManUser imUsr in imUsrs) //{ // if(srchIncludeDomain) // { // if(imUsr.Name.Equals(searchStr, StringComparison.OrdinalIgnoreCase)) // { // wsUsrs.Add(IM.Mgr.WsUtility.GetWsUser(imUsr)); // } // } // else // { // wsUsrs.Add(IM.Mgr.WsUtility.GetWsUser(imUsr)); // } //} } return(wsUsrs); }