From 20734d0fdaefe16a67511bdf8fe6e295c02f27dc Mon Sep 17 00:00:00 2001 From: kojingeun <diteam.co.kr> Date: 월, 19 6월 2023 16:25:31 +0900 Subject: [PATCH] Ongoing60 #4517 CF AOI Review 결과 파일 찾기 실패 개선 1. Find Bin File 무조건 실패하는 버그 개선 --- DitGlassRawMessenger/DitGlassRawMessenger/DitGlassRawMessengerDlg.cpp | 88 +++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 83 insertions(+), 5 deletions(-) diff --git a/DitGlassRawMessenger/DitGlassRawMessenger/DitGlassRawMessengerDlg.cpp b/DitGlassRawMessenger/DitGlassRawMessenger/DitGlassRawMessengerDlg.cpp index bf1c099..1fdb749 100644 --- a/DitGlassRawMessenger/DitGlassRawMessenger/DitGlassRawMessengerDlg.cpp +++ b/DitGlassRawMessenger/DitGlassRawMessenger/DitGlassRawMessengerDlg.cpp @@ -131,7 +131,6 @@ m_vecStrGridDefectHeader.push_back("MergeState"); } - void CDitGlassRawMessengerDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); @@ -166,6 +165,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) @@ -196,6 +198,12 @@ BOOL CDitGlassRawMessengerDlg::OnInitDialog() { + + /* <LJC 20220407 : #4053 MOD Start> */ + CString strTemp; + strTemp.Format(_T("Version : %s %s"), _T(__DATE__), _T(__TIME__)); + AKLOG("DITRawMessenger 프로그램 실행( : %s )", strTemp); + /* <LJC 20220407 : #4053 MOD End> */ CDialog::OnInitDialog(); DragAcceptFiles(TRUE); @@ -251,9 +259,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, ""); @@ -263,6 +275,8 @@ ((CButton*)GetDlgItem(IDC_CHECK_STACKFILEREAD))->SetCheck(m_ConfigOption.m_bUseStack); SetDlgItemText(IDC_EDIT_STACK_LOCALSAVEPATH, m_ConfigOption.m_strStackLocalPath); + ((CButton*)GetDlgItem(IDC_CHECK_RAWMERGEFILEREAD))->SetCheck(m_ConfigOption.m_bUseRawMerge); + SetDlgItemText(IDC_EDIT_RAWMERGE_LOCALSAVEPATH, m_ConfigOption.m_strRawMergeLocalPath); SetDlgItemText(IDC_EDIT_STACK_EQUIPID, m_ConfigOption.m_strStackEquipID); SetDlgItemText(IDC_EDIT_STACK_PARAM1, m_ConfigOption.m_strStackParam1); SetDlgItemText(IDC_EDIT_STACK_PARAM2, m_ConfigOption.m_strStackParam2); @@ -276,7 +290,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; @@ -434,7 +448,7 @@ { HMENU hMenu = CreatePopupMenu(); AppendMenu(hMenu, MF_STRING, 0, "연구소2파트작품"); - AppendMenu(hMenu, MF_STRING, WM_DESTROY, "Exit"); + AppendMenu(hMenu, MF_STRING, WM_DESTROY, "Exit"); TrackPopupMenu(hMenu, TPM_LEFTALIGN | TPM_RIGHTBUTTON, pos.x, pos.y, 0, GetSafeHwnd(), NULL); } @@ -593,6 +607,9 @@ Sleep(10); } pThis->m_nThreadMainFlag = 0; + /* <KMH 20220407 : #4053 ADD Start> */ + AKLOG("Main Thread End"); + /* <KMH 20220407 : #4053 ADD End> */ } void CDitGlassRawMessengerDlg::MainProcess() @@ -707,6 +724,12 @@ nResult = m_pGlassRawMaker->ReadBinFile(pRawDataBuffer); break; } + case grcReviewWriteBIn: + { + nResult = m_pGlassRawMaker->ReviewWriteBin(pRawDataBuffer); + break; + } + } PostMessage(UM_GLASSRAW_CLIENTMESSAGE, nCmd); @@ -756,7 +779,6 @@ WriteConfigFile(); } - BOOL CDitGlassRawMessengerDlg::DestroyWindow() { @@ -1339,6 +1361,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); @@ -1518,6 +1544,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); @@ -1599,3 +1629,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