CompoundResourcebk.cpp 2.41 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111
#include "stdafx.h"
#include "CompoundResource.h"
#include "BookDal.h"
#include "MakeReqData.h"

CCompoundResource::CCompoundResource(void)
{
	CheckDB();
}


CCompoundResource::~CCompoundResource(void)
{
}

void CCompoundResource::CheckDB()
{
	m_BookDal.CheckCompoundResourceTable();
}

/*void CCompoundResource::SetCompoundResourceToDB()
{
	


}*/

void CCompoundResource::MergeCompoundResource()
{
	//比对数据源与本地库ResID 若存在 则比较MD5 相同不处理,不同则删除原先数据后插入新数据
	//vector<COMPOUNDRES> Vector_LocalCompoundResData =LoadCompoundResourceFromLocalDB();
	for(int nSize =0;nSize <m_vc_BookCompoundRes.size();nSize++)
	{

		COMPOUNDRES SearchRes;
		if(SearchResIDInDB(m_vc_BookCompoundRes.at(nSize).strResID,SearchRes))
		{
			//如果本地有相同ResID,判断MD5-- 不同 则删除该笔后 插入新数据
			if (SearchRes.strMD5.Compare(m_vc_BookCompoundRes.at(nSize).strMD5)!=0)
			{
				DeleteResDataByResID(SearchRes.strMD5);
				InsertResData(m_vc_BookCompoundRes.at(nSize));
			}
		}else
		{
			//无ResID则新增
			InsertResData(m_vc_BookCompoundRes.at(nSize));
		}
		
		
	}
}

/*vector<COMPOUNDRES> CCompoundResource::LoadCompoundResourceFromLocalDB()
{

}*/

void CCompoundResource::DeleteResDataByResID(CString strResID)
{
	m_BookDal.DeleteResDataByResID(strResID);
}

void CCompoundResource::InsertResData(COMPOUNDRES ResData)
{
	m_BookDal.InsertCompoundResourceData(ResData);
}

BOOL CCompoundResource::GetAllCompoundResourceByBookID(vector<CBookInfo>BookInfos)
{
	BOOL bRet =FALSE;
	vector<CString> str_Vc_ResIDs;
	vector<COMPOUNDRES> CompoundResourcesData;
	//筛选出BookType=复合型教材的书籍
	for(int nSize=0;nSize<BookInfos.size();nSize++)
	{
		CBookInfo bookInfoTemp;
		bookInfoTemp =BookInfos.at(nSize);
		if(bookInfoTemp.bookType ==Book_Type::PDF_COMPOUNDS_RES_BOOK)
		{
			str_Vc_ResIDs.push_back(bookInfoTemp.bookId);
		}
	}
	//取得复合型教材书籍资料
	std::string strRetData;
	GetCompoundResouecesFromServer(str_Vc_ResIDs,strRetData);
		//解析数据并放入 m_Vector 中
	if(ParseCompoundsResData(strRetData,CompoundResourcesData)==TRUE)
	{
		bRet =TRUE;
	}
	return bRet;

}

void CCompoundResource::GetCompoundResouecesFromServer(vector<CString>ResIDs,std::string& strRetData)
{

}

BOOL CCompoundResource::SearchResIDInDB(CString strResID,COMPOUNDRES &Res)
{
	BOOL bRet =FALSE;
	return bRet;
}

BOOL CCompoundResource::ParseCompoundsResData(std::string strResData,std::vector<COMPOUNDRES>& CompoundResourcesData)
{
	BOOL bRet =FALSE;
	return bRet;
}