#pragma once
|
#include "stdafx.h"
|
#include "MBOrgMember.h"
|
#include "MBOrgView.h"
|
#include "MBOrgUser.h"
|
#include "MBOrgGroup.h"
|
#include "MBOrgRole.h"
|
// CMBOrgListMgr command target
|
|
typedef CMap<CString, LPCTSTR, CMBOrgView*, CMBOrgView*&> CMapOrgViewItem;
|
typedef CMap<CString, LPCTSTR, CMBOrgGroup*, CMBOrgGroup*&> CMapOrgGroupItem;
|
typedef CMap<CString, LPCTSTR, CMBOrgRole*, CMBOrgRole*&> CMapOrgRoleItem;
|
typedef CMap<CString, LPCTSTR, CMBOrgUser*, CMBOrgUser*&> CMapOrgUserItem;
|
typedef CMap<CString, LPCTSTR, IBitmap*, IBitmap*&> CMapOrgUserPhoto;
|
|
class AFX_EXT_CLASS CMBOrgListMgr : public CObject
|
{
|
public:
|
CMBOrgListMgr();
|
virtual ~CMBOrgListMgr();
|
// Attributes
|
public:
|
CMapOrgViewItem m_mapView;
|
CMapOrgGroupItem m_mapGroup;
|
CMapOrgRoleItem m_mapRole;
|
CMapOrgUserItem m_mapUser;
|
CMapStringToString m_mapUserAliasName;
|
CMapStringToString m_mapUserReamrksName;
|
CMapOrgUserPhoto m_mapUserPhoto;
|
CMapOrgUserPhoto m_mapDefaultUserPhoto;
|
// Operations
|
public:
|
void DetachAllMap();
|
void DetachMap( CString strMapName );
|
void InitDeaultUserPhoto( );
|
BOOL LookupView( CString strViewID,CMBOrgView*& pView );
|
BOOL LookupGroup( CString strGroupID,CMBOrgGroup*& pGroup );
|
BOOL LookupRole( CString strRoleID,CMBOrgRole*& pRole );
|
BOOL LookupUser( CString strLoginName,CMBOrgUser*& pUser );
|
BOOL LookupUserFromAliasName( CString strAliasName,CString &strLoginName );
|
BOOL LookupUserPhoto( CString strViewID,IBitmap *&pBitmap );
|
BOOL LookupDeaultUserPhoto(IBitmap *&pBitmap, CString strUserSex );
|
BOOL GetUserPhotoBitmap( IBitmap *&pBitmap ,CString strUserLogin,CString strUserSex = _T(""));
|
CString GetUserName( CString strLoginName );
|
CString GetMemberName( int nMemberType, CString strMemberID);
|
|
void AddView( CString strViewID, long nLevel, CString strViewName, CString strGener );
|
void AddMember( int nMemberType, CString strMemberID, CString strName, int nLevel = 0 );
|
void RemoveMember( int nMemberType, CString strMemberID,bool bDelete = true );
|
void SetUserAliasName( CString strLoginName,CString strAliasName);
|
void AddUserPhoto( CString strLoginName, IBitmap*pBmp);
|
void AddDeaultUserPhoto( IBitmap*pBmp,CString strUserSex );
|
|
BOOL SetUserStatus( CString strLoginName, int nUserStatus );
|
int GetUserStatus( const CString strLoginName );
|
int GetUserLevel( const CString strLoginName );
|
void SetUserVer( CString strLoginName, int nUserInfoVer = 0, int nUserPhotoVer = 0 );
|
CString GetUserMobile( CString strLoginName);
|
BOOL GetUserVer( const CString strLoginName, int &nUserInfoVer, int &nUserPhotoVer );
|
|
BOOL DelView( CString strViewID );
|
CString GetAllOnLineUser( );
|
|
void OffLineAllUser( );
|
BOOL ParseOrgXml(int nMemberType, CString strMemberID, CString strCmder, CString strXml , bool bCover = true );
|
CString GetUserLogins( );
|
|
void RemoveAllUserRemarks( );
|
CString GetUserRemarksName( CString strLoginName );
|
void SetUserRemarksName( CString strLoginName,CString strRemarksName );
|
CString GetUserShowName( CString strLoginName );
|
CString GetUserListShowName( CString strLoginName );
|
private:
|
|
void ParseOrgUserInfo( IXMLDOMElementPtr ptrItem ,CMBOrgMember *pMember,bool bCover = true);
|
BOOL ParsOrgUserList(int nMemberType, CString strMemberID, IXMLDOMElementPtr ptrBody, bool bCover = true);
|
BOOL ParsUAGOrgList(int nMemberType, CString strMemberID, IXMLDOMElementPtr ptrBody,bool bCover = true);
|
BOOL ParseContactGroupInfo(int nMemberType, CString strMemberID,IXMLDOMElementPtr ptrBody, bool bCover = true);
|
void ParseOrgRoleInfo( IXMLDOMElementPtr ptrItem, CMBOrgMember *pMember);
|
void ParseOrgInfo( IXMLDOMElementPtr ptrItem, CMBOrgMember *pMember, CArrayMember &arParentMember, int nSortLevel);
|
bool ParseParentInfo(CString strBuff, CMBOrgMember *pMember );
|
};
|