From f1a543772246f59b8b52a8857270b38ee38f3588 Mon Sep 17 00:00:00 2001
From: LYW <leeyeanwoo@diteam.co.kr>
Date: 화, 31 5월 2022 09:07:13 +0900
Subject: [PATCH] AOI RawMessenger 동기화

---
 DitGlassRawMessenger/DitGlassRawMessenger/GlassRawCPJT.cpp |  190 ++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 154 insertions(+), 36 deletions(-)

diff --git a/DitGlassRawMessenger/DitGlassRawMessenger/GlassRawCPJT.cpp b/DitGlassRawMessenger/DitGlassRawMessenger/GlassRawCPJT.cpp
index 93a3018..8a1aa61 100644
--- a/DitGlassRawMessenger/DitGlassRawMessenger/GlassRawCPJT.cpp
+++ b/DitGlassRawMessenger/DitGlassRawMessenger/GlassRawCPJT.cpp
@@ -21,10 +21,6 @@
 
 #define LOCAL_AOIRAWDFS_PATH		"D:\\DIT_ResultData\\Raw"
 #define LOCAL_AOIRAWBIN_PATH		"D:\\DIT_ResultData\\RawBin"
-//TEST
-// #define NETWORK_AOIRAWDFS_PATH		"D:\\DIT_ResultData\\Raw"
-// #define NETWORK_AOIRAWBIN_PATH		"D:\\DIT_ResultData\\RawBin"
-
 #define NETWORK_AOIRAWDFS_PATH		"\\\\126.100.100.1\\d\\DIT_ResultData\\Raw"
 #define NETWORK_AOIRAWBIN_PATH		"\\\\126.100.100.1\\d\\DIT_ResultData\\RawBin"
 
@@ -39,7 +35,9 @@
 	/* <LJC 20211122 : #3820 ADD Start> */
 #define NETWORK_AOIRAWMERGELOCAL_PATH  "D:\\DIT_ResultData\\RawMerge"
 	/* <LJC 20211122 : #3820 ADD End> */
-
+/* <KMH 20220407 : #4053 ADD Start> */
+#define  LOCAL_LOGDATA_PATH				"D:\\DIT_LogData"
+/* <KMH 20220407 : #4053 ADD End> */
 char* g_pCellCode = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
 
 void _TimeDelay(int delay)
@@ -67,6 +65,20 @@
 	CreateDirectory(LOCAL_AOIRAWDFS_PATH, NULL);
 	CreateDirectory(LOCAL_AOIRAWBIN_PATH, NULL);
 	CreateDirectory("D:\\Raw_im", NULL);
+
+	/* <KMH 20220407 : #4053 ADD Start> */
+	CFileFind FileFinder;
+	SYSTEMTIME st;
+	GetLocalTime(&st);
+	char strLogFolderPath [256];
+	sprintf(strLogFolderPath, "%s\\%02d%02d%02d", LOCAL_LOGDATA_PATH,st.wYear, st.wMonth, st.wDay);
+
+	BOOL bFind = FileFinder.FindFile(strLogFolderPath);
+	if (!bFind)
+	{
+		CreateDirectory(strLogFolderPath, NULL);
+	}
+	/* <KMH 20220407 : #4053 ADD End> */
 	m_MuraResultFile.readOptionFile("C:\\DIT_Review\\ReviewServerConfig\\MacroInfo.cfg");
 
 	m_GlassRawRTMS.SetMuraResult(&m_MuraResultFile);
@@ -80,6 +92,8 @@
 
 BOOL CGlassRawCPJT::SequenceGlassLoading( CgrmGlassRawData* pData )
 {
+
+	AKLOG("Sequence :  Glass Loading Signal Start ");/* <KMH 20220407 : #4053 ADD > */
  	SetEnableFtpAck(FALSE);
  	m_nRawMergeIdx = 0;
 	if(m_StackResult.getStackUse())
@@ -94,14 +108,24 @@
 		{
 			File.FindNextFile();
 			strStackFileLocalPath = File.GetFilePath();
-			DeleteFile(strStackFileLocalPath);
-			Sleep(10);
+			/* <KMH 20220407 : #4053 MOD Start> */
+			if (DeleteFile(strStackFileLocalPath))
+				/*< SWK 20220413 - #4053 MOD Start >*/
+// 			{
+// 				AKLOG(" Fucntion : Delete Stack File Sucess[%s] ", strStackFileLocalPath);
+// 			}
+// 			/* <KMH 20220407 : #4053 MOD End> */
+// 			Sleep(10);
+//		}
+// 		else
+// 		{
+// 			AKLOG(" Function : Delete Stack File Fail [%s]", strStackFileLocalPath);/* <KMH 20220407 : #4053 MOD > */
+// 		}
+				AKLOG(" Function : Delete Stack File Sucess[%s] ", strStackFileLocalPath);
+			else
+				AKLOG(" Function : Delete Stack File Fail [%s]", strStackFileLocalPath);
 		}
-		else
-		{
-			AKLOG("Delete Stack File Fail [%s]", strStackFileLocalPath);
-		}
-
+				/*< SWK 20220413 - #4053 MOD End >*/
 
 		//201218 CJH - Stack Download �떆�룄
 		SendMessageFTPDownloadStack(pData->GetGlassData());
@@ -117,20 +141,38 @@
 		{
 			File.FindNextFile();
 			strRawFileLocalPath = File.GetFilePath();
-			DeleteFile(strRawFileLocalPath);
-			Sleep(10);
+			/* <KMH 20220407 : #4053 MOD Start> */
+			if (DeleteFile(strRawFileLocalPath))
+				/*< SWK 20220413 - #4053 MOD Start >*/
+// 			{
+// 				AKLOG(" Fucntion : Delete RawMerge File Sucess[%s] ", strRawFileLocalPath);
+// 			}
+// 			/* <KMH 20220407 : #4053 MOD End> */
+// 			Sleep(10);
+// 		}
+// 		else
+// 		{
+// 			AKLOG(" Function : Delete RawMerge File Fail [%s]", strRawFileLocalPath); /* <KMH 20220407 : #4053 ADD > */
+// 		}
+				AKLOG(" Function : Delete RawMerge File Sucess[%s] ", strRawFileLocalPath);
+			else
+				AKLOG(" Function : Delete RawMerge File Fail [%s]", strRawFileLocalPath);
 		}
+				/*< SWK 20220413 - #4053 MOD End >*/
 		SetEnableFtpAck(TRUE);
 		DownLoadMergeFile(pData);
 	}
 	/* <LJC 20211122 : #3820 ADD End> */
 	/*< KJG 20211024 - #3487 ADD End >*/
 
+	AKLOG("Sequence :  Glass Loading Signal End ");
 	return TRUE;
 }
 
 BOOL CGlassRawCPJT::SequenceInspectEnd( CgrmGlassRawData* pData )
 {
+	AKLOG(" Sequence : InspectionEnd Signal Start"); /* <KMH 20220407 : #4053 ADD > */
+
 	m_bReviewEndCheck = FALSE;
 	//210128
 	m_tmReviewEnd = m_tmReviewStart = CTime::GetCurrentTime();
@@ -220,9 +262,15 @@
 			fclose(pf);
 		}
 	}
+	else
+	{
+		SendMessageFTPUploadImage(pData->GetGlassData(), FTPCMD_MURA_IMAGE);/* <KMH 20220407 : #4053 ADD > */
+	}
+		
     /* <KYH 211129 : #3806 ADD End> */
-	SendMessageFTPUploadImage(pData->GetGlassData(), FTPCMD_MURA_IMAGE);//0405nwh
 
+
+	AKLOG(" Sequence : InspectionEnd Signal End"); /* <KMH 20220407 : #4053 ADD > */
 	return TRUE;
 }
 
@@ -351,6 +399,7 @@
 
 BOOL CGlassRawCPJT::SequenceFtpUpload(char* pRawFilePathName)
 {
+	AKLOG(" Sequence : FTP Upload Signal Start ");
 	// Manual Upload 湲곕뒫 [21-02-05 KJG]
 	CTime tmFileCreate;
 	_grmGlassData GlassData;
@@ -423,7 +472,7 @@
 	
 	fclose(pf);
 
-
+	AKLOG(" Sequence : FTP Upload Signal End ");
 	return TRUE;
 }
 
@@ -538,10 +587,14 @@
 	CString strValue;
 	/*< KJG 20211229 - #3846 MOD Start >*/
 	//strValue = "ITEM PANEL MODULETYPE MODULEID PROCESSID PRODUCTID STEPID PROD_TYPE BATCHID H_PANELID E_PANELID P_PANELID OPERID COMP_COUNT PPID GRADE CODE R_GRADE MAP_IMAGE L_TIME U_TIME S_TIME E_TIME T_DEFECT TR PR NG TB TW RB RW T_STACK NO_DEFECT MAX_AVG_GRAY MAX_PORTION OK_CELL RJ_CELL RW_CELL NR_CELL CSTID SLOT_NO JOB_END TD_DEFECT SD_DEFECT PD_DEFECT SP_DEFECT PAD_GATE PAD_DATA M_DEFECT C_DEFECT LN_DEFECT IMG_COUNT RECIPE SHRINK RAW_CUT CRACK_DEFECT";
-	strValue = "ITEM PANEL MODULETYPE MODULEID PROCESSID PRODUCTID STEPID PROD_TYPE BATCHID H_PANELID E_PANELID P_PANELID OPERID COMP_COUNT PPID GRADE CODE R_GRADE MAP_IMAGE L_TIME U_TIME S_TIME E_TIME T_DEFECT TR PR NG TB TW RB RW T_STACK NO_DEFECT MAX_NG MAX_PORTION OK_CELL RJ_CELL RW_CELL NR_CELL CSTID SLOT_NO JOB_END TD_DEFECT SD_DEFECT PD_DEFECT SP_DEFECT PAD_GATE PAD_DATA M_DEFECT C_DEFECT LN_DEFECT IMG_COUNT RECIPE SHRINK RAW_CUT CRACK_DEFECT"; //56ea
+	/* <LJC 20220425 : #3957 MOD Start> */
+	strValue = "ITEM PANEL MODULETYPE MODULEID PROCESSID PRODUCTID STEPID PROD_TYPE BATCHID H_PANELID E_PANELID P_PANELID OPERID COMP_COUNT PPID GRADE CODE R_GRADE MAP_IMAGE L_TIME U_TIME S_TIME E_TIME T_DEFECT TR PR NG TB TW RB RW T_STACK NO_DEFECT MAX_NG MAX_PORTION OK_CELL RJ_CELL RW_CELL NR_CELL CSTID SLOT_NO JOB_END TD_DEFECT SD_DEFECT PD_DEFECT SP_DEFECT PAD_GATE PAD_DATA M_DEFECT C_DEFECT LN_DEFECT IMG_COUNT RECIPE SHRINK RAW_CUT CRACK_DEFECT CODE_COUNT1 CODE_COUNT2 CODE_COUNT3 CODE_COUNT4 CODE_COUNT5 CODE_COUNT6 CODE_COUNT7 CODE_COUNT8 CODE_COUNT9 CODE_COUNT10"; //56ea
+	/* <LJC 20220425 : #3957 MOD End> */
 	/*< KJG 20211229 - #3846 MOD End >*/
 	strLine += strValue; strLine += "\n";
-	strValue = "ITEM SUBPANEL SUBPANELID COORD_X COORD_Y SIZE_X SIZE_Y GATELINE DATALINE GRADE CODE R_GRADE T_DEFECT TD_DEFECT SD_DEFECT PD_DEFECT SP_DEFECT PAD_GATE PAD_DATA M_DEFECT C_DEFECT LN_DEFECT TR PR NG RB RW TB TW T_STACK NO_DEFECT"; //31ea /* <KYH 211129 : #3796 MOD Start> */
+	/* <LJC 20220425 : #3957 MOD Start> */
+	strValue = "ITEM SUBPANEL SUBPANELID COORD_X COORD_Y SIZE_X SIZE_Y GATELINE DATALINE GRADE CODE R_GRADE T_DEFECT TD_DEFECT SD_DEFECT PD_DEFECT SP_DEFECT PAD_GATE PAD_DATA M_DEFECT C_DEFECT LN_DEFECT TR PR NG RB RW TB TW T_STACK NO_DEFECT CODE_COUNT1 CODE_COUNT2 CODE_COUNT3 CODE_COUNT4 CODE_COUNT5 CODE_COUNT6 CODE_COUNT7 CODE_COUNT8 CODE_COUNT9 CODE_COUNT10"; //31ea /* <KYH 211129 : #3796 MOD Start> */
+		/* <LJC 20220425 : #3957 MOD End> */
 	strLine += strValue; strLine += "\n";
 	strValue = "ITEM DEFECT ID DEF_NO COORD_X COORD_Y GATELINE DATALINE SIZE_S SIZE_W SIZE_L SIZE_H GRADE CODE STACK_FLAG STACK_COUNT STACK_STEP IMAGE_FILE LINE_CODE VC_CODE DCR_CODE DEFECT_SIZE REPEAT_DEFECT WSI_HEIGHT CS_HEIGHT C_GRADE GRAY_MIN GRAY_MAX GRAY_AVG GRAY_DEF WSI_IMAGE USE_CCDIMAGE SCAN_NUM CAM_POSITION CCD_NO R_GRAY_MIN R_GRAY_MAX R_GRAY_AVG R_HEIGHT G_HEIGHT B_HEIGHT INS_CHANNEL COMPACTNESS THICKNESS MAJOR MINOR WSI_TYPE DEFECT_TYPE SHRINK CLASS_CODE"; //50ea    
 	strLine += strValue;
@@ -930,7 +983,19 @@
 	{
 		SPRINTRAW(12, "UNUSE");
 	}
-
+	/* <LJC 20220425 : #3957 ADD Start> */
+	for (int i = 0; i < RAW_CODE_MAX; i++)
+	{
+		if (pGlassData->m_nDefectCode[i] >= 0)
+		{
+			SPRINTRAW(12, "%d", pGlassData->m_nDefectCode[i]);
+		}
+		else
+		{
+			SPRINTRAW(12, "*");
+		}
+	}
+	/* <LJC 20220425 : #3957 ADD End> */
 	SPRINTRAWEND;   //以묒슂!!! �젮 留덉�留됱뿉 瑗� �엳�뼱�빞�븿!!!(�궘�젣湲덉�) [源��깭�쁽2020/9/23]
 }
 
@@ -1056,7 +1121,19 @@
 	// 31 6  NO_DEFECT 異붽�
 	SPRINTRAW(12, "%d", pCellData->m_nDefectNumJudgeND); //KYH ND �뜲�씠�꽣 異붽�
 	/* <KYH 211129 : #3796 MOD End> */
-
+	/* <LJC 20220425 : #3957 ADD Start> */
+	for (int i = 0; i < RAW_CODE_MAX; i++)
+	{
+		if (pCellData->m_nDefectCode[i] >= 0)
+		{
+			SPRINTRAW(12, "%d", pCellData->m_nDefectCode[i]);
+		}
+		else
+		{
+			SPRINTRAW(12, "*");
+		}
+	}
+	/* <LJC 20220425 : #3957 ADD End> */
 	SPRINTRAWEND;   //以묒슂!!! �젮 留덉�留됱뿉 瑗� �엳�뼱�빞�븿!!!(�궘�젣湲덉�) [源��깭�쁽2020/9/23]
 }
 
@@ -1584,10 +1661,10 @@
 	cds.lpData = &upParam;
 
 	DWORD dwReturn = 0;
-	if(SendMessageTimeout(hWnd, WM_COPYDATA, NULL, (LPARAM)&cds, SMTO_NORMAL, 30000, (PDWORD_PTR)(dwReturn)) == FALSE)
-	{
-	}
-
+	if(SendMessageTimeout(hWnd, WM_COPYDATA, NULL, (LPARAM)&cds, SMTO_NORMAL, 5000, (PDWORD_PTR)(dwReturn)) == FALSE)
+		AKLOG(" FunCtion FTP :  RAW File Upload Signal Fail[%d]", FTPCMD_RAW);/* <KMH 20220407 : #4053 ADD > */
+	else
+		AKLOG(" FunCtion FTP :  RAW File Upload Signal Sucess[%d]", FTPCMD_RAW);/* <KMH 20220407 : #4053 ADD > */
 }
 
 void CGlassRawCPJT::SendMessageFTPDownloadStack( _grmGlassData* pGlassData )
@@ -1626,9 +1703,19 @@
 	cds.lpData = &upParam;
 
 	DWORD dwReturn = 0;
-	if(SendMessageTimeout(hWnd, WM_COPYDATA, NULL, (LPARAM)&cds, SMTO_NORMAL, 20000, (PDWORD_PTR)(dwReturn)) == FALSE)
-	{
-	}
+	if (SendMessageTimeout(hWnd, WM_COPYDATA, NULL, (LPARAM)&cds, SMTO_NORMAL, 5000, (PDWORD_PTR)(dwReturn)) == FALSE)
+		/*< SWK 20220413 - #4053 MOD Start >*/
+// 	{
+// 		AKLOG(" Fucntion FTP :  Stack File Download Signal Fail[%d]", FTPCMD_STACK);/* <KMH 20220407 : #4053 ADD > */
+// 	}
+// 	else
+// 	{
+// 		AKLOG(" Fucntion FTP :  Stack File Download Signal Sucess[%d]", FTPCMD_STACK);/* <KMH 20220407 : #4053 ADD > */
+// 	}
+		AKLOG(" Function FTP :  Stack File Download Signal Fail[%d]", FTPCMD_STACK);
+	else 
+		AKLOG(" Function FTP :  Stack File Download Signal Success[%d]", FTPCMD_STACK);
+		/*< SWK 20220413 - #4053 MOD End >*/
 }
 
 void CGlassRawCPJT::SendMessageFTPDownloadDataFile( _grmGlassData* pGlassData )
@@ -1666,9 +1753,19 @@
 	cds.lpData = &upParam;
 
 	DWORD dwReturn = 0;
-	if(SendMessageTimeout(hWnd, WM_COPYDATA, NULL, (LPARAM)&cds, SMTO_NORMAL, 20000, (PDWORD_PTR)(dwReturn)) == FALSE)
-	{
-	}
+	if (SendMessageTimeout(hWnd, WM_COPYDATA, NULL, (LPARAM)&cds, SMTO_NORMAL, 5000, (PDWORD_PTR)(dwReturn)) == FALSE)
+		/*< SWK 20220413 - #4053 MOD Start >*/
+// 	{
+// 		AKLOG(" Fucntion FTP :  RawMerge File Download Signal Sucess[%d]", FTPCMD_RAWMERGE);/* <KMH 20220407 : #4053 ADD > */
+// 	}
+// 	else
+// 	{
+// 		AKLOG(" Fucntion FTP :  RawMerge File Download Signal Fail[%d]", FTPCMD_RAWMERGE);/* <KMH 20220407 : #4053 ADD > */
+// 	}
+		AKLOG(" Function FTP :  RawMerge File Download Signal Fail[%d]", FTPCMD_RAWMERGE);
+	else
+		AKLOG(" Function FTP :  RawMerge File Download Signal Success[%d]", FTPCMD_RAWMERGE);
+		/*< SWK 20220413 - #4053 MOD End >*/
 	/*< KJG 20211024 - #3487 ADD End >*/
 }
 
@@ -1708,9 +1805,19 @@
 	cds.lpData = &upParam;
 
 	DWORD dwReturn = 0;
-	if(SendMessageTimeout(hWnd, WM_COPYDATA, NULL, (LPARAM)&cds, SMTO_NORMAL, 20000, (PDWORD_PTR)(dwReturn)) == FALSE)
-	{
-	}
+	if (SendMessageTimeout(hWnd, WM_COPYDATA, NULL, (LPARAM)&cds, SMTO_NORMAL, 5000, (PDWORD_PTR)(dwReturn)) == FALSE)
+		/*< SWK 20220413 - #4053 MOD Start >*/
+// 	{
+// 		AKLOG(" Fucntion FTP : Image Upload Signla Sucess[%d]", sort);/* <KMH 20220407 : #4053 ADD > */
+// 	}
+// 	else
+// 	{
+// 		AKLOG(" Fucntion FTP : Image Upload Signla Fail[%d]", sort);/* <KMH 20220407 : #4053 ADD > */
+// 	}
+		AKLOG(" Function FTP : Image Upload Signal Fail[%d]", sort);
+	else
+		AKLOG(" Function FTP : Image Upload Signal Success[%d]", sort);
+		/*< SWK 20220413 - #4053 MOD End >*/
 }
   
 
@@ -1764,9 +1871,20 @@
 	cds.lpData = &upParam;
 
 	DWORD dwReturn = 0;
-	if(SendMessageTimeout(hWnd, WM_COPYDATA, NULL, (LPARAM)&cds, SMTO_NORMAL, 20000, (PDWORD_PTR)(dwReturn)) == FALSE)
-	{
-	}
+	if (SendMessageTimeout(hWnd, WM_COPYDATA, NULL, (LPARAM)&cds, SMTO_NORMAL, 5000, (PDWORD_PTR)(dwReturn)) == FALSE)
+		/*< SWK 20220413 - #4053 MOD Start >*/
+// 	{
+// 		AKLOG(" Fucntion FTP : Index File Upload Signla Sucess[%d]", FTPCMD_INDEX);/* <KMH 20220407 : #4053 ADD > */
+// 	}
+// 	else
+// 	{
+// 		AKLOG(" Fucntion FTP : Index File Upload Signla Fail[%d]", FTPCMD_INDEX);/* <KMH 20220407 : #4053 ADD > */
+// 	}
+		AKLOG(" Function FTP : Index File Upload Signal Fail[%d]", FTPCMD_INDEX);
+	else
+		AKLOG(" Function FTP : Index File Upload Signal Success[%d]", FTPCMD_INDEX);
+		/*< SWK 20220413 - #4053 MOD End >*/
+
 	return TRUE;
 }
 

--
Gitblit v1.9.3