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

📄 maindlg.cpp

📁 小型网吧管理系统,可实现上下机,会员管理,结算功能
💻 CPP
📖 第 1 页 / 共 2 页
字号:
// MainDlg.cpp : 实现文件
//

#include "stdafx.h"
#include "NetworkX.h"
#include "MainDlg.h"
#include "FeeSet.h"
#include ".\maindlg.h"
#include "Up.h"
#include "Down.h"
#include "ExchDlg.h"
#include "DayCount.h"
#include "Setup.h"
#include "ComNumDlg.h"
#include "AboutBox.h"
#include "Change.h"
#include "PswdSet.h"
#include "Memberset.h"
#include "MemberDlg.h"



// CMainDlg 对话框
IMPLEMENT_DYNAMIC(CMainDlg, CDialog)


CMainDlg::CMainDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CMainDlg::IDD, pParent)
{
	m_Low=1.0;
	m_Price=1.5;
	this->m_NglCost=6.0;
	m_AllFee=0.0;
	m_Brush.CreateSolidBrush(RGB(100,200,255));
	m_AllFee=0.0;
	m_Cheap=0.9;
}

CMainDlg::~CMainDlg()
{
}

void CMainDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	DDX_Control(pDX, IDC_MAIN_DIALOG, m_List);
}


BEGIN_MESSAGE_MAP(CMainDlg, CDialog)
	ON_WM_TIMER()
	ON_WM_CLOSE()
	ON_WM_CTLCOLOR()
	
	ON_COMMAND(ID_UP, OnUp)
	ON_COMMAND(ID_DOWN, OnDown)
	ON_COMMAND(ID_EXCHGE, OnExchge)
	ON_COMMAND(ID_CLEAR, OnClear)
	ON_COMMAND(ID_APP_EXIT, OnAppExit)
	ON_COMMAND(ID_SORT, OnSort)
	ON_COMMAND(ID_COUNT, OnCount)
	ON_COMMAND(ID_FEE, OnFee)
	ON_COMMAND(ID_COMNUM, OnComnum)
	ON_COMMAND(ID_ABOUT, OnAbout)
	ON_COMMAND(ID_CHANGE, OnChange)
	ON_COMMAND(ID_MEMBER_DIALOG, OnMemberDialog)
	
	
	
	ON_COMMAND(ID_ALL_FEE, OnAllFee)
END_MESSAGE_MAP()


// CMainDlg 消息处理程序

void CMainDlg::OnTimer(UINT nIDEvent)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值

	
	CDialog::OnTimer(nIDEvent);
}

void CMainDlg::OnClose()
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	
	CDialog::OnClose();
}

HBRUSH CMainDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
	HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

	// TODO:  在此更改 DC 的任何属性
	if(nCtlColor==CTLCOLOR_DLG)
	  return (HBRUSH)m_Brush;

	// TODO:  如果默认的不是所需画笔,则返回另一个画笔
	return hbr;
}

//BOOL CMainDlg::OnInitDialog()
//{
//	CDialog::OnInitDialog();
//
//	// TODO:  在此添加额外的初始化
//	CenterWindow();
//	m_hIcon=AfxGetApp()->LoadIcon(IDR_MAINFRAME);
//	this->SetIcon(m_hIcon,TRUE);
//	m_List.SetTextColor(RGB(100,0,100));
//	m_List.SetTextBkColor(RGB(240,247,233));
//	 m_List.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
//    m_List.InsertColumn(0,_T("机号"),LVCFMT_IMAGE|LVCFMT_LEFT);
//	m_List.InsertColumn(1,_T("上机时间"));
//	m_List.InsertColumn(2,_T("下机时间"));
//	m_List.InsertColumn(3,_T("限时"));
//	m_List.InsertColumn(4,_T("网费"));
//	m_List.InsertColumn(5,_T("押金"));
//	m_List.InsertColumn(6,_T("通宵"));
//	m_List.InsertColumn(7,_T("备注"));
//	m_List.SetColumnWidth(0,50);
//	m_List.SetColumnWidth(1,80);
//	m_List.SetColumnWidth(2,80);
//	m_List.SetColumnWidth(3,80);
//	m_List.SetColumnWidth(4,80);
//	m_List.SetColumnWidth(5,80);
//	m_List.SetColumnWidth(6,60);
//	m_List.SetColumnWidth(7,80);
//
//	return TRUE;  // return TRUE unless you set the focus to a control
//	// 异常: OCX 属性页应返回 FALSE
//}



void CMainDlg::OnUp()
{
	// TODO: 在此添加命令处理程序代码
	CUp dlg;
	if(dlg.DoModal()==IDOK)
	{
		if(!m_database.IsOpen())
	{
		m_database.Open(_T("Management"));
	}
	//对列表控件的内容更新,清空原来的内容
	UpdateData(TRUE);
	bool b;
	CString strSQL;
	strSQL.Format("select * from 计费 order by 机号");
	CFeeSet m_pSet(&m_database);
	m_pSet.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
	if(dlg.m_Num!=0)
	{
		 if(m_pSet.CanAppend())
		   {
			   m_pSet.MoveFirst();
			    do				
			  {				
				if(dlg.m_Num!=m_pSet.m_Num)
			    m_pSet.MoveNext();
			    else
				{  	
				m_List.DeleteAllItems();
				m_pSet.Edit();
				m_pSet.m_Num=dlg.m_Num;
				m_pSet.m_StTime=CTime::GetCurrentTime();
				m_pSet.m_Deposit=dlg.m_Deposit;
				m_pSet.m_NgtLong=dlg.m_NgtLong;
				m_pSet.m_Remark=dlg.m_Remark;
				if(dlg.m_CardNum!=0)
				{
					strSQL.Format("select * from 会员 order by 卡号");
					CMemberset m_pSet1(&m_database);
	                m_pSet1.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
					m_pSet1.MoveFirst();
					b=false;
					do
					{
						if(m_pSet1.m_CardNum==dlg.m_CardNum)
						{
							m_pSet.m_CardNum=dlg.m_CardNum;
							b=true;
							break;
						}
						m_pSet1.MoveNext();
					}while(!m_pSet1.IsEOF());
					m_pSet1.Close();
					if(!b)
				   {
					AfxMessageBox("卡号错误!请重新输入会员卡号!");
					dlg.DoModal();
				   }			
				}
				m_pSet.Update();	
				m_pSet.Requery();
				RefreshData();
				m_pSet.MoveFirst();
				break;
				} 
			  }while(!m_pSet.IsEOF());
	          
		  }
	}
	else
	{
		MessageBox("“机号”项不可以为空!","提示",MB_OK|MB_ICONINFORMATION);
	}
	m_database.Close();
	}
}

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

	// TODO:  在此添加额外的初始化

		CenterWindow();
	m_hIcon=AfxGetApp()->LoadIcon(IDR_MAINFRAME);
	this->SetIcon(m_hIcon,TRUE);
	m_List.SetTextColor(RGB(200,0,100));
	m_List.SetTextBkColor(RGB(100,200,255));
	 m_List.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
    m_List.InsertColumn(0,_T("机号"),LVCFMT_IMAGE|LVCFMT_LEFT);
	m_List.InsertColumn(1,_T("上机时间"));
	m_List.InsertColumn(2,_T("下机时间"));
	m_List.InsertColumn(3,_T("网费"));
	m_List.InsertColumn(4,_T("卡号"));
	m_List.InsertColumn(5,_T("押金"));
	m_List.InsertColumn(6,_T("通宵"));
	m_List.InsertColumn(7,_T("备注"));
	m_List.SetColumnWidth(0,50);
	m_List.SetColumnWidth(1,80);
	m_List.SetColumnWidth(2,80);
	m_List.SetColumnWidth(3,80);
	m_List.SetColumnWidth(4,80);
	m_List.SetColumnWidth(5,80);
	m_List.SetColumnWidth(6,80);
	m_List.SetColumnWidth(7,80);
	m_query.Format("select * from 计费 order by 机号");
	RefreshData();



	return TRUE;  // return TRUE unless you set the focus to a control
	// 异常: OCX 属性页应返回 FALSE
}

void CMainDlg::RefreshData()
{
	if(!m_database.IsOpen())
	{
		m_database.Open(_T("Management"));
	}
	//对列表控件的内容更新,清空原来的内容
	m_List.DeleteAllItems();
	//创建记录集
	CFeeSet m_pSet(&m_database);
	m_pSet.Open(AFX_DB_USE_DEFAULT_TYPE,m_query);
	if(m_pSet.GetRecordCount()!=0)		
		m_pSet.MoveFirst();
	int i=0;

	do
	 {  
		CString s;
		s.Format("%d",m_pSet.m_Num);
        m_List.InsertItem(i,s,0);
		s=m_pSet.m_StTime.Format("%H:%M");
		if(s=="08:00"||s=="00:00")
			s="";
		m_List.SetItemText(i,1,s);
		s=m_pSet.m_EdTime.Format("%H:%M");
		if(s=="00:00"||s=="08:00")
		s="";
		m_List.SetItemText(i,2,s);
       	if(m_pSet.m_Fee!=0.0)
            s.Format("%.1f",m_pSet.m_Fee);
		else 
			s="";
		m_List.SetItemText(i,3,s);
		if(m_pSet.m_CardNum!=1246576928&&m_pSet.m_CardNum!=0)
			s.Format("%ld",m_pSet.m_CardNum);
		else s="";
		m_List.SetItemText(i,4,s);
		if(m_pSet.m_Deposit!=0.0)
            s.Format("%.1f",m_pSet.m_Deposit);
		else 
			s="";
		m_List.SetItemText(i,5,s);
		if(m_pSet.m_NgtLong)
			s="通宵";
		else
			s="";
		m_List.SetItemText(i,6,s);
		m_List.SetItemText(i,7,m_pSet.m_Remark);
		i++;
		 m_pSet.MoveNext();
		
		}  while(!m_pSet.IsEOF());
        m_pSet.MoveFirst();	
		
	}

void CMainDlg::OnDown()
{
	// TODO: 在此添加命令处理程序代码
	
	if(!m_database.IsOpen())
	  {
		m_database.Open(_T("Management"));
	   }
	UpdateData(TRUE);
	CString strSQL1,strSQL2;
	CFeeSet m_pSet(&m_database);
	CMemberset m_pSet1(&m_database);
	strSQL1.Format("select * from 计费 order by 机号");
	m_pSet.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL1);
	strSQL2.Format("select * from 会员");
    m_pSet1.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL2);
	CDown dlg;	 
	if(dlg.DoModal()==IDOK)
	{	if(dlg.m_Num==0)
       	{
			AfxMessageBox("机号项不能为空");
			return;
		}
		m_pSet.MoveFirst();
		do
		{ 	if(dlg.m_Num==m_pSet.m_Num)
		             
			{ 
				CString s;
				s=m_pSet.m_StTime.Format("%H:%M");
				if(s!="00:00"&&s!="08:00")
				{
			 m_pSet.Edit();
			 if(m_pSet.m_NgtLong==false)

⌨️ 快捷键说明

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