#include "StdAfx.h"
|
#include "MBQueryDmsDocMgr.h"
|
|
|
CMBQueryDmsDocMgr::CMBQueryDmsDocMgr(void)
|
{
|
|
}
|
|
|
CMBQueryDmsDocMgr::~CMBQueryDmsDocMgr(void)
|
{
|
|
}
|
|
bool CMBQueryDmsDocMgr::AddDoc(CMBQueryDmsDoc *pDoc)
|
{
|
return AddDocObj(pDoc);
|
}
|
|
CMBQueryDmsDoc* CMBQueryDmsDocMgr::GetDoc( CString strID )
|
{
|
|
return (CMBQueryDmsDoc*)GetDocObj(strID);
|
}
|
|
bool CMBQueryDmsDocMgr::RemoveAllDoc()
|
{
|
return RemoveAllDocObj();
|
}
|
|
// Çå¿Õ¹ÜÀíÆ÷
|
bool CMBQueryDmsDocMgr::EmptyMgr()
|
{
|
m_mapDocObj.clear();
|
m_vecotrDocObj.clear();
|
return true;
|
}
|
|
bool CMBQueryDmsDocMgr::ParseXml( CString &strXml,CString &strErrInfo )
|
{
|
if( strXml.IsEmpty() )
|
{
|
strErrInfo = _T("CMBDocMgr::ParseXml,²ÎÊýstrXmlΪ¿Õ£¡");
|
return false;
|
}
|
|
CString strFileSize;
|
pugi::xml_document xmlDoc;
|
|
if (!xmlDoc.load(strXml))
|
{
|
return false;
|
}
|
pugi::xml_node form = xmlDoc.child(_T("Body")).child(_T("Doc"));
|
for(pugi::xml_node node = form; node; node = node.next_sibling(_T("Doc")))
|
{
|
CMBQueryDmsDoc *pDocInfo = new CMBQueryDmsDoc();
|
pDocInfo->m_strID = node.attribute(_T("ID")).value();
|
pDocInfo->m_strName = node.child_value(_T("Name"));
|
pDocInfo->m_strStatus = node.attribute(_T("Status")).value();
|
pDocInfo->m_strFileType = node.attribute(_T("FileType")).value();
|
pDocInfo->m_strFileTime = node.attribute(_T("FileTime")).value();
|
strFileSize = node.attribute(_T("FileSize")).value();
|
pDocInfo->m_nFileSize = _ttoi(strFileSize);
|
pDocInfo->m_strDTCreate = node.attribute(_T("DTCreate")).value();
|
pDocInfo->m_strCreatorID = node.attribute(_T("CreatorID")).value();
|
pDocInfo->m_strCreatorName = node.attribute(_T("CreatorName")).value();
|
|
pDocInfo->m_strLocker = node.attribute(_T("Locker")).value();
|
pDocInfo->m_strLockerName = node.attribute(_T("LockerName")).value();
|
pDocInfo->m_strLockTime = node.attribute(_T("LockTime")).value();
|
|
//pDocInfo->m_strIsLock = node.attribute(_T("IsLock")).value();
|
pDocInfo->m_strTags = node.attribute(_T("Tags")).value();
|
pDocInfo->m_strName = node.child_value(_T("Name"));
|
// ThumbURL
|
pDocInfo->m_strThumbURL = node.child_value(_T("ThumbURL"));
|
|
if( !AddDoc(pDocInfo) )
|
{
|
// ÖØÖÃËõÂÔͼµØÖ·
|
GetDoc( pDocInfo->m_strID )->m_strThumbURL = pDocInfo->m_strThumbURL;
|
delete pDocInfo;
|
pDocInfo = NULL;
|
}
|
}
|
|
return true;
|
}
|