请大家帮忙看一下这段代码怎么解释;
海神之帝 2017-03-24 02:16:09 //
void Material::Process::CMaterialAdapterEngine::CalFuleRation()
{
LOG log("Material.Process.CMaterialAdapterEngine.CalFuleRation");
//找出数据库中上一次处理的最后一条记录
try
{
log.Debug()<<"计算燃料比开始"<<endl;
string strEndTime=m_ConfigurationDataAccess.GetFuleCalLastChargeClock();
if (strEndTime=="")
{
strEndTime=(CDateTime::Now().ToString()).substr(0,10)+"0000";
}
CDateTime cd(strEndTime);
cd=cd-3600*48;
string strNow=(CDateTime::Now().ToString()).substr(0,10)+"0000";
CDateTime cdNow(strNow);
cdNow=cdNow+3600;
strNow=cdNow.ToString();
int nCount=(cdNow.ToSec()-cd.ToSec())/3600;
int i=0;
log.Debug()<<"strEndTime:"<<strEndTime<<" strNow:"<<strNow<<endl;
while (i<nCount)
{
CDateTime cdTemp=cd;
CDateTime cdChargeEnd=cdTemp;
CDateTime cdChargeBegin=cdTemp-3600;
stFuleChargeInfo sFuleChargeInfo;
try
{
GetFuleChargeInfo(cdChargeBegin.ToString(),cdChargeEnd.ToString(),sFuleChargeInfo);
//将数据存入数据库
m_ConfigurationDataAccess.SetFuleCalData(cdChargeBegin.ToString(),cdChargeEnd.ToString(),sFuleChargeInfo);
}
catch (...)
{
log.Debug()<<"i:"<<i<<"time:"<<cdChargeBegin.ToString()<<"计算燃料比出错"<<endl;
}
cd=cd+3600;
i++;
}
log.Debug()<<"计算燃料比结束"<<endl;
string strEventName="hmi_ine_fur_cal";
string strValue="0";
iPlature::TAGVALUEMAP tagPairs;
tagPairs.insert(TAGVALUEMAP::value_type(strEventName,strValue));
Tag::GetInst().EventPut(tagPairs,strEventName,strValue);
}
catch (...)
{
log.Error()<<"计算燃料比出错"<<endl;
}
}