⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 kansweralarmdlg.cpp

📁 数据安全方面的程序 应用很广泛的 欢迎大家
💻 CPP
字号:
// KAnswerAlarmDlg.cpp : implementation file
//

#include "stdafx.h"
#include "KAnswerAlarmDlg.h"
#include "../KJAlarmProtocol/KAnswerAlarmProtcol.h"
#include "KXMLManager.h"
#include "../KylinSystem/KMessageBinder.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// KAnswerAlarmDlg dialog


KAnswerAlarmDlg::KAnswerAlarmDlg(CWnd* pParent /*=NULL*/)
	: CDialog(KAnswerAlarmDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(KAnswerAlarmDlg)
	m_person = _T("");
	m_info = _T("");
	//}}AFX_DATA_INIT
	AnswerInfo.AddRef();
}


void KAnswerAlarmDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(KAnswerAlarmDlg)
	DDX_Control(pDX, IDOK, m_OK);
	DDX_Control(pDX, IDC_EDITPERSON, m_Cperson);
	DDX_Control(pDX, IDC_EDIT2, m_Cinfo);
	DDX_Text(pDX, IDC_EDITPERSON, m_person);
	DDX_Text(pDX, IDC_EDIT2, m_info);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(KAnswerAlarmDlg, CDialog)
	//{{AFX_MSG_MAP(KAnswerAlarmDlg)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// KAnswerAlarmDlg message handlers

void KAnswerAlarmDlg::OnOK() 
{
	// TODO: Add extra validation here
	
	CDialog::OnOK();

	//获取回复信息,1,把回复信息保存到xml文件中;
	UpdateData();
    KXMLManager* xml = KXMLManager::Instance();

   	if(xml->GetAlarmInfo(EventID,"IsAnswer")=="1"&&xml->GetAlarmInfo(EventID,"State")=="1")
	{}
	else
	{
		bool bl=xml->SetXMLInfo(EventID,"AnswerInfo",m_info);
		if(bl)
		{
			xml->SetXMLInfo(EventID,"AnswerPerson",m_person);
			xml->SetXMLInfo(EventID,"IsAnswer","1");
			xml->SetXMLInfo(EventID,"AnswerTime",GetLocalTime());

			//2,发送回复信息到服务器
			AnswerInfo.SetAnswerMsg(m_info);
			AnswerInfo.SetAnswerMsgTime(GetLocalTime());
			AnswerInfo.SetAnswerPerson(m_person);
			AnswerInfo.SetEventID(EventID);
			AnswerInfo.SetHadAnswered("1");
			AnswerInfo.SetIsReceived("1");		
			AnswerInfo.SetIsUseReaded("1");
			AnswerInfo.SetUseName(xml->GetAlarmInfo(EventID,"UserName"));

			try
			{
				KMessageBinder::Instance()->ProcessMessage(&AnswerInfo);
			}
			catch(_com_error)
			{
			}
		}
		else
		{
			MessageBox("您所选择的报警已经不存在,请您确认后选择!",NULL,NULL);
		}
	}
}

void KAnswerAlarmDlg::OnCancel() 
{
	// TODO: Add extra cleanup here
	
	CDialog::OnCancel();
}

void KAnswerAlarmDlg::SetEventID(CString stValue)
{
     EventID=stValue;
}

CString KAnswerAlarmDlg::GetLocalTime()
{
    SYSTEMTIME time;
	::GetLocalTime(&time);
	CString str;
	str.Format("%d-%d-%d %d:%d:%d",time.wYear,time.wMonth,time.wDay,time.wHour,time.wMinute,time.wSecond);
    return str;
	
}

BOOL KAnswerAlarmDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	KXMLManager* xml = KXMLManager::Instance();
	if(xml->GetAlarmInfo(EventID,"IsAnswer")=="1"&&xml->GetAlarmInfo(EventID,"State")=="1")
	{
		m_Cperson.SetReadOnly(true);
		m_Cinfo.SetReadOnly(true);
	}
    m_info=xml->GetAlarmInfo(EventID,"AnswerInfo");
    m_person=xml->GetAlarmInfo(EventID,"AnswerPerson");
	UpdateData(false);

	this->SetWindowText(xml->GetAlarmInfo(EventID,"AlarmName")+_T("报警回复"));
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}
	

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -