You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
TwoLaserHead-PushJig/LaiPuLaser/WorkRecord.cpp

92 lines
2.9 KiB
C++

#include "StdAfx.h"
#include "WorkRecord.h"
#include "Propertie.h"
#include "PropertieMgr.h"
#include "AuthorityMgr.h"
#include "WorkTime.h"
#include "FileMgr.h"
#include "LogMgr.h"
CWorkRecordMgr *gWorkRecordMgr = new CWorkRecordMgr;
CWorkRecordMgr::CWorkRecordMgr(void)
{
}
CWorkRecordMgr::~CWorkRecordMgr(void)
{
}
CMFCPropertyGridProperty *CWorkRecordMgr::CreatGridProperty()
{
CString PropertyName;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
CString Description;//<2F><><EFBFBD><EFBFBD>
CString Path = _T("WorkRecordMgr");//<2F>洢·<E6B4A2><C2B7>
CString Name;
//-------------------------------------------------------------------------------//
PropertyName = _T("<EFBFBD>ӹ<EFBFBD><EFBFBD><EFBFBD>¼");
CMFCPropertyGridProperty* pGroup = new CMFCPropertyGridProperty(PropertyName);
//-------------------------------------------------------------------------------//
if(gAuthorityMgr->CheckAuthority(_FACTORY))
{
{
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD>ӳ<EFBFBD><D3B3>
Name = _T("m_RecordFilePath");//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
CPropertie *pPropertie = new CPropertie;
pPropertie->SetpVal((void*)&m_RecordFilePath);
pPropertie->SetType(_PROP_TYPE_STRING);
pPropertie->SetpModule(this);
pPropertie->SetPath(Path);
pPropertie->SetName(Name);
pPropertie->WriteRead(true);//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
PropertyName = _T("<EFBFBD>洢·<EFBFBD><EFBFBD>");
Description = _T("<EFBFBD><EFBFBD>¼<EFBFBD>ļ<EFBFBD><EFBFBD>ı<EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><EFBFBD>");
CMFCPropertyGridProperty* p = new CMFCPropertyGridProperty(PropertyName, (_variant_t)m_RecordFilePath, Description);
pGroup->AddSubItem(p);
gDevicePropertieMgr.Insert(p, pPropertie);
}
}
//-------------------------------------------------------------------------------//
return pGroup;
}
//<2F>ӹ<EFBFBD><D3B9><EFBFBD>¼д<C2BC><D0B4><EFBFBD>ļ<EFBFBD>
void CWorkRecordMgr::WriteRecordToFile()
{
CFileMgr FileMgr;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־Ŀ¼<C4BF>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>
if(!FileMgr.IsDirectoryExists(m_RecordFilePath))
{
gLogMgr->WriteDebugLog("Error----><3E><>־Ŀ¼<C4BF><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
return;
}
//<2F><><EFBFBD><EFBFBD><E9B5B1><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>
CString CurFilePath = m_RecordFilePath+"\\"+gWorkTime.GetCurDate("_")+".rcd";
if(!FileMgr.IsFileExist(CurFilePath))
{
//<2F><><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD><C2B5>ļ<EFBFBD>
ofstream File;
File.open(CurFilePath);
File.close();
}
ofstream File(CurFilePath,ios::app);
File<<GetRecordStr()<<endl;
File.close();
gLogMgr->WriteDebugLog("func:WriteRecordToFile--->OK");
}
CString CWorkRecordMgr::GetRecordStr()
{
CString str;
str += "[<5B>û<EFBFBD>] "+ gAuthorityMgr->GetCurUserName();
str += " [<5B><>Ʒ<EFBFBD>ͺ<EFBFBD>] "+ m_ProductType;
str += " [<5B><>ʼʱ<CABC><CAB1>] "+ gWorkTime.GetCurDate("/")+ " "+m_StartWorkTime;
str += " [<5B><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>] "+ gWorkTime.GetCurDate("/")+ " "+m_EndWorkTime;
str += " [<5B>ӹ<EFBFBD>ʱ<EFBFBD><CAB1>] "+ m_WorkTime;
return str;
}