From c08b701c90c8998b241c82638d5c488e03238214 Mon Sep 17 00:00:00 2001
From: LYW <leeyeanwoo@diteam.co.kr>
Date: 목, 23 9월 2021 17:39:47 +0900
Subject: [PATCH] Ongoing100 #3517 CF AOI Review 자가진단 기능 개선

---
 ReviewSystem/ReviewSystem/DlgSelfDiagnosis_Wsi.cpp |  103 ++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 101 insertions(+), 2 deletions(-)

diff --git a/ReviewSystem/ReviewSystem/DlgSelfDiagnosis_Wsi.cpp b/ReviewSystem/ReviewSystem/DlgSelfDiagnosis_Wsi.cpp
index c7e498b..ae43415 100644
--- a/ReviewSystem/ReviewSystem/DlgSelfDiagnosis_Wsi.cpp
+++ b/ReviewSystem/ReviewSystem/DlgSelfDiagnosis_Wsi.cpp
@@ -16,6 +16,7 @@
 	: CDialogEx(IDD_DLG_SELF_DIAGNOSIS_WSI, pParent)
 {
 	m_pDiagnosisManager = pDiagnosisManager;
+	m_editWSIFirstStandard = 180;
 }
 
 CDlgSelfDiagnosis_Wsi::~CDlgSelfDiagnosis_Wsi()
@@ -30,6 +31,25 @@
 	DDX_Control(pDX, IDC_EDIT_WSI_RTB_00, m_ctrlWsiRtb00);
 	DDX_Control(pDX, IDC_EDIT_WSI_RTB_01, m_ctrlWsiRtb01);
 	DDX_Control(pDX, IDC_BUTTON_SIMULATION, m_btSimulation);
+	DDX_Text(pDX, IDC_EDIT_WSI_FIRST_STANDARD, m_editWSIFirstStandard);
+	DDX_Control(pDX, IDC_LIST_WSI_DIAGNOSIS_RESULT, m_ListWSIResult);
+}
+
+BOOL CDlgSelfDiagnosis_Wsi::OnInitDialog()
+{
+	CDialogEx::OnInitDialog();
+
+	m_ListWSIResult.SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);
+	m_ListWSIResult.InsertColumn(0, _T("Index"), LVCFMT_CENTER, 70);
+	m_ListWSIResult.InsertColumn(1, _T("Left Module"), LVCFMT_CENTER, 100);
+	m_ListWSIResult.InsertColumn(2, _T("Right Module"), LVCFMT_CENTER, 100);
+
+	m_ListWSIResult.SetRedraw(TRUE);
+
+	// TODO:  �뿬湲곗뿉 異붽� 珥덇린�솕 �옉�뾽�쓣 異붽��빀�땲�떎.
+
+	return TRUE;  // return TRUE unless you set the focus to a control
+				  // �삁�쇅: OCX �냽�꽦 �럹�씠吏��뒗 FALSE瑜� 諛섑솚�빐�빞 �빀�땲�떎.
 }
 
 
@@ -45,9 +65,21 @@
 
 void CDlgSelfDiagnosis_Wsi::OnBnClickedButtonSimulation()
 {
-	// TODO: �뿬湲곗뿉 而⑦듃濡� �븣由� 泥섎━湲� 肄붾뱶瑜� 異붽��빀�땲�떎.
-	// TODO: �뿬湲곗뿉 而⑦듃濡� �븣由� 泥섎━湲� 肄붾뱶瑜� 異붽��빀�땲�떎.
+
 	if (m_pDiagnosisManager == NULL) return;
+
+	/*< LYW 20210719 : #3517 ADD Start >*/
+	if (m_pDiagnosisManager->CheckManualMode() == FALSE)
+	{
+		CString strMessage;
+		strMessage.Format(_T("Change Manual Mode!!"));
+		if (IDOK == AfxMessageBox(strMessage, MB_OK | MB_ICONERROR))
+		{
+			g_pLog->DisplayMessage(_T("Manual Diagnosis Fail! Not Manual Mode"));
+			return;
+		}
+	}
+	/*< LYW 20210719 : #3517 ADD End >*/
 
 	//GetDialogControls();
 
@@ -71,19 +103,52 @@
 {
 	const CDiagnosisInfo* pSettingInfo = m_pDiagnosisManager->GetDiagnosisInfo();
 	if (pSettingInfo == NULL) return;
+
+	m_editWSIFirstStandard = pSettingInfo->GetWSIStandard();
 	
 	double nACC00 = m_pDiagnosisManager->GetDiagnosisResult_Wsi(0)->getWSI_ACC();
 	double nACC01 = m_pDiagnosisManager->GetDiagnosisResult_Wsi(1)->getWSI_ACC();
 	double nRTB00 =  m_pDiagnosisManager->GetDiagnosisResult_Wsi(0)->getWSI_RTB();
 	double nRTB01 = m_pDiagnosisManager->GetDiagnosisResult_Wsi(1)->getWSI_RTB();
 
+	double dDiagnosisHeight[20];
+
+	for (int i = 0; i < 10; i++)
+	{
+		dDiagnosisHeight[i] = m_pDiagnosisManager->GetDiagnosisResult_Wsi(0)->GetDiagnosisHeight(i);
+	}
+	for (int i = 0; i < 10; i++)
+	{
+		dDiagnosisHeight[i+10] = m_pDiagnosisManager->GetDiagnosisResult_Wsi(1)->GetDiagnosisHeight(i);
+	}
+
+	CString strDiagnosisHeight;
 	CString strACC00, strACC01;
 	CString strRTB00, strRTB01;
 	strACC00.Format(_T("%d"), nACC00);
+	strACC01.Format(_T("%d"), nACC01);
+	strRTB00.Format(_T("%d"), nRTB00);
+	strRTB01.Format(_T("%d"), nRTB01);
 	m_ctrlWsiAcc00.SetWindowTextA(strACC00);
 	m_ctrlWsiAcc01.SetWindowTextA(strACC01);
 	m_ctrlWsiRtb00.SetWindowTextA(strRTB00);
 	m_ctrlWsiRtb01.SetWindowTextA(strRTB01);
+
+	for (int i = 0; i < 10; i++)
+	{
+		int nRow = i + 1;
+
+		strDiagnosisHeight.Format(_T("%d"), nRow);
+		m_ListWSIResult.InsertItem(nRow, strDiagnosisHeight);
+
+		strDiagnosisHeight.Format(_T("%d"), dDiagnosisHeight[i]);
+		m_ListWSIResult.SetItemText(nRow, 1, strDiagnosisHeight);
+
+		strDiagnosisHeight.Format(_T("%d"), dDiagnosisHeight[i+10]);
+		m_ListWSIResult.SetItemText(nRow, 2, strDiagnosisHeight);
+
+		m_ListWSIResult.EnsureVisible(nRow, FALSE);
+	}
 	
 }
 
@@ -108,12 +173,15 @@
 	const CDiagnosisInfo* pSettingInfo = m_pDiagnosisManager->GetDiagnosisInfo();
 	if (pSettingInfo == NULL) return;
 
+	m_editWSIFirstStandard = pSettingInfo->GetWSIStandard();
+
 	double nACC00 = dAcc00;
 	double nACC01 = dAcc01;
 
 	double nRTB00 = dRbt00;
 	double nRTB01 = dRbt01;
 
+	CString strDiagnosisHeight;
 	CString strACC00, strACC01;
 	CString strRTB00, strRTB01;
 	strACC00.Format(_T("%f"),nACC00);
@@ -130,6 +198,36 @@
 		m_ctrlWsiRtb01.SetWindowTextA(strRTB01);
 	}
 
+	double dDiagnosisHeightleft[10];
+	double dDiagnosisHeightRight[10];
+
+	for (int i = 0; i < 10; i++)
+	{
+		dDiagnosisHeightleft[i] = m_pDiagnosisManager->GetDiagnosisResult_Wsi(0)->GetDiagnosisHeight(i);
+	}
+
+	for (int i = 0; i < 10; i++)
+	{
+		dDiagnosisHeightRight[i] = m_pDiagnosisManager->GetDiagnosisResult_Wsi(1)->GetDiagnosisHeight(i);
+	}
+
+	m_ListWSIResult.DeleteAllItems();
+
+	for (int i = 0; i < 10; i++)
+	{
+			int nRow = i;
+
+			strDiagnosisHeight.Format(_T("%d"), nRow + 1);
+			m_ListWSIResult.InsertItem(nRow, strDiagnosisHeight);
+
+			strDiagnosisHeight.Format(_T("%.3f"), dDiagnosisHeightleft[i]);
+			m_ListWSIResult.SetItemText(nRow, 1, strDiagnosisHeight);
+
+			strDiagnosisHeight.Format(_T("%.3f"), dDiagnosisHeightRight[i]);
+			m_ListWSIResult.SetItemText(nRow, 2, strDiagnosisHeight);
+
+			m_ListWSIResult.EnsureVisible(nRow, FALSE);
+	}
 
 }
 
@@ -158,3 +256,4 @@
 
 	// TODO:  �뿬湲곗뿉 而⑦듃濡� �븣由� 泥섎━湲� 肄붾뱶瑜� 異붽��빀�땲�떎.
 }
+

--
Gitblit v1.9.3