// Satisfaction.cpp : implementation file // #include "stdafx.h" #include "ylgl.h" #include "Satisfaction.h" #include "MyMdi.H" #include "SendMsgDlg.h" #include "SelBrunDevice.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif IMPLEMENT_DYNCREATE(Satisfaction, MyFormView) Satisfaction::Satisfaction() : MyFormView(Satisfaction::IDD) { m_filter = _T(""); m_radio1 = -1; m_radio2 = -1; m_radio3 = -1; m_radio4 = -1; m_radio5 = -1; m_radio6 = -1; m_radio7 = -1; m_radio8 = -1; m_bz5 = _T(""); } Satisfaction::~Satisfaction() { } void Satisfaction::DoDataExchange(CDataExchange* pDX) { MyFormView::DoDataExchange(pDX); DDX_Control(pDX, IDC_COMBO1, m_combo1); DDX_Control(pDX, IDC_LIST2, m_List1); DDX_Control(pDX, IDC_STATIC1, m_static1); DDX_CBString(pDX, IDC_COMBO1, m_filter); DDX_Radio(pDX, IDC_RADIO1, m_radio1); DDX_Radio(pDX, IDC_RADIO14, m_radio2); DDX_Radio(pDX, IDC_RADIO16, m_radio3); DDX_Radio(pDX, IDC_RADIO18, m_radio4); DDX_Radio(pDX, IDC_RADIO20, m_radio5); DDX_Radio(pDX, IDC_RADIO22, m_radio6); DDX_Radio(pDX, IDC_RADIO25, m_radio7); DDX_Radio(pDX, IDC_RADIO9, m_radio8); DDX_Text(pDX, IDC_EDITbz5, m_bz5); } BEGIN_MESSAGE_MAP(Satisfaction, MyFormView) ON_BN_CLICKED(IDC_BUTclose, OnBUTclose) ON_BN_CLICKED(IDC_BUTTON1, OnButton1) ON_BN_CLICKED(IDC_BUTTON3, OnButton3) ON_NOTIFY(NM_CLICK, IDC_LIST2, OnClickList2) ON_BN_CLICKED(IDC_BUTTON4, OnButton4) END_MESSAGE_MAP() #ifdef _DEBUG void Satisfaction::AssertValid() const { MyFormView::AssertValid(); } void Satisfaction::Dump(CDumpContext& dc) const { MyFormView::Dump(dc); } #endif void Satisfaction::OnInitialUpdate() { MyFormView::OnInitialUpdate(); CMyMdi Mdi; Mdi.SetSubView((CWnd*)GetParent(), (CWnd*)this); CRect rc2; GetWindowRect(rc2); ::MoveWindow(m_hWnd, g_rc.left, g_rc.top, g_rc.Width(), g_rc.Height(), TRUE); EnumChildWindows(m_hWnd, (WNDENUMPROC)EnumChildProc, 0); m_static1.SetFont(&g_titlefont); #if JEFF_TEST_ON #ifdef CHILD_VERSION // 16 column m_List1.SetHeadings("������,100;�ҳ�����,100;��������,100;����,100;�Ӵ�,100;�Ӵ��ط���,100;�Ӵ��ط�ʱ��,100;����,100;�����ط���,100;�����ط�ʱ��,100;��Ӱ,100;��Ӱ�ط���,100;��Ӱ�ط�ʱ��,100;����,100;����ط���,100;����ط�ʱ��,100;ѡƬ,100;ѡƬ�ط���,100;ѡƬ�ط�ʱ��,100;���,100;��ƻط���,100;��ƻط�ʱ��,100;����,100;���Ȼط���,100;���Ȼط�ʱ��,100;��Ʒ,100;��Ʒ�ط���,100;��Ʒ�ط�ʱ��,100;��ע,100;��ϵ����,100;��ϵ�۸�,100;�ֻ�,100;�̶��绰,100"); #else // 16 column m_List1.SetHeadings("������,100;�б�����,100;Ů������,100;����,100;�Ӵ�,100;�Ӵ��ط���,100;�Ӵ��ط�ʱ��,100;��ױ,100;��ױ�ط���,100;��ױ�ط�ʱ��,100;��Ӱ,100;��Ӱ�ط���,100;��Ӱ�ط�ʱ��,100;����,100;����ط���,100;����ط�ʱ��,100;ѡƬ,100;ѡƬ�ط���,100;ѡƬ�ط�ʱ��,100;���,100;��ƻط���,100;��ƻط�ʱ��,100;����,100;���Ȼط���,100;���Ȼط�ʱ��,100;��Ʒ,100;��Ʒ�ط���,100;��Ʒ�ط�ʱ��,100;��ע,100;��ϵ����,100;��ϵ�۸�,100;�б��绰,100;Ů���绰,100"); #endif #else #ifdef CHILD_VERSION // 16 column m_List1.SetHeadings("������,100;�ҳ�����,100;��������,100;����,100;�Ӵ�,100;��ױ,100;��Ӱ,100;����,100;ѡƬ,100;����,100;��Ʒ,100;��ע,100;��ϵ����,100;��ϵ�۸�,100;�ֻ�,100;�̶��绰,100"); #else // 16 column m_List1.SetHeadings("������,100;�б�����,100;Ů������,100;����,100;�Ӵ�,100;��ױ,100;��Ӱ,100;����,100;ѡƬ,100;����,100;��Ʒ,100;��ע,100;��ϵ����,100;��ϵ�۸�,100;�б��绰,100;Ů���绰,100"); #endif #endif m_List1.LoadColumnInfo(250); GetData(); m_combo1.AddString(g_user.name); m_combo1.GetWindowRect(rc2); ScreenToClient(rc2); rc2.bottom += 200; m_combo1.MoveWindow(rc2); GetDlgItem(IDC_BUTclose)->GetWindowRect(rc2); SetComboHei(&m_combo1, rc2.Height()); } void Satisfaction::FillGrid() { BOOL bStatus = 0; { m_List1.DeleteAllItems2(); int ii = 0; m_List1.m_arLabels.SetSize(m_List1array.GetSize(), 1); int count = 0; if (m_filter.IsEmpty()) { if (bStatus) { } else { for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++) { m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii)); } } } else { int type = GetType(m_filter); if (type == 1)//�绰 { for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++) { // ��ѯ����==�ֻ�1||�ֻ�2 #if JEFF_TEST_ON if (m_List1array.ElementAt(ii).ElementAt(31).Find(m_filter) != -1 || m_List1array.ElementAt(ii).ElementAt(32).Find(m_filter) != -1) #else if (m_List1array.ElementAt(ii).ElementAt(14).Find(m_filter) != -1 || m_List1array.ElementAt(ii).ElementAt(15).Find(m_filter) != -1) #endif { m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii)); } } } else if (type == 2)//ƴ�� { m_filter.MakeUpper(); for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++) { // ��ѯ����==ƴ��1||ƴ��2 #if JEFF_TEST_ON if (m_List1array.ElementAt(ii).ElementAt(33).Find(m_filter) != -1 || m_List1array.ElementAt(ii).ElementAt(34).Find(m_filter) != -1) #else if (m_List1array.ElementAt(ii).ElementAt(16).Find(m_filter) != -1 || m_List1array.ElementAt(ii).ElementAt(17).Find(m_filter) != -1) #endif { m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii)); } } } else { for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++) { #if JEFF_TEST_ON if (m_List1array.ElementAt(ii).ElementAt(0).Find(m_filter) != -1 || m_List1array.ElementAt(ii).ElementAt(1).Find(m_filter) != -1 || m_List1array.ElementAt(ii).ElementAt(2).Find(m_filter) != -1 || m_List1array.ElementAt(ii).ElementAt(3).Find(m_filter) != -1 || m_List1array.ElementAt(ii).ElementAt(31).Find(m_filter) != -1 || m_List1array.ElementAt(ii).ElementAt(32).Find(m_filter) != -1 || m_List1array.ElementAt(ii).ElementAt(33).Find(m_filter) != -1 || m_List1array.ElementAt(ii).ElementAt(34).Find(m_filter) != -1) #else if (m_List1array.ElementAt(ii).ElementAt(0).Find(m_filter) != -1 || \ m_List1array.ElementAt(ii).ElementAt(1).Find(m_filter) != -1 || \ m_List1array.ElementAt(ii).ElementAt(2).Find(m_filter) != -1 || \ m_List1array.ElementAt(ii).ElementAt(3).Find(m_filter) != -1 || \ m_List1array.ElementAt(ii).ElementAt(14).Find(m_filter) != -1 || \ m_List1array.ElementAt(ii).ElementAt(15).Find(m_filter) != -1 || \ m_List1array.ElementAt(ii).ElementAt(16).Find(m_filter) != -1 || \ m_List1array.ElementAt(ii).ElementAt(17).Find(m_filter) != -1) #endif { m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii)); } } } } m_List1.m_arLabels.SetSize(count, 1); ii = count; m_List1.m_LabelCount = ii; m_List1.SetItemCountEx(ii); CString str; str.Format("����:%d", ii); SetDlgItemText(IDC_STATIC2, str); } if (!g_id.IsEmpty()) { for (int i = 0; i < m_List1.GetItemCount(); i++) { if (g_id == m_List1.GetItemText(i, 0)) { m_List1.SetItemState(i, LVIS_SELECTED | LVIS_FOCUSED, LVIS_SELECTED | LVIS_FOCUSED); m_List1.EnsureVisible(i, FALSE); CString str; str.Format("��ǰ����:%s %s", g_id, m_List1.GetItemText(i, 1) + m_List1.GetItemText(i, 2)); GetDlgItem(IDC_STATIC2)->SetWindowText(str); return; } } } GetDlgItem(IDC_STATIC2)->SetWindowText(""); } void Satisfaction::OnBUTclose() // �رհ�ť; { GetParent()->SendMessage(WM_CLOSE); } BOOL Satisfaction::PreTranslateMessage(MSG* pMsg) { try { if (pMsg->message == WM_KEYDOWN) { switch (pMsg->wParam) { case VK_RETURN: OnButton1(); return 1; case 0x43: // copy if ((GetKeyState(VK_CONTROL) & 0x80)) { GetFocus()->SendMessage(WM_COPY); return TRUE; } break; case 0x56: //Ctrl + V: if ((GetKeyState(VK_CONTROL) & 0x80)) { GetFocus()->SendMessage(WM_PASTE); return TRUE; } break; case 0x58: // cut if ((GetKeyState(VK_CONTROL) & 0x80)) { GetFocus()->SendMessage(WM_CUT); return TRUE; } break; case 0x5A: //undo case 0x59: //redo if ((GetKeyState(VK_CONTROL) & 0x80)) { GetFocus()->SendMessage(WM_UNDO); return TRUE; } break; } } return MyFormView::PreTranslateMessage(pMsg); } catch (...) { } } void Satisfaction::OnButton1() // ��ѯ��ť; { UpdateData(); m_filter.TrimLeft(); m_filter.TrimRight(); FillGrid(); } void Satisfaction::OnButton3() // ���水ť; { UpdateData(); CString id; { POSITION pos; pos = m_List1.GetFirstSelectedItemPosition(); if (pos != NULL) { int iItem = m_List1.GetNextSelectedItem(pos); id = m_List1.GetItemText(iItem, 0); } else { AfxMessageBox("����ѡ�пͻ�!", MB_ICONINFORMATION); return; } } #if JEFF_TEST_ON CSQLStatementImpl::GetInstancePtr()->ReSetKind(_T("dindan"), _T("where id='") + id + _T("'"), KIND_UPDATE, 10); if (m_radio1 != m_oradio1) { CSQLStatementImpl::GetInstancePtr()->AddElement(_T("satisfaction1"), m_radio1); CSQLStatementImpl::GetInstancePtr()->AddElement(_T("VisitPeople1"), g_user.name); CSQLStatementImpl::GetInstancePtr()->AddElement(_T("VisitTime1"), CTime::GetCurrentTime().Format("%Y-%m-%d %H:%M:%S")); } if (m_radio2 != m_oradio2) { CSQLStatementImpl::GetInstancePtr()->AddElement(_T("satisfaction2"), m_radio2); CSQLStatementImpl::GetInstancePtr()->AddElement(_T("VisitPeople2"), g_user.name); CSQLStatementImpl::GetInstancePtr()->AddElement(_T("VisitTime2"), CTime::GetCurrentTime().Format("%Y-%m-%d %H:%M:%S")); } if (m_radio3 != m_oradio3) { CSQLStatementImpl::GetInstancePtr()->AddElement(_T("satisfaction3"), m_radio3); CSQLStatementImpl::GetInstancePtr()->AddElement(_T("VisitPeople3"), g_user.name); CSQLStatementImpl::GetInstancePtr()->AddElement(_T("VisitTime3"), CTime::GetCurrentTime().Format("%Y-%m-%d %H:%M:%S")); } if (m_radio4 != m_oradio4) { CSQLStatementImpl::GetInstancePtr()->AddElement(_T("satisfaction4"), m_radio4); CSQLStatementImpl::GetInstancePtr()->AddElement(_T("VisitPeople4"), g_user.name); CSQLStatementImpl::GetInstancePtr()->AddElement(_T("VisitTime4"), CTime::GetCurrentTime().Format("%Y-%m-%d %H:%M:%S")); } if (m_radio5 != m_oradio5) { CSQLStatementImpl::GetInstancePtr()->AddElement(_T("satisfaction5"), m_radio5); CSQLStatementImpl::GetInstancePtr()->AddElement(_T("VisitPeople5"), g_user.name); CSQLStatementImpl::GetInstancePtr()->AddElement(_T("VisitTime5"), CTime::GetCurrentTime().Format("%Y-%m-%d %H:%M:%S")); } if (m_radio6 != m_oradio6) { CSQLStatementImpl::GetInstancePtr()->AddElement(_T("satisfaction6"), m_radio6); CSQLStatementImpl::GetInstancePtr()->AddElement(_T("VisitPeople6"), g_user.name); CSQLStatementImpl::GetInstancePtr()->AddElement(_T("VisitTime6"), CTime::GetCurrentTime().Format("%Y-%m-%d %H:%M:%S")); } if (m_radio7 != m_oradio7) { CSQLStatementImpl::GetInstancePtr()->AddElement(_T("satisfaction7"), m_radio7); CSQLStatementImpl::GetInstancePtr()->AddElement(_T("VisitPeople7"), g_user.name); CSQLStatementImpl::GetInstancePtr()->AddElement(_T("VisitTime7"), CTime::GetCurrentTime().Format("%Y-%m-%d %H:%M:%S")); } if (m_radio8 != m_oradio8) { CSQLStatementImpl::GetInstancePtr()->AddElement(_T("satisfaction8"), m_radio8); CSQLStatementImpl::GetInstancePtr()->AddElement(_T("VisitPeople8"), g_user.name); CSQLStatementImpl::GetInstancePtr()->AddElement(_T("VisitTime8"), CTime::GetCurrentTime().Format("%Y-%m-%d %H:%M:%S")); } if ( m_bz5 != m_obz5 ) { CSQLStatementImpl::GetInstancePtr()->AddElement(_T("bz5"), m_bz5); } CString sql = CSQLStatementImpl::GetInstancePtr()->ReturnSQL(); if ( sql.IsEmpty()) return; // �����ֵ; m_oradio1 = m_radio1; m_oradio2 = m_radio2; m_oradio3 = m_radio3; m_oradio4 = m_radio4; m_oradio5 = m_radio5; m_oradio6 = m_radio6; m_oradio7 = m_radio7; m_oradio8 = m_radio8; m_obz5 = m_bz5; #else CString sql; sql.Format("update [dindan] set [satisfaction1]=%d,[satisfaction2]=%d,[satisfaction3]=%d,[satisfaction4]=%d,[satisfaction5]=%d,[satisfaction6]=%d,[satisfaction7]=%d,[bz5]='%s' where [id]='%s'", m_radio1, m_radio2, m_radio3, m_radio4, m_radio5, m_radio6, m_radio7, m_bz5, id); #endif g_sendhead.bsql = 1; g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return; AfxMessageBox("����ɹ�!", MB_ICONINFORMATION); GetData(); } void Satisfaction::GetData() { if (g_bShowOK == 0) { #ifdef LKAY_VERSION CString filter = "status3='δȡ' and (dindantype<>'����ͻ�' or dindantype is null)"; #else CString filter = "status3='δȡ'"; #endif g_sendhead.bsql = 0; g_sendhead.code[0] = 211; // dindna��; g_sendhead.tabcount = 1; g_pMainWnd->ProcessChatMessageRequest2(filter); if (g_bSendOK == 0)return; } else { g_sendhead.bsql = 0; g_sendhead.code[0] = 211; // dindna��; g_sendhead.tabcount = 1; #ifdef LKAY_VERSION CString filter = "dindantype<>'����ͻ�' or dindantype is null"; g_pMainWnd->ProcessChatMessageRequest2(filter); #else g_pMainWnd->ProcessChatMessageRequest2(1); #endif if (g_bSendOK == 0)return; } DataToArray(&m_List1array); m_List1arrayBak.SetSize(m_List1array.GetSize()); for (int i = 0; i < m_List1array.GetSize(); i++) { #if JEFF_TEST_ON m_List1arrayBak.ElementAt(i).Copy(m_List1array.ElementAt(i)); for (int aa = 4; aa < 28; aa = aa + 3) { if (m_List1array.ElementAt(i).ElementAt(aa) == "0")m_List1array.ElementAt(i).SetAt(aa, "����"); else if (m_List1array.ElementAt(i).ElementAt(aa) == "1")m_List1array.ElementAt(i).SetAt(aa, "һ��"); else if (m_List1array.ElementAt(i).ElementAt(aa) == "2")m_List1array.ElementAt(i).SetAt(aa, "������"); else if (m_List1array.ElementAt(i).ElementAt(aa) == "-1")m_List1array.ElementAt(i).SetAt(aa, ""); } #else m_List1arrayBak.ElementAt(i).Copy(m_List1array.ElementAt(i)); if (m_List1array.ElementAt(i).ElementAt(11).GetLength()>256) m_List1array.ElementAt(i).SetAt(11, m_List1array.ElementAt(i).ElementAt(11).Left(256) + ".."); for (int aa = 4; aa < 11; aa++) { if (m_List1array.ElementAt(i).ElementAt(aa) == "0")m_List1array.ElementAt(i).SetAt(aa, "����"); else if (m_List1array.ElementAt(i).ElementAt(aa) == "1")m_List1array.ElementAt(i).SetAt(aa, "һ��"); else if (m_List1array.ElementAt(i).ElementAt(aa) == "2")m_List1array.ElementAt(i).SetAt(aa, "������"); else if (m_List1array.ElementAt(i).ElementAt(aa) == "-1")m_List1array.ElementAt(i).SetAt(aa, ""); } #endif } FillGrid(); } void Satisfaction::OnClickList2(NMHDR* pNMHDR, LRESULT* pResult) { POSITION pos; pos = m_List1.GetFirstSelectedItemPosition(); if (pos == NULL) { OnButton4(); GetDlgItem(IDC_STATIC2)->SetWindowText(""); return; } int iItem = m_List1.GetNextSelectedItem(pos); CString id = m_List1.GetItemText(iItem, 0); g_id = id; CString str; str.Format("��ǰ����:%s %s", id, m_List1.GetItemText(iItem, 1) + m_List1.GetItemText(iItem, 2)); GetDlgItem(IDC_STATIC2)->SetWindowText(str); for (int i = 0; i < m_List1.m_arLabels.GetSize(); i++) { if (id == m_List1arrayBak.ElementAt(i).ElementAt(0)) { #if JEFF_TEST_ON m_radio1 = atoi(m_List1arrayBak.ElementAt(i).ElementAt(4)); if (m_List1arrayBak.ElementAt(i).ElementAt(4) == "") m_radio1 = -1; m_radio2 = atoi(m_List1arrayBak.ElementAt(i).ElementAt(7)); if (m_List1arrayBak.ElementAt(i).ElementAt(7) == "") m_radio2 = -1; m_radio3 = atoi(m_List1arrayBak.ElementAt(i).ElementAt(10)); if (m_List1arrayBak.ElementAt(i).ElementAt(10) == "") m_radio3 = -1; m_radio4 = atoi(m_List1arrayBak.ElementAt(i).ElementAt(13)); if (m_List1arrayBak.ElementAt(i).ElementAt(13) == "") m_radio4 = -1; m_radio5 = atoi(m_List1arrayBak.ElementAt(i).ElementAt(16)); if (m_List1arrayBak.ElementAt(i).ElementAt(16) == "") m_radio5 = -1; m_radio8 = atoi(m_List1arrayBak.ElementAt(i).ElementAt(19)); if (m_List1arrayBak.ElementAt(i).ElementAt(19) == "") m_radio8 = -1; m_radio6 = atoi(m_List1arrayBak.ElementAt(i).ElementAt(22)); if (m_List1arrayBak.ElementAt(i).ElementAt(22) == "") m_radio6 = -1; m_radio7 = atoi(m_List1arrayBak.ElementAt(i).ElementAt(25)); if (m_List1arrayBak.ElementAt(i).ElementAt(25) == "") m_radio7 = -1; m_obz5 = m_bz5 = m_List1arrayBak.ElementAt(i).ElementAt(28); // �����ֵ; m_oradio1 = m_radio1; m_oradio2 = m_radio2; m_oradio3 = m_radio3; m_oradio4 = m_radio4; m_oradio5 = m_radio5; m_oradio6 = m_radio6; m_oradio7 = m_radio7; m_oradio8 = m_radio8; #else m_radio1 = atoi(m_List1arrayBak.ElementAt(i).ElementAt(4)); if (m_List1arrayBak.ElementAt(i).ElementAt(4) == "")m_radio1 = -1; m_radio2 = atoi(m_List1arrayBak.ElementAt(i).ElementAt(5)); if (m_List1arrayBak.ElementAt(i).ElementAt(5) == "")m_radio2 = -1; m_radio3 = atoi(m_List1arrayBak.ElementAt(i).ElementAt(6)); if (m_List1arrayBak.ElementAt(i).ElementAt(6) == "")m_radio3 = -1; m_radio4 = atoi(m_List1arrayBak.ElementAt(i).ElementAt(7)); if (m_List1arrayBak.ElementAt(i).ElementAt(7) == "")m_radio4 = -1; m_radio5 = atoi(m_List1arrayBak.ElementAt(i).ElementAt(8)); if (m_List1arrayBak.ElementAt(i).ElementAt(8) == "")m_radio5 = -1; m_radio6 = atoi(m_List1arrayBak.ElementAt(i).ElementAt(9)); if (m_List1arrayBak.ElementAt(i).ElementAt(9) == "")m_radio6 = -1; m_radio7 = atoi(m_List1arrayBak.ElementAt(i).ElementAt(10)); if (m_List1arrayBak.ElementAt(i).ElementAt(10) == "")m_radio7 = -1; m_bz5 = m_List1arrayBak.ElementAt(i).ElementAt(11); #endif UpdateData(0); return; } } *pResult = 0; } void Satisfaction::OnButton4() // ���ť; { m_radio1 = -1; m_radio2 = -1; m_radio3 = -1; m_radio4 = -1; m_radio5 = -1; m_radio6 = -1; m_radio7 = -1; #if JEFF_TEST_ON m_radio8 = -1; m_oradio1 = -1; m_oradio2 = -1; m_oradio3 = -1; m_oradio4 = -1; m_oradio5 = -1; m_oradio6 = -1; m_oradio7 = -1; m_oradio8 = -1; m_obz5 = ""; #endif m_bz5 = ""; UpdateData(0); WriteLog(g_id + _T("��������ȱ����")); }