⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mainfrm.cpp

📁 RFID温度签的源码
💻 CPP
📖 第 1 页 / 共 3 页
字号:
	g_StopSign = 0;

	if( g_ThreadParam.CardID <= 0 )
	{
		DWORD dwResID = IDS_STR_ASK_SELECT_CARD;
		if( theApp.m_Lang == 0 )
		{
			dwResID = IDS_STR_ASK_SELECT_CARD_CH;
		}

		CString str;
		str.LoadString( dwResID );
		MessageBox( str );
		return;
	}

	int nItem = pView->GetSelectItem();
	BOOL IsWorkCard = pView->IsWorkCard( nItem );
	if( IsWorkCard == FALSE )
	{
		if( theApp.m_Lang == 0 ) // chinese
		{
			MessageBox( _T("当前选择的卡状态为Sleep,请选择另外一张卡.") );
		}
		else
		{
			MessageBox( _T("Current Tag status is Sleep, please select other card.") );
		}

		return;
	}

	CDeviceClient* pClient = theApp.GetDevice();
	U16 Interval;
	pClient->ClearBuffer();
	m_DynamicData.ClearData();
	u32Ret = pClient->GetCheckTimeInterval( pView->GetSelectCardID(), &Interval );
	if( u32Ret == RETURN_NO_ERROR )
	{
		CString str, strRes;
		if( theApp.m_Lang == 0 )
		{
			strRes.LoadString(IDS_STR_CUR_CARD_CH);
		}
		else
		{
			strRes.LoadString(IDS_STR_CUR_TAG);
		}
		g_ThreadParam.nInterval = Interval*10;
		pView->SetDynamicData( &m_DynamicData );
		pView->m_FormStatic.SetDisplayMode( 1 );
		pView->ActivePage( 0 );
		str.Format( _T("%s:%d"), strRes, g_ThreadParam.CardID );
		pView->SetStaticText( str );
		AfxBeginThread( AutoScanThreadFunction, &g_ThreadParam );
	}
	else
	{
		UINT nRC = theApp.m_Lang == 0 ? IDS_STR_GET_TIME_FAILED_CH : IDS_STR_GET_TIME_FAILED;
		CString str;
		str.LoadString( nRC );
		MessageBox( str );
	}


}

void CMainFrame::OnReadData()
{
	CTemperatureView *pView = (CTemperatureView*)this->GetActiveView();
	unsigned int CardID = pView->GetSelectCardID();
	if( CardID > 0 )
	{
		CDlgReadData dlg;
		dlg.SetSelectItemID( CardID );
		dlg.SetDevice( theApp.GetDevice() );
		dlg.DoModal();
	}
	else
	{
		DWORD dwResID = IDS_STR_ASK_SELECT_CARD;
		if( theApp.m_Lang == 0 )
		{
			dwResID = IDS_STR_ASK_SELECT_CARD_CH;
		}

		CString str;
		str.LoadString( dwResID );
		MessageBox( str );
	}
	
}

void CMainFrame::OnWriteData()
{
	CTemperatureView *pView = (CTemperatureView*)this->GetActiveView();
	unsigned int CardID = pView->GetSelectCardID();
	if( CardID > 0 )
	{
		CDlgReadData dlg;
		dlg.SetSelectItemID( CardID );
		dlg.SetDevice( theApp.GetDevice() );
		dlg.SetDlgType( 1 );
		int nRet = dlg.DoModal();
	}
	else
	{
		DWORD dwResID = IDS_STR_ASK_SELECT_CARD;
		if( theApp.m_Lang == 0 )
		{
			dwResID = IDS_STR_ASK_SELECT_CARD_CH;
		}

		CString str;
		str.LoadString( dwResID );
		MessageBox( str );
	}
}

void CMainFrame::OnTemperatureStart()
{
	CDeviceClient* pDeviceClient = theApp.GetDevice();
	CTemperatureView *pView = (CTemperatureView*)this->GetActiveView();
	unsigned int CardID = pView->GetSelectCardID();
	int nItem = pView->GetSelectItem();
	if( CardID <= 0 )	
	{
		DWORD dwResID = IDS_STR_ASK_SELECT_CARD;
		if( theApp.m_Lang == 0 )
		{
			dwResID = IDS_STR_ASK_SELECT_CARD_CH;
		}

		CString str;
		str.LoadString( dwResID );
		MessageBox( str );
		return;
	}

	CDlgStartCheck dlg;
	dlg.SetDevice( pDeviceClient );
	dlg.SetCardID( CardID );
	dlg.DoModal();
	
	if( dlg.GetStartStatus() )
	{
		pView->SetItemWorkStatus( nItem, TRUE );
	}

	m_LimitHigh = dlg.m_valTemperature;
	m_LimitLow	= dlg.m_nTemp2;
	pView->m_FormStatic.SetLimit( m_LimitLow, m_LimitHigh  );
	pView->m_FormStatic.SetWarnTemperture( m_LimitHigh, m_LimitLow  );

}

void CMainFrame::OnTemperatureEnd()
{
	U32 u32Ret = 1;
	CDeviceClient* pDeviceClient = theApp.GetDevice();
	if( pDeviceClient )
	{
		CTemperatureView *pView = (CTemperatureView*)this->GetActiveView();
		if( pView )
		{
			unsigned int CardID = pView->GetSelectCardID();
			int nItem = pView->GetSelectItem();
			if( CardID <=0 ) 
			{
				DWORD dwResID = IDS_STR_ASK_SELECT_CARD;
				if( theApp.m_Lang == 0 )
				{
					dwResID = IDS_STR_ASK_SELECT_CARD_CH;
				}

				CString str;
				str.LoadString( dwResID );
				MessageBox( str );
				return;
			}
			u32Ret = pDeviceClient->StopDevice( pView->GetSelectCardID() );
			if( u32Ret == RETURN_NO_ERROR )
			{	
				pView->SetItemWorkStatus( nItem, FALSE );
			}
		}
	}


	CString str;
	if( u32Ret == RETURN_NO_ERROR )
	{
		UINT nRC = theApp.m_Lang == 0 ? IDS_STR_STOP_TEMPERATURE_CH : IDS_STR_STOP_TEMPERATURE; 
		str.LoadString( nRC ); 
		MessageBox( str );

		//OnHistoryReadData();
	}
	else
	{
		UINT nRC = theApp.m_Lang == 0 ? IDS_STR_STOP_TEMPERATURE_ERROR_CH : IDS_STR_STOP_TEMPERATURE_ERROR; 
		str.LoadString( nRC ); 
		MessageBox( str );
	}
}

void CMainFrame::OnInfoProductName()
{
	BOOL bRet = FALSE;

	UINT nLang = IDS_STR_PRODUCT_NAME;
	if( theApp.m_Lang == 0 )
	{
		nLang = IDS_STR_PRODUCT_CH;
	}

	CString str;
	str.LoadString( nLang );

	CDlgRelationSet dlg;
	dlg.SetName( str );
	dlg.SetListData( theApp.m_ProductList, &(theApp.m_nCurrentProductListCount) );
	int nRet = dlg.DoModal();

	//if( nRet == MB_OK  )
	//{
	theApp.WriteNameListToFile();
	//}
}

void CMainFrame::OnInfoManufacture()
{
	BOOL bRet = FALSE;

	UINT nLang = IDS_STR_MANUFACTURE;
	if( theApp.m_Lang == 0 )
	{
		nLang = IDS_STR_MANUFACTURE_CH;
	}

	CString str;
	str.LoadString( nLang );

	CDlgRelationSet dlg;
	dlg.SetName( str );
	dlg.SetListData( theApp.m_ManufactureList, &(theApp.m_nCurrentManufactureListCount) );
	int nRet = dlg.DoModal();

	//if( nRet == MB_OK  )
	//{
	theApp.WriteNameListToFile();
	//}
}

void CMainFrame::OnGroup()
{
	BOOL bRet = FALSE;

	UINT nLang = IDS_STR_GROUP;
	if( theApp.m_Lang == 0 )
	{
		nLang = IDS_STR_GROUP_CH;
	}

	CString str;
	str.LoadString( nLang );

	CDlgRelationSet dlg;
	dlg.SetName( str );
	dlg.SetListData( theApp.m_GroupList, &(theApp.m_nCurrentGroupListCount) );
	int nRet = dlg.DoModal();

	//if( nRet == MB_OK  )
	//{
	theApp.WriteNameListToFile();
	//}
}

// for test
/*
float g_TestTemp[256];
float g_High;
float g_Low;
int	  g_LowIndex = 0;
int	  g_HighIndex = 0;
void CMainFrame::OnHistoryReadData()
{
g_Low = 20;
g_High = 0;

for( int i=0; i<256; i++ )
{
g_TestTemp[i] = 10+i%20 + 0.1*(i%5);
if( g_Low > g_TestTemp[i] )
{
g_Low = g_TestTemp[i];
g_LowIndex = i;
}

if( g_High < g_TestTemp[i] )
{
g_High = g_TestTemp[i];
g_HighIndex = i;
}
}

CTemperatureView *pView = (CTemperatureView*)this->GetActiveView();
if( pView )
{
pView->SetHistoryData( g_TestTemp, 256 );
pView->m_FormStatic.SetHighLowTemperature( g_LowIndex, g_HighIndex );

char StartTime[6];
StartTime[0] = 7;
StartTime[1] = 7;
StartTime[2] = 1;
StartTime[3] = 13;
StartTime[4] = 48;
StartTime[5] = 0;
pView->m_FormStatic.SetStartTime( StartTime );
pView->m_FormStatic.SetDisplayMode( 0 );
pView->ActivePage( 0 );
}
}

double g_sum;
void CMainFrame::OnListView()
{
	g_Low = 20;
	g_High = 0;

	g_sum = 0;
	for( int i=0; i<256; i++ )
	{
		g_TestTemp[i] = 10+i%20 + 0.1*(i%5);
		g_sum += g_TestTemp[i];
		if( g_Low > g_TestTemp[i] )
		{
		g_Low = g_TestTemp[i];
		g_LowIndex = i;
	}

	if( g_High < g_TestTemp[i] )
	{
	g_High = g_TestTemp[i];
	g_HighIndex = i;
	}
	}

	CHistoryDlg dlg;
	dlg.SetHistoryData( g_TestTemp, 256 );
	dlg.SetRelationData( g_Low, g_High, g_sum );
	dlg.SetWarnTemp( m_LimitHigh, m_LimitLow );
	char StartTime[6];
	StartTime[0] = 7;
	StartTime[1] = 7;
	StartTime[2] = 1;
	StartTime[3] = 13;
	StartTime[4] = 48;
	StartTime[5] = 0;

	dlg.SetTime( StartTime, 20 );
	dlg.DoModal();
}

void CMainFrame::OnFigView()
{
	CTemperatureView *pView = (CTemperatureView*)this->GetActiveView();
	if( pView )
	{
		g_Low = 20;
		g_High = 0;

		g_sum = 0;
		for( int i=0; i<256; i++ )
		{
			g_TestTemp[i] = 10+i%20 + 0.1*(i%5);
			g_sum += g_TestTemp[i];
			if( g_Low > g_TestTemp[i] )
			{
				g_Low = g_TestTemp[i];
				g_LowIndex = i;
			}

			if( g_High < g_TestTemp[i] )
			{
				g_High = g_TestTemp[i];
				g_HighIndex = i;
			}
		}

		if( 1 )
		{
			if( pView )
			{
				pView->SetHistoryData( g_TestTemp, 256 );
				//pView->m_FormStatic.SetStartTime( m_StartTime );
				pView->m_FormStatic.SetDisplayMode( 0 );
				pView->ActivePage( 0 );
			}
		}
		else
		{
			UINT nID = theApp.m_Lang == 0 ? IDS_STR_READ_HDATA_FAILED_CH : IDS_STR_READ_HDATA_FAILED;
			CString str;
			str.LoadString( nID );
			MessageBox( str );
		}
	}
}
*/

void CMainFrame::OnExportData()
{
	char ch[256];
	CFileDialog dlg( FALSE, _T("csv") );
	int nRet = dlg.DoModal();
	if( nRet == 1 )
	{
		CString str = dlg.GetPathName();

		TCHAR* lpStr = str.GetBuffer();
		//WideCharToMultiByte(CP_ACP,0,lpStr,-1,ch,256,NULL,NULL); 
		strcpy( ch, lpStr );

		CTime StartTime( m_StartTime[0] + 2000, m_StartTime[1], m_StartTime[2], m_StartTime[3], m_StartTime[4], m_StartTime[5] );
		if( m_TimeInterval > 0 )
		{
			CExportFile file;
			file.OpenCreateFile( ch );
			CTimeSpan timeSpan( m_TimeInterval );

			sprintf( ch, "%d/%d/%d %d:%d", StartTime.GetYear(), StartTime.GetMonth(), 
				StartTime.GetDay(), StartTime.GetHour(), StartTime.GetMinute() );
			file.AddItem( ch );
			sprintf( ch, "%.2f",m_pTemperatureData[0] ); 
			file.AddItem( ch );
			file.EnterLine();
			for( unsigned int i=1; i<m_TemperatureCount - 1; i++ )
			{
				StartTime += timeSpan;
				sprintf( ch, "%d/%d/%d %d:%d", StartTime.GetYear(), StartTime.GetMonth(), 
					StartTime.GetDay(), StartTime.GetHour(), StartTime.GetMinute() );

				file.AddItem( ch );
				sprintf( ch, "%.2f", m_pTemperatureData[i] );
				file.AddItem( ch );

				file.EnterLine();
			}

			file.CloseFile();
		}
	}
}

void CMainFrame::OnHistoryReadData()
{
	CTemperatureView *pView = (CTemperatureView*)this->GetActiveView();
	if( pView )
	{
		U32 CardID = pView->GetSelectCardID();
		if( CardID <= 0 )
		{
			DWORD dwResID = IDS_STR_ASK_SELECT_CARD;
			if( theApp.m_Lang == 0 )
			{
				dwResID = IDS_STR_ASK_SELECT_CARD_CH;
			}

			CString str;
			str.LoadString( dwResID );
			MessageBox( str );
		}

		if( GetCardHistoryData( CardID ) )
		{
			if( pView )
			{
				pView->SetHistoryData( m_pTemperatureData, m_TemperatureCount );
				pView->m_FormStatic.SetStartTime( m_StartTime );
				pView->m_FormStatic.SetDisplayMode( 0 );
				//pView->ActivePage( 0 );
			}
		}
	}
}

void CMainFrame::OnListView()
{
	CTemperatureView *pView = (CTemperatureView*)this->GetActiveView();

	U32 u32Ret = RETURN_NO_ERROR;
	U32 CardID = pView->GetSelectCardID();
	if( CardID <= 0 )
	{
		DWORD dwResID = IDS_STR_ASK_SELECT_CARD;
		if( theApp.m_Lang == 0 )
		{
			dwResID = IDS_STR_ASK_SELECT_CARD_CH;
		}

		CString str;
		str.LoadString( dwResID );
		MessageBox( str );
		return;
	}
	try
	{
		if( GetCardHistoryData( CardID ) )

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -