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

📄 publicquery.cpp

📁 偶作的毕业设计程序
💻 CPP
📖 第 1 页 / 共 3 页
字号:
// PublicQuery.cpp : implementation file
//

#include "stdafx.h"
#include "SoftDocSystem.h"
#include "PublicQuery.h"


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

/////////////////////////////////////////////////////////////////////////////
// CPublicQuery dialog
extern CString PublicUserName;

CPublicQuery::CPublicQuery(CWnd* pParent /*=NULL*/)
: CDialog(CPublicQuery::IDD, pParent)
{
	//{{AFX_DATA_INIT(CPublicQuery)
	m_SoftName = _T("");
	m_SoftNumber = _T("");
	m_Xinghao = _T("");
	m_SoftType = _T("");
	m_Author = _T("");
	m_GeShi = _T("");
	m_Stime = 0;
	m_Etime = 0;
	//}}AFX_DATA_INIT
}


void CPublicQuery::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CPublicQuery)
	DDX_Control(pDX, IDC_COMBO5, m_AuthorCtrl);
	DDX_Control(pDX, IDC_COMBO3, m_XinghaoCtrl);
	DDX_Control(pDX, IDC_LIST1, m_List);
	DDX_Control(pDX, IDC_TAB1, m_Tab);
	DDX_CBString(pDX, IDC_COMBO1, m_SoftName);
	DDX_CBString(pDX, IDC_COMBO2, m_SoftNumber);
	DDX_CBString(pDX, IDC_COMBO3, m_Xinghao);
	DDX_CBString(pDX, IDC_COMBO4, m_SoftType);
	DDX_CBString(pDX, IDC_COMBO5, m_Author);
	DDX_CBString(pDX, IDC_COMBO6, m_GeShi);
	DDX_DateTimeCtrl(pDX, IDC_DATETIME1, m_Stime);
	DDX_DateTimeCtrl(pDX, IDC_DATETIME2, m_Etime);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CPublicQuery, CDialog)
//{{AFX_MSG_MAP(CPublicQuery)
ON_NOTIFY(TCN_SELCHANGE, IDC_TAB1, OnSelchangeTab)
ON_BN_CLICKED(IDC_CHECK8, OnCheck8)
ON_BN_CLICKED(IDC_CHECK7, OnCheck7)
ON_WM_CLOSE()
ON_BN_CLICKED(IDC_BUTTON2, OnPrint)
ON_NOTIFY(NM_DBLCLK, IDC_LIST1, OnDblclkList1)
	ON_WM_DESTROY()
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CPublicQuery message handlers

BOOL CPublicQuery::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	//初始化TAB空间
	TC_ITEM* m_pTCItem;
	m_pTCItem=new TC_ITEM;
	m_pTCItem->mask=TCIF_TEXT;
	m_pTCItem->pszText="软件文档库存";
	m_Tab.InsertItem(0,m_pTCItem);
	m_pTCItem->pszText="用户资料";
	m_Tab.InsertItem(1,m_pTCItem);
	m_pTCItem->pszText="借出文档";
	m_Tab.InsertItem(2,m_pTCItem);
	m_pTCItem->pszText="作废文档";
	m_Tab.InsertItem(3,m_pTCItem);
	m_pTCItem->pszText="交易记录";
	m_Tab.InsertItem(4,m_pTCItem);	
	m_pTCItem->pszText="操作日志";
	m_Tab.InsertItem(5,m_pTCItem);
	ConnectDataBase();
    InitList();
	GetDlgItem(IDC_DATETIME1)->EnableWindow(false);
	GetDlgItem(IDC_DATETIME2)->EnableWindow(false);
    return TRUE;  // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}

void CPublicQuery::InitList()
{
	UpdateData();
	m_List.DeleteAllItems ();//状态报告
	for (int i=m_ListNumber-1;i>-1;i--)
		m_List.DeleteColumn(i);
	int Choice=m_Tab.GetCurSel();
	switch(Choice)
	{	
	case 0:
		{
			m_List.InsertColumn (0,"软件名称");
			m_List.InsertColumn (1,"作者");
			m_List.InsertColumn (2,"格式");	
			m_List.InsertColumn (3,"软件类型");
			m_List.InsertColumn (4,"功能描述");
			m_List.InsertColumn (5,"所属型号");
			m_List.InsertColumn (6,"所属系统");
			m_List.InsertColumn (7,"软件编号");
			m_List.InsertColumn (8,"入库日期");
			m_ListNumber=9;
			RECT rect;
			m_List.GetWindowRect(& rect);
			int wid=(rect.right -rect.left );
			m_List.SetColumnWidth(0,wid/8);
			m_List.SetColumnWidth(1,wid/5);
			m_List.SetColumnWidth(2,wid/10);
			m_List.SetColumnWidth(3,wid/5);
			m_List.SetColumnWidth(4,wid/4);
			m_List.SetExtendedStyle (LVS_EX_FULLROWSELECT);
			break;	}
	case 1:
		{
			m_List.InsertColumn (0,"用户名");
			m_List.InsertColumn (1,"真实姓名");
			m_List.InsertColumn (2,"部门");	
			m_List.InsertColumn (3,"联系电话");
			m_List.InsertColumn (4,"注册日期");
			m_List.InsertColumn (5,"详细信息");
			m_ListNumber=6;
			RECT rect;
			m_List.GetWindowRect(& rect);
			int wid=(rect.right -rect.left )/5;
			m_List.SetColumnWidth(0,wid);
			m_List.SetColumnWidth(1,wid);
			m_List.SetColumnWidth(2,wid);
			m_List.SetColumnWidth(3,wid);
			m_List.SetColumnWidth(4,wid);
			m_List.SetExtendedStyle (LVS_EX_FULLROWSELECT);
			break;	}
	case 2:
		{
			m_List.InsertColumn (0,"软件名称");
			m_List.InsertColumn (1,"作者");
			m_List.InsertColumn (2,"格式");	
			m_List.InsertColumn (3,"软件类型");
			m_List.InsertColumn (4,"借者");
			m_List.InsertColumn (5,"软件编号");
			m_ListNumber=6;
			RECT rect;
			m_List.GetWindowRect(& rect);
			int wid=(rect.right -rect.left );
			m_List.SetColumnWidth(0,wid/8);
			m_List.SetColumnWidth(1,wid/5);
			m_List.SetColumnWidth(2,wid/10);
			m_List.SetColumnWidth(3,wid/5);
			m_List.SetColumnWidth(4,wid/4);
			m_List.SetExtendedStyle (LVS_EX_FULLROWSELECT);
			break;	}
	case 3:
		{
			m_List.InsertColumn (0,"软件名称");
			m_List.InsertColumn (1,"作者");
			m_List.InsertColumn (2,"格式");	
			m_List.InsertColumn (3,"软件类型");
			m_List.InsertColumn (4,"功能描述");
			m_List.InsertColumn (5,"所属型号");
			m_List.InsertColumn (6,"所属系统");
			m_List.InsertColumn (7,"软件编号");
			m_List.InsertColumn (8,"入库时间");
            m_List.InsertColumn (9,"作废日期");
			
			m_ListNumber=10;
			RECT rect;
			m_List.GetWindowRect(& rect);
			int wid=(rect.right -rect.left );
			m_List.SetColumnWidth(0,wid/8);
			m_List.SetColumnWidth(1,wid/5);
			m_List.SetColumnWidth(2,wid/10);
			m_List.SetColumnWidth(3,wid/5);
			m_List.SetColumnWidth(4,wid/4);
			m_List.SetExtendedStyle (LVS_EX_FULLROWSELECT);
			break;	}
	case 4:
		{
			m_List.InsertColumn (0,"交易编号");
			m_List.InsertColumn (1,"用户名");
			m_List.InsertColumn (2,"交易类别");	
			m_List.InsertColumn (3,"软件名称");
			m_List.InsertColumn (4,"格式");
			m_List.InsertColumn (5,"软件编号");
			m_List.InsertColumn (6,"交易时间");
			
			m_ListNumber=7;
			RECT rect;
			m_List.GetWindowRect(& rect);
			int wid=(rect.right -rect.left );
			m_List.SetColumnWidth(0,wid/8);
			m_List.SetColumnWidth(1,wid/5);
			m_List.SetColumnWidth(2,wid/10);
			m_List.SetColumnWidth(3,wid/5);
			m_List.SetColumnWidth(4,wid/4);
			m_List.SetExtendedStyle (LVS_EX_FULLROWSELECT);
			break;	}
	case 5:
		{
			m_List.InsertColumn (0,"日志编号");
			m_List.InsertColumn (1,"操作者");
			m_List.InsertColumn (2,"操作类型");	
			m_List.InsertColumn (3,"操作内容");
			m_List.InsertColumn (4,"操作时间");
			m_ListNumber=5;
			RECT rect;
			m_List.GetWindowRect(& rect);
			int wid=(rect.right -rect.left );
			m_List.SetColumnWidth(0,wid/8);
			m_List.SetColumnWidth(1,wid/5);
			m_List.SetColumnWidth(2,wid/10);
			m_List.SetColumnWidth(3,wid/5);
			m_List.SetColumnWidth(4,wid/4);
			m_List.SetExtendedStyle (LVS_EX_FULLROWSELECT);
			break;	}
}

}

void CPublicQuery::OnSelchangeTab(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	UpdateData();
	
	GetDlgItem(IDC_LIST1)->ShowWindow(SW_HIDE);
	InitList();
	GetDlgItem(IDC_LIST1)->ShowWindow(SW_SHOW);
	((CButton*)GetDlgItem(IDC_CHECK8))->SetCheck(false);
	int Choice=m_Tab.GetCurSel();
	switch(Choice){
	case 0:
		{GetDlgItem(IDC_COMBO1)->EnableWindow(true);
		GetDlgItem(IDC_COMBO2)->EnableWindow(true);
		GetDlgItem(IDC_COMBO3)->EnableWindow(true);
		GetDlgItem(IDC_COMBO4)->EnableWindow(true);
		GetDlgItem(IDC_COMBO5)->EnableWindow(true);
		GetDlgItem(IDC_COMBO6)->EnableWindow(true);
		((CButton*)GetDlgItem(IDC_CHECK7))->SetCheck(false);
		GetDlgItem(IDC_CHECK7)->EnableWindow(false);
		break;
		}
	case 1:
		{GetDlgItem(IDC_COMBO1)->EnableWindow(false);
		GetDlgItem(IDC_COMBO2)->EnableWindow(false);
		GetDlgItem(IDC_COMBO3)->EnableWindow(false);
		GetDlgItem(IDC_COMBO4)->EnableWindow(false);
		GetDlgItem(IDC_COMBO5)->EnableWindow(false);
		GetDlgItem(IDC_COMBO6)->EnableWindow(false);
		((CButton*)GetDlgItem(IDC_CHECK7))->SetCheck(false);
		GetDlgItem(IDC_CHECK7)->EnableWindow(false);
		break;
		}
	case 2:
		{GetDlgItem(IDC_COMBO1)->EnableWindow(false);
		GetDlgItem(IDC_COMBO2)->EnableWindow(false);
		GetDlgItem(IDC_COMBO3)->EnableWindow(false);
		GetDlgItem(IDC_COMBO4)->EnableWindow(false);
		GetDlgItem(IDC_COMBO5)->EnableWindow(false);
		GetDlgItem(IDC_COMBO6)->EnableWindow(false);
		((CButton*)GetDlgItem(IDC_CHECK7))->SetCheck(false);
		GetDlgItem(IDC_CHECK7)->EnableWindow(false);
		break;
		}
	case 3:
		{GetDlgItem(IDC_COMBO1)->EnableWindow(false);
		GetDlgItem(IDC_COMBO2)->EnableWindow(false);
		GetDlgItem(IDC_COMBO3)->EnableWindow(false);
		GetDlgItem(IDC_COMBO4)->EnableWindow(false);
		GetDlgItem(IDC_COMBO5)->EnableWindow(false);
		GetDlgItem(IDC_COMBO6)->EnableWindow(false);
		((CButton*)GetDlgItem(IDC_CHECK7))->SetCheck(false);
		GetDlgItem(IDC_CHECK7)->EnableWindow(false);
		break;
		}
	case 4:
		{GetDlgItem(IDC_COMBO1)->EnableWindow(false);
		GetDlgItem(IDC_COMBO2)->EnableWindow(false);
		GetDlgItem(IDC_COMBO3)->EnableWindow(false);
		GetDlgItem(IDC_COMBO4)->EnableWindow(false);
		GetDlgItem(IDC_COMBO5)->EnableWindow(false);
		GetDlgItem(IDC_COMBO6)->EnableWindow(false);
		((CButton*)GetDlgItem(IDC_CHECK7))->SetCheck(false);
		GetDlgItem(IDC_CHECK7)->EnableWindow(true);
		break;
		}
	case 5:
		{GetDlgItem(IDC_COMBO1)->EnableWindow(false);
		GetDlgItem(IDC_COMBO2)->EnableWindow(false);
		GetDlgItem(IDC_COMBO3)->EnableWindow(false);
		GetDlgItem(IDC_COMBO4)->EnableWindow(false);
		GetDlgItem(IDC_COMBO5)->EnableWindow(false);
		GetDlgItem(IDC_COMBO6)->EnableWindow(false);
		((CButton*)GetDlgItem(IDC_CHECK7))->SetCheck(false);
		GetDlgItem(IDC_CHECK7)->EnableWindow(true);
		break;
		}
		
	}
	
	*pResult = 0;
}

void CPublicQuery::FindSoftWare()
{
	//条件查询
	UpdateData();
	CString sql_,str2,str;
	_RecordsetPtr Myset;
	CString geshi[6];
	geshi[1]="软盘";
	geshi[2]="光盘";
	geshi[4]="文本";
	geshi[3]="硬盘";
	geshi[5]="其他";
	_variant_t Holder;
	sql_="select * from SoftDocInfo where";
	m_SoftName.TrimRight(" ");
	m_Xinghao.TrimRight (" ");
	m_SoftType.TrimRight (" ");
	
	str.Format (" 软件类型 ='%s'",m_SoftType);
	if(!m_SoftType.IsEmpty ())sql_+=str;
	str.Format (" and 软件名称 ='%s'", m_SoftName);
	if(!m_SoftName.IsEmpty ())sql_+=str;
	str.Format (" and 所属型号 ='%s'",m_Xinghao);
	if(!m_Xinghao.IsEmpty ())sql_+=str;
	str.Format(" and 作者 ='%s'",m_Author);
	if(!m_Author.IsEmpty ())sql_+=str;
	str.Format (" or 软件编号 ='%s'",m_SoftNumber);
	if(!m_SoftNumber.IsEmpty ())sql_+=str;
	str.Format (" and %s ='在家'",m_GeShi);
	if(!m_GeShi.IsEmpty ())sql_+=str;
	//查找所需软件稳当
	Myset.CreateInstance (__uuidof(Recordset));
	_bstr_t Mysql=sql_;
	_bstr_t source=m_strSource;
	m_List.DeleteAllItems ();
	try{
		Myset->Open (Mysql,source,adOpenDynamic,adLockOptimistic,adCmdText);
	}
	catch(_com_error &e){
		AfxMessageBox(e.ErrorMessage());return;}
	int Shumu=0;
	while(!Myset->adoEOF)//记录数
	{Shumu+=1;
	Myset->MoveNext ();}
	if(Shumu<1)return;
	Myset->MoveFirst ();
	int i=0;
	int j=0;
	CString mystr;
	CString softnumber,softname,softauthor,softtype,softfunction,softxinghao,softxitong,softdate;
	while(!Myset->adoEOF ){		
		//每一入库格式一行
		Holder=Myset->GetCollect ("软件名称");
		if(Holder.vt!=VT_NULL)
		{softname=(char*)(_bstr_t)Holder;
		softname.TrimRight(" ");}
		Holder=Myset->GetCollect ("软件编号");
		if(Holder.vt!=VT_NULL)

⌨️ 快捷键说明

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