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

📄 syslogdlg.cpp

📁 本网站是一个库存管理系统
💻 CPP
字号:
// SysLogDlg.cpp : implementation file
//

#include "stdafx.h"
#include "Stock.h"
#include "SysLogDlg.h"
#include "COMDEF.h"
#include "Columns.h"
#include "Column.h"
#include "_recordset.h"
#include "SysLog.h"
#include "DialogResize.h"

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

/////////////////////////////////////////////////////////////////////////////
// CSysLogDlg dialog


CSysLogDlg::CSysLogDlg(CWnd* pParent /*=NULL*/)
	: CDialogResize(CSysLogDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CSysLogDlg)
		// NOTE: the ClassWizard will add member initialization here
	m_Date = 0;
	//}}AFX_DATA_INIT
}


void CSysLogDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialogResize::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CSysLogDlg)
		// NOTE: the ClassWizard will add DDX and DDV calls here
	DDX_Control(pDX, IDC_TYPE_COMBO, m_Type);
	DDX_Control(pDX, IDC_ADODC1, m_adodc1);
	DDX_Control(pDX, IDC_ADODC2, m_adodc2);
	DDX_Control(pDX, IDC_DATACOMBO1, m_UserName);
	DDX_Control(pDX, IDC_DATAGRID1, m_datagrid);
	DDX_DateTimeCtrl(pDX, IDC_DATETIMEPICKER1, m_Date);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CSysLogDlg, CDialogResize)
	//{{AFX_MSG_MAP(CSysLogDlg)
	ON_BN_CLICKED(IDC_DELBYID_BUTTON, OnDelbyidButton)
	ON_BN_CLICKED(IDC_DELBYDATE_BUTTON, OnDelbydateButton)
	ON_BN_CLICKED(IDC_DELALL_BUTTON, OnDelallButton)
	ON_CBN_SELCHANGE(IDC_TYPE_COMBO, OnSelchangeTypeCombo)
	ON_NOTIFY(DTN_DATETIMECHANGE, IDC_DATETIMEPICKER1, OnDatetimechangeDatetimepicker1)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

BEGIN_DLGRESIZE_MAP(CSysLogDlg)
    DLGRESIZE_CONTROL(IDC_TYPE_COMBO, DLSZ_REPAINT)
	DLGRESIZE_CONTROL(IDC_DATETIMEPICKER1, DLSZ_REPAINT)
	DLGRESIZE_CONTROL(IDC_DATACOMBO1, DLSZ_REPAINT)
	DLGRESIZE_CONTROL(IDC_DATAGRID1, DLSZ_SIZE_X | DLSZ_SIZE_Y | DLSZ_REPAINT)
	DLGRESIZE_CONTROL(IDC_DELBYID_BUTTON, DLSZ_MOVE_Y)
	DLGRESIZE_CONTROL(IDC_DELBYDATE_BUTTON, DLSZ_MOVE_Y)
	DLGRESIZE_CONTROL(IDC_DELALL_BUTTON, DLSZ_MOVE_X | DLSZ_MOVE_Y)
	DLGRESIZE_CONTROL(IDCANCEL, DLSZ_MOVE_X | DLSZ_MOVE_Y)
END_DLGRESIZE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CSysLogDlg message handlers

void CSysLogDlg::RefreshData()
{
	CString cSource;
	cSource = "SELECT LogId, LogDate AS 发生日期, LogTime AS 发生时间,";
	cSource += " Title AS 标题, Body AS 内容, UserName AS 操作用户";
	cSource += " FROM SysLog WHERE UserName collate Chinese_PRC_CS_AI_WS ='" + m_UserName.GetText() + "'";
	//读取数据
	UpdateData(true);
	CString cIndex;
	cIndex.Format("%d", m_Type.GetCurSel());
	//根据类别查询
	if (cIndex == "0")
		;
	else	
		cSource += " AND LogType=" + cIndex;
	//根据日期查询
	CString cDate;
	cDate = m_Date.Format("%Y-%m-%d");
	cSource += " AND LogDate='" + cDate + "'";
	//设置数据源
	m_adodc1.SetRecordSource(cSource);
	m_adodc1.Refresh();
	//设置列宽度
	_variant_t vIndex;
	vIndex = long(0);
	m_datagrid.GetColumns().GetItem(vIndex).SetWidth(0);
	vIndex = long(1);
	m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);
	vIndex = long(2);
	m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);
	vIndex = long(3);
	m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);
	vIndex = long(4);
	m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);
	vIndex = long(5);
	m_datagrid.GetColumns().GetItem(vIndex).SetWidth(100);
}

BOOL CSysLogDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();

	InitResizing();

	//设置类别
	m_Type.SetCurSel(0);
	//设置日期
	m_Date = CTime::GetCurrentTime();
	//设置用户
	m_UserName.SetText("Admin");
	UpdateData(false);
	//刷新记录
	RefreshData();

	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void CSysLogDlg::OnDelbyidButton() 
{
	if (m_adodc1.GetRecordset().GetEof()) 
	{
		::MessageBox(NULL, TEXT("请选择要删除的记录"), TEXT("提示"), MB_OK);
		return;
	}
	if (::MessageBox(NULL, TEXT("是否删除当前记录,请确认"), TEXT("提示"), MB_YESNO) == IDYES)
	{
		CSysLog log;
		log.sql_deleteById(m_datagrid.GetItem(0));		//按编号删除
		RefreshData();									//刷新显示
	}
}

void CSysLogDlg::OnDelbydateButton() 
{
	if (::MessageBox(NULL, TEXT("是否删除全天记录,请确认"), TEXT("提示"), MB_YESNO) == IDYES)
	{		
		CString cDate;
		cDate = m_Date.Format("%Y-%m-%d");
		CSysLog log;
		log.sql_deleteByDate(cDate);					//按编号删除
		RefreshData();									//刷新显示
	}	
}

void CSysLogDlg::OnDelallButton() 
{
	if (::MessageBox(NULL, TEXT("是否删除全部记录,请确认"), TEXT("提示"), MB_YESNO) == IDYES)
	{		
		CSysLog log;
		log.sql_deleteAll();							//按编号删除
		RefreshData();									//刷新显示
	}		
}

void CSysLogDlg::OnSelchangeTypeCombo() 
{
	RefreshData();	
}

void CSysLogDlg::OnDatetimechangeDatetimepicker1(NMHDR* pNMHDR, LRESULT* pResult) 
{
	RefreshData();	
	
	*pResult = 0;
}

BEGIN_EVENTSINK_MAP(CSysLogDlg, CDialog)
    //{{AFX_EVENTSINK_MAP(CSysLogDlg)
	ON_EVENT(CSysLogDlg, IDC_DATACOMBO1, -600 /* Click */, OnClickDatacombo1, VTS_I2)
	//}}AFX_EVENTSINK_MAP
END_EVENTSINK_MAP()

void CSysLogDlg::OnClickDatacombo1(short Area) 
{
	RefreshData();
}

void CSysLogDlg::OnSize(UINT nType, int cx, int cy)
{
	CDialogResize::OnSize(nType, cx, cy);
}

⌨️ 快捷键说明

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