From 36353af02a1c42ba4d68de5a81c63837396a9500 Mon Sep 17 00:00:00 2001
From: LYW <leeyeanwoo@diteam.co.kr>
Date: 수, 16 6월 2021 17:27:21 +0900
Subject: [PATCH] Merge branch 'feature/#3428_CF_AOI_Review_Recipe_Editor_리뷰_우선순위_조건_타입_변경기능_적용_및_검증' into feature/#3440_CF_AOI_Review_QD,_CS_Align_Cam_Reverse_X_제어_기능_추가

---
 ReviewSystem/ReviewSystem/SequenceProcessor_CPJT.cpp |   48 +++++++++++++++++++++++++++++++++++-------------
 1 files changed, 35 insertions(+), 13 deletions(-)

diff --git a/ReviewSystem/ReviewSystem/SequenceProcessor_CPJT.cpp b/ReviewSystem/ReviewSystem/SequenceProcessor_CPJT.cpp
index aea1b64..9993875 100644
--- a/ReviewSystem/ReviewSystem/SequenceProcessor_CPJT.cpp
+++ b/ReviewSystem/ReviewSystem/SequenceProcessor_CPJT.cpp
@@ -48,6 +48,7 @@
 
 #define AOIRAWBIN_PATH		"\\\\126.100.100.1\\d\\DIT_ResultData\\RawBin"
 #define AOIRAWBIN_TEST_PATH		"d:\\DIT_ResultData\\RawBin"
+#define AOIRAWBIN_NETWORK_DRIVE_PATH	"Y:\\RawBin"
 
 enum CPJT_MeasureMode { CPJT_ModeAuto = 0, CPJT_ModeManual };
 // [2017:4:18]-[WEZASW] : WSI Module 장착 설비의 경우 PlanType 번호 변경.
@@ -963,7 +964,7 @@
 	//	m_pSP2P->ISP2P_DisplayMessage(_T("[SequenceProcessor::Loading] Revolver Set GoHome Success!"));
 	//}
 
-	//210330 kyh Align Image 초기화
+	//#3357 KYH Align Image 초기화 ADD START
 	CCameraControlAlign* pAlignCameraControl = m_pSP2P->ISP2P_GetAlignCameraControl();
 	if (pAlignCameraControl != NULL)
 	{
@@ -971,6 +972,7 @@
 
 		g_pLog->DisplayMessage(_T("[Align] Align Image Clear"));
 	}
+	//#3357 KYH Align Image 초기화 ADD END
 
  	// get transfer data
  	int nResultCode = 0;
@@ -1025,6 +1027,10 @@
 				
 
 			}
+
+			// #3381 LYW CF AOI Review 전설비 FDC TackTime 오보고 현상 개선 ADD START
+			pDitRawClient->GetGlassData()->m_tmReviewLoading = CTime::GetCurrentTime();
+			// #3381 LYW CF AOI Review 전설비 FDC TackTime 오보고 현상 개선 ADD END
 			
 
 			CString strGlassIDTemp = NULL;
@@ -1041,8 +1047,9 @@
 			m_pSP2P->ISP2P_DisplayMessage(_T("[SequenceProcessor::GlassLoading] Send Loading Success Signal!"));
 
 			strFileName.Format(_T("%s_%s"), strGlassIDTemp, strGlassStepIdTemp);
-			bFileFind = FindRawBinFile(strFileName);
-			//bFileFind = TRUE;
+			//업데이트시
+			//bFileFind = FindRawBinFile(strFileName);
+			bFileFind = TRUE;
 
 			pDitRawClient->SetReviewStart();
 			Sleep(1000);
@@ -2635,11 +2642,22 @@
 	{
 		CTime tmReviewLoading = CTime::GetCurrentTime();
 		CString strWild;
-		strWild.Format("%s\\%s_*.bin", strFilePath, strFileName);
+		//strWild.Format("%s\\%s_*.bin", strFilePath, strFileName);
 		CakFileUtil akFileFinder;
 		while (nReTryTime--)
 		{
-			akFileFinder.FindFile(strWild.GetBuffer(0), FALSE);
+			//#3359_LYW CF AOI Review REVIEW_LOADING_COMPLETE_TIMEOVER 알람 발생 원인 분석 START
+			if (nReTryTime%2 == 0)
+			{
+				strFilePath = AOIRAWBIN_PATH;
+			}
+			else strFilePath = AOIRAWBIN_NETWORK_DRIVE_PATH;
+
+			strWild.Format("%s\\%s_*.bin", strFilePath, strFileName);
+			 akFileFinder.FindFile(strWild.GetBuffer(0), FALSE);
+			//LYW LOG추가
+			g_pLog->DisplayMessage(_T("[GlassLoading][FindRawBinFile] Find Path = %s, RetryCount = %d, ResultCode = [%d]"), strFilePath, 30-nReTryTime, GetLastError());
+			//#3359_LYW CF AOI Review REVIEW_LOADING_COMPLETE_TIMEOVER 알람 발생 원인 분석 END
 			VECFINDDATA* pFindData = akFileFinder.getFindData();
 			int nFileNamePos = strlen(akFileFinder.getProcessPath());
 			std::map<LONGLONG, CString> mapSpanFileName;
@@ -2684,6 +2702,7 @@
 					break;
 				}
 			}
+
 			akFileFinder.clear();
 			Sleep(100);
 		}
@@ -3108,7 +3127,7 @@
 					strReadData = pTransferData->strRerferData;
 					break;
 				}
-				m_pSP2P->ISP2P_DisplayMessage(_T("[ReadTransferData] Name: %s, Addr: %s, Size: %d, Data: %s"), pInfo->strName, strReadAddress, nReadSize, strReadData);
+				//m_pSP2P->ISP2P_DisplayMessage(_T("[ReadTransferData] Name: %s, Addr: %s, Size: %d, Data: %s"), pInfo->strName, strReadAddress, nReadSize, strReadData); //0517
 		}
 	}
 
@@ -4481,7 +4500,7 @@
 
 	SetWsiType(0);
 	WSIAllReadySignal(1);
-	Sleep(500);
+	Sleep(1000);
 	if(!WSIAllStartSignal())
 	{
 		g_pLog->DisplayMessage(_T("[WSI] WSI Start Fail!!"));
@@ -4517,7 +4536,8 @@
 	strPath  = strPath + _T("\\WSI");
 	if(CreateDirectory(strPath,NULL)==FALSE)
 	{
-		g_pLog->DisplayMessage(_T("[MakeWSIUpLoadDirectory]Directory Create Fail %s "),strPath);
+		//LYW LOG추가
+		g_pLog->DisplayMessage(_T("[MakeWSIUpLoadDirectory]Directory Create Fail %s, ERROR CODE = %d "),strPath, GetLastError());
 	}
 	
 }
@@ -4673,9 +4693,11 @@
 		//보낼 포인트가 있는지 없는지 체크
 		if (vectorPosX.empty() == TRUE)
 		{
-			g_pLog->DisplayMessage(_T("[GantryAutoGo] No Exist Send Point "), vectorPosX.size());
+			//3360 LYW_ CF AOI QD Review WSI XY MotorMoving Error 알람 발생 원인 분석 및 조치 START
+			g_pLog->DisplayMessage(_T("[GantryAutoGo] No Exist Send Point,TwoGantrySyncMode OFF!"), vectorPosX.size());
 			g_pLog->DisplayMessage(_T("[GantryAutoGo] (%d)Gantry Path Send Fail"), pModuleStatus->GetGantryIndex()); //taek 210128
-
+			pMotorControl->GantrySetTwoGantrySyncModeSend(0);
+			//3360 LYW_ CF AOI QD Review WSI XY MotorMoving Error 알람 발생 원인 분석 및 조치 END
 		}
 		else
 		{
@@ -7711,7 +7733,8 @@
 	pSignalControl->WritePacketData(_T("15100"), sizeof(DVDataPack_CPJT), (short*)&DVData);*/
 }
 
-void CSequenceProcessor_CPJT::MakeDVData2() //210325 kyh FDC 
+//#3358 KYH FDC 데이터 전송 시점 개선 ADD START
+void CSequenceProcessor_CPJT::MakeDVData2()
 {
 
 	const CRsRcpReviewInfo* pRsRcpReviewInfo = m_pSP2P->ISP2P_Recipe_GetRsRcpReviewInfo();
@@ -7965,8 +7988,6 @@
 	pSignalControl->WritePacketData(_T("16128"), sizeof(nWSI1_PC_HDD_CHECK), (short*)&nWSI1_PC_HDD_CHECK);
 	pSignalControl->WritePacketData(_T("16132"), sizeof(nWSI2_PC_HDD_CHECK), (short*)&nWSI2_PC_HDD_CHECK);
 
-
-
 	pSignalControl->WritePacketData(_T("16136"), sizeof(nReviewVersion), (short*)&nReviewVersion);
 	pSignalControl->WritePacketData(_T("16140"), sizeof(nWSI00Version), (short*)&nWSI00Version);
 	pSignalControl->WritePacketData(_T("16144"), sizeof(nWSI01Version), (short*)&nWSI01Version);
@@ -7974,6 +7995,7 @@
 
 	return;
 }
+//#3358 KYH FDC 데이터 전송 시점 개선 ADD END
 
 DWORD CSequenceProcessor_CPJT::GetDiskUsage()
 {

--
Gitblit v1.9.3