From 9c13bc5af33d28bb217995597f88fe863db42442 Mon Sep 17 00:00:00 2001
From: LYW <leeyeanwoo@diteam.co.kr>
Date: 금, 01 4월 2022 10:59:55 +0900
Subject: [PATCH] AOI RawMessnger 동기화

---
 DitGlassRawMessenger/DitGlassRawMessenger/DitGlassRawMessengerDlg.cpp |   61 +++++++++++++++++++++++++++++-
 1 files changed, 59 insertions(+), 2 deletions(-)

diff --git a/DitGlassRawMessenger/DitGlassRawMessenger/DitGlassRawMessengerDlg.cpp b/DitGlassRawMessenger/DitGlassRawMessenger/DitGlassRawMessengerDlg.cpp
index e2290d6..056f20b 100644
--- a/DitGlassRawMessenger/DitGlassRawMessenger/DitGlassRawMessengerDlg.cpp
+++ b/DitGlassRawMessenger/DitGlassRawMessenger/DitGlassRawMessengerDlg.cpp
@@ -166,6 +166,9 @@
 	ON_BN_CLICKED(IDC_BTN_STACKAPPLY, &CDitGlassRawMessengerDlg::OnBnClickedBtnStackapply)
 	ON_BN_CLICKED(IDC_TEST_CMD, &CDitGlassRawMessengerDlg::OnBnClickedTestCmd)
 	ON_BN_CLICKED(IDC_BTN_FTP_MANUALUPLOAD, &CDitGlassRawMessengerDlg::OnBnClickedBtnFtpManualupload)
+	/* <LJC 20211122 : #3820 ADD Start> */
+	ON_WM_COPYDATA()
+	/* <LJC 20211122 : #3820 ADD End> */
 END_MESSAGE_MAP()
 
 void GetCompileTime(tm& timestruct)
@@ -251,11 +254,13 @@
 		akFileDB.getItem("DataMaxNumCell", &m_ConfigOption.m_nMaxDataNumCell, 200);
 		akFileDB.getItem("DataMaxNumDefect", &m_ConfigOption.m_nMaxDataNumDefect, 50000);
 		akFileDB.getItem("SelectRawType", &m_ConfigOption.m_nSelectRawType, 0);
-		akFileDB.getItem("LogFilePath", m_ConfigOption.m_strLogFilePath, "c:\\AOIServer\\LogRawMessenger\\LogRawMessenger");
+		akFileDB.getItem("LogFilePath", m_ConfigOption.m_strLogFilePath, "D:\\AOIServer\\LogRawMessenger\\LogRawMessenger");
 		akFileDB.getItem("Stack_Use", &m_ConfigOption.m_bUseStack, 0);
 		akFileDB.getItem("Stack_LocalPath", m_ConfigOption.m_strStackLocalPath, "D:\\DIT_ResultData\\Stack");
+		/*< KJG 20211024 - #3487 ADD Start >*/
 		akFileDB.getItem("RawMerge_Use", &m_ConfigOption.m_bUseRawMerge, 0);
 		akFileDB.getItem("RawMerge_LocalPath", m_ConfigOption.m_strRawMergeLocalPath, "D:\\DIT_ResultData\\RawMerge");
+		/*< KJG 20211024 - #3487 ADD End >*/
 		akFileDB.getItem("Stack_EquipID",m_ConfigOption.m_strStackEquipID, "AAAAA");
 		akFileDB.getItem("Stack_Param1",m_ConfigOption.m_strStackParam1, "");
 		akFileDB.getItem("Stack_Param2",m_ConfigOption.m_strStackParam2, "");
@@ -280,7 +285,7 @@
 
 		CreateDirectory(strPath, NULL);
 		//CakLoggerExt::getInstance()->setWriteFileMode(m_ConfigOption.m_strLogFilePath);
-		CakLoggerExt::getInstance()->setWriteFileMode2("C:\\DIT_LogData\\", "logGlassRawMessenger");
+		CakLoggerExt::getInstance()->setWriteFileMode2("D:\\DIT_LogData\\", "logGlassRawMessenger");
 		CakLoggerExt::getInstance()->m_hParent = GetSafeHwnd();
 
 		m_ctrlLoggerList;
@@ -1349,8 +1354,10 @@
 
 	akFileDB.setItem("Stack_Use", m_ConfigOption.m_bUseStack);
 	akFileDB.setItem("Stack_LocalPath", m_ConfigOption.m_strStackLocalPath);
+	/*< KJG 20211024 - #3487 ADD Start >*/
 	akFileDB.setItem("RawMerge_Use", m_ConfigOption.m_bUseRawMerge);
 	akFileDB.setItem("RawMerge_LocalPath", m_ConfigOption.m_strRawMergeLocalPath);
+	/*< KJG 20211024 - #3487 ADD End >*/
 	akFileDB.setItem("Stack_EquipID", m_ConfigOption.m_strStackEquipID);
 	akFileDB.setItem("Stack_Param1",m_ConfigOption.m_strStackParam1);
 	akFileDB.setItem("Stack_Param2",m_ConfigOption.m_strStackParam2);
@@ -1530,8 +1537,10 @@
 {
 	m_ConfigOption.m_bUseStack = ((CButton*)GetDlgItem(IDC_CHECK_STACKFILEREAD))->GetCheck();
 	GetDlgItemText(IDC_EDIT_STACK_LOCALSAVEPATH,m_ConfigOption.m_strStackLocalPath, 256);
+	/*< KJG 20211024 - #3487 ADD Start >*/
 	m_ConfigOption.m_bUseRawMerge = ((CButton*)GetDlgItem(IDC_CHECK_RAWMERGEFILEREAD))->GetCheck();
 	GetDlgItemText(IDC_EDIT_RAWMERGE_LOCALSAVEPATH, m_ConfigOption.m_strRawMergeLocalPath, 256);
+	/*< KJG 20211024 - #3487 ADD End >*/
 	GetDlgItemText(IDC_EDIT_STACK_EQUIPID,m_ConfigOption.m_strStackEquipID, 32);
 	GetDlgItemText(IDC_EDIT_STACK_PARAM1,m_ConfigOption.m_strStackParam1, 32);
 	GetDlgItemText(IDC_EDIT_STACK_PARAM2,m_ConfigOption.m_strStackParam2, 32);
@@ -1613,3 +1622,51 @@
 
 	
 }
+
+/* <LJC 20211122 : #3820 ADD Start> */
+BOOL CDitGlassRawMessengerDlg::OnCopyData(CWnd* pWnd, COPYDATASTRUCT* pCopyDataStruct)
+{
+	// TODO: 여기에 메시지 처리기 코드를 추가 및/또는 기본값을 호출합니다.
+	CDitGlassRawServer* pServer = (CDitGlassRawServer*)&m_Server;
+	CgrmGlassRawData* pRawDataBuffer = &m_GlassRawDataBuffer;
+	pRawDataBuffer->ImportGlassRaw(pServer->GetGlassRawInfo(), (char*)pServer->GetGlassData(), true);
+	CFTPCopyDataParam* FTPCopyDataParam = ((CFTPCopyDataParam*)pCopyDataStruct->lpData);
+	switch (pCopyDataStruct->dwData)
+	{
+	case COPYDATA_RAW_DOWNLOAD_ACK:
+		{
+		if (FTPCopyDataParam->m_nProcessType == CFTPCopyDataParam::FTPProcessType_DownFile && pServer->GetGlassRawInfo()->m_ServerProcStep == APS_GlassLoading && m_pGlassRawMaker->GetEnableFtpAck() == TRUE)
+		{
+			if (FTPCopyDataParam->m_nSendResultCode == TRUE)
+			{
+				m_pGlassRawMaker->SetEnableFtpAck(FALSE);
+				m_pGlassRawMaker->SearchFIle(pRawDataBuffer);
+				break;
+			}
+			else
+			{
+				m_nMaxMergeList++;
+				m_pGlassRawMaker->DownLoadMergeFile(pRawDataBuffer);
+				if (m_nMaxMergeList > 10)
+				{
+					m_nMaxMergeList = 0;
+					break;
+				}
+
+			}
+		}
+		else
+		{
+			break;
+		}
+		
+		}
+		break;
+
+	default:
+		break;
+	}
+
+	return CDialog::OnCopyData(pWnd, pCopyDataStruct);
+}
+/* <LJC 20211122 : #3820 ADD End> */
\ No newline at end of file

--
Gitblit v1.9.3